diff options
Diffstat (limited to 'internal/models')
| -rw-r--r-- | internal/models/types.go | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/internal/models/types.go b/internal/models/types.go index fdde455..4a923a8 100644 --- a/internal/models/types.go +++ b/internal/models/types.go @@ -29,6 +29,23 @@ type Task struct { NextOccurrenceOverride *time.Time `json:"next_occurrence_override,omitempty"` } +// Project is a lightweight grouping for doot-native tasks. Exactly one +// project per task (Task.ProjectID); labels handle cross-cutting tagging. +type Project struct { + ID string `json:"id"` + Name string `json:"name"` + Color string `json:"color"` + CreatedAt time.Time `json:"created_at"` + Archived bool `json:"archived"` +} + +// LabelColor maps a label's free-text name to its display color. A label +// with no matching row here just has no color assigned yet. +type LabelColor struct { + Name string `json:"name"` + Color string `json:"color"` +} + // Meal represents a meal from PlanToEat type Meal struct { ID string `json:"id"` @@ -126,11 +143,6 @@ type Card struct { URL string `json:"url"` } -// Project represents a project (used for source config grouping) -type Project struct { - ID string `json:"id"` - Name string `json:"name"` -} // CalendarEvent represents a Google Calendar event type CalendarEvent struct { |
