o
    *gO	                     @   s   d Z ddl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 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 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% ddl&m'Z' ddl(m)Z) ddl*m+Z+ e  dgZ,edefddZ-ee-dZ.e./e) e.j/ee,ddgdgd e.0e e.0e e.0e e.0e e.0e! e.0e e.0e e.0e e.0e e.0e e.0e# e.0e% e.0e' e1dkrddl2Z2e2j3e.e4dpd d! dS dS )"z.This will be the main file for the FastAPI app    N)load_dotenv)asynccontextmanager)FastAPI)CORSMiddleware)auth)buyers_targets)company_profile)payments)presentation)recommendation)
stock_info)team)user)	utilities)financial_info)chat)buyer_intake)AuthMiddleware)SocketManagerzhttp://localhost:5173fast_api_appc                 C  st   t jtdp	dddd}|| j_ | dtjt|j	dd zd V  W | jj 
 I d H  d S | jj 
 I d H  w )	N
redis_hostredisi  T)hostportdecode_responsesz/wsz/ws/socket.io)socketio_path)r   RedisosgetenvstatemountsocketioASGIAppr   sioclose)r   redis_client r&   (/var/www/html/XCapMarket/fast_api_app.pystartup&   s   
*r(   )lifespanT*)allow_originsallow_credentialsallow_methodsallow_headers__main__PORTiX  )r   )5__doc__r   r!   dotenvr   
contextlibr   redis.asyncioasyncior   fastapir   fastapi.middleware.corsr   controllers.auth_routerr   controllers.buyers_targetsr   "controllers.company_profile_routerr   controllers.payment_routerr	   controllers.presentationr
   controllers.recommenderr   $controllers.stock_performance_routerr   controllers.team_routerr   controllers.user_routerr   controllers.utilitiesr   controllers.financial_infor   controllers.docchatr   controllers.buyer_intake_formr   dependencies.require_authr   utils.socketsr   allowed_originsr(   appadd_middlewareinclude_router__name__uvicornrunr   r&   r&   r&   r'   <module>   sr    















