
    жvg$#                    v    d Z ddlmZ ddlZddlmZmZ ddlmZ ddl	m
Z
 e
rddl	mZmZ  G d d	e          ZdS )
z	Base API.    )annotationsN)ABCabstractmethod)Path)TYPE_CHECKING)IteratorLiteralc                  z   e Zd ZdZ	 	 	 	 	 	 	 dBdCdZdDdZdEdZeedFd                        Z	eedFd                        Z
eedFd                        ZeedFd                        ZeedFd                        ZeedFd                        ZeedFd                        ZeedFd                        ZeedFd                        ZeedFd                         ZeedFd!                        ZeedFd"                        ZeedFd#                        ZeedFd$                        ZeedFd%                        ZeedFd&                        ZedGd(            ZedGd)            ZedGd*            ZedGd+            ZedGd,            ZedGd-            ZedGd.            ZedGd/            Z edGd0            Z!edGd1            Z"edGd2            Z#edGd3            Z$edGd4            Z%edGd5            Z&edGd6            Z'edGd7            Z(dHd9Z)dHd:Z*dHd;Z+dHd<Z,dId>Z-dId?Z.dId@Z/dIdAZ0dS )JPlatformDirsABCz-Abstract base class for platform directories.NFTappname
str | None	appauthorstr | None | Literal[False]versionroamingbool	multipathopinionensure_existsreturnNonec                p    || _         || _        	 || _        	 || _        	 || _        	 || _        || _        dS )aY  
        Create a new platform directory.

        :param appname: See `appname`.
        :param appauthor: See `appauthor`.
        :param version: See `version`.
        :param roaming: See `roaming`.
        :param multipath: See `multipath`.
        :param opinion: See `opinion`.
        :param ensure_exists: See `ensure_exists`.

        N)r   r   r   r   r   r   r   )selfr   r   r   r   r   r   r   s           Y/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/pip/_vendor/platformdirs/api.py__init__zPlatformDirsABC.__init__   s\    , "	 	 	 #	 *	 	    basestrc                   t          |dd                    }| j        r;|                    | j                   | j        r|                    | j                   t	          j        j        |d         g|R  }|                     |           |S )N   r   )listr   appendr   ospathjoin_optionally_create_directory)r   r   paramsr$   s       r   _append_app_name_and_versionz,PlatformDirsABC._append_app_name_and_versionP   s    d122h< 	,MM$,'''| ,dl+++w|DG-f---))$///r   r$   c                `    | j         r&t          |                              dd           d S d S )NT)parentsexist_ok)r   r   mkdirr   r$   s     r   r&   z,PlatformDirsABC._optionally_create_directoryZ   s<     	:JJTD99999	: 	:r   c                    dS )z(:return: data directory tied to the userN r   s    r   user_data_dirzPlatformDirsABC.user_data_dir^         r   c                    dS )z':return: data directory shared by usersNr/   r0   s    r   site_data_dirzPlatformDirsABC.site_data_dirc   r2   r   c                    dS )z*:return: config directory tied to the userNr/   r0   s    r   user_config_dirzPlatformDirsABC.user_config_dirh   r2   r   c                    dS )z-:return: config directory shared by the usersNr/   r0   s    r   site_config_dirzPlatformDirsABC.site_config_dirm   r2   r   c                    dS )z):return: cache directory tied to the userNr/   r0   s    r   user_cache_dirzPlatformDirsABC.user_cache_dirr   r2   r   c                    dS )z(:return: cache directory shared by usersNr/   r0   s    r   site_cache_dirzPlatformDirsABC.site_cache_dirw   r2   r   c                    dS )z):return: state directory tied to the userNr/   r0   s    r   user_state_dirzPlatformDirsABC.user_state_dir|   r2   r   c                    dS )z':return: log directory tied to the userNr/   r0   s    r   user_log_dirzPlatformDirsABC.user_log_dir   r2   r   c                    dS )z-:return: documents directory tied to the userNr/   r0   s    r   user_documents_dirz"PlatformDirsABC.user_documents_dir   r2   r   c                    dS )z-:return: downloads directory tied to the userNr/   r0   s    r   user_downloads_dirz"PlatformDirsABC.user_downloads_dir   r2   r   c                    dS )z,:return: pictures directory tied to the userNr/   r0   s    r   user_pictures_dirz!PlatformDirsABC.user_pictures_dir   r2   r   c                    dS )z*:return: videos directory tied to the userNr/   r0   s    r   user_videos_dirzPlatformDirsABC.user_videos_dir   r2   r   c                    dS )z):return: music directory tied to the userNr/   r0   s    r   user_music_dirzPlatformDirsABC.user_music_dir   r2   r   c                    dS )z+:return: desktop directory tied to the userNr/   r0   s    r   user_desktop_dirz PlatformDirsABC.user_desktop_dir   r2   r   c                    dS )z+:return: runtime directory tied to the userNr/   r0   s    r   user_runtime_dirz PlatformDirsABC.user_runtime_dir   r2   r   c                    dS )z*:return: runtime directory shared by usersNr/   r0   s    r   site_runtime_dirz PlatformDirsABC.site_runtime_dir   r2   r   r   c                *    t          | j                  S )z#:return: data path tied to the user)r   r1   r0   s    r   user_data_pathzPlatformDirsABC.user_data_path        D&'''r   c                *    t          | j                  S )z":return: data path shared by users)r   r4   r0   s    r   site_data_pathzPlatformDirsABC.site_data_path   rS   r   c                *    t          | j                  S )z%:return: config path tied to the user)r   r6   r0   s    r   user_config_pathz PlatformDirsABC.user_config_path        D()))r   c                *    t          | j                  S )z(:return: config path shared by the users)r   r8   r0   s    r   site_config_pathz PlatformDirsABC.site_config_path   rX   r   c                *    t          | j                  S )z$:return: cache path tied to the user)r   r:   r0   s    r   user_cache_pathzPlatformDirsABC.user_cache_path        D'(((r   c                *    t          | j                  S )z#:return: cache path shared by users)r   r<   r0   s    r   site_cache_pathzPlatformDirsABC.site_cache_path   r]   r   c                *    t          | j                  S )z$:return: state path tied to the user)r   r>   r0   s    r   user_state_pathzPlatformDirsABC.user_state_path   r]   r   c                *    t          | j                  S )z":return: log path tied to the user)r   r@   r0   s    r   user_log_pathzPlatformDirsABC.user_log_path   s     D%&&&r   c                *    t          | j                  S )z*:return: documents a path tied to the user)r   rB   r0   s    r   user_documents_pathz#PlatformDirsABC.user_documents_path        D+,,,r   c                *    t          | j                  S )z(:return: downloads path tied to the user)r   rD   r0   s    r   user_downloads_pathz#PlatformDirsABC.user_downloads_path   rf   r   c                *    t          | j                  S )z':return: pictures path tied to the user)r   rF   r0   s    r   user_pictures_pathz"PlatformDirsABC.user_pictures_path   s     D*+++r   c                *    t          | j                  S )z%:return: videos path tied to the user)r   rH   r0   s    r   user_videos_pathz PlatformDirsABC.user_videos_path   rX   r   c                *    t          | j                  S )z$:return: music path tied to the user)r   rJ   r0   s    r   user_music_pathzPlatformDirsABC.user_music_path   r]   r   c                *    t          | j                  S )z&:return: desktop path tied to the user)r   rL   r0   s    r   user_desktop_pathz!PlatformDirsABC.user_desktop_path        D)***r   c                *    t          | j                  S )z&:return: runtime path tied to the user)r   rN   r0   s    r   user_runtime_pathz!PlatformDirsABC.user_runtime_path   rq   r   c                *    t          | j                  S )z%:return: runtime path shared by users)r   rP   r0   s    r   site_runtime_pathz!PlatformDirsABC.site_runtime_path   rq   r   Iterator[str]c              #  .   K   | j         V  | j        V  dS )z4:yield: all user and site configuration directories.N)r6   r8   r0   s    r   iter_config_dirsz PlatformDirsABC.iter_config_dirs   s*      """"""""""r   c              #  .   K   | j         V  | j        V  dS )z+:yield: all user and site data directories.N)r1   r4   r0   s    r   iter_data_dirszPlatformDirsABC.iter_data_dirs  s*                r   c              #  .   K   | j         V  | j        V  dS )z,:yield: all user and site cache directories.N)r:   r<   r0   s    r   iter_cache_dirszPlatformDirsABC.iter_cache_dirs  s*      !!!!!!!!!!r   c              #  .   K   | j         V  | j        V  dS )z.:yield: all user and site runtime directories.N)rN   rP   r0   s    r   iter_runtime_dirsz!PlatformDirsABC.iter_runtime_dirs  s*      ##########r   Iterator[Path]c              #  Z   K   |                                  D ]}t          |          V  dS )z.:yield: all user and site configuration paths.N)rx   r   r-   s     r   iter_config_pathsz!PlatformDirsABC.iter_config_paths  s@      ))++ 	 	Dt**	 	r   c              #  Z   K   |                                  D ]}t          |          V  dS )z%:yield: all user and site data paths.N)rz   r   r-   s     r   iter_data_pathszPlatformDirsABC.iter_data_paths  s@      '')) 	 	Dt**	 	r   c              #  Z   K   |                                  D ]}t          |          V  dS )z&:yield: all user and site cache paths.N)r|   r   r-   s     r   iter_cache_pathsz PlatformDirsABC.iter_cache_paths  s@      ((** 	 	Dt**	 	r   c              #  Z   K   |                                  D ]}t          |          V  dS )z(:yield: all user and site runtime paths.N)r~   r   r-   s     r   iter_runtime_pathsz"PlatformDirsABC.iter_runtime_paths!  s@      **,, 	 	Dt**	 	r   )NNNFFTF)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   )r$   r   r   r   )r   r   )r   r   )r   rv   )r   r   )1__name__
__module____qualname____doc__r   r(   r&   propertyr   r1   r4   r6   r8   r:   r<   r>   r@   rB   rD   rF   rH   rJ   rL   rN   rP   rR   rU   rW   rZ   r\   r_   ra   rc   re   rh   rj   rl   rn   rp   rs   ru   rx   rz   r|   r~   r   r   r   r   r/   r   r   r   r      s       77 #15"#= = = = =~   : : : : 7 7 7 ^ X7 6 6 6 ^ X6 9 9 9 ^ X9 < < < ^ X< 8 8 8 ^ X8 7 7 7 ^ X7 8 8 8 ^ X8 6 6 6 ^ X6 < < < ^ X< < < < ^ X< ; ; ; ^ X; 9 9 9 ^ X9 8 8 8 ^ X8 : : : ^ X: : : : ^ X: 9 9 9 ^ X9 ( ( ( X( ( ( ( X( * * * X* * * * X* ) ) ) X) ) ) ) X) ) ) ) X) ' ' ' X' - - - X- - - - X- , , , X, * * * X* ) ) ) X) + + + X+ + + + X+ + + + X+# # # #
! ! ! !
" " " "
$ $ $ $
   
   
   
     r   r   )r   
__future__r   r#   abcr   r   pathlibr   typingr   r   r	   r   r/   r   r   <module>r      s     " " " " " " 				 # # # # # # # #                   )((((((((V V V V Vc V V V V Vr   