Commit graph

53 commits

Author SHA1 Message Date
callumalpass
821586f1a3 Add calendar daily note link option 2026-05-17 22:00:30 +10:00
callumalpass
99d95d8f13 Fix Bases dependency link filters 2026-05-17 15:59:05 +10:00
callumalpass
540255af41 Add Kanban column task creation 2026-05-17 07:22:48 +10:00
callumalpass
8f72d92453 Order Kanban priority swimlanes by weight 2026-05-17 07:15:48 +10:00
callumalpass
b2915a7aaf Refresh generated Bases files on demand 2026-05-17 04:44:20 +10:00
callumalpass
f7a7e676e8 Make default Bases urgency score null-safe 2026-05-17 01:19:44 +10:00
callumalpass
b664e4e03c Improve pomodoro timer and stats bases 2026-05-17 00:01:14 +10:00
callumalpass
3625fb12e8 Fix default base date formula guards 2026-05-16 19:55:49 +10:00
callumalpass
91cfc6deb4 Fix default Bases filters for spaced task properties 2026-05-16 17:36:29 +10:00
callumalpass
12711a8649 Add Kanban pinned columns 2026-05-16 15:35:26 +10:00
callumalpass
61350b9b0a Add Kanban swimlane ordering 2026-05-16 14:22:16 +10:00
Loukas Andreadelis
4a923acb94 fix: address Copilot review on urgencyScore time-of-day formula 2026-05-14 06:09:59 +10:00
Loukas Andreadelis
5593582bf8 feat: add time-of-day component to urgencyScore formula 2026-05-14 06:09:59 +10:00
Loukas Andreadelis
35dba2b974 fix: strip time component in default base template date comparisons 2026-05-14 06:09:26 +10:00
callumalpass
84cb9681a5 Document drag-to-reorder behavior 2026-03-31 06:05:57 +11:00
callumalpass
26712c4f7d fix: polish manual ordering drag reorder 2026-03-29 07:35:51 +11:00
callumalpass
c3863baacc chore: checkpoint current tasknotes state 2026-03-25 08:08:28 +11:00
callumalpass
735706ead4 docs: tighten accuracy, fix cross-links, and consolidate unreleased notes 2026-02-21 13:41:32 +11:00
callumalpass
b0cd74f1ad docs: update docs content and docs build tooling 2026-02-21 08:52:08 +11:00
callumalpass
69b8ae2506 feat: add checklist progress task-card property with Bases support 2026-02-17 20:02:45 +11:00
callumalpass
d6c1f0974a docs: add explanatory context and simplify tone 2026-02-15 15:41:12 +11:00
callumalpass
dc0ddd08b1 fix(#1144): move task filter to per-view in relationships.base
The top-level task filter was excluding non-task files from the Projects
view. Since projects can be any file type (not just tasks), the filter
is now applied per-view:

- Subtasks, Blocked By, Blocking: include task filter (these are tasks)
- Projects: no task filter (projects can be any file type)

Users with existing relationships.base files should delete and
regenerate them to get the fix.
2026-01-07 19:17:34 +11:00
callumalpass
3861d6f48b fix: Wrap blockedBy with list() in Blocking view filter (#1304)
The Blocking view filter in the Relationships base threw "Cannot find
function map on type Link" when blockedBy contained a single entry.
Bases returns single values as Link objects without a map() method.

Wrap with list() to ensure array operations work regardless of whether
blockedBy contains one or many dependencies, consistent with the
existing Blocked By view implementation.
2026-01-01 17:49:10 +11:00
callumalpass
09a1e041c5 feat(#1401): add option to span tasks between scheduled and due dates
Add "Span tasks between scheduled and due dates" toggle to Calendar view
Layout settings. When enabled, tasks with both scheduled and due dates
display as multi-day all-day bars spanning the full duration, providing
Gantt chart-style visualization for project planning.

Thanks to @0atman for the feature request.
2025-12-31 14:59:34 +11:00
callumalpass
518a14ca72 fix(agenda): disable property-based events by default to prevent duplicates
Fixes #1028, #1140, #1152, #1354, #1362

Tasks were appearing twice in Agenda view - once as TaskNotes events
and again as property-based events (shown with file icon). This was
confusing because both represented the same underlying task.

- Set showPropertyBasedEvents: false in default Agenda template
- Updated documentation with explanation
- Users can re-enable in view settings if needed for non-task dates
2025-12-31 12:01:26 +11:00
callumalpass
119b0fc47b docs: add screenshots to documentation from e2e tests
Add comprehensive screenshots to documentation pages:
- Views: task list, kanban, calendar (month/week/day/year), agenda, mini calendar, pomodoro
- Settings: general, task properties, modal fields, appearance, features, integrations
- Features: task creation modal, task statistics

Also adds e2e/docs-screenshots.spec.ts test suite for generating documentation screenshots.
2025-12-31 09:59:45 +11:00
callumalpass
df674a0523 docs: update Base template formulas for null handling (#1386)
Update timeEstimateCategory and trackingStatus formulas to include
explicit null check alongside the existing falsy and zero checks.
This ensures tasks with unset timeEstimate show "No estimate" correctly.
2025-12-31 09:34:09 +11:00
callumalpass
5708d3dd9d docs: consolidate and streamline documentation
- Add v3 to v4 migration guide with Bases setup instructions
- Expand core-concepts.md with YAML structure, property types, and methodology examples
- Streamline index.md to be a concise landing page with quickstart
- Remove developer-focused timezone docs (TIMEZONE_HANDLING_*.md)
- Update releases.md to show v4.x as current
- Fix broken relative links in features.md
- Reduce repetition across docs by centralizing Bases info in core-concepts.md
- Consolidate task-management.md recurring tasks and reminders sections
- Simplify features/integrations.md and features/calendar-integration.md
- Reduce task-defaults.md Default Reminders section from 227 to 24 lines
- Add v4/Bases troubleshooting and OAuth calendar troubleshooting sections
- Update troubleshooting.md with current settings paths and GitHub link
- Update calendar-setup.md with Azure manifest redirect URI instructions
2025-12-07 13:03:21 +11:00
callumalpass
d0d0974ec2 docs: add formula expressions to Base templates documentation
Include the actual Bases formula expressions in the formula reference
tables so users can see and copy the exact syntax used.
2025-12-01 21:22:00 +11:00
callumalpass
c517957349 feat: add 30+ formula properties to default Base templates
- Add date calculations: daysUntilDue, daysUntilScheduled, daysSinceCreated, daysSinceModified
- Add boolean helpers: isOverdue, isDueToday, isDueThisWeek, isScheduledToday, isRecurring, hasTimeEstimate
- Add time tracking: timeRemaining, efficiencyRatio, timeTrackedThisWeek, timeTrackedToday, timeTrackedFormatted
- Add grouping formulas: dueMonth, dueWeek, scheduledMonth, scheduledWeek, dueDateCategory, timeEstimateCategory, ageCategory, createdMonth, modifiedMonth, priorityCategory, projectCount, contextCount, trackingStatus
- Add combined due/scheduled: nextDate, daysUntilNext, hasDate, isToday, isThisWeek, nextDateCategory, nextDateMonth, nextDateWeek
- Add sorting: priorityWeight (user-configurable), urgencyScore (combines priority with date proximity)
- Add display: dueDateDisplay (relative dates)
- Sort action views (Not Blocked, Today, Overdue, This Week) by urgencyScore
- Rename settings section to "Views & base files" with improved documentation
- Fix null handling in order array generation
2025-12-01 20:53:49 +11:00
callumalpass
7f91cd59b6 docs: update default base templates documentation
Add formulas section with priorityWeight, blockedBy to order arrays,
and fix quote escaping in filters to match current implementation.
2025-12-01 18:16:49 +11:00
callumalpass
3afb4b0789 fix: #1165 Kanban view grouping by list properties treats values individually
Tasks with multiple values in list properties (contexts, tags, projects)
now appear in each individual column instead of a single combined column.

- Added "Show items in multiple columns" option (default: true)
- Fixed drag-and-drop to add/remove individual values instead of replacing
- Fixed swimlane mode to also respect list property explosion
- Added regression tests for grouping and drag-and-drop behavior
2025-11-25 20:14:46 +11:00
callumalpass
fe92698b03 Fix: Resolve base template generation issues (#1145, #1156)
- Fix Kanban template missing groupBy property
  * Default Kanban now includes groupBy on status field
  * Resolves error requiring manual group configuration
  * Thanks to @randomness42 and @seepage87 for reporting

- Fix user-defined fields appearing as user:field_xxx in templates
  * Custom fields now use actual property names from settings
  * Also fixed totalTrackedTime to map to timeEntries property
  * Ensures Bases can properly query user-defined fields

- Fix documentation quote escaping in YAML examples
  * Use single quotes for strings containing double quotes
  * Makes examples copyable and syntactically correct

- Remove internal Bases filtering guide
  * Direct users to official Obsidian Bases documentation
  * Eliminates duplicate documentation of Obsidian functionality
2025-11-19 21:25:40 +11:00
callumalpass
5f6a1caedc Docs: Move default base templates to docs/ and add cross-references
Moves the default base templates documentation from obsidian-help to the
main docs folder for better accessibility and maintenance.

Changes:
- Move obsidian-help/en/Bases/Default base templates.md → docs/views/default-base-templates.md
- Update frontmatter to match docs format (add title, remove obsidian-help fields)
- Replace wiki-style links with markdown links to Obsidian help docs
- Update code comment in defaultBasesFiles.ts to reference new path
- Add cross-references from:
  - docs/views.md (Bases Plugin Requirement section)
  - docs/views/task-list.md (Further Reading section)
  - docs/features/filtering-and-views.md (Additional Resources section)
2025-11-19 07:59:04 +11:00
callumalpass
a3621ca01f Docs: Comprehensive v4.0.0 documentation update
Updates documentation to reflect version 4 changes:
- Bases core plugin integration and requirement
- OAuth calendar integration (Google, Microsoft)
- New Bases-based filtering with YAML expressions
- Removed v3 FilterBar UI references
- Added modal fields settings documentation
- Added 4.0.0 release notes
- Updated all feature guides with v4 functionality
2025-11-18 12:57:46 +11:00
renatomen
052b945b49 docs: add comprehensive subgrouping feature documentation
- Document hierarchical subgrouping in filtering-and-views.md with demo GIF
- Add subgrouping section to task-list.md with usage examples
- Update agenda-view.md to reference subgrouping support
- Enhance features.md overview to mention two-level organization
- Include subgroups.gif demonstration of the feature in action

Provides complete documentation for the new hierarchical subgrouping
functionality that allows two-level task organization across views.
2025-09-18 11:16:31 +00:00
callumalpass
92489dacae docs: document All-day slot toggle in calendar views 2025-08-31 13:25:45 +10:00
Renato Mendonca
ad6d8ceeda
Group/Sort by Custom User Fields - stacked o PR #471 (User Fields Mapping) (#475)
* feat: implement multi-field user properties for dynamic filtering

- Add userFields[] data model with id, key, displayName, type
- Migrate legacy userField to userFields array on load
- Extend FilterOptions with userProperties from settings
- Update FilterBar to include user properties in dropdown
- Add evaluation logic for user:* property conditions
- Create Settings UI for managing multiple user fields
- Add comprehensive unit tests for all components
- Support Text, Number, Date, Boolean, List field types

* fix(settings/user-fields): widen inputs and align layout with Priority section

- Use grid tailored for user-fields (1fr 1fr 160px 80px)
- Make Property Name and Display Name inputs flex to full width
- Standardize type dropdown width; stack neatly on mobile
- Follow existing settings-view patterns for consistency

* feat: add bracket/quote-aware CSV splitting and missing numeric operators

- Add src/utils/stringSplit.ts with splitListPreservingLinksAndQuotes()
  - Single-pass O(n) algorithm preserves commas inside [[...]] and quotes
  - Handles wikilink aliases [[path|alias]] correctly
  - Trims tokens and ignores empty values
- Integrate splitter in FilterService.normalizeUserListValue for string inputs
- Add missing numeric operators: is-greater-than-or-equal, is-less-than-or-equal
  - Update FilterOperator type and FILTER_OPERATORS labels
  - Add support for timeEstimate and user number fields
  - Implement comparison logic in FilterUtils
- Fix instant user field availability in FilterBar after settings changes
  - Invalidate filter options cache in main.saveSettings()
  - Push fresh options to open views in settings.ts
- Add comprehensive unit tests for string splitting and filter normalization
- Fix TypeScript compilation issue with new operator validation

* docs: add comprehensive user fields documentation and examples

- Add User Fields section to Advanced Settings with setup guide
- Document all 5 field types (text, number, date, boolean, list) with examples
- Explain smart list filtering that preserves wikilinks and quotes
- Document numeric intelligence for mixed text-number formats
- Add new comparison operators (equal or greater/less than) to filtering docs
- Include practical filtering examples for custom user fields
- Add technical implementation guide for developers
- Include demonstration GIFs showing list and numeric field filtering
- Update main settings overview to reference user fields feature

* feat(filter): group by custom user fields; add dynamic group dropdown

- Support user: group keys (text/number/boolean/date/list)
- Sorting: date asc, boolean true→false, number desc, others alphabetic
- FilterBar includes user properties from FilterOptions.userProperties
- test: add coverage for boolean/list/date/unknown and FilterBar options

* feat(filtering): add sorting by user fields and wire Sort dropdown; fix grouped user-field header order to follow sort direction; emit immediate query change for sort/group; list empty values sort last

* docs(filtering): add docs for sorting/grouping by custom user fields and embed demo GIF

---------

Co-authored-by: Callum Alpass <callumalpass@gmail.com>
2025-08-24 20:30:14 +10:00
renatomen
1ae94b679f feat(docs): add saved view heading screenshots and agenda collapsible groups demo\n\n- Task List: add screenshots for heading showing saved view name and completed/total\n- Subtasks Widget: add screenshot showing saved view name and counts in widget header\n- Agenda: add GIF demonstrating saved view heading, counts, and collapsible date groups (with Expand/Collapse All)\n- Include assets (PNG/GIF) under docs/assets 2025-08-18 01:32:51 +12:00
renatomen
04bb13bbd4 feat(tasklist): expand/collapse all controls in top bar (3.19.1) 2025-08-15 23:05:26 +10:00
Callum Alpass
9192e2ef3b docs: Update calendar views documentation formatting
- Add proper spacing for readability in recurring tasks section
- Fix missing newline at end of file
- Improve list formatting for drag behavior descriptions
2025-08-04 19:32:30 +10:00
Callum Alpass
097b8d6adc docs: Update calendar views documentation for new recurring task behavior
Enhanced the recurring task support section to document:

- Visual hierarchy: Solid borders for next occurrence, dashed for pattern instances
- Drag behaviors: Different actions based on event type being dragged
- User feedback: Specific notice messages for each drag operation
- Flexible scheduling: Next occurrence can appear outside the recurring pattern

Replaces basic description with detailed explanation of the sophisticated
drag-and-drop system and visual distinctions that give users complete control
over recurring task scheduling.
2025-08-04 16:49:23 +10:00
Callum Alpass
1f0f04fe0d update appearance of lists in the docs 2025-07-27 14:47:17 +10:00
Callum Alpass
c74fe54833 docs: Document custom multi-day calendar view feature (#282)
Add comprehensive documentation for the new configurable custom multi-day
calendar view feature implemented in d27594a:

- Update calendar-views.md with Custom Days view section explaining features
  and configuration steps
- Enhance calendar-settings.md to document default view option and custom
  day count setting
- Update calendar-integration.md to include custom days view in Advanced
  Calendar description
- Update features.md to include custom days view in main features overview

Provides complete user guidance for the custom multi-day calendar view that
allows users to configure any number of days (1-14) in their calendar display.
2025-07-27 12:19:05 +10:00
Callum Alpass
acf39a3680 docs: Document view options support in saved views
Enhance documentation to reflect the new view options feature that allows
saved views to preserve view-specific display preferences alongside filters.

- Update filtering-and-views.md to explain view options preservation in saved views
- Enhance agenda-view.md with documentation for view-specific options and persistence
- Document Advanced Calendar View options and their persistence in calendar-views.md
- Add comprehensive developer guidelines for implementing view options in saved views
- Update releases.md to reference version 3.15.0

These documentation updates complement the code implementation committed in 1fb02e8
and provide complete user and developer guidance for the view options feature.
2025-07-27 12:05:25 +10:00
Callum Alpass
4d89d754d9 docs: Update documentation for enhanced task conversion and UI improvements
- Update instant task conversion to reflect universal line support (any line type, not just checkboxes)
- Document clickable project group headers in Task List View
- Add FilterBar integration details for project subtasks widget
- Update main README to reflect universal line-to-task conversion capability

These changes document the user-facing improvements introduced since v3.15.1.
2025-07-26 19:34:52 +10:00
Callum Alpass
df0bdcecda docs: Update documentation for auto-stop time tracking and Notes view
- Add auto-stop time tracking feature documentation to time management
- Move auto-stop settings to advanced settings under Pomodoro section
- Completely rewrite Notes view documentation with accurate inclusion criteria
- Remove incorrect context menu information from Notes view
- Add detailed settings and performance guidance for Notes view
2025-07-20 12:19:33 +10:00
Callum Alpass
ce8321f770 docs: Update documentation for v3.14.0 features
- Add project indicator and subtask creation documentation
- Document drag-and-drop saved view reordering
- Add created date sort option
- Document recurring task calendar improvements
- Add comprehensive recurring task documentation with scheduled date behavior
2025-07-17 06:01:27 +10:00
Callum Alpass
25260920d2 docs: Update filtering and views documentation
- Add comprehensive filtering and views guide
- Update individual view documentation with filter details
- Document advanced filtering features and saved views
- Improve clarity of filter concepts and usage
2025-07-13 08:20:09 +10:00
Callum Alpass
eca08599d3 refactor documentation 2025-06-29 13:35:47 +10:00