o
    gY                     @   s   d Z ddlZdd Zdd Zdd Zd	d
 Zdd Zdd Zdd Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd  ZdS )!z
String convert functions
    Nc                 C   @   t ddt| } | s| S t| d t ddd | dd  S )	z Convert string into camel case.

    Args:
        string: String to convert.

    Returns:
        string: Camel case string.

    z\w[\s\W]+\w r   z[\-_\.\s]([a-z])c                 S   s   t | dS )N   )	uppercasegroupmatched r	   a/var/www/html/riverr-enterprise-integrations-main/venv/lib/python3.10/site-packages/stringcase.py<lambda>   s    zcamelcase.<locals>.<lambda>r   Nresubstr	lowercasestringr	   r	   r
   	camelcase   s   &r   c                 C   s(   t | } | s| S t| d | dd  S )zConvert string into capital case.
    First letters will be uppercase.

    Args:
        string: String to convert.

    Returns:
        string: Capital case string.

    r   r   N)r   r   r   r	   r	   r
   capitalcase   s   r   c                 C      t t| S )zConvert string into upper snake case.
    Join punctuation with underscore and convert letters into uppercase.

    Args:
        string: String to convert.

    Returns:
        string: Const cased string.

    )r   	snakecaser   r	   r	   r
   	constcase+   s   r   c                 C      t |  S )zConvert string into lower case.

    Args:
        string: String to convert.

    Returns:
        string: Lowercase case string.

    )r   lowerr   r	   r	   r
   r   :      r   c                 C   r   )zConvert string into pascal case.

    Args:
        string: String to convert.

    Returns:
        string: Pascal case string.

    )r   r   r   r	   r	   r
   
pascalcaseH   r   r   c                 C   s   t | } | s| S tdd| S )zConvert string into path case.
    Join punctuation with slash.

    Args:
        string: String to convert.

    Returns:
        string: Path cased string.

    _/)r   r   r   r   r	   r	   r
   pathcaseV   s   r   c                 C   s   t ddt| }|S )zConvert string into spinal case.
    Join punctuation with backslash.

    Args:
        string: String to convert.

    Returns:
        string: Spinal cased string.

    r   z\\r   r   r   )r   str1r	   r	   r
   backslashcaseg   s   r!   c                    s<   d t d t| } | s| S ttt d fdd| S )zConvert string into sentence case.
    First letter capped and each punctuations are joined with space.

    Args:
        string: String to convert.

    Returns:
        string: Sentence cased string.

     z	[\-_\.\s][A-Z]c                    s    t | d S )Nr   r   r   r   joinerr	   r
   r      s    zsentencecase.<locals>.<lambda>)r   r   r   r   trimcaser   r	   r%   r
   sentencecasex   s   r(   c                 C   r   )	zConvert string into snake case.
    Join punctuation with underscore

    Args:
        string: String to convert.

    Returns:
        string: Snake cased string.

    z[\-\.\s]r   r   r#   c                 S   s   dt | d S )Nr   r   r$   r   r	   r	   r
   r      s    zsnakecase.<locals>.<lambda>r   Nr   r   r	   r	   r
   r      s   &r   c                 C      t ddt| S )zConvert string into spinal case.
    Join punctuation with hyphen.

    Args:
        string: String to convert.

    Returns:
        string: Spinal cased string.

    r   -r   r   r	   r	   r
   
spinalcase   s   r+   c                 C   r)   )zConvert string into dot case.
    Join punctuation with dot.

    Args:
        string: String to convert.

    Returns:
        string: Dot cased string.

    r   .r   r   r	   r	   r
   dotcase   s   r-   c                 C   s   d dd t| dD S )zConvert string into sentence case.
    First letter capped while each punctuations is capitalsed
    and joined with space.

    Args:
        string: String to convert.

    Returns:
        string: Title cased string.

    r"   c                 S   s   g | ]}t |qS r	   )r   ).0wordr	   r	   r
   
<listcomp>   s    ztitlecase.<locals>.<listcomp>r   )joinr   splitr   r	   r	   r
   	titlecase   s   r3   c                 C   r   )zConvert string into trimmed string.

    Args:
        string: String to convert.

    Returns:
        string: Trimmed case string
    )r   stripr   r	   r	   r
   r'      s   
r'   c                 C   r   )zConvert string into upper case.

    Args:
        string: String to convert.

    Returns:
        string: Uppercase case string.

    )r   upperr   r	   r	   r
   r      r   r   c                 C   s   t dd| S )zCuts all non-alphanumeric symbols,
    i.e. cuts all expect except 0-9, a-z and A-Z.

    Args:
        string: String to convert.

    Returns:
        string: String with cutted non-alphanumeric symbols.

    z\W+r   )r   r   r   r	   r	   r
   alphanumcase   s   r6   )__doc__r   r   r   r   r   r   r   r!   r(   r   r+   r-   r3   r'   r   r6   r	   r	   r	   r
   <module>   s"    