
    g              	           S r SSKrSSKJr  \R                  " S5      rS\S\S\S\4S	 jrS
S.S\S\S\S   S\4S jjrg)zVarious URL utils for HACS.    N)Literalz^[a-fA-F0-9]{40}$
repositoryversionfilenamereturnc                     SU  SU SU 3$ )z,Generate a download URL for a release asset.https://github.com/z/releases/download// )r   r   r   _s       +/config/custom_components/hacs/utils/url.pygithub_release_assetr   	   s     !,?y(TT    heads)variantr   )r   tagsc                 `    [         R                  U5      (       a	  SU  SU S3$ SU  SU SU S3$ )z-Generate a download URL for a repository zip.r	   z	/archive/z.zipz/archive/refs/r
   )GIT_SHAmatch)r   r   r   r   s       r   github_archiver      sC     }}W$ZL	'$GG N7)1WITRRr   )	__doc__retypingr   compiler   strr   r   r   r   r   <module>r      s    ! 	 
**)
*UU U 	U 	U )0	
S
S 
S _%	
S 	
Sr   