o
    rN)jW                     @  s   U d dl mZ d dl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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
ZeeeegZded< g dZded< G dd dZdS )    )annotationsN)	ExitStack)chain)Any)ConfigurationError)ALB
APIGatewayHTTPGatewayLambdaAtEdge)	HTTPCycleLifespanCycle)ASGILambdaConfigLambdaContextLambdaEventLambdaHandlerLifespanModemangumzlist[type[LambdaHandler]]HANDLERS)ztext/zapplication/jsonzapplication/javascriptzapplication/xmlzapplication/vnd.api+jsonzapplication/vnd.oai.openapiz	list[str]DEFAULT_TEXT_MIME_TYPESc                   @  s6   e Zd Z					ddddZdddZd ddZdS )!Mangumauto/Nappr   lifespanr   api_gateway_base_pathstrcustom_handlers list[type[LambdaHandler]] | Nonetext_mime_typeslist[str] | Noneexclude_headersreturnNonec                 C  sX   |dvrt d|| _|| _|pg | _|pg }t|pd|p g tdd |D d| _d S )N)r   onoffzBInvalid argument supplied for `lifespan`. Choices are: auto|on|offr   c                 S  s   g | ]}|  qS  )lower).0headerr&   r&   o/var/www/html/finance.cargoinsureonline.com/_shared/backend-venv/lib/python3.10/site-packages/mangum/adapter.py
<listcomp>/   s    z#Mangum.__init__.<locals>.<listcomp>)r   r   r!   )r   r   r   r   r   r   config)selfr   r   r   r   r   r!   r&   r&   r*   __init__   s   	

zMangum.__init__eventr   contextr   r   c                 C  s<   t | jtD ]}|||| jr|||| j  S qtd)NzThe adapter was unable to infer a handler to use for the event. This is likely related to how the Lambda function was invoked. (Are you testing locally? Make sure the request payload is valid for a supported handler.))r   r   r   inferr,   RuntimeError)r-   r/   r0   handler_clsr&   r&   r*   r1   2   s   zMangum.inferdict[str, Any]c           	      C  s   |  ||}|j}t 2}| jdv r(t| j| j}|| |d|j	 i t
||j}|| j}||W  d    S 1 sAw   Y  J d)N)r   r$   stateFunreachable)r1   scoper   r   r   r   enter_contextupdatelifespan_statecopyr   body)	r-   r/   r0   handlerr7   stacklifespan_cycle
http_cyclehttp_responser&   r&   r*   __call__=   s   


 zMangum.__call__)r   r   NNN)r   r   r   r   r   r   r   r   r   r    r!   r    r"   r#   )r/   r   r0   r   r"   r   )r/   r   r0   r   r"   r4   )__name__
__module____qualname__r.   r1   rB   r&   r&   r&   r*   r      s    
r   ) 
__future__r   logging
contextlibr   	itertoolsr   typingr   mangum.exceptionsr   mangum.handlersr   r   r	   r
   mangum.protocolsr   r   mangum.typesr   r   r   r   r   r   	getLoggerloggerr   __annotations__r   r   r&   r&   r&   r*   <module>   s     

