
    QЦiXf              !       
   % S SK r S SKrS SKrS SKrS SKJr  S SKJrJ	r	J
r
  S SKJr  S SKJrJrJrJrJrJrJr  S SKJr  S SKJr  S SKJrJrJrJr  S S	KJr  S S
K J!r!  S SK"J#r#J$r$  S SK%J&r&  S SK'J(r(J)r)  S SK*J+r+  S SK,J-r-  S SK.J/r/  S SK0J1r1J2r2J3r3  S SK4J5r5  S SK6J7r7  S SK8J9r9  SSSSSSS0SS0/0S.SSS.S SS.S!S"0S#SS.S$./ S%QS&.r:S'SS(S)SS*\$S-   0S.0S+.r;S,S-S.S/S0S1S2.r<\=\>\>4   \?S3'   S4\S5\@\=\>\4   \A\=\>\4      4   4S6 jrBS7S8.S9\S:\/S;\=\@\\	S<   4   \=\>\4   4   S=\CS5\A\=\>\4      4
S> jjrDS7S8.S?\S-  S:\/S;\=\@\\	S<   4   \=\>\4   4   S=\CS5\=\>\4   S-  4
S@ jjrESA\R                  SB\>S5\>4SC jrGSA\R                  SB\>S5\>4SD jrHSA\R                  SB\>SE\I\>   S5\=\>\4   4SF jrJS7S8.SA\R                  SE\I\>   S:\/S;\=\@\\	S<   4   \=\>\4   4   S=\CS5\@\=\>\4   \=\>\4   \=\>\4   4   4SG jjrKSH\\9   S5\A\   4SI jrLSJSSSSSSSSS7SSK.S!\>SL\>SM\>SN\>S-  SO\>S-  SH\\9   SP\\9   S-  SQ\A\=\>\4      S-  SR\A\=\>\>\-  4      S-  SS\>S-  ST\=\>\>\-  4   S-  SU\=\>\>\-  4   S-  S=\CSV\=\>\4   S-  S5\=\>\4   4SW jjrMg)X    N)Sequence)AnyLiteralcast)routing)
ModelField	Undefinedget_definitionsget_flat_models_from_fieldsget_model_name_mapget_schema_from_model_fieldlenient_issubclass)DefaultPlaceholder)	Dependant)_get_flat_fields_from_paramsget_flat_dependantget_flat_paramsget_validation_alias)jsonable_encoder)FastAPIDeprecationWarning)METHODS_WITH_BODY
REF_PREFIX)OpenAPI)Body
ParamTypes)Response)_SSE_EVENT_SCHEMA)ModelNameMap)deep_dict_updategenerate_operation_id_for_pathis_body_allowed_for_status_code)	BaseModel)JSONResponse)	BaseRouteValidationErrorobjectLocationarrayanyOftypestringinteger)titler*   itemsMessage)r-   r*   z
Error Typer-   InputContext)locmsgr*   inputctx)r2   r3   r*   )r-   r*   
propertiesrequiredHTTPValidationErrordetailDetail$ref)r-   r*   r6   InformationSuccessRedirectionzClient ErrorzServer ErrorzDefault Response)1XX2XX3XX4XX5XXDEFAULTstatus_code_rangesflat_dependantreturnc                    0 n0 nU R                    H~  n[        UR                  R                  SSS9nUR                  R                  nXAU'   XR;  a  / X%'   UR
                  =(       d    /  H   nXbU   ;  d  M  X%   R                  U5        M"     M     UR                  5        VVs/ s H  u  pxXx0PM
     n	nnX4$ s  snnf )NTby_aliasexclude_none)_security_dependenciesr   _security_schememodelscheme_nameoauth_scopesappendr.   )
rF   security_definitionsoperation_security_dictsecurity_dependencysecurity_definitionsecurity_namescopenamescopesoperation_securitys
             T/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/fastapi/openapi/utils.py get_openapi_security_definitionsr\   R   s     46-DD.0066

 ,<<HH.A]+757#2(55;;EMBB'6==eD <  E ,C+H+H+J+J<4+J    33s   &B;T)separate_input_output_schemas	dependantmodel_name_mapfield_mapping)
