+
    Rik4                       ^ RI Ht ^ RIHtHtHt ^ RIHt ^ RIH	t	 ^ RI
HtHt ^ RIHtHt ^ RIHt ^ RIHt ^ R	IHtHtHtHtHtHtHt ^ R
IHt ^ RIHtH t  ^ RI!H"t" ^ RI#H$t$ ^RI%H&t& RR.t']t( ! R R4      t) ! R R4      t*R# )    )annotations)CallableIterableSequence)get_app)	Condition)OneStyleAndTextTupleStyleAndTextTuples)KeyBindingsKeyBindingsBase)KeyPressEvent)Keys)AnyContainerConditionalContainer	ContainerFloatFloatContainerHSplitWindow)FormattedTextControl)
MouseEventMouseEventType)
get_cwidth)Shadow)BorderMenuContainerMenuItemc                  t    ] tR t^#tRtRR R lltR R ltR R ltRR	 R
 llt]	R R l4       t
R R ltRtR# )r   zg
:param floats: List of extra Float objects to display.
:param menu_items: List of `MenuItem` objects.
Nc          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )   bodyr   
menu_itemszlist[MenuItem]floatslist[Float] | Nonekey_bindingszKeyBindingsBase | NonereturnNone )formats   "[/home/ubuntu/hermes-agent/venv/lib/python3.14/site-packages/prompt_toolkit/widgets/menus.py__annotate__MenuContainer.__annotate__)   sC     k
 k
k
 #k
 #	k

 -k
 
k
    c                	  a  VS n         VS n        ^ .S n        \        4       p\        R V 3R ll4       p\        R V 3R ll4       pVP                  RVR7      R V 3R ll4       pVP                  R	VR7      R
 V 3R ll4       p	VP                  RVR7      R V 3R ll4       p
VP                  RVR7      VP                  RVR7      R R l4       4       pVP                  RVR7      VP                  RVR7      VP                  RVR7      R V 3R ll4       4       4       pVP                  R	VR7      R V 3R ll4       pVP                  RVR7      R V 3R ll4       pVP                  RVR7      R V 3R ll4       pVP                  R4      R V 3R ll4       p\        S P                  VRR R!7      S n        \        ^S P                  R"R#7      S n
        S P                  ^ 4      pS P                  ^4      pS P                  ^4      p\        R$ V 3R% ll4       p\        \        S P                  V.4      \        RR\        \!        VR&7      VR'7      R(7      \        VRRR\        \!        VR&7      V\	        V 3R) l4      ,          R'7      R*7      \        VRRR\        \!        VR&7      V\	        V 3R+ l4      ,          R'7      R*7      .T;'       g    . ,           VR,7      S n        R-# ).r   c                   V ^8  d   QhRR/# r    r&   boolr(   )r)   s   "r*   r+   ,MenuContainer.__init__.<locals>.__annotate__8   s     	0 	0d 	0r-   c                 4   < \        S P                  4      ^8H  #    lenselected_menuselfs   r*   in_main_menu,MenuContainer.__init__.<locals>.in_main_menu7   s    t))*a//r-   c                   V ^8  d   QhRR/# r0   r(   )r)   s   "r*   r+   r2   <   s     	/ 	/T 	/r-   c                 4   < \        S P                  4      ^8  # r4   r6   r9   s   r*   in_sub_menu+MenuContainer.__init__.<locals>.in_sub_menu;   s    t))*Q..r-   left)filterc                    V ^8  d   QhRRRR/# r    eventEr&   r'   r(   )r)   s   "r*   r+   r2   B   s     	F 	F 	Ft 	Fr-   c                j   < \        ^ SP                  ^ ,          ^,
          4      SP                  ^ &   R# r   N)maxr8   rE   r:   s   &r*   _left%MenuContainer.__init__.<locals>._leftA   s*    $'4+=+=a+@1+D$EDq!r-   rightc                    V ^8  d   QhRRRR/# rD   r(   )r)   s   "r*   r+   r2   F   s     	 	! 	 	r-   c                   < \        \        SP                  4      ^,
          SP                  ^ ,          ^,           4      SP                  ^ &   R# )r5   N)minr7   r"   r8   rJ   s   &r*   _right&MenuContainer.__init__.<locals>._rightE   s;    $'DOO$q($*<*<Q*?!*C%Dq!r-   downc                    V ^8  d   QhRRRR/# rD   r(   )r)   s   "r*   r+   r2   L   s     	) 	) 	)t 	)r-   c                >   < SP                   P                  ^ 4       R# rH   )r8   appendrJ   s   &r*   _down%MenuContainer.__init__.<locals>._downK   s    %%a(r-   zc-czc-gc                    V ^8  d   QhRRRR/# rD   r(   )r)   s   "r*   r+   r2   Q   s     	* 	*1 	* 	*r-   c                N    V P                   P                  P                  4        R# )zLeave menu.N)applayout
