
    pKgW                       d Z ddlmZ ddlZddlZddlmZ ddlmZ ddl	m
Z
 ddl	mZ erdd	lmZ dd
lmZ ej                   dk(  rddlmZ nej                   dk(  rddlmZ nddlmZ d2dZereZn e       ZeZ	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d4dZ	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d5dZ	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d4dZ	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d5dZ	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d7dZ	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d7dZ 	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d4dZ!	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d7dZ"d8dZ#d8dZ$d8dZ%d8dZ&d8dZ'd8dZ(	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d7dZ)	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d7d Z*	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d9d!Z+	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d:d"Z,	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d9d#Z-	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d:d$Z.	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d;d%Z/	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d;d&Z0	 	 	 	 	 d3	 	 	 	 	 	 	 	 	 	 	 d9d'Z1	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d;d(Z2d<d)Z3d<d*Z4d<d+Z5d<d,Z6d<d-Z7d<d.Z8	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d;d/Z9	 	 	 	 	 d6	 	 	 	 	 	 	 	 	 	 	 d;d0Z:g d1Z;y)=z
Utilities for determining application-specific dirs.

See <https://github.com/platformdirs/platformdirs> for details and usage.

    )annotationsN)TYPE_CHECKING   )PlatformDirsABC)__version__)__version_tuple__)Path)Literalwin32)Windowsdarwin)MacOS)Unixc                     t        j                  d      dk(  r]t        j                  d      dk(  rEt        j                  d      st        j                  d      rt        S ddlm}   |        dd	lm} |S t        S )
