TaskNotes 4.3.38 (Fork)
This release is from the cybersader/tasknotes fork.
Added
- Per-base property mapping (ADR-011): Bases with custom column names (e.g.,
deadlineinstead ofdue,ownerinstead ofassignee) can now configuretnFieldMappingin their YAML. Tasks created from these views automatically use the correct property names and get per-task tracking props (tnDueDateProp,tnAssigneeProp, etc.) so the system recognizes them. - Base identity system:
BaseIdentityServicelazily generatestnBaseIdandtnViewIdUUIDs on.basefiles when TaskNotes features are configured. Enables provenance tracking and future migration tools. - "New task" button for native Table/Board views:
BasesToolbarInjectornow injects a "New task" button alongside "Bulk tasking" on native Obsidian Bases views. Opens TaskCreationModal with the view's field mapping pre-populated. - PropertyPicker pre-population from view mapping: When creating a task from a mapped view, Additional Properties shows the mapped fields (e.g.,
deadlinewith "Use as: Due date" badge) ready to fill in. - Click-to-edit for mapped date properties: Mapped date fields show a read-only display that opens the full DateContextMenu (Today/Tomorrow/Pick date & time) on click, with two-way sync to the action bar calendar icons.
- Assignee action bar icon: New
usericon in the task creation action bar. Clicking it (or clicking a mapped assignee property) expands the details section and scrolls to the PersonGroupPicker with search. - Tracking prop schema declarations: Explicit field mappings via PropertyPicker always write tracking props (e.g.,
tnDueDateProp: deadline) even without values, declaring the task's property schema.
Fixed
- Tracking props no longer written without values in the backend path (
TaskService.applyViewFieldMapping,BulkConvertEngine). Only written when the task has an actual value for the mapped field. - Dual value conflict resolved: When a standard field (Due Date picker) and a mapped property (
deadline) both have values, the standard field redirects to the mapped property at save time instead of creating duplicates.