Match Report Header and LHN Avatars #22467
Conversation
|
@parasharrajat 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] |
|
@parasharrajat 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] |
|
I am confused with the number of components that have similiar kind of logic.
I checked that mainly HeaderView is used for report headers. Why does the change was made to |
|
Can you please also clarify the changed features? for example, which report-related header is changed. |
|
Bump |
I agree with you and thought the same while looking into this. We could refactor here, but I don't think it's a priority.
AvatarWithDisplayName is only used in the headers, it was using incorrect logic and did not match the LHN. |
|
@parasharrajat bump on reviews |
|
Apologies for the delay. testing now. |
@grgia It looks the same to me. I am asking about which type of reports were broken before which you changed. I am asking this as the code is very much involved around these types of reports so if I know which one you changed, I can run special tests on those ones and find bugs in the code instead of just checking if the avatar on the header matches LHN. |
|
Expense Requests and Expense Reports (IOUs) @parasharrajat |
|
@parasharrajat here's the example case that this PR fixes - #22562 (comment) |
|
Thanks @PauloGasparSv! Let us know how things go tomorrow. If this still isn't resolved for you, then let's get another reviewer in the mix. |
|
The error is still happening here, I can't create Money Requests. Pretty sure it is unrelated to these changes though. I think this is happening because the |
|
@parasharrajat @Gonals One of you needs to 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] |
|
Sorry for the delay on this, I'm still stuck on that error. I tried pointing newDot to staging but after the Btw, I also managed to reproduce the error in staging by requesting money from @JmillsExpensify @grgia I've assigned puller bear here so another engineer can review while I figure this errors out. |
|
Had to step out after I assigned another engineer but now I'm back. Since this is blocking me from doing other stuff I'll give an update here if I fix my local environment and finish the review. That error is known and was reported in https://github.com/Expensify/Expensify/issues/301703! Did some more testing and I think I can bypass the error now. |
|
@PauloGasparSv Can you review the code first? C+ has tested, so I think the review is more important right now. |
PauloGasparSv
left a comment
There was a problem hiding this comment.
@PauloGasparSv Can you review the code first? C+ has tested, so I think the review is more important right now.
Sure thing @JmillsExpensify! I already reviewed the changes so I'm approving this based on these evidences.
Please feel free to merge, still trying to test here.
|
I managed to test Web now that I'm aware of https://github.com/Expensify/Expensify/issues/301703 and how to bypass it. Web testweb.movMerging this right now (won't test other platforms to focus on other issues) |
|
✋ 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/PauloGasparSv in version: 1.3.49-0 🚀
|
|
Thanks! |
|
🚀 Deployed to staging by https://github.com/PauloGasparSv in version: 1.3.50-0 🚀
|
|
🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.49-3 🚀
|
|
🚀 Deployed to production by https://github.com/puneetlath in version: 1.3.50-3 🚀
|



Details
As part of #20486, we want to ensure that the avatars match between report headers and LHN. This PR uses the logic from the LHN Options List to display the header avatars.
Fixed Issues
$ #22468
#20486
PROPOSAL:
Tests
Offline tests
QA Steps
Step 1. Create one of each of the following reports:
Step 2.
IOUs
From <userA full name>IOUs children (IOU Requests)
From <parent IOU report name>The parent IOU report can be seen in the LHN. In the below screenshot the parent IOU report name is "Marc Glasser owes $20.00" and so the child has that as its subheader.
From <parent IOU report name>.Expense Reports
From <userB full name> in <workspace name>From <workspace name>Expense Reports children (Expense Requests)
From <Expense parent report name> in <workspace name>. The Expense parent report name can be seen in the LHN of the expense report.From <Expense parent report name> in <workspace name>.For Example,

PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodWaiting for Copylabel for a copy review on the original GH to get the correct copy.STYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)/** comment above it */thisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)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
Web
Screen.Recording.2023-07-11.at.11.32.48.AM.mov
Mobile Web - Chrome
Mobile Web - Safari
Screen.Recording.2023-07-11.at.11.26.57.AM.mov
Desktop
iOS
Android
Screen.Recording.2023-07-11.at.11.31.43.AM.mov