
     f#              	          d dl mZmZmZmZ ddlmZmZ ddlm	Z	m
Z
mZmZ ddlmZ ddlmZ ddlmZ ddlmZmZmZ dd	lmZ  G d
 de          Zedk    rd 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$ddg          Z%e%&                    ddd           e%&                    dd           e%&                    ddd           e%'                    d d!d"           e%'                    d#d$d%           e%'                    d&d'd(           e%'                    d)d*d+           d,Z( e"e(d-d.d/          Z) ed0          Z* ed1dd2          Z+e+,                    d3d45          Z-e-,                    d6d75          Z.e.,                     ed8e)                     e.,                     ed9 e e*d:                               e-,                    d;d<5          Z/de/_0         e j1        d=d4:          Z2e/,                     ed>e2                     e/,                     ed?e%                      e	            Ze3                    e+           d@S d@S )A    )IteratorListOptionalTuple   )
loop_first	loop_last)ConsoleConsoleOptionsRenderableTypeRenderResult)JupyterMixin)Measurement)Segment)Style
StyleStack	StyleType)Styledc                       e Zd ZdZdddddddeded	ed
edededdfdZddddddedee         d	ee         d
edee         dd fdZ		 	 	 	 	 	 ddZ
	 	 	 	 	 	 ddZdS )Treea  A renderable for a tree structure.

    Args:
        label (RenderableType): The renderable or str for the tree label.
        style (StyleType, optional): Style of this tree. Defaults to "tree".
        guide_style (StyleType, optional): Style of the guide lines. Defaults to "tree.line".
        expanded (bool, optional): Also display children. Defaults to True.
        highlight (bool, optional): Highlight renderable (if str). Defaults to False.
    treez	tree.lineTF)styleguide_styleexpanded	highlight	hide_rootlabelr   r   r   r   r   returnNc                h    || _         || _        || _        g | _        || _        || _        || _        d S N)r   r   r   childrenr   r   r   )selfr   r   r   r   r   r   s          X/var/www/api.educacionweb.es/myenv/lib/python3.11/site-packages/pip/_vendor/rich/tree.py__init__zTree.__init__   s:     

