
    .h                        d dl mZ d dlZd dlZd dlmZmZmZmZm	Z	 d dl
mZm
Z
 d dlmZmZ ddlmZ dd	lmZmZ eej                  hZdd
ZddZddZddZddZddZddZy)    )annotationsN)AnyTypeUnionLiteralOptional)datedatetime)get_args
get_origin   )StrBytesIntFloat   )
parse_dateparse_datetimec                    t        |       S N)	_get_argstps    V/var/www/html/axiom-chatbot/venv/lib/python3.12/site-packages/openai/_utils/_compat.pyr   r      s    R=    c                    t        |       S r   )_get_originr   s    r   r   r      s    r?r   c                p    t         j                  dk  r| t        u S dd l}| t        u xs | |j                  u S )N)   
   r   )sysversion_infor   types	UnionType)r   r    s     r   is_unionr"      s5    
'!U{U{3bEOO33r   c                ,    t        j                  |       S r   )typing_extensionsis_typeddictr   s    r   r%   r%       s    ))"--r   c                $    t        |       t        v S r   )r   _LITERAL_TYPESr   s    r   is_literal_typer(   $   s    b>^++r   c                    t        |       S r   )_parse_datevalues    r   r   r   (   s    ur   c                    t        |       S r   )_parse_datetimer+   s    r   r   r   ,   s    5!!r   )r   	type[Any]returnztuple[Any, ...])r   r/   r0   ztype[Any] | None)r   zOptional[Type[Any]]r0   bool)r   z	Type[Any]r0   r1   )r,   zUnion[date, StrBytesIntFloat]r0   r	   )r,   z!Union[datetime, StrBytesIntFloat]r0   r
   )
__future__r   r   r$   typingr   r   r   r   r   r
   r	   r   r   r   r   _typesr   _datetime_parser   r*   r   r.   r'   r"   r%   r(    r   r   <module>r7      sT    " 
  6 6 # N % Y,4454.,"r   