Repository navigation
refactor: extract MoneyRequestReportTransactionList presentational components - #101199
Conversation
|
@codex review |
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
|
Codex Review: Didn't find any major issues. More of your lovely PRs please. Reviewed commit: ℹ️ About Codex in GitHubCodex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback". |
|
I'm starting to review this pr |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppCleanShot.2026-09-16.at.23.28.38.3.mp4Android: mWeb ChromeCleanShot.2026-09-16.at.22.47.14.2.mp4iOS: HybridAppCleanShot.2026-09-16.at.23.49.51.5.mp4iOS: mWeb SafariCleanShot.2026-09-16.at.23.51.37.6.mp4MacOS: Chrome / SafariCleanShot.2026-09-16.at.23.35.37.4.mp4 |
|
The logic after separating components isn't change and still works the same as current staging LGTM CleanShot.2026-09-16.at.23.35.37.4.mp4 |
|
Seems like everything was tested |
|
🚧 mountiny has triggered a test Expensify/App build. You can view the workflow run here. |
|
I've completed the review above, but I accidentally submitted it as a comment instead of approving it! 😅 |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
🚀 Deployed to staging by https://github.com/mountiny in version: 9.4.82-0 🚀
|
|
No help site changes are required for this PR, so I did not create a docs PR. This is a pure internal refactor. It moves existing JSX out of What I checkedThe diff touches four files, all under
Evidence that nothing user-facing moved:
I also searched Help site updates are warranted when a customer-visible feature, label, setting, or workflow changes. Nothing here meets that bar, so there is no docs work to do for this PR. If a later PR in the 10-PR stack adds or renames something customers interact with, ask me again on that PR and I will scope the docs changes then. @sosek108, there is no linked help site PR to review because no documentation change is needed. If you disagree — for example, if you know of a help article that already describes this part of the report view inaccurately — reply with the article path and I will open the draft PR. |
|
🚀 Deployed to staging by https://github.com/mountiny in version: 9.4.86-0 🚀
|
No help site changes requiredThis PR is a pure structural refactor. Nothing a customer sees changed, so no file under What I checkedThe diff moves existing JSX out of
Every documentation trigger came back negative:
Existing articles stay accurateThe articles that describe this surface — Using-Reports-in-New-Expensify.md and Managing-Expenses-in-a-Report.md — still match the shipped behavior. Editing them would add churn without correcting anything, which @sosek108, there is no linked help site PR to review or mark |
|
🚀 Deployed to staging by https://github.com/mountiny in version: 9.4.89-0 🚀
|
|
🚀 Deployed to production by https://github.com/luacmartins in version: 9.4.89-0 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
This is PR 7 of a 10-PR stack decomposing the MoneyRequestReport list components (
MoneyRequestReportActionsList/MoneyRequestReportTransactionList) into focused hooks and presentational sub-components (issue #99919, superseding drafts #99307 and #99417).This slice starts Track B by extracting the transaction list's presentational chrome into dedicated components.
Another pass:
No renders and actual measurable perf change. unrelated report update differs on separate run so this is not the signal.
Fixed Issues
$ #99919
PROPOSAL:
Tests
npx jest tests/ui/MoneyRequestReportActionsListRejectModalTest.tsxand verify it passesOffline tests
QA Steps
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
Nagranie.z.ekranu.2026-09-16.o.12.21.35.mov
iOS: mWeb Safari
MacOS: Chrome / Safari
Nagranie.z.ekranu.2026-09-16.o.12.13.56.mov