Commit Graph

15 Commits

Author SHA1 Message Date
hypercross d78d15d8ec fix(FileTree): use base path for anchor navigation 2026-07-14 15:23:30 +08:00
hypercross 722a8110e6 feat(file-tree): use anchor tags for better navigation
Convert div elements to anchor tags in FileTree and HeadingNode to
enable native browser features like middle-click to open in new tabs.
The implementation preserves SPA navigation for left-clicks while
ensuring search parameters are preserved in the href.
2026-07-12 10:46:35 +08:00
hypercross 5097aba842 refactor: implement scroll container context and flex layout
Switch from fixed positioning to a flexbox-based layout for the
main application structure. This introduces a `ScrollContainerCtx` to
provide access to the main scrollable element, allowing child
components like `FileTree` and `RevealManager` to perform accurate
scrolling and positioning relative to the container instead of the
window.

refactor: set JournalPanel height to full
2026-07-08 15:03:31 +08:00
hypercross 779722fe85 refactor: preserve URL search params during navigation
Introduce `useNavigateWithParams` to ensure that existing URL search
parameters are maintained when navigating between pages. This is
applied to the Article component, FileTree, and journal links to
prevent losing state (like session or player info) during client-side
navigation.

Also intercepts markdown anchor links in the Article component to use
client-side navigation.
2026-07-07 23:26:44 +08:00
hypercross adf28a7cf1 feat: implement visibility logic for sidebar nodes
Add support for hiding file tree nodes and headings based on path
revelation status. This allows the sidebar to dynamically show only
the relevant parts of the file structure and table of contents.
2026-07-07 09:27:04 +08:00
hyper 9794184e98 style(file-tree): Reformat JSX and fix class name 2026-06-30 20:26:11 +08:00
hypercross 33d29252dc refactor: more toc 2026-03-25 11:00:32 +08:00
hypercross a7477666c7 refactor: toc behaviour 2026-03-25 10:49:15 +08:00
hypercross 3aaa991bd8 refactor: toc toggle 2026-03-25 10:26:06 +08:00
hypercross d19401373f fix: slugging 2026-03-19 11:26:59 +08:00
hypercross 13007c8fa4 feat: gfm heading id 2026-03-02 13:43:10 +08:00
hypercross b737e9f4ea feat: mermaid 2026-03-02 11:03:51 +08:00
hypercross e57e09ae05 fix: misc 2026-02-26 16:35:57 +08:00
hypercross b6718927c7 fix: active 2026-02-26 15:16:13 +08:00
hypercross c923d80d30 refactor: FileTree 2026-02-26 15:04:17 +08:00