mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-05-31 20:44:42 +00:00
e9e10e4ffa
PR #212 added `trailingSlash: true` to next.config.mjs so GitHub Pages would serve the locale roots correctly. That changed what usePathname() returns at runtime — `/docs/.../page/` with a trailing slash — but the sidebar config (sidebarItems in DocSidebar.tsx) still declares hrefs without the trailing slash. Every equality check `pathname === item.href` therefore returned false on every page, and two things broke: 1. components/ui/doc-navigation.tsx — the Previous/Next bar at the bottom of every doc page. With `findIndex` returning -1, `prevPage` was null and `nextPage = allPages[0]` (Introduction). So every doc page showed "Next: Introduction" regardless of where the user was. 2. components/DocSidebar.tsx — four comparisons that drove (a) the highlighted active item in the sidebar, (b) the active-section auto-open when navigating directly to a nested page, (c) the leaf-item highlight when the item has no submenu. All silently broken on every page. Fix: a `stripTrailingSlash` helper plus a derived `currentPath` that is compared instead of the raw `pathname`. `collectHrefs(...)` results are also normalized at the point of comparison so the `.includes(currentPath)` checks behave correctly. Verified locally with `npm run build` — 232 pages indexed, no errors. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>