Ë
    ‘©j„  ã                  ó   — d dl mZ d dlmZmZmZmZ d dl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 d dlmZ d d	lmZ d d
lmZ d dlmZmZ d dlmZm Z m!Z!m"Z"m#Z#m$Z$  e
dd¬«      Z% e	d«      Z& G d„ d«      Z'y)é    )Úannotations)Ú	AwaitableÚCallableÚMappingÚSequence)ÚAnyÚ	ParamSpecÚTypeVar)ÚStateÚURLPath)Ú
MiddlewareÚ_MiddlewareFactory)ÚRequestBodyLimitMiddleware)ÚServerErrorMiddleware)ÚExceptionMiddleware)ÚRequest)ÚResponse)Ú	BaseRouteÚRouter)ÚASGIAppÚExceptionHandlerÚLifespanÚReceiveÚScopeÚSendÚAppTypeÚ	Starlette)ÚboundÚPc                  óÈ   — e Zd ZdZ	 	 	 	 	 dddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„Zdd„Zedd„«       Zdd„Zdd„Z	ddd	„Z
ddd
„Zdd„Z	 	 	 	 	 	 dd„Z	 	 	 d	 	 	 	 	 	 	 	 	 	 	 dd„Zy)r   z!Creates an Starlette application.N©Úmax_body_sizec               óÀ   — || _         t        «       | _        t        ||¬«      | _        || _        |€i n
t        |«      | _        |€g n
t        |«      | _	        d| _
        y)aå  Initializes the application.

        Parameters:
            debug: Boolean indicating if debug tracebacks should be returned on errors.
            routes: A list of routes to serve incoming HTTP and WebSocket requests.
            middleware: A list of middleware to run for every request. A starlette
                application will always automatically include two middleware classes.
                `ServerErrorMiddleware` is added as the very outermost middleware, to handle
                any uncaught errors occurring anywhere in the entire stack.
                `ExceptionMiddleware` is added as the very innermost middleware, to deal
                with handled exception cases occurring in the routing or endpoints.
            exception_handlers: A mapping of either integer status codes,
                or exception class types onto callables which handle the exceptions.
                Exception handler callables should be of the form
                `handler(request, exc) -> response` and may be either standard functions, or
                async functions.
            lifespan: A lifespan context function, which can be used to perform
                startup and shutdown tasks. This is a newer style that replaces the
                `on_startup` and `on_shutdown` handlers. Use one or the other, not both.
            max_body_size: Non-negative maximum total size in bytes of an HTTP request
                body. The default, `None`, does not limit request body size.
        )ÚlifespanN)Údebugr   Ústater   Úrouterr"   ÚdictÚexception_handlersÚlistÚuser_middlewareÚmiddleware_stack)Úselfr%   ÚroutesÚ
middlewarer)   r$   r"   s          ú]/var/www/html/streamforge-license/venv/lib/python3.12/site-packages/starlette/applications.pyÚ__init__zStarlette.__init__   s\   € ð@ ˆŒ
Ü“WˆŒ
Ü˜V¨hÔ7ˆŒØ*ˆÔØ(:Ð(B¡"ÌÐM_ÓH`ˆÔØ%/Ð%7™r¼TÀ*Ó=MˆÔØ04ˆÕó    c                óØ  — | j                   }d }i }| j                  j                  «       D ]  \  }}|dt        fv r|}Œ|||<   Œ t	        t
        ||¬«      g}| j                  �*|j                  t	        t        | j                  ¬«      «       || j                  z  }|j                  t	        t        ||¬«      «       | j                  }t        |«      D ]  \  }}	}
 ||g|	¢­i |
