Skip to content

Implement My Festival UI layer (Phase 4) - #202

Merged
richardthe3rd merged 4 commits into
claude/implement-my-festival-3diaOfrom
copilot/sub-pr-200
Jan 2, 2026
Merged

Implement My Festival UI layer (Phase 4)#202
richardthe3rd merged 4 commits into
claude/implement-my-festival-3diaOfrom
copilot/sub-pr-200

Conversation

Copilot AI commented Jan 2, 2026

Copy link
Copy Markdown
Contributor

Completes Phase 4 of the My Festival feature by implementing the UI layer on top of the existing data model and storage (Phases 1-3).

Changes

DrinkCard Status Badges

  • Added visual status indicators overlaid at top-right corner
  • Grey circle for "want to try", green checkmark for "tasted" with count badge (e.g., "2x")
  • Uses FutureBuilder for async status loading, gracefully handles missing provider for tests

DrinkDetailScreen Tasting Tracker

  • Replaced boolean "Tasted" checkbox with contextual button:
    • "Mark as Tasted" → "Tasted 2x" as user adds tastings
  • Added "Tasting History" section listing timestamps with delete capability
  • Extended repository interface with getTastingTimestamps() method
  • Confirmation dialog prevents accidental deletion

FavoritesScreen → "My Festival" Log

  • Unified view replacing old placeholder favorites screen
  • Smart sort: "want to try" items first, then "tasted", alphabetical within groups
  • Section dividers with labels separate groups
  • Empty state guides users to build their log

Example Usage

// Status badge automatically appears on cards
DrinkCard(
  drink: drink,
  // _StatusBadge widget checks provider.getFavoriteStatus(drink)
  // Shows icon + count based on status and tryCount
)

// Detail screen shows full history
provider.getTastingTimestamps(drink)  // [DateTime1, DateTime2, ...]
provider.deleteTry(drink, timestamp)  // Remove specific tasting

All screens include Semantics labels per accessibility requirements. Analysis clean, 577/579 tests passing (2 pre-existing GoRouter test failures).


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI and others added 3 commits January 2, 2026 20:01
Co-authored-by: richardthe3rd <573334+richardthe3rd@users.noreply.github.com>
Co-authored-by: richardthe3rd <573334+richardthe3rd@users.noreply.github.com>
Co-authored-by: richardthe3rd <573334+richardthe3rd@users.noreply.github.com>
Copilot AI changed the title [WIP] Implement My Festival favourites feature Implement My Festival UI layer (Phase 4) Jan 2, 2026
Copilot AI requested a review from richardthe3rd January 2, 2026 20:10
@richardthe3rd
richardthe3rd marked this pull request as ready for review January 2, 2026 20:18
@richardthe3rd
richardthe3rd merged commit 706bc44 into claude/implement-my-festival-3diaO Jan 2, 2026
@richardthe3rd
richardthe3rd deleted the copilot/sub-pr-200 branch January 2, 2026 21:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants