HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/Python311/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/android.cpython-311.pyc
�

�mi5#���dZddlmZddlZddlZddlZddlmZddlm	Z	m
Z
ddlmZGd�d	e��Z
ed�
��dd
���Zed�
��dd���Zed�
��dd���Zed�
��dd���Zed�
��dd���Zed�
��dd���Zd	gZdS)zAndroid.�)�annotationsN)�	lru_cache)�
TYPE_CHECKING�cast�)�PlatformDirsABCc��eZdZdZedd���Zedd���Zedd���Zedd���Zedd���Z	edd	���Z
edd
���Zedd���Zedd���Z
edd
���Zedd���Zedd���Zedd���Zedd���Zedd���Zedd���ZdS)�Androida"
    Follows the guidance `from here <https://android.stackexchange.com/a/216132>`_.

    Makes use of the `appname <platformdirs.api.PlatformDirsABC.appname>`, `version
    <platformdirs.api.PlatformDirsABC.version>`, `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.

    �return�strc�b�|�tdt����d��S)zd:return: data directory tied to the user, e.g. ``/data/user/<userid>/<packagename>/files/<AppName>``r�files��_append_app_name_and_versionr�_android_folder��selfs �BD:\Python311\Lib\site-packages\pip/_vendor/platformdirs/android.py�
user_data_dirzAndroid.user_data_dir�+���0�0��e�_�=N�=N�1O�1O�QX�Y�Y�Y�c��|jS)z@:return: data directory shared by users, same as `user_data_dir`�rrs r�
site_data_dirzAndroid.site_data_dir�
���!�!rc�b�|�tdt����d��S)z�
        :return: config directory tied to the user, e.g.         ``/data/user/<userid>/<packagename>/shared_prefs/<AppName>``
        r�shared_prefsrrs r�user_config_dirzAndroid.user_config_dir!s+���0�0��e�_�=N�=N�1O�1O�Q_�`�`�`rc��|jS)zH:return: config directory shared by the users, same as `user_config_dir`)rrs r�site_config_dirzAndroid.site_config_dir)s
���#�#rc�b�|�tdt����d��S)ze:return: cache directory tied to the user, e.g.,``/data/user/<userid>/<packagename>/cache/<AppName>``r�cacherrs r�user_cache_dirzAndroid.user_cache_dir.rrc��|jS)zB:return: cache directory shared by users, same as `user_cache_dir`)r#rs r�site_cache_dirzAndroid.site_cache_dir3s
���"�"rc��|jS)zB:return: state directory tied to the user, same as `user_data_dir`rrs r�user_state_dirzAndroid.user_state_dir8rrc�b�|j}|jr tj�|d��}|S)z�
        :return: log directory tied to the user, same as `user_cache_dir` if not opinionated else ``log`` in it,
          e.g. ``/data/user/<userid>/<packagename>/cache/<AppName>/log``
        �log�r#�opinion�os�path�join�rr-s  r�user_log_dirzAndroid.user_log_dir=�0���"���<�	-��7�<�<��e�,�,�D��rc��t��S)zT:return: documents directory tied to the user e.g. ``/storage/emulated/0/Documents``)�_android_documents_folderrs r�user_documents_dirzAndroid.user_documents_dirH���)�*�*�*rc��t��S)zT:return: downloads directory tied to the user e.g. ``/storage/emulated/0/Downloads``)�_android_downloads_folderrs r�user_downloads_dirzAndroid.user_downloads_dirMr5rc��t��S)zR:return: pictures directory tied to the user e.g. ``/storage/emulated/0/Pictures``)�_android_pictures_folderrs r�user_pictures_dirzAndroid.user_pictures_dirRs��(�)�)�)rc��t��S)zS:return: videos directory tied to the user e.g. ``/storage/emulated/0/DCIM/Camera``)�_android_videos_folderrs r�user_videos_dirzAndroid.user_videos_dirWs��&�'�'�'rc��t��S)zL:return: music directory tied to the user e.g. ``/storage/emulated/0/Music``)�_android_music_folderrs r�user_music_dirzAndroid.user_music_dir\s��%�&�&�&rc��dS)zP:return: desktop directory tied to the user e.g. ``/storage/emulated/0/Desktop``z/storage/emulated/0/Desktop�rs r�user_desktop_dirzAndroid.user_desktop_diras
��-�,rc�b�|j}|jr tj�|d��}|S)z�
        :return: runtime directory tied to the user, same as `user_cache_dir` if not opinionated else ``tmp`` in it,
          e.g. ``/data/user/<userid>/<packagename>/cache/<AppName>/tmp``
        �tmpr*r/s  r�user_runtime_dirzAndroid.user_runtime_dirfr1rc��|jS)zF:return: runtime directory shared by users, same as `user_runtime_dir`)rGrs r�site_runtime_dirzAndroid.site_runtime_dirqs
���$�$rN�rr)�__name__�
__module__�__qualname__�__doc__�propertyrrrr r#r%r'r0r4r8r;r>rArDrGrIrCrrr
r
s*���������Z�Z�Z��X�Z��"�"�"��X�"��a�a�a��X�a��$�$�$��X�$��Z�Z�Z��X�Z��#�#�#��X�#��"�"�"��X�"������X���+�+�+��X�+��+�+�+��X�+��*�*�*��X�*��(�(�(��X�(��'�'�'��X�'��-�-�-��X�-������X���%�%�%��X�%�%�%rr
)�maxsizer�
str | Nonec�"�d}tst	ddlm}td|�����}|���������}n#t$rd}YnwxYw|�]	ddl	m
}|d��}|���������}n#t$rd}YnwxYw|�Wtjd��}tjD]4}|�|��r|�d��d}n�5d}|�Wtjd��}tjD]4}|�|��r|�d��d}n�5d}|S)	zE:return: base folder for the Android OS or None if it cannot be foundNr)�	mActivity�android.content.Context��	autoclassz /data/(data|user/\d+)/(.+)/filesz/filesz7/mnt/expand/[a-fA-F0-9-]{36}/(data|user/\d+)/(.+)/files)r�androidrSr�getApplicationContext�getFilesDir�
getParentFile�getAbsolutePath�	Exception�jniusrV�re�compile�sysr-�match�split)�resultrS�contextrV�patternr-s      rrrws����F���	�)�)�)�)�)�)��4�i�6U�6U�6W�6W�X�X�G��(�(�*�*�8�8�:�:�J�J�L�L�F�F���	�	�	��F�F�F�	����
�	�	�
(�'�'�'�'�'��i� 9�:�:�G��(�(�*�*�8�8�:�:�J�J�L�L�F�F���	�	�	��F�F�F�	����
�	��*�@�A�A���H�	�	�D��}�}�T�"�"�
����H�-�-�a�0����
��F�
�	��*�W�X�X���H�	�	�D��}�}�T�"�"�
����H�-�-�a�0����
��F��Ms%�A A,�,A;�:A;�A	C�C�Crc��	ddlm}|d��}|d��}|�|j�����}n#t
$rd}YnwxYw|S)z,:return: documents folder for the Android OSrrUrT�android.os.Environmentz/storage/emulated/0/Documents)r]rV�getExternalFilesDir�DIRECTORY_DOCUMENTSr[r\)rVrd�environment�
documents_dirs    rr3r3����8�#�#�#�#�#�#��)�5�6�6���i� 8�9�9��$�8�8��9X�Y�Y�i�i�k�k�
�
���8�8�8�7�
�
�
�8�������AA�A�Ac��	ddlm}|d��}|d��}|�|j�����}n#t
$rd}YnwxYw|S)z,:return: downloads folder for the Android OSrrUrTrgz/storage/emulated/0/Downloads)r]rVrh�DIRECTORY_DOWNLOADSr[r\)rVrdrj�
downloads_dirs    rr7r7�rlrmc��	ddlm}|d��}|d��}|�|j�����}n#t
$rd}YnwxYw|S)z+:return: pictures folder for the Android OSrrUrTrgz/storage/emulated/0/Pictures)r]rVrh�DIRECTORY_PICTURESr[r\)rVrdrj�pictures_dirs    rr:r:�s���6�#�#�#�#�#�#��)�5�6�6���i� 8�9�9��#�7�7��8V�W�W�g�g�i�i�����6�6�6�5����6�����rmc��	ddlm}|d��}|d��}|�|j�����}n#t
$rd}YnwxYw|S)z):return: videos folder for the Android OSrrUrTrgz/storage/emulated/0/DCIM/Camera)r]rVrh�DIRECTORY_DCIMr[r\)rVrdrj�
videos_dirs    rr=r=�s���7�#�#�#�#�#�#��)�5�6�6���i� 8�9�9��!�5�5�k�6P�Q�Q�a�a�c�c�
�
���7�7�7�6�
�
�
�7�����rmc��	ddlm}|d��}|d��}|�|j�����}n#t
$rd}YnwxYw|S)z(:return: music folder for the Android OSrrUrTrgz/storage/emulated/0/Music)r]rVrh�DIRECTORY_MUSICr[r\)rVrdrj�	music_dirs    rr@r@�s���0�#�#�#�#�#�#��)�5�6�6���i� 8�9�9�� �4�4�[�5P�Q�Q�a�a�c�c�	�	���0�0�0�/�	�	�	�0�����rm)rrQrJ)rN�
__future__rr,r^r`�	functoolsr�typingrr�apirr
rr3r7r:r=r@�__all__rCrr�<module>rs�����"�"�"�"�"�"�	�	�	�	�	�	�	�	�
�
�
�
�������&�&�&�&�&�&�&�&� � � � � � �f%�f%�f%�f%�f%�o�f%�f%�f%�R��1����,�,�,���,�^��1������������1������������1������������1������������1���������� ����r