U
    &%e4                     @   s   d dl 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mZ d dlmZmZ ee
ed	d
dZeeed	ddZeeddddZdS )    )jsonable_encoder)RequestValidationErrorWebSocketRequestValidationError)is_body_allowed_for_status_code)	WebSocket)HTTPException)Request)JSONResponseResponse)HTTP_422_UNPROCESSABLE_ENTITYWS_1008_POLICY_VIOLATION)requestexcreturnc                    s:   t |dd }t|js$t|j|dS td|ji|j|dS )Nheaders)status_coder   detail)getattrr   r   r
   r	   r   )r   r   r    r   Y/var/www/html/Darija-Ai-API/env/lib/python3.8/site-packages/fastapi/exception_handlers.pyhttp_exception_handler   s    
  r   c                    s   t tdt| idS )Nr   )r   content)r	   r   r   errors)r   r   r   r   r   $request_validation_exception_handler   s    r   N)	websocketr   r   c                    s    | j tt| dI d H  d S )N)codereason)closer   r   r   )r   r   r   r   r   .websocket_request_validation_exception_handler   s     
r   )Zfastapi.encodersr   Zfastapi.exceptionsr   r   Zfastapi.utilsr   Zfastapi.websocketsr   Zstarlette.exceptionsr   Zstarlette.requestsr   Zstarlette.responsesr	   r
   Zstarlette.statusr   r   r   r   r   r   r   r   r   <module>   s    
 
 