o
    “¬-g	  ã                   @   sŠ   d dl Z d dlZd dlZddlmZ ejd  dkZereZne	ZdZ
eZddd„Zddd	„Zd
d„ Zdd„ Zdd„ Zddd„Ze j jZdS )é    Né   )ÚVERSIONé   z'Vincent Driessen <vincent@3rdcloud.com>c                 C   sL   t | ttfƒr|durtdƒ‚t| ƒS t | tƒr!t | ¡ d¡j	} t
| |ƒS )zZ
    Converts the given local datetime or UNIX timestamp to a universal
    datetime.
    Nz5Timezone argument illegal when using UNIX timestamps.ÚUTC)Ú
isinstanceÚintÚfloatÚ
ValueErrorÚ	from_unixÚstring_typesÚarrowÚgetÚtoÚnaiveÚ
from_local)Úlocal_dtÚtimezone© r   úO/var/www/html/django-vendor/venv/lib/python3.10/site-packages/times/__init__.pyÚto_universal   s   

r   c                 C   s@   t | tjƒs
tdƒ‚|du rt | ¡}nt | |¡}| d¡jS )z:Converts the given local datetime to a universal datetime.úExpected a datetime objectNr   )r   ÚdatetimeÚ	TypeErrorr   r   r   r   )r   r   Úar   r   r   r   "   s   r   c                 C   s"   t | ttfƒstdƒ‚t | ¡jS )zŽ
    Converts a UNIX timestamp, as returned by `time.time()`, to universal
    time.  Assumes the input is in UTC, as `time.time()` does.
    zExpected an int or float value)r   r   r   r   r   r   r   )Úutr   r   r   r
   .   s   r
   c                 C   s@   | j dur	tdƒ‚t|tƒstd t|ƒ¡ƒ‚t | ¡ 	|¡j
S )zHConverts universal datetime to a local representation in given timezone.Nz8First argument to to_local() should be a universal time.z5expected a timezone name (string), but got {} instead)Útzinfor	   r   r   r   ÚformatÚtyper   r   r   r   )Údtr   r   r   r   Úto_local9   s   
ÿ
r   c                 C   s    t | tjƒs
tdƒ‚t | ¡jS )z&Converts a datetime object to unixtimer   )r   r   r   r   r   Ú	timestamp)r   r   r   r   Úto_unixD   s   r!   c                 C   s$   t | |ƒ}|du r| ¡ S | |¡S )zDFormats the given universal time for display in the given time zone.N)r   Ú	isoformatÚstrftime)r   r   ÚfmtÚlocalr   r   r   r   L   s   

r   )N)r   Úsysr   Úversionr   Úversion_infoÚPY3Ústrr   Ú
basestringÚ
__author__Ú__version__r   r   r
   r   r!   r   ÚutcnowÚnowr   r   r   r   Ú<module>   s"    


	