-
-
+
+ {/* Chat List Skeleton */}
+
+
+
+ {Array.from({ length: 8 }).map((_, i) => (
+
+ ))}
+
+
+
+ {/* Chat Content Skeleton */}
+
+
+
+ {Array.from({ length: 6 }).map((_, i) => (
+
+ ))}
diff --git a/client/src/pages/TasksPage.tsx b/client/src/pages/TasksPage.tsx
index f6b6f42..5b29b95 100644
--- a/client/src/pages/TasksPage.tsx
+++ b/client/src/pages/TasksPage.tsx
@@ -34,15 +34,18 @@ export default function TasksPage() {
});
// Fetch tasks
- const { data: tasks, isLoading } = useQuery({
+ const { data: tasksData, isLoading } = useQuery({
queryKey: ['/api/tasks'],
queryFn: async () => {
const response = await fetch('/api/tasks');
if (!response.ok) throw new Error('Failed to fetch tasks');
- return response.json();
+ const data = await response.json();
+ return data;
}
});
+ const tasks = tasksData?.tasks || [];
+
// Filter and sort tasks
const filteredAndSortedTasks = useMemo(() => {
if (!tasks) return [];