MCPcopy
hub / github.com/nowork-studio/NotFair / TaskCard

Function TaskCard

notfair-cmo/src/components/tasks-board.tsx:500–536  ·  view source on GitHub ↗
({
  task,
  projectSlug,
  assignee,
}: {
  task: Task;
  projectSlug: string;
  assignee: string;
})

Source from the content-addressed store, hash-verified

498}
499
500function TaskCard({
501 task,
502 projectSlug,
503 assignee,
504}: {
505 task: Task;
506 projectSlug: string;
507 assignee: string;
508}) {
509 return (
510 <Link
511 href={projectHref(projectSlug, `/tasks/${task.id}`)}
512 className="block rounded-[10px] bg-card p-3 transition-colors hover:bg-[hsl(0_0%_99%)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[hsl(var(--notfair-accent-border))]"
513 style={{ boxShadow: "var(--notfair-shadow-sm)" }}
514 >
515 <div className="flex items-center justify-between gap-2">
516 <span className="font-mono text-[10px] tabular-nums text-[hsl(var(--notfair-ink-4))]">
517 {task.display_id.toUpperCase()}
518 </span>
519 <span className="text-[10px] text-[hsl(var(--notfair-ink-4))]">
520 {relativeTime(task.updated_at)}
521 </span>
522 </div>
523 <p className="mt-1.5 line-clamp-2 text-[13px] font-medium text-[hsl(var(--notfair-ink))]">
524 {task.title ?? task.brief}
525 </p>
526 {task.title && (
527 <p className="mt-0.5 line-clamp-2 text-[11.5px] text-[hsl(var(--notfair-ink-4))]">
528 {task.brief}
529 </p>
530 )}
531 <div className="mt-2 flex items-center justify-between gap-2">
532 <span className="ns-tag">{assignee}</span>
533 </div>
534 </Link>
535 );
536}
537
538// ── List view ─────────────────────────────────────────────────────────
539

Callers

nothing calls this directly

Calls 2

projectHrefFunction · 0.90
relativeTimeFunction · 0.85

Tested by

no test coverage detected