Codex/podcast first auth wallet#105
Merged
Merged
Conversation
…grouped unheard list Implements two tasks: Task 1 (bug fix): Fix language dropdown selection by switching to Modal overlay, eliminating click-through issues on RN-web. Dropdown now correctly captures clicks and closes after selection in both /podcast and episode detail screens. Task 2 (feature): Redesign podcast list with: - Device-local listening progress (localStorage, per-language via localizationId) - New "play next unheard" CTA card with newest/oldest-first toggle - Unheard episodes grouped by language (fetching all 3 language feeds in parallel) - Expandable "already listened" section with frontend pagination - Hidden two-stage "mark all listened" button for device switching - Auto-advance to next episode when current finishes - Resume interrupted episodes from saved position New files: - PodcastProgressProvider: context for device-local progress persistence - PodcastProgressTracker: bridges player state to progress store - PlayUnheardCard: large CTA with play direction toggle - ExpandableSection: collapsible section header with count - EpisodeRow: shared episode list row component - episodeSorting: newest/oldest-first comparators - podcastProgress: progress helpers (status resolution, merging) Tests: Added podcastProgress & episodeSorting unit test suites (13 new tests, 111 total now passing). Verification: type-check, lint, test, deadcode, dup:check, format:check, e2e smoke all passing. No console errors in browser preview. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
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.
Summary
<1-2 sentences: what changed and why>
Changes
Test Plan
pnpm verifypasses locallypnpm turbo run type-check lint test --filter=@zapengine/app>Risk
<What could break? Include affected services and blast radius.>
Rollback
Checklist
CLAUDE.mdfiles.env.exampleif added env-var referencespnpm --filter @zapengine/analytics-engine test:strategy-snapshot:fastpnpm contracts checkcovers the change