mirror of
https://github.com/callumalpass/tasknotes.git
synced 2026-07-22 12:50:26 +00:00
fix: add missing getNextStatus mock in TaskCard context menu tests
This commit is contained in:
parent
00cc503384
commit
8644a6e3d0
3 changed files with 179 additions and 176 deletions
177
docs/releases/4.1.0.md
Normal file
177
docs/releases/4.1.0.md
Normal file
|
|
@ -0,0 +1,177 @@
|
|||
# TaskNotes 4.1.0
|
||||
|
||||
## Added
|
||||
|
||||
- (#1245), (#793) Added custom icon support for task statuses
|
||||
- Configure a Lucide icon name (e.g., `check`, `circle`, `clock`) per status in Settings → Task Properties → Task Statuses
|
||||
- Icons display instead of the colored dot, inheriting the status color
|
||||
- Browse available icons at [lucide.dev](https://lucide.dev)
|
||||
- Improves accessibility by allowing shape-based status differentiation
|
||||
- Thanks to @3Fish for the feature request and @Raonmir2, @aubreyz, @prayidae, and @anareaty for the discussion on accessibility and icon-based indicators
|
||||
|
||||
- (#1259) Added [Property Types Reference](../settings/property-types-reference.md) documentation
|
||||
- Documents expected data types (text, list, date, number) for all frontmatter properties
|
||||
- Includes format specifications, examples, and a complete YAML reference
|
||||
- Thanks to @Oblique82 for the suggestion
|
||||
|
||||
- (#1248) Added formula property support for sub-grouping in Bases Task List view
|
||||
- Formula properties (e.g., `formula.myFormula`) now appear in the Sub-group by dropdown
|
||||
- Supports all Bases Value types including strings, numbers, booleans, dates, and lists
|
||||
- Thanks to @prayidae for the feature request
|
||||
|
||||
- (#1070) Added formula property support for swimlanes in Bases Kanban view
|
||||
- Formula properties now appear in the Swim Lane dropdown
|
||||
- Fixed swimlanes displaying empty when grouping by formula properties
|
||||
- Note: Dragging tasks between formula-based columns/swimlanes is disabled (formulas are computed values)
|
||||
- Thanks to @cathywu for reporting
|
||||
|
||||
- (#1010), (#1126) Added batch task selection and editing in Task List and Kanban views
|
||||
- Shift+click to select multiple tasks
|
||||
- Right-click selected tasks to open batch context menu
|
||||
- Batch operations: change status, priority, due date, scheduled date, archive, delete
|
||||
- Drag multiple selected cards in Kanban to move them together
|
||||
- Click the selection count indicator to clear selection
|
||||
- Thanks to @jalooc and @solidabstract for the feature requests
|
||||
|
||||
- (#1207) Added inline search box to Bases views (Task List, Kanban, Calendar)
|
||||
- Enable via "Enable search box" toggle in view settings
|
||||
- Searches across title, status, priority, tags, contexts, projects, and visible custom properties
|
||||
- Press Escape or click × to clear search
|
||||
- Thanks to @renatomen for the PR
|
||||
|
||||
- (#363) Added "Create or open task" command with NLP-based quick task creation
|
||||
- Open via command palette or assign a hotkey
|
||||
- Search existing tasks or type natural language to create new tasks (e.g., "Buy groceries tomorrow #shopping")
|
||||
- Press Enter to select an existing task, Shift+Enter to create a new task
|
||||
- Real-time preview shows parsed title, due date, priority, tags, and other metadata
|
||||
- Can be used when adding sub-tasks to create sub-tasks on-the-fly
|
||||
- Thanks to @luciolebrillante for the feature request
|
||||
|
||||
- (#1044), (#1222) Added unsaved changes confirmation when closing task edit modal
|
||||
- Detects modifications to any field (title, dates, priority, tags, etc.)
|
||||
- Shows confirmation dialog with Save/Discard/Keep Editing options
|
||||
- Prevents accidental data loss from clicking outside the modal or pressing Escape
|
||||
- Thanks to @renatomen for the PR and @0-BSCode for the feature request
|
||||
|
||||
- (#904) Added visual highlighting for overdue and past dates on task cards
|
||||
- Overdue due dates now display in red text
|
||||
- Past scheduled dates now display in blue text
|
||||
- Thanks to @ras0q for the suggestion
|
||||
|
||||
- (#1164) Added `priorityWeight` formula to all default Bases templates for priority-based sorting
|
||||
- Formula maps each priority value to a numeric weight based on your custom priority configuration
|
||||
- Sort by `formula.priorityWeight` in ascending order to get highest priority tasks first
|
||||
- Example: `if(priority=="high",0,if(priority=="normal",1,if(priority=="low",2,999)))`
|
||||
- Thanks to @jhedlund for the suggestion
|
||||
|
||||
- (#1257), (#1064) Added configurable event stacking options for Bases Calendar view
|
||||
- **Allow events to overlap**: Toggle whether timed events visually overlap or display side-by-side in week/day views
|
||||
- **Max stacked events**: Limit horizontal event stacking in week/day views (0 = unlimited)
|
||||
- **Max events per day**: Limit events shown per day cell in month view (0 = auto based on cell height)
|
||||
- **Max event rows per day**: Limit event rows per day cell in month view (0 = unlimited)
|
||||
- Configure per-view in the Bases Calendar view settings under Layout
|
||||
- Thanks to @3zra47 and @hasanyilmaz for the feature requests
|
||||
|
||||
## Changed
|
||||
|
||||
- Improved inline task conversion to merge TasksPlugin and NLP parsing results
|
||||
- Previously, if a task had hashtags (e.g., `- [ ] Buy milk tomorrow #groceries`), NLP parsing was skipped entirely
|
||||
- Now NLP always parses the clean title to extract dates/times, then merges with TasksPlugin-extracted metadata
|
||||
- TasksPlugin explicit values (emoji dates like 📅) take priority over NLP-inferred values
|
||||
- Tags, contexts, and projects from both sources are combined and deduplicated
|
||||
|
||||
- Polished task card styling for a more native Obsidian look
|
||||
- Simplified hover and focus states to use native Obsidian colors
|
||||
- Removed blur filter and shadows from metadata pills
|
||||
- Fixed subtask chevron vertical alignment with status dot
|
||||
- Reduced swimlane label column width in Kanban view
|
||||
|
||||
- (#1151) Increased mini calendar heatmap color intensity for better visibility
|
||||
- Days with notes now show more noticeable colors, especially with low note counts
|
||||
- Intensity levels increased from 10/25/45/65% to 25/40/55/70%
|
||||
- Thanks to @arreme for the suggestion
|
||||
|
||||
## Fixed
|
||||
|
||||
- (#1271) Fixed custom user fields not appearing in task modals after creation
|
||||
- New custom fields are now automatically added to both creation and edit modals
|
||||
- Deleting a custom field also removes it from modal configuration
|
||||
- Updating a field's display name syncs to the modal configuration
|
||||
- Thanks to @craziedde for reporting
|
||||
|
||||
- (#1256) Fixed links in custom properties not rendering as clickable in task cards
|
||||
- Wikilinks (`[[Note]]`) now render correctly in Bases views
|
||||
- Markdown links (`[text](url)`) now render correctly in all views
|
||||
- Links in list-type properties are also properly rendered
|
||||
- Thanks to @3zra47 for reporting
|
||||
|
||||
- (#1157) Fixed inline task embeds breaking layout when placed in indented bullet lists
|
||||
- Task titles now wrap naturally within line boundaries instead of forcing the entire card to a new line
|
||||
- Metadata (dates, tags, etc.) stays inline when space permits, with horizontal scrolling on hover when needed
|
||||
- Thanks to @3zra47 for reporting
|
||||
|
||||
- (#1241) Fixed deleting custom priorities in settings removing the wrong priority when multiple priorities exist
|
||||
- Thanks to @Anthonyhunter100 for reporting
|
||||
|
||||
- (#1165) Fixed Kanban view grouping by list properties (contexts, tags, projects) treating multiple values as a single combined column
|
||||
- Tasks with multiple values now appear in each individual column (e.g., a task with `contexts: [work, call]` appears in both "work" and "call" columns)
|
||||
- Added "Show items in multiple columns" option (enabled by default) to control this behavior
|
||||
- Fixed drag-and-drop to properly add/remove individual values instead of replacing the entire list
|
||||
- Fixed swimlane mode to also respect list property explosion
|
||||
- Thanks to @dictionarymouse for reporting
|
||||
|
||||
- (#1217) Fixed inconsistent Ctrl+Click/Cmd+Click behavior for opening notes in new tabs
|
||||
- Note cards and internal links now properly support Ctrl/Cmd+Click to open in new tab
|
||||
- Added middle-click support for opening in new tab
|
||||
- Thanks to @diegomarzaa for reporting
|
||||
|
||||
- (#1265) Fixed task edit modal corrupting markdown-style project links on save
|
||||
- Links like `[Project Name](path.md)` were being wrapped in extra brackets: `[[[Project Name](path.md)]]`
|
||||
- Plain text project names are now preserved as-is instead of being converted to wikilinks
|
||||
- Markdown-style project links now resolve properly and display as linked (not orange/unresolved)
|
||||
- Thanks to @minchinweb for reporting
|
||||
|
||||
- (#1266) Fixed Kanban view scroll position resetting to top of column after any change
|
||||
- Clicking status dots, priority, or other task properties no longer jumps the column back to top
|
||||
- Scroll position is now preserved for both regular columns and swimlane cells
|
||||
- Thanks to @essouflenfer for reporting
|
||||
|
||||
- (#485), (#1221), (#1262) Fixed NLP parser not recognizing non-ASCII characters in tags, contexts, and projects
|
||||
- Tags like `#investigación` were being truncated at accented characters (e.g., `#investigaci`)
|
||||
- Non-Latin scripts (Chinese, Cyrillic, Japanese, etc.) were not recognized at all (e.g., `@家`, `#杂事`, `@ознакомиться`)
|
||||
- Parser now uses Unicode-aware regex patterns to support all languages and scripts
|
||||
- Thanks to @Arachnidai, @fidelaznar, and @qian1ing for reporting
|
||||
|
||||
- (#1249) Fixed project preview in task creation modal showing quadruple brackets (`[[[[Project]]]]`)
|
||||
- Projects selected from autocomplete were being wrapped in extra wikilink brackets in the preview display
|
||||
- Thanks to @2vzqwz8tvg-png for reporting
|
||||
|
||||
- (#1249) Fixed custom priority ordering in settings being unclear and non-intuitive
|
||||
- Priority cards are now draggable to reorder (like statuses)
|
||||
- Priorities are displayed in weight order (lowest to highest priority)
|
||||
- New priorities are added at the end (highest priority) instead of with a fixed weight
|
||||
- Thanks to @2vzqwz8tvg-png for reporting
|
||||
|
||||
- (#1272) Fixed recurrence anchor not being saved when set to "completion" during task creation
|
||||
- Selecting "completion" as the recurrence anchor now correctly persists to the task frontmatter
|
||||
- Thanks to @blaxcky for reporting
|
||||
|
||||
- (#1128) Fixed NLP parser not allowing slashes in context names
|
||||
- Contexts like `@shopping/groceries` were being split into `@shopping` and `/groceries`
|
||||
- Hierarchical context names now work the same as tags and projects
|
||||
- Thanks to @wealthychef1 for reporting
|
||||
|
||||
- (#1170) Fixed `dateCreated` and `dateModified` not using custom property names when creating notes from calendar events
|
||||
- Notes created from ICS events now respect the field mapping configured in settings
|
||||
- Thanks to @maddie-m for reporting
|
||||
|
||||
- (#1171) Fixed calendar event toggles not responding to changes after initial load
|
||||
- Toggling "Show scheduled tasks", "Show due tasks", and other event filters now correctly updates the calendar
|
||||
- Previously, changing these toggles had no effect until the view was reloaded
|
||||
- Thanks to @hangryscribe3 for reporting
|
||||
|
||||
- (#1198) Fixed project links being created relative to the wrong file when editing from Bases views
|
||||
- Relative paths in project links are now correctly resolved relative to the task note file
|
||||
- Previously, editing a task from a Bases view would create project links relative to the `.base` file
|
||||
- Thanks to @minchinweb for reporting
|
||||
|
||||
|
|
@ -24,178 +24,3 @@ Example:
|
|||
|
||||
-->
|
||||
|
||||
## Added
|
||||
|
||||
- (#1245), (#793) Added custom icon support for task statuses
|
||||
- Configure a Lucide icon name (e.g., `check`, `circle`, `clock`) per status in Settings → Task Properties → Task Statuses
|
||||
- Icons display instead of the colored dot, inheriting the status color
|
||||
- Browse available icons at [lucide.dev](https://lucide.dev)
|
||||
- Improves accessibility by allowing shape-based status differentiation
|
||||
- Thanks to @3Fish for the feature request and @Raonmir2, @aubreyz, @prayidae, and @anareaty for the discussion on accessibility and icon-based indicators
|
||||
|
||||
- (#1259) Added [Property Types Reference](../settings/property-types-reference.md) documentation
|
||||
- Documents expected data types (text, list, date, number) for all frontmatter properties
|
||||
- Includes format specifications, examples, and a complete YAML reference
|
||||
- Thanks to @Oblique82 for the suggestion
|
||||
|
||||
- (#1248) Added formula property support for sub-grouping in Bases Task List view
|
||||
- Formula properties (e.g., `formula.myFormula`) now appear in the Sub-group by dropdown
|
||||
- Supports all Bases Value types including strings, numbers, booleans, dates, and lists
|
||||
- Thanks to @prayidae for the feature request
|
||||
|
||||
- (#1070) Added formula property support for swimlanes in Bases Kanban view
|
||||
- Formula properties now appear in the Swim Lane dropdown
|
||||
- Fixed swimlanes displaying empty when grouping by formula properties
|
||||
- Note: Dragging tasks between formula-based columns/swimlanes is disabled (formulas are computed values)
|
||||
- Thanks to @cathywu for reporting
|
||||
|
||||
- (#1010), (#1126) Added batch task selection and editing in Task List and Kanban views
|
||||
- Shift+click to select multiple tasks
|
||||
- Right-click selected tasks to open batch context menu
|
||||
- Batch operations: change status, priority, due date, scheduled date, archive, delete
|
||||
- Drag multiple selected cards in Kanban to move them together
|
||||
- Click the selection count indicator to clear selection
|
||||
- Thanks to @jalooc and @solidabstract for the feature requests
|
||||
|
||||
- (#1207) Added inline search box to Bases views (Task List, Kanban, Calendar)
|
||||
- Enable via "Enable search box" toggle in view settings
|
||||
- Searches across title, status, priority, tags, contexts, projects, and visible custom properties
|
||||
- Press Escape or click × to clear search
|
||||
- Thanks to @renatomen for the PR
|
||||
|
||||
- (#363) Added "Create or open task" command with NLP-based quick task creation
|
||||
- Open via command palette or assign a hotkey
|
||||
- Search existing tasks or type natural language to create new tasks (e.g., "Buy groceries tomorrow #shopping")
|
||||
- Press Enter to select an existing task, Shift+Enter to create a new task
|
||||
- Real-time preview shows parsed title, due date, priority, tags, and other metadata
|
||||
- Can be used when adding sub-tasks to create sub-tasks on-the-fly
|
||||
- Thanks to @luciolebrillante for the feature request
|
||||
|
||||
- (#1044), (#1222) Added unsaved changes confirmation when closing task edit modal
|
||||
- Detects modifications to any field (title, dates, priority, tags, etc.)
|
||||
- Shows confirmation dialog with Save/Discard/Keep Editing options
|
||||
- Prevents accidental data loss from clicking outside the modal or pressing Escape
|
||||
- Thanks to @renatomen for the PR and @0-BSCode for the feature request
|
||||
|
||||
- (#904) Added visual highlighting for overdue and past dates on task cards
|
||||
- Overdue due dates now display in red text
|
||||
- Past scheduled dates now display in blue text
|
||||
- Thanks to @ras0q for the suggestion
|
||||
|
||||
- (#1164) Added `priorityWeight` formula to all default Bases templates for priority-based sorting
|
||||
- Formula maps each priority value to a numeric weight based on your custom priority configuration
|
||||
- Sort by `formula.priorityWeight` in ascending order to get highest priority tasks first
|
||||
- Example: `if(priority=="high",0,if(priority=="normal",1,if(priority=="low",2,999)))`
|
||||
- Thanks to @jhedlund for the suggestion
|
||||
|
||||
- (#1257), (#1064) Added configurable event stacking options for Bases Calendar view
|
||||
- **Allow events to overlap**: Toggle whether timed events visually overlap or display side-by-side in week/day views
|
||||
- **Max stacked events**: Limit horizontal event stacking in week/day views (0 = unlimited)
|
||||
- **Max events per day**: Limit events shown per day cell in month view (0 = auto based on cell height)
|
||||
- **Max event rows per day**: Limit event rows per day cell in month view (0 = unlimited)
|
||||
- Configure per-view in the Bases Calendar view settings under Layout
|
||||
- Thanks to @3zra47 and @hasanyilmaz for the feature requests
|
||||
|
||||
## Changed
|
||||
|
||||
- Improved inline task conversion to merge TasksPlugin and NLP parsing results
|
||||
- Previously, if a task had hashtags (e.g., `- [ ] Buy milk tomorrow #groceries`), NLP parsing was skipped entirely
|
||||
- Now NLP always parses the clean title to extract dates/times, then merges with TasksPlugin-extracted metadata
|
||||
- TasksPlugin explicit values (emoji dates like 📅) take priority over NLP-inferred values
|
||||
- Tags, contexts, and projects from both sources are combined and deduplicated
|
||||
|
||||
- Polished task card styling for a more native Obsidian look
|
||||
- Simplified hover and focus states to use native Obsidian colors
|
||||
- Removed blur filter and shadows from metadata pills
|
||||
- Fixed subtask chevron vertical alignment with status dot
|
||||
- Reduced swimlane label column width in Kanban view
|
||||
|
||||
- (#1151) Increased mini calendar heatmap color intensity for better visibility
|
||||
- Days with notes now show more noticeable colors, especially with low note counts
|
||||
- Intensity levels increased from 10/25/45/65% to 25/40/55/70%
|
||||
- Thanks to @arreme for the suggestion
|
||||
|
||||
## Fixed
|
||||
|
||||
- (#1271) Fixed custom user fields not appearing in task modals after creation
|
||||
- New custom fields are now automatically added to both creation and edit modals
|
||||
- Deleting a custom field also removes it from modal configuration
|
||||
- Updating a field's display name syncs to the modal configuration
|
||||
- Thanks to @craziedde for reporting
|
||||
|
||||
- (#1256) Fixed links in custom properties not rendering as clickable in task cards
|
||||
- Wikilinks (`[[Note]]`) now render correctly in Bases views
|
||||
- Markdown links (`[text](url)`) now render correctly in all views
|
||||
- Links in list-type properties are also properly rendered
|
||||
- Thanks to @3zra47 for reporting
|
||||
|
||||
- (#1157) Fixed inline task embeds breaking layout when placed in indented bullet lists
|
||||
- Task titles now wrap naturally within line boundaries instead of forcing the entire card to a new line
|
||||
- Metadata (dates, tags, etc.) stays inline when space permits, with horizontal scrolling on hover when needed
|
||||
- Thanks to @3zra47 for reporting
|
||||
|
||||
- (#1241) Fixed deleting custom priorities in settings removing the wrong priority when multiple priorities exist
|
||||
- Thanks to @Anthonyhunter100 for reporting
|
||||
|
||||
- (#1165) Fixed Kanban view grouping by list properties (contexts, tags, projects) treating multiple values as a single combined column
|
||||
- Tasks with multiple values now appear in each individual column (e.g., a task with `contexts: [work, call]` appears in both "work" and "call" columns)
|
||||
- Added "Show items in multiple columns" option (enabled by default) to control this behavior
|
||||
- Fixed drag-and-drop to properly add/remove individual values instead of replacing the entire list
|
||||
- Fixed swimlane mode to also respect list property explosion
|
||||
- Thanks to @dictionarymouse for reporting
|
||||
|
||||
- (#1217) Fixed inconsistent Ctrl+Click/Cmd+Click behavior for opening notes in new tabs
|
||||
- Note cards and internal links now properly support Ctrl/Cmd+Click to open in new tab
|
||||
- Added middle-click support for opening in new tab
|
||||
- Thanks to @diegomarzaa for reporting
|
||||
|
||||
- (#1265) Fixed task edit modal corrupting markdown-style project links on save
|
||||
- Links like `[Project Name](path.md)` were being wrapped in extra brackets: `[[[Project Name](path.md)]]`
|
||||
- Plain text project names are now preserved as-is instead of being converted to wikilinks
|
||||
- Markdown-style project links now resolve properly and display as linked (not orange/unresolved)
|
||||
- Thanks to @minchinweb for reporting
|
||||
|
||||
- (#1266) Fixed Kanban view scroll position resetting to top of column after any change
|
||||
- Clicking status dots, priority, or other task properties no longer jumps the column back to top
|
||||
- Scroll position is now preserved for both regular columns and swimlane cells
|
||||
- Thanks to @essouflenfer for reporting
|
||||
|
||||
- (#485), (#1221), (#1262) Fixed NLP parser not recognizing non-ASCII characters in tags, contexts, and projects
|
||||
- Tags like `#investigación` were being truncated at accented characters (e.g., `#investigaci`)
|
||||
- Non-Latin scripts (Chinese, Cyrillic, Japanese, etc.) were not recognized at all (e.g., `@家`, `#杂事`, `@ознакомиться`)
|
||||
- Parser now uses Unicode-aware regex patterns to support all languages and scripts
|
||||
- Thanks to @Arachnidai, @fidelaznar, and @qian1ing for reporting
|
||||
|
||||
- (#1249) Fixed project preview in task creation modal showing quadruple brackets (`[[[[Project]]]]`)
|
||||
- Projects selected from autocomplete were being wrapped in extra wikilink brackets in the preview display
|
||||
- Thanks to @2vzqwz8tvg-png for reporting
|
||||
|
||||
- (#1249) Fixed custom priority ordering in settings being unclear and non-intuitive
|
||||
- Priority cards are now draggable to reorder (like statuses)
|
||||
- Priorities are displayed in weight order (lowest to highest priority)
|
||||
- New priorities are added at the end (highest priority) instead of with a fixed weight
|
||||
- Thanks to @2vzqwz8tvg-png for reporting
|
||||
|
||||
- (#1272) Fixed recurrence anchor not being saved when set to "completion" during task creation
|
||||
- Selecting "completion" as the recurrence anchor now correctly persists to the task frontmatter
|
||||
- Thanks to @blaxcky for reporting
|
||||
|
||||
- (#1128) Fixed NLP parser not allowing slashes in context names
|
||||
- Contexts like `@shopping/groceries` were being split into `@shopping` and `/groceries`
|
||||
- Hierarchical context names now work the same as tags and projects
|
||||
- Thanks to @wealthychef1 for reporting
|
||||
|
||||
- (#1170) Fixed `dateCreated` and `dateModified` not using custom property names when creating notes from calendar events
|
||||
- Notes created from ICS events now respect the field mapping configured in settings
|
||||
- Thanks to @maddie-m for reporting
|
||||
|
||||
- (#1171) Fixed calendar event toggles not responding to changes after initial load
|
||||
- Toggling "Show scheduled tasks", "Show due tasks", and other event filters now correctly updates the calendar
|
||||
- Previously, changing these toggles had no effect until the view was reloaded
|
||||
- Thanks to @hangryscribe3 for reporting
|
||||
|
||||
- (#1198) Fixed project links being created relative to the wrong file when editing from Bases views
|
||||
- Relative paths in project links are now correctly resolved relative to the task note file
|
||||
- Previously, editing a task from a Bases view would create project links relative to the `.base` file
|
||||
- Thanks to @minchinweb for reporting
|
||||
|
||||
|
|
|
|||
|
|
@ -42,7 +42,8 @@ describe('TaskCard Context Menu Event Handling', () => {
|
|||
isCompletedStatus: jest.fn().mockReturnValue(false),
|
||||
getStatusConfig: jest.fn().mockReturnValue({ color: '#666666' }),
|
||||
getStatusIcon: jest.fn().mockReturnValue('circle'),
|
||||
getStatusColor: jest.fn().mockReturnValue('#666666')
|
||||
getStatusColor: jest.fn().mockReturnValue('#666666'),
|
||||
getNextStatus: jest.fn().mockReturnValue('done')
|
||||
},
|
||||
expandedProjectsService: {
|
||||
isExpanded: jest.fn().mockReturnValue(false)
|
||||
|
|
|
|||
Loading…
Reference in a new issue