Repository navigation
Feat/billing history mobile - #1357
Merged
greatest0fallt1me merged 10 commits intoOct 21, 2026
Merged
greatest0fallt1me merged 10 commits into
greatest0fallt1me merged 10 commits into
Conversation
…ints on small screens
|
@akandeisaac021-design Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
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
Closes #1320
On a 375px phone, Billing History was a six-column table that scrolled sideways, and the on-chain details lived in a hover-only PreviewCard that touch users couldn't reliably open. Below 640px the page now renders one tappable card per transaction, with a Details bottom sheet showing the same on-chain details as the desktop preview. At 640px and above the table is unchanged.
What changed
BillingHistory.tsxintoBillingHistory.css(.billing-history .bh-*, scoped so desktop specificity is unchanged).useMediaQueryhook picks the layout. One DOM source per breakpoint: the table is not rendered on mobile, so screen readers never read both.TransactionCard: a list item with a heading,StatusBadge(text label, not colour alone), signed amount, date and a Details button.BottomSheetplus a newTransactionDetails(full hash with Copy, network, confirmations, time). Closes on Escape, backdrop tap and the close button; focus returns to the Details button.BillingSortSelect(mobile only) sharesapplySortwith the column headers, so thesort/dirURL params behave identically on both layouts.docs/BillingHistoryPreview.md. A11y manifest entries for the three new components.Test plan (from the issue)
responsive layout › mobile: renders a card list and no tableresponsive layout › desktop: renders the table and no card listdetails sheet › Details opens a dialog with hash, network and confirmationsdetails sheet › Escape closes the sheet and returns focus to the Details buttondetails sheet actions › Copy puts the full hash on the clipboardmobile sort behaviour › choosing an option reorders the cards and writes sort/dir to the URLfilters on mobile › the same filter shows the same number of transactions as on desktopmobile cards › each card has a heading and a signed amountRegression proof: row 1 fails before the change:
Unable to find an accessible element with the role "list" and name /billing transactions/i.Verification
<paste your final tsc / build / vitest output here>
Screenshots (light and dark):
[Desktop at 1280px was compared against
mainbefore and after in both themes and is unchanged. Edit this line to describe what you actually checked.]Notes for reviewers
src/index.css:7874still makes.billing-history tablescroll sideways between 640 and 720px. Out of scope here: the issue asks for cards below 640px only.formatTimestampis now exported fromPreviewCard.tsx(a one-word change) so the sheet reuses it.PreviewCardis otherwise untouched, to keep desktop identical.var(--token, #hex)are carried over from the original inline styles.feat/billing-history-mobile, as the issue's "Getting started" instructs.