focus_last)rE   s   &r*   _cancel'MenuContainer.__init__.<locals>._cancelO   s     II'')r-   c                    V ^8  d   QhRRRR/# rD   r(   )r)   s   "r*   r+   r2   Z   s     	) 	) 	)t 	)r-   c                t   < \        SP                  4      ^8  d   SP                  P                  4        R# R# )zGo back to parent menu.N)r7   r8   poprJ   s   &r*   _back%MenuContainer.__init__.<locals>._backW   s/    
 4%%&*""&&( +r-   c                    V ^8  d   QhRRRR/# rD   r(   )r)   s   "r*   r+   r2   `   s     	1 	1A 	1$ 	1r-   c                  < SP                  \        SP                  4      ^,
          4      P                  '       d   SP                  P	                  ^ 4       R# \        SP                  4      ^8X  d   SP                  ^ ,          \        SP
                  4      ^,
          8  d   \        \        SP
                  4      ^,
          SP                  ^ ,          ^,           4      .Sn        SP
                  SP                  ^ ,          ,          P                  '       d   SP                  P	                  ^ 4       R# R# R# R# )zgo into sub menu.N)	_get_menur7   r8   childrenrV   r"   rP   rJ   s   &r*   _submenu(MenuContainer.__init__.<locals>._submenu_   s     ~~c$"4"459:CCC""))!, D&&'1,&&q)C,@1,DD DOO,q0$2D2DQ2G!2KL&" ??4#5#5a#89BBB&&--a0 C E -r-   upc                    V ^8  d   QhRRRR/# rD   r(   )r)   s   "r*   r+   r2   q   s     	) 	)! 	) 	)r-   c                  < SP                  \        SP                  4      ^,
          4      pSP                  R,          p\        VP                  4       UUu. uF#  w  r4W28  g   K  VP
                  '       d   K!  VNK%  	  pppV'       d   VR,          SP                  R&   R# \        SP                  4      ^8X  d   SP                  P                  4        R# R# u uppi )z;Select previous (enabled) menu item or return to main menu.N)rg   r7   r8   	enumeraterh   disabledrb   )rE   menuindexiitemprevious_indexesr:   s   &     r*   _up_in_submenu.MenuContainer.__init__.<locals>._up_in_submenup   s     >>#d&8&8"9A"=>D&&r*E  )7 7GA9 %)]] 7     )9")=""2&T''(A-""&&( . s   
C'C;Cc                    V ^8  d   QhRRRR/# rD   r(   )r)   s   "r*   r+   r2      s     	9 	9A 	9$ 	9r-   c                X  < SP                  \        SP                  4      ^,
          4      pSP                  R,          p\        VP                  4       UUu. uF#  w  r4W28  g   K  VP
                  '       d   K!  VNK%  	  pppV'       d   V^ ,          SP                  R&   R# R# u uppi )z Select next (enabled) menu item.Nrn   )rg   r7   r8   ro   rh   rp   )rE   rq   rr   rs   rt   next_indexesr:   s   &     r*   _down_in_submenu0MenuContainer.__init__.<locals>._down_in_submenu   s     >>#d&8&8"9A"=>D&&r*E  )77GA9 %)]] 7   )5a""2& s   
