@@ -22,7 +22,7 @@ export interface KanbanBoardProps {
2222 initialColleagues ?: DigitalColleague [ ]
2323 // Task handlers
2424 onAddTask ?: ( newTask : Omit < Task , 'id' | 'createdAt' | 'updatedAt' > ) => void
25- onUpdateTask ?: ( taskId : string , updates : Partial < Task > ) => void
25+ onUpdateTask ?: ( taskId : string , updates : Partial < Task > ) => Promise < Task >
2626 onDeleteTask ?: ( taskId : string ) => void
2727 onTaskClick ?: ( task : Task ) => void
2828 // Epic handlers
@@ -63,7 +63,7 @@ export const KanbanBoardView: React.FC<KanbanBoardProps> = ({
6363 const selectedEpics = epics . filter ( ( epic ) => true ) . map ( ( epic ) => epic . id )
6464 const selectedSprint = sprints . find ( ( sprint ) => sprint . isSelected )
6565
66- // selectedEpics.push(0)
66+ selectedEpics . push ( 0 )
6767
6868 useEffect ( ( ) => {
6969 setTasks ( initialTasks )
@@ -120,11 +120,12 @@ export const KanbanBoardView: React.FC<KanbanBoardProps> = ({
120120
121121 // Filter tasks by selected epics and sprint
122122 const filteredTasks = tasks . filter ( ( task ) => {
123- const isEpicSelected = selectedEpics . includes ( extractId ( task . epic ) ) || extractId ( task . epic ) < 0
124- if ( ! selectedSprint ) return isEpicSelected
125- if ( selectedSprint . name === 'all-tasks' ) return isEpicSelected
126- if ( selectedSprint . name === 'backlog' ) return isEpicSelected && ! extractId ( task . sprint )
127- return isEpicSelected && extractId ( task . sprint ) === extractId ( selectedSprint )
123+ // const isEpicSelected = selectedEpics.includes(extractId(task.epic)) || extractId(task.epic) < 0
124+ // if (!selectedSprint) return isEpicSelected
125+ // if (selectedSprint.name === 'all-tasks') return isEpicSelected
126+ // if (selectedSprint.name === 'backlog') return isEpicSelected && !extractId(task.sprint)
127+ // return isEpicSelected && extractId(task.sprint) === extractId(selectedSprint)
128+ return true
128129 } )
129130
130131 const getTasksByStatus = ( status : Task [ 'status' ] ) => {
@@ -171,7 +172,7 @@ export const KanbanBoardView: React.FC<KanbanBoardProps> = ({
171172 prev . map ( ( task ) => ( task . id === Number ( taskId ) ? { ...task , ...updates } : task ) ) ,
172173 )
173174 if ( onUpdateTask ) {
174- await onUpdateTask ( taskId , updates )
175+ return await onUpdateTask ( taskId , updates )
175176 }
176177 const task = tasks . find ( ( task ) => task . id === Number ( taskId ) )
177178 if ( ! task ) {
@@ -246,6 +247,8 @@ export const KanbanBoardView: React.FC<KanbanBoardProps> = ({
246247 const columnTasks = getTasksByStatus ( column . status )
247248 const tasksByEpic = getTasksByEpic ( columnTasks )
248249
250+ // console.log('col', col)
251+
249252 return (
250253 < KanbanColumn
251254 key = { column . id }
@@ -256,6 +259,17 @@ export const KanbanBoardView: React.FC<KanbanBoardProps> = ({
256259 isCompact = { column . status === 'done' }
257260 height = { calculatedHeight }
258261 >
262+ { tasksByEpic [ 'no-epic' ] . map ( ( task ) => {
263+ return (
264+ < TaskCard
265+ epic = { null }
266+ task = { task }
267+ onDragStart = { handleDragStart }
268+ onTaskClick = { handleTaskClick }
269+ isCompact = { column . status === 'done' }
270+ />
271+ )
272+ } ) }
259273 { selectedEpics . map ( ( epicId ) => {
260274 const epic = epics . find ( ( e ) => e . id === epicId )
261275 const epicTasks = tasksByEpic [ epicId ] || [ ]
0 commit comments