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

Introducing consistency in colors for deposits across pages #8382

Merged
merged 12 commits into from
Oct 30, 2024

Conversation

naman03malhotra
Copy link
Contributor

@naman03malhotra naman03malhotra commented Mar 14, 2024

Fixes #7761

Commandeered by @Jinksi πŸ΄β€β˜ οΈ

Changes proposed in this Pull Request

There are 3 changes in this PR:

  1. Updated the Deposit Status Chip colors
  2. Updated the Deposit Details screen status indicator colors
  3. Updated the Deposit Details screen status indicator text wrapping to ensure "In transit" is shown on a single line.

(1)
Updated the Deposit Status Chip colors to the following:

Pending 🟑
In transit πŸ”΅ – was 🟑
Paid 🟒
Failed πŸ”΄
Canceled βšͺ (gray) – was πŸ”΄

image image

(2)
Updated the Deposit Details screen status indicator colors to be consistent with the status chip colors using standard WP admin colors.

Before / After

image image

(3)
I've also added white-space: nowrap; to the status indicator element to ensure that "In transit" is shown on a single line for improved readability.


Testing instructions

  • Navigate to Payments β†’ Deposits and click a deposit
  • Make sure the colors are aligned with the design proposed in the issue.
  • Navigate to Payments β†’ Overview and ensure the chip colors are aligned with the design proposed in the issue
  • You may want to mock these UI elements for testing purposes. Apply this patch with git apply mock_deposits.patch: mock_deposits.patch and then run npm run build:client

  • Run npm run changelog to add a changelog file, choose patch to leave it empty if the change is not significant. You can add multiple changelog files in one PR by running this command a few times.
  • Covered with tests (or have a good reason not to test in description ☝️)
  • Tested on mobile (or does not apply)

Post merge

@naman03malhotra naman03malhotra changed the title Introducing consistency in colours deposits across pages Introducing consistency in colors deposits across pages Mar 14, 2024
@naman03malhotra naman03malhotra changed the title Introducing consistency in colors deposits across pages Introducing consistency in colors for deposits across pages Mar 14, 2024
@naman03malhotra naman03malhotra requested a review from a team March 14, 2024 13:08
@naman03malhotra naman03malhotra self-assigned this Mar 14, 2024
@naman03malhotra naman03malhotra marked this pull request as ready for review March 14, 2024 13:08
@naman03malhotra
Copy link
Contributor Author

@rogermattic can you please review the colors as part of this change?

@botwoo
Copy link
Collaborator

botwoo commented Mar 14, 2024

Test the build

Option 1. Jetpack Beta

  • Install and activate Jetpack Beta.
  • Use this build by searching for PR number 8382 or branch name fix/7761-align-deposit-colors in your-test.site/wp-admin/admin.php?page=jetpack-beta&plugin=woocommerce-payments

Option 2. Jurassic Ninja - available for logged-in A12s

πŸš€ Launch a JN site with this branch πŸš€

ℹ️ Install this Tampermonkey script to get more options.


Build info:

  • Latest commit: 997e6c3
  • Build time: 2024-10-30 22:43:10 UTC

Note: the build is updated when a new commit is pushed to this PR.

@naman03malhotra
Copy link
Contributor Author

Team, I want to double-check, as:

  • I couldn't find a canceled state showing in grey in the issue description.
  • Secondly, in transit and pending states are both yellow.

Copy link
Contributor

github-actions bot commented Mar 14, 2024

Size Change: +35 B (0%)

Total Size: 1.34 MB

