o
    aqe                     @   s   d dl Z d dlZd dlmZmZ d dlmZ dede	fddZ
dee	ef dee	ef fdd	Zdd
ee	 dee	 fddZdS )    N)DictOptionalvreturnc                 C   s   t | tr| r	dS dS | S )N10)
isinstanceboolr    r   S/var/www/html/humari/django-venv/lib/python3.10/site-packages/slack/web/__init__.py_to_0_or_1_if_bool   s   
r   paramsc                 C   s   | rdd |   D S dS )aA  Converts all bool values in dict to "0" or "1".

    Slack APIs safely accept "0"/"1" as boolean values.
    Using True/False (bool in Python) doesn't work with aiohttp.
    This method converts only the bool values in top-level of a given dict.

    :param params: params as a dict
    :return: return modified dict
    c                 S   s   i | ]	\}}|t |qS r   )r   ).0kr   r   r   r   
<dictcomp>   s    z*convert_bool_to_0_or_1.<locals>.<dictcomp>N)items)r   r   r   r   convert_bool_to_0_or_1   s   
r   prefixsuffixc                 C   sp   d dtj}dj tjd}d t t }d|||g}| r'|  dnd} |r0d| nd}| | | S )zConstruct the user-agent header with the package info,
    Python version and OS version.

    Returns:
        The user agent string.
        e.g. 'Python/3.6.7 slackclient/2.0.0 Darwin/17.7.0'
    z{0}/{1}slackclientz$Python/{v.major}.{v.minor}.{v.micro}r
     )	formatslack_version__version__sysversion_infoplatformsystemreleasejoin)r   r   clientpython_versionsystem_infouser_agent_stringr   r   r   get_user_agent   s   	r&   )NN)r   r   typingr   r   slack.versionversionr   anystrr   r   r&   r   r   r   r   <module>   s    " 