callumalpass_tasknotes/docs/features
Renato Mendonca b383904f5f
Feature/Custom User Fields Mapping: Option to filter on your own frontmatter properties (+ smarter list and numeric filtering) (#471)
* 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
2025-08-24 20:17:51 +10:00
..
calendar-integration.md docs: Document custom multi-day calendar view feature (#282) 2025-07-27 12:19:05 +10:00
filtering-and-views.md Feature/Custom User Fields Mapping: Option to filter on your own frontmatter properties (+ smarter list and numeric filtering) (#471) 2025-08-24 20:17:51 +10:00
ics-integration.md update appearance of lists in the docs 2025-07-27 14:47:17 +10:00
inline-tasks.md 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
task-management.md docs: Document the new notification system 2025-08-07 23:06:06 +10:00
time-management.md update appearance of lists in the docs 2025-07-27 14:47:17 +10:00