NANDROID_DATAz/dataANDROID_ROOTz/systemSHELLPREFIXr   )_android_folder)Android)osgetenv_Resultplatformdirs.androidr   r   )r   r   s     Y/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/platformdirs/__init__.py_set_platform_dir_classr      sX    	yy G+		.0IY0V99W8!4N8(4NN    c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: data directory tied to the user
    appname	appauthorversionroamingensure_exists)PlatformDirsuser_data_dirr   s        r   r&   r&   5   '     # mr   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param multipath: See `roaming <platformdirs.api.PlatformDirsABC.multipath>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: data directory shared by users
    r    r!   r"   	multipathr$   )r%   site_data_dirr)   s        r   r+   r+   M   s'     # mr   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: config directory tied to the user
    r   )r%   user_config_dirr   s        r   r-   r-   e   '     # or   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param multipath: See `roaming <platformdirs.api.PlatformDirsABC.multipath>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: config directory shared by the users
    r)   )r%   site_config_dirr)   s        r   r0   r0   }   s'     # or   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `roaming <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: cache directory tied to the user
    r    r!   r"   opinionr$   )r%   user_cache_dirr2   s        r   r4   r4      '     # nr   c                6    t        | ||||      j                  S a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: cache directory tied to the user
    r2   )r%   site_cache_dirr2   s        r   r8   r8      r5   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: state directory tied to the user
    r   )r%   user_state_dirr   s        r   r:   r:      r5   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `roaming <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: log directory tied to the user
    r2   )r%   user_log_dirr2   s        r   r<   r<      s'     # lr   c                 *    t               j                  S )z.:returns: documents directory tied to the user)r%   user_documents_dir r   r   r>   r>          >,,,r   c                 *    t               j                  S )z.:returns: downloads directory tied to the user)r%   user_downloads_dirr?   r   r   rB   rB      r@   r   c                 *    t               j                  S )z-:returns: pictures directory tied to the user)r%   user_pictures_dirr?   r   r   rD   rD          >+++r   c                 *    t               j                  S )z+:returns: videos directory tied to the user)r%   user_videos_dirr?   r   r   rG   rG         >)))r   c                 *    t               j                  S )z*:returns: music directory tied to the user)r%   user_music_dirr?   r   r   rJ   rJ   	  s    >(((r   c                 *    t               j                  S )z,:returns: desktop directory tied to the user)r%   user_desktop_dirr?   r   r   rL   rL         >***r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: runtime directory tied to the user
    r2   )r%   user_runtime_dirr2   s        r   rO   rO     (     # r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: runtime directory shared by users
    r2   )r%   site_runtime_dirr2   s        r   rR   rR   +  rP   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: data path tied to the user
    r   )r%   user_data_pathr   s        r   rT   rT   C  r5   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param multipath: See `multipath <platformdirs.api.PlatformDirsABC.multipath>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: data path shared by users
    r)   )r%   site_data_pathr)   s        r   rV   rV   [  s'     # nr   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: config path tied to the user
    r   )r%   user_config_pathr   s        r   rX   rX   s  rP   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param multipath: See `roaming <platformdirs.api.PlatformDirsABC.multipath>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: config path shared by the users
    r)   )r%   site_config_pathr)   s        r   rZ   rZ     s(     # r   c                6    t        | ||||      j                  S r7   )r%   site_cache_pathr2   s        r   r\   r\     r.   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `roaming <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: cache path tied to the user
    r2   )r%   user_cache_pathr2   s        r   r^   r^     r.   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param roaming: See `roaming <platformdirs.api.PlatformDirsABC.roaming>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: state path tied to the user
    r   )r%   user_state_pathr   s        r   r`   r`     r.   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `roaming <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: log path tied to the user
    r2   )r%   user_log_pathr2   s        r   rb   rb     r'   r   c                 *    t               j                  S )z+:returns: documents a path tied to the user)r%   user_documents_pathr?   r   r   rd   rd         >---r   c                 *    t               j                  S )z):returns: downloads path tied to the user)r%   user_downloads_pathr?   r   r   rg   rg     re   r   c                 *    t               j                  S )z(:returns: pictures path tied to the user)r%   user_pictures_pathr?   r   r   ri   ri     r@   r   c                 *    t               j                  S )z&:returns: videos path tied to the user)r%   user_videos_pathr?   r   r   rk   rk     rM   r   c                 *    t               j                  S )z%:returns: music path tied to the user)r%   user_music_pathr?   r   r   rm   rm     rH   r   c                 *    t               j                  S )z':returns: desktop path tied to the user)r%   user_desktop_pathr?   r   r   ro   ro     rE   r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: runtime path tied to the user
    r2   )r%   user_runtime_pathr2   s        r   rq   rq   !  (     # r   c                6    t        | ||||      j                  S )a  
    :param appname: See `appname <platformdirs.api.PlatformDirsABC.appname>`.
    :param appauthor: See `appauthor <platformdirs.api.PlatformDirsABC.appauthor>`.
    :param version: See `version <platformdirs.api.PlatformDirsABC.version>`.
    :param opinion: See `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
    :param ensure_exists: See `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    :returns: runtime path shared by users
    r2   )r%   site_runtime_pathr2   s        r   rt   rt   9  rr   r   )%AppDirsr%   r   r   __version_info__r8   r\   r0   rZ   r+   rV   rR   rt   r4   r^   r-   rX   r&   rT   rL   ro   r>   rd   rB   rg   r<   rb   rJ   rm   rD   ri   rO   rq   r:   r`   rG   rk   )returnztype[PlatformDirsABC])NNNFF)r    
str | Noner!   str | None | Literal[False]r"   rx   r#   boolr$   rz   rw   str)r    rx   r!   ry   r"   rx   r*   rz   r$   rz   rw   r{   )NNNTF)r    rx   r!   ry   r"   rx   r3   rz   r$   rz   rw   r{   )rw   r{   )r    rx   r!   ry   r"   rx   r#   rz   r$   rz   rw   r	   )r    rx   r!   ry   r"   rx   r*   rz   r$   rz   rw   r	   )r    rx   r!   ry   r"   rx   r3   rz   r$   rz   rw   r	   )rw   r	   )<__doc__
__future__r   r   systypingr   apir   r"   r   r   rv   pathlibr	   r
   platformplatformdirs.windowsr   r   platformdirs.macosr   platformdirs.unixr   r   r%   ru   r&   r+   r-   r0   r4   r8   r:   r<   r>   rB   rD   rG   rJ   rL   rO   rR   rT   rV   rX   rZ   r\   r^   r`   rb   rd   rg   ri   rk   rm   ro   rq   rt   __all__r?   r   r   <module>r      s   # 	 
       :<<77\\X31 L*,L
 -1*  	
  	2 -1*  	
  	2 -1*  	
  	2 -1*  	
  	2 -1*  	
  	2 -1*  	
  	2 -1*  	
  	2 -1*  	
  	0-
-
,
*
)
+ -1*  	
  	2 -1*  	
  	2 -1*  	
  
2 -1*  	
  
2 -1*  	
  
2 -1*  	
  
2 -1*  	
  
2 -1*  	
  
2 -1*  	
  
2 -1*  	
  
0.
.
-
+
*
, -1*  	
  
2 -1*  	
  
0&r   