diff --git a/src/app/page.tsx b/src/app/page.tsx index 4d568bf..137809a 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -377,6 +377,7 @@ export default function Home() { const [activeKanbanTaskId, setActiveKanbanTaskId] = useState(null) const [dragOverKanbanColumnKey, setDragOverKanbanColumnKey] = useState(null) const [authReady, setAuthReady] = useState(false) + const [initialSyncComplete, setInitialSyncComplete] = useState(false) const [users, setUsers] = useState([]) const getTags = (taskLike: { tags?: unknown }) => { @@ -495,7 +496,18 @@ export default function Home() { useEffect(() => { if (!authReady) return - syncFromServer() + let active = true + setInitialSyncComplete(false) + + const runInitialSync = async () => { + await syncFromServer() + if (active) setInitialSyncComplete(true) + } + + void runInitialSync() + return () => { + active = false + } }, [authReady, syncFromServer]) useEffect(() => { @@ -858,6 +870,14 @@ export default function Home() { ) } + if (!initialSyncComplete) { + return ( +
+

Loading board...

+
+ ) + } + return (
{/* Header */}