open tasks menu when clicking view
This commit is contained in:
parent
509b6c6132
commit
7201a914be
2 changed files with 18 additions and 3 deletions
|
|
@ -1,6 +1,6 @@
|
|||
"use client"
|
||||
|
||||
import { useState } from 'react'
|
||||
import { useEffect, useState } from 'react'
|
||||
import { Bell, CheckCircle, XCircle, Clock, Loader2, ChevronDown, ChevronUp, X } from 'lucide-react'
|
||||
import { Button } from '@/components/ui/button'
|
||||
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'
|
||||
|
|
@ -8,9 +8,16 @@ import { Badge } from '@/components/ui/badge'
|
|||
import { useTask, Task } from '@/contexts/task-context'
|
||||
|
||||
export function TaskNotificationMenu() {
|
||||
const { tasks, isFetching, isMenuOpen, cancelTask } = useTask()
|
||||
const { tasks, isFetching, isMenuOpen, isRecentTasksExpanded, cancelTask } = useTask()
|
||||
const [isExpanded, setIsExpanded] = useState(false)
|
||||
|
||||
// Sync local state with context state
|
||||
useEffect(() => {
|
||||
if (isRecentTasksExpanded) {
|
||||
setIsExpanded(true)
|
||||
}
|
||||
}, [isRecentTasksExpanded])
|
||||
|
||||
// Don't render if menu is closed
|
||||
if (!isMenuOpen) return null
|
||||
|
||||
|
|
|
|||
|
|
@ -43,6 +43,8 @@ interface TaskContextType {
|
|||
isFetching: boolean;
|
||||
isMenuOpen: boolean;
|
||||
toggleMenu: () => void;
|
||||
isRecentTasksExpanded: boolean;
|
||||
setRecentTasksExpanded: (expanded: boolean) => void;
|
||||
// React Query states
|
||||
isLoading: boolean;
|
||||
error: Error | null;
|
||||
|
|
@ -53,6 +55,7 @@ const TaskContext = createContext<TaskContextType | undefined>(undefined);
|
|||
export function TaskProvider({ children }: { children: React.ReactNode }) {
|
||||
const [files, setFiles] = useState<TaskFile[]>([]);
|
||||
const [isMenuOpen, setIsMenuOpen] = useState(false);
|
||||
const [isRecentTasksExpanded, setIsRecentTasksExpanded] = useState(false);
|
||||
const previousTasksRef = useRef<Task[]>([]);
|
||||
const { isAuthenticated, isNoAuthMode } = useAuth();
|
||||
|
||||
|
|
@ -220,7 +223,10 @@ export function TaskProvider({ children }: { children: React.ReactNode }) {
|
|||
description,
|
||||
action: {
|
||||
label: "View",
|
||||
onClick: () => setIsMenuOpen(true),
|
||||
onClick: () => {
|
||||
setIsMenuOpen(true);
|
||||
setIsRecentTasksExpanded(true);
|
||||
},
|
||||
},
|
||||
});
|
||||
setTimeout(() => {
|
||||
|
|
@ -302,6 +308,8 @@ export function TaskProvider({ children }: { children: React.ReactNode }) {
|
|||
isFetching,
|
||||
isMenuOpen,
|
||||
toggleMenu,
|
||||
isRecentTasksExpanded,
|
||||
setRecentTasksExpanded: setIsRecentTasksExpanded,
|
||||
isLoading,
|
||||
error,
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue