Current File : //opt/cloudlinux/venv/lib/python3.11/site-packages/platformdirs/__pycache__/android.cpython-311.pyc
�

o�d�����ddlmZddlZddlZddlZddlmZddlmZddl	m
Z
Gd�de
��Zed�	��dd���Zed�	��dd���Z
dgZdS)�)�annotationsN)�	lru_cache)�cast�)�PlatformDirsABCc���eZdZdZedd���Zedd���Zedd���Zedd���Zedd���Z	edd	���Z
edd
���Zedd���Zedd���Z
d
S)�Androidz�
    Follows the guidance `from here <https://android.stackexchange.com/a/216132>`_. Makes use of the
    `appname <platformdirs.api.PlatformDirsABC.appname>` and
    `version <platformdirs.api.PlatformDirsABC.version>`.
    �return�strc�l�|�ttt����d��S)zd:return: data directory tied to the user, e.g. ``/data/user/<userid>/<packagename>/files/<AppName>``�files��_append_app_name_and_versionrr�_android_folder��selfs �e/builddir/build/BUILD/cloudlinux-venv-1.0.2/venv/lib/python3.11/site-packages/platformdirs/android.py�
user_data_dirzAndroid.user_data_dir�*���0�0��c�?�;L�;L�1M�1M�w�W�W�W�c��|jS)z@:return: data directory shared by users, same as `user_data_dir`�rrs r�
site_data_dirzAndroid.site_data_dir�
���!�!rc�l�|�ttt����d��S)z
        :return: config directory tied to the user, e.g. ``/data/user/<userid>/<packagename>/shared_prefs/<AppName>``
        �shared_prefsrrs r�user_config_dirzAndroid.user_config_dirs*��
�0�0��c�?�;L�;L�1M�1M�~�^�^�^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�l�|�ttt����d��S)zj:return: cache directory tied to the user, e.g. e.g. ``/data/user/<userid>/<packagename>/cache/<AppName>``�cacherrs r�user_cache_dirzAndroid.user_cache_dir)rrc��|jS)zB:return: state directory tied to the user, same as `user_data_dir`rrs r�user_state_dirzAndroid.user_state_dir.rrc�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_dir3�0���"���<�	-��7�<�<��e�,�,�D��rc��t��S)zf
        :return: documents directory tied to the user e.g. ``/storage/emulated/0/Documents``
        )�_android_documents_folderrs r�user_documents_dirzAndroid.user_documents_dir>s��
)�*�*�*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_dirEr.rN�r
r)�__name__�
__module__�__qualname__�__doc__�propertyrrrrr"r$r-r1r4�rrr	r	sJ���������X�X�X��X�X��"�"�"��X�"��_�_�_��X�_��$�$�$��X�$��X�X�X��X�X��"�"�"��X�"������X���+�+�+��X�+������X���rr	)�maxsizer
�
str | Nonec�j�	ddlm}|d��}|���������}ng#t
$rZt
jd��}tj	D]4}|�
|��r|�d��d}n�5d}YnwxYw|S)zB:return: base folder for the Android OS or None if cannot be foundr��	autoclass�android.content.Contextz /data/(data|user/\d+)/(.+)/filesz/filesN)�jniusr@�getFilesDir�
getParentFile�getAbsolutePath�	Exception�re�compile�sysr*�match�split)r@�Context�result�patternr*s     rrrQs����#�#�#�#�#�#��)�5�6�6��$�0�0�2�2�@�@�B�B�R�R�T�T���������*�@�A�A���H�	�	�D��}�}�T�"�"�
����H�-�-�a�0����
��F��������Ms�A	A�A!B0�/B0rc��	ddlm}|d��}|d��}|�|j�����}n#t
$rd}YnwxYw|S)z,:return: documents folder for the Android OSrr?rAzandroid.os.Environmentz/storage/emulated/0/Documents)rBr@�getExternalFilesDir�DIRECTORY_DOCUMENTSrErF)r@rL�Environment�
documents_dirs    rr0r0fs���8�#�#�#�#�#�#��)�5�6�6���i� 8�9�9��$�8�8��9X�Y�Y�i�i�k�k�
�
���8�8�8�7�
�
�
�8�����s�AA�A�A)r
r=r5)�
__future__rr)rGrI�	functoolsr�typingr�apirr	rr0�__all__r;rr�<module>rYs��"�"�"�"�"�"�	�	�	�	�	�	�	�	�
�
�
�
������������� � � � � � �B�B�B�B�B�o�B�B�B�J��1����������(��1���������� ����r