-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement upgrade to collect when booking travel #53753
Conversation
src/languages/es.ts
Outdated
travel: { | ||
title: 'Viajes', | ||
description: | ||
'Expensify Travel es una nueva plataforma corporativa de reserva y gestión de viajes que permite a los miembros reservar alojamientos, vuelos, transporte y mucho más.', | ||
onlyAvailableOnPlan: 'Travel solo está disponible en el plan Controlar, a partir de ', | ||
}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cristipaval Can you please get the translation confirmation?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll confirm this comment first.
Screen.Recording.2024-12-09.at.6.50.15.PM.mov@Expensify/design Is this flow correct? |
@ryanschaffer @stitesExpensify is this correct? I don't think Travel is only available on Control, but rather, it just requires at least a workspace. So if anything, that modal should say "Only available on Collect and Control" |
That's my understanding too. It should be a prompt to create a workspace for those with none. Rather than a prompt to upgrade a collect workspace to control. |
@shawnborton What should be the button text? |
Rather than use this upgrade screen, what if we use the workspace confirmation step that we just merged? Maybe we can update the text to include something about travel? cc @jamesdeanexpensify we current say this:
Maybe we could say this:
|
I like that too. |
I thought we had decided to use the upgrade modal similar to categories in this situation? It's not an upgrade from Collect to Control, but it's still an upgrade from no workspace to a Collect workspace. Right? Or am I missing something? |
Yeah, that is what we'd landed on. I think Shawn just meant that we also now have this new page for confirming to create a workspace that might apply too. Not sure of the context of the new page though or the pattern of where we use one vs the other. |
What about for the copy (it felt a bit too long as suggested, so removing the reference to
|
Ah yeah that's a good point Danny. So here are my thoughts then:
Does that sound like a plan? |
Yeah that sounds good! |
That is correct. I think we settled on something like "Only available on paid workspaces" |
Aren't all workspaces paid? Or they will be soon with Ryan's project. Workspace creation will kick off the free trial. |
I haven't looked at that project yet, but the idea was that we need to prevent users who only have a personal policy on OldDot |
Ah, got it. Thank you! |
![]() @shawnborton Can you please let me know the correct text here? |
cc @jamesdeanexpensify for thoughts but maybe we can do:
|
Quick clarifying question - have they (1) upgraded their existing workspace to the Collect plan or (2) upgraded to a (new) workspace on the Collect plan? That might determine my copy feedback (and then maybe we should revisit the categories copy based on this, too). |
I think we show this because the user didn't have any workspace period, so we ask them to at least make a workspace first (much like we do when someone tries to categorize something without a workspace). I think we just start them off on a Collect workspace. |
Ok, cool! Would you be down with:
|
Love it, let's do it |
@shubham1206agra Is this ready for review? |
Hold on #53845 as we require workspace confirmation screen. |
@shubham1206agra, the PR is merged and it's been in staging for more than 1 day. I hope it will survive and won't get reverted and will end up in production. I think you can continue on this one, given that the deadline for travel is at the end of next week when we want this deployed. |
So are you saying we'll need to drop them back on the |
Yes. But I am not against refinement in this flow in the later stage. |
@mananjadhav Can you start the review now? Since this is a bit urgent. |
I can definitely start this but I am not sure if I'll be able to finish it immediately. Let me prioritize and try this. |
Screenshots/VideosAndroid: NativeAndroid: mWeb ChromeiOS: NativeiOS: mWeb SafariMacOS: Chrome / SafariMacOS: Desktop |
@mananjadhav Please continue with the review. |
src/pages/Travel/TravelUpgrade.tsx
Outdated
createDraftWorkspace('', false, params.name, params.policyID, params.currency, params.avatarFile as File); | ||
setShouldShowConfirmation(false); | ||
setIsUpgraded(true); | ||
createWorkspace('', false, params.name, params.policyID, '', params.currency, params.avatarFile as File); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mananjadhav What should the onboarding intent be here?
@mananjadhav Bump here |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed the code, will work on the checklist and QA.
Reviewer Checklist
Screenshots/VideosAndroid: NativeAndroid: mWeb Chromemweb-chrome-book-travel.moviOS: Nativeios-book-travel.moviOS: mWeb Safarimweb-safari-book-travel.movMacOS: Chrome / Safariweb-book-travel.movMacOS: Desktopdesktop-book-travel_f0HkfWeP.mp4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have issues with Android build, hence skipping that.
✋ 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/cristipaval in version: 9.0.95-0 🚀
|
🚀 Deployed to production by https://github.com/Julesssss in version: 9.0.95-6 🚀
|
Explanation of Change
Fixed Issues
$ #48305
Tests
Pre-requisite - Have a new account with
spotnanaTravel
beta enabled and no workspace created.Offline tests
Same as Tests
QA Steps
Same as Tests
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label and/or tagged@Expensify/design
so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
Screen.Recording.2025-01-29.at.12.13.58.PM.mov
Android: mWeb Chrome
Screen.Recording.2025-01-29.at.11.58.52.AM.mov
iOS: Native
Screen.Recording.2025-01-29.at.12.09.22.PM.mov
iOS: mWeb Safari
Screen.Recording.2025-01-29.at.11.56.30.AM.mov
MacOS: Chrome / Safari
Screen.Recording.2025-01-29.at.12.22.05.AM.mov
MacOS: Desktop
Screen.Recording.2025-01-29.at.12.02.17.PM.mov