§
    ŒŸjg4  ã                  ó~   — 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                  ól  — e Zd ZdZ	 	 	 	 	 	 	 	 dYdZd„Zd[d„Zd\d„Zd]d„Zee	d^d„¦   «         ¦   «         Z
ee	d^d„¦   «         ¦   «         Zed_d„¦   «         Zee	d^d„¦   «         ¦   «         Zee	d^d „¦   «         ¦   «         Zed_d!„¦   «         Zee	d^d"„¦   «         ¦   «         Zee	d^d#„¦   «         ¦   «         Zee	d^d$„¦   «         ¦   «         Zee	d^d%„¦   «         ¦   «         Zee	d^d&„¦   «         ¦   «         Zee	d^d'„¦   «         ¦   «         Zee	d^d(„¦   «         ¦   «         Zee	d^d)„¦   «         ¦   «         Zee	d^d*„¦   «         ¦   «         Zee	d^d+„¦   «         ¦   «         Zee	d^d,„¦   «         ¦   «         Zee	d^d-„¦   «         ¦   «         Zee	d^d.„¦   «         ¦   «         Zee	d^d/„¦   «         ¦   «         Zee	d^d0„¦   «         ¦   «         Zee	d^d1„¦   «         ¦   «         Zed_d2„¦   «         Z ee	d^d3„¦   «         ¦   «         Z!ee	d^d4„¦   «         ¦   «         Z"ed`d5„¦   «         Z#ed`d6„¦   «         Z$ed`d7„¦   «         Z%ed`d8„¦   «         Z&ed`d9„¦   «         Z'ed`d:„¦   «         Z(ed`d;„¦   «         Z)ed`d<„¦   «         Z*ed`d=„¦   «         Z+ed`d>„¦   «         Z,ed`d?„¦   «         Z-ed`d@„¦   «         Z.ed`dA„¦   «         Z/ed`dB„¦   «         Z0ed`dC„¦   «         Z1ed`dD„¦   «         Z2ed`dE„¦   «         Z3ed`dF„¦   «         Z4ed`dG„¦   «         Z5ed`dH„¦   «         Z6ed`dI„¦   «         Z7ed`dJ„¦   «         Z8dadL„Z9dadM„Z:dadN„Z;dadO„Z<dadP„Z=dadQ„Z>dbdS„Z?dbdT„Z@dbdU„ZAdbdV„ZBdbdW„ZCdbdX„ZDdS )cÚPlatformDirsABCav  Abstract base class defining all platform directory properties, their :class:`~pathlib.Path` variants, and iterators.

    Platform-specific subclasses (e.g. :class:`~platformdirs.windows.Windows`, :class:`~platformdirs.macos.MacOS`,
    :class:`~platformdirs.unix.Unix`) implement the abstract properties to return the appropriate paths for each
    operating system.

    NFTÚappnameú
str | NoneÚ	appauthorústr | Literal[False] | NoneÚversionÚroamingÚboolÚ	multipathÚopinionÚensure_existsÚuse_site_for_rootÚreturnÚNonec	                ó‚   — || _         || _        	 || _        	 || _        	 || _        	 || _        	 || _        	 || _        dS )a‹  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`.
        :param use_site_for_root: See `use_site_for_root`.

        N)r   r   r   r   r   r   r   r   )	Úselfr   r   r   r   r   r   r   r   s	            ú]/var/www/finuniver-perm.ru/html/student/venv/lib/python3.11/site-packages/platformdirs/api.pyÚ__init__zPlatformDirsABC.__init__   sr   € ð. ˆŒØ"ˆŒð	ð ˆŒð	ð ˆŒð	ð #ˆŒð	ð ˆŒð	ð +ˆÔð	ð
 "3ˆÔð	ð 	ó    Ú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_versiong   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_directoryq   s<   € ØÔð 	:Ý�‰JŒJ×Ò T°DÐÑ9Ô9Ð9Ð9Ð9ð	:ð 	:r   Ú	directoryr   c                óx   — | j         r%|                     t          j        ¦  «        d         }t	          |¦  «        S )Nr   )r   Ú	partitionr$   Úpathsepr   )r   r/   s     r   Ú _first_item_as_path_if_multipathz0PlatformDirsABC._first_item_as_path_if_multipathu   s2   € ØŒ>ð 	;à!×+Ò+­B¬JÑ7Ô7¸Ô:ˆIÝ�I‰ŒÐr   c                ó   — dS )z):returns: data directory tied to the userN© ©r   s    r   Úuser_data_dirzPlatformDirsABC.user_data_dir{   ó   € € € r   c                ó   — dS )z(:returns: data directory shared by usersNr5   r6   s    r   Úsite_data_dirzPlatformDirsABC.site_data_dir€   r8   r   ú	list[str]c                ó   — t           ‚©N©ÚNotImplementedErrorr6   s    r   Ú_site_data_dirszPlatformDirsABC._site_data_dirs…   ó   € å!Ð!r   c                ó   — dS )z+:returns: config directory tied to the userNr5   r6   s    r   Úuser_config_dirzPlatformDirsABC.user_config_dir‰   r8   r   c                ó   — dS )z*:returns: config directory shared by usersNr5   r6   s    r   Úsite_config_dirzPlatformDirsABC.site_config_dirŽ   r8   r   c                ó   — t           ‚r=   r>   r6   s    r   Ú_site_config_dirsz!PlatformDirsABC._site_config_dirs“   rA   r   c                ó   — dS )z*:returns: cache directory tied to the userNr5   r6   s    r   Úuser_cache_dirzPlatformDirsABC.user_cache_dir—   r8   r   c                ó   — dS )z):returns: cache directory shared by usersNr5   r6   s    r   Úsite_cache_dirzPlatformDirsABC.site_cache_dirœ   r8   r   c                ó   — dS )z*:returns: state directory tied to the userNr5   r6   s    r   Úuser_state_dirzPlatformDirsABC.user_state_dir¡   r8   r   c                ó   — dS )z):returns: state directory shared by usersNr5   r6   s    r   Úsite_state_dirzPlatformDirsABC.site_state_dir¦   r8   r   c                ó   — dS )z(:returns: log directory tied to the userNr5   r6   s    r   Úuser_log_dirzPlatformDirsABC.user_log_dir«   r8   r   c                ó   — dS )z':returns: log directory shared by usersNr5   r6   s    r   Úsite_log_dirzPlatformDirsABC.site_log_dir°   r8   r   c                ó   — dS )z.:returns: documents directory tied to the userNr5   r6   s    r   Úuser_documents_dirz"PlatformDirsABC.user_documents_dirµ   r8   r   c                ó   — dS )z.:returns: downloads directory tied to the userNr5   r6   s    r   Úuser_downloads_dirz"PlatformDirsABC.user_downloads_dirº   r8   r   c                ó   — dS )z-:returns: pictures directory tied to the userNr5   r6   s    r   Úuser_pictures_dirz!PlatformDirsABC.user_pictures_dir¿   r8   r   c                ó   — dS )z+:returns: videos directory tied to the userNr5   r6   s    r   Úuser_videos_dirzPlatformDirsABC.user_videos_dirÄ   r8   r   c                ó   — dS )z*:returns: music directory tied to the userNr5   r6   s    r   Úuser_music_dirzPlatformDirsABC.user_music_dirÉ   r8   r   c                ó   — dS )z,:returns: desktop directory tied to the userNr5   r6   s    r   Úuser_desktop_dirz PlatformDirsABC.user_desktop_dirÎ   r8   r   c                ó   — dS )z(:returns: bin directory tied to the userNr5   r6   s    r   Úuser_bin_dirzPlatformDirsABC.user_bin_dirÓ   r8   r   c                ó   — dS )z':returns: bin directory shared by usersNr5   r6   s    r   Úsite_bin_dirzPlatformDirsABC.site_bin_dirØ   r8   r   c                ó   — dS )z1:returns: applications directory tied to the userNr5   r6   s    r   Úuser_applications_dirz%PlatformDirsABC.user_applications_dirÝ   r8   r   c                ó   — dS )z0:returns: applications directory shared by usersNr5   r6   s    r   Úsite_applications_dirz%PlatformDirsABC.site_applications_dirâ   r8   r   c                ó   — t           ‚r=   r>   r6   s    r   Ú_site_applications_dirsz'PlatformDirsABC._site_applications_dirsç   rA   r   c                ó   — dS )z,:returns: runtime directory tied to the userNr5   r6   s    r   Úuser_runtime_dirz PlatformDirsABC.user_runtime_dirë   r8   r   c                ó   — dS )z+:returns: runtime directory shared by usersNr5   r6   s    r   Úsite_runtime_dirz PlatformDirsABC.site_runtime_dirð   r8   r   c                ó*   — t          | j        ¦  «        S )z$:returns: data path tied to the user)r   r7   r6   s    r   Úuser_data_pathzPlatformDirsABC.user_data_pathõ   ó   € õ �DÔ&Ñ'Ô'Ð'r   c                ó*   — t          | j        ¦  «        S )z#:returns: data path shared by users)r   r:   r6   s    r   Úsite_data_pathzPlatformDirsABC.site_data_pathú   rp   r   c                ó*   — t          | j        ¦  «        S )z&:returns: config path tied to the user)r   rC   r6   s    r   Úuser_config_pathz PlatformDirsABC.user_config_pathÿ   ó   € õ �DÔ(Ñ)Ô)Ð)r   c                ó*   — t          | j        ¦  «        S )z%:returns: config path shared by users)r   rE   r6   s    r   Úsite_config_pathz PlatformDirsABC.site_config_path  ru   r   c                ó*   — t          | j        ¦  «        S )z%:returns: cache path tied to the user)r   rI   r6   s    r   Úuser_cache_pathzPlatformDirsABC.user_cache_path	  ó   € õ �DÔ'Ñ(Ô(Ð(r   c                ó*   — t          | j        ¦  «        S )z$:returns: cache path shared by users)r   rK   r6   s    r   Úsite_cache_pathzPlatformDirsABC.site_cache_path  rz   r   c                ó*   — t          | j        ¦  «        S )z%:returns: state path tied to the user)r   rM   r6   s    r   Úuser_state_pathzPlatformDirsABC.user_state_path  rz   r   c                ó*   — t          | j        ¦  «        S )z$:returns: state path shared by users)r   rO   r6   s    r   Úsite_state_pathzPlatformDirsABC.site_state_path  rz   r   c                ó*   — t          | j        ¦  «        S )z#:returns: log path tied to the user)r   rQ   r6   s    r   Úuser_log_pathzPlatformDirsABC.user_log_path  ó   € õ �DÔ%Ñ&Ô&Ð&r   c                ó*   — t          | j        ¦  «        S )z":returns: log path shared by users)r   rS   r6   s    r   Úsite_log_pathzPlatformDirsABC.site_log_path"  rƒ   r   c                ó*   — t          | j        ¦  «        S )z):returns: documents path tied to the user)r   rU   r6   s    r   Úuser_documents_pathz#PlatformDirsABC.user_documents_path'  ó   € õ �DÔ+Ñ,Ô,Ð,r   c                ó*   — t          | j        ¦  «        S )z):returns: downloads path tied to the user)r   rW   r6   s    r   Úuser_downloads_pathz#PlatformDirsABC.user_downloads_path,  rˆ   r   c                ó*   — t          | j        ¦  «        S )z(:returns: pictures path tied to the user)r   rY   r6   s    r   Úuser_pictures_pathz"PlatformDirsABC.user_pictures_path1  s   € õ �DÔ*Ñ+Ô+Ð+r   c                ó*   — t          | j        ¦  «        S )z&:returns: videos path tied to the user)r   r[   r6   s    r   Úuser_videos_pathz PlatformDirsABC.user_videos_path6  ru   r   c                ó*   — t          | j        ¦  «        S )z%:returns: music path tied to the user)r   r]   r6   s    r   Úuser_music_pathzPlatformDirsABC.user_music_path;  rz   r   c                ó*   — t          | j        ¦  «        S )z':returns: desktop path tied to the user)r   r_   r6   s    r   Úuser_desktop_pathz!PlatformDirsABC.user_desktop_path@  ó   € õ �DÔ)Ñ*Ô*Ð*r   c                ó*   — t          | j        ¦  «        S )z#:returns: bin path tied to the user)r   ra   r6   s    r   Úuser_bin_pathzPlatformDirsABC.user_bin_pathE  rƒ   r   c                ó*   — t          | j        ¦  «        S )z":returns: bin path shared by users)r   rc   r6   s    r   Úsite_bin_pathzPlatformDirsABC.site_bin_pathJ  rƒ   r   c                ó*   — t          | j        ¦  «        S )z,:returns: applications path tied to the user)r   re   r6   s    r   Úuser_applications_pathz&PlatformDirsABC.user_applications_pathO  ó   € õ �DÔ.Ñ/Ô/Ð/r   c                ó*   — t          | j        ¦  «        S )z+:returns: applications path shared by users)r   rg   r6   s    r   Úsite_applications_pathz&PlatformDirsABC.site_applications_pathT  rš   r   c                ó*   — t          | j        ¦  «        S )z':returns: runtime path tied to the user)r   rk   r6   s    r   Úuser_runtime_pathz!PlatformDirsABC.user_runtime_pathY  r“   r   c                ó*   — t          | j        ¦  «        S )z&:returns: runtime path shared by users)r   rm   r6   s    r   Úsite_runtime_pathz!PlatformDirsABC.site_runtime_path^  r“   r   úIterator[str]c              #  ó.   K  — | j         V — | j        V — dS )z4:yield: all user and site configuration directories.N)rC   rE   r6   s    r   Úiter_config_dirsz PlatformDirsABC.iter_config_dirsc  s*   è è € àÔ"Ð"Ð"Ð"ØÔ"Ð"Ð"Ð"Ð"Ð"r   c              #  ó.   K  — | j         V — | j        V — dS )z+:yield: all user and site data directories.N)r7   r:   r6   s    r   Úiter_data_dirszPlatformDirsABC.iter_data_dirsh  s*   è è € àÔ Ð Ð Ð ØÔ Ð Ð Ð Ð Ð r   c              #  ó.   K  — | j         V — | j        V — dS )z,:yield: all user and site cache directories.N)rI   rK   r6   s    r   Úiter_cache_dirszPlatformDirsABC.iter_cache_dirsm  ó*   è è € àÔ!Ð!Ð!Ð!ØÔ!Ð!Ð!Ð!Ð!Ð!r   c              #  ó.   K  — | j         V — | j        V — dS )z,:yield: all user and site state directories.N)rM   rO   r6   s    r   Úiter_state_dirszPlatformDirsABC.iter_state_dirsr  r¨   r   c              #  ó.   K  — | j         V — | j        V — dS )z*:yield: all user and site log directories.N)rQ   rS   r6   s    r   Úiter_log_dirszPlatformDirsABC.iter_log_dirsw  s*   è è € àÔÐÐÐØÔÐÐÐÐÐr   c              #  ó.   K  — | j         V — | j        V — dS )z.:yield: all user and site runtime directories.N)rk   rm   r6   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‹  ó@   è è € à×(Ò(Ñ*Ô*ð 	ð 	ˆDÝ�t‘*”*ÐÐÐÐð	ð 	r   c              #  óZ   K  — |                       ¦   «         D ]}t          |¦  «        V — ŒdS )z&:yield: all user and site state paths.N)rª   r   r.   s     r   Úiter_state_pathsz PlatformDirsABC.iter_state_paths�  r¶   r   c              #  óZ   K  — |                       ¦   «         D ]}t          |¦  «        V — ŒdS )z$:yield: all user and site log paths.N)r¬   r   r.   s     r   Úiter_log_pathszPlatformDirsABC.iter_log_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   )NNNFFTFF)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   )r   r¡   )r   r¯   )EÚ__name__Ú
__module__Ú__qualname__Ú__doc__r   r)   r'   r3   Úpropertyr   r7   r:   r@   rC   rE   rG   rI   rK   rM   rO   rQ   rS   rU   rW   rY   r[   r]   r_   ra   rc   re   rg   ri   rk   rm   ro   rr   rt   rw   ry   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¼   r5   r   r   r   r      sC  € € € € € ðð ð #Ø15Ø"ØØØØ#Ø"'ðMð Mð Mð Mð Mð^ð ð ð ð:ð :ð :ð :ðð ð ð ð Øð8ð 8ð 8ñ „^ñ „Xð8ð Øð7ð 7ð 7ñ „^ñ „Xð7ð ð"ð "ð "ñ „Xð"ð Øð:ð :ð :ñ „^ñ „Xð:ð Øð9ð 9ð 9ñ „^ñ „Xð9ð ð"ð "ð "ñ „Xð"ð Øð9ð 9ð 9ñ „^ñ „Xð9ð Øð8ð 8ð 8ñ „^ñ „Xð8ð Øð9ð 9ð 9ñ „^ñ „Xð9ð Øð8ð 8ð 8ñ „^ñ „Xð8ð Øð7ð 7ð 7ñ „^ñ „Xð7ð Øð6ð 6ð 6ñ „^ñ „Xð6ð Øð=ð =ð =ñ „^ñ „Xð=ð Øð=ð =ð =ñ „^ñ „Xð=ð Øð<ð <ð <ñ „^ñ „Xð<ð Øð:ð :ð :ñ „^ñ „Xð:ð Øð9ð 9ð 9ñ „^ñ „Xð9ð Øð;ð ;ð ;ñ „^ñ „Xð;ð Øð7ð 7ð 7ñ „^ñ „Xð7ð Øð6ð 6ð 6ñ „^ñ „Xð6ð Øð@ð @ð @ñ „^ñ „Xð@ð Øð?ð ?ð ?ñ „^ñ „Xð?ð ð"ð "ð "ñ „Xð"ð Øð;ð ;ð ;ñ „^ñ „Xð;ð Øð:ð :ð :ñ „^ñ „Xð:ð ð(ð (ð (ñ „Xð(ð ð(ð (ð (ñ „Xð(ð ð*ð *ð *ñ „Xð*ð ð*ð *ð *ñ „Xð*ð ð)ð )ð )ñ „Xð)ð ð)ð )ð )ñ „Xð)ð ð)ð )ð )ñ „Xð)ð ð)ð )ð )ñ „Xð)ð ð'ð 'ð 'ñ „Xð'ð ð'ð 'ð 'ñ „Xð'ð ð-ð -ð -ñ „Xð-ð ð-ð -ð -ñ „Xð-ð ð,ð ,ð ,ñ „Xð,ð ð*ð *ð *ñ „Xð*ð ð)ð )ð )ñ „Xð)ð ð+ð +ð +ñ „Xð+ð ð'ð 'ð 'ñ „Xð'ð ð'ð 'ð 'ñ „Xð'ð ð0ð 0ð 0ñ „Xð0ð ð0ð 0ð 0ñ „Xð0ð ð+ð +ð +ñ „Xð+ð ð+ð +ð +ñ „Xð+ð#ð #ð #ð #ð
!ð !ð !ð !ð
"ð "ð "ð "ð
"ð "ð "ð "ð
 ð  ð  ð  ð
$ð $ð $ð $ð
ð ð ð ð
ð ð ð ð
ð ð ð ð
ð ð ð ð
ð ð ð ð
ð ð ð ð ð r   r   )rÀ   Ú
__future__r   r$   Úabcr   r   Úpathlibr   Útypingr   Úcollections.abcr   r	   r   r5   r   r   ú<module>rÇ      sË   ðØ €à "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  àð Ø(Ð(Ð(Ð(Ð(Ð(ØÐÐÐÐÐðNð Nð Nð Nð N�cñ Nô Nð Nð Nð Nr   