
    U th                        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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e          Z G d d          ZdS )    )annotations)TYPE_CHECKINGAnycast)ArgumentParser   )
get_clientprint_model   )	NOT_GIVENNotGiven
NotGivenOr)	BaseModel)BufferReader)_SubParsersAction	subparser!_SubParsersAction[ArgumentParser]returnNonec                d   |                      d          }|                    ddt                     |                    ddt          d           |                    d	d
t          d           |                    ddt          dd           |                    dt          d           |                    t
          j        t                     |                      d          }|                    ddt                     |                    ddt          d           |                    d	d
t          d           |                    ddt          dd           |                    ddt          dd           |                    dt          d           |                    ddt          dd           |                    t
          j        t                     |                      d          }|                    ddt                     |                    d	d
t          d           |                    ddt          dd           |                    ddt          dd           |                    dt          d           |                    t
          j
        t                     d S )Nzimages.generatez-mz--model)typez-pz--promptT)r   requiredz-nz--num-images   )r   defaultz-sz--size	1024x1024zSize of the output image)r   r   helpz--response-formaturl)func
args_modelzimages.editz-Iz--imagez@Image to modify. Should be a local path and a PNG encoded image.)r   r   r   z-Mz--maskFzPath to a mask image. It should be the same size as the image you're editing and a RGBA PNG image. The Alpha channel acts as the mask.zimages.create_variation)
add_parseradd_argumentstrintset_defaultsCLIImagecreateCLIImageCreateArgseditCLIImageEditArgscreate_variationCLIImageCreateVariationArgs)r   subs     i/var/www/html/mycamper/aliexpress-site/backend/venv/lib/python3.11/site-packages/openai/cli/_api/image.pyregisterr.      s   


0
1
1CT93///T:C$???T>Q???T8#{Icddd(sEBBB(/6HIII


}
-
-CT93///T:C$???T>Q???O     T8#{Icddd(sEBBB V     (-4DEEE


8
9
9CT93///T>Q???O     T8#{Icddd(sEBBB(3@[\\\\\    c                  F    e Zd ZU ded<   ded<   ded<   ded<   eZded<   d	S )
r'   r"   promptr#   
num_imagessizeresponse_formatNotGivenOr[str]modelN__name__
__module____qualname____annotations__r   r6    r/   r-   r'   r'   =   sJ         KKKOOOIII&E&&&&&&r/   r'   c                  F    e Zd ZU ded<   ded<   ded<   ded<   eZded<   d	S )
r+   r"   imager#   r2   r3   r4   r5   r6   Nr7   r<   r/   r-   r+   r+   E   sJ         JJJOOOIII&E&&&&&&r/   r+   c                  ^    e Zd ZU ded<   ded<   ded<   ded<   ded<   eZded	<   eZded
<   dS )r)   r"   r>   r#   r2   r3   r4   r1   r5   maskr6   N)r8   r9   r:   r;   r   r@   r6   r<   r/   r-   r)   r)   M   sd         JJJOOOIIIKKK%D%%%%&E&&&&&&r/   r)   c                  V    e Zd Zedd            Zedd            Zedd	            Zd
S )r%   argsr'   r   r   c           
         t                      j                            | j        | j        | j        t          t          | j                  t          t          | j	                            }t          |           d S )N)r6   r1   nr3   r4   )r	   imagesgenerater6   r1   r2   r   r   r3   r4   r
   )rB   r>   s     r-   r&   zCLIImage.createX   si    #,,*;o c49%% d&:;; - 
 
 	Er/   r+   c           
        t          | j        d          5 }t          |                                d          }d d d            n# 1 swxY w Y   t	                      j                            | j        d|f| j        t          t          | j                  t          t          | j                            }t          |           d S )NrbzUpload progressdescr>   )r6   r>   rD   r3   r4   )openr>   r   readr	   rE   r*   r6   r2   r   r   r3   r4   r
   )rB   file_readerbuffer_readerr>   s       r-   r*   zCLIImage.create_variatione   s   $*d## 	U{()9)9););BSTTTM	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U 	U #44*M*o c49%% d&:;; 5 
 
 	Es   $AA
A
r)   c                   t          | j        d          5 }t          |                                d          }d d d            n# 1 swxY w Y   t	          | j        t                    rt          }nPt          | j        d          5 }t          |                                d          }d d d            n# 1 swxY w Y   t                      j	        
                    | j        | j        d|f| j        t	          |t                    sd|fn|t          t          | j                  t          t          | j                            }t%          |           d S )NrH   zImage upload progressrI   zMask progressr>   r@   )r6   r1   r>   rD   r@   r3   r4   )rK   r>   r   rL   
isinstancer@   r   r   r	   rE   r(   r6   r1   r2   r   r   r3   r4   r
   )rB   rM   rN   r@   r>   s        r-   r(   zCLIImage.editu   s   $*d## 	[{()9)9););BYZZZM	[ 	[ 	[ 	[ 	[ 	[ 	[ 	[ 	[ 	[ 	[ 	[ 	[ 	[ 	[ di** 	N-6DDdi&& N+#K$4$4$6$6_MMMN N N N N N N N N N N N N N N #((*;M*o'1$'A'AK&$t c49%% d&:;; ) 

 

 	Es#   $AA
A
$B88B<?B<N)rB   r'   r   r   )rB   r+   r   r   )rB   r)   r   r   )r8   r9   r:   staticmethodr&   r*   r(   r<   r/   r-   r%   r%   W   sr        
 
 
 \
    \    \  r/   r%   N)r   r   r   r   )
__future__r   typingr   r   r   argparser   _utilsr	   r
   _typesr   r   r   _modelsr   	_progressr   r   r.   r'   r+   r)   r%   r<   r/   r-   <module>rY      s   " " " " " " + + + + + + + + + + # # # # # # , , , , , , , , 5 5 5 5 5 5 5 5 5 5       $ $ $ $ $ $ +******+] +] +] +]\' ' ' ' ' ' ' '' ' ' ' ') ' ' '' ' ' ' 'y ' ' '4 4 4 4 4 4 4 4 4 4r/   