Filename Size Change
release/woocommerce-payments/dist/index-rtl.css 39.3 kB +15 B (0%)
release/woocommerce-payments/dist/index.css 39.3 kB +17 B (0%)
release/woocommerce-payments/dist/index.js 302 kB +3 B (0%)
ℹ️ View Unchanged
Filename Size
release/woocommerce-payments/assets/css/admin.css 1.37 kB
release/woocommerce-payments/assets/css/admin.rtl.css 1.37 kB
release/woocommerce-payments/assets/css/success.css 173 B
release/woocommerce-payments/assets/css/success.rtl.css 173 B
release/woocommerce-payments/dist/blocks-checkout-rtl.css 2.64 kB
release/woocommerce-payments/dist/blocks-checkout.css 2.64 kB
release/woocommerce-payments/dist/blocks-checkout.js 67.3 kB
release/woocommerce-payments/dist/cart-block.js 16.8 kB
release/woocommerce-payments/dist/cart.js 5.73 kB
release/woocommerce-payments/dist/checkout-rtl.css 1.21 kB
release/woocommerce-payments/dist/checkout.css 1.21 kB
release/woocommerce-payments/dist/checkout.js 32.8 kB
release/woocommerce-payments/dist/express-checkout-rtl.css 230 B
release/woocommerce-payments/dist/express-checkout.css 230 B
release/woocommerce-payments/dist/express-checkout.js 14.8 kB
release/woocommerce-payments/dist/frontend-tracks.js 858 B
release/woocommerce-payments/dist/multi-currency-analytics.js 1.08 kB
release/woocommerce-payments/dist/multi-currency-rtl.css 4.46 kB
release/woocommerce-payments/dist/multi-currency-switcher-block.js 60.6 kB
release/woocommerce-payments/dist/multi-currency.css 4.46 kB
release/woocommerce-payments/dist/multi-currency.js 57.3 kB
release/woocommerce-payments/dist/order-rtl.css 730 B
release/woocommerce-payments/dist/order.css 730 B
release/woocommerce-payments/dist/order.js 42 kB
release/woocommerce-payments/dist/payment-gateways-rtl.css 1.32 kB
release/woocommerce-payments/dist/payment-gateways.css 1.32 kB
release/woocommerce-payments/dist/payment-gateways.js 38.4 kB
release/woocommerce-payments/dist/payment-request-rtl.css 230 B
release/woocommerce-payments/dist/payment-request.css 230 B
release/woocommerce-payments/dist/payment-request.js 14.2 kB
release/woocommerce-payments/dist/plugins-page-rtl.css 386 B
release/woocommerce-payments/dist/plugins-page.css 386 B
release/woocommerce-payments/dist/plugins-page.js 20.1 kB
release/woocommerce-payments/dist/product-details-rtl.css 433 B
release/woocommerce-payments/dist/product-details.css 436 B
release/woocommerce-payments/dist/product-details.js 12 kB
release/woocommerce-payments/dist/settings-rtl.css 11.6 kB
release/woocommerce-payments/dist/settings.css 11.5 kB
release/woocommerce-payments/dist/settings.js 224 kB
release/woocommerce-payments/dist/subscription-edit-page.js 703 B
release/woocommerce-payments/dist/subscription-product-onboarding-modal-rtl.css 524 B
release/woocommerce-payments/dist/subscription-product-onboarding-modal.css 524 B
release/woocommerce-payments/dist/subscription-product-onboarding-modal.js 20.2 kB
release/woocommerce-payments/dist/subscription-product-onboarding-toast.js 730 B
release/woocommerce-payments/dist/subscriptions-empty-state-rtl.css 120 B
release/woocommerce-payments/dist/subscriptions-empty-state.css 120 B
release/woocommerce-payments/dist/subscriptions-empty-state.js 19.3 kB
release/woocommerce-payments/dist/tokenized-payment-request-rtl.css 230 B
release/woocommerce-payments/dist/tokenized-payment-request.css 230 B
release/woocommerce-payments/dist/tokenized-payment-request.js 15 kB
release/woocommerce-payments/dist/tos-rtl.css 235 B
release/woocommerce-payments/dist/tos.css 235 B
release/woocommerce-payments/dist/tos.js 21.8 kB
release/woocommerce-payments/dist/woopay-direct-checkout.js 6.14 kB
release/woocommerce-payments/dist/woopay-express-button.js 24.6 kB
release/woocommerce-payments/dist/woopay-rtl.css 4.52 kB
release/woocommerce-payments/dist/woopay.css 4.49 kB
release/woocommerce-payments/dist/woopay.js 71.6 kB
release/woocommerce-payments/includes/subscriptions/assets/css/plugin-page.css 625 B
release/woocommerce-payments/includes/subscriptions/assets/js/plugin-page.js 814 B
release/woocommerce-payments/vendor/automattic/jetpack-assets/build/i18n-loader.js 2.46 kB
release/woocommerce-payments/vendor/automattic/jetpack-assets/build/jetpack-script-data.js 735 B
release/woocommerce-payments/vendor/automattic/jetpack-assets/build/react-jsx-runtime.js 553 B
release/woocommerce-payments/vendor/automattic/jetpack-assets/src/js/i18n-loader.js 1.02 kB
release/woocommerce-payments/vendor/automattic/jetpack-assets/src/js/script-data.js 69 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/babel.config.js 163 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/identity-crisis.css 2.45 kB
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/identity-crisis.js 14.2 kB
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/identity-crisis.rtl.css 2.45 kB
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/jetpack-sso-admin-create-user.css 198 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/jetpack-sso-admin-create-user.js 280 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/jetpack-sso-admin-create-user.rtl.css 198 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/jetpack-sso-login.css 625 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/jetpack-sso-login.js 333 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/jetpack-sso-login.rtl.css 626 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/jetpack-sso-users.js 417 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/tracks-ajax.js 521 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/dist/tracks-callables.js 584 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/src/sso/jetpack-sso-admin-create-user.css 215 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/src/sso/jetpack-sso-admin-create-user.js 521 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/src/sso/jetpack-sso-login.css 721 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/src/sso/jetpack-sso-login.js 412 B
release/woocommerce-payments/vendor/automattic/jetpack-connection/src/sso/jetpack-sso-users.js 621 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/css/about.css 1.04 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/css/admin-empty-state.css 294 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/css/admin-order-statuses.css 408 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/css/admin.css 3.59 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/css/checkout.css 301 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/css/modal.css 746 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/css/view-subscription.css 574 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/css/wcs-upgrade.css 414 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/admin-pointers.js 543 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/admin.js 9.4 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/jstz.js 6.78 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/jstz.min.js 3.84 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/meta-boxes-coupon.js 545 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/meta-boxes-subscription.js 2.52 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/moment.js 22.2 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/moment.min.js 11.7 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/payment-method-restrictions.js 1.29 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/admin/wcs-meta-boxes-order.js 507 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/frontend/payment-methods.js 358 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/frontend/single-product.js 428 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/frontend/view-subscription.js 1.38 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/frontend/wcs-cart.js 782 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/modal.js 1.09 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/assets/js/wcs-upgrade.js 1.26 kB
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/build/index.css 391 B
release/woocommerce-payments/vendor/woocommerce/subscriptions-core/build/index.js 3.04 kB

