Feature: Empty state UI for LHN#37361
Conversation
…pty-state-ui-lhn
…pty-state-ui-lhn
|
@DylanDylann 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] |
|
@DylanDylann The logic of adding Concierge chat here is supposed to remove but I need testing it carefully. For now, please hard code that. |
|
@tienifr Yeah, ping me again when all logic is ready |
| update: 'Actualizar', | ||
| member: 'Miembro', | ||
| role: 'Role', | ||
| emptyLHN: { |
|
@DylanDylann The changes are ready for review. I tested removing the logic to add Concierge chat when report list is empty and verified it did not cause any trouble. @roryabraham Also please add |
|
design label didn't work so I'm manually requesting review from @dannymcclain, who created the mockups |
This comment has been minimized.
This comment has been minimized.
|
@tienifr Jest Unit Tests / Storybook tests (pull_request) is failed |
…pty-state-ui-lhn
|
I'm working on the storybook test failure. Will post update tomorrow. |
|
I've resolved all @roryabraham feedback above and fixed Storybook test failure. @DylanDylann This is ready for your review & retest again. |
|
|
||
| // We can ignore the "module not installed" warning from lottie-react-native | ||
| // because we are not using the library for JSON format of Lottie animations. | ||
| config.ignoreWarnings = [{module: new RegExp('node_modules/lottie-react-native/lib/module/LottieView/index.web.js')}]; |
There was a problem hiding this comment.
This was referenced from:
App/config/webpack/webpack.common.js
Lines 61 to 65 in 59a71f3
I already tried that stats.warningsFilter config and used the correct module path but it didn't work. I'm not sure about that. However, based on the recommendation here, ignoreWarnings seems a better alternative.
There was a problem hiding this comment.
@tienifr If we don't add this change, which story test will be failed
There was a problem hiding this comment.
There're no specific test fail, it just threw an error/warning when we built the story page. More info here (Please expand the Storybook run section and scroll to bottom).
| shouldEmbedLinkWithSubtitle?: boolean; | ||
|
|
||
| /** Render custom subtitle */ | ||
| CustomSubtitle?: React.ReactElement; |
There was a problem hiding this comment.
PascalCase is correct for component props
|
App/src/components/LHNOptionsList/OptionRowLHN.tsx Lines 50 to 52 in b282693 Should we remove this code or move it out of |
Reviewer Checklist
Screenshots/VideosAndroid: NativeScreen.Recording.2024-04-01.at.11.43.17.movAndroid: mWeb ChromeScreen.Recording.2024-04-01.at.11.40.23.moviOS: NativeScreen.Recording.2024-04-01.at.11.46.35.moviOS: mWeb SafariScreen.Recording.2024-04-01.at.11.43.57.movMacOS: Chrome / SafariMacOS: Desktop |
There was a problem hiding this comment.
@roryabraham Could you help to re-run all tests?
…pty-state-ui-lhn
|
@roryabraham I approved this PR to re-run all tests. A minor comment. Everything else looks good |
|
@roryabraham looks like this was merged without a test passing. Please add a note explaining why this was done and remove the |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
not an emergency, we're working on fixing this: https://expensify.slack.com/archives/C07J32337/p1711999860875239?thread_ts=1711998323.452789&cid=C07J32337 |
|
🚀 Deployed to staging by https://github.com/roryabraham in version: 1.4.59-0 🚀
|
|
🚀 Deployed to production by https://github.com/Julesssss in version: 1.4.60-13 🚀
|
| onFirstItemRendered(); | ||
| }, [onFirstItemRendered]); | ||
|
|
||
| const emptyLHNSubtitle = useMemo( |
There was a problem hiding this comment.
UI was broken on Android devices. Let's make sure we test this so that the UI looks good on each platform. #41349

Details
This PR implements an "empty state" UI when users have cleared out the LHN in #focus mode on small screen devices.
Fixed Issues
$ #34926
PROPOSAL: #34926 (comment)
Tests
Small screen devices only
#focusmodeOffline tests
NA
QA Steps
Small screen devices only
#focusmodePR 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)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel so 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
Native
Screen.Recording.2024-03-04.at.22.06.56-compressed.mov
Screen.Recording.2024-03-04.at.22.06.28-compressed.mov
mWeb
Screen.Recording.2024-03-04.at.22.07.43-compressed.mov
Screen.Recording.2024-03-04.at.22.07.22-compressed.mov
Screen.Recording.2024-03-04.at.22.05.59-compressed.mov