62 lines
2.5 KiB
TypeScript
62 lines
2.5 KiB
TypeScript
import { Router } from "express";
|
|
import {
|
|
createProject,
|
|
getProject,
|
|
listProjects,
|
|
updateProjectSettings,
|
|
} from "../controllers/project.controller.js";
|
|
import {
|
|
createDistributionBoard,
|
|
listDistributionBoardsByProject,
|
|
} from "../controllers/distribution-board.controller.js";
|
|
import { listCircuitListsByProject } from "../controllers/circuit-list.controller.js";
|
|
import { createFloor, listFloorsByProject } from "../controllers/floor.controller.js";
|
|
import { createRoom, listRoomsByProject } from "../controllers/room.controller.js";
|
|
import { getCircuitTree } from "../controllers/circuit-tree.controller.js";
|
|
import {
|
|
getProjectHistory,
|
|
listProjectRevisions,
|
|
} from "../controllers/project-history.controller.js";
|
|
import {
|
|
executeProjectCommand,
|
|
redoProjectCommand,
|
|
undoProjectCommand,
|
|
} from "../controllers/project-command.controller.js";
|
|
import {
|
|
createNamedProjectSnapshot,
|
|
listProjectSnapshots,
|
|
restoreProjectSnapshot,
|
|
} from "../controllers/project-snapshot.controller.js";
|
|
import {
|
|
exportProjectTransfer,
|
|
importProjectTransfer,
|
|
} from "../controllers/project-transfer.controller.js";
|
|
|
|
export const projectRouter = Router();
|
|
|
|
projectRouter.get("/", listProjects);
|
|
projectRouter.post("/", createProject);
|
|
projectRouter.get("/:projectId", getProject);
|
|
projectRouter.get("/:projectId/export", exportProjectTransfer);
|
|
projectRouter.post("/:projectId/import", importProjectTransfer);
|
|
projectRouter.get("/:projectId/history", getProjectHistory);
|
|
projectRouter.get("/:projectId/history/revisions", listProjectRevisions);
|
|
projectRouter.post("/:projectId/commands", executeProjectCommand);
|
|
projectRouter.post("/:projectId/history/undo", undoProjectCommand);
|
|
projectRouter.post("/:projectId/history/redo", redoProjectCommand);
|
|
projectRouter.get("/:projectId/snapshots", listProjectSnapshots);
|
|
projectRouter.post("/:projectId/snapshots", createNamedProjectSnapshot);
|
|
projectRouter.post(
|
|
"/:projectId/snapshots/:snapshotId/restore",
|
|
restoreProjectSnapshot
|
|
);
|
|
projectRouter.put("/:projectId", updateProjectSettings);
|
|
projectRouter.get("/:projectId/distribution-boards", listDistributionBoardsByProject);
|
|
projectRouter.post("/:projectId/distribution-boards", createDistributionBoard);
|
|
projectRouter.get("/:projectId/circuit-lists", listCircuitListsByProject);
|
|
projectRouter.get("/:projectId/circuit-lists/:circuitListId/tree", getCircuitTree);
|
|
projectRouter.get("/:projectId/floors", listFloorsByProject);
|
|
projectRouter.post("/:projectId/floors", createFloor);
|
|
projectRouter.get("/:projectId/rooms", listRoomsByProject);
|
|
projectRouter.post("/:projectId/rooms", createRoom);
|