Feat v0.4.6 sidebar restructure
All checks were successful
CI/CD / detect-changes (pull_request) Successful in 4s
CI/CD / test-frontend (pull_request) Successful in 5s
CI/CD / test-go-pg (pull_request) Successful in 2m33s
CI/CD / test-sqlite (pull_request) Successful in 2m58s
CI/CD / build-and-deploy (pull_request) Successful in 1m16s
All checks were successful
CI/CD / detect-changes (pull_request) Successful in 4s
CI/CD / test-frontend (pull_request) Successful in 5s
CI/CD / test-go-pg (pull_request) Successful in 2m33s
CI/CD / test-sqlite (pull_request) Successful in 2m58s
CI/CD / build-and-deploy (pull_request) Successful in 1m16s
Restructure the notes sidebar with a two-tab header (Notes / Outline) and relocate the document outline from the editor-side panel into the sidebar's Outline tab with active heading tracking. - Add SidebarTabs component with Notes/Outline tabs; Outline disabled when no note is selected - Add SidebarOutline component with nested heading hierarchy (H1→H2→H3), depth indentation, and click-to-scroll - Add RAF-throttled scroll listener for active heading highlighting based on scroll position (preview getBoundingClientRect / CM6 viewport) - Lift headings, scrollToHeading, and activeHeadingIdx state to NotesApp via EditorPane callback props - Remove old DocumentOutline component and .doc-outline CSS - Auto-reset to Notes tab when active note is deleted - Bump notes package to v0.7.0 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
30
CHANGELOG.md
30
CHANGELOG.md
@@ -2,6 +2,36 @@
|
||||
|
||||
All notable changes to Switchboard Core are documented here.
|
||||
|
||||
## v0.4.6 — Sidebar Restructure
|
||||
|
||||
### Added
|
||||
|
||||
- **Sidebar tabs**: Two-tab header ("Notes" / "Outline") replaces the static
|
||||
sidebar header. Notes tab contains folder tree, tag filter, search, and note
|
||||
list. Outline tab shows the document heading tree for the active note.
|
||||
Outline tab disabled (grayed) when no note is selected.
|
||||
- **Sidebar outline**: Document outline relocated from editor-side panel into
|
||||
the sidebar's Outline tab. Nested heading hierarchy (H1→H2→H3) with depth
|
||||
indentation via `padding-left`. Click heading scrolls to it in both preview
|
||||
and CM6 editor modes.
|
||||
- **Active heading tracking**: Scroll listener (RAF-throttled) highlights the
|
||||
current heading in the sidebar outline based on scroll position. Uses
|
||||
`getBoundingClientRect()` in preview/split mode and CM6 viewport line in
|
||||
edit mode.
|
||||
|
||||
### Changed
|
||||
|
||||
- Notes package version bumped from 0.6.0 to 0.7.0.
|
||||
- `EditorPane` exposes headings, scroll function, and active heading index to
|
||||
parent via callback props (`onHeadingsChange`, `scrollToHeadingRef`,
|
||||
`onActiveHeadingChange`).
|
||||
- Sidebar auto-resets to Notes tab when active note is deleted.
|
||||
|
||||
### Removed
|
||||
|
||||
- Old `DocumentOutline` component and `.doc-outline` CSS styles (replaced by
|
||||
sidebar outline).
|
||||
|
||||
## v0.4.5 — Editor Modes + Document Outline
|
||||
|
||||
### Added
|
||||
|
||||
Reference in New Issue
Block a user