§
    !ph=$  ã                  ó~   — 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 ddl	mZ  G d	„ d
e¦  «        ZdS )z	Base API.é    )ÚannotationsN)ÚABCÚabstractmethod)ÚPath)ÚTYPE_CHECKING)ÚIterator)ÚLiteralc                  ó‚  — e Zd ZdZ	 	 	 	 	 	 	 dDdEd„ZdFd„ZdGd„ZdHd„Zee	dId„¦   «         ¦   «         Z
ee	dId„¦   «         ¦   «         Zee	dId„¦   «         ¦   «         Zee	dId„¦   «         ¦   «         Zee	dId„¦   «         ¦   «         Zee	dId„¦   «         ¦   «         Zee	dId „¦   «         ¦   «         Zee	dId!„¦   «         ¦   «         Zee	dId"„¦   «         ¦   «         Zee	dId#„¦   «         ¦   «         Zee	dId$„¦   «         ¦   «         Zee	dId%„¦   «         ¦   «         Zee	dId&„¦   «         ¦   «         Zee	dId'„¦   «         ¦   «         Zee	dId(„¦   «         ¦   «         Zee	dId)„¦   «         ¦   «         ZedJd*„¦   «         ZedJd+„¦   «         ZedJd,„¦   «         ZedJd-„¦   «         ZedJd.„¦   «         ZedJd/„¦   «         ZedJd0„¦   «         Z edJd1„¦   «         Z!edJd2„¦   «         Z"edJd3„¦   «         Z#edJd4„¦   «         Z$edJd5„¦   «         Z%edJd6„¦   «         Z&edJd7„¦   «         Z'edJd8„¦   «         Z(edJd9„¦   «         Z)dKd;„Z*dKd<„Z+dKd=„Z,dKd>„Z-dLd@„Z.dLdA„Z/dLdB„Z0dLdC„Z1dS )MÚPlatformDirsABCz-Abstract base class for platform directories.NFTÚappnameú
str | NoneÚ	appauthorústr | Literal[False] | NoneÚ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           ú]C:\Users\Daniel\PycharmProjects\Portfolio_Website\.venv\Lib\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_versionQ   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_directory[   s<   € ØÔð 	:Ý�‰JŒJ×Ò T°DÐÑ9Ô9Ð9Ð9Ð9ð	:ð 	:r   Ú	directoryr   c                óx   — | j         r%|                     t          j        ¦  «        d         }t	          |¦  «        S )Nr   )r   Úsplitr#   Úpathsepr   )r   r.   s     r   Ú _first_item_as_path_if_multipathz0PlatformDirsABC._first_item_as_path_if_multipath_   s0   € ØŒ>ð 	7à!Ÿš­¬
Ñ3Ô3°AÔ6ˆIÝ�I‰ŒÐr   c                ó   — dS )z(:return: data directory tied to the userN© ©r   s    r   Úuser_data_dirzPlatformDirsABC.user_data_dire   ó   € € € r   c                ó   — dS )z':return: data directory shared by usersNr4   r5   s    r   Úsite_data_dirzPlatformDirsABC.site_data_dirj   r7   r   c                ó   — dS )z*:return: config directory tied to the userNr4   r5   s    r   Úuser_config_dirzPlatformDirsABC.user_config_diro   r7   r   c                ó   — dS )z-:return: config directory shared by the usersNr4   r5   s    r   Úsite_config_dirzPlatformDirsABC.site_config_dirt   r7   r   c                ó   — dS )z):return: cache directory tied to the userNr4   r5   s    r   Úuser_cache_dirzPlatformDirsABC.user_cache_diry   r7   r   c                ó   — dS )z(:return: cache directory shared by usersNr4   r5   s    r   Úsite_cache_dirzPlatformDirsABC.site_cache_dir~   r7   r   c                ó   — dS )z):return: state directory tied to the userNr4   r5   s    r   Úuser_state_dirzPlatformDirsABC.user_state_dirƒ   r7   r   c                ó   — dS )z':return: log directory tied to the userNr4   r5   s    r   Úuser_log_dirzPlatformDirsABC.user_log_dirˆ   r7   r   c                ó   — dS )z-:return: documents directory tied to the userNr4   r5   s    r   Úuser_documents_dirz"PlatformDirsABC.user_documents_dir�   r7   r   c                ó   — dS )z-:return: downloads directory tied to the userNr4   r5   s    r   Úuser_downloads_dirz"PlatformDirsABC.user_downloads_dir’   r7   r   c                ó   — dS )z,:return: pictures directory tied to the userNr4   r5   s    r   Úuser_pictures_dirz!PlatformDirsABC.user_pictures_dir—   r7   r   c                ó   — dS )z*:return: videos directory tied to the userNr4   r5   s    r   Úuser_videos_dirzPlatformDirsABC.user_videos_dirœ   r7   r   c                ó   — dS )z):return: music directory tied to the userNr4   r5   s    r   Úuser_music_dirzPlatformDirsABC.user_music_dir¡   r7   r   c                ó   — dS )z+:return: desktop directory tied to the userNr4   r5   s    r   Úuser_desktop_dirz PlatformDirsABC.user_desktop_dir¦   r7   r   c                ó   — dS )z+:return: runtime directory tied to the userNr4   r5   s    r   Úuser_runtime_dirz PlatformDirsABC.user_runtime_dir«   r7   r   c                ó   — dS )z*:return: runtime directory shared by usersNr4   r5   s    r   Úsite_runtime_dirz PlatformDirsABC.site_runtime_dir°   r7   r   c                ó*   — t          | j        ¦  «        S )z#:return: data path tied to the user)r   r6   r5   s    r   Úuser_data_pathzPlatformDirsABC.user_data_pathµ   ó   € õ �DÔ&Ñ'Ô'Ð'r   c                ó*   — t          | j        ¦  «        S )z":return: data path shared by users)r   r9   r5   s    r   Úsite_data_pathzPlatformDirsABC.site_data_pathº   rX   r   c                ó*   — t          | j        ¦  «        S )z%:return: config path tied to the user)r   r;   r5   s    r   Úuser_config_pathz PlatformDirsABC.user_config_path¿   ó   € õ �DÔ(Ñ)Ô)Ð)r   c                ó*   — t          | j        ¦  «        S )z(:return: config path shared by the users)r   r=   r5   s    r   Úsite_config_pathz PlatformDirsABC.site_config_pathÄ   r]   r   c                ó*   — t          | j        ¦  «        S )z$:return: cache path tied to the user)r   r?   r5   s    r   Úuser_cache_pathzPlatformDirsABC.user_cache_pathÉ   ó   € õ �DÔ'Ñ(Ô(Ð(r   c                ó*   — t          | j        ¦  «        S )z#:return: cache path shared by users)r   rA   r5   s    r   Úsite_cache_pathzPlatformDirsABC.site_cache_pathÎ   rb   r   c                ó*   — t          | j        ¦  «        S )z$:return: state path tied to the user)r   rC   r5   s    r   Úuser_state_pathzPlatformDirsABC.user_state_pathÓ   rb   r   c                ó*   — t          | j        ¦  «        S )z":return: log path tied to the user)r   rE   r5   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   rG   r5   s    r   Úuser_documents_pathz#PlatformDirsABC.user_documents_pathÝ   ó   € õ �DÔ+Ñ,Ô,Ð,r   c                ó*   — t          | j        ¦  «        S )z(:return: downloads path tied to the user)r   rI   r5   s    r   Úuser_downloads_pathz#PlatformDirsABC.user_downloads_pathâ   rk   r   c                ó*   — t          | j        ¦  «        S )z':return: pictures path tied to the user)r   rK   r5   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   rM   r5   s    r   Úuser_videos_pathz PlatformDirsABC.user_videos_pathì   r]   r   c                ó*   — t          | j        ¦  «        S )z$:return: music path tied to the user)r   rO   r5   s    r   Úuser_music_pathzPlatformDirsABC.user_music_pathñ   rb   r   c                ó*   — t          | j        ¦  «        S )z&:return: desktop path tied to the user)r   rQ   r5   s    r   Úuser_desktop_pathz!PlatformDirsABC.user_desktop_pathö   ó   € õ �DÔ)Ñ*Ô*Ð*r   c                ó*   — t          | j        ¦  «        S )z&:return: runtime path tied to the user)r   rS   r5   s    r   Úuser_runtime_pathz!PlatformDirsABC.user_runtime_pathû   rv   r   c                ó*   — t          | j        ¦  «        S )z%:return: runtime path shared by users)r   rU   r5   s    r   Úsite_runtime_pathz!PlatformDirsABC.site_runtime_path   rv   r   úIterator[str]c              #  ó.   K  — | j         V — | j        V — dS )z4:yield: all user and site configuration directories.N)r;   r=   r5   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)r6   r9   r5   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?   rA   r5   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)rS   rU   r5   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)r}   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)r   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   r   )r   r   )r   r{   )r   r„   )2Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r(   r&   r2   Úpropertyr   r6   r9   r;   r=   r?   rA   rC   rE   rG   rI   rK   rM   rO   rQ   rS   rU   rW   rZ   r\   r_   ra   rd   rf   rh   rj   rm   ro   rq   rs   ru   rx   rz   r}   r   r�   rƒ   r†   rˆ   rŠ   rŒ   r4   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   Úcollections.abcr   r	   r   r4   r   r   ú<module>r—      sË   ðØ €à "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  àð Ø(Ð(Ð(Ð(Ð(Ð(ØÐÐÐÐÐð\ð \ð \ð \ð \�cñ \ô \ð \ð \ð \r   