¤Ž}Œ |S )Niô  )Úhandlerr%   r!   )Úhandlersr%   )r%   r)   ÚitemsÚ	Exceptionr   r   r"   Úappendr   r+   r   r'   Úreversed)r-   r%   Úerror_handlerr)   ÚkeyÚvaluer/   ÚappÚclsÚargsÚkwargss              r0   Úbuild_middleware_stackz Starlette.build_middleware_stack?   sú   € Ø—
‘
ˆØˆØ:<Ðà×1Ñ1×7Ñ7Ó9ò 	0‰JˆC�Ø�sœIÐ&Ñ&Ø %‘à*/Ð" 3Ò'ð		0ô !Ô!6ÀÐUZÔ[Ð\ˆ
Ø×ÑÐ)Ø×ÑœjÔ)CÐSW×SeÑSeÔfÔgØ�d×*Ñ*Ñ*ˆ
Ø×Ñœ*Ô%8ÐCUÐ]bÔcÔdà�k‰kˆÜ!)¨*Ó!5ò 	,ÑˆC��vÙ�cÐ+˜DÒ+ FÑ+‰Cð	,àˆ
r2   c                ó.   — | j                   j                  S ©N)r'   r.   )r-   s    r0   r.   zStarlette.routesU   s   € à�{‰{×!Ñ!Ð!r2   c               ó<   —  | j                   j                  |fi |¤ŽS rC   )r'   Úurl_path_for)r-   ÚnameÚpath_paramss      r0   rE   zStarlette.url_path_forY   s   € Ø'ˆt�{‰{×'Ñ'¨Ñ<°Ñ<Ð<r2   c              ƒ  ó’   K  — | |d<   | j                   €| j                  «       | _         | j                  |||«      ƒ d {  –—†  y 7 Œ­w)Nr=   )r,   rA   )r-   ÚscopeÚreceiveÚsends       r0   Ú__call__zStarlette.__call__\   sD   è ø€ Øˆˆe‰Ø× Ñ Ð(Ø$(×$?Ñ$?Ó$AˆDÔ!Ø×#Ñ# E¨7°DÓ9×9Ò9ús   ‚=A¿AÁ Ac                ó@   — | j                   j                  |||¬«       y ©N)r=   rF   )r'   Úmount)r-   Úpathr=   rF   s       r0   rO   zStarlette.mountb   s   € Ø�‰×Ñ˜$ C¨dÐÕ3r2   c                ó@   — | j                   j                  |||¬«       y rN   )r'   Úhost)r-   rR   r=   rF   s       r0   rR   zStarlette.hoste   s   € Ø�‰×Ñ˜ 3¨TÐÕ2r2   c                ó„   — | j                   �t        d«      ‚| j                  j                  dt	        |g|¢­i |¤Ž«       y )Nz6Cannot add middleware after an application has startedr   )r,   ÚRuntimeErrorr+   Úinsertr   )r-   Úmiddleware_classr?   r@   s       r0   Úadd_middlewarezStarlette.add_middlewareh   s@   € Ø× Ñ Ð,ÜÐWÓXÐXØ×Ñ×#Ñ# A¤zÐ2BÐ'TÀTÒ'TÈVÑ'TÕUr2   c                ó"   — || j                   |<   y rC   )r)   )r-   Úexc_class_or_status_coder4   s      r0   Úadd_exception_handlerzStarlette.add_exception_handlerm   s   € ð
 =Dˆ×ÑÐ 8Ò9r2   c                óD   — | j                   j                  |||||¬«       y )N)ÚmethodsrF   Úinclude_in_schema)r'   Ú	add_route)r-   rP   Úrouter\   rF   r]   s         r0   r^   zStarlette.add_routet   s"   € ð 	�‰×Ñ˜d E°7ÀÐYjÐÕkr2   )FNNNN)r-   r   r%   Úboolr.   zSequence[BaseRoute] | Noner/   zSequence[Middleware] | Noner)   z%Mapping[Any, ExceptionHandler] | Noner$   zLifespan[AppType] | Noner"   z
int | NoneÚreturnÚNone)ra   r   )ra   zlist[BaseRoute])rF   ÚstrrG   r   ra   r   )rI   r   rJ   r   rK   r   ra   rb   rC   )rP   rc   r=   r   rF   ú
str | Nonera   rb   )rR   rc   r=   r   rF   rd   ra   rb   )rV   z_MiddlewareFactory[P]r?   zP.argsr@   zP.kwargsra   rb   )rY   zint | type[Exception]r4   r   ra   rb   )NNT)rP   rc   r_   z3Callable[[Request], Awaitable[Response] | Response]r\   zlist[str] | NonerF   rd   r]   r`   ra   rb   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r1   rA   Úpropertyr.   rE   rL   rO   rR   rW   rZ   r^   © r2   r0   r   r      s  „ Ù+ð Ø-1Ø26ØDHØ-1ð&5ð %)ñ&5Øð&5àð&5ð +ð&5ð 0ð	&5ð
 Bð&5ð +ð&5ð "ð&5ð 
ó&5óPð, ò"ó ð"ó=ó:ô4ô3óVð
Dà"7ðDð "ðDð 
ó	Dð %)ØØ"&ðlàðlð Cðlð "ð	lð
 ðlð  ðlð 
ôlr2   N)(Ú
__future__r   Úcollections.abcr   r   r   r   Útypingr   r	   r
   Ústarlette.datastructuresr   r   Ústarlette.middlewarer   r   Ústarlette.middleware.body_limitr   Ústarlette.middleware.errorsr   Ústarlette.middleware.exceptionsr   Ústarlette.requestsr   Ústarlette.responsesr   Ústarlette.routingr   r   Ústarlette.typesr   r   r   r   r   r   r   r   r   rj   r2   r0   ú<module>rw      sU   ðÝ "ç BÓ Bß *Ñ *ç 3ß ?Ý FÝ =Ý ?Ý &Ý (ß /ß U× Uá
�) ;Ô
/€ÙˆcƒN€÷hlò hlr2   