Add Travel Enablement Flow to NewDot Workspace "More Features"#71630
Conversation
Codecov Report❌ Looks like you've decreased code coverage for some files. Please write tests to increase, or at least maintain, the existing level of code coverage. See our documentation here for how to interpret this table.
|
stitesExpensify
left a comment
There was a problem hiding this comment.
Looking good so far!
|
@fedirjh Can you also please take a look at this PR? We need to have the new key named |
|
FYI @dukenv0307 the API PR is now on staging |
|
Thank you @stitesExpensify, it worked fine on my side |
|
@alitoshmatov 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] |
|
Going to run a test build for easier testing. |
|
🚧 @shawnborton has triggered a test Expensify/App build. You can view the workflow run here. |
This comment has been minimized.
This comment has been minimized.
|
Agree with all of your feedback Shawn! We definitely want to use the icon you suggested (luggage with lines)—the same one we use for the GC option. I can't seem to find it in the repo though, but it must be there since we're using it in global create? |
|
Thank you @shawnborton @dannymcclain, I fixed all these comments above Screen.Recording.2025-10-08.at.15.29.31.mov |
|
All yours @alitoshmatov |
|
We're just waiting for my review on this one :) The PR is very big though so it's taking some time with other priorities |
|
Btw, mostly for context: Getting this PR out helps us resolve an on-going onboarding issue, where we are promoting Invoicing. It's being activated by users not understanding what it is, and despite the feature not being ready for group business contexts yet. |
|
So it'd be good to prioritize this if you're around next week and things have slowed down. |
|
I plan on having it fully reviewed (and hopefully merged) today! |
stitesExpensify
left a comment
There was a problem hiding this comment.
Code looks great and things appear to work well!
|
The test steps and QA are also very light, I'm going to write some up and replace the ones in the OP before merging to make sure that we don't break anything. |
|
Niiiiiiiice!
…On Fri, 19 Dec 2025 at 13:54, Brandon Stites ***@***.***> wrote:
*stitesExpensify* left a comment (Expensify/App#71630)
<#71630 (comment)>
The test steps and QA are also very light, I'm going to write some up and
replace the ones in the OP before merging to make sure that we don't break
anything.
—
Reply to this email directly, view it on GitHub
<#71630 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AOKVCACQXV6LVIUEM4MG5ID4CRCWHAVCNFSM6AAAAACH6UF6S2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMNZWGE2TOMBRG4>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
|
Checklist check was failing because of a previous comment that was empty, just deleted it and running again |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
@stitesExpensify, it seems we planned to work on it in a follow-up PR #70187 (comment) |
|
@stitesExpensify Can you please test Test case:3 |
|
🚀 Deployed to staging by https://github.com/stitesExpensify in version: 9.2.85-0 🚀
|
|
@m-natarajan test case 3 was a 🟢 |
|
Just a heads up that this PR is linked to a deploy blocker. The issue looks relatively easy to fix and this PR seems quite large so I'd rather fix the issue. WDYT @stitesExpensify ? |
|
I agree, I would rather not revert. Looking into a fix now |
|
Just put up a PR, waiting for the adhoc build so that I can test |
|
I think we might actually have a worse bug here and want to revert that I found while testing the above.
Can someone else test and see if they get the same result? My guess is it's because we changed the route? |
|
Commented here to get both checked |
I can reproduce this issue 🫨 |
|
🚀 Deployed to production by https://github.com/marcaaron in version: 9.2.85-7 🚀
|
| const handleClose = useCallback(() => { | ||
| requestTravelAccess(); | ||
| Navigation.goBack(backTo); |
There was a problem hiding this comment.
requestTravelAccess is called even when close modal without submitting magic code. So it caused this regression.
More details: #78750 (comment)
| return; | ||
| } | ||
| enablePolicyTravel(policyID, isEnabled); | ||
| }, |
There was a problem hiding this comment.
Coming from #81046, we should handle onPress to enable navigation to WORKSPACE_TRAVEL.









Explanation of Change
This PR moves all of travel to its own tab in the workspace, and a feature that you can add via the UI, rather than a separated page from the FAB.
Fixed Issues
$ #70187
PROPOSAL:
Tests
Test case 1:
Test case 2:
Book Traveloption appears if the Travel feature is enabled on the default workspaceTest case 3 (internal, ping @stitesExpensify :
Offline tests
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))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.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
Android: Native
Screen.Recording.2025-11-24.at.17.38.07.mov
Android: mWeb Chrome
Screen.Recording.2025-11-24.at.16.47.14.mov
iOS: Native
Screen.Recording.2025-11-24.at.17.36.04.mov
iOS: mWeb Safari
Screen.Recording.2025-11-24.at.16.45.40.mov
MacOS: Chrome / Safari
Screen.Recording.2025-11-24.at.16.39.17.mov
MacOS: Desktop
Screen.Recording.2025-11-24.at.17.41.31.mov