validationserializationr]   c           	         / n[        U SS9n[        UR                  5      n[        UR                  5      n[        UR                  5      n[        UR
                  5      n	[        R                  U4[        R                  U4[        R                  U4[        R                  U	4/n
Sn[        UR                  5      S:X  aO  UR                  S   n[        UR                  R                  [        5      (       a  [!        UR                  SS5      nU
 GH_  u  pU GHR  nUR                  n[!        USS5      (       d  M$  [#        UUUUS9n[%        U5      n[!        UR                  SU5      nU[        R                  :X  a3  UUR&                  :X  a#  U(       a  UR&                  R)                  SS	5      nUUR*                  UR                  R-                  5       US
.nUR.                  (       a  UR.                  US'   [!        USS 5      n[!        USS 5      nU(       a  [1        U5      US'   OU[2        :w  a  [1        U5      US'   [!        USS 5      (       a  SUS'   UR5                  U5        GMU     GMb     U$ )NTskip_repeats   r   convert_underscoresinclude_in_schemafieldr_   r`   r]   _-)rX   inr7   schemadescriptionopenapi_examplesexampleexamples
deprecated)r   r   path_paramsquery_paramsheader_paramscookie_paramsr   pathqueryheadercookielenr   
field_info
annotationr"   getattrr   r   rX   replacevalueis_requiredro   r   r	   rQ   )r^   r_   r`   r]   
parametersrF   rt   ru   rv   rw   parameter_groupsdefault_convert_underscoresfirst_field
param_typeparam_groupparamr}   param_schemarX   rg   	parameterrp   rq   s                          r[   !_get_openapi_operation_parametersr   l   sV    J'	EN.~/I/IJK/0K0KLL01M1MNM01M1MNM	+&			<(			M*			M*	 #'
>''(A-$2215k44??KK*1&&(=t+' $4
 E))J:':DAA6-+.K	L (.D")  %+# j///EJJ&'zz))#s3  &&!,,88:&	I %%+5+A+A	-(&z3EtLj)T:G(89I(J	*%I%'7'@	)$z<66*.	,'i(Q ! $4T     
body_fieldc                    U (       d  g [        U [        5      (       d   e[        U UUUS9n[        [        U R
                  5      nUR                  nU R
                  R                  5       n0 nU(       a  XxS'   SU0n	UR                  (       a  [        UR                  5      U	S'   O,UR                  [        :w  a  [        UR                  5      U	S'   Xi0US'   U$ )Nri   r7   rn   rr   rq   content)
isinstancer   r   r   r   r}   
media_typer   rp   r   rq   r	   )
r   r_   r`   r]   body_schemar}   request_media_typer7   request_body_oairequest_media_contents
             r[   "get_openapi_operation_request_bodyr      s     j*-----%#&C	K dJ112J#..$$002H')'/$-5{,C"",<''-
j) 
		y	(+;J<N<N+Oi(#5"MYr   routemethodc                     [         R                  " S[        SS9  U R                  (       a  U R                  $ U R                  n[        U R                  X!S9$ )Nzqfastapi.openapi.utils.generate_operation_id() was deprecated, it is not used internally, and will be removed soon   )messagecategory
stacklevel)rX   rx   r   )warningswarnr   operation_idpath_formatr    rX   )r   r   rx   s      r[   generate_operation_idr      sN     MM>*	 !!!!!D)uzzTTr   c                     U R                   (       a  U R                   $ U R                  R                  SS5      R                  5       $ )Nrk    )summaryrX   r   r-   r   r   s     r[   generate_operation_summaryr      s3    }}}}::c3'--//r   operation_idsc                 $   0 nU R                   (       a  U R                   US'   [        XS9US'   U R                  (       a  U R                  US'   U R                  =(       d    U R                  nXB;   ah  SU S3U R
                  R                   -   n[        U R
                  S0 5      R                  S5      nU(       a  US	U 3-  n[        R                  " US
S9  UR                  U5        XCS'   U R                  (       a  U R                  US'   U$ )Ntagsr   r   ro   zDuplicate Operation ID z for function __globals____file__z at rf   )r   operationIdrs   )r   r   ro   r   	unique_idendpoint__name__r   getr   r   addrs   )r   r   r   	operationr   r   	file_names          r[   get_openapi_operation_metadatar      s     !#Izz!JJ	&5EQIi#(#4#4	- %%8L$%l^>B(()+ 	 ENNM2>BB:N	i[))Gg!,l#+m"'"2"2	,r   c           
      4  ^/ 0 n0 n0 nU R                   c   S5       e[        U R                  [        5      (       a  U R                  R                  nOU R                  nU(       d   S5       eUR
                  n	U R                  (       Ga  U R                    GH  n
[        X
US9m// n[        U R                  SS9n[        US9u  pU(       a!  T/R                  S/ 5      R                  U5        U(       a  UR                  U5        [        U R                  UUUS9nUR                  U5        U(       a{  U Vs0 s H  nUS	   US
   4U_M     nnU Vs0 s H&  nUR                  S5      (       d  M  US	   US
   4U_M(     nnUR                  U5        [!        UR#                  5       5      T/S'   U
[$        ;   a"  ['        U R(                  UUUS9nU(       a  UT/S'   U R*                  (       ag  0 nU R*                   HP  n[        U[,        R.                  5      (       d  M$  [1        UUUUUS9u  nnnUR2                  U0UUR4                  '   MR     UT/S'   U R6                  b  [9        U R6                  5      nOr[:        R<                  " UR>                  5      nUR@                  R                  S5      nUb4  [        URB                  [D        5      (       a  [9        URB                  5      nU RF                  T/R                  S0 5      R                  W0 5      S'   [I        U R6                  5      (       Ga  U RJ                  (       ak  0 nU RL                  (       a  [O        U RL                  UUUS9nUUS'   O0 US'   UT/R                  S0 5      R                  U0 5      R                  S0 5      S'   GO0U RP                  (       a  0 n[R        RT                  " [V        5      nU RL                  (       a(  [O        U RL                  UUUS9nS/US'   SSUS.US   S'   UUS'   UT/R                  S0 5      R                  U0 5      R                  S0 5      S'   OU	(       a  SS0n [Y        U[Z        5      (       a*  U R\                  (       a  [O        U R\                  UUUS9n O0 n U T/R                  S0 5      R                  U0 5      R                  S0 5      R                  U	0 5      S'   U R^                  (       Ga  T/R                  S0 5      n!U R^                  Ra                  5        GH  u  n"n#[R        RT                  " U#5      n$U$Rc                  S S 5        [9        U"5      Re                  5       n%U%S!:X  a  S"n%U!R                  U%0 5      n&[        U$[f        5      (       d   S#5       eU Rh                  R                  U"5      n'S n(U'(       aU  [O        U'UUUS9n(U	=(       d    Sn)U$R                  S0 5      R                  U)0 5      R                  S0 5      n*[k        U*U(5        [l        R                  [9        U"5      Re                  5       5      =(       d2    [n        Rp                  R^                  R                  [E        U"5      5      n+U$R                  S5      =(       d#    U&R                  S5      =(       d    U+=(       d    S$n,[k        U&U$5        U,U&S'   GM     S%n-[s        U R                  5      n.U.(       d  U R(                  (       aW  [u        U/4S& jU-S'S"4 5       5      (       d:  S(SSS)[v        S*-   000S+.T/S   U-'   S,U;  a  UR                  [x        [z        S-.5        U R|                  (       a  [k        T/U R|                  5        T/XZR                  5       '   GM     XVU4$ s  snf s  snf ).NzMethods must be a listz.A response class is needed to generate OpenAPI)r   r   r   Trd   )rF   security)r^   r_   r`   r]   rm   rX   r7   r   )r   r_   r`   r]   requestBodyr   r   r_   r`   r]   	callbacksstatus_code	responsesro   ri   
itemSchemar   zapplication/jsonldatar+   zapplication/json)r*   contentMediaTypecontentSchemar6   ztext/event-streamr*   rn   rN   rD   defaultz%An additional response must be a dictzAdditional Response422c              3   4   >#    U  H  nUTS    ;   v   M     g7f)r   N ).0statusr   s     r[   	<genexpr>#get_openapi_path.<locals>.<genexpr>  s#      B9F )K009s   rB   zValidation Errorr;   r8   )ro   r   r%   )r%   r8   )@methodsr   response_classr   r   r   rh   r   r   r^   r\   
setdefaultextendupdater   r   listvaluesr   r   r   r   r   APIRouteget_openapi_pathrx   rX   r   strinspect	signature__init__r   r   intresponse_descriptionr!   is_json_streamstream_item_fieldr   is_sse_streamcopydeepcopyr   r   r#   response_fieldr   r.   popupperdictresponse_fieldsr   rE   httpclientr   anyr   validation_error_definition$validation_error_response_definitionopenapi_extralower)0r   r   r_   r`   r]   rx   security_schemesdefinitionscurrent_response_classroute_response_media_typer   r   rF   rR   rZ   operation_parametersr   all_parametersrequired_parametersr   r   callbackcb_pathcb_security_schemescb_definitionsr   response_signaturestatus_code_paramjsonl_contentitem_schemasse_contentcontent_schemaresponse_schemaoperation_responsesadditional_status_codeadditional_responseprocess_responsestatus_code_keyopenapi_responserj   additional_field_schemar   additional_schemastatus_textro   http422all_route_paramsr   s0                                                  @r[   r   r     s    D')"$K==$>&>>$%&&(:;;161E1E1K1K!&!5!5!S#SS!,B,M,MmmF6-I 02J/dSN7W-84  "$$Z4;;<NO# ''(<=#D//-+.K	$  23EO"EOEU4[%-0%7Z  "
 ",'!+yy, 8U4[%-0%7!+ $ ' %%&9:*.~/D/D/F*G	,'**#E$//#1"/2O	$  $/?Im,	 %H!(G,<,<==
 -"**7+9*7:W	#/* 5=MM73K	(--0 !0 *3	+&  ,!%"3"34 &-%6%67M7V7V%W"$6$A$A$E$Em$T!$0!"3";";SAA&)*;*C*C&D **   b1<<["M /u/@/@AA''46M..&A"'"9"9+9*7:W	' 7Bl368l3 HU ((b9DD#R jB/0CE ((24K"&--0A"BK..)D"'"9"9+9*7:W	* 4:(J/$,0B-;=L1&9
 1<K- HS ((b9DD#R jB/0CE /'-x&8O)*@,OO //.I&+&:&:/=.;>[	/O /1O
 #2	 ((b9DD#R jB/

121	 
 &/&:&:;&K# __**,*''+}}5H'I$$(($7&)*@&A&G&G&IO&)3*3':'E'E'($ &&6== ?= "11556LMEEI+2M"'+9*7:W	3/ &?%TBT
,77	2F'Z
B7'Z"5 *
 )):<ST.@.D.D2399;/ /P..2237M3NO   ),,]; 1+//>1&1 1	   %%57GH6A$]3M -N G.u? E$4$4c B&y9B ? ?
 $6*$vz<Q/Q&R- 3	+&w/ %K7&&/J3W "" E,?,?@#,D I $J ;..a"'s   7^^0^routesc                 8   / n/ n/ n/ nU  GHw  n[        U[        R                  5      (       d  M%  UR                  (       d  M8  UR                  (       aA  [        UR                  [
        5      (       d   S5       eUR                  UR                  5        UR                  (       a  UR                  UR                  5        UR                  (       a)  UR                  UR                  R                  5       5        UR                  (       a  UR                  UR                  5        UR                  (       a$  UR                  [        UR                  5      5        [        UR                  5      nUR                  U5        GMz     U[!        X-   U-   5      -   nU$ )Nz'A request body must be a Pydantic Field)r   r   r   rh   r   r   rQ   r   r   r   r   r   r   get_fields_from_routesr   r^   r   )r  body_fields_from_routesresponses_from_routesrequest_fields_from_routescallback_flat_modelsr   paramsflat_modelss           r[   r	  r	    sL    13.035-/%!1!122"""!%"2"2J?? =? (..u/?/?@##%,,U-A-AB$$%,,U-B-B-I-I-KL&&%,,U-D-DE$++,B5??,ST$U__5F&--f5% ( '7:TT* K r   z3.1.0)openapi_versionr   ro   webhooksr   serversterms_of_servicecontactlicense_infor]   external_docsversionr  r   ro   r  r   r  r  r  r  r  c           	      h   XS.nU(       a  X>S'   U(       a  XNS'   U	(       a  XS'   U
(       a  XS'   U(       a  XS'   X.S.nU(       a  XS'   0 n0 n0 n[        5       n[        [        U=(       d    / 5      [        U=(       d    / 5      -   5      n[        U[        5       S	9n[	        U5      n[        UUUS
9u  nnU=(       d    /  H  n[        U[        R                  5      (       d  M$  [        UUUUUS9nU(       d  M:  Uu  nnnU(       a+  UR                  UR                  0 5      R                  U5        U(       a!  UR                  S0 5      R                  U5        U(       d  M  UR                  U5        M     U=(       d    /  H  n[        U[        R                  5      (       d  M$  [        UUUUUS9nU(       d  M:  Uu  nnnU(       a+  UR                  UR                  0 5      R                  U5        U(       a!  UR                  S0 5      R                  U5        U(       d  M  UR                  U5        M     U(       a#  [        U5       Vs0 s H	  nUUU   _M     snUS'   U(       a  UUS'   UUS'   U(       a  UUS'   U(       a  XS'   U(       a  XS'   [        [        S0 UD6SSS9$ s  snf )N)r-   r  r   ro   termsOfServicer  license)openapiinfor  )known_models)fieldsr_   r]   r   securitySchemesschemas
componentspathsr  r   externalDocsTrI   r   )setr	  r   r   r   r
   r   r   r   r   r   r   r   sortedr   r   ) r-   r  r  r   ro   r  r  r   r  r  r  r  r]   r  r  outputr!  r"  webhook_pathsr   
all_fieldsr  r_   r`   r   r   resultrx   r   path_definitionswebhookks                                    r[   get_openapir-    s   " &+?D!Y)]!1!Y&Y)8GF#y,.J')E/1M!eM'V\r(:T(.b=Q(QRJ-jsuMK'4N!0%&C"M;
 2eW--..%+-+.KF v;A8&(8$$U%6%6;BB4H#))*;R@GG( $#&&'78% & >r>gw//00%+-+.KF v;A8&(8!,,W-@-@"ELLTR#))*;R@GG( $#&&'78% "& <B;<O P<OqKN!2<O P
9)|F7O*zv!.~G-f-4PP !Qs   J/)Nr   http.clientr   r   r   collections.abcr   typingr   r   r   fastapir   fastapi._compatr   r	   r
   r   r   r   r   fastapi.datastructuresr   fastapi.dependencies.modelsr   fastapi.dependencies.utilsr   r   r   r   fastapi.encodersr   fastapi.exceptionsr   fastapi.openapi.constantsr   r   fastapi.openapi.modelsr   fastapi.paramsr   r   fastapi.responsesr   fastapi.sser   fastapi.typesr   fastapi.utilsr   r    r!   pydanticr"   starlette.responsesr#   starlette.routingr$   r   r   rE   r   r   __annotations__tupler   r\   boolr   r   r   r   r   r$  r   r   r	  r-  r   r   r[   <module>rE     s       $ % %    6 1  . 8 C * + & ) & 
  , '    2VY4GHI

 #H5&97#"H5
 ' $ #j+<<=

( $ !& DcN 44
4S>4S#X//04B +/FF !F j'"?@@A4S>Q	F $(F 
$sCx.F` +/ T!  !  j'"?@@A4S>Q	  $(  
#s(^d FUU(+UU0)9)9 03 03 0(+<?H	#s(^D +/Z/Z/ s8Z/ !	Z/
 j'"?@@A4S>QZ/ $(Z/ 4S>4S>4S>9:Z/zY	*J #"+/(,15#'+/04*.+/\Q\Q \Q 	\Q
 4Z\Q t\Q Y\Q y!D(\Q tCH~

%\Q $sC#I~&'$.\Q Dj\Q #sSy.!D(\Q sC#I~&-\Q $(\Q S>D(\Q  
#s(^!\Qr   