Repository navigation
Queue bulk mark-as-exported for the full matching search under select-all - #102206
Beamanator merged 10 commits into
Conversation
|
@mananjadhav 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] |
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
JmillsExpensify
left a comment
There was a problem hiding this comment.
Change explanation and testing steps LGTM.
|
@mananjadhav can you review this today, please? Eager to close this out for the customer. Thanks! |
|
Yes. I’ll finish the review today. I did a quick review earlier. Will work on the comments today and finish the checklist. |
| // set, so the partial-export and export-again modals below (built from page-scoped counts) do | ||
| // not apply. Send the query instead of the loaded IDs, the same way bulk pay does, so the | ||
| // backend resolves and marks every matching report on this connection, not just this page. | ||
| const handleMarkAllMatchingAction = () => { |
There was a problem hiding this comment.
question: Offline still queues the command, clears the selection, and plays the success sound. Is that right?
There was a problem hiding this comment.
yes i think its fine we do that or do you suggest we should block this offline?
There was a problem hiding this comment.
Yes. I think we should block it like we do for other actions, wdyt?
There was a problem hiding this comment.
okay sounds good fixed!
|
@ishpaul777 No test covers |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppNA Android: mWeb ChromeNA iOS: HybridAppNA iOS: mWeb SafariNA MacOS: Chrome / Safariweb-queued-mark-as-exported-1.movweb-queued-mark-as-exported-2.mov |
|
@ishpaul777 Left a few comments before the checklist. |
mananjadhav
left a comment
There was a problem hiding this comment.
Just one last comment about the offline behavior.
Can be merged once covered.
|
sorry got a comment here: #102206 (comment) 🙏 |
QBO and Intuit Enterprise Suite share the same connectionName, so Auth can't yet tell them apart; it will read this once the backend fix lands.
Only set for a QBO connection that is the Intuit Enterprise Suite variant, reusing the existing ACCOUNTING_INTEGRATION_ALIASES pattern instead of inventing a new boolean.
|
Looks like we're just waiting on https://github.com/Expensify/Web-Expensify/pull/56543 (merged today) to get deployed to staging, then we can continue testing this PR 🙏 |
|
@mananjadhav can you please rereview last few changes since your approval |
|
Reopening to retrigger CI |
|
I guess this is off hold again, right? Ready for another round of testing? 🙏 |
|
Yes! |
|
Bump @mananjadhav 🙏 |
|
Reviewed the code changes again. All good. |
|
checklist CI checks aren't passing, can y'all help figure out why? |
Matches reviewer feedback on PR Expensify#102206 to interleave each step with its code instead of one upfront comment block.
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
|
🚧 Beamanator has triggered a test Expensify/App build. You can view the workflow run here. |
|
✋ 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/Beamanator in version: 9.5.2-0 🚀
|
|
No help site update needed. This is a bug fix: Mark as exported with Select all now marks every matching report, not just the loaded page, which is what users already expect. No sentence in an existing article becomes incorrect. |
|
🚀 Deployed to production by https://github.com/Julesssss in version: 9.5.2-4 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
Wires up the App side of bulk "Mark as exported" from Search. Today, when "Select all matching" is checked, clicking "Mark as exported" for a connection only marks the reports currently loaded on the page, since it sends the finite list of loaded report IDs.
This change sends the search query to a new
QueueBulkMarkAsExportedAuth command instead, so the backend resolves and marks every matching report on that connection, the same way bulk pay already works. When the user has a specific, finite selection (not "select all matching"), the existing per-report export / manually-exported flow is unchanged.Fixed Issues
$ #101106
PROPOSAL:
Tests
Offline tests
Queuing this command requires connectivity to reach the backend, matching the existing bulk pay action. When offline, the write command queues in Onyx like any other Search bulk action and sends once the connection is restored.
QA Steps
Same as Tests.
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
Screen.Recording.2026-09-24.at.9.21.43.PM.mov