woocommerce/plugins/woocommerce-blocks/assets/js/base/components/cart-checkout
Saad Tarhi 4bdbdbf309 Fix total shipping display info when no shipping method is available (https://github.com/woocommerce/woocommerce-blocks/pull/8819)
* Fix total shipping info when no shipping are available

* Fix a logical error for displaying shipping info

* Fix failing unit tests

* Run unit test for the Cart instead of the Checkout

The calculator is only available for the Cart Block, so it doesn't make
sense to run this test for the Checkout Block

* Fix no shipping methods and incomplete address conflict

When there are no shipping methods (except for local pickup), we would
like to inform the shopper that there are no shipping options available
even though the address is complete

The solution we found is to check the address on the Cart Block only

* Refactor code

* Check whether rate is collectible without using hardcoded id

* Correctly negate hasCollectibleRate result

* Add notice when shipping is selected but no methods are available yet (https://github.com/woocommerce/woocommerce-blocks/pull/9171)

* Create useShippingTotalWarning hook

* Show notices above checkout sidebar

* Call hook to show notice in Checkout block

* Remove unused imports

* Update hook name to useShowShippingTotalWarning

* Move hook to its own file

* Import shipping data internally (without alias)

* Remove unused imports

* Move import to correct place

* Return early to avoid if else

* Refactor useShowShippingTotalWarning

* Get shipping rates directly from the cart instead of the hook

* Show shipping cost when price information is available

* Check if the passed rates are considered selected

* Prevent errors when no rates are available

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Tarun Vijwani <tarun.vijwani@automattic.com>
2023-05-25 06:31:15 +01:00
..
address-form Only validate postcode if its required or filled (https://github.com/woocommerce/woocommerce-blocks/pull/9377) 2023-05-09 16:54:28 +07:00
cart-line-items-table Mini Cart: Remove excessive margin under cart items (https://github.com/woocommerce/woocommerce-blocks/pull/9051) 2023-04-17 18:52:43 +02:00
form-step Fix Checkout block stepped sections numbers overlapping (https://github.com/woocommerce/woocommerce-blocks/pull/9497) 2023-05-22 11:03:50 +04:00
local-pickup-select Add `LocalPickupSelect` component (https://github.com/woocommerce/woocommerce-blocks/pull/8634) 2023-03-10 07:52:21 -08:00
order-summary Add theme-level global styles to Cart and Checkout block (https://github.com/woocommerce/woocommerce-blocks/pull/8809) 2023-04-22 00:11:10 +04:00
payment-method-icons Simplify @woocommerce/types imports (https://github.com/woocommerce/woocommerce-blocks/pull/8019) 2022-12-23 18:59:02 +07:00
payment-method-label Update @woocmmerce/eslint-plugin to 2.0.0 (https://github.com/woocommerce/woocommerce-blocks/pull/6203) 2022-04-08 14:47:19 +01:00
pickup-location Add "Collection from..." in Checkout sidebar when selecting local pickup (https://github.com/woocommerce/woocommerce-blocks/pull/8305) 2023-04-06 04:56:47 -07:00
place-order-button Make place order button editable (https://github.com/woocommerce/woocommerce-blocks/pull/7843) 2022-12-15 17:28:23 +07:00
policies Convert Product components to TS (https://github.com/woocommerce/woocommerce-blocks/pull/4098) 2021-04-26 13:20:30 +01:00
product-backorder-badge Convert Product components to TS (https://github.com/woocommerce/woocommerce-blocks/pull/4098) 2021-04-26 13:20:30 +01:00
product-badge Convert Product components to TS (https://github.com/woocommerce/woocommerce-blocks/pull/4098) 2021-04-26 13:20:30 +01:00
product-details Fix/you do not need lodash (https://github.com/woocommerce/woocommerce-blocks/pull/9161) 2023-04-28 11:29:45 +01:00
product-image Add theme-level global styles to Cart and Checkout block (https://github.com/woocommerce/woocommerce-blocks/pull/8809) 2023-04-22 00:11:10 +04:00
product-low-stock-badge Update @woocmmerce/eslint-plugin to 2.0.0 (https://github.com/woocommerce/woocommerce-blocks/pull/6203) 2022-04-08 14:47:19 +01:00
product-metadata Simplify @woocommerce/types imports (https://github.com/woocommerce/woocommerce-blocks/pull/8019) 2022-12-23 18:59:02 +07:00
product-sale-badge Import `createInterpolateElement ` from `@wordpress/element` (https://github.com/woocommerce/woocommerce-blocks/pull/4368) 2021-07-07 13:27:50 +01:00
product-summary Fix es lint warnings (https://github.com/woocommerce/woocommerce-blocks/pull/4206) 2021-05-16 18:59:32 +01:00
return-to-cart-button Adjust return to cart arrow (https://github.com/woocommerce/woocommerce-blocks/pull/8289) 2023-01-30 09:53:14 +01:00
shipping-calculator Add declaration of noticeContext (https://github.com/woocommerce/woocommerce-blocks/pull/8495) 2023-02-23 18:49:03 +04:00
shipping-location Display the link to add the shipping address when shipping address is not available (https://github.com/woocommerce/woocommerce-blocks/pull/8141) 2023-03-22 11:15:13 +04:00
shipping-rates-control Fix shipping notices for multiple packages (https://github.com/woocommerce/woocommerce-blocks/pull/9285) 2023-05-02 16:04:29 +01:00
shipping-rates-control-package Fix total shipping display info when no shipping method is available (https://github.com/woocommerce/woocommerce-blocks/pull/8819) 2023-05-25 06:31:15 +01:00
totals Fix total shipping display info when no shipping method is available (https://github.com/woocommerce/woocommerce-blocks/pull/8819) 2023-05-25 06:31:15 +01:00
index.js Move CartLineItemsTable from the Cart block directory to base-components (https://github.com/woocommerce/woocommerce-blocks/pull/8644) 2023-03-08 10:14:20 +01:00