-
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
New chat page list refactor 2 #38610
New chat page list refactor 2 #38610
Conversation
@rushatgabhane 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] |
Reviewer Checklist
Screenshots/VideosAndroid: NativeiOS: NativeMacOS: Chrome / Safaricomp.movScreen.Recording.2024-04-10.at.23.28.08.mov |
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.
looks good, we just have to fix the type checks
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.
Bug: arrow up navigation goes out of bounds.
- Go to an account that has >500 contacts
- Press arrow up
Expected: last contact is selected
Actual: out of bounds
Uncaught Invariant Violation: scrollToIndex out of range: requested index 4327 is out of 0 to 510
Screen.Recording.2024-03-30.at.13.18.06.mov
Looks like 537 files changed? |
Just to clarify, when you say "last contact" do you mean the list loops around to the bottom of the list or that it stops at the top of the list. Cause I think the latter should happen. Perhaps @Expensify/design has any thoughts though. |
yes i mean that it should loop around and the last contact should be highlighted. this is how it works on staging so i doubt we should change that here |
Dang it's about to get spicy up in here because I also think it should just stop at the top of the list. 🌶️ 😅 I really don't see the benefit in looping to the bottom of the list. (But maybe I'm missing something!) Basically is this error happening because we only load 500 items at a time? Like if you had 1,000 contacts, we'd load 500 and then once you scrolled to the bottom we'd load 500 more, right? So if you try to loop around to the "last" contact, we haven't actually loaded it yet which is causing this error? |
Agree with you. Think it should just stop at the top |
76d810e
to
2995f2c
Compare
@rushatgabhane sorry closed the PR, 'cause dealing with all the conflicts was just to much. I've reset the branch and cherry picked the changes from a backup. Reopened again. |
@rushatgabhane can you review this quickly please. I would like to close this PR ASAP. |
I had approved this earlier, @cristipaval all yours |
DANG! conflicts, could you please resolve them, @lukemorawski |
@cristipaval fixed them conflicts! |
✋ 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: 1.4.63-0 🚀
|
🚀 Deployed to production by https://github.com/mountiny in version: 1.4.63-21 🚀
|
Details
This PR refactors the NewChatPage to use new component.
A new param has been added to to allow it to display a component on the right hand side of each list item. This param allows to pass a react node or a function that will render a component.
Fixed Issues
$ #20354
PROPOSAL: no proposal
Tests
Offline tests
same as QA
QA Steps
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.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
native.android.mov
Android: mWeb Chrome
web.android.mov
iOS: Native
native.ios.mov
iOS: mWeb Safari
web.ios.mov
MacOS: Chrome / Safari
web.desktop.mov
MacOS: Desktop
native.desktop.mov