Skip to content
GitLab
Projects
Groups
Topics
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Register
Sign in
Toggle navigation
Menu
Paulo Avila
petruz-tasks
Commits
47104fa0
Commit
47104fa0
authored
Jun 10, 2026
by
Paulo Avila
Browse files
hot fix : vizualização de quadros
parent
8b8543c3
Changes
3
Hide whitespace changes
Inline
Side-by-side
src/components/tasks/task-board.tsx
View file @
47104fa0
...
@@ -13,7 +13,7 @@ import { TaskDeleteButton } from "./task-delete-button";
...
@@ -13,7 +13,7 @@ import { TaskDeleteButton } from "./task-delete-button";
import
{
TaskDialog
}
from
"
./task-dialog
"
;
import
{
TaskDialog
}
from
"
./task-dialog
"
;
import
{
taskPercent
}
from
"
./task-progress
"
;
import
{
taskPercent
}
from
"
./task-progress
"
;
import
{
TaskStatusSelect
}
from
"
./task-status-select
"
;
import
{
TaskStatusSelect
}
from
"
./task-status-select
"
;
import
{
toFormValues
}
from
"
./task-
table
"
;
import
{
toFormValues
}
from
"
./task-
utils
"
;
export
function
TaskBoard
({
export
function
TaskBoard
({
tasks
,
tasks
,
...
...
src/components/tasks/task-table.tsx
View file @
47104fa0
...
@@ -3,8 +3,9 @@
...
@@ -3,8 +3,9 @@
import
{
Fragment
,
useState
}
from
"
react
"
;
import
{
Fragment
,
useState
}
from
"
react
"
;
import
{
CheckCircle2
,
ChevronRight
,
Circle
,
Pencil
}
from
"
lucide-react
"
;
import
{
CheckCircle2
,
ChevronRight
,
Circle
,
Pencil
}
from
"
lucide-react
"
;
import
type
{
Subtask
,
Task
,
WorkspaceMember
}
from
"
@/lib/data
"
;
import
type
{
Subtask
,
Task
,
WorkspaceMember
}
from
"
@/lib/data
"
;
import
{
formatDate
,
toISODate
}
from
"
@/lib/dates
"
;
import
{
formatDate
}
from
"
@/lib/dates
"
;
import
{
canEditTask
}
from
"
@/lib/permissions
"
;
import
{
canEditTask
}
from
"
@/lib/permissions
"
;
import
{
initials
,
toFormValues
}
from
"
./task-utils
"
;
import
{
Avatar
,
AvatarFallback
}
from
"
@/components/ui/avatar
"
;
import
{
Avatar
,
AvatarFallback
}
from
"
@/components/ui/avatar
"
;
import
{
Button
}
from
"
@/components/ui/button
"
;
import
{
Button
}
from
"
@/components/ui/button
"
;
import
{
import
{
...
@@ -21,34 +22,11 @@ import { PriorityBadge } from "./priority-badge";
...
@@ -21,34 +22,11 @@ import { PriorityBadge } from "./priority-badge";
import
{
StatusBadge
}
from
"
./status-badge
"
;
import
{
StatusBadge
}
from
"
./status-badge
"
;
import
{
SubtaskList
}
from
"
./subtask-list
"
;
import
{
SubtaskList
}
from
"
./subtask-list
"
;
import
{
TaskDeleteButton
}
from
"
./task-delete-button
"
;
import
{
TaskDeleteButton
}
from
"
./task-delete-button
"
;
import
{
TaskDialog
,
type
TaskFormValues
}
from
"
./task-dialog
"
;
import
{
TaskDialog
}
from
"
./task-dialog
"
;
import
{
TaskProgress
}
from
"
./task-progress
"
;
import
{
TaskProgress
}
from
"
./task-progress
"
;
import
{
TaskProgressEditor
}
from
"
./task-progress-editor
"
;
import
{
TaskProgressEditor
}
from
"
./task-progress-editor
"
;
import
{
TaskStatusSelect
}
from
"
./task-status-select
"
;
import
{
TaskStatusSelect
}
from
"
./task-status-select
"
;
export
function
toFormValues
(
task
:
Task
):
TaskFormValues
{
return
{
id
:
task
.
Id
,
title
:
task
.
Title
,
description
:
task
.
Description
,
status
:
task
.
Status
,
priority
:
task
.
Priority
,
assigneeId
:
task
.
AssigneeId
,
startDate
:
toISODate
(
task
.
StartDate
),
dueDate
:
toISODate
(
task
.
DueDate
),
progress
:
task
.
Progress
,
};
}
function
initials
(
name
:
string
):
string
{
return
name
.
split
(
"
"
)
.
filter
(
Boolean
)
.
slice
(
0
,
2
)
.
map
((
part
)
=>
part
[
0
]?.
toUpperCase
())
.
join
(
""
);
}
const
COLUMN_COUNT
=
6
;
const
COLUMN_COUNT
=
6
;
export
function
TaskTable
({
export
function
TaskTable
({
...
...
src/components/tasks/task-utils.ts
0 → 100644
View file @
47104fa0
// Utilitários compartilhados entre componentes de servidor e de cliente —
// este módulo não pode ter "use client" nem importar módulos cliente.
import
type
{
Task
}
from
"
@/lib/data
"
;
import
{
toISODate
}
from
"
@/lib/dates
"
;
import
type
{
TaskFormValues
}
from
"
./task-dialog
"
;
export
function
toFormValues
(
task
:
Task
):
TaskFormValues
{
return
{
id
:
task
.
Id
,
title
:
task
.
Title
,
description
:
task
.
Description
,
status
:
task
.
Status
,
priority
:
task
.
Priority
,
assigneeId
:
task
.
AssigneeId
,
startDate
:
toISODate
(
task
.
StartDate
),
dueDate
:
toISODate
(
task
.
DueDate
),
progress
:
task
.
Progress
,
};
}
export
function
initials
(
name
:
string
):
string
{
return
name
.
split
(
"
"
)
.
filter
(
Boolean
)
.
slice
(
0
,
2
)
.
map
((
part
)
=>
part
[
0
]?.
toUpperCase
())
.
join
(
""
);
}
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment