38 lines
2.6 KiB
Markdown
38 lines
2.6 KiB
Markdown
|
|
## Purpose
|
||
|
|
|
||
|
|
Provides a dedicated page for browsing all saved notes, grouped and sorted the way a browser history page is, and lets the user navigate back to a note's page from that list.
|
||
|
|
|
||
|
|
## ADDED Requirements
|
||
|
|
|
||
|
|
### Requirement: Notes grouped by day and sorted by recency
|
||
|
|
The notes-list page SHALL display all non-deleted notes grouped into sections by the calendar day of each note's last-updated timestamp, with sections ordered most-recent-day first, and notes within a section ordered by last-updated time descending.
|
||
|
|
|
||
|
|
#### Scenario: Notes updated today appear before older notes
|
||
|
|
- **WHEN** one note was last updated today and another was last updated yesterday
|
||
|
|
- **THEN** the notes-list page shows a section for today containing the first note above a section for the earlier day containing the second note
|
||
|
|
|
||
|
|
### Requirement: Entries show page title and favicon
|
||
|
|
Each entry in the notes-list SHALL display the page's captured title as its primary text, with the page's favicon, rather than the raw URL. If no title was captured for a note, the entry SHALL fall back to displaying the URL.
|
||
|
|
|
||
|
|
#### Scenario: Title shown instead of URL
|
||
|
|
- **WHEN** a note has a captured page title
|
||
|
|
- **THEN** its entry in the list shows that title as the primary text, not the raw URL
|
||
|
|
|
||
|
|
#### Scenario: Missing title falls back to URL
|
||
|
|
- **WHEN** a note has no captured page title
|
||
|
|
- **THEN** its entry in the list shows the note's URL as the primary text
|
||
|
|
|
||
|
|
### Requirement: Clicking an entry focuses an already-open matching tab
|
||
|
|
WHEN a user clicks a notes-list entry and a browser tab is already open at a URL that resolves to the same note key, the system SHALL bring that tab and its window into focus and open the side panel on it showing that note, without opening a new tab or navigating any tab.
|
||
|
|
|
||
|
|
#### Scenario: Existing tab is focused instead of duplicated
|
||
|
|
- **WHEN** the note's page is already open in another tab and the user clicks its entry in the notes list
|
||
|
|
- **THEN** that existing tab becomes the active tab, its window is brought to the front, and its side panel opens showing the note, with no new tab created
|
||
|
|
|
||
|
|
### Requirement: Clicking an entry navigates the current tab when no match exists
|
||
|
|
WHEN a user clicks a notes-list entry and no open tab currently resolves to that note's key, the system SHALL navigate the tab currently showing the notes-list page to the note's URL and open the side panel on it showing that note.
|
||
|
|
|
||
|
|
#### Scenario: No existing tab is open for the note
|
||
|
|
- **WHEN** the user clicks an entry for a note whose page is not open in any tab
|
||
|
|
- **THEN** the tab that was showing the notes-list page navigates to that note's URL and its side panel opens with that note loaded
|