Commit Graph

3224 Commits

Author SHA1 Message Date
Albert Juhé Lluveras ca3734b8bf Remove feature gate condition for Legacy Template block (https://github.com/woocommerce/woocommerce-blocks/pull/5158) 2021-11-16 17:55:08 +01:00
Thomas Roberts 480acdaaac Replace do_action_deprecated with the WC equivalent (https://github.com/woocommerce/woocommerce-blocks/pull/5151) 2021-11-16 20:22:29 +07:00
Mike Jolley 857802aaf3 Mini Cart block fatal error caused by append_script_and_deps_src (https://github.com/woocommerce/woocommerce-blocks/pull/5142)
* Remove unused use statements

* Fix types for $script

* `get_script_from_handle` might return null so handle this case to prevent errors

* Missing escaping
2021-11-16 20:14:00 +07:00
Seghir Nadir 888ea29ce1 Make order note block removable (https://github.com/woocommerce/woocommerce-blocks/pull/5139)
* unforce order note

* show block in inserter
2021-11-16 20:12:25 +07:00
Alex Florisca 78c846bddc Fix 'Country is required' error on the Cart block when updating shipping address (https://github.com/woocommerce/woocommerce-blocks/pull/5129)
* Fix  error on the Cart block

* Created a cartIsHydrated variable in useStoreCart hook and used this to update the billing address in the internal state of the useCustomerData hook

* Fix the country is required error on the Cart page using refs

* Separate api calls to update shipping and billingUpdate billing and shipping addresses only when needed in API calls

* Remove redundant check for customerDataToUpdate

* remove use of refs in initial values

Co-authored-by: Nadir Seghir <nadir.seghir@gmail.com>
2021-11-16 12:39:43 +00:00
Mike Jolley f9c458b090 Fix state validation to compare state codes, and only validate if a country is given (https://github.com/woocommerce/woocommerce-blocks/pull/5132)
* Only get valid states from wc if there is a country

* Shared validation logic which uses keys
2021-11-16 12:19:56 +01:00
Thomas Roberts 5626d4aeec Re-add experimental discounts meta slot to checkout (https://github.com/woocommerce/woocommerce-blocks/pull/5149) 2021-11-16 11:00:44 +00:00
Alex Florisca 6946750ea3 Added a placeholder to the product search block editor (https://github.com/woocommerce/woocommerce-blocks/pull/5122)
* Added a placeholder to the product search block editor to indicate that the user can change the placeholder on the front end

* Changed the placeholder to be translatable
2021-11-12 14:58:30 +00:00
Raluca Stan 5af0d7ddb9 Update payment-method-integration.md
Fix type-def link
2021-11-12 15:48:06 +01:00
Niels Lange 545c58cf3c Prevent justified texts due to accessibility reasons (https://github.com/woocommerce/woocommerce-blocks/pull/5120) 2021-11-12 19:57:11 +07:00
renovate[bot] 52d8f6661c Update dependency @types/gtag.js to v0.0.8 (https://github.com/woocommerce/woocommerce-blocks/pull/5117)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-11 16:47:41 +00:00
Tom Cafferkey ac317c70eb Remove conditionals around BlockTemplatesController class (https://github.com/woocommerce/woocommerce-blocks/pull/5128) 2021-11-11 14:48:24 +01:00
Albert Juhé Lluveras 6aeac39f17 Downgrade @wordpress/scripts to 17.1.0 to fix dependency mistmach issue (https://github.com/woocommerce/woocommerce-blocks/pull/5124)
* Downgrade @wordpress/scripts to a previous version to fix dependency mismatch

* Fix typo
2021-11-11 12:06:04 +01:00
Tung Du 3d5971ad93 Fix: loading WC Blocks templates content (https://github.com/woocommerce/woocommerce-blocks/pull/5111) 2021-11-11 15:50:29 +07:00
Luigi Teschio b5875d13ca Improve title for edit button (https://github.com/woocommerce/woocommerce-blocks/pull/5113)
* Improve title for edit button woocommerce/woocommerce-blocks#1689

Improve title for edit button

* fix edit title for Product By Attribute and All Products blocks
2021-11-10 14:53:07 +01:00
renovate[bot] 645d534bda Update babel monorepo to v7.16.0 (https://github.com/woocommerce/woocommerce-blocks/pull/5118)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-10 03:44:41 +00:00
Mike Jolley a76e00bd83 Move checkbox control to checkout package (https://github.com/woocommerce/woocommerce-blocks/pull/5045)
* Move checkbox control to checkout package

* Revert import change in editor
2021-11-09 16:47:46 +00:00
Seghir Nadir 6592796ff0 Add cart item classname filter (https://github.com/woocommerce/woocommerce-blocks/pull/4992)
* Add cartItemClass filter for cart line items

* Add cartItemClass, originally implemented in 96f18443bc

* add filter to order summary items

Co-authored-by: Manos Psychogyiopoulos <psyx@somewherewarm.net>
2021-11-09 15:15:35 +00:00
dependabot[bot] a348f9ea33 Bump url-parse from 1.5.1 to 1.5.3 (https://github.com/woocommerce/woocommerce-blocks/pull/5114)
Bumps [url-parse](https://github.com/unshiftio/url-parse) from 1.5.1 to 1.5.3.
- [Release notes](https://github.com/unshiftio/url-parse/releases)
- [Commits](https://github.com/unshiftio/url-parse/compare/1.5.1...1.5.3)

---
updated-dependencies:
- dependency-name: url-parse
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-09 15:13:13 +00:00
Mike Jolley 25e5ea7b51 Define chunkFilename with contenthash in lazy loaded assets (https://github.com/woocommerce/woocommerce-blocks/pull/5094)
* Define chunkFilename with contenthash

* Fix editor filename
2021-11-09 15:10:47 +00:00
dependabot[bot] f36ec18bc2 Bump validator from 13.6.0 to 13.7.0 (https://github.com/woocommerce/woocommerce-blocks/pull/5083)
Bumps [validator](https://github.com/validatorjs/validator.js) from 13.6.0 to 13.7.0.
- [Release notes](https://github.com/validatorjs/validator.js/releases)
- [Changelog](https://github.com/validatorjs/validator.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/validatorjs/validator.js/compare/13.6.0...13.7.0)

---
updated-dependencies:
- dependency-name: validator
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-09 14:31:00 +00:00
dependabot[bot] 5619627eb7 Bump tmpl from 1.0.4 to 1.0.5 (https://github.com/woocommerce/woocommerce-blocks/pull/5081)
Bumps [tmpl](https://github.com/daaku/nodejs-tmpl) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/daaku/nodejs-tmpl/releases)
- [Commits](https://github.com/daaku/nodejs-tmpl/commits/v1.0.5)

---
updated-dependencies:
- dependency-name: tmpl
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-09 14:29:41 +00:00
dependabot[bot] b8536f2c7f Bump tar from 6.1.0 to 6.1.11 (https://github.com/woocommerce/woocommerce-blocks/pull/5082)
Bumps [tar](https://github.com/npm/node-tar) from 6.1.0 to 6.1.11.
- [Release notes](https://github.com/npm/node-tar/releases)
- [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-tar/compare/v6.1.0...v6.1.11)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-09 14:28:56 +00:00
renovate[bot] 527f286d14 Update dependency eslint-import-resolver-webpack to v0.13.2 (https://github.com/woocommerce/woocommerce-blocks/pull/5055)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-09 14:27:57 +00:00
renovate[bot] 7cf1c4eaf0 Update dependency nth-check to 2.0.1 [SECURITY] (https://github.com/woocommerce/woocommerce-blocks/pull/5085)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-09 14:20:18 +00:00
renovate[bot] b370f9dc3c Update dependency locutus to 2.0.15 [SECURITY] (https://github.com/woocommerce/woocommerce-blocks/pull/5084)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-09 13:53:13 +00:00
Mike Jolley 70f0c06bf9 Fix e2e tests welcome guide/m1 mac support (https://github.com/woocommerce/woocommerce-blocks/pull/5096)
* Bump dependencies to fix e2e on m1 macs

* Disable welcome guide more reliably - see 3da717b8d0/packages/e2e-test-utils/src/create-new-post.js

* Update selectors and fixture data for cart block

* unused dep

* Remove duplicate block wrapper

* Remove unused jest configuration files

* More robust click in view switcher test

* Revert fixture data change
2021-11-09 13:18:55 +00:00
Luigi Teschio b6b275bc26 Add hydration for product data for Single Product block (https://github.com/woocommerce/woocommerce-blocks/pull/5107)
* Add hydration for product data for single product block woocommerce/woocommerce-blocks#2698

Add hydration for product data for single product block

* cast product_id variable

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2021-11-09 13:58:15 +01:00
Albert Juhé Lluveras e019f4ae95 Update taxonomy templates so Legacy Template blocks don't take all available width (https://github.com/woocommerce/woocommerce-blocks/pull/5105)
* Update taxonomy templates so Legacy Template blocks don't take all available width

* Add closing comments for Group block

Co-authored-by: Michael P. Pfeiffer <frontdevde@users.noreply.github.com>

Co-authored-by: Michael P. Pfeiffer <frontdevde@users.noreply.github.com>
2021-11-09 13:46:28 +01:00
Albert Juhé Lluveras 3137d60b24 Fix PHP fatal error on Product tag pages (https://github.com/woocommerce/woocommerce-blocks/pull/5104) 2021-11-09 12:03:41 +01:00
Darren Ethier 710d738008 add note about minimum required wc version check in release checklist (https://github.com/woocommerce/woocommerce-blocks/pull/5099) 2021-11-08 15:34:52 -05:00
Darren Ethier 49a2883bc0 add note about pinging porter for testing to the release checklist (https://github.com/woocommerce/woocommerce-blocks/pull/5098) 2021-11-08 15:23:07 -05:00
Albert Juhé Lluveras 9abbf761bd Update templates so Legacy Template blocks don't take all available width (https://github.com/woocommerce/woocommerce-blocks/pull/5093) 2021-11-08 17:47:18 +01:00
Tom Cafferkey 8662368f32 Remove woocommerce_sidebar (https://github.com/woocommerce/woocommerce-blocks/pull/5097) 2021-11-08 16:33:04 +00:00
Niels Lange ae9de9ea32 Fix text domain validation problems (https://github.com/woocommerce/woocommerce-blocks/pull/5095)
* Ignore validation of text domain 'woocommerce-gateway-stripe'
* Add missing 'woo-gutenberg-products-block' textdomain
2021-11-08 21:07:42 +07:00
Niels Lange 1a0706052e Correct textdomain from 'woo-gutenberg-product-blocks' to 'woo-gutenberg-products-blocks' (https://github.com/woocommerce/woocommerce-blocks/pull/5020)
* Correct text domain
2021-11-08 19:43:51 +07:00
Niels Lange aa6fe4aa19 Add textdomain validation to .eslintrc.js (https://github.com/woocommerce/woocommerce-blocks/pull/5021)
* Add textdomain validation to .eslintrc.js

* Only allow JS textdomain woo-gutenberg-products-block
2021-11-08 16:06:29 +07:00
Thomas Roberts 5f0ab9e94c Allow block templates to be customised and saved (https://github.com/woocommerce/woocommerce-blocks/pull/5062)
* Ensure $template is object before accessing properties

This is necessary because the gutenberg helper functions sometimes turn it into a WP_Block_Template object, and other times it's an array. Because of this it's safer to normalise them both as objects.

* Add Gutenberg utils for processing templates based on a post from the db

When a template is saved it gets saved to the database, we need to handle processing these WooCommerce templates that have been saved in the db and we need to use the gutenberg utils that are private, this is why they've been copied over.

* Force theme to always be WooCommerce

This is because the templates we're dealing with here should always belong to WooCommerce, not the currently selected theme

* Add maybe_return_blocks_template and get_single_block_template funcs

These are needed to get the template from either the DB or the filesystem when saving/retrieving the template.

* Set theme to always be woocommerce when making templates from files

This will ensure the correct slug is used in the gutenberg editor.

* Check if template has been customised and saved in the database first

* Prevent filesystem templates being used if a custom database one exists

* Fix syntax error from rebase

* Remove unnecessary code from BlockTemplateUtils

* Ensure template item is an object containing correct properties

* Prevent warnings from appearing

* Ensure title is added to the template when saving

* Filter templates that don't match the queried slug.

* Remove unused code

* Check if a saved version of the template exists when trying to render

* Rename default_block_template_is_available to block_template_is_available

* Re-hook pre_get_block_template before returning from maybe_return_blocks_template

* Make comment easier to read

* Look for template in woocommerce theme or real theme taxonomy

* Remove duplicated title assignment

* Prevent template being added twice when loading from the db

* Filter templates before returning if slugs are supplied

* Simplify `get_block_templates` function into two functions

* Add function to stop theme templates that are added after db ones showing

* Fix typographical errors
2021-11-05 19:07:34 +00:00
Seghir Nadir ea1e17fc81 Fix sanitization callback (https://github.com/woocommerce/woocommerce-blocks/pull/5060)
* Fix sanitization callback

* Add test case to confirm sanitization callbacks work for nested properties

Co-authored-by: Mike Jolley <mike.jolley@me.com>
2021-11-05 15:39:08 +00:00
Ovidiu Liuta 5a9638044e Twenty Nineteen: Price slider track fix padding/border (https://github.com/woocommerce/woocommerce-blocks/pull/4925)
* woocommerce/woocommerce-blocks#3902 price slider track fix padding/border

* adding css comments for the change

* Update style.scss
2021-11-05 15:29:30 +01:00
Luigi Teschio 935c8df275 Product Search: Fix Search label alignment on the edit page (https://github.com/woocommerce/woocommerce-blocks/pull/5072)
* Fix product search margin style on edit page woocommerce/woocommerce-blocks#3083

Fix product search margin style on edit page

* fix button size
2021-11-05 15:24:37 +01:00
Seghir Nadir 29e3d4ec58 Fix wc-settings not loading when a script that depend on it is in the header (https://github.com/woocommerce/woocommerce-blocks/pull/5059)
* Enqueue in header if required.

* revert scripts change

* Dirty fix for settings dependency

* Also implement in admin

* add console warn

* grammar issues

* increase priority

Co-authored-by: Mike Jolley <mike.jolley@me.com>
2021-11-05 14:44:57 +01:00
Luigi Teschio 31c8a3af55 Add .prettierignore file to exclude .scss files (https://github.com/woocommerce/woocommerce-blocks/pull/5065)
add .prettierignore file to exclude .scss files
2021-11-05 14:07:06 +01:00
Seghir Nadir bcd1d69c46 pass blockWrapper to forcedBlocks (https://github.com/woocommerce/woocommerce-blocks/pull/5069) 2021-11-04 13:42:30 +01:00
Niels Lange 7e547bef88 Remove Automattic Writing Style Guide section 2021-11-04 19:02:47 +07:00
Ovidiu Liuta 7535fb1531 fixing checkout block shipping method encoding (https://github.com/woocommerce/woocommerce-blocks/pull/5030) 2021-11-04 12:00:22 +00:00
Thomas Roberts 37bf5f38c5 Add `register_payment_requirements` documentation (https://github.com/woocommerce/woocommerce-blocks/pull/4994)
* Add table of contents

* Add documentation for register_payment_requirements
2021-11-04 11:45:41 +00:00
Niels Lange d1528e2d38 Remove link to Automattic Writing Style Guide 2021-11-04 18:44:26 +07:00
Mike Jolley 53be583cec Fix Duplicate Queries in Product Grids woocommerce/woocommerce-blocks#4695 (https://github.com/woocommerce/woocommerce-blocks/pull/5002)
* Cache variation_meta_data to prevent duplicate queries with multiple grids

* Prime the cache

* Improve existing cache detection

* Expand comment
2021-11-04 11:39:16 +00:00
Luigi Teschio 820996235e Fix conflict between mini-cart and navigation blocks (https://github.com/woocommerce/woocommerce-blocks/pull/5051)
fix conflict between mini-cart and navigation blocks
2021-11-04 12:31:56 +01:00
Mike Jolley 72cf5eade8 Remove hydration hocs in favour of apiFetch Middlewares (https://github.com/woocommerce/woocommerce-blocks/pull/5022)
* Remove withRestApiHydration

* Preload checkout data via setting - server data is required for this block

* Handle cart hydration using createPreloadingMiddleware which removes the need for HOCs

* Rename variable

* Remove withStoreCartApiHydration and timestamp checking

* Empty test file
2021-11-04 11:05:58 +00:00
Seghir Nadir d70c309c37 expose with-filtered-attributes (https://github.com/woocommerce/woocommerce-blocks/pull/5058) 2021-11-04 11:03:33 +00:00
Michael P. Pfeiffer fa58d34da4 Store Editing Templates v1: add basic taxonomy block templates (https://github.com/woocommerce/woocommerce-blocks/pull/5063)
* Add taxonomy block templates

* Change Category template display name

* Check for product category/tag taxonomy explicitely

* Group archive templates in LegacyTemplate
2021-11-03 17:55:52 +01:00
Michael P. Pfeiffer 6be747a0b4 Update placeholder images to reflect new wireframe designs (https://github.com/woocommerce/woocommerce-blocks/pull/5068) 2021-11-03 16:59:01 +01:00
Tom Cafferkey 2267e21351 Set is_custom property on template and remove redundant code (https://github.com/woocommerce/woocommerce-blocks/pull/5067) 2021-11-03 15:13:39 +00:00
Luigi Teschio e1b1267e27 Fix sale badge alignment on smaller screen (https://github.com/woocommerce/woocommerce-blocks/pull/5061)
fix sale badge alignment on smaller screen
2021-11-03 14:48:57 +01:00
Tom Cafferkey 927af6ea26 Add Single Product Block Template (https://github.com/woocommerce/woocommerce-blocks/pull/5054)
* Add single-product.html template to render core PHP template

* Update placeholder SVG
2021-11-03 09:31:47 +00:00
renovate[bot] 2466f03f28 Update storybook monorepo to v6.3.12 (https://github.com/woocommerce/woocommerce-blocks/pull/5056)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-11-03 03:31:15 +00:00
Michael P. Pfeiffer 5cc32dbfae Store Editing Templates v1: add a basic Product Archive block template (https://github.com/woocommerce/woocommerce-blocks/pull/5049)
* Add the Archive Product block template

* Use template slug if no template title is set

* Add page icon as per design

* Add the basic archive product block template
2021-11-02 15:42:07 +01:00
Tom Cafferkey 17b4363daf Fix Block Templates being rendered correctly (https://github.com/woocommerce/woocommerce-blocks/pull/5048)
* Copy logic from Gutenberg to ensure the correct templates are being included in the get_block_templates query

* Utility function to convert template slugs to template titles

* i18n strings for template names
2021-11-02 12:15:41 +00:00
Thomas Roberts abfa36634c Graduate `__experimental_woocommerce_blocks_checkout_update_order_meta` action to stable (https://github.com/woocommerce/woocommerce-blocks/pull/5017)
* Deprecate __experimental_woocommerce_blocks_checkout_update_order_meta

* Update docs to show new action and remove deprecated one

* Amend deprecated tag and add version numbers

* Resolve conflict where old hook name was included in example docs
2021-11-02 10:15:12 +00:00
Thomas Roberts b0795c8502 Graduate `__experimental_woocommerce_blocks_checkout_update_order_from_request` action to stable (https://github.com/woocommerce/woocommerce-blocks/pull/5015)
* Deprecate __experimental_woocommerce_blocks_checkout_update_order_from_request

* Update docs to show new action and remove deprecated one

* Ensure correct args are passed to deprecated hook and update message

* Amend deprecated tag and add version numbers

* Remove incorrectly updated file from this PR
2021-11-02 09:21:51 +00:00
Thomas Roberts 12045c731a Graduate `__experimental_woocommerce_blocks_checkout_order_processed` action to stable (https://github.com/woocommerce/woocommerce-blocks/pull/5014)
* Deprecate __experimental_woocommerce_blocks_checkout_order_processed

* Update docs to reflect new hook name

I also mentioned this hook is deprecated in the experimental interfaces doc.

* Update deprecated tag in docblock

* Fix typo in deprecated docblock

* Send args to do_action_deprecated in an array

* Amend deprecated tag and add version numbers
2021-11-02 08:46:54 +00:00
renovate[bot] cda282ff6c Update dependency dinero.js to v1.9.1 (https://github.com/woocommerce/woocommerce-blocks/pull/5007)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-29 18:42:18 +00:00
Raluca Stan 4cbd03c6a2 Update available-filters.md 2021-10-29 15:44:40 +01:00
Raluca Stan ace7287b28 Update slot-fills.md 2021-10-29 15:29:37 +01:00
Raluca Stan 613f7c91e8 Update slot-fills.md 2021-10-29 15:29:21 +01:00
Raluca Stan 43a235fb36 Update README.md 2021-10-29 15:12:11 +01:00
Raluca Stan 8ad9f46366 Update available-slot-fills.md 2021-10-29 14:45:02 +01:00
Raluca Stan 4d9423cac9 Update slot-fills.md 2021-10-29 14:23:33 +01:00
Tom Cafferkey 204143c7ec Updated hook (https://github.com/woocommerce/woocommerce-blocks/pull/5038) 2021-10-29 13:29:42 +01:00
Tom Cafferkey 66cc0178eb Add Render Logic to BlockTemplateController (https://github.com/woocommerce/woocommerce-blocks/pull/4984)
* Add render logic to BlockTemplatesController

* Comment out action to test e2e tests

* Add add_action back into initialise render method

* Check function exists before using it

* Change hook from wp to template_redirect

* Update src/BlockTemplatesController.php

Co-authored-by: Tung Du <dinhtungdu@gmail.com>

Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2021-10-29 12:44:29 +01:00
Darren Ethier e347634205 added improvements to PR template (https://github.com/woocommerce/woocommerce-blocks/pull/5031) 2021-10-29 07:00:59 -04:00
Tom Cafferkey be3ce8423e Abstract LegacyTemplate block (https://github.com/woocommerce/woocommerce-blocks/pull/4991)
* Legacy Template block

* Return render_single_product value

* Make placeholder text translatable

* Don't allow removing the block

* Update block title

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2021-10-29 08:31:50 +01:00
Tung Du 587a7018da Fix: Mini Cart block: update button style (https://github.com/woocommerce/woocommerce-blocks/pull/4907)
Co-authored-by: Michael P. Pfeiffer <frontdevde@users.noreply.github.com>
2021-10-29 09:35:17 +07:00
Tung Du 9b1a289683 Add global styles to Product Title block (https://github.com/woocommerce/woocommerce-blocks/pull/5009)
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2021-10-28 22:51:25 +07:00
Tung Du e60405689d Mini Cart block: add footer (subtotal, cart & checkout buttons and payment method icons) (https://github.com/woocommerce/woocommerce-blocks/pull/4982)
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2021-10-28 22:48:39 +07:00
Albert Juhé Lluveras edaf0f094d Run BlockTemplatesController filter only on templates (https://github.com/woocommerce/woocommerce-blocks/pull/5027) 2021-10-28 15:33:42 +02:00
Ovidiu Liuta 5b2d24da36 Fix: Adding a visual border to products image placeholder (https://github.com/woocommerce/woocommerce-blocks/pull/4950)
* fixing all products image placeholder border

* fixing grid placeholder image border

* fixing cart checkout product image placeholder border

* order summary product image placeholder border fix

* revert fixing cart checkout product image placeholder border

* fixing product elements atomic block placeholder border

* fixing failing tests for cart-checkout test and class rename

* adding border style mixin

* newline addon

* linting fix and esc_attr addon

* adding border color to _colors.scss abstracts

* fixing cart-checkout block scss color

* removing class names from product-elements atomic block placeholder images

* css linting fix

* css linting fix

* css linting fix

* fixing empty className in cart-checkout

* adding cart-checkout fallback alt text to product name and css changes empty alt placeholder

* adding image fallback alt to AbstractProductGrid

* updating checkout snapshot to include alt

* code style changes

* removing unused scss code

* adding img alt style fix to prevent global changes
2021-10-28 13:57:20 +01:00
Michael P. Pfeiffer b5bb42e799 Update version following release 2021-10-28 09:10:37 +02:00
github-actions[bot] 5454667fa6 Release: 6.2.0 (https://github.com/woocommerce/woocommerce-blocks/pull/4990)
* Empty commit for release pull request

* Update readme.txt with release changelog

* Add testing instructions for 6.2.0 release

* Return an element instead of a component in useViewSwitcher (https://github.com/woocommerce/woocommerce-blocks/pull/5016)

* return element instead of component in viewSwitcher

* use ToolbarGroup instead of Toolbar

(cherry picked from commit ad133ba901)

* Update release zip in testing note

* Bumping version strings to new version.

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Michael P. Pfeiffer <michael@cssconf.eu>
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
2021-10-28 09:04:30 +02:00
Seghir Nadir ad133ba901 Return an element instead of a component in useViewSwitcher (https://github.com/woocommerce/woocommerce-blocks/pull/5016)
* return element instead of component in viewSwitcher

* use ToolbarGroup instead of Toolbar
2021-10-27 16:41:57 +01:00
renovate[bot] 3bc74b1fb2 Update dependency @types/react to v16.14.20 (https://github.com/woocommerce/woocommerce-blocks/pull/5006)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-27 04:44:14 +00:00
renovate[bot] 506b6a8d10 Update dependency @types/lodash to v4.14.176 (https://github.com/woocommerce/woocommerce-blocks/pull/5004)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-27 02:42:19 +00:00
renovate[bot] f9f84ba271 Pin dependency @types/wordpress__compose to 4.0.0 (https://github.com/woocommerce/woocommerce-blocks/pull/5003)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-27 02:30:32 +00:00
Mike Jolley 04cd927195 Add inline note around displayWithTax to clarify why prices change (https://github.com/woocommerce/woocommerce-blocks/pull/4979)
* Add inline note around displayWithTax to clarify why prices change

* update snaps

* Snap update

* Clarify docs further for displayCartPricesIncludingTax

* Update assets/js/previews/cart.ts

Co-authored-by: Michael P. Pfeiffer <frontdevde@users.noreply.github.com>

Co-authored-by: Michael P. Pfeiffer <frontdevde@users.noreply.github.com>
2021-10-26 15:03:51 +02:00
Seghir Nadir b6c314f0d4 Use Cart's needs payment check instead of Order's (https://github.com/woocommerce/woocommerce-blocks/pull/4955)
* Revert "Fix free orders missing payment method (https://github.com/woocommerce/woocommerce-blocks/pull/4854)"

This reverts commit 60f82537f1.

* use Cart needs payment instead of Order needs payment

* switch to nullish coalescing

* remove extra line
2021-10-26 10:42:39 +01:00
Seghir Nadir 3ce06eb87b migrate aligment options (https://github.com/woocommerce/woocommerce-blocks/pull/4986) 2021-10-25 17:42:31 +01:00
Albert Juhé Lluveras 4253a5fe10 Make Mini Cart block react to removed_from_cart events (https://github.com/woocommerce/woocommerce-blocks/pull/4947)
* Make Mini Cart block react to removed_from_cart events

* Move listening to add to cart and remove from cart events to the useStoreCart hook

* Add tests
2021-10-25 18:05:01 +02:00
Seghir Nadir dc1f979ae1 Add custom className support to Cart Inner Blocks (https://github.com/woocommerce/woocommerce-blocks/pull/4985)
* move empty cart

* remove Cart and rename Cart i2 to Cart

* graduate blocks

* setup template migration from Cart i1 to Cart i2

* back to js so we have a good diff

* add migration

* fix bug in empty cart template

* add useForceLayout hook to edit

* migrate from old block to new block

* migrate styles

* respect align

* add tests

* Include latest cart line item improvements from cart-i1

* Missing changes from cart-i1

* Line items table should be disabled

* Fix e2e tests for cart i2

* update tests to adapt for inner blocks

* update select to resolveSelect to remove warning checker

* rename test/block to test/index

* move blocks to their own file

* undo rename to keep diff clean

* remove .tsx and update jest config

* Revert "update select to resolveSelect to remove warning checker"

This reverts commit 79d55de30edcfe36bbdfe7506df7a09460824f03.

* revert resolveControl

* Fix empty cart editor E2E test by scrolling to the view switch

* parse attributes for order summary block

* migrate attributes when resaving

* Update documentation

Automatic update after running npm run build:docs

* add classname support to accepted payment methods block

* add classname support to express payment methods block

* add classname support to cart items  block

* add classname support to cart line items block

* add classname support to order summary block

* add classname support to totals block

* add classname support to empty cart  block

* add classname support to filled cart block

* add classname support to proceed to checkout block

* type edit

Co-authored-by: Mike Jolley <mike.jolley@me.com>
Co-authored-by: Raluca Stan <ralucastn@gmail.com>
2021-10-25 16:31:22 +01:00
Raluca Stan 357a1265cb Add a loading state to Cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4980)
* Add a loading state to Cart i2

We use CSS and the is-loading class to hide empty state and show regular state

* Lint cart/style.scss
2021-10-25 16:31:12 +01:00
Seghir Nadir 2408e34faa Migrate Cart i1 to Cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4973)
* move empty cart

* remove Cart and rename Cart i2 to Cart

* graduate blocks

* setup template migration from Cart i1 to Cart i2

* back to js so we have a good diff

* add migration

* fix bug in empty cart template

* add useForceLayout hook to edit

* migrate from old block to new block

* migrate styles

* respect align

* add tests

* Include latest cart line item improvements from cart-i1

* Missing changes from cart-i1

* Line items table should be disabled

* Fix e2e tests for cart i2

* update tests to adapt for inner blocks

* update select to resolveSelect to remove warning checker

* rename test/block to test/index

* move blocks to their own file

* undo rename to keep diff clean

* remove .tsx and update jest config

* Revert "update select to resolveSelect to remove warning checker"

This reverts commit 79d55de30edcfe36bbdfe7506df7a09460824f03.

* revert resolveControl

* Fix empty cart editor E2E test by scrolling to the view switch

* parse attributes for order summary block

* migrate attributes when resaving

* Update documentation

Automatic update after running npm run build:docs

* add align options to filled cart and empty cart

* append instead of replcae

* import style.scss in frontend

Co-authored-by: Mike Jolley <mike.jolley@me.com>
Co-authored-by: Raluca Stan <ralucastn@gmail.com>
2021-10-25 15:46:34 +01:00
Tom Cafferkey 35d49f1583 BlockTemplateController (https://github.com/woocommerce/woocommerce-blocks/pull/4981)
* BlockTemplateController

* Check if theme already has template

* ThemeUtils file to check for FSE enabled themes

* Use Gutenberg global gutenberg_supports_block_templates

* Remove ThemeUtils reference

* Update with code review comments

* Delete ThemeUtils and move supports_block_templates check

* Duplicate functions from Gutenberg into Utils file

* Remove template file

* Check template directory and stylesheet directory for template
2021-10-25 10:45:50 +01:00
Tung Du 7dc9b16f4a Add basic E2E tests for products grid blocks (https://github.com/woocommerce/woocommerce-blocks/pull/4872)
* wip: add product on sale test

* test: add fixture for product on sale test

* try: permission

* Revert "try: permission"

This reverts commit f8eb09c0152a567383e93c18f61e91fdadd13c40.

* test: basic e2e test for products by category block

* test: basic e2e test for products by tag block

* add basic test for products by attribute block

* trigger build

* fix: slug
2021-10-21 10:23:15 +01:00
Tung Du bd3e7126f8 Mini Cart block: display a compatibility notice when the user first adds the block in the editor (https://github.com/woocommerce/woocommerce-blocks/pull/4945) 2021-10-21 16:07:20 +07:00
Tom Cafferkey b8fbb56055 Convert Title component to TypeScript (https://github.com/woocommerce/woocommerce-blocks/pull/4891)
* Convert sharedConfig and Title blockConfig to TS

* Convert constants.tsx to TS

* Convert attributes.js to TS

* Amend attributes.ts record type

* Convert title component edit.js to TS

* Convert title component block.js to TS

* Amend product name index.tsx to prevent TS errors in product title block.tsx

* Amend product-name and base tsconfig

* Add rel to ProductName component element

* Replace ReactElement with JSX.Element

* Move TagName component to outside of the main component

* Add HTMLAttributes import

* WIP: Add props to TagName component

* Fix TagName typing

* Update TagName interface

* Replace ReactElement typing with JSX.Element

* Code review feedback amends

* Replace return type undefined to void

Co-authored-by: Michael P. Pfeiffer <michael@cssconf.eu>
2021-10-21 09:58:03 +01:00
Mike Jolley 5cd05b6d99 Add custom className support to Checkout Inner Blocks (https://github.com/woocommerce/woocommerce-blocks/pull/4978)
* Pass classname from DOM to react components

* Actions Block ClassName support

* Form step field classname support

* Payment block className support

* Classname support for fields and totals

* Order summary classname support

* Classname support for order note block

* Express payment classname support

* Terms block custom class

* Let useBlockProps handle class in actions block
2021-10-20 17:18:13 +01:00
Mike Jolley c4be7ca307 Styling (margin and padding) tweaks (https://github.com/woocommerce/woocommerce-blocks/pull/4974) 2021-10-20 17:02:05 +01:00
Mike Jolley 4b0f975707 Force array type for valid states (https://github.com/woocommerce/woocommerce-blocks/pull/4975) 2021-10-20 16:29:21 +01:00
Raluca Stan a1046eb95e Add empty cart to Cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4976) 2021-10-20 15:42:57 +01:00
Niels Lange 02dbd8bf4f Correct WooCommerce branding color (https://github.com/woocommerce/woocommerce-blocks/pull/4959) 2021-10-20 10:30:16 +01:00
Mike Jolley 8b093f949a Merge branch 'trunk' of https://github.com/woocommerce/woocommerce-gutenberg-products-block into trunk 2021-10-20 10:11:25 +01:00
Mike Jolley 4385619be5 Fix notice in e2e test suite from potentially undefined id 2021-10-20 10:11:20 +01:00
renovate[bot] 17dbd667bc Update dependency @types/jquery to v3.5.8 (https://github.com/woocommerce/woocommerce-blocks/pull/4968)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-20 09:52:39 +01:00
renovate[bot] 16e94dd3bc Pin dependencies (https://github.com/woocommerce/woocommerce-blocks/pull/4967)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-20 03:04:30 +00:00
Seghir Nadir 7c8becccd7 Move shared code between Cart and Checkout into single folder. (https://github.com/woocommerce/woocommerce-blocks/pull/4961)
* move shared code out of checkout into shared folder

* move code from cart i2 to shared folder

* move columns

* move viewSwitcher

* code cleanup inside Cart i2
2021-10-19 15:29:12 +01:00
Mike Jolley 2e0d0faa84 Enforce valid states from the API (https://github.com/woocommerce/woocommerce-blocks/pull/4844)
* Enforce valid states from the API

* Remove paypal from test
2021-10-19 14:30:02 +01:00
Seghir Nadir 91296b09cc Update blocks-registry docs (https://github.com/woocommerce/woocommerce-blocks/pull/4946)
* add handleMap

* remove useValidation from cart blocks

* add namespace options to docs

* Update packages/checkout/blocks-registry/README.md

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

* expand on the docblock

* Update packages/checkout/blocks-registry/README.md

Co-authored-by: Mike Jolley <mike.jolley@me.com>

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Mike Jolley <mike.jolley@me.com>
2021-10-19 14:05:26 +01:00
Mike Jolley 3840462cf0 Add Accepted Payment Methods Block (https://github.com/woocommerce/woocommerce-blocks/pull/4944)
* Remove icons from checkout button

* Add new block type

* Register new block

* Remove unused attribute

* Add to new template

* Remove duplicate attributes

* Update Inner Block handling to use consistent appender and unlock payment methods
2021-10-19 12:23:33 +01:00
Mike Jolley dc19412a54 Update dependency @woocommerce/e2e-utils to v0.1.6 (https://github.com/woocommerce/woocommerce-blocks/pull/4957)
* Update @woocommerce/e2e-utils

* Define grouped
2021-10-18 20:01:10 +01:00
Mike Jolley dad8331242 Cart i2 Attribute Audit (https://github.com/woocommerce/woocommerce-blocks/pull/4956)
* Add dark mode inputs toggle to top level block

* Remove top level attributes which moved to inner blocks

* Remove unused components

* Pass down hasDarkControls and currentView via context props
2021-10-18 17:12:36 +01:00
renovate[bot] 45b1b4569b Lock file maintenance (https://github.com/woocommerce/woocommerce-blocks/pull/4883)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-18 15:08:05 +01:00
Niels Lange 40e43b5328 Add e2e tests for Hand-picked Products (https://github.com/woocommerce/woocommerce-blocks/pull/4788) 2021-10-18 15:07:24 +01:00
Niels Lange 3f530ac755 Add e2e tests for Best Selling Products (https://github.com/woocommerce/woocommerce-blocks/pull/4785) 2021-10-18 15:06:48 +01:00
renovate[bot] 409230cff5 Update dependency @types/react to v16.14.17 (https://github.com/woocommerce/woocommerce-blocks/pull/4933)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-18 15:00:13 +01:00
renovate[bot] f8c9bc54f9 Update dependency @types/jquery to v3.5.7 (https://github.com/woocommerce/woocommerce-blocks/pull/4932)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-18 14:59:52 +01:00
Albert Juhé Lluveras c3152aec96 Add e2e tests to verify disabled blocks can't be inserted into widget areas (https://github.com/woocommerce/woocommerce-blocks/pull/4910) 2021-10-18 08:48:03 +02:00
Tung Du 277a20cca3 Fix: Spilled icecream error with Filter Products by Attribute when no attribute was selected (https://github.com/woocommerce/woocommerce-blocks/pull/4847) 2021-10-15 21:50:47 +07:00
hafhaf10 4d0ba20d6d Fix correct branding color (https://github.com/woocommerce/woocommerce-blocks/pull/4911)
* Correct WooCommerce branding color

* Correct WooCommerce branding color

* Fixed lowercase colors

* Changed color in more files
2021-10-15 15:27:59 +01:00
Albert Juhé Lluveras c5bf549d9f Add Mini Cart block tests (https://github.com/woocommerce/woocommerce-blocks/pull/4938) 2021-10-15 12:53:44 +02:00
Mike Jolley 901a78979e Fix positioning of default locked blocks in the editor and frontend (https://github.com/woocommerce/woocommerce-blocks/pull/4937)
* Update default empty template on server side

* template->registeredBlocks wording

* useForcedLayout: insert in correct place

* Remove test div

* Clarify inline docs

* Apply changes to cart block
2021-10-15 10:48:57 +01:00
Raluca Stan 05dc130d21 Register as experimental the Cart i2 blocks and update the feature flag documentation (https://github.com/woocommerce/woocommerce-blocks/pull/4936)
* Use registerExperimentalBlockType for registering Cart i2 related blocks

* Update feature flags and experimental interfaces doc
2021-10-14 13:44:46 +01:00
Mike Jolley 749c0d2dfc Remove duplicate data attributes (https://github.com/woocommerce/woocommerce-blocks/pull/4941)
* Remove inject_html_data_attributes

* Exclude class/align attributes from injection
2021-10-14 13:36:03 +01:00
Ovidiu Liuta eb0ddbe29a Add a label to the textarea from the editor view of the Product search block (https://github.com/woocommerce/woocommerce-blocks/pull/4905)
* woocommerce/woocommerce-blocks#1682 fixing product search accesibility label

* fix duplicate text annoncement

* removing aria-hidden from label
2021-10-14 11:27:05 +01:00
Niels Lange 63b7766586 Increase error message spacing (https://github.com/woocommerce/woocommerce-blocks/pull/4896) 2021-10-14 12:05:13 +07:00
Thomas Roberts db34f28c4f Version bump following release 2021-10-13 15:41:47 +01:00
Mike Jolley cf7d5d8d53 Add hook documentation and build script (https://github.com/woocommerce/woocommerce-blocks/pull/4927)
* Script to generate hook docs

* Inline docs for action and filter hooks

* __experimental_woocommerce_blocks_checkout_order_processed example

* Update doc generation

* Document exceptions

* examples

* Fix a typo

* Remove unused dependency

* add platform override for phpunit tests
2021-10-13 10:45:59 +01:00
renovate[bot] ecaa232a2d Pin dependencies (https://github.com/woocommerce/woocommerce-blocks/pull/4930)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-13 03:58:17 +00:00
renovate[bot] b68825c71b Update Node.js to v12.22.7 (https://github.com/woocommerce/woocommerce-blocks/pull/4931)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-13 02:16:47 +00:00
Mike Jolley 61e5a4c55e Add Checkout Package and Checkout i2 Documentation (https://github.com/woocommerce/woocommerce-blocks/pull/4892)
* Move components

* Main index for docs

* Block registry documentation

* filter registry docs

* Utility docs

* Doc for components

* Link to package docs

* fix import
2021-10-12 15:23:52 +01:00
github-actions[bot] a6607cd94f Release: 6.1.0 (https://github.com/woocommerce/woocommerce-blocks/pull/4924)
* Empty commit for release pull request

* Update readme.txt with release changelog

* Add testing instructions for 6.1.0 release

* Update readme.txt with release changelog

* woocommerce/woocommerce-blocks#4625 product categories list block hierarchy display fix (https://github.com/woocommerce/woocommerce-blocks/pull/4920)

* Update link to testing zip

* Remove mini cart testing from instructions

This is because mini-cart is only in experimental builds.

* Update changelog and testing notes

* Correct typo in testing instructions

* Update testing instructions

* Bumping version strings to new version.

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Ovidiu Liuta <ovidiu.liuta@automattic.com>
2021-10-12 15:09:46 +01:00
Ovidiu Liuta d6e0729c79 woocommerce/woocommerce-blocks#4625 product categories list block hierarchy display fix (https://github.com/woocommerce/woocommerce-blocks/pull/4920) 2021-10-12 11:36:35 +01:00
Tom Cafferkey 0f4161aff9 Convert CategoryList to TypeScript (https://github.com/woocommerce/woocommerce-blocks/pull/4909)
* Converted config files

* Converted constants file

* Converted attributes file

* Coverted edit file

* Convert block file

* Remove space from config
2021-10-12 09:21:00 +01:00
Niels Lange 8475bc7bad Add e2e tests for Top Rated Products (https://github.com/woocommerce/woocommerce-blocks/pull/4786) 2021-10-11 17:05:50 +01:00
Seghir Nadir eb9b8ab233 Revert "Display the notices registered by the payment gateway's process_payment() method (https://github.com/woocommerce/woocommerce-blocks/pull/4871)" (https://github.com/woocommerce/woocommerce-blocks/pull/4923)
This reverts commit 494df12859.
2021-10-11 17:00:47 +01:00
Mike Jolley caaa4f5ac4 Handle translations in lazy loaded files by injecting them into the page (https://github.com/woocommerce/woocommerce-blocks/pull/4897)
* Formalise chunk names

* register_chunk_translations()

* Rename handle

* Include fileSuffix

* Remove .chunk prefix- it broke the vendors chunk
2021-10-11 16:32:29 +01:00
Thomas Roberts 9fbfb5a594 Update percent of users who will see inbox notification (https://github.com/woocommerce/woocommerce-blocks/pull/4922) 2021-10-11 15:22:18 +01:00
Ovidiu Liuta ae603f3e82 WordPress Coding Standards fix for .scss files (https://github.com/woocommerce/woocommerce-blocks/pull/4918)
* adding timerange limit

* woocommerce/woocommerce-blocks#3739 fixing scss coding standard and removing spaces from parantheses values

* removing unrelated changes

* fixing further instances for parantheses
2021-10-11 14:18:32 +01:00
Niels Lange ff78f58556 Add e2e tests for Product Categories List (https://github.com/woocommerce/woocommerce-blocks/pull/4915) 2021-10-11 18:59:45 +07:00
Niels Lange 6286f7fbd6 Add e2e tests for Newest Products (https://github.com/woocommerce/woocommerce-blocks/pull/4789) 2021-10-11 18:55:38 +07:00
Danae Millan 494df12859 Display the notices registered by the payment gateway's process_payment() method (https://github.com/woocommerce/woocommerce-blocks/pull/4871)
We were displaying a generic error and clearing the notices before. Now we convert them to exceptions so they're actually displayed.
2021-10-09 11:46:35 -03:00
Niels Lange ad50a0e7d2 Add file and folder structure documentation (https://github.com/woocommerce/woocommerce-blocks/pull/4754)
* Add file and folder structure documentation

* Update docs/contributors/folder-structure.md

Co-authored-by: Mike Jolley <mike.jolley@me.com>

* Update docs/contributors/folder-structure.md

Co-authored-by: Mike Jolley <mike.jolley@me.com>

* Update docs/contributors/folder-structure.md

Co-authored-by: Mike Jolley <mike.jolley@me.com>

* Update description for atomic blocks in folder documentation

* Update description for base blocks in folder documentation

Co-authored-by: Mike Jolley <mike.jolley@me.com>
2021-10-08 22:10:05 +07:00
Thomas Roberts 255a74b328 Add screenshots on E2E test failures (https://github.com/woocommerce/woocommerce-blocks/pull/4898)
* Add test environment to catch errors

* Add jest-circus and jest-html-reporters

This is so we can log the screenshots and errors that happen during E2E tests.

* Use the jest reporters and jest-circus to run the E2E tests

* Force cart test to break

Revert this!

* Upload jest report artifact when tests fail

* Run artifact upload on failure

* Upload entire report directory to artifact

* Revert "Force cart test to break"

This reverts commit c57f2c5ab1d7b60d8824d854c1cb9a8281a71c4b.

* Update .gitignore and jest.config

* Force cart test to break

* Force cart test to break

* Remove <rootDir> from jest-html-reporter path

This was causing the artefact not to upload.

* Revert "Force cart test to break"

Co-authored-by: Niels Lange <info@nielslange.de>
2021-10-08 11:58:44 +01:00
Chouby ea4fecaa31 Prefix the input id with wc- instead of wp- (https://github.com/woocommerce/woocommerce-blocks/pull/4882) 2021-10-08 10:27:03 +01:00
Niels Lange ce371a0af7 Add documentation guidelines (https://github.com/woocommerce/woocommerce-blocks/pull/4893)
* Add documentation guidelines

* Link to Automattic Writing Style Guide

* Adjust section for heading usage

* Update docs/contributors/documentation-guidelines.md

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2021-10-08 11:54:52 +07:00
Michael P. Pfeiffer e39f175a0f Convert product elements shared config to TypeScript (https://github.com/woocommerce/woocommerce-blocks/pull/4908)
* Convert product elements shared config to TypeScript

* Limit import to type

* Convert deprecated empty save function

* Add comment explaining omitted attributes and title properties

Co-authored-by: Tom Cafferkey <tjcafferkey@gmail.com>
2021-10-07 15:42:49 +02:00
renovate[bot] 158e677e91 Update storybook monorepo to v6.3.10 (https://github.com/woocommerce/woocommerce-blocks/pull/4903)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-06 19:08:42 +00:00
Mike Jolley 6661549fb7 Update wordpress-components patch file to 11.1.6 2021-10-06 12:05:44 +01:00
Darren Ethier da9cc8fcf2 Improve the engines support in package.json (https://github.com/woocommerce/woocommerce-blocks/pull/4899)
This is a better representation of the node and npm version support for Woo Blocks (more notably the NPM 7 exclusion) which can help new contributors coming into the repository.
2021-10-06 05:21:05 -04:00
Albert Juhé Lluveras f8bf71c164 Document DOM events used in WC Blocks (https://github.com/woocommerce/woocommerce-blocks/pull/4876)
* Document DOM events used in WC Blocks

* Update docs/extensibility/dom-events.md

Co-authored-by: Tung Du <dinhtungdu@gmail.com>

Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2021-10-06 10:52:53 +02:00
Tom Cafferkey c7e966fd28 Fix/price slider aria values (https://github.com/woocommerce/woocommerce-blocks/pull/4839)
* Calculate human readable price values for the purpose of screen readers and set them as the aria values

* Calculate human readable price values for the purpose of screen readers and set them as the aria values
2021-10-06 09:48:17 +01:00
Tom Cafferkey ee84901ab8 AttributePicker: Set default values if they exist (https://github.com/woocommerce/woocommerce-blocks/pull/4815)
* Update API to add default boolean to attribute values and use this within the component to set the default attributes.

* Modify and add unit tests for isObject and getDefaultAttributes

* Sanitize attribute name to accommodate for custom attributes being default values.

* Comments for sanitized_attribute_name variable

* Remove second argument from getAttributes
2021-10-06 09:48:13 +01:00
renovate[bot] 97c8b7dee5 Update dependency autoprefixer to v10.3.7 (https://github.com/woocommerce/woocommerce-blocks/pull/4902)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-06 02:45:44 +00:00
renovate[bot] 2b2f96778d Update dependency @types/react to v16.14.16 (https://github.com/woocommerce/woocommerce-blocks/pull/4901)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-10-06 02:32:41 +00:00
Niels Lange 1557d347a5 Update js-build-system.md 2021-10-04 11:35:01 +07:00
Tung Du edce72e2fb Mini Cart block: improve button accessibility (https://github.com/woocommerce/woocommerce-blocks/pull/4852) 2021-10-04 10:54:28 +07:00
Tung Du 0f2c035423 Fix: remove IntersectionObserver shim (https://github.com/woocommerce/woocommerce-blocks/pull/4808) 2021-09-30 22:58:32 +07:00
Seghir Nadir 1bdb9b51c8 Don't fire woocommerce_blocks_loaded if WC version is not met (https://github.com/woocommerce/woocommerce-blocks/pull/4873) 2021-09-30 12:42:07 +01:00
Tung Du c1dc6dbc39 Fix: Filter button is not aligned with the input field (https://github.com/woocommerce/woocommerce-blocks/pull/4814)
* fix: filter button alignment

* fix: add dipsplay style class to .wc-block-attribute-filter for easier styling

* fix: overflow inside colum
2021-09-30 11:09:15 +02:00
Nadir Seghir db66734fd4 update versions and fix changelog date, closes woocommerce/woocommerce-blocks#4869 2021-09-29 14:57:32 +01:00
Seghir Nadir 77e3da81b2 Checkout i2: support odd classes when transforming from Checkout i1 to Checkout i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4866)
* support odd classes for Checkout

* support classNames at start of string

* keep classNames and aligment on frontend
2021-09-29 11:54:50 +01:00
github-actions[bot] cd5e31d9ba Release: 6.0.0 (https://github.com/woocommerce/woocommerce-blocks/pull/4850)
* Empty commit for release pull request

* add changelog

* change minimum_supported_wp_version to 5.6

* add testing instructions

* update testing steps with new code

* add terms and condition block testing steps

* Checkout i2: Show a notice if terms and conditions page (https://github.com/woocommerce/woocommerce-blocks/pull/4859)

* Make Terms block insertable

* add a notice to setup pages

* push updated error design in editor

* fix default text

* remove outline from checkbox-control in error

* update testing docs

* Update readme.txt

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>

* Update readme.txt

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>

* Update docs/testing/releases/600.md

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>

* Update docs/testing/releases/600.md

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Nadir Seghir <nadir.seghir@gmail.com>
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2021-09-29 11:23:49 +01:00
renovate[bot] ead4dbe393 Lock file maintenance (https://github.com/woocommerce/woocommerce-blocks/pull/4848)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-29 11:17:41 +01:00
renovate[bot] 80eaa08d14 Update dependency wordpress-components to v11.1.6 (https://github.com/woocommerce/woocommerce-blocks/pull/4863)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-29 04:12:36 +00:00
renovate[bot] 7c2fd6fe52 Update dependency @types/lodash to v4.14.175 (https://github.com/woocommerce/woocommerce-blocks/pull/4861)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-29 04:03:55 +00:00
renovate[bot] 3f76488f91 Update dependency autoprefixer to v10.3.6 (https://github.com/woocommerce/woocommerce-blocks/pull/4862)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-29 02:05:31 +00:00
Ricardo Metring 60f82537f1 Fix free orders missing payment method (https://github.com/woocommerce/woocommerce-blocks/pull/4854) 2021-09-28 12:30:48 -03:00
Seghir Nadir f01072fda1 Checkout i2: Show a notice if terms and conditions page (https://github.com/woocommerce/woocommerce-blocks/pull/4859)
* Make Terms block insertable

* add a notice to setup pages

* push updated error design in editor

* fix default text
2021-09-28 16:01:48 +01:00
Mike Jolley 1aaa00ed2a Cart i2: view switcher shared to children (https://github.com/woocommerce/woocommerce-blocks/pull/4817)
* Replace context with __experimentalShareWithChildBlocks

* Switch to parent block when changing views

* Swap order of views

* Drop default, use first view

* Improve block selection after changing views
2021-09-24 16:13:39 +01:00
Seghir Nadir 8e38c6b857 add blockProps to T&C block (https://github.com/woocommerce/woocommerce-blocks/pull/4843) 2021-09-24 15:59:41 +01:00
Seghir Nadir 244a2baa48 remove duplicate context (https://github.com/woocommerce/woocommerce-blocks/pull/4832) 2021-09-24 15:37:16 +01:00
Seghir Nadir 7769e437ef remove sample block (https://github.com/woocommerce/woocommerce-blocks/pull/4841) 2021-09-24 15:28:09 +01:00
Seghir Nadir f1c936b7d1 Add Cart Totals to cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4823)
* WIP getting to work on frontend

* restore frontend.tsx

* fix layout

* support emtpy cart in frontend

* add cart tital to correct place and move useEffect
2021-09-24 15:23:10 +01:00
Seghir Nadir 1d75435820 scope changes to checkout steps only (https://github.com/woocommerce/woocommerce-blocks/pull/4827) 2021-09-24 15:11:51 +01:00
Mike Jolley 04387a7726 Checkout i2: Handle text nodes in inner block rendering (https://github.com/woocommerce/woocommerce-blocks/pull/4822)
* Handle text nodes

* Tidy and add inline doc
2021-09-24 15:06:21 +01:00
Seghir Nadir f9f70893e0 Update Cart & Checkout i2 temporarily locking to be on the parent block (https://github.com/woocommerce/woocommerce-blocks/pull/4837)
* update locking to be on parent, not block

* include cart as well
2021-09-24 14:44:05 +01:00
Raluca Stan a2f39d07f1 Add documentation for registerPaymentMethodExtensionCallbacks (https://github.com/woocommerce/woocommerce-blocks/pull/4834)
* Improve the type for callbacks registered by extensions

The previous type was CanMakePaymentCallback, used for the payment methods's own canMakePayment callbacks, which could also return Promises. In order to eliminate the confusion, a new type has been created that defines callbacks that only return true or false.

* Document registerPaymentMethodExtensionCallbacks

* Update docs/extensibility/filtering-payment-methods.md

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

* Add information about payment method name in documentation

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2021-09-24 14:34:07 +01:00
Raluca Stan 8a657c32da Improve mocking of useStoreCart (https://github.com/woocommerce/woocommerce-blocks/pull/4826) 2021-09-24 10:47:05 +01:00
Thomas Roberts d0f9920fe2 Merge release/5.9.0 into trunk following 5.9.1 release 2021-09-24 09:52:19 +01:00
Seghir Nadir b6167bc179 Cart i2: Render filled and empty Carts on frontend (https://github.com/woocommerce/woocommerce-blocks/pull/4802)
* WIP getting to work on frontend

* restore frontend.tsx

* fix layout

* remove unit tests living where they shouldn't be living

* remove skeleton

* support emtpy cart in frontend

* remove extra todo

* use fragment instead of div

* Add empty cart event

* Remove extra fragment
2021-09-23 16:38:30 +01:00
Raluca Stan 27600b3309 Update canMakePayment to receive cart as argument and make it react to changes in billingData. (https://github.com/woocommerce/woocommerce-blocks/pull/4776)
* Add 	cartCoupons to canMakePayment argument

* Add cart to the paymentMethodArgument and improve the dependencies for the effect calling refreshCanMakePayments

* Debounce refreshCanMakePayments

The initial approach was to debounce billingData and use this value as a dependency for the useEffect that runs refreshCanMakePayments.
But because the depencies array can always change we decided to debounce the callback instead, ensuring this way that callback is not called multiple times: for example when typing a field in the billing address. Debounced was chosen instead of throttle because we want to call refreshCanMakePayments once the change event has stopped, with the final value.

* Update types and docs related to canMakePaymentArgument

* Mock the /cart call when testing payment methods

* Remove unused cartCoupons key in canMakePaymentArguments' interface
2021-09-23 16:27:02 +01:00
Ovidiu Liuta 63582e47b2 woocommerce/woocommerce-blocks#3906 screen reader fix for order summary block accessibility (https://github.com/woocommerce/woocommerce-blocks/pull/4810)
* woocommerce/woocommerce-blocks#3906 screen reader fix for order summary block

* removing tabIndex and extra accesibility text

* adding aria-hidden to total price and translation comments change order
2021-09-23 17:20:32 +02:00
Mike Jolley 83c49d94c3 Add testing notes for 5.7.2 2021-09-23 15:06:01 +01:00
Mike Jolley b0c0603d02 Add changelog 2021-09-23 15:05:21 +01:00
Albert Juhé Lluveras d677ce2c70 Fix infinite recursion when removing an attribute filter from the Active filters block (https://github.com/woocommerce/woocommerce-blocks/pull/4816) 2021-09-23 13:53:24 +02:00
Raluca Stan 9f2cf245b9 Add support for extensions to filter express payment methods (https://github.com/woocommerce/woocommerce-blocks/pull/4774)
* Support express payment methods filtering by extensions

* Add tests for getCanMakePayment and fix payment tests' TS errors

* Add comments for payment-method-config-helper test
2021-09-23 10:09:55 +01:00
Mike Jolley 2c412b2b3b Cart i2: Toolbar based view switcher (https://github.com/woocommerce/woocommerce-blocks/pull/4811)
* New icons

* Add new view switcher

* Context to pass down component controls

* Implement switcher
2021-09-22 16:00:19 +01:00
renovate[bot] 0d25657c58 Lock file maintenance (https://github.com/woocommerce/woocommerce-blocks/pull/4727)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-22 13:38:30 +02:00
renovate[bot] 44aec5a02c Update dependency reakit to v1.3.10 (https://github.com/woocommerce/woocommerce-blocks/pull/4807)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-22 04:03:15 +00:00
renovate[bot] 745f217931 Update dependency downshift to v6.1.7 (https://github.com/woocommerce/woocommerce-blocks/pull/4806)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-22 04:00:47 +00:00
renovate[bot] 5094e68e08 Update dependency @types/lodash to v4.14.173 (https://github.com/woocommerce/woocommerce-blocks/pull/4805)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-22 03:58:09 +00:00
renovate[bot] f1e42458d0 Pin dependency @types/jquery to 3.5.6 (https://github.com/woocommerce/woocommerce-blocks/pull/4804)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-22 02:02:12 +00:00
Albert Juhé Lluveras f3bf2ceb2d Remove assets/js/settings/blocks from sideEffects list (https://github.com/woocommerce/woocommerce-blocks/pull/4767) 2021-09-21 17:46:31 +02:00
Mike Jolley 2af90f301c Add/empty and fillted cart wrapper (https://github.com/woocommerce/woocommerce-blocks/pull/4803)
* Update area/types

* Add empty and filled block wrappers

* Add missing useBlockProps

* Add templates and inner block structure
2021-09-21 16:41:09 +01:00
Seghir Nadir 614c7205ef add CartCheckoutFeedbackPrompt to cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4801) 2021-09-21 14:42:12 +01:00
Albert Juhé Lluveras bbbb280b4f Open Mini Cart drawer when adding to cart from the All Products block (https://github.com/woocommerce/woocommerce-blocks/pull/4772)
* Open Mini Cart drawer when adding to cart from the All Products block

* Rename param from invalidateCartData to preserveCartData
2021-09-21 15:25:44 +02:00
Seghir Nadir a459360dc1 Add Express Checkout block for Cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4791)
* setup basic column blocks

* fix classnames

* move hacks back

* dubplciate columns

* add express payment block

* adjust styles

* fix locking after rebase
2021-09-21 13:38:56 +01:00
Seghir Nadir f2af87226c Adds Proceed to Checkout block to Cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4783)
* setup basic column blocks

* fix classnames

* move hacks back

* dubplciate columns

* add proceed to checkout block

* dub code
2021-09-21 13:20:42 +01:00
Seghir Nadir aeb43084f7 Add Cart Summary block in cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4782)
* setup basic column blocks

* fix classnames

* move hacks back

* dubplciate columns

* add summary block

* dub code
2021-09-21 12:58:36 +01:00
Mike Jolley cdc730836a Validate state on options change (https://github.com/woocommerce/woocommerce-blocks/pull/4761) 2021-09-21 11:48:39 +01:00
Seghir Nadir 91f9f160d9 Add Cart Line Items Block to Cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4781)
* setup basic column blocks

* fix classnames

* move hacks back

* dubplciate columns

* add cart line items block

* dub code
2021-09-21 11:47:20 +01:00
Seghir Nadir 56551347a6 Setup basic column blocks for Cart i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4780)
* setup basic column blocks

* fix classnames

* fix broken block.json in cart items block

* move hacks back

* dubplciate columns
2021-09-21 11:18:27 +01:00
Mike Jolley f9b9679d62 Switch to external icon for shipping/payment methods (https://github.com/woocommerce/woocommerce-blocks/pull/4760) 2021-09-21 11:01:12 +01:00
Tom Cafferkey 445f8175a1 Throw an exception if there is no selected shipping method on an item… (https://github.com/woocommerce/woocommerce-blocks/pull/4784)
* Throw an exception if there is no selected shipping method on an item that needs shipping

* Update src/StoreApi/Utilities/OrderController.php for ensure error message ends with a period.

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2021-09-21 10:31:52 +01:00
Mike Jolley 99f5a5aab3 Add object type to lock attributes (https://github.com/woocommerce/woocommerce-blocks/pull/4790) 2021-09-20 17:10:06 +01:00
Niels Lange 6dc54c1268 Add e2e tests for Featured Category (https://github.com/woocommerce/woocommerce-blocks/pull/4773) 2021-09-20 18:34:06 +07:00
Darren Ethier 95d84956de Update workflow to only act on pull_request open 2021-09-20 07:16:38 -04:00
Darren Ethier 8dd022c642 Add missing spaces in automation config. 2021-09-17 16:59:30 -04:00
Darren Ethier 33dc689ca9 Implement automation to automatically assign the team a PR author belongs to for reviewing the PR. 2021-09-17 16:27:09 -04:00
Darren Ethier a8bbc4dc37 Delete CODEOWNERS
I'm working on an automation that conflicts with this.
2021-09-17 16:20:30 -04:00
Seghir Nadir f44784ffca Create Cart i2 block (https://github.com/woocommerce/woocommerce-blocks/pull/4718) 2021-09-17 16:29:58 +01:00
Niels Lange 37920b118d Add E2E tests for Featured Products (https://github.com/woocommerce/woocommerce-blocks/pull/4771) 2021-09-17 14:07:26 +02:00
Mike Jolley da21021255 Show message if user has not yet calculated shipping (https://github.com/woocommerce/woocommerce-blocks/pull/4765) 2021-09-17 12:07:01 +01:00
Albert Juhé Lluveras c07fef9e57 Make All Reviews block honor 'ratings enabled' and 'show avatars' preferences (https://github.com/woocommerce/woocommerce-blocks/pull/4764)
* Make All Reviews block honor 'ratings enabled' and 'show avatars' preferences

* Only add space for image if image is rendered
2021-09-17 11:19:22 +02:00
Seghir Nadir 686bb662ad Update feature flags and experimental interfaces document. (https://github.com/woocommerce/woocommerce-blocks/pull/4750)
* add missing blocks and update old links

* features behind a feature flag

* update filters and JS methods

* Apply suggestions from code review

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>

Co-authored-by: Darren Ethier <darren@roughsmootheng.in>
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2021-09-16 14:50:33 -04:00
Albert Juhé Lluveras 8eb656eccf Update build system docs (https://github.com/woocommerce/woocommerce-blocks/pull/4762)
* Update build system docs

* Update docs/contributors/js-build-system.md

Co-authored-by: Mike Jolley <mike.jolley@me.com>

Co-authored-by: Mike Jolley <mike.jolley@me.com>
2021-09-16 17:58:03 +02:00
Mike Jolley 5c08c75612 Update Checkout to Checkout i2 (https://github.com/woocommerce/woocommerce-blocks/pull/4745)
* Remove i2 from build

* Remove i2 php registration

* Rename old checkout dir

* Rename i2 dir

* Migrate i1 to i2 code

* Register block metadata to fix frontend rendering when migrating to i2

* Register in correct order

* Missing styles

* add register-components to side effectful list

* wrong block class in e2e test

* wp prefix missing on selector

* Fix top level block test

* Reselect labels to work around rerendering

* missing empty cart styles

* Consolodate duplicate styles

* remove init code

* update selectBlockByName

Co-authored-by: Nadir Seghir <nadir.seghir@gmail.com>
2021-09-16 13:16:21 +01:00
Tom Cafferkey c967f72507 Products by Category: Move renderEmptyResponsePlaceholder to separate method (https://github.com/woocommerce/woocommerce-blocks/pull/4751)
* Move renderEmptyResponsePlaceholder to separate method

* Move EmptyResponsePlaceholder to its own separate component
2021-09-16 12:13:37 +01:00
Thomas Roberts df3b1a2202 Update release PR checklist to include files for version bump (https://github.com/woocommerce/woocommerce-blocks/pull/4755)
* Update release PR checklist to include files for version bump

* Change list of files to checkboxes
2021-09-16 12:11:59 +01:00
Thomas Roberts 5f40deeeab Merge remote-tracking branch 'origin/trunk' into trunk 2021-09-16 10:46:57 +01:00
Thomas Roberts 51d15b3d19 Bump version numbers
I did not update all the version numbers in all of the correct places during the release.
2021-09-16 10:41:20 +01:00
Albert Juhé Lluveras 17c7fe95c4 Update Reviews blocks so they use block styles (https://github.com/woocommerce/woocommerce-blocks/pull/4323)
* Update Reviews blocks so they use block styles

* Don't allow changing link color in Reviews blocks

* Resize review image based on font size
2021-09-16 11:32:48 +02:00
Raluca Stan 615b939383 Add Typescript to /blocks-registry/payment-methods (https://github.com/woocommerce/woocommerce-blocks/pull/4702)
* Type payment method under /block-registry

* Type assertions and add them back to PaymentMethodConfig

* Type ExpressPaymentMethodConfig

* Fix comment on payments types

* Fix CanMakePayment type

* Fix assertion for payment methods and the savedTokenComponent property

Because class properties come from the config object, they will never be null except if somebody explicitly adds them the the object with a value of null.
Which is not the case for savedTokenComponent for example, because it's optional and that's why we check it like this paymentMethods[ activePaymentMethod ]?.savedTokenComponent

* Add the complete CanMakePaymentReturnType and account for null for PaymentMethod.icons

- canMakePayment can also return a Promise and this was not included in the type definition
- in PaymentMethodConfig's constructor we also need to account for extensions passing {icons: null}.

* Revert Fix assertion for payment methods and the savedTokenComponent property

* Fix failing tests because of savedTokenComponent

I've reverted my changes and left the initialization of savedTokenComponent as it was.

* Rename types for more clarity

* Fix ExtensionNamespace and PaymentMethodName types

* Rename Supports and *PaymentMethodOptions type for better clarity
2021-09-15 18:36:02 +02:00
Albert Juhé Lluveras e17be06287 Add types to legacy-events.js (https://github.com/woocommerce/woocommerce-blocks/pull/4742) 2021-09-15 17:28:34 +01:00
Mike Jolley cb185fabe5 Remove absolute positioning on error message (https://github.com/woocommerce/woocommerce-blocks/pull/4734) 2021-09-15 14:03:21 +01:00
Thomas Roberts 117b9dec7f Add tests for filtering payment methods (https://github.com/woocommerce/woocommerce-blocks/pull/4696)
* Add tests for registerPaymentMethodExtensionCallbacks

* Use the console mocks from @wordpress/jest-console

Overriding console.error with my own mock was unnecessary.

* Add tests for canMakePaymentWithExtensions

* Add tests for payment-method-config

* Apply suggestions from code review

Co-authored-by: Raluca Stan <raluca.stan@automattic.com>

* Apply suggestions from code review

* Change file types to .ts and .tsx

* Add test to check namespace is not overwritten

* Move overwriting test to new test case

This assertion feels different enough to warrant its own test case.

Co-authored-by: Raluca Stan <raluca.stan@automattic.com>
2021-09-15 14:40:40 +02:00
Albert Juhé Lluveras e042beaff3 Move Mini Cart block component into its own file (https://github.com/woocommerce/woocommerce-blocks/pull/4737) 2021-09-15 13:40:36 +02:00
Niels Lange 74bf23ce35 Twenty Twenty: Adjust font styles for filter and product grid blocks (https://github.com/woocommerce/woocommerce-blocks/pull/4749)
* Twenty Twenty: Adjust font styles for filter and product grid blocks

* Add missing CSS class for stock filter
2021-09-15 13:35:06 +02:00
Albert Juhé Lluveras e216a7c90c Fix calculation of number of reviews in Reviews by Category block (https://github.com/woocommerce/woocommerce-blocks/pull/4729)
* Remove unused code

* Fix incorrect number of reviews in Reviews by Category block

* Add error handling around get_term_children()
2021-09-15 11:58:00 +02:00
Thomas Roberts a2772a1cad Add E2E and Unit (PHP and JS) tests for Filter by Stock block. (https://github.com/woocommerce/woocommerce-blocks/pull/4682)
* Add back end E2E tests for Filter by Stock

* Add unit/snapshot tests for Filter by stock block

* Refactor Filter by Stock block to load stock statuses in the block body

This is required to make the code easier to test, since the mocked settings were being applied immediately after the block was imported, which didn't give time to let the `allSettings` override take place in the unit tests.

* Add PHP Unit tests for test_custom_stock_counts of ProductQueryFilters

* Remove useMemo from stock filter block

This felt like an overoptimisation, it's very inexpensive to run this every render. The result is less complex code, so it's better this way imo.

* Move initial stock options and the values they are derived from into useState

* Add class name to block in editor
2021-09-15 09:20:31 +01:00
renovate[bot] 95c8736a19 Update dependency axios to v0.21.4 (https://github.com/woocommerce/woocommerce-blocks/pull/4748)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-15 03:15:28 +00:00
renovate[bot] 532d4f630b Pin dependency @wordpress/icons to v5.0.1 (https://github.com/woocommerce/woocommerce-blocks/pull/4747)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-15 03:13:12 +00:00
Thomas Roberts 7fc0349fca Bump version number after release 2021-09-14 15:06:44 +01:00
github-actions[bot] 99b55a2382 Release: 5.9.0 (https://github.com/woocommerce/woocommerce-blocks/pull/4731)
* Empty commit for release pull request

* Update changelog in readme

* Update testing instructions for 5.9.0

* Update testing instructions for 5.9.0 to include screenshots and smoke test

* Remove 4545 from testing notes and changelog

* Update testing instructions for 5.9.0 to include new test plugin zip

* Update testing instructions from postcode to city

* Rename usages of className to class in ProductSearch.php (https://github.com/woocommerce/woocommerce-blocks/pull/4740)

* Update zip file

* Update changelog in readme.txt

* Update testing instructions

* Update testing instructions

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2021-09-14 15:01:29 +01:00
Thomas Roberts 8d0d031381 Rename usages of className to class in ProductSearch.php (https://github.com/woocommerce/woocommerce-blocks/pull/4740) 2021-09-14 12:37:24 +01:00
Mike Jolley b543ee55cb Make h2 fill width of container (https://github.com/woocommerce/woocommerce-blocks/pull/4732) 2021-09-14 12:31:41 +01:00
Mike Jolley ad6521d250 Add focus styles to form elements (https://github.com/woocommerce/woocommerce-blocks/pull/4721) 2021-09-14 12:26:41 +01:00
Albert Juhé Lluveras 95ab1f3fc4 Improve accessibility when removing items from cart (https://github.com/woocommerce/woocommerce-blocks/pull/4673)
* Add custom close button label to Mini Cart drawer

* Add screen reader notice when removing an item from cart

* Focus next item from cart when an item is removed

* Add back CSS to hide close button label

* Don't focus previous item after the last one is removed

* Remove period from button label

* Don't show the number of items in Cart if Mini Cart is loading

This prevents displaying outdated data. That's specially important
for screen readers, because they were reading the outdated value
before it was replaced by the new one.

* Focus cart items table when last item in list is removed

* Use a ref to focus cart items table

* Use a ref to focus cart item table rows

* Fix empty cart if Mini Cart items have been removed

* Update snapshots
2021-09-14 08:09:45 +02:00
Albert Juhé Lluveras e95ad4ff43 Avoid exposing receiveCart to extensions (https://github.com/woocommerce/woocommerce-blocks/pull/4730) 2021-09-13 15:49:46 +02:00
Thomas Roberts 6e141e6b62 Add inbox notification to surface cart and checkout blocks to select merchants (https://github.com/woocommerce/woocommerce-blocks/pull/4518)
* Add InboxNotifications class

This will be used to handle displaying the inbox notification to select merchants

* Show inbox notifications on load

* Update copy in inbox notification

* Update URL and percent chance for a user to be chosen

* Add apostrophe to notification content

* Only register notifications when woocommerce_init is done

* Wait for admin to load before adding note

* Add further disallowed plugins

* Allow notification to be shown when using WC Points and Rewards

* Remove timestamp and content data from the note

This isn't necessary and was only added for testing.

* Check for existence of note based on name instead of content_data

* Create delete note function

We'll be deleting notes in the case that an ineligible plugin becomes active.

* Reorder the eligible plugin and % targeting check

This will let us target a truer % of users, and also will let us delete the note if a user activates an ineligible plugin.

* Remove code which was added for testing purposes

The code to return if the feature plugin was active was enabled, woocommerce-gutenberg-products-block was added as an ineligible plugin.
2021-09-13 12:36:51 +01:00
Seghir Nadir 7d5d123340 wrap order summary block in disabled (https://github.com/woocommerce/woocommerce-blocks/pull/4720) 2021-09-10 16:51:45 +01:00
Mike Jolley a2cc77bd21 Hide tax row if totals are 0 (https://github.com/woocommerce/woocommerce-blocks/pull/4719) 2021-09-10 16:42:29 +01:00
Mike Jolley 40e438da35 Fix Checkout i2 mobile styling (https://github.com/woocommerce/woocommerce-blocks/pull/4699)
* Align fields based on mobile vs desktop views

* Improve string appearance in form steps

* Remove comment

* fix wrapper in editor
2021-09-10 15:04:42 +01:00
Seghir Nadir 148cb91a1e Expose Validation to 3PD blocks. (https://github.com/woocommerce/woocommerce-blocks/pull/4685)
* introduce useValidation hook

* remove the hook return

* simplfy validation to avoid infinit setState

* remove extra todo
2021-09-09 16:35:53 +01:00
renovate[bot] 13c5377064 Update dependency axios to v0.21.2 [SECURITY] (https://github.com/woocommerce/woocommerce-blocks/pull/4698)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-09-08 21:58:06 +00:00
Darren Ethier b6a19764aa Update patch release pr template 2021-09-08 15:39:25 -04:00
Darren Ethier 2fb9543114 Numerous tweaks to various GH templates.
- updated release pull request description template to be more condensed and require no editing.
- moved some elements of release pull request items into pull request template (handled at the PR level instead of the release level).
- updated the release pull request checklist templates to include mobile and desktop test coverage for ui changes.
2021-09-08 15:37:42 -04:00
Darren Ethier 7df04e2730 Add checklist item for reminding porter about auditing experimental interfaces. 2021-09-08 14:14:47 -04:00
renovate[bot] 84dcef7b19 Lock file maintenance (https://github.com/woocommerce/woocommerce-blocks/pull/4686)
* Update package-lock.json

* Update package-lock.json

Co-authored-by: Niels Lange <info@nielslange.de>
2021-09-08 16:30:10 +02:00
Raluca Stan 3e96caaa3a Add extensibility point for extensions to filter payment methods (https://github.com/woocommerce/woocommerce-blocks/pull/4668)
* Add extensionsConfig when registering a payment method

The extension config has its own canMakePayment where extensions can add callback using a payment method's name.

* Make canMakePayment a getter on PaymentMethodConfig

Because extensions can register canMakePayment callbacks for a payment method before it is registered we need to transform
canMakePayment into a getter so that it's always recalculating it's value based on the registered callbacks/

* Rename extension related config and method

* Format comments

* Add an extension namespace to registerPaymentMethodExtensionCallback utility

 This commit changes the API for how extensions will register their own callbacks to canMakePayment, so that they can add their namespace and also callbacks for multiple payment methods.

* Format comments

* Update assets/js/blocks-registry/payment-methods/payment-method-config.js

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

* Update assets/js/blocks-registry/payment-methods/registry.js

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

* Update assets/js/blocks-registry/payment-methods/payment-method-config-helper.js

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

* Update assets/js/blocks-registry/payment-methods/payment-method-config-helper.js

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

* Update assets/js/blocks-registry/payment-methods/registry.js

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

* Fix eslint warning

* Handle errors at registerPaymentMethodExtensionCallbacks level

* Update assets/js/blocks-registry/payment-methods/registry.js

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>

* Fix formatting issues

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
2021-09-08 12:29:29 +01:00