Ë
    ålÖiy  ã                  óp   — d dl mZ d dlZd dlZd dlmZ ddlmZmZ d
d„Zdd„Z	ddd„Z
ed	k(  r e
«        yy)é    )ÚannotationsN)ÚAnyé   )ÚslugifyÚDEFAULT_SEPARATORc                ó”  ‡— t        j                  d¬«      Š‰j                  d¬«      }|j                  ddd¬«       |j                  dd	d
¬«       ‰j                  ddddd¬«       ‰j                  ddddd¬«       ‰j                  ddddd¬«       ‰j                  dt        dd¬«       ‰j                  dd	dd¬«       ‰j                  d d	dd!¬«       ‰j                  d"t
        t        d#t        z   ¬«       ‰j                  d$d%d&¬«       ‰j                  d'd(¬)«       ‰j                  d*dd+dd,¬«       ‰j                  d-d%d.¬«       ‰j                  d/d	dd0¬«       ‰j                  | d1d  «      }|j                  r|j                  r‰j                  d2«       |j                  r*ˆfd3„}|j                  D �cg c]
  } ||«      ‘Œ c}|_        |j                  r!d4j                  |j                  «      |_        n/|j                  r#t        j                  j                  «       |_        |j                  sd5|_        |S c c}w )6NzSlug string)ÚdescriptionÚInputÚinput_stringÚ*zText to slugify)ÚnargsÚhelpz--stdinÚ
store_truezTake the text from STDIN)Úactionr   z--no-entitiesÚstore_falseÚentitiesTz'Do not convert HTML entities to unicode)r   ÚdestÚdefaultr   z--no-decimalÚdecimalz&Do not convert HTML decimal to unicodez--no-hexadecimalÚhexadecimalz*Do not convert HTML hexadecimal to unicodez--max-lengthr   z$Output string length, 0 for no limit)Útyper   r   z--word-boundaryFzJTruncate to complete word even if length ends up shorter than --max_length)r   r   r   z--save-orderzEWhen set and --max_length > 0 return whole words in the initial orderz--separatorz$Separator between words. By default z--stopwordsú+zWords to discountz--regex-patternz.Python regex pattern for disallowed characters)r   z--no-lowercaseÚ	lowercasezActivate case sensitivityz--replacementsz9Additional replacement rules e.g. "|->or", "%%->percent".z--allow-unicodezAllow unicode charactersr   z.Input strings and --stdin cannot work togetherc                óv   •— d}|| vr!‰j                  dj                  |¬«      «       | j                  |d«      S )Nz->z7Replacements must be of the form: ORIGINAL{SEP}REPLACED)ÚSEPr   )ÚerrorÚformatÚsplit)Úreplr   Úparsers     €úU/var/www/html/strategist-ai/venv_dbt/lib/python3.12/site-packages/slugify/__main__.pyÚsplit_checkzparse_args.<locals>.split_check2   s<   ø€ ØˆCØ˜$‰Ø—‘ÐV×]Ñ]ÐbeÐ]ÓfÔgØ—:‘:˜c 1Ó%Ð%ó    ú Ú )ÚargparseÚArgumentParserÚadd_argument_groupÚadd_argumentÚintÚstrr   Ú
parse_argsr   Ústdinr   ÚreplacementsÚjoinÚsysÚread)ÚargvÚinput_groupÚargsr"   r   r    s        @r!   r,   r,   
   s  ø€ Ü×$Ñ$°Ô?€Fà×+Ñ+¸Ð+Ó@€KØ×Ñ˜^°3Ø"3ð ô 5à×Ñ˜Y¨|Ø"<ð ô >ð ×Ñ˜°ÀJÐX\ØFð ô Hà
×Ñ˜¨}À9ÐVZØEð ô Gà
×ÑÐ*°=À}Ð^bØIð ô Kà
×Ñ˜¬S¸!ØCð ô Eà
×ÑÐ)°,ÈØið ô kà
×Ñ˜¨|ÀUØdð ô fà
×Ñ˜¬CÔ9JØCÔFWÑWð ô Yà
×Ñ˜¨SØ0ð ô 2à
×ÑÐ)ØMð ô Oà
×ÑÐ(°À[ÐZ^Ø8ð ô :à
×ÑÐ(°Ø\ð ô ^à
×ÑÐ)°,ÈØ7ð ô 9ð ×Ñ˜T ! "˜XÓ&€Dà×Ò˜TŸZšZØ�‰ÐEÔFà×Òô	&ð
 <@×;LÑ;LÖM°4™[¨Õ.ÒMˆÔà×ÒØŸH™H T×%6Ñ%6Ó7ˆÕØ	�ŠÜŸI™IŸN™NÓ,ˆÔà×ÒØˆÔà€Kùò Ns   Æ=Ic                ó   — t        | j                  | j                  | j                  | j                  | j
                  | j                  | j                  | j                  | j                  | j                  | j                  | j                  ¬«      S )N)Útextr   r   r   Ú
max_lengthÚword_boundaryÚ
save_orderÚ	separatorÚ	stopwordsr   r.   Úallow_unicode)Údictr   r   r   r   r7   r8   r9   r:   r;   r   r.   r<   )r4   s    r!   Úslugify_paramsr>   D   sm   € ÜØ×ÑØ—‘Ø—‘Ø×$Ñ$Ø—?‘?Ø×(Ñ(Ø—?‘?Ø—.‘.Ø—.‘.Ø—.‘.Ø×&Ñ&Ø×(Ñ(ôð r#   c                óÆ   — | €t         j                  } t        | «      }t        |«      }	 t	        t        di |¤Ž«       y# t        $ r t        j                  d«       Y yw xY w)z Run this program Néÿÿÿÿ© )r0   r2   r,   r>   Úprintr   ÚKeyboardInterruptÚexit)r2   r4   Úparamss      r!   ÚmainrF   U   sS   € à€|Ü�x‰xˆÜ�dÓ€DÜ˜DÓ!€FðÜŒgÑ˜ÑÕ øÜò Ü�‰�Žðús   ª? ¿A ÁA Ú__main__)r2   z	list[str]Úreturnúargparse.Namespace)r4   rI   rH   zdict[str, Any])N)r2   zlist[str] | None)Ú
__future__r   r&   r0   Útypingr   r   r   r,   r>   rF   Ú__name__rA   r#   r!   ú<module>rM      s8   ðÝ "ã Û 
Ý ç /ó7ótô"	ð ˆzÒÙ…Fð r#   