
    +h)	                        d dl mZ d dlmZmZmZ d dlmZ ddlm	Z	m
Z
 ddlmZ ddlmZ erd dlmZ dd	Z G d
 de      Z G d de      Z G d d      Zy)    )annotations)TYPE_CHECKINGAnycast)ArgumentParser   )
get_clientprint_model)	BaseModel)BufferReader)_SubParsersActionc                R   | j                  d      }|j                  dddd       |j                  ddd	d
       |j                  t        j                  t
               | j                  d      }|j                  dddd       |j                  t        j                  t
               | j                  d      }|j                  dddd       |j                  t        j                  t
               | j                  d      }|j                  t        j                         y )Nzfiles.createz-fz--fileTzFile to upload)requiredhelpz-pz	--purposezcWhy are you uploading this file? (see https://platform.openai.com/docs/api-reference/ for purposes))r   r   )func
args_modelzfiles.retrievez-iz--idzThe files IDzfiles.deletez
files.list)r   )	
add_parseradd_argumentset_defaultsCLIFilecreateCLIFileCreateArgsgetdeletelist)	subparsersubs     H/var/www/html/venv/lib/python3.12/site-packages/openai/cli/_api/files.pyregisterr      s   


~
.C	   r	   '..5FG


/
0CT6D~F'++2CD


~
.CT6D~F'..5FG


|
,C',,'    c                      e Zd ZU ded<   y)CLIFileIDArgsstridN__name__
__module____qualname____annotations__ r    r   r"   r"   +   s    Gr    r"   c                  "    e Zd ZU ded<   ded<   y)r   r#   filepurposeNr%   r*   r    r   r   r   /   s    
ILr    r   c                  T    e Zd Zedd       Zedd       Zedd       Zedd       Zy)	r   c                8   t        | j                  d      5 }t        |j                         d      }d d d        t	               j
                  j                  | j                  ft        t        | j                              }t        |       y # 1 sw Y   ^xY w)NrbzUpload progress)desc)r,   r-   )openr,   r   readr	   filesr   r   r   r-   r
   )argsfile_readerbuffer_readerr,   s       r   r   zCLIFile.create5   s    $))T" 	Uk()9)9);BSTM	U |!!(())]+ dll+	 ) 
 	D	U 	Us   BBc                v    t               j                  j                  | j                        }t	        |       y N)file_id)r	   r4   retriever$   r
   r5   r,   s     r   r   zCLIFile.getB   s)    |!!**477*;Dr    c                v    t               j                  j                  | j                        }t	        |       y r9   )r	   r4   r   r$   r
   r<   s     r   r   zCLIFile.deleteG   s)    |!!(((9Dr    c                 l    t               j                  j                         } | D ]  }t        |        y )N)r	   r4   r   r
   )r4   r,   s     r   r   zCLIFile.listL   s/    ""'') 	D	r    N)r5   r   returnNone)r5   r"   r?   r@   )r?   r@   )r&   r'   r(   staticmethodr   r   r   r   r*   r    r   r   r   4   sP    
 
      r    r   N)r   z!_SubParsersAction[ArgumentParser]r?   r@   )
__future__r   typingr   r   r   argparser   _utilsr	   r
   _modelsr   	_progressr   r   r   r"   r   r   r*   r    r   <module>rH      sG    " + + # ,  $*(:I 	 
 r    