feat(predict): update sports market card UI#30195
Conversation
|
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #30195 +/- ##
==========================================
+ Coverage 81.54% 81.82% +0.27%
==========================================
Files 5343 5408 +65
Lines 142128 144436 +2308
Branches 32411 33008 +597
==========================================
+ Hits 115899 118179 +2280
+ Misses 18299 18155 -144
- Partials 7930 8102 +172 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
🔍 Smart E2E Test Selection
click to see 🤖 AI reasoning detailsE2E Test Selection: Key changes:
Tag selection rationale:
No other tags are warranted as changes are isolated to the Predict UI components with no impact on accounts, networks, swaps, browser, snaps, or other wallet features. Performance Test Selection: |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 2eb4496. Configure here.
| }; | ||
| }; | ||
|
|
||
| const formatCents = (price: number): string => `${Math.round(price * 100)}¢`; |
There was a problem hiding this comment.
Local formatCents duplicates existing utility function
Low Severity
The newly added formatCents helper duplicates an existing utility already imported by PredictMarketOutcome. Grep confirms formatCents is defined/exported elsewhere and imported in PredictMarketOutcome/PredictMarketOutcome.tsx. Having two independent copies means a fix to the rounding logic or format in one location won't propagate to the other.
Reviewed by Cursor Bugbot for commit 2eb4496. Configure here.
|





Description
Updates the Predict sports/game market card UI for World Cup match markets to match the provided Figma designs and aligns the game details footer action buttons with the same button treatment.
This includes:
PredictMarketSportCardto use the sports match card layout with team logos, scheduled/live states, draw support, and inline team-colored outcome buttons.inlineNoSeparatoraction-button layout soPredictGameDetailsFooterbuttons match the card button format (CAN 55¢,DRAW 24¢,BIH 22¢).Changelog
CHANGELOG entry: Updated World Cup prediction cards and game detail action buttons to match the sports match design.
Related issues
Fixes: PRED-875, PRED-866
Manual testing steps
Screenshots/Recordings
Before
N/A
After
Screen.Recording.2026-05-14.at.1.20.38.PM.mov
Validation
yarn lint:tsc --pretty falseyarn jest app/components/UI/Predict/components/PredictMarketSportCard/PredictMarketSportCard.test.tsx app/components/UI/Predict/components/PredictMarketSportCard/PredictMarketSportCardWrapper.test.tsx --runInBandyarn jest app/components/UI/Predict/components/PredictActionButtons/PredictBetButton.test.tsx app/components/UI/Predict/components/PredictActionButtons/PredictBetButtons.test.tsx app/components/UI/Predict/components/PredictActionButtons/PredictActionButtons.test.tsx app/components/UI/Predict/components/PredictGameDetailsFooter/PredictGameDetailsFooter.test.tsx --runInBandPre-merge author checklist
Performance checks (if applicable)
trace()for usage andaddTokenfor an exampleFor performance guidelines and tooling, see the Performance Guide.
Pre-merge reviewer checklist
Note
Medium Risk
Moderate risk due to a substantial rewrite of
PredictMarketSportCardrendering and new guarded buy-sheet trigger paths that could affect navigation and bet entry UX.Overview
Updates Predict’s sports match presentation by rewriting
PredictMarketSportCardto a new layout with team logos, scheduled vs live states (including live score updates), optional draw support, and inline outcome buttons that can open the preview/buy sheet via guarded actions.Extends action button APIs to support a new
inlineNoSeparatorlayout plus customizable container/gap styling, and applies this inPredictGameDetailsFooterso footer bet buttons match the card’s “TEAM 60¢” format.Adds the
PulsingLiveDotcomponent and adjusts World Cup tabs to use it for live indicators; updates and refocuses tests to cover the new card rendering, buy-button behavior, and button layout variants.Reviewed by Cursor Bugbot for commit 2eb4496. Bugbot is set up for automated code reviews on this repo. Configure here.