+
    AžÀj*
  ã                  óz   € R t ^ RIHt ^ RIt]P
                  '       d   ^ RIHt ^ RIHt ^ RIH	t	  ! R R4      t
R# )aY  
Application Dispatcher
======================

This middleware creates a single WSGI application that dispatches to
multiple other WSGI applications mounted at different URL paths.

A common example is writing a Single Page Application, where you have a
backend API and a frontend written in JavaScript that does the routing
in the browser rather than requesting different pages from the server.
The frontend is a single HTML and JS file that should be served for any
path besides "/api".

This example dispatches to an API app under "/api", an admin app
under "/admin", and an app that serves frontend files for all other
requests::

    app = DispatcherMiddleware(serve_frontend, {
        '/api': api_app,
        '/admin': admin_app,
    })

In production, you might instead handle this at the HTTP server level,
serving files or proxying to application servers based on location. The
API and admin apps would each be deployed with a separate WSGI server,
and the static files would be served directly by the HTTP server.

.. autoclass:: DispatcherMiddleware

:copyright: 2007 Pallets
:license: BSD-3-Clause
)ÚannotationsN)ÚStartResponse)ÚWSGIApplication)ÚWSGIEnvironmentc                  ó6   € ] tR t^,tRtRR R lltR R ltRtR# )	ÚDispatcherMiddlewarea2  Combine multiple applications as a single WSGI application.
Requests are dispatched to an application based on the path it is
mounted under.

:param app: The WSGI application to dispatch to if the request
    doesn't match a mounted path.
:param mounts: Maps path prefixes to applications for dispatching.
Nc               ó$   € V ^8„  d   QhRRRRRR/# )é   Úappr   Úmountsz!dict[str, WSGIApplication] | NoneÚreturnÚNone© )Úformats   "Úr/var/www/html/mycamper/aliexpress-site/backend/venv/lib/python3.14/site-packages/werkzeug/middleware/dispatcher.pyÚ__annotate__Ú!DispatcherMiddleware.__annotate__6   s(   € ÷ #ñ #àð#ð 2ð#ð 
ñ	#ó    c                	ó4   € Wn         T;'       g    / V n        R # ©N©r
   r   )Úselfr
   r   s   &&&r   Ú__init__ÚDispatcherMiddleware.__init__6   s   € ð
 ŒØ—l�l ˆŽr   c               ó$   € V ^8„  d   QhRRRRRR/# )r	   Úenvironr   Ústart_responser   r   zt.Iterable[bytes]r   )r   s   "r   r   r   >   s$   € ÷ ,ñ ,Ø&ð,Ø8Eð,à	ñ,r   c                	óV  € VP                  R R4      pRpRV9   dB   W0P                  9   d   V P                  V,          pMBVP                  R^4      w  r6RV V 2pKH  V P                  P                  W0P                  4      pVP                  RR4      pWs,           VR&   WAR &   V! W4      # )Ú	PATH_INFOÚ Ú/ÚSCRIPT_NAME)Úgetr   Úrsplitr
   )r   r   r   ÚscriptÚ	path_infor
   Ú	last_itemÚoriginal_script_names   &&&     r   Ú__call__ÚDispatcherMiddleware.__call__>   s¥   € ð —‘˜[¨"Ó-ˆØˆ	à�VŒmØŸ™Ô$Ø—k‘k &Õ)�Øà &§¡¨c°1Ó 5ÑˆFØ˜I˜; y kÐ2ŠIà—+‘+—/‘/ &¯(©(Ó3ˆCà&Ÿ{™{¨=¸"Ó=ÐØ!5Õ!>ˆ�ÑØ(�ÑÙ�7Ó+Ð+r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r(   Ú__static_attributes__r   r   r   r   r   ,   s   † ñ÷#÷,ñ ,r   r   )r.   Ú
__future__r   ÚtypingÚtÚTYPE_CHECKINGÚ_typeshed.wsgir   r   r   r   r   r   r   Ú<module>r5      s/   ðñõB #ã à‡?‡?€?Ý,Ý.Ý.÷%,ó %,r   