From 5b2fefbca44dfc6514b25be7035f6b78c5492be9 Mon Sep 17 00:00:00 2001 From: Timothy Cardoza Date: Fri, 20 Mar 2026 13:08:15 -0500 Subject: [PATCH] load in optimization and error correction --- src/components/EmbedLayout.tsx | 13 +- src/components/Layout.tsx | 27 ++-- src/components/Navigation.tsx | 8 +- src/components/NotesSidebar.tsx | 2 +- src/components/QuickEntryForm.tsx | 4 +- src/components/TagPicker.tsx | 6 +- src/components/TaskCard.tsx | 10 +- src/components/TaskDetail.tsx | 20 ++- src/hooks/useDelayedSort.ts | 16 ++- src/hooks/useTaskListAutoAnimate.ts | 17 +++ src/index.css | 23 +++- src/lib/mention-suggestion.tsx | 3 +- src/store/index.ts | 197 +++++++++++++++++++++++++--- src/views/CriticalView.tsx | 8 +- src/views/DigInView.tsx | 8 +- src/views/NotepadView.tsx | 49 +++---- src/views/PriorityView.tsx | 8 +- src/views/ProgressView.tsx | 8 +- src/views/SnowballView.tsx | 8 +- src/views/UrgencyView.tsx | 8 +- vite.config.ts | 21 +-- 21 files changed, 334 insertions(+), 130 deletions(-) create mode 100644 src/hooks/useTaskListAutoAnimate.ts diff --git a/src/components/EmbedLayout.tsx b/src/components/EmbedLayout.tsx index 714ecdf..03659c4 100644 --- a/src/components/EmbedLayout.tsx +++ b/src/components/EmbedLayout.tsx @@ -7,15 +7,16 @@ interface EmbedLayoutProps { export const EmbedLayout: Component = (props) => { return (
-
+
{props.children}
+
); diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx index b9e659e..c5f7b69 100644 --- a/src/components/Layout.tsx +++ b/src/components/Layout.tsx @@ -1,6 +1,6 @@ import { type Component, type JSX, createSignal, createEffect, Show, lazy, Suspense, onMount, onCleanup } from "solid-js"; import { Sidebar, BottomNav, ContextSwitcher } from "./Navigation"; -import { store, setStore, activeTaskId, setActiveTaskId } from "@/store"; +import { store, setStore, activeTaskId, setActiveTaskId, requestImmediateNotesMetadataLoad } from "@/store"; import { PanelLeftOpen, PanelLeftClose } from "lucide-solid"; const TaskDetail = lazy(() => import("./TaskDetail").then(m => ({ default: m.TaskDetail }))); @@ -54,6 +54,12 @@ export const Layout: Component = (props) => { // Derived active task for the detail view const activeTask = () => store.tasks.find(t => t.id === activeTaskId()); + createEffect(() => { + if (store.isNotepadMode) { + void requestImmediateNotesMetadataLoad(); + } + }); + return (
{/* Desktop UI Container */} @@ -189,25 +195,20 @@ export const Layout: Component = (props) => {
{/* Sync Progress Bar Overlay */} - +
{/* Main Content Area */} -
+
diff --git a/src/components/Navigation.tsx b/src/components/Navigation.tsx index f17f876..d14018c 100644 --- a/src/components/Navigation.tsx +++ b/src/components/Navigation.tsx @@ -58,7 +58,13 @@ export const BottomNav: Component<{ currentView: string; setView: (v: string) => }; return ( -
}> + {store.isNotesLoading ? "Loading notes..." : "No notes found."}
}> {(note) => (