Skip to content
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

[$250] Blank page appears between authentication and loading UI #49934

Open
2 of 6 tasks
Julesssss opened this issue Sep 30, 2024 · 48 comments
Open
2 of 6 tasks

[$250] Blank page appears between authentication and loading UI #49934

Julesssss opened this issue Sep 30, 2024 · 48 comments
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 External Added to denote the issue can be worked on by a contributor

Comments

@Julesssss
Copy link
Contributor

Julesssss commented Sep 30, 2024

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Version Number: 9.0.41-1 and earlier
Reproducible in staging?: Yes
Reproducible in production?: Yes
Email or phone of affected tester (no customers): Customer accounts with a medium-large amount of data

Action Performed:

  • Device is on a slow or restricted network
  • Launch New Expensify app
  • Log in with an account with many reports

Expected Result:

  • There will be no white screen after login

Actual Result:

  • White screen appears briefly after login

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android: Native
  • Android: mWeb Chrome
  • iOS: Native
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence

372109345-c082d55a-26d9-4ade-973d-e1562d5262f7.mov
371763733-127dec60-2e34-4b95-af30-0bae07ce10b2.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~021840753836543659093
  • Upwork Job ID: 1840753836543659093
  • Last Price Increase: 2024-11-25
  • Automatic offers:
    • shubham1206agra | Reviewer | 105126183
    • NJ-2020 | Contributor | 105126185
Issue OwnerCurrent Issue Owner: @NJ-2020
@Julesssss Julesssss added External Added to denote the issue can be worked on by a contributor Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Sep 30, 2024
@Julesssss Julesssss self-assigned this Sep 30, 2024
Copy link

melvin-bot bot commented Sep 30, 2024

Job added to Upwork: https://www.upwork.com/jobs/~021840753836543659093

@melvin-bot melvin-bot bot changed the title Blank page appears between authentication and loading UI [$250] Blank page appears between authentication and loading UI Sep 30, 2024
@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Sep 30, 2024
Copy link

melvin-bot bot commented Sep 30, 2024

Triggered auto assignment to Contributor-plus team member for initial proposal review - @shubham1206agra (External)

Copy link

melvin-bot bot commented Sep 30, 2024

Triggered auto assignment to @OfstadC (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

@Julesssss
Copy link
Contributor Author

Hey @blazejkustra, in case you are interested... I also added your repro video.

Copy link

melvin-bot bot commented Oct 3, 2024

@Julesssss, @OfstadC, @shubham1206agra Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@melvin-bot melvin-bot bot added the Overdue label Oct 3, 2024
Copy link

melvin-bot bot commented Oct 7, 2024

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

Copy link

melvin-bot bot commented Oct 7, 2024

@Julesssss, @OfstadC, @shubham1206agra Still overdue 6 days?! Let's take care of this!

@Julesssss Julesssss removed their assignment Oct 8, 2024
@melvin-bot melvin-bot bot removed the Overdue label Oct 8, 2024
@Julesssss
Copy link
Contributor Author

We need good reproduction steps before making this open to contributors.

@OfstadC OfstadC added the Needs Reproduction Reproducible steps needed label Oct 8, 2024
@MelvinBot
Copy link

This has been labelled "Needs Reproduction". Follow the steps here: https://stackoverflowteams.com/c/expensify/questions/16989

@mvtglobally
Copy link

@truph01
Copy link
Contributor

truph01 commented Oct 10, 2024

Cannot reproduce this issue after we migrate to useOnyx.

@Julesssss
Copy link
Contributor Author

@truph01, can you reproduce on web when throttling the network?

@truph01
Copy link
Contributor

truph01 commented Oct 10, 2024

@Julesssss No, I cannot reproduce in both web and ios after this PR is merged.

@Julesssss
Copy link
Contributor Author

Okay thank you. It looks like the PR was merged just after the latest test. Lets retry once more.

@Julesssss Julesssss added the retest-weekly Apply this label if you want this issue tested on a Weekly basis by Applause label Oct 10, 2024
@truph01
Copy link
Contributor

truph01 commented Oct 11, 2024

@Julesssss FYI, the above PR is reverted, so the bug can be reproduced.

@melvin-bot melvin-bot bot added the Overdue label Oct 11, 2024
@shubham1206agra
Copy link
Contributor

@OfstadC Can we get an expert contributor here?

@melvin-bot melvin-bot bot added Daily KSv2 and removed Monthly KSv2 labels Nov 22, 2024
@NJ-2020
Copy link
Contributor

NJ-2020 commented Nov 22, 2024

Proposal

Please re-state the problem that we are trying to solve in this issue.

Blank page appears between authentication and loading UI

What is the root cause of that problem?

The root cause is not from useOnyx or withOnyx, the root cause is the AuthScreens component take a while to load
So right here we're using React lazy to load the AuthScreens, and we're passing null fallback inside the Suspense component when the AuthScreens is still loading

const AuthScreens = lazy(() => lazyRetry(() => import('./AuthScreens')));
const PublicScreens = lazy(() => lazyRetry(() => import('./PublicScreens')));
type AppNavigatorProps = {
/** If we have an authToken this is true */
authenticated: boolean;
};
function AppNavigator({authenticated}: AppNavigatorProps) {
if (authenticated) {
// These are the protected screens and only accessible when an authToken is present
return (
<Suspense fallback={null}>
<AuthScreens />
</Suspense>

so when the AuthScreens is still loading since we pass null here it will show blank page
<Suspense fallback={null}>
<AuthScreens />

What changes do you think we should make in order to solve the problem?

Instead of passing null here we can pass loading spinner using like FullScreenLoadingIndicator

<Suspense fallback={null}>
<AuthScreens />

What alternative solutions did you explore? (Optional)

@shubham1206agra
Copy link
Contributor

Lets go with @NJ-2020's proposal.

🎀👀🎀 C+ reviewed

Copy link

melvin-bot bot commented Nov 22, 2024

Triggered auto assignment to @robertjchen, see https://stackoverflow.com/c/expensify/questions/7972 for more details.

Copy link

melvin-bot bot commented Nov 25, 2024

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@melvin-bot melvin-bot bot added the Overdue label Nov 25, 2024
Copy link

melvin-bot bot commented Nov 26, 2024

@robertjchen, @OfstadC, @shubham1206agra Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

Copy link

melvin-bot bot commented Nov 28, 2024

@robertjchen, @OfstadC, @shubham1206agra Huh... This is 4 days overdue. Who can take care of this?

@robertjchen
Copy link
Contributor

Thanks for review and discussion. Agreed with @NJ-2020 's proposal!

@melvin-bot melvin-bot bot removed the Overdue label Nov 29, 2024
@melvin-bot melvin-bot bot removed the Help Wanted Apply this label when an issue is open to proposals by contributors label Nov 29, 2024
Copy link

melvin-bot bot commented Nov 29, 2024

📣 @shubham1206agra 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app!

Offer link
Upwork job

Copy link

melvin-bot bot commented Nov 29, 2024

📣 @NJ-2020 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app!

Offer link
Upwork job
Please accept the offer and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review 🧑‍💻
Keep in mind: Code of Conduct | Contributing 📖

@melvin-bot melvin-bot bot added the Overdue label Dec 2, 2024
@NJ-2020
Copy link
Contributor

NJ-2020 commented Dec 2, 2024

I will be OOO for 1 day

cc: @shubham1206agra

Copy link

melvin-bot bot commented Dec 3, 2024

@robertjchen, @OfstadC, @shubham1206agra, @NJ-2020 Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@NJ-2020
Copy link
Contributor

NJ-2020 commented Dec 4, 2024

After digging into the issue, I think my solution is not the suitable solution for this issue because after adding FullScreenLoadingIndicator the blank screen still appears but with small duration

And also the loading spinner display every time like open the web, sign out, etc
And also if we login into an account and then logout and then login again the blank screens still display and the loading spinner is not shown, I think because the AuthScreens is loaded but maybe the AuthScreens component still loading which causes blank screen


So should I keep digging or we should reopen the issue to contributor?

cc: @shubham1206agra

@melvin-bot melvin-bot bot removed the Overdue label Dec 4, 2024
@shubham1206agra
Copy link
Contributor

@NJ-2020 Can you please keep digging?

Copy link

melvin-bot bot commented Dec 9, 2024

@robertjchen, @OfstadC, @shubham1206agra, @NJ-2020 Huh... This is 4 days overdue. Who can take care of this?

@melvin-bot melvin-bot bot added the Overdue label Dec 9, 2024
@muttmuure muttmuure moved this to MEDIUM in [#whatsnext] #quality Dec 9, 2024
@shubham1206agra
Copy link
Contributor

@NJ-2020 Update please

@NJ-2020
Copy link
Contributor

NJ-2020 commented Dec 11, 2024

Hi, I am very sorry.
I am OOO now for few days.
i am currently mourning my father who has passed away yesterday.

Thanks

cc: @shubham1206agra

@melvin-bot melvin-bot bot removed the Overdue label Dec 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 External Added to denote the issue can be worked on by a contributor
Projects
Development

No branches or pull requests

10 participants