o
    6d                     @   s`   d dl mZmZmZmZ d dlZedZedZdd Z	dd Z
d	d
 Zdd Zdd ZdS )    )absolute_importdivisionprint_functionunicode_literalsNz9^[a-z0-9]+|[A-Z][a-z0-9]+|[A-Z]+(?=[A-Z][a-z0-9])|[A-Z]+$z[-_/]+c                 C   s>   g }t t| D ]}t|}|r|| q|| q|S )z
    Splits name based on capitalization, dashes, and underscores.
        Example: 'GetFile' -> ['Get', 'File']
        Example: 'get_file' -> ['get', 'file']
    )resplit_split_words_dashes_re_split_words_capitalization_refindallextendappend)nameZ	all_wordswordvals r   mC:\Users\jesus\OneDrive\Desktop\erpjis_fastapi\backend\jisbackend\Lib\site-packages\stone/backends/helpers.pysplit_words   s   
r   c                 C   s>   t | }t|dksJ |d }|ddd |D  S )zq
    Converts name to lower camel case. Words are identified by capitalization,
    dashes, and underscores.
    r    c                 S      g | ]}|  qS r   
capitalize.0r   r   r   r   
<listcomp>#       zfmt_camel.<locals>.<listcomp>)r   lenpoplowerjoin)r   wordsfirstr   r   r   	fmt_camel   s   r!   c                 C      d dd t| D S )zz
    Converts name to words separated by dashes. Words are identified by
    capitalization, dashes, and underscores.
    -c                 S   r   r   r   r   r   r   r   r   +   r   zfmt_dashes.<locals>.<listcomp>r   r   r   r   r   r   
fmt_dashes&      r'   c                 C   r"   )zl
    Converts name to pascal case. Words are identified by capitalization,
    dashes, and underscores.
    r   c                 S   r   r   r   r   r   r   r   r   3   r   zfmt_pascal.<locals>.<listcomp>r%   r&   r   r   r   
fmt_pascal.   r(   r)   c                 C   r"   )z
    Converts name to words separated by underscores. Words are identified by
    capitalization, dashes, and underscores.
    _c                 S   r   r   r$   r   r   r   r   r   ;   r   z#fmt_underscores.<locals>.<listcomp>r%   r&   r   r   r   fmt_underscores6   r(   r+   )
__future__r   r   r   r   r   compiler	   r   r   r!   r'   r)   r+   r   r   r   r   <module>   s    