compressed-size-action

@nagpai
Copy link
Contributor

nagpai commented Mar 16, 2024

Manual test

The colors seem as expected for Paid and Failed status. I am yet to figure out how to get an instant deposit in pending state. Can you help me with that @naman03malhotra ? I will revisit this on Monday πŸ‘

This is not for us, but a general feedback on the WP color. This may be my eyesight or the screen too. The dark green appears not very contrastingly different from the black font. Strangely on the screenshot it looks better, but not in the actual browser.

image

image

}

&.is-pending,
Copy link
Contributor

@nagpai nagpai Mar 16, 2024

Choose a reason for hiding this comment

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

I couldn't find a canceled state showing in grey in the issue description.

There is an image shared in the issue with slightly different brighter shades ( probably studio ) . I had to recopy this image here since it had some weird private URL.

image

We may want to use the wp-admin shade equivalents, that are slightly darker / a bit dull compared to the screenshot in the issue. @rogermattic may kindly reconfirm.

Secondly, in transit and pending states are both yellow.

As per the Acceptable criteria in the issue, we need to use shades of blue for in transit.

So maybe

Suggested change
&.is-pending,
&.is-pending {
background: $wp-blue-70;
border-color: $wp-blue-0;
}
&.is-canceled {
background: $wp-gray-70;
border-color: $wp-gray-blue;
}

The gray color may end up looking almost black, though.

image

We probably need a different shade?

@nagpai nagpai requested a review from a team March 16, 2024 10:49
@nagpai
Copy link
Contributor

nagpai commented Mar 16, 2024

Left a couple of comments. Re-inviting Helix team too since I was unable to do a manual test for In transit and Cancelled status. The PR may need a look by design though for the colors.

Copy link
Contributor

@shendy-a8c shendy-a8c left a comment

Choose a reason for hiding this comment

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

What I understand about the ask from the issue #7761 is that we need to have a consistent coloring for each of the deposit state shown on the deposits list page and deposits details page.

So here's what I did to confirm that:

  • Check the status color on the list page
    • Make a local change here and pass status paid, pending, in_transit, failed, or canceled, so I don't have to create deposit in all those possible states.
    • I inspect the status and see the color code, eg for paid status, the chip element has color #005c12.
  • Check the status color on the details page
    • Make a local change here and pass status paid, pending, in_transit, failed, or canceled, so I don't have to create deposit in all those possible states.
    • I inspect the status and see the background color code, eg for paid status, the is-paid class has background color #005c12.
<OrderStatus order={ { status: "paid" } } orderStatusMap={ displayStatus } />

Here are what I found that need fixing:

  • When status is in_transit, the details page shows yellow where it should be green like shown on the deposits list page. Also, I think setting white-space: nowrap would be a good idea.

Here's how it's shown on the list page:
Screenshot 2024-03-17 at 08 52 01

Here's how it's shown on the details page:
Screenshot 2024-03-17 at 08 52 06

  • When status is canceled, the details page shows grey where it should be red like shown on the deposits list page.

Here's how it's shown on the list page:
Screenshot 2024-03-17 at 08 55 43

Here's how it's shown on the details page:
Screenshot 2024-03-17 at 08 55 48

Also, I think you are aware already but I like to mention that there are WordPress colours defined as constants here in the repo. I just learned about this as pointed out by @Jinksi's here p1709158123401059/1709146807.215419-slack-C02BW3Z8SHK.

@shendy-a8c shendy-a8c self-assigned this Apr 24, 2024
@haszari
Copy link
Contributor

haszari commented May 7, 2024

Just came across this – does it need work or is it ready for merge? @shendy-a8c can you take a look and make a plan to follow up (yourself or assign)?

@shendy-a8c
Copy link
Contributor

Thank you for checking, @haszari. It needs work. It's on my radar but pretty low compared to other things on my plate. ETA is late this week or next week.

@shendy-a8c shendy-a8c removed their assignment Jul 16, 2024
@Jinksi Jinksi self-assigned this Oct 29, 2024
@Jinksi
Copy link
Member

Jinksi commented Oct 29, 2024

I have made updated to this PR to address reviewer comments and match the intended design with WP colors – please see the new PR description.

@Jinksi Jinksi requested a review from a team October 29, 2024 22:04
Copy link
Contributor

@nagpai nagpai left a comment

Choose a reason for hiding this comment

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

Code changes look good and make good reuse of WP colors. The rendered colors also match the requirements of the original issue.

Thanks for providing the testing patch, @Jinksi ! It was very helpful! Thank you, also for taking over this long-standing issue πŸ™πŸΌ

Manual tests run well too, and this PR is ready to Ship 🚒

@Jinksi Jinksi dismissed shendy-a8c’s stale review October 30, 2024 22:40

Feedback has been addressed

@Jinksi Jinksi added this pull request to the merge queue Oct 30, 2024
Merged via the queue into develop with commit 8396b27 Oct 30, 2024
25 checks passed
@Jinksi Jinksi deleted the fix/7761-align-deposit-colors branch October 30, 2024 22:58
@rogermattic
Copy link

@nagpai @shendy-a8c @Jinksi @haszari thanks for working on this!

I like the colours and the consistency.

One thing that I want to mention is that once the badge component that we're working on (Woo Design contribution to Core) is ready, we will be able to switch to using it. But I suppose then we can log it as a new, separate issue!

@Jinksi
Copy link
Member

Jinksi commented Dec 20, 2024

Awesome @rogermattic πŸš€

It looks like the new Badge component WordPress/gutenberg#66555 will replace WooPayments Chip component – slated for release in Gutenberg 20 and I'm guessing @wordpress/components v30.

It looks like WooPayments is way back on @wordpress/components v19.8.5, published 2 years ago.

Unfortunately, WooPayments has not kept up-to-date with component library versions as part of regular maintenance, and so an update to the current version will require effort that has not been easy to prioritise in the past – @Automattic/helix talked about this at our last meetup pdjTHR-3SB-p2.

We'll be conducting a related spike soon (#8012) which may result in some next steps to resolve the situation here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Align deposit status colour coding across pages
8 participants