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

Plugin Management: Implement multi-site(large screen) view for the plugin management #66219

Merged
merged 8 commits into from
Aug 8, 2022

Conversation

yashwin
Copy link
Contributor

@yashwin yashwin commented Aug 3, 2022

Proposed Changes

This PR implements the large screen view(>1080px) for multi-site plugin management. The small screen view(<1080px) will be implemented in a different PR

Testing Instructions

Prerequisites

Since this change is made specifically for agencies, you must set yourself(partner) as an agency - 2c49b-pb. Make sure to switch it back to the previous type.

Instructions

  1. Run git checkout add/plugin-management-multi-site-large-screen-view and yarn start-jetpack-cloud-p
  2. Open http://jetpack.cloud.localhost:3001/, and you'll be redirected to the /dashboard.
  3. Click on Plugins in the sidebar -> Verify that the new UI for the plugin is shown as below.

Screenshot 2022-08-03 at 3 21 20 PM

Screenshot 2022-08-03 at 3 21 01 PM

  1. Clicking on Sites count, Plugin name & Update text should redirect the user to the plugin details page.

Screenshot 2022-08-03 at 3 28 23 PM

  1. Verify search works as expected.
  2. Click on all the tabs - All, Active, Inactive & Updates and verify the plugins are shown as per the filter, and the URL is changing accordingly.
  3. Verify these changes have not affected anything in Calypso Blue.

NOTE: The more actions icon(...) is just a placeholder and will be updated later in a different PR, and the single-site view will be implemented in the upcoming PR.

Pre-merge Checklist

Complete applicable items on this checklist before merging into the trunk. Inapplicable items can be left unchecked.

The PR author and reviewer are responsible for completing the checklist.

Related to 1202518759611394-as-1202698250096202, 1202518759611394-as-1202672925908038 & 1202518759611394-as-1202672925908026

@yashwin yashwin added Jetpack Jetpack Cloud Anything related to the Jetpack Cloud (cloud.jetpack.com) labels Aug 3, 2022
@yashwin yashwin self-assigned this Aug 3, 2022
@matticbot
Copy link
Contributor

matticbot commented Aug 3, 2022

Here is how your PR affects size of JS and CSS bundles shipped to the user's browser:

App Entrypoints (~39 bytes added 📈 [gzipped])

name           parsed_size           gzip_size
entry-stepper        +52 B  (+0.0%)      +39 B  (+0.0%)

Common code that is always downloaded and parsed every time the app is loaded, no matter which route is used.

Sections (~1656 bytes added 📈 [gzipped])

name                             parsed_size           gzip_size
plugins                              +5503 B  (+0.7%)    +1459 B  (+0.6%)
jetpack-cloud-plugin-management      +5503 B  (+0.7%)    +1454 B  (+0.7%)
themes                                 +52 B  (+0.0%)      +18 B  (+0.0%)
theme                                  +52 B  (+0.0%)      +18 B  (+0.0%)
stats                                  +52 B  (+0.0%)      +18 B  (+0.0%)
site-purchases                         +52 B  (+0.0%)      +16 B  (+0.0%)
settings-writing                       +52 B  (+0.0%)      +14 B  (+0.0%)
settings-security                      +52 B  (+0.0%)      +18 B  (+0.0%)
settings-performance                   +52 B  (+0.0%)      +18 B  (+0.0%)
settings-jetpack                       +52 B  (+0.0%)      +18 B  (+0.0%)
settings-discussion                    +52 B  (+0.0%)      +18 B  (+0.0%)
settings                               +52 B  (+0.0%)      +16 B  (+0.0%)
security                               +52 B  (+0.0%)      +18 B  (+0.0%)
scan                                   +52 B  (+0.0%)      +16 B  (+0.0%)
reader                                 +52 B  (+0.0%)      +18 B  (+0.0%)
purchases                              +52 B  (+0.0%)      +16 B  (+0.0%)
posts-custom                           +52 B  (+0.0%)      +21 B  (+0.0%)
posts                                  +52 B  (+0.0%)      +21 B  (+0.0%)
plans                                  +52 B  (+0.0%)      +21 B  (+0.0%)
people                                 +52 B  (+0.0%)      +16 B  (+0.0%)
pages                                  +52 B  (+0.0%)      +18 B  (+0.0%)
notification-settings                  +52 B  (+0.0%)      +18 B  (+0.0%)
media                                  +52 B  (+0.0%)      +19 B  (+0.0%)
marketing                              +52 B  (+0.0%)      +18 B  (+0.0%)
jetpack-cloud-partner-portal           +52 B  (+0.0%)      +38 B  (+0.0%)
google-my-business                     +52 B  (+0.0%)      +18 B  (+0.0%)
earn                                   +52 B  (+0.0%)      +18 B  (+0.0%)
domains                                +52 B  (+0.0%)      +16 B  (+0.0%)
comments                               +52 B  (+0.0%)      +17 B  (+0.0%)
jetpack-cloud-agency-dashboard         +44 B  (+0.0%)      +42 B  (+0.0%)

