diff --git a/web/src/app/page.tsx b/web/src/app/page.tsx index eb539e5..8264733 100644 --- a/web/src/app/page.tsx +++ b/web/src/app/page.tsx @@ -882,132 +882,143 @@ function TicketWorkbenchContent() { ) : ( <> - {/* Column header */} -
-
- {availableColumns.filter((c) => c.visible).map((col) => ( -
- - {col.label} - - {/* Resize handle */} + {/* Table layout for consistent column alignment */} +
+ {/* Column header */} +
+
+ {availableColumns.filter((c) => c.visible).map((col) => (
handleColumnResize(col.key, e)} - /> -
- ))} -
-
- - {filteredTickets.map((ticket) => { - const selected = ticket.id === selectedId; - const ownerName = ticket.owner_id - ? users.find((u) => u.id === ticket.owner_id)?.username ?? "assigned" - : null; - - return ( - - ); - })} + {density === "comfortable" && ( + + {ownerName ?? "Unassigned"} + + Created {relativeTime(ticket.created_at)} + + )} +
+ ); + case "status": + return ( +
+ +
+ ); + case "queue": + return ( +
+ {queueName(queues, ticket.queue_id)} +
+ ); + case "owner": + return ( +
+ {ownerName ?? "—"} +
+ ); + case "created": + return ( +
+ {relativeTime(ticket.created_at)} +
+ ); + case "updated": + return ( +
+ {relativeTime(ticket.updated_at)} +
+ ); + default: + return
; + } + })} +
+ +
+
+ ); + })} +
)}