Fix offline behavior when reporting transaction - #64023
Conversation
Reviewer Checklist
Screenshots/VideosAndroid: HybridApp64023_android_native.movAndroid: mWeb Chrome64023_android_web.moviOS: HybridApp64023_ios_native.moviOS: mWeb Safari64023_ios_web.movMacOS: Chrome / Safari64023_web_chrome.movMacOS: Desktop |
|
@MarioExpensify Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
MarioExpensify
left a comment
There was a problem hiding this comment.
All good, thanks for the thorough unit test!
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/MarioExpensify in version: 9.1.68-0 🚀
|
|
🚀 Deployed to production by https://github.com/roryabraham in version: 9.1.68-7 🚀
|
| policyID: allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${oldReportID}`]?.policyID, | ||
| policyID: allReports?.[`${ONYXKEYS.COLLECTION.REPORT}${oldIOUAction.reportActionID}`]?.policyID, |
There was a problem hiding this comment.
@luacmartins @brunovjk Hmm, I'd just love to ask why we use reportActionID to extract the report object here? Is there any special reason?
There was a problem hiding this comment.
Seems like an oversight. We should fix that.
Explanation of Change
Uses the correct reportID for IOU actions when the transaction is unreported. Additionally, removes the trackExpenseActionableWhisper action.
Fixed Issues
$ #64005
Tests
Pre-requisite:
Steps:
2. Open any workspace chat
3. Submit a manual expense to it
4. Navigate to Self DM
5. Submit a manual expense to it
6. Open the just created expense and return to chat again
7. Turn off internet connection
8. Open the expense again
9. Tap on the report field and select the report of the expense created on workspace chat
10. Note that you are redirected to report, and both expenses are displayed in it
11. Return to Self DM
12. Note that the expense is gone along with the actionable whisper
Offline tests
Same as above
QA Steps
Same as tests
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Screen.Recording.2025-06-11.at.5.01.09.PM.mov
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari
MacOS: Desktop