&$& ""    r   r   r   r   c                    t          ||| j        n||| j        n|||| j        n|          }| j                            |           |S )a3  Add a child tree.

        Args:
            label (RenderableType): The renderable or str for the tree label.
            style (StyleType, optional): Style of this tree. Defaults to "tree".
            guide_style (StyleType, optional): Style of the guide lines. Defaults to "tree.line".
            expanded (bool, optional): Also display children. Defaults to True.
            highlight (Optional[bool], optional): Highlight renderable (if str). Defaults to False.

        Returns:
            Tree: A new child Tree, which may be further modified.
        Nr&   )r   r   r   r   r!   append)r"   r   r   r   r   r   nodes          r#   addzTree.add)   sf    *  %$**5,7,?(([(1(9dnny
 
 
 	T"""r%   consoler
   optionsr   r   c           
   #     K   g }|j         }|j        }t          j                    }|j        }t          j                    } || j        d          p|}	t          d          \  }
}}}dg dt          dt          dt
          dt          ffd	} |||	          g} |t          t          | g                               t           || j                            }t           || j                            }t          d
d
          }d}|r |            }	 t          |          \  }}nl# t          $ r_ |                                  |rF|d         j        p|}	 |||	          |d<   |                                  |                                  Y w xY w ||           |r |||d         j        p|          |d<   |j         ||j                  z   }	|j         ||j                  z   }|| j        rdndd          }|                    t'          |j        |                              j        t/          d |D                       z
  | j        d           j        d u          }|dk    r| j        sjt5          |          D ]Z\  }}|r#                    ||j        |          E d {V  |E d {V  |V  |r"|r  ||r|
n||d         j        p|          |d<   [|j        r|j        r ||r|
n||d         j        p|          |d<   |                     |t?          |j                  dk    r|n||	                     |                      ||j                             |                      ||j                              |t          t          |j                                       |dz  }|d S d S )N )default   )    z|   z+-- z`-- ))r1   u   │   u
   ├── u
   └── )r1   u   ┃   u
   ┣━━ u
   ┗━━ )r1   u   ║   u
   ╠══ u
   ╚══ indexr   r   c                     j         r	|          }n+|j        rdn
|j        rdnd}j        rdn|         |          } ||          S )z.Make a Segment for a level of the guide lines.r      r   )
ascii_onlybold
underline2legacy_windows)r2   r   lineguideASCII_GUIDESTREE_GUIDES_Segmentr,   s       r#   
make_guidez)Tree.__rich_console__.<locals>.make_guide^   sd    ! R#E*"ZK53C.Jaa"(>#I11EJ5Q8D%(((r%   F)r6   r7   r   r4   r   c              3   $   K   | ]}|j         V  d S r    )cell_length).0levels     r#   	<genexpr>z(Tree.__rich_console__.<locals>.<genexpr>   s%      @@%+@@@@@@r%   )widthr   height)pad)
post_style)!popr(   r   r9   	get_styler   nullr   rangeintiterr	   r   r   nextStopIterationcurrentr   render_linesr   r   update	max_widthsumr   justifyr   apply_stylebackground_styler   r!   lenpush)r"   r+   r,   stackrI   rZ   new_linerJ   
null_styler   SPACECONTINUEFORKENDr>   levelsguide_style_stackstyle_stackremove_guide_stylesdepth
stack_nodelastr)   r   prefixrenderable_linesfirstr9   r;   r<   r=   s     `                         @@@r#   __rich_console__zTree.__rich_console__H   s      46i|<>>%	Z\\
i 0"===K%*1XX"xs7
 
 

 	)c 	)% 	)G 	) 	) 	) 	) 	) 	) 	) 	) 	) ",Hk!B!B CT)TF##$$%%%&yy1A'B'BCC 4:!6!677#5AAA 7	J	!*--
dd    

 &"(*"2"@jK!+D+!>!>F2J%))+++OO%%% D M'ZVBZ-=-KLLr
+3ii@P6Q6QQK'))DJ*?*??E$.7QQa::;F&33tz5))!+@@@@@@@A"n	    O4/  4 	  	  QJJ4>J#-.>#?#?  KE4 #+#7#7"!2': $8 $ $       
  $OOOOOOO"NNN  %/Z%)7EEx9I9WZ& &r
 } 
 
'Z!/EEx1A1OZ r
 Jc$-&8&8A&=&=ss4UU     4:!6!6777!&&yy1A'B'BCCCT)DM2233444
o  7	 7	 7	 7	 7	s   %D8 8A&F! F!r   c                    t          | g          g}|j        }|j        }d}d}t          j        }d}	|r |            }
	 t          |
          }n# t          $ r |	dz  }	Y .w xY w ||
            ||||j                  \  }}|	dz  }t          ||z   |          }t          ||z   |          }|j	        r)|j
        r" |t          |j
                             |	dz  }	|t          ||          S )Nr   r   r0   )rN   rI   r(   r   getrO   rP   r   maxr   r!   )r"   r+   r,   r[   rI   rZ   minimummaximummeasurerC   	iter_treer   min_measuremax_measureindents                  r#   __rich_measure__zTree.__rich_measure__   s1    (,TF||ni|/ 	II    
 DOOO'.ww'L'L$KQYF+.88G+.88G}  T$-(()))
  	 7G,,,s   A A! A!)r+   r
   r,   r   r   r   )r+   r
   r,   r   r   r   )__name__
__module____qualname____doc__r   r   boolr$   r   r*   rl   rw    r%   r#   r   r      se         "!,# # ## 	#
 # # # # 
# # # #, &*+/$)   	"	
 i(  D> 
   >_ _+;_	_ _ _ _B- -+;-	- - - - - -r%   r   __main__)Group)Markdown)Panel)Syntax)Tabler.   dim)
row_stylesReleasedcyanT)r   no_wrapTitlemagenta)r   z
Box Officerightgreen)rV   r   zDec 20, 2019z Star Wars: The Rise of Skywalkerz$952,110,690zMay 25, 2018zSolo: A Star Wars Storyz$393,151,347zDec 15, 2017z!Star Wars Ep. V111: The Last Jediz$1,332,539,889zDec 16, 2016zRogue One: A Star Wars Storyz$1,332,439,889zmclass Segment(NamedTuple):
    text: str = ""
    style: Optional[Style] = None
    is_control: bool = False
pythonmonokai)themeline_numbersz=### example.md
> Hello, World!
>
> Markdown _all_ the things
u   🌲 [b green]Rich Tree)r   r   z:file_folder: Renderablesred)r   z!:file_folder: [bold yellow]Atomiczuu greenu   📄 Syntaxu   📄 Markdown)border_stylez&:file_folder: [bold magenta]Containerszbold magentazJust a panelu   📄 Panelsu   📄 [b magenta]TableN)4typingr   r   r   r   _loopr   r	   r+   r
   r   r   r   jupyterr   rr   r   segmentr   r   r   r   r   styledr   r   rx   pip._vendor.rich.consoler   pip._vendor.rich.markdownr   pip._vendor.rich.panelr   pip._vendor.rich.syntaxr   pip._vendor.rich.tabler   table
add_columnadd_rowcodesyntaxmarkdownrootr*   r)   simple_nodecontainers_noder   fitpanelprintr}   r%   r#   <module>r      s   2 2 2 2 2 2 2 2 2 2 2 2 ( ( ( ( ( ( ( ( J J J J J J J J J J J J ! ! ! ! ! !                   / / / / / / / / / /      v- v- v- v- v-< v- v- v-r z......222222,,,,,,......,,,,,,Eb%[)))E	Zvt<<<	WI...	\7'BBB	MM."DnUUU	MM.";^LLL	MM."EGWXXX	MM."@BRSSSD VD()$GGGFx	 H 4)TTJJJD88/U8CCD((>J(WWKOOEE-00111OOEE/55+P+P+PQQRRRhh0n   O  $OEIn5999EmU334445u==>>>giiGMM$m r%   