
    {h=                     b    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  G d de      Zy	)
    )Widget)reactive)ScrollableContainer)Static)ComposeResult)PRIMARY_COLORc                   l     e Zd ZdZ ei       Zde de de dZdef fdZ	de
fd	Zd
eddfdZ xZS )ToolInfoDisplayz'Widget for displaying tool information.a,  
    ToolInfoDisplay {
        width: 100%;
        height: 100%;
        layout: grid;
        grid-size: 1;
        grid-rows: auto 1fr;
    }

    #title {
        width: 100%;
        padding: 1 2;
        color: $text;
        text-align: center;
        text-style: bold;
        border: solid z;
    }

    #content {
        width: 100%;
        height: 100%;
    }

    .tool-details, .env-vars {
        border: solid z;
        padding: 1 2;
        margin: 1 0;
    }

    #tool-header, .env-vars-header {
        text-align: left;
        text-style: bold;
        margin-bottom: 1;
    }

    .env-var-name {
        color: zs;
        text-style: bold;
    }

    .env-var-description, .env-var-default {
        padding-left: 1;
    }
    	tool_infoc                 0    t         |           || _        y )N)super__init__r   )selfr   	__class__s     k/var/www/html/hubwallet-dev/venv/lib/python3.12/site-packages/atomic_assembler/widgets/tool_info_display.pyr   zToolInfoDisplay.__init__=   s    "    returnc              #   T  K   t        dd       t        d      5  t        d      5  t        dd       t        d	| j                  j                  d
d       d       t        d| j                  j                  dd       d       ddd       | j                  j                  di       }|rt        d      5  t        dd       |j	                         D ]n  \  }}t        d      5  t        | d       t        d|j                  dd       d       t        d|j                  dd       d       ddd       p 	 ddd       nt        dd       ddd       y# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   *xY w# 1 sw Y   yxY ww)z,Compose the layout of the tool info display.zTool Informationtitle)idcontentztool-details)classesu   🔧 Tool Detailsztool-headerzName: 	tool_namezN/Az	tool-namezDescription: tool_descriptionzNo description available.ztool-descriptionNenv_varszenv-varsu   📌 Environment Variableszenv-vars-headerzenv-varzenv-var-namedescriptionzenv-var-descriptionzDefault Value: defaultzNo default valuezenv-var-defaultz#No environment variables available.)r   r   r   getitems)r   r   varvar_infos       r   composezToolInfoDisplay.composeA   s    'G44 I. 	c/ 0]CCvdnn&8&8e&L%MNS^__#DNN$6$67IKf$g#hi)  ~~))*b9HJ/  !=GXYY)1)9 
X#I6 	"(C5>"JJ"("/]Lg0h/i j(=#  #)"1(,,yJ\2]1^ _(9# 	 	
  BLabb7	c 	c 	 	 	c 	cse   F(FA(E82F2F7AF	
FF/	F(8F	=FF	FF	FF%!F(new_infoNc                 $    | j                          y)z"React to changes in the tool_info.N)refresh)r   r#   s     r   watch_tool_infozToolInfoDisplay.watch_tool_infob   s    r   )__name__
__module____qualname____doc__r   r   r   DEFAULT_CSSdictr   r   r"   r&   __classcell__)r   s   @r   r
   r
      so    1I %o 	& %o &  I+KZ#$ #c cB  r   r
   N)textual.widgetr   textual.reactiver   textual.containersr   textual.widgetsr   textual.appr   atomic_assembler.constantsr   r
    r   r   <module>r5      s'    ! % 2 " %
Yf Yr   