Clean up: Remove component files
This commit is contained in:
parent
78faf60591
commit
7cba78a360
@ -1,68 +0,0 @@
|
|||||||
import React from 'react';
|
|
||||||
import { Task, TaskStatus } from '../../types';
|
|
||||||
import { AssigneeLabel, DueDate, PriorityIndicator, StatusSelect } from '../common/TaskFields';
|
|
||||||
|
|
||||||
interface TaskCardProps {
|
|
||||||
task: Task;
|
|
||||||
busy: boolean;
|
|
||||||
onEdit: (task: Task) => void;
|
|
||||||
onDelete: (task: Task) => void;
|
|
||||||
onStatusChange: (task: Task, status: TaskStatus) => void;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Mobile card view, per the approved mobile dashboard mockup. */
|
|
||||||
const TaskCard: React.FC<TaskCardProps> = ({ task, busy, onEdit, onDelete, onStatusChange }) => (
|
|
||||||
<article className="task-card" aria-label={task.title}>
|
|
||||||
<div className="task-card-header">
|
|
||||||
<div className="task-meta">
|
|
||||||
<PriorityIndicator priority={task.priority} />
|
|
||||||
<StatusSelect
|
|
||||||
status={task.status}
|
|
||||||
taskTitle={task.title}
|
|
||||||
disabled={busy}
|
|
||||||
onChange={(status) => onStatusChange(task, status)}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div className="task-actions-mobile">
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
className="btn-action"
|
|
||||||
onClick={() => onEdit(task)}
|
|
||||||
disabled={busy}
|
|
||||||
aria-label={`Edit ${task.title}`}
|
|
||||||
>
|
|
||||||
<span aria-hidden="true">✎</span>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
className="btn-action delete"
|
|
||||||
onClick={() => onDelete(task)}
|
|
||||||
disabled={busy}
|
|
||||||
aria-label={`Delete ${task.title}`}
|
|
||||||
>
|
|
||||||
<span aria-hidden="true">🗑</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
className="task-card-title-btn"
|
|
||||||
onClick={() => onEdit(task)}
|
|
||||||
aria-label={`Open ${task.title}`}
|
|
||||||
>
|
|
||||||
<h3 className="task-card-title">{task.title}</h3>
|
|
||||||
</button>
|
|
||||||
|
|
||||||
{task.description && <p className="task-card-description">{task.description}</p>}
|
|
||||||
|
|
||||||
<div className="task-card-footer">
|
|
||||||
<AssigneeLabel user={task.assigned_to} />
|
|
||||||
<span className="due-date-info">
|
|
||||||
<DueDate value={task.due_date} />
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</article>
|
|
||||||
);
|
|
||||||
|
|
||||||
export default TaskCard;
|
|
||||||
Loading…
Reference in New Issue
Block a user