diff --git a/.planning/STATE.md b/.planning/STATE.md index d7989c8..c84c43d 100644 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -60,17 +60,18 @@ Decisions from v1.0 are archived in PROJECT.md Key Decisions table. Key patterns | 010 | Fix duplicate album merging bug (composite unique constraint) | 2026-03-05 | d43ba7b | | 010b | Fix contentless FTS5 DELETE error blocking rescan | 2026-03-05 | 8e9a616 | | 011 | Fix neovim crash during library scan (configurable log level) | 2026-03-05 | c45bca4 | +| 012 | Add favorite icon to album dropdown track rows | 2026-03-05 | 12a0bbc | ## Session Continuity ### Last Session **Date:** 2026-03-05 -**What happened:** Quick task 11 — fixed neovim display corruption during library scan. Root cause: dev mode hardcoded slog.LevelDebug, flooding stdout with ~14 debug lines per audio file. Added resolveLogLevel() with YJ_LOG_LEVEL env var support, defaulting to Info. Added `make dev-debug` target for opt-in verbose logging. -**Where we stopped:** Quick task 11 complete. Dev mode now defaults to Info-level logging. -**Next action:** Test `make dev` with library scan to confirm neovim stability +**What happened:** Quick task 12 — added favorite icon to album dropdown track rows. Added FavoritesController + classMap integration with compact sizing (18px/11px) for the dropdown context. Icon between track number and title, with stopPropagation click handler. +**Where we stopped:** Quick task 12 complete. Album dropdown now shows per-track favorite icons. +**Next action:** Visually verify favorite icons in album grid dropdown --- *State initialized: 2026-02-27* -Last activity: 2026-03-05 - Fix neovim crash during library scan (configurable log level) +Last activity: 2026-03-05 - Add favorite icon to album dropdown track rows *Last updated: 2026-03-05* diff --git a/.planning/quick/12-add-favorite-icon-to-album-grid-track-li/12-SUMMARY.md b/.planning/quick/12-add-favorite-icon-to-album-grid-track-li/12-SUMMARY.md new file mode 100644 index 0000000..e9d7653 --- /dev/null +++ b/.planning/quick/12-add-favorite-icon-to-album-grid-track-li/12-SUMMARY.md @@ -0,0 +1,56 @@ +--- +phase: quick-12 +plan: 12 +subsystem: frontend/cover-grid +tags: [favorites, ui, album-dropdown] +dependency-graph: + requires: [favorites-controller, wa-icon] + provides: [album-dropdown-favorites] + affects: [album-dropdown] +tech-stack: + added: [] + patterns: [FavoritesController reactive pattern, classMap directive] +key-files: + modified: + - frontend/src/components/cover-grid/album-dropdown.ts +decisions: [] +metrics: + duration: 69s + completed: "2026-03-05" +--- + +# Quick Task 12: Add Favorite Icon to Album Grid Track List Summary + +Per-track favorite icon in album dropdown, matching track-list pattern with compact sizing (18px width, 11px font) for the 12px dropdown context. + +## What Was Done + +### Task 1: Add favorite icon to album dropdown track rows +**Commit:** `12a0bbc` + +Added FavoritesController integration to `` component: + +- **Imports:** Added `FavoritesController` from `@store/controllers/favorites-controller` and `classMap` from `lit/directives/class-map.js` +- **Controller:** Added `private favCtrl = new FavoritesController(this)` alongside existing `player` controller +- **CSS:** Added `.fav-icon` styles with compact sizing (18px width, 11px font) proportional to the dropdown's 12px track rows. Includes tertiary color default, primary on hover, accent color when favorited +- **Template:** Inserted favorite icon `
` with `` between track number and track title in `renderTrackRow()`. Icon uses `classMap` for dynamic `.favorited` class and `stopPropagation()` on click to prevent track selection + +## Deviations from Plan + +None — plan executed exactly as written. + +## Verification + +- `npx tsc --noEmit` — TypeScript compilation passed with zero errors +- `lefthook` pre-commit hook (`frontend-typecheck`) passed + +## Commits + +| # | Hash | Message | +|---|------|---------| +| 1 | `12a0bbc` | feat(quick-12): add favorite icon to album dropdown track rows | + +## Self-Check: PASSED + +- ✅ `frontend/src/components/cover-grid/album-dropdown.ts` exists +- ✅ Commit `12a0bbc` exists in git log