mirror of
https://github.com/BradGroux/veritas-kanban.git
synced 2026-10-10 05:37:53 +00:00
fix: open-task fallback to API fetch for archived/deleted tasks
This commit is contained in:
parent
5825b56456
commit
cf50386a0e
1 changed files with 19 additions and 4 deletions
|
|
@ -82,13 +82,28 @@ export function KanbanBoard() {
|
|||
|
||||
// Listen for open-task events from dashboard drill-downs
|
||||
useEffect(() => {
|
||||
const handler = (e: Event) => {
|
||||
const handler = async (e: Event) => {
|
||||
const taskId = (e as CustomEvent).detail?.taskId;
|
||||
if (!taskId) return;
|
||||
const task = tasks?.find((t) => t.id === taskId);
|
||||
if (task) {
|
||||
setSelectedTask(task);
|
||||
|
||||
// Try local task list first
|
||||
const localTask = tasks?.find((t) => t.id === taskId);
|
||||
if (localTask) {
|
||||
setSelectedTask(localTask);
|
||||
setDetailOpen(true);
|
||||
return;
|
||||
}
|
||||
|
||||
// Fallback: fetch from API (task may be archived or filtered out)
|
||||
try {
|
||||
const { api } = await import('@/lib/api');
|
||||
const fetchedTask = await api.tasks.get(taskId);
|
||||
if (fetchedTask) {
|
||||
setSelectedTask(fetchedTask);
|
||||
setDetailOpen(true);
|
||||
}
|
||||
} catch {
|
||||
// Task no longer exists — ignore silently
|
||||
}
|
||||
};
|
||||
window.addEventListener('open-task', handler);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue