summaryrefslogtreecommitdiff
path: root/internal/models/timeline.go
diff options
context:
space:
mode:
authorPeter Stone <thepeterstone@gmail.com>2026-07-15 18:30:16 +0000
committerPeter Stone <thepeterstone@gmail.com>2026-07-16 02:54:17 +0000
commit37c323481d2e124e75bf3480dbc3bf53cad915e0 (patch)
tree18dcd09b2d9114fc7e849a52f7409d6750999cd0 /internal/models/timeline.go
parentb55c01eb9c48d2af754ff22c55deab6f0832e358 (diff)
feat(tasks): thread project color from BuildTimeline to WidgetItem
Projects are fetched once per BuildTimeline call into a color lookup map, not queried per-task -- same pattern as RecurringEventID's existing TimelineItem->WidgetItem threading.
Diffstat (limited to 'internal/models/timeline.go')
-rw-r--r--internal/models/timeline.go1
1 files changed, 1 insertions, 0 deletions
diff --git a/internal/models/timeline.go b/internal/models/timeline.go
index 6e48f91..1313712 100644
--- a/internal/models/timeline.go
+++ b/internal/models/timeline.go
@@ -44,6 +44,7 @@ type TimelineItem struct {
// Source-specific metadata
ListID string `json:"list_id,omitempty"` // For Google Tasks
RecurringEventID string `json:"recurring_event_id,omitempty"` // For calendar events
+ ProjectColor string `json:"project_color,omitempty"` // For doot-native tasks with a project assigned
}
// ComputeDaySection sets the DaySection, IsOverdue, and IsAllDay based on the item's time