§
    ïyIf$#  ã                  ó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           úD/var/www/piapp/venv/lib/python3.11/site-packages/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‡   € Ý�d˜1˜2˜2”h‘”ˆØŒ<ð 	,Ø�MŠM˜$œ,Ñ'Ô'Ð'ØŒ|ð ,Ø—’˜dœlÑ+Ô+Ð+ÝŒ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<   € ØÔð 	:Ý�‰JŒJ×Ò T°DÐÑ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   