Sections contain code specific for a given set of routes. Is downloaded and parsed only when a particular route is navigated to.

Async-loaded Components (~39 bytes added 📈 [gzipped])

name                                               parsed_size           gzip_size
async-load-store-app-store-stats                         +52 B  (+0.0%)      +18 B  (+0.0%)
async-load-design-playground                             +52 B  (+0.0%)      +18 B  (+0.0%)
async-load-design-blocks                                 +52 B  (+0.0%)      +21 B  (+0.0%)
async-load-design                                        +52 B  (+0.0%)      +18 B  (+0.0%)
async-load-calypso-post-editor-editor-media-modal        +52 B  (+0.0%)      +18 B  (+0.0%)
async-load-calypso-components-jetpack-portal-nav         +52 B  (+0.1%)      +18 B  (+0.1%)

React components that are loaded lazily, when a certain part of UI is displayed for the first time.

Legend

What is parsed and gzip size?

Parsed Size: Uncompressed size of the JS and CSS files. This much code needs to be parsed and stored in memory.
Gzip Size: Compressed size of the JS and CSS files. This much data needs to be downloaded over network.

Generated by performance advisor bot at iscalypsofastyet.com.

@yashwin yashwin requested a review from a team August 3, 2022 10:43
@matticbot matticbot added the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Aug 3, 2022
@yashwin yashwin requested a review from a team August 3, 2022 10:43
@yashwin yashwin marked this pull request as ready for review August 3, 2022 10:43
@yashwin yashwin force-pushed the add/plugin-management-multi-site-large-screen-view branch from 1ec7a89 to d1892f5 Compare August 3, 2022 10:52
@vitozev
Copy link
Contributor

vitozev commented Aug 4, 2022

I've noticed that when you switch between tabs, the counter for the "All" tab is updated incorrectly.

Screen.Capture.on.2022-08-04.at.13-04-19.mp4

Copy link
Contributor

@vitozev vitozev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR tests well, and I couldn't identify any regression in Calypso Blue. Excellent job, @yashwin.

I've left a few minor comments.

@yashwin
Copy link
Contributor Author

yashwin commented Aug 4, 2022

Thanks for the review, @vitozev. I have addressed all your comments.

Copy link
Contributor

@vitozev vitozev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for making these changes! LGTM!

I noticed only one minor issue, and we can probably tackle it separately.

Can we easily trigger the search logic when we switch between tabs?

Screen.Capture.on.2022-08-04.at.15-46-55.mov

@yashwin
Copy link
Contributor Author

yashwin commented Aug 4, 2022

I noticed only one minor issue, and we can probably tackle it separately.

Can we easily trigger the search logic when we switch between tabs?

I have fixed this issue. Thanks for reporting, @vitozev 🙂

Copy link
Contributor

@vitozev vitozev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! The latest fixes look good, and no regression was found after implementation.

@yashwin yashwin force-pushed the add/plugin-management-multi-site-large-screen-view branch from fb2d8aa to 4d3cbf3 Compare August 8, 2022 05:53
@yashwin yashwin force-pushed the add/plugin-management-multi-site-large-screen-view branch from 4d3cbf3 to fb618f0 Compare August 8, 2022 06:35
@yashwin yashwin merged commit b8be9a1 into trunk Aug 8, 2022
@yashwin yashwin deleted the add/plugin-management-multi-site-large-screen-view branch August 8, 2022 07:07
@github-actions github-actions bot removed the [Status] Needs Review The PR is ready for review. This also triggers e2e canary tests and wp-desktop tests automatically. label Aug 8, 2022
@a8ci18n
Copy link

a8ci18n commented Aug 8, 2022

This Pull Request is now available for translation here: https://translate.wordpress.com/deliverables/7466929

Thank you @yashwin for including a screenshot in the description! This is really helpful for our translators.

@a8ci18n
Copy link

a8ci18n commented Aug 18, 2022

Translation for this Pull Request has now been finished.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Jetpack Cloud Anything related to the Jetpack Cloud (cloud.jetpack.com) Jetpack
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants