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

Implement Workspace Switcher #31887

Closed
hayata-suenaga opened this issue Nov 26, 2023 · 34 comments
Closed

Implement Workspace Switcher #31887

hayata-suenaga opened this issue Nov 26, 2023 · 34 comments
Assignees
Labels
Daily KSv2 NewFeature Something to build that is a new item.

Comments

@hayata-suenaga
Copy link
Contributor

hayata-suenaga commented Nov 26, 2023

Display a list of workspaces when the workspace avatar is clicked so that users can "switch" or select workspaces from the list.

Screenshot 2023-11-26 at 9 31 34 AM

The list of workspace should look like this:

Screenshot 2023-11-26 at 9 32 48 AM

Users use this list of workspaces to switch between workspaces.

More detailed specifications are found in this section of the design doc.

Note that the Workspace Switcher is different from the list of workspaces that is displayed on the Settings page of the Expensify/All.

The completion of this issue includes:

  • Get all workspaces the user belongs to
  • Workspace Search feature
  • Highlight the workspace that is currently active with the checkmark
  • Display of RBR and GBR depending on if the workspace has any reports with an error or reports that need user attention (ex. money request that hasn't been paid).
  • Changing the active workspace when the new workspace is selected from the list.

The high level implementation is specified in this part of the design doc. You don't have to strictly follow the implementation ideas suggested in the design doc or in the above bullet point list

Special notes about BRB and GBR requirements

  • A utility function is implemented in this issue. Assume that this utility function exists.
  • Given a workspace, this utility function iterates over all the reports for the given workspace to figure out if it contains any reports with an error or any unread reports.
  • The usage of this utility function should be minimized by memoizing the result of the calculation as much as possible.
  • Take a special care to figure out RBR and GBR for the Expensify/All workspace (that represents reports across all workspaces). If any reports across workspaces has an error or need attention, RBR or GBR should be displayed accordingly.
  • We already know if each workspace contains RBR or GBR. Use that information to figure out BRB or GBR or the Expensify/All workspace. Note that Expensify/All also contains off-workspace reports (reports that don't belong to any workspace). Even if any of the workspaces don't have RBR or GBR, the Expensify/All should have RBR or GBR if any off-workspace reports has an error or unread.
@hayata-suenaga hayata-suenaga added the NewFeature Something to build that is a new item. label Nov 26, 2023
@hayata-suenaga hayata-suenaga self-assigned this Nov 26, 2023
Copy link

melvin-bot bot commented Nov 26, 2023

@melvin-bot melvin-bot bot added the Weekly KSv2 label Nov 26, 2023
@hayata-suenaga hayata-suenaga changed the title Implement Workspace List Implement Workspace Switcher Nov 26, 2023
@trjExpensify
Copy link
Contributor

Oh cool, but we're held here until the detailed doc is written and through review?

@hayata-suenaga hayata-suenaga changed the title Implement Workspace Switcher [Draft] Implement Workspace Switcher Nov 27, 2023
@hayata-suenaga
Copy link
Contributor Author

Yes @trjExpensify I was drafting the issue but didn't know people are automatically assigned

Changed the title to make it clear that no one should start working on this now

@trjExpensify
Copy link
Contributor

trjExpensify commented Nov 27, 2023 via email

@trjExpensify
Copy link
Contributor

Doc is in review :)

@mateuuszzzzz
Copy link
Contributor

.

Copy link

melvin-bot bot commented Dec 7, 2023

📣 @mateuuszzzzz! 📣
Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
Please follow these steps:

  1. Make sure you've read and understood the contributing guidelines.
  2. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
  3. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
  4. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.
    Screen Shot 2022-11-16 at 4 42 54 PM
    Format:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

@hayata-suenaga
Copy link
Contributor Author

@mateuuszzzzz from Software Mansion (expert agency) is going to work on this issue 🚀

@hayata-suenaga hayata-suenaga changed the title [Draft] Implement Workspace Switcher Implement Workspace Switcher Dec 12, 2023
@melvin-bot melvin-bot bot added the Overdue label Dec 18, 2023
@trjExpensify
Copy link
Contributor

Latest is here. We should have this on daily right @hayata-suenaga?

@melvin-bot melvin-bot bot removed the Overdue label Dec 18, 2023
@hayata-suenaga hayata-suenaga added Daily KSv2 and removed Weekly KSv2 labels Dec 18, 2023
@melvin-bot melvin-bot bot added the Overdue label Dec 21, 2023
Copy link

melvin-bot bot commented Dec 22, 2023

@trjExpensify, @mateuuszzzzz, @hayata-suenaga Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

Copy link

melvin-bot bot commented Dec 26, 2023

@trjExpensify, @mateuuszzzzz, @hayata-suenaga 6 days overdue. This is scarier than being forced to listen to Vogon poetry!

@trjExpensify
Copy link
Contributor

Work in progress, discussed a good gotcha today here.

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Jan 12, 2024
@trjExpensify
Copy link
Contributor

Finalising that one in thread!

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Jan 15, 2024
@hayata-suenaga
Copy link
Contributor Author

the latest daily update is here

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Jan 17, 2024
@trjExpensify
Copy link
Contributor

Adhoc build is looking good, few bugs to resolve are in progress! Latest over here.

@hayata-suenaga
Copy link
Contributor Author

catching up with slack discussions (comment to remove overdue for me)

Copy link

melvin-bot bot commented Jan 29, 2024

@trjExpensify, @mateuuszzzzz, @hayata-suenaga 6 days overdue. This is scarier than being forced to listen to Vogon poetry!

@melvin-bot melvin-bot bot added the Overdue label Jan 29, 2024
@hayata-suenaga
Copy link
Contributor Author

the feature branch is very close to be merged

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Jan 29, 2024
@trjExpensify
Copy link
Contributor

PR merged today!

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Feb 1, 2024
@trjExpensify
Copy link
Contributor

Deployed to staging, Melv.

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Feb 5, 2024
@hayata-suenaga
Copy link
Contributor Author

the feature branch was merged. C+ payment is handled in another issue. Closing this issue now

@melvin-bot melvin-bot bot removed the Overdue label Feb 7, 2024
@github-project-automation github-project-automation bot moved this from Release 1: Ideal Nav & Collect Simplfied Profile, Members, Categories, Workflows (approvals) to Done in [#whatsnext] Wave 08 - Collect Plan Admins Feb 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Daily KSv2 NewFeature Something to build that is a new item.
Projects
No open projects
Development

No branches or pull requests

4 participants