import express from "express"; import { authenticateToken } from "../middleware/authMiddleware"; import { getTableList, getColumnList, updateColumnSettings, updateAllColumnSettings, getTableLabels, getColumnLabels, updateColumnWebType, } from "../controllers/tableManagementController"; const router = express.Router(); // 모든 라우트에 인증 미들웨어 적용 (테스트 시에는 주석 처리) // router.use(authenticateToken); /** * 테이블 목록 조회 * GET /api/table-management/tables */ router.get("/tables", getTableList); /** * 테이블 컬럼 정보 조회 * GET /api/table-management/tables/:tableName/columns */ router.get("/tables/:tableName/columns", getColumnList); /** * 개별 컬럼 설정 업데이트 * POST /api/table-management/tables/:tableName/columns/:columnName/settings */ router.post( "/tables/:tableName/columns/:columnName/settings", updateColumnSettings ); /** * 전체 컬럼 설정 일괄 업데이트 * POST /api/table-management/tables/:tableName/columns/settings */ router.post("/tables/:tableName/columns/settings", updateAllColumnSettings); /** * 테이블 라벨 정보 조회 * GET /api/table-management/tables/:tableName/labels */ router.get("/tables/:tableName/labels", getTableLabels); /** * 컬럼 라벨 정보 조회 * GET /api/table-management/tables/:tableName/columns/:columnName/labels */ router.get("/tables/:tableName/columns/:columnName/labels", getColumnLabels); /** * 컬럼 웹 타입 설정 * PUT /api/table-management/tables/:tableName/columns/:columnName/web-type */ router.put( "/tables/:tableName/columns/:columnName/web-type", updateColumnWebType ); export default router;