feat(PBI-61): filter popover + created_at op job-kaart (#158)
- Nieuwe JobsColumn met Kind/Status filter-popover per kolom (Actief/Klaar) - Filterstate persistent in localStorage (whitelist-validatie tegen corrupte waardes) - Active-filter badges in kolomheader, klikbaar om te wissen - Aanmaakdatum + tijd rechtsonder op elke JobCard (nl-NL short formaat) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
7ae8a24372
commit
e8371b9f95
3 changed files with 270 additions and 46 deletions
|
|
@ -19,6 +19,7 @@ interface JobCardProps {
|
|||
branch?: string | null
|
||||
error?: string | null
|
||||
summary?: string | null
|
||||
createdAt: Date | string
|
||||
isSelected?: boolean
|
||||
onClick?: () => void
|
||||
}
|
||||
|
|
@ -33,7 +34,7 @@ const KIND_LABELS: Record<ClaudeJobKind, string> = {
|
|||
|
||||
export default function JobCard({
|
||||
kind, status, taskCode, taskTitle, ideaCode, ideaTitle,
|
||||
sprintGoal, sprintCode, productName, branch, error, isSelected, onClick,
|
||||
sprintGoal, sprintCode, productName, branch, error, createdAt, isSelected, onClick,
|
||||
}: JobCardProps) {
|
||||
let titleText: string
|
||||
if (kind === 'TASK_IMPLEMENTATION') {
|
||||
|
|
@ -70,7 +71,12 @@ export default function JobCard({
|
|||
</span>
|
||||
</div>
|
||||
<p className="font-medium truncate mt-1">{titleText}</p>
|
||||
<p className="text-xs text-muted-foreground truncate mt-0.5">{detailText}</p>
|
||||
<div className="flex items-end justify-between gap-2 mt-0.5">
|
||||
<p className="text-xs text-muted-foreground truncate">{detailText}</p>
|
||||
<span className="text-[10px] text-muted-foreground shrink-0 tabular-nums">
|
||||
{new Date(createdAt).toLocaleString('nl-NL', { dateStyle: 'short', timeStyle: 'short' })}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue