
    	he                     $   d dl mZ d dlZd dlmZmZ d dlmZ d dlm	Z	m
Z
mZmZ d dlmZ d dlmZ d dlmZ d d	lmZ d d
lmZmZmZ 	 d dlZ eed          rej        Znej        Zn# e$ r dZY nw xY w G d de          Z G d d          ZdS )    )annotationsN)MappingSequence)PathLike)AnyCallablecastoverload)BackgroundTask)URL)Request)HTMLResponse)ReceiveScopeSendpass_contextc                  6     e Zd Z	 	 	 	 dd fdZd fdZ xZS )_TemplateResponse   Ntemplater   contextdict[str, Any]status_codeintheadersMapping[str, str] | None
media_type
str | None
backgroundBackgroundTask | Nonec                    || _         || _        |                    |          }t                                          |||||           d S N)r   r   rendersuper__init__)	selfr   r   r   r   r   r   content	__class__s	           a/var/www/html/web-builder-api.evdpl.com/venv/lib/python3.11/site-packages/starlette/templating.pyr%   z_TemplateResponse.__init__   sJ     !//'**+w
JOOOOO    scoper   receiver   sendr   returnNonec                
  K   | j                             di           }|                    di           }d|v r! |d| j        | j         dd           d {V  t                                          |||           d {V  d S )Nrequest
extensionszhttp.response.debug)r   r   )typeinfo)r   getr   r$   __call__)r&   r+   r,   r-   r1   r2   r(   s         r)   r6   z_TemplateResponse.__call__,   s      ,""9b11[[r22
 J..$1$(M#'<           ggugt44444444444r*   )r   NNN)r   r   r   r   r   r   r   r   r   r   r   r    )r+   r   r,   r   r-   r   r.   r/   )__name__
__module____qualname__r%   r6   __classcell__)r(   s   @r)   r   r      su        
 ,0!%,0P P P P P P P5 5 5 5 5 5 5 5 5 5r*   r   c                      e Zd ZdZeddd-d            Zeddd.d            Z	 d/dddd0dZd1dZd2dZd3dZe	 	 	 	 	 d4d5d(            Z	e	 	 	 	 	 d4d6d)            Z	d7d,Z	dS )8Jinja2Templatesz}
    templates = Jinja2Templates("templates")

    return templates.TemplateResponse("index.html", {"request": request})
    N)context_processors	directory3str | PathLike[str] | Sequence[str | PathLike[str]]r=   0list[Callable[[Request], dict[str, Any]]] | Noneenv_optionsr   r.   r/   c                   d S r"    )r&   r>   r=   rA   s       r)   r%   zJinja2Templates.__init__C   s	     sr*   envjinja2.Environmentc                   d S r"   rC   )r&   rD   r=   s      r)   r%   zJinja2Templates.__init__L   s	     sr*   )r=   rD   :str | PathLike[str] | Sequence[str | PathLike[str]] | Nonejinja2.Environment | Nonec               6   |rt          j        dt                     t          
J d            t	          |          t	          |          z  s
J d            |pg | _        | | j        |fi || _        n	||| _        |                     | j                   d S )NzYExtra environment options are deprecated. Use a preconfigured jinja2.Environment instead.z/jinja2 must be installed to use Jinja2Templatesz4either 'directory' or 'env' arguments must be passed)	warningswarnDeprecationWarningjinja2boolr=   _create_envrD   _setup_env_defaults)r&   r>   r=   rD   rA   s        r)   r%   zJinja2Templates.__init__T   s      	Mk"   !!#T!!!Ic*bb,bbb*"4": 't'	AA[AADHH_DH  *****r*   c                    t          j        |          }|                    d|           |                    dd           t          j        di |S )Nloader
autoescapeTrC   )rM   FileSystemLoader
setdefaultEnvironment)r&   r>   rA   rR   s       r)   rO   zJinja2Templates._create_envk   sW    
 (33x000|T222!00K000r*   c                ^    t           dd	            }|j                            d
|           d S )Nr   r   namestrpath_paramsr   r.   r   c               .    | d         } |j         |fi |S )Nr1   )url_for)r   rX   rZ   r1   s       r)   r\   z4Jinja2Templates._setup_env_defaults.<locals>.url_forw   s(      'y1G"7?477;777r*   r\   )r   r   rX   rY   rZ   r   r.   r   )r   globalsrU   )r&   rD   r\   s      r)   rP   z#Jinja2Templates._setup_env_defaultsv   s@    		8 	8 	8 
	8 	y'22222r*   rX   rY   jinja2.Templatec                6    | j                             |          S r"   )rD   get_template)r&   rX   s     r)   r`   zJinja2Templates.get_template   s    x$$T***r*   r   r1   r   r   dict[str, Any] | Noner   r   r   r   r   r   r   r    r   c                    d S r"   rC   )r&   r1   rX   r   r   r   r   r   s           r)   TemplateResponsez Jinja2Templates.TemplateResponse   s	      Cr*   c                    d S r"   rC   )r&   rX   r   r   r   r   r   s          r)   rc   z Jinja2Templates.TemplateResponse   s	     	r*   argskwargsc                   |rkt          |d         t                    r1t          j        dt                     |d         }t          |          dk    r|d         n|                    di           }t          |          dk    r|d         n|                    dd          }t          |          dk    r|d         n|                    d	          }t          |          d
k    r|d
         n|                    d          }t          |          dk    r|d         n|                    d          }d|vrt          d          |d         }	n|d         }	t          |          dk    r|d         n|d         }t          |          dk    r|d         n|                    di           }t          |          dk    r|d         n|                    dd          }t          |          d
k    r|d
         n|                    d	          }t          |          dk    r|d         n|                    d          }t          |          dk    r|d         n|                    d          }nd|vrAt          j        dt                     d|                    di           vrt          d          |                    di           }|                    d|                    d                    }	t          t          |d                   }|                    dd          }|                    d	          }|                    d          }|                    d          }|	                    d|	           | j
        D ] }
|                     |
|	                     !|                     |          }t          ||||||          S )Nr   zThe `name` is not the first parameter anymore. The first parameter should be the `Request` instance.
Replace `TemplateResponse(name, {"request": request})` by `TemplateResponse(request, name)`.   r      r   r      r      r      r   r1   z$context must include a "request" keyrX      zThe `TemplateResponse` now requires the `request` argument.
Replace `TemplateResponse(name, {"context": context})` by `TemplateResponse(request, name)`.)r   r   r   r   )
isinstancerY   rJ   rK   rL   lenr5   
ValueErrorr	   rU   r=   updater`   r   )r&   re   rf   rX   r   r   r   r   r   r1   context_processorr   s               r)   rc   z Jinja2Templates.TemplateResponse   s    +	2$q'3'' Ts '	   Aw%(YY]]$q''

9b8Q8Q),TQd1ggFJJ}VY<Z<Z%(YY]]$q''

98M8M(+D		AT!WW6::l;S;S
(+D		AT!WW6::l;S;S
G++$%KLLL!),q'"%d))a--tAwwVF^%(YY]]$q''

9b8Q8Q),TQd1ggFJJ}VY<Z<Z%(YY]]$q''

98M8M(+D		AT!WW6::l;S;S
(+D		AT!WW6::l;S;S

&&s&  
 FJJy"$=$===$%KLLLjjB//GjjGKK	,B,BCCGVF^,,D **]C88Kjj++GL11JL11J9g...!%!8 	7 	7NN,,W556666$$T** #!!
 
 
 	
r*   )r>   r?   r=   r@   rA   r   r.   r/   )rD   rE   r=   r@   r.   r/   r"   )
r>   rG   r=   r@   rD   rH   rA   r   r.   r/   )r>   r?   rA   r   r.   rE   )rD   rE   r.   r/   )rX   rY   r.   r^   )Nr   NNN)r1   r   rX   rY   r   ra   r   r   r   r   r   r   r   r    r.   r   )rX   rY   r   ra   r   r   r   r   r   r   r   r    r.   r   )re   r   rf   r   r.   r   )
r7   r8   r9   __doc__r
   r%   rO   rP   r`   rc   rC   r*   r)   r<   r<   <   sp         
 PT	     X 
 PT	     X QU+ PT)-+ + + + + +.	1 	1 	1 	13 3 3 3+ + + + 
 *.,0!%,0	  	  	  	  X	   *.,0!%,0
 
 
 
 X
:
 :
 :
 :
 :
 :
r*   r<   ) 
__future__r   rJ   collections.abcr   r   osr   typingr   r   r	   r
   starlette.backgroundr   starlette.datastructuresr   starlette.requestsr   starlette.responsesr   starlette.typesr   r   r   rM   hasattrr   contextfunctionModuleNotFoundErrorr   r<   rC   r*   r)   <module>r      s   " " " " " "  - - - - - - - -       0 0 0 0 0 0 0 0 0 0 0 0 / / / / / / ( ( ( ( ( ( & & & & & & , , , , , , 0 0 0 0 0 0 0 0 0 0MMM wv~&& .*-   FFF5 5 5 5 5 5 5 5>]
 ]
 ]
 ]
 ]
 ]
 ]
 ]
 ]
 ]
s   A( (A21A2