
    ^h                       % S r SSKJr  SSKJrJr  SSKJrJrJ	r	  / SQr
 " S S\	5      r \" SSS	S	S	S	S	S	S	S	S
9
r/ SQrSSSSSSSSSSS.
rS\S'   \" \R#                  5       5      R%                  \" \5      5      (       d   e\" \R'                  5       5      \" \5      -  (       a   e " S S\S9r " S S\5      r " S S\5      rg )!z#
The base classes for the styling.
    )annotations)ABCMetaabstractmethod)CallableHashable
NamedTuple)AttrsDEFAULT_ATTRSANSI_COLOR_NAMESANSI_COLOR_NAMES_ALIASES	BaseStyle
DummyStyleDynamicStylec                  z    \ rS rSr% S\S'   S\S'   S\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   S\S'   S\S'   Srg)r	      z
str | Nonecolorbgcolorzbool | Nonebold	underlinestrikeitalicblinkreversehiddendim N)__name__
__module____qualname____firstlineno____annotations____static_attributes__r       T/home/james-whalen/.local/lib/python3.13/site-packages/prompt_toolkit/styles/base.pyr	   r	      s>    
	r#   r	    F)
r   r   r   r   r   r   r   r   r   r   )ansidefault	ansiblackansired	ansigreen
ansiyellowansiblueansimagentaansicyanansigrayansibrightblackansibrightredansibrightgreenansibrightyellowansibrightblueansibrightmagentaansibrightcyan	ansiwhiter/   r-   r5   r*   r,   r4   r.   r(   r)   r+   )
ansidarkgrayansitealansiturquoise	ansibrown
ansipurpleansifuchsiaansilightgrayansidarkredansidarkgreenansidarkbluezdict[str, str]r   c                  n    \ rS rSrSr\\4     SS jj5       r\\S	S j5       5       r	\S
S j5       r
Srg)r   p   z0
Abstract base class for prompt_toolkit styles.
c                    g)z
Return :class:`.Attrs` for the given style string.

:param style_str: The style string. This can contain inline styling as
    well as classnames (e.g. "class:title").
:param default: `Attrs` to be used if no styling was defined.
Nr   self	style_strdefaults      r$   get_attrs_for_style_str!BaseStyle.get_attrs_for_style_stru       r#   c                    / $ )zo
The list of style rules, used to create this style.
(Required for `DynamicStyle` and `_MergedStyle` to work.)
r   rE   s    r$   style_rulesBaseStyle.style_rules   s	     	r#   c                    g)z
Invalidation hash for the style. When this changes over time, the
renderer knows that something in the style changed, and that everything
has to be redrawn.
Nr   rL   s    r$   invalidation_hashBaseStyle.invalidation_hash   rJ   r#   r   NrF   strrG   r	   returnr	   rT   zlist[tuple[str, str]]rT   r   )r   r   r   r    __doc__r   r
   rH   propertyrM   rP   r"   r   r#   r$   r   r   p   sf     /<		',			 	     r#   r   )	metaclassc                  P    \ rS rSrSr\4     SS jjrS	S jr\S
S j5       r	Sr
g)r      z&
A style that doesn't style anything.
c                    U$ Nr   rD   s      r$   rH   "DummyStyle.get_attrs_for_style_str   s	     r#   c                    g)N   r   rL   s    r$   rP   DummyStyle.invalidation_hash   s    r#   c                    / $ r]   r   rL   s    r$   rM   DummyStyle.style_rules   s    	r#   r   NrR   rV   rU   )r   r   r   r    rW   r
   rH   rP   rX   rM   r"   r   r#   r$   r   r      sB    
 0=',	
  r#   r   c                  Z    \ rS rSrSrS	S jr\4     S
S jjrSS jr\	SS j5       r
Srg)r      z
Style class that can dynamically returns an other Style.

:param get_style: Callable that returns a :class:`.Style` instance.
c                .    Xl         [        5       U l        g r]   )	get_styler   _dummy)rE   rg   s     r$   __init__DynamicStyle.__init__   s    " lr#   c                j    U R                  5       =(       d    U R                  nUR                  X5      $ r]   )rg   rh   rH   )rE   rF   rG   styles       r$   rH   $DynamicStyle.get_attrs_for_style_str   s*      /DKK,,Y@@r#   c                d    U R                  5       =(       d    U R                  R                  5       $ r]   )rg   rh   rP   rL   s    r$   rP   DynamicStyle.invalidation_hash   s!     /DKKBBDDr#   c                \    U R                  5       =(       d    U R                  R                  $ r]   )rg   rh   rM   rL   s    r$   rM   DynamicStyle.style_rules   s     /DKK<<<r#   )rh   rg   N)rg   zCallable[[], BaseStyle | None]rR   rV   rU   )r   r   r   r    rW   ri   r
   rH   rP   rX   rM   r"   r   r#   r$   r   r      sL    #
 0=AA',A	AE = =r#   r   N)rW   
__future__r   abcr   r   typingr   r   r   __all__r	   r
   r   r   r!   setvaluesissubsetkeysr   r   r   r   r#   r$   <module>rz      s   # ' 1 1
J 
 
	
& : &%& , .  #**,-66s;K7LMM MM(--/037G3HH II '  F $=9 =r#   