feat(player): autoplay, prev/next episode, glass control menus (v0.25.0)#107
Merged
Conversation
- Autoplay on load: Player attempts video.play() once the source is ready (opt-in autoplay prop, set by PlayerPage). Suppressed while the resume prompt or transcode-preparing is shown; on a NotAllowedError it retries muted (user can unmute), never throws an unhandled rejection. - Prev/next episode buttons for series content: episodes ordered across the whole series (season, episode) with cross-season rollover; buttons flank play/pause, disabled at the ends, hidden for movies. Specials (season 0) are excluded from the auto-advance chain. Adjacent episode loads via /app/player/:id and the player fully re-initializes. - The whole-series ordered list is cached per series-root id so binge navigation (Next, Next, Next) doesn't refetch the series tree. - Select gains an opt-in tone="glass" variant (translucent dark + white text) used by the player Speed/Quality menus so they match the player chrome instead of the old opaque white-bg/black-text; Select is unchanged for every other consumer. Rebuilt bundle. typecheck + build + 1947 tests green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Features
Autoplay (#7) — the player starts playing once the source is ready (opt-in
autoplayprop set by PlayerPage). Suppressed while the resume prompt / transcode-preparing is shown; onNotAllowedErrorit retries muted (user can unmute) and never throws an unhandled rejection.Prev/next episode (#2) — for series content, Previous/Next-episode buttons flank play/pause. Episodes are ordered across the whole series by (season, episode) with cross-season rollover (last ep of a season → first of the next); buttons disable at the ends and are hidden for movies. Specials (season 0) are excluded from auto-advance. The adjacent episode loads via
/app/player/:idand the player fully re-initializes (source/resume/autoplay/neighbours recomputed). The ordered list is cached per series-root id so binge navigation doesn't refetch the series tree.Player dropdown styling (#8) —
Selectgains an opt-intone="glass"variant (translucent dark + white text, legible hover/selected) used by the player Speed/Quality menus, replacing the old opaque white-bg/black-text look.Selectis unchanged for all non-player consumers (CaptionsMenu sits in an opaque panel and was intentionally left default).Review
0 HIGH findings; autoplay promise handling + route-change re-init verified correct. Fixed the two findings: binge-nav fetch storm (now cached) and finale→Specials auto-advance (Specials excluded from the chain).
Tests / verification
+46 vitest tests (autoplay, episode-order incl. specials/rollover, prev/next nav + cache hit, glass variant).
typecheck+build+test:run(1947) green. Rebuiltdist/. v0.24.0 → 0.25.0 + CHANGELOG.🤖 Generated with Claude Code