
    AHj                     Z    d dl Z d dlmZmZ  e j                  d      fdedee   defdZy)    N)MatchPatternz
[a-z][A-Z]name	_re_snakereturnc                 p    dt         t           dt        fd}|j                  ||       j                         S )zConvert name from CamelCase to snake_case.

    Args:
        name: A symbol name, such as a class name.

    Returns:
        Name in snake case.
    matchr   c                 R    | j                         \  }}| d|j                          S )N_)grouplower)r	   r   uppers      D/root/tools/cai/cai_env/lib/python3.12/site-packages/textual/case.pyreplzcamel_to_snake.<locals>.repl   s*     {{}u%++-))    )r   strsubr   )r   r   r   s      r   camel_to_snaker      s5    *E#J *3 * ==t$**,,r   )retypingr   r   compiler   r    r   r   <module>r      s<    	 ! *4L)A-
-!#,--r   