feat(web): add Board page with Kanban columns and task cards
Server-rendered Kanban board with 4 status columns (Pending, Active, Paused, Completed), task cards with category colors and elapsed time, filter bar with category chips and subtask toggle, and inline create task form. All handlers support htmx partial updates for status transitions (start, pause, resume, complete, abandon, create). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
33
TaskTracker.Api/Pages/Partials/_KanbanColumn.cshtml
Normal file
33
TaskTracker.Api/Pages/Partials/_KanbanColumn.cshtml
Normal file
@@ -0,0 +1,33 @@
|
||||
@using TaskTracker.Api.Pages
|
||||
@using TaskTracker.Core.Enums
|
||||
@model ColumnViewModel
|
||||
|
||||
<div class="kanban-column">
|
||||
<div class="kanban-column-header">
|
||||
<span class="kanban-column-dot" style="background: @Model.Color"></span>
|
||||
<span class="kanban-column-title">@Model.Label</span>
|
||||
<span class="kanban-column-count">@Model.Tasks.Count</span>
|
||||
</div>
|
||||
<div class="kanban-column-bar" style="background: @(Model.Color)33"></div>
|
||||
<div class="kanban-column-body"
|
||||
data-status="@Model.Status"
|
||||
id="column-@Model.Status">
|
||||
@if (Model.Tasks.Count > 0)
|
||||
{
|
||||
@foreach (var task in Model.Tasks)
|
||||
{
|
||||
<partial name="Partials/_TaskCard" model="task" />
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
<div class="kanban-column-empty">
|
||||
<span>No tasks</span>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
@if (Model.Status == WorkTaskStatus.Pending)
|
||||
{
|
||||
<partial name="Partials/_CreateTaskForm" />
|
||||
}
|
||||
</div>
|
||||
Reference in New Issue
Block a user