
    Vh                    z   d dl mZ d dlZd dlZd dlmZ dZej                  rdZn] e	ej                  d      rej                  j                         sdZn-	 d dlZ ej                           ej                  d      d k  rdZej"                  rdZd Zdd	Zd
 ZddZy# e$ r Y $ej                   $ r dZY 6w xY w)    )annotationsN)	constantsTFisattycolorsc                   t        j                  d|       }|st        j                  |    S |j	                  d      rdt        |j	                  d            z  S |j	                  d      r\dddt        |j	                  d            z  z   dt        |j	                  d	            z  z   t        |j	                  d
            z   z  S |j	                  d      r ddt        |j	                  d            z   z  S y)z2SGR parameter string for the specified color name.zecolor(?P<color>[0-9]+)|(?P<rgb>rgb(?P<red>[0-5])(?P<green>[0-5])(?P<blue>[0-5]))|gray(?P<gray>[0-9]+)colorz38;5;%drgb   $   red   greenbluegray   N)rematchCCOLOR_CODESgroupint)r   matchess     C/home/dcms/DCMS/lib/python3.12/site-packages/ansible/utils/color.py
parsecolorr   7   s    hh 0168G }}U##}}WCg 6777}}UR"s7==+?'@"@@W]]7%;!<<= v!678 9 	9 }}VS3w}}V'<#==>>     c                    t         rDt        |      }d}|rd}dj                  | j                  d      D cg c]	  }|||fz   c}      S | S c c}w )zString in color.z[%sm%s[0mz[%sm%s[0m
)ANSIBLE_COLORr   joinsplit)textr   wrap_nonvisible_chars
color_codefmtts         r   stringcr&   H   sW     &
"  7Czz$**U:KLQ3*a0LMM Ms   Ac                Z    | dt        |      d}|dk7  rt        r|t        ||      }|S )z! Print 'lead' = 'num' in 'color' =4r   )strr   r&   )leadnumr   ss       r   colorizer.   _   s/    CH%A
axMe&7AuHr   c                    t         rq|ro|d   dk7  s|d   dk7  rdt        | t        j                        z  S |d   dk7  rdt        | t        j                        z  S dt        | t        j
                        z  S d| z  S )Nfailuresr   unreachablez%-37schangedz%-26s)r   r&   r   COLOR_ERRORCOLOR_CHANGEDCOLOR_OK)hoststatsr   s      r   	hostcolorr8   g   sy    !U=%9Q%>gdAMM:::9"gdAOO<<<gdAJJ777d?r   )F)T)
__future__r   r   sysansibler   r   r   ANSIBLE_NOCOLORhasattrstdoutr   curses	setuptermtigetnumImportErrorerrorANSIBLE_FORCE_COLORr   r&   r.   r8    r   r   <module>rF      s   " # 	 
 "M	X	&cjj.?.?.AM
6??8$q(!M M?".I  << s   ,B   B:'B:9B: