Ë
    Ñ—Äj&
  ã                  ó¨   — U d Z ddlmZ ddlmZ ddlmZ ddlmZm	Z	 ddl
Z
ddlmZ er
ddlZddlmZ  eh d	£«      Zd
ed<   edd„«       Zdd„ZdgZy)zSTest helpers that keep platformdirs away from the real user and system directories.é    )Úannotations)Úcontextmanager)ÚPath)ÚTYPE_CHECKINGÚFinalN)ÚPlatformDirsABC)ÚIterator>   Úsite_logÚuser_logÚ	site_dataÚ	user_dataÚ
site_cacheÚ
site_stateÚ
user_cacheÚ
user_stateÚsite_configÚuser_configÚsite_runtimeÚuser_runtimeÚuser_preferencezFinal[frozenset[str]]Ú
_APP_KINDSc              #  ó  K  — t        | «      }t        j                  D �ci c]:  }|t        ||j	                  d«      x}z  |t
        v |j                  d«      ¬«      “Œ< }}|t        t        «      j                  «       D ��ci c]*  \  }}|j                  d«      r|j                  d«      r||“Œ, c}}z  }t        j                  }|D �ci c]  }|t        |«      v sŒ|t        |«      |   “Œ! }}|j                  «       D ]  \  }}t        |||«       Œ 	 |–— |D ]#  }||v rt        ||||   «       Œt        ||«       Œ% yc c}w c c}}w c c}w # |D ]#  }||v rt        ||||   «       Œt        ||«       Œ% w xY w­w)a�  Resolve every directory of :data:`~platformdirs.PlatformDirs` under ``root`` while the context is active.

    Each kind maps to ``<root>/<kind>``, where ``kind`` is the property name without ``_dir``, such as ``user_config``.
    The data, config, cache, state, log, runtime and preference kinds append ``appname`` and ``version``, so
    ``PlatformDirs("app", version="1.0").user_config_path`` becomes ``<root>/user_config/app/1.0``. Every thread of the
    current process sees the change, and subprocesses do not.

    :param root: directory that holds the redirected directories

    :returns: ``root`` as a :class:`~pathlib.Path`

    Ú_dirÚuser_)ÚappÚprivateÚ_site_Ú_dirsN)r   r   Ú__abstractmethods__Ú	_redirectÚremovesuffixr   Ú
startswithÚvarsÚitemsÚendswithÚplatformdirsÚPlatformDirsÚsetattrÚdelattr)ÚrootÚbaseÚnameÚkindÚpatchesÚvalueÚclsÚsaveds           úYC:\Users\pivot\Documents\cueki\casual-preloader\Lib\site-packages\platformdirs/testing.pyÚisolated_dirsr3   !   s—  è ø€ ô �‹:€Dô
 $×7Ò7ó	ñ 8ˆDð 	ŒiØ˜D×-Ñ-¨fÓ5Ð5�DÑ6¸DÄJÐ<NÐX\×XgÑXgÐhoÓXpô
ñ 	
ð 8ð	 ð ð ä¤Ó0×6Ñ6Ô8ôá8‰KˆD�%Ø�?‰?˜8Ô$¨¯©°wÔ)?ð 	ˆe‰Ø8òñ €Gô
 ×
#Ñ
#€CÙ/6ÓL©w t¸$Ä$ÀsÃ)Ò:KˆT”4˜“9˜T‘?Ñ"¨w€EÐLØ—}‘}–‰ˆˆeÜ��T˜5Õ!ð 'ð#ØŠ
ãˆDØ�u‰}Ü˜˜T 5¨¡;Õ/ä˜˜TÕ"ñ	 ùò'ùóùò Møó ˆDØ�u‰}Ü˜˜T 5¨¡;Õ/ä˜˜TÕ"ñ	 üsF   ‚F ?EÁ#FÂ/E	Â1FÃEÃEÃ/'FÄE Ä9FÅ*E>Å>Fc               ó.   ‡ ‡‡— dˆˆ ˆfd„}t        |«      S )Nc                óV   •— ‰r| j                  t        ‰«      ‰¬«      S t        ‰«      S )N)r   )Ú_append_app_name_and_versionÚstr)Úselfr   Úpathr   s    €€€r2   Úresolvez_redirect.<locals>.resolveK   s+   ø€ ÙPSˆt×0Ñ0´°T³ÀGÐ0ÓLÐbÔY\Ð]aÓYbÐbó    )r8   r   Úreturnr7   )Úproperty)r9   r   r   r:   s   ``` r2   r    r    J   s   ú€ ÷cô �GÓÐr;   r3   )r*   zstr | os.PathLike[str]r<   zIterator[Path])r9   r   r   Úboolr   r>   r<   r=   )Ú__doc__Ú
__future__r   Ú
contextlibr   Úpathlibr   Útypingr   r   r&   Úplatformdirs.apir   ÚosÚcollections.abcr	   Ú	frozensetr   Ú__annotations__r3   r    Ú__all__© r;   r2   Ú<module>rK      s`   ðÚ Yå "å %Ý ß 'ã Ý ,áÛÝ(á$-ò /ó %€
Ð!ó ð" ò%#ó ð%#óPð ð�r;   