summaryrefslogtreecommitdiff
path: root/internal/models/types.go
diff options
context:
space:
mode:
authorPeter Stone <thepeterstone@gmail.com>2026-07-13 06:54:13 +0000
committerPeter Stone <thepeterstone@gmail.com>2026-07-13 06:54:13 +0000
commit8310f802dd9fc6ef5dff0be7f640f79c5b39987f (patch)
treed145bd7be5801f12563e99b6828b0f2facdc370c /internal/models/types.go
parent73fbd05a1230552bcef9834d3ee999ef19957693 (diff)
feat(widget): editable task details, scrollable list, and overdue-task fixes
- Add description editing to the widget's task detail popup for doot/gtasks/trello, backed by new GET /api/widget/detail and POST /api/widget/update endpoints - Make Google Tasks and Trello cards completable via the widget (Trello completion archives the card); fix Trello description never being fetched, which meant saving could silently wipe a card's real desc - Fix google_tasks.due_date/updated_at (TEXT columns) never round-tripping through sql.NullTime, which broke cached Google Tasks reads whenever the cache was valid - Fix native-task and Google-Task date-range queries excluding anything due before the window start, which dropped incomplete tasks off the widget the moment their due day passed (the "overdue tasks disappeared" bug) - Fix native task description edits blanking the task's title - Make the widget's day list scroll (LazyColumn) instead of clipping - Optimistically remove a task from the widget immediately on completion, ahead of the authoritative background refresh Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EZ7ikw2ukGJFTHE3bJS7zL
Diffstat (limited to 'internal/models/types.go')
-rw-r--r--internal/models/types.go15
1 files changed, 8 insertions, 7 deletions
diff --git a/internal/models/types.go b/internal/models/types.go
index d9dd515..58d3888 100644
--- a/internal/models/types.go
+++ b/internal/models/types.go
@@ -109,13 +109,14 @@ type Board struct {
// Card represents a Trello card
type Card struct {
- ID string `json:"id"`
- Name string `json:"name"`
- ListID string `json:"list_id"`
- ListName string `json:"list_name"`
- BoardName string `json:"board_name"`
- DueDate *time.Time `json:"due_date,omitempty"`
- URL string `json:"url"`
+ ID string `json:"id"`
+ Name string `json:"name"`
+ Description string `json:"description"`
+ ListID string `json:"list_id"`
+ ListName string `json:"list_name"`
+ BoardName string `json:"board_name"`
+ DueDate *time.Time `json:"due_date,omitempty"`
+ URL string `json:"url"`
}
// Project represents a project (used for source config grouping)