B&'B&;B&enterc                    V ^8  d   QhRRRR/# rD   r(   )r)   s   "r*   r+   r2      s     	 	! 	 	r-   c                   < SP                  \        SP                  4      ^,
          4      pVP                  '       d7   V P                  P
                  P                  4        VP                  4        R# R# )zClick the selected menu item.N)rg   r7   r8   handlerr[   r\   r]   )rE   rt   r:   s   & r*   _click&MenuContainer.__init__.<locals>._click   sP     >>#d&8&8"9A"=>D|||		  ++- r-   TF)r%   	focusableshow_cursorclass:menu-bar)heightcontentstylec                   V ^8  d   QhRR/# r0   r(   )r)   s   "r*   r+   r2      s     	B 	B4 	Br-   c                 Z   < \        4       P                  P                  S P                  8H  # N)r   r\   current_windowwindowr9   s   r*   	has_focus)MenuContainer.__init__.<locals>.has_focus   s     9##22dkkAAr-   )r!   )r   rB   )xcursorycursorr   c                 4   < \        S P                  4      ^8  # r4   r6   r9   s   r*   <lambda>(MenuContainer.__init__.<locals>.<lambda>       C0B0B,Cq,Hr-   )attach_to_windowr   r   allow_cover_cursorr   c                 4   < \        S P                  4      ^8  # )r    r6   r9   s   r*   r   r      r   r-   )r   r#   r%   N)r!   r"   r8   r   r   addr   _get_menu_fragmentscontrolr   r   ri   r   r   r   r   r   	container)r:   r!   r"   r#   r%   kbr;   r?   rK   rQ   rW   r^   rc   ri   rv   r{   r   submenusubmenu2submenu3r   s   f&&&&                r*   __init__MenuContainer.__init__)   s    	$S ]		0 
	0 
	/ 
	/
 
|	,	F 
-	F 
	-	 
.	
 
|	,	) 
-	) 
l	+	l	+	* 
, 
,	* 
{	+	k	*	k	*	) 
+ 
+ 
,	)
 
	,	1 
-	1  
[	)	) 
*	)$ 
{	+	9 
,	9 
	 
	 ,$$2SX
 At||CST--"==#==#		B 
	B ( KK	   0 &G 4Y %,  '+0 &H 5(#$HI J
 %-  '+0 &H 5(#$HI J
'@ ||A B &U+
r-   c                    V ^8  d   QhRRRR/# )r    levelintr&   r   r(   )r)   s   "r*   r+   r,      s     
 
s 
x 
r-   c                	   V P                   V P                  ^ ,          ,          p\        V P                  R,          4       F!  w  r4W18  g   K   VP                  V,          pK#  	  V#   \         d    \        R4      u u # i ; i)r   :r5   NNdebug)r"   r8   ro   rh   
IndexErrorr   )r:   r   rq   rs   rr   s   &&   r*   rg   MenuContainer._get_menu   sr    t11!45!$"4"4R"89HAy-==/D :  " -#G,,-s   A((BBc                   V ^8  d   QhRR/# r    r&   r
   r(   )r)   s   "r*   r+   r,      s     ' '%7 'r-   c                	  a a \        4       P                  P                  S P                  4      oS'       g	   ^ .S n        R VV 3R llp. p\        S P                  4       F  w  r4VP                  V! W44      4       K  	  V# )r   c               $    V ^8  d   QhRRRRRR/# r    rs   r   rt   r   r&   zIterable[OneStyleAndTextTuple]r(   )r)   s   "r*   r+   7MenuContainer._get_menu_fragments.<locals>.__annotate__   s"     	2 	2 	28 	20N 	2r-   c              3     <a "   R  VV V3R llpRRV3x  S SP                   ^ ,          8X  d   S'       d   RRV3x  RpMRpW1P                  V3x  R# 5i)c                    V ^8  d   QhRRRR/# r    mouse_eventr   r&   r'   r(   )r)   s   "r*   r+   IMenuContainer._get_menu_fragments.<locals>.one_item.<locals>.__annotate__   s     - -: -$ -r-   c                  < V P                   \        P                  8H  pV P                   \        P                  8X  g   V'       d   S'       d   \	        4       pV'       g~   VP
                  P                  SP                  4      '       d.   SP                  S.8X  d   VP
                  P                  4        M%VP
                  P                  SP                  4       S.Sn        R # R # R # r   )
event_typer   
MOUSE_MOVE
MOUSE_DOWNr   r\   r   r   r8   r]   focus)r   hoverr[   focusedrs   r:   s   &  r*   mouse_handlerJMenuContainer._get_menu_fragments.<locals>.one_item.<locals>.mouse_handler   s    #...2K2KK**n.G.GG ")C :://<<#11aS8 #

 5 5 7JJ,,T[[9*+D&   r-   r    [SetMenuPosition] class:menu-bar.selected-itemN)r8   text)rs   rt   r   r   r   r:   s   f&  r*   one_item3MenuContainer._get_menu_fragments.<locals>.one_item   sZ     - -" $S-88D&&q))g*B>>6(M11s
   2AA)r   r\   r   r   r8   ro   r"   extend)r:   r   resultrs   rt   r   s   f    @r*   r   !MenuContainer._get_menu_fragments   sl    )"",,T[[9 "#D	2 	24 &( 1GAMM(1+, 2 r-   c                    V ^8  d   QhRRRR/# )r    r   r   r&   r   r(   )r)   s   "r*   r+   r,     s"     LT LTc LT& LTr-   c                	F   a a R  VV 3R llp\        \        V4      RR7      # )c                   V ^8  d   QhRR/# r   r(   )r)   s   "r*   r+   ,MenuContainer._submenu.<locals>.__annotate__  s     I	 I	$6 I	r-   c                 z  <aa . p S\        SP                  4      8  Ed   SP                  S4      oSP                  '       Edd   V P	                  R \
        P                  34       V P	                  R \
        P                  SP                  ^,           ,          34       V P	                  R \
        P                  34       V P	                  R4        SP                  S^,           ,          oR VVVV3R llp\        SP                  4       F  w  r#V P                  V! W#4      4       K  	  V P	                  R \
        P                  34       V P	                  R \
        P                  SP                  ^,           ,          34       V P	                  R \
        P                  34       V #   \         d    Ro Li ; i)
class:menuc               $    V ^8  d   QhRRRRRR/# r   r(   )r)   s   "r*   r+   HMenuContainer._submenu.<locals>.get_text_fragments.<locals>.__annotate__  s$     3) 3)3)&.3)73)r-   c              3    <a a"   R  V VVV3R llpS S8X  d   R
x  RpMRpR\         P                  3x  SP                  R8X  d7   VR,           \         P                  SP                  ^,           ,           V3x  M4VRSP                   2P                  SP                  ^,           4      V3x  SP                  '       d	   VRV3x  MVRV3x  S S8X  d   Rx  R\         P                  3x  Rx  R	# 5i)c                    V ^8  d   QhRRRR/# r   r(   )r)   s   "r*   r+   ZMenuContainer._submenu.<locals>.get_text_fragments.<locals>.one_item.<locals>.__annotate__  s     , ,z ,d ,r-   c                  < SP                   '       d   R # V P                  \        P                  8H  pV P                  \        P                  8X  g	   V'       dv   \        4       pV'       g?   SP                  '       d-   VP                  P                  4        SP                  4        R # SP                  R S^,            S.,           Sn	        R # R # r   )
rp   r   r   r   MOUSE_UPr   r   r\   r]   r8   )r   r   r[   rs   rt   r   r:   s   &  r*   r   [MenuContainer._submenu.<locals>.get_text_fragments.<locals>.one_item.<locals>.mouse_handler  s    #}}} !'$/$:$:n>W>W$WE + 6 6.:Q:Q Q#(&-i',$'JJ$9$9$;$(LLN9=9K9K(3%!):&)*:,D$6 $)r-   r   r   r   -zclass:menu-borderr   >N)z[SetCursorPosition]r   )r   r   r   
)r   VERTICALr   
HORIZONTALwidthljustrh   )rs   rt   r   r   r   rq   selected_itemr:   s   ff  r*   r   DMenuContainer._submenu.<locals>.get_text_fragments.<locals>.one_item  s     , ,& -"==$BE$&E+V__==99+ %(; ;#)#4#4

Q#G"H -#  !&"#DII; 5 5djj1n E -#   ===#(#}"==#(#}"==-";;+V__==((s   B=C74C7r   rn   )r7   r8   rg   rh   rV   r   TOP_LEFTr   r   	TOP_RIGHTr   ro   r   BOTTOM_LEFTBOTTOM_RIGHT)r   r   rs   rt   rq   r   r   r:   s       @@r*   get_text_fragments2MenuContainer._submenu.<locals>.get_text_fragments  sL   )+Fs4--..~~e,===MM<"ABMM<1B1BdjjSTn1U"VWMM<1A1A"BCMM*-+(,(:(:519(E3) 3)j $-T]]#;hq&78 $< MM<1C1C"DEMM<1B1BdjjSTn1U"VWMM<1D1D"EFM} & +(*+s   F* *F:9F:r   )r   )r   r   )r:   r   r   s   ff r*   ri   MenuContainer._submenu  s&    I	 I	V *+=>lSSr-   c                   V ^8  d   QhRR/# )r    r&   r$   r(   )r)   s   "r*   r+   r,   Z  s     % %* %r-   c                	.    V P                   P                  # r   )r   r#   r9   s   &r*   r#   MenuContainer.floatsY  s    ~~$$$r-   c                   V ^8  d   QhRR/# )r    r&   r   r(   )r)   s   "r*   r+   r,   ]  s      ) r-   c                	    V P                   # r   )r   r9   s   &r*   __pt_container__MenuContainer.__pt_container__]  s    ~~r-   )r!   r   r   r"   r8   r   )NN)r   )__name__
__module____qualname____firstlineno____doc__r   rg   r   ri   propertyr#   r   __static_attributes__r(   r-   r*   r   r   #   s?    
k
Z
'RLT\ % % r-   c                  <    ] tR tRtRR R llt]R R l4       tRtR# )	r   ia  Nc               0    V ^8  d   QhRRRRRRRRR	R
RR/# )r    r   strr   zCallable[[], None] | Nonerh   zlist[MenuItem] | NoneshortcutzSequence[Keys | str] | Nonerp   r1   r&   r'   r(   )r)   s   "r*   r+   MenuItem.__annotate__b  sF       + (	
 .  
r-   c                	f    Wn         W n        T;'       g    . V n        W@n        WPn        ^ V n        R# rH   )r   r   rh   r   rp   r   )r:   r   r   rh   r   rp   s   &&&&&&r*   r   MenuItem.__init__b  s-     	 B  r-   c                   V ^8  d   QhRR/# )r    r&   r   r(   )r)   s   "r*   r+   r   r  s      s r-   c                	b    V P                   '       d   \        R  V P                    4       4      # ^ # )c              3  L   "   T F  p\        VP                  4      x  K  	  R # 5ir   )r   r   ).0cs   & r*   	<genexpr>!MenuItem.width.<locals>.<genexpr>t  s     A=az!&&))=s   "$)rh   rI   r9   s   &r*   r   MenuItem.widthq  s#    ===A4==AAAr-   )rh   rp   r   r   r   r   )r   NNNF)r   r   r   r   r   r   r   r   r(   r-   r*   r   r   a  s      r-   N)+
__future__r   typingr   r   r   "prompt_toolkit.application.currentr   prompt_toolkit.filtersr   "prompt_toolkit.formatted_text.baser	   r
   'prompt_toolkit.key_binding.key_bindingsr   r   (prompt_toolkit.key_binding.key_processorr   prompt_toolkit.keysr    prompt_toolkit.layout.containersr   r   r   r   r   r   r   prompt_toolkit.layout.controlsr   prompt_toolkit.mouse_eventsr   r   prompt_toolkit.utilsr   prompt_toolkit.widgetsr   baser   __all__rF   r   r   r(   r-   r*   <module>r     sn    " / / 6 , W P B $   @ B + )  
 { {|	 r-   