refactor: ordenar tarefas por status e simplificar note dialog
Tarefas pendentes agora aparecem primeiro, concluídas por último, tanto nos cards quanto nos modais (details e edit). Note dialog mais minimalista: remove labels redundantes, contadores de caracteres, descriptions verbosas. Tarefas com line-through quando concluídas, botão de remover mais sutil. Cards de anotação agora usam grid responsivo (1/2/3 colunas) igual aos cards de cartões, em vez de largura fixa 440px. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -14,7 +14,7 @@ import {
|
||||
DialogTitle,
|
||||
} from "@/components/ui/dialog";
|
||||
import { Card } from "../ui/card";
|
||||
import type { Note } from "./types";
|
||||
import { type Note, sortTasksByStatus } from "./types";
|
||||
|
||||
const DATE_FORMATTER = new Intl.DateTimeFormat("pt-BR", {
|
||||
dateStyle: "long",
|
||||
@@ -51,6 +51,7 @@ export function NoteDetailsDialog({
|
||||
|
||||
const isTask = note.type === "tarefa";
|
||||
const tasks = note.tasks || [];
|
||||
const sortedTasks = useMemo(() => sortTasksByStatus(tasks), [tasks]);
|
||||
const completedCount = tasks.filter((t) => t.completed).length;
|
||||
const totalCount = tasks.length;
|
||||
|
||||
@@ -71,7 +72,7 @@ export function NoteDetailsDialog({
|
||||
|
||||
{isTask ? (
|
||||
<div className="max-h-[320px] overflow-auto space-y-3">
|
||||
{tasks.map((task) => (
|
||||
{sortedTasks.map((task) => (
|
||||
<Card
|
||||
key={task.id}
|
||||
className="flex gap-3 p-3 flex-row items-center"
|
||||
|
||||
Reference in New Issue
Block a user