feat: UI de configuration des colonnes et mappings label→colonne
CI / test (push) Failing after 4s
CI / lint (push) Failing after 4s

- Bouton ⚙ sur chaque colonne pour configurer le mapping label Gitea
- Modal ⚙ Colonnes pour ajouter/renommer/supprimer des colonnes
- API DELETE /api/col-mapping pour supprimer un mapping
- Rafraîchit le board après chaque modification de colonne/mapping
- CSS pour les nouveaux éléments (config panel, column list)
This commit is contained in:
2026-07-08 11:33:08 -04:00
parent 7b2fa01b0a
commit c19503cf2f
4 changed files with 216 additions and 1 deletions
+25
View File
@@ -195,6 +195,31 @@ async def set_col_mapping(
return {"status": "ok", "column": column, "label": gitea_label}
@router.delete("/col-mapping")
async def delete_col_mapping(
owner: str = Query(...),
repo: str = Query(...),
column: str = Query(...),
):
"""Delete a column-to-label mapping."""
with get_conn() as conn:
board = conn.execute(
"SELECT id FROM boards WHERE project_owner=? AND project_name=?",
(owner, repo),
).fetchone()
if not board:
raise HTTPException(status_code=404, detail="Board not found")
board_id = board["id"]
conn.execute(
"DELETE FROM col_mapping WHERE board_id=? AND column_name=?",
(board_id, column),
)
conn.commit()
return {"status": "ok", "column": column}
@router.get("/board-config/{owner}/{repo}")
async def get_board_config(owner: str, repo: str):
with get_conn() as conn: