Commit graph

486 commits

Author SHA1 Message Date
callumalpass
fc6a1fbe1d Add tasknotes-spec as submodule and wire up docs nav
Add the specification repo as a git submodule at docs/spec and add
a Specification nav section in mkdocs.yml pointing at all spec files.
2026-03-29 19:31:09 +11:00
callumalpass
72421907a7 Add modal task cards for subtasks and dependencies 2026-03-29 19:31:09 +11:00
callumalpass
9298cc8d59 Document TaskNotes Obsidian CLI commands 2026-03-29 19:31:09 +11:00
callumalpass
2d17c03727 Add TaskNotes CLI status and pomodoro commands 2026-03-29 19:31:09 +11:00
callumalpass
61bd7b1af4 Refactor plugin runtime coordination 2026-03-29 19:31:01 +11:00
callumalpass
da140a4387 Add TaskNotes CLI capture command 2026-03-29 19:30:42 +11:00
callumalpass
7a1e25588f Handle deferred leaves when activating views 2026-03-29 19:30:20 +11:00
callumalpass
d3203b203f Merge pull request #1679 from Lorite/fix_1678_open_the_timeblock_modal_with_the_task_title_prefilled_from_the_task_context_menu
# Conflicts:
#	docs/releases/unreleased.md
2026-03-29 10:25:57 +11:00
callumalpass
3249a3c1dd docs: restructure unreleased notes for drag-to-reorder with contributor credits 2026-03-29 09:27:46 +11:00
Lorite
c3d69d33f6 Fix a bug about resetting the calendar view to today incorrectly 2026-03-29 09:22:50 +11:00
callumalpass
4ed824adb3 Merge branch 'roadmap/refactor-tasknotes' 2026-03-29 08:33:08 +11:00
callumalpass
7a83c25937 refactor: extract task modal editor and list helpers 2026-03-29 08:26:09 +11:00
callumalpass
970eb72464 refactor: extract task card and modal helpers 2026-03-29 07:55:37 +11:00
callumalpass
a8e8b29810 refactor: extract plugin bootstrap and architecture docs 2026-03-29 07:42:09 +11:00
callumalpass
481aae4397 refactor: localize manual ordering copy 2026-03-29 07:35:51 +11:00
callumalpass
26712c4f7d fix: polish manual ordering drag reorder 2026-03-29 07:35:51 +11:00
callumalpass
9fed004fc7 change: default manual order field to tasknotes_order 2026-03-29 07:33:57 +11:00
callumalpass
83c14597a5 fix: rebalance oversized drag reorder ranks 2026-03-29 07:33:57 +11:00
callumalpass
3d379dccf2 fix: harden drag reorder planning and preview 2026-03-29 07:33:57 +11:00
callumalpass
3d4f69087a refactor: clean up task card presentation plumbing 2026-03-29 07:20:09 +11:00
callumalpass
c3863baacc chore: checkpoint current tasknotes state 2026-03-25 08:08:28 +11:00
Lorite
dd38ef969f Add an "Add task" action to Create Timeblock and Edit Timeblock to select a task and prefill the title 2026-03-08 16:15:04 +01:00
Lorite
6538ed12c2 fix: ensure title auto-fills from selected attachment in Create and Edit Timeblock modals 2026-03-08 16:07:35 +01:00
Lorite
17f1463ee6 feat: add setting for attachment search order in timeblock modal 2026-03-08 16:04:54 +01:00
Lorite
76b48a2cd5 In Edit Timeblock, adding an attachment now auto-fills the title when the title is empty 2026-03-08 15:51:55 +01:00
Lorite
dbb2cd2f29 Open the timeblock modal with the task title prefilled from the task context menu 2026-03-06 11:55:29 +01:00
callumalpass
26ee5898dd fix(mdbase): add generated date fields to task schema 2026-03-04 06:13:43 +11:00
callumalpass
3e40202a09 docs: fix custom-site internal link routing 2026-02-21 13:57:07 +11:00
callumalpass
735706ead4 docs: tighten accuracy, fix cross-links, and consolidate unreleased notes 2026-02-21 13:41:32 +11:00
callumalpass
917522f7c6 fix: include docs-builder js in repo for docs deploy 2026-02-21 11:57:59 +11:00
callumalpass
d63cef40ff docs: fix docs check drift and add prominent GitHub link 2026-02-21 09:21:38 +11:00
callumalpass
b0cd74f1ad docs: update docs content and docs build tooling 2026-02-21 08:52:08 +11:00
callumalpass
5d5abc2d88 fix(issue-1630): align TaskNote widget with readable line width 2026-02-21 08:46:42 +11:00
callumalpass
e30ba985b8 chore: checkpoint existing local changes 2026-02-17 22:28:49 +11:00
callumalpass
3be768aa24 release 4.4.0 2026-02-17 21:56:59 +11:00
callumalpass
2fb2ea5db7 docs: add unreleased note for PR #1608 title frontmatter fix 2026-02-17 21:24:35 +11:00
callumalpass
69b8ae2506 feat: add checklist progress task-card property with Bases support 2026-02-17 20:02:45 +11:00
callumalpass
f6450c8c3e Fix time-entry timezone consistency and remove persisted durations 2026-02-16 08:04:27 +11:00
callumalpass
7963b827bb fix(mdbase): preserve existing mdbase.yaml instead of overwriting
mdbase.yaml content is static and doesn't depend on settings, so
regenerating it on every settings change would clobber any user
customisations (extra excludes, description changes, etc.). Now
only _types/task.md is regenerated; mdbase.yaml is created once
and left alone thereafter.
2026-02-15 22:21:13 +11:00
callumalpass
5b35f9d63c feat(mdbase): add tn_completed_values annotation to status field
Expose which status values count as completed in the mdbase spec,
allowing external tools to determine task completion without
hardcoding status names.
2026-02-15 20:14:07 +11:00
callumalpass
9843ec4c7e docs: add unreleased changelog entries 2026-02-15 19:11:05 +11:00
callumalpass
d6c1f0974a docs: add explanatory context and simplify tone 2026-02-15 15:41:12 +11:00
callumalpass
8cc2a85f36 Fix broken docs image links for CI docs:check 2026-02-15 15:25:36 +11:00
callumalpass
4f64d8e3cf release 4.3.3 2026-02-15 15:09:21 +11:00
callumalpass
51f85f3171 feat(calendar): add external calendar event creation from calendar view (#1548)
Add a "Create external calendar event" option to the calendar view's date
selection context menu. When a user clicks or drags to select a time slot
and has connected Google/Microsoft calendars, they can now create events
directly on those calendars via a new CalendarEventCreationModal.
2026-02-15 14:51:58 +11:00
callumalpass
8dab2bc773 feat(recurring): add setting to reset checkboxes on recurrence (#1549)
Add a new configurable setting that resets all checked markdown
checkboxes in a recurring task's body when it is completed and
rescheduled to its next occurrence.

- Add `resetCheckboxesOnRecurrence` setting (default: false)
- Implement checkbox reset in toggleRecurringTaskComplete()
- Add toggle in Settings > Features > Recurring Tasks
- Add i18n translations for all supported languages
2026-02-15 14:34:31 +11:00
callumalpass
c9f0c38267 fix(ui): sanitize status/priority values for CSS class names (#1584)
Task cards threw a DOMTokenList error when status values contained spaces
(e.g., "In Progress") because classList.add() doesn't accept tokens with
whitespace characters.

Added sanitizeForCssClass() helper that replaces non-alphanumeric characters
with hyphens and lowercases the string. Applied to both status and priority
CSS class construction in updateCardCompletionState().

Also includes a minor fix to use getUTC* methods in generateRecurringInstances()
for consistent timezone handling.
2026-02-15 14:22:51 +11:00
callumalpass
d2f1ad6c9d fix(oauth): auto-disconnect on irrecoverable token refresh errors (#1580)
When Google Calendar OAuth refresh token expires or is revoked, the
previous error handling threw generic "Request failed, status 400"
messages without helping users understand or fix the issue.

Changes:
- Add TokenRefreshError class for irrecoverable OAuth errors
- Detect invalid_grant/invalid_client errors in refreshToken()
- Auto-disconnect OAuth connection on irrecoverable errors
- Show actionable notice: "connection expired. Please reconnect..."
- Prevent repeated failed refresh attempts by clearing connection

This fixes the confusing error message users saw when their Google
Calendar sync stopped working after hours or days, which often happens
when the Google Cloud project is in Testing mode (7-day token expiry).
2026-02-15 14:20:37 +11:00
callumalpass
9f58230570 Add mdbase-tasknotes CLI documentation
New doc page covering the standalone mtn CLI: installation, setup with
existing vaults, NLP task creation, querying, time tracking, and a
comparison table explaining when to use mtn vs tasknotes-cli.
Also adds release note entry for the new tool.
2026-02-15 14:09:32 +11:00
callumalpass
291184cd56 docs: restructure task management guides and refresh screenshots
Split recurring tasks and reminders content into dedicated pages,
condense existing guides for clarity, and update all documentation
screenshots. Refactor e2e screenshot tests with shared openView()
helper and retry support. Refine MdbaseSpec field types (enum,
datetime, link) and replace MCPService @ts-expect-error workarounds
with bound tool pattern.
2026-02-15 12:10:28 +11:00