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"; import { NixStoreManagerPresentation } from "./features/nix_store_manager/nix_store_manager"; extensions(); export const httpRoutes: Routes[] = [ new TriggerPresentation(), new ProjectsPresentation(), new ProcessPresentation(), new PipelinePresentation(), new RealTimePresentation(), new ProjectInstancePresentation(), new NixStoreManagerPresentation(), ].map((el) => el.call()); const socketSubscribers = [new SocketSubscriber(pipelineRealTimeService, "realtime")]; new App(httpRoutes, socketSubscribers).listen();