feat(rounddetail): port the cu-11 round detail screen#35
Merged
Conversation
A static, full-screen view reached from the history list: the result banner, the three-up stats grid, the crash position bar with cashout and crash markers, the round timeline, a collapsible provably-fair block whose seeds copy to the clipboard, and the audit-log reference. Replaces the round detail placeholder in StackNavHost and drops the now-unused requireStringArg helper. The screen has no ViewModel: it renders RoundDetailData directly, seeded from roundDetailPreviewData() until a rounds repository can resolve a round by id. It lives in its own feature/rounddetail package so its internal layout tokens do not collide with the history screen's. Tests: RoundDetailFormatTest (the truncateMiddle seed shortener) and RoundDetailScreenTest (banner / stats / timeline render, the provably-fair expand, and the back callback).
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
Ports the cu-11 round detail screen (mockup/js/screens/round-detail.js) and wires it into the nav graph in place of the placeholder. It is a static, full-screen view reached from the history list: the result banner, the three-up stats grid, the crash position bar with the cashout and crash markers, the round timeline, a collapsible provably-fair block whose seeds copy to the clipboard, and the audit-log reference.
Rationale
RoundDetailDatadirectly, seeded fromroundDetailPreviewData()until a rounds repository can resolve a round by id. The same approach Lobby and Wallet use for their pre-data-layer states.feature/rounddetailpackage rather thanfeature/history: co-locating it would have collided itsinternallayout tokens with the history screen's private tokens of the same name. The new package also separates the concerns cleanly and has no dependency back onfeature.history.truncateMiddle.requireStringArgnav helper was dropped with the placeholder it served.Verification
./gradlew ktlintCheck detekt testDebugUnitTest-> BUILD SUCCESSFUL./gradlew assembleDebug-> BUILD SUCCESSFUL./gradlew compileDebugAndroidTestKotlin-> BUILD SUCCESSFULTest plan
RoundDetailFormatTestgreen (truncateMiddle: short untouched, long shortened, head/tail honored)RoundDetailScreenTestcompiles (instrumented; not run in the CI matrix)Checklist
feat/).[Unreleased].Notes
The screen ignores the
roundIdnav argument for now and always shows the static preview round; resolving the real round by id arrives with the rounds repository in a later entrega.