-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
Update chat with account manager banner #52682
Conversation
@allgandalf was asking for help on the translation but their proposal works great for the translation: en: Need something specific? Chat with your account manager |
@mkzie2 do you think you can get this one ready for review today? |
@allgandalf 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] |
@allgandalf This PR is ready. |
I don't think the banner is supposed to have a hover state: Let's check with the @Expensify/design though, but I think we should remove that (no background color change, don't change the color of the icon either). Also from @dannymcclain 's mock, it looks like maybe the gap between the green button and the close icon should be slightly larger (add 4px more). Here is the mock: |
@mkzie2 please make the changes ^ and then perhaps we should run an AdHoc build to test better @shawnborton ? |
@mkzie2 why do we go to self-dm when we click chat to accounts manager? Also testing steps are not clear, will this banner appear forever ? |
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.
Please address the feedback
@allgandalf Regarding #52682 (comment), I mocked |
@allgandalf I updated.
I only mocked |
@marcaaron how do we get to the AM DM on development? current we get directed to self-dm |
Looks like there's an |
@marcaaron @shawnborton can any of you trigger an ADHOC build please, lets test this |
Will run the test build now for you 🚀 |
🚧 @shawnborton has triggered a test build. You can view the workflow run here. |
@mkzie2 can you please share a reproducible steps video on the ad hoc build showing how to bring the banner up and the redirection to chat please |
@marcaaron How can we create an account with an account manager cc @allgandalf |
I'm confused by the question. Can we not use the trick that I mentioned already and set any |
@allgandalf @mkzie2 let's pull out the stops here? Having this show up is not so easy because you need a validated private domain and we would also need to add an account manager for you. We likely have test accounts for internal use. @danielrvidal might be able to set something up for us, but I'd recommend just hardcoding something for test purposes and then we can send this to QA for further testing. |
@marcaaron C+ is requesting me for testing on the ad hoc build why I'm asking about this question. About the dev env, yeah we can test by hardcoding. |
All cool, I will complete the checklist then, thanks :)) |
@allgandalf are you all good to keep making progress or do you need anything from me? |
All good, i was waiting for a comment to get addressed, completing the checklist now |
Reviewer Checklist
Screenshots/Videos |
@mkzie2 please update the QA steps to have the following: Precondition:
|
Also please mark this PR as : [Internal QA] |
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.
Design wise LGTM, lets internal QA this and check the functionality 🚀
@@ -113,6 +115,9 @@ function ReportScreen({route, currentReportID = '', navigation}: ReportScreenPro | |||
const [modal] = useOnyx(ONYXKEYS.MODAL); | |||
const [isComposerFullSize] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT_IS_COMPOSER_FULL_SIZE}${reportIDFromRoute}`, {initialValue: false}); | |||
const [accountManagerReportID] = useOnyx(ONYXKEYS.ACCOUNT_MANAGER_REPORT_ID, {initialValue: ''}); | |||
// If accountManagerReportID is an empty string, using ?? can crash the app. | |||
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing |
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.
@marcaaron we needed to do this because accountManagerReportID
can be an empty string which is a valid string in javascript, using ??
would have never fallen us back to -1
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.
LGTM but let's fix all the abbreviations and change "am" to "accountManager" wherever it appears.
src/languages/en.ts
Outdated
@@ -39,6 +39,7 @@ import type { | |||
ChangeTypeParams, | |||
CharacterLengthLimitParams, | |||
CharacterLimitParams, | |||
ChatWithAMParams, |
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 would prefer if this was ChatWithAccountManagerParams
and everywhere else we do am
changed to accountManager
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.
@marcaaron I updated.
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.
Amazing, thanks for the changes!
✋ 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/marcaaron in version: 9.0.68-0 🚀
|
@mountiny is this internal QA #52682 (comment)? |
Yes this one is Internal QA, sorry for not updating the title :) I asked this to be marked as Internal here but couldn't follow up c.c. @marcaaron |
Seems like the internal QA is quite tricky, the changes are quite simple so I feel like we do not have to hold deploy on this in case the QA is not by the time to deploy |
🚀 Deployed to production by https://github.com/mountiny in version: 9.0.68-7 🚀
|
Explanation of Change
Fixed Issues
$ #51433
PROPOSAL: #51433 (comment)
Tests
Offline tests
Same
QA Steps
Requirement: Have a validated domain admin account
Add someone as the “Account Manager” via Concierge tool
Have a domain admin log into NewDot and navigate to the Concierge chat
Verify there is a “Chat now” button
Tap the button and verify they are brought to the chat with the Account Manager
Verify that no errors appear in the JS console
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.2024-11-18.at.18.04.27.mov
Android: mWeb Chrome
Screen.Recording.2024-11-18.at.18.03.25.mov
iOS: Native
Screen.Recording.2024-11-19.at.00.53.49.mov
iOS: mWeb Safari
Screen.Recording.2024-11-19.at.00.59.59.mov
MacOS: Chrome / Safari
Screen.Recording.2024-11-18.at.16.14.23.mov
MacOS: Desktop
Screen.Recording.2024-11-19.at.01.03.30.mov