import "reflect-metadata"; import { App } from "./core/controllers/app"; import { SocketSubscriber } from "./core/controllers/socket_controller"; import { Routes } from "./core/interfaces/router"; import { TriggerPresentation } from "./features/triggers/triggers_presentation"; import { ProjectsPresentation } from "./features/projects/projects_presentation"; import { PipelinePresentation } from "./features/pipelines/pipeline_presentation"; import { ProcessPresentation } from "./features/process/process_presentation"; import { RealTimePresentation, pipelineRealTimeService, } from "./features/realtime/realtime_presentation"; import { extensions } from "./core/extensions/extensions"; import { ProjectInstancePresentation } from "./features/project_instance/project_instance_presentation"; extensions(); const httpRoutes: Routes[] = [ new TriggerPresentation(), new ProjectsPresentation(), new ProcessPresentation(), new PipelinePresentation(), new RealTimePresentation(), new ProjectInstancePresentation(), ].map((el) => el.call()); const socketSubscribers = [ new SocketSubscriber(pipelineRealTimeService, "realtime"), ]; new App(httpRoutes, socketSubscribers).listen();