diff --git a/README.md b/README.md index 114efae8..ad81312a 100644 --- a/README.md +++ b/README.md @@ -187,6 +187,8 @@ This project uses a multi-tool testing strategy. Note that **Jest is not used** > reference — when to use Vitest vs. node:test vs. Playwright, a map of every > `package.json` test script, the `tests/` layout, coverage and gate expectations, and a > "how to add a test" recipe per runner. +> For React component testing conventions (render helpers, accessible queries, mocking +> hooks and context, a11y assertions), see [docs/COMPONENT_TESTING.md](docs/COMPONENT_TESTING.md). #### Running Tests diff --git a/app/dashboard/layout.tsx b/app/dashboard/layout.tsx index fcdb1a1b..179c1e59 100644 --- a/app/dashboard/layout.tsx +++ b/app/dashboard/layout.tsx @@ -1,5 +1,6 @@ import { WhatsNewProvider } from "@/lib/context/WhatsNewContext"; import WhatsNewPanel from "@/components/Dashboard/WhatsNewPanel"; +import DashboardHeader from "@/components/Dashboard/DashboardHeader"; import PrimaryNav from "@/components/Nav/PrimaryNav"; import SubNav from "@/components/Nav/SubNav"; @@ -13,6 +14,7 @@ export default function DashboardLayout({
+ {/* pt-20 for PrimaryNav (80px) + pt-16 for SubNav (64px) = 144px diff --git a/components/Dashboard/DashboardHeader.tsx b/components/Dashboard/DashboardHeader.tsx index 07e253dd..256271f5 100644 --- a/components/Dashboard/DashboardHeader.tsx +++ b/components/Dashboard/DashboardHeader.tsx @@ -5,8 +5,12 @@ import { ArrowLeft, Star, Activity, Settings, Sparkles } from "lucide-react"; import { useWhatsNew } from "@/lib/context/WhatsNewContext"; import WhatsNewBadge from "@/components/Dashboard/WhatsNewBadge"; import { usePrefersReducedMotion } from "@/lib/hooks/usePrefersReducedMotion"; +import { useTitle } from "@/lib/hooks/useTitle"; +import QuickRefreshButton from "@/components/QuickRefreshButton"; const DashboardHeader = () => { + useTitle("Financial Dashboard", { depth: 0 }); + const { toggle } = useWhatsNew(); const prefersReducedMotion = usePrefersReducedMotion(); @@ -54,6 +58,9 @@ const DashboardHeader = () => { Insights + {/* Quick Refresh — refetches all active widgets without resetting filters */} + + {/* What's New Button */}