mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-09 01:16:15 -08:00
Wire the playback-position store into DashboardDataService so the hero and Continue Watching cards can show how far through each title the user is. Per-playlist bulk fetch via getAllPlaybackPositions (one IPC call each, no N+1) cached in an in-memory Map keyed by playlist + content id + content type — supports both VOD and episode keys, since the same xtream-id can map to either. Hero: - Thin 4px progress bar under the subtitle when a position is known - "1h 04m left · 38% watched" meta line below it (formatRemainingLabel handles sub-minute, minute, hour, and hour+minute remainders) - Tighter padding (16 vs 20) and smaller poster (140 vs 160) per the v0.22 mockup spec — frees ~30px of vertical space without losing legibility Continue Watching cards: - 3px progress overlay pinned to the bottom of the poster art, painted in the unified blue primary (--app-selection-color) - Renders only when watchProgress is set, so live channels and untracked M3U items remain unaffected Live channels and M3U items never have positions in the schema, so the new UI is purely additive — both surfaces degrade gracefully to the prior layout when the lookup misses. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>