feat(kanban): mejoras historial card — DONE check + tiempo por columna

HistoryModal now receives the board's columns via prop to enrich
history events with column metadata.

Timeline:
- Entries for column moves into a column with is_done=true now render
  with a green IconCheck bullet and the kind label "Hecho en columna"
  instead of the generic blue arrows / "Mueve a columna". Makes the
  card's "done" moments scannable at a glance.

Footer (below the timeline):
- Replaces the single Group-of-badges with a structured table showing
  one row per visited column: name, visits (entry count) and total time
  in column. DONE columns are flagged with a green check + bold.
- Total locked time keeps the same source (total_locked_ms) but moved
  to a header line above the table to declutter.
- Currently-active entry (exited_at=null) contributes now - entered_at
  to its row, so the table reflects live time.

App.tsx passes columns from board state when opening the history modal.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-14 13:53:19 +02:00
parent bc502df48a
commit 30def13c55
2 changed files with 84 additions and 19 deletions
+2 -2
View File
@@ -781,9 +781,9 @@ export function App() {
modals.open({
title: card.title,
size: "md",
children: <HistoryModal card={card} />,
children: <HistoryModal card={card} columns={board?.columns ?? []} />,
});
}, []);
}, [board?.columns]);
const handleToggleCardLock = useCallback(async (id: string, locked: boolean) => {
setBoard((prev) => {