Commit Graph

5918 Commits

Author SHA1 Message Date
Niels Lange f73edcc8d2 Update coupons.md 2023-09-27 23:15:48 +07:00
Mike Jolley 241984a265 Fix downloads block visibility (https://github.com/woocommerce/woocommerce-blocks/pull/11056) 2023-09-27 11:56:24 +00:00
Niels Lange 7f7ff60406 Update cross-browser.md 2023-09-27 11:13:04 +07:00
Daniel W. Robert e3ccb230d1 Update escaping for Featured Item product image 2023-09-26 16:17:21 +02:00
dependabot[bot] 56a037a8c8 Bump @wordpress/base-styles from 4.14.0 to 4.33.0 (https://github.com/woocommerce/woocommerce-blocks/pull/11049)
Bumps [@wordpress/base-styles](https://github.com/WordPress/gutenberg/tree/HEAD/packages/base-styles) from 4.14.0 to 4.33.0.
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/base-styles/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/base-styles@4.33.0/packages/base-styles)

---
updated-dependencies:
- dependency-name: "@wordpress/base-styles"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-26 05:43:52 -07:00
dependabot[bot] 4cb54370e2 Bump @playwright/test from 1.32.3 to 1.38.1 (https://github.com/woocommerce/woocommerce-blocks/pull/11050)
Bumps [@playwright/test](https://github.com/Microsoft/playwright) from 1.32.3 to 1.38.1.
- [Release notes](https://github.com/Microsoft/playwright/releases)
- [Commits](https://github.com/Microsoft/playwright/compare/v1.32.3...v1.38.1)

---
updated-dependencies:
- dependency-name: "@playwright/test"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-25 14:41:14 -07:00
dependabot[bot] 1093ca6aef Bump eslint-plugin-import from 2.26.0 to 2.28.1 (https://github.com/woocommerce/woocommerce-blocks/pull/10883)
Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.26.0 to 2.28.1.
- [Release notes](https://github.com/import-js/eslint-plugin-import/releases)
- [Changelog](https://github.com/import-js/eslint-plugin-import/blob/main/CHANGELOG.md)
- [Commits](https://github.com/import-js/eslint-plugin-import/compare/v2.26.0...v2.28.1)

---
updated-dependencies:
- dependency-name: eslint-plugin-import
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-25 13:39:28 -07:00
Hritik Chaudhary 91c5ff83ca Remove data attributes from being saved in html of All products block (https://github.com/woocommerce/woocommerce-blocks/pull/10032)
* Remove data attributes from being saved in html of All products block

* added old save in deprecated

* Addressed review comments

---------

Co-authored-by: Tung Du <dinhtungdu@gmail.com>
Co-authored-by: Roy Ho <roykho77@gmail.com>
2023-09-25 07:57:59 -07:00
Hsing-yu Flowers 72ebfbf3dd Remove order and checkout order endpoints experimental flag (https://github.com/woocommerce/woocommerce-blocks/pull/11022)
* Remove order and checkout order endpoint feature flag

* Remove Order Route and Checkout Order Route from experimental flag list

* Remove order and checkout order endpoint feature flag

* Remove Order Route and Checkout Order Route from experimental flag list

* Update e2e tests selector

* Revert "Update e2e tests selector"

This reverts commit 2a6b561a883c701be1da2ffc39200cd19a85f1e3.

---------

Co-authored-by: Niels Lange <info@nielslange.de>
2023-09-25 21:37:22 +07:00
Mike Jolley 963be4ea7a Make default heading level for cart and checkout templates a h1 (https://github.com/woocommerce/woocommerce-blocks/pull/11029) 2023-09-25 11:00:58 +01:00
Alba Rincón e2d5175c65 Ensure the content of the patterns is also AI-generated (https://github.com/woocommerce/woocommerce-blocks/pull/10997)
* Fix bug, it was always returning {'ai_content_generated':true} even in case of error

* Refactor PatternImages to extract static helper method to PatternImagesHelper and rename to PatternUpdater

* Fix use on patterns

* Update the pattern content using AI as well

* Make API requests in parallel

* Fix prompt and update patterns with generated content

* Return default content if patterns content is empty

* Fix patterns and failed responses

* Add timeout to the request multiple function

* Replace square by landscape

* Remove todo

* Return error on content update error

* Ensure the pattern content exists within the wc_blocks_patterns_content option: if it doesn't exist, fetch the default content from the default dictionary instead.

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-09-25 09:48:52 +00:00
Alexandre Lara f4424f541c Improve regex for directive parsing (https://github.com/woocommerce/woocommerce-blocks/pull/11034) 2023-09-22 18:26:36 -03:00
Daniel Dudzic b6d374a275 Product Gallery Pager: Remove the Pager markup if there's only one image (https://github.com/woocommerce/woocommerce-blocks/pull/10998)
* Product Gallery Pager: Hide the Pager if there's only one image in the gallery

* Product Gallery Pager: Add an empty return
2023-09-22 19:34:16 +00:00
Daniel Dudzic 0bab8f2067 Product Gallery: Add support for custom wrapper class parameter in the get_product_gallery_images() function. Fix the Product Gallery Thumbnails on click. (https://github.com/woocommerce/woocommerce-blocks/pull/11032) 2023-09-22 21:04:01 +02:00
Saad Tarhi 13024c88e6 Fix crash in WooExpress Cart & Checkout Editor (https://github.com/woocommerce/woocommerce-blocks/pull/11024) 2023-09-22 19:10:50 +01:00
Daniel Dudzic a7b5812703 Product Gallery Large Image: Add wrapper to fix zoom (https://github.com/woocommerce/woocommerce-blocks/pull/11023)
* Product Gallery Large Image: Add wrapper to fix zoom

* Product Gallery: Fix E2E test
2023-09-22 13:48:51 +02:00
Karol Manijak 25bac5f030 Add condition to register blocks and variation in single product temp… (https://github.com/woocommerce/woocommerce-blocks/pull/10978)
* Add condition to register blocks and variation in single product template

* Improve the fix by providing default ancestor value to block registered for single product

* add E2E test

* add insert block

---------

Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2023-09-22 08:27:12 +02:00
Alexandre Lara f8fcc41c5a Product Gallery > Pager block: Add support to interactivity API (https://github.com/woocommerce/woocommerce-blocks/pull/10736)
* Add interactivity API to the Pager block

* Replace Large Image when clicking on page

* Fix php cs errors

* Fix php cs errors

* Fix php cs errors

* fix php cs errors

* Remove unnecessary code and fix block classes

* Fix error when clicking on page in Pager block

* Fix php cs errors

* Fix styles for the block

* Fix styles and php cs errors
2023-09-21 16:35:25 -03:00
Tom Cafferkey c60e6d838b BlockTemplateController: Remove unncessary PHP variable (https://github.com/woocommerce/woocommerce-blocks/pull/11006) 2023-09-21 12:54:42 +01:00
Daniel Dudzic 8b470177f4 Product Gallery: CSS styling tightening up (https://github.com/woocommerce/woocommerce-blocks/pull/10867)
* Product Gallery: Fix conflicts between block settings and CSS

* Product Gallery: Final CSS polishes

* Product Gallery: Minor CSS refactor

* Product Gallery: Revert the minor css refactor

* add custom class on the main div

* Product Gallery: Combine inner block styles and optimize them

* Product Gallery Inner Blocks: Remove imports to no longer existing stylesheet files

* Product Gallery: Change all references from wp-block to wc-block

* Product Gallery Inner Blocks: Remove loading of non-existent inner blocks stylesheet files

* Product Gallery: Add additional class to ensure correct width for single product gallery despite of the Next/Previous mode selected

* Product Gallery: Add final polishing

* fix zoom

* Product Gallery Thumbnails: Fix css

* Product Gallery Large Image Next Previous Buttons: Skip failing tests

---------

Co-authored-by: Luigi <gigitux@gmail.com>
2023-09-21 11:31:16 +00:00
Alexandre Lara 3ecd34e01a Upgrade webpack to version 5 (https://github.com/woocommerce/woocommerce-blocks/pull/8013)
* Upgrade terser-webpack-plugin to version 4.2.3

* Upgrade webpack-bundle-analyzer to 4.7.0

* Upgrade to Webpack version 5

* Upgrade @wordpress/dependency-extraction-webpack-plugin to 4.6.0

* Upgrade dependency copy-webpack-plugin to version 11.0.0

* Upgrade dependency terser-webpack-plugin to version 5.3.6

* Replace webpack-rtl-plugin with the new @automattic/webpack-rtl-plugin

* Replace module.issuer with the new ModuleGraph API

There is a warning appearing in the console when running the application. This is due to the fact that the module.issuer has been deprecated on Webpack 5 and replaced with the new ModuleGraph API. This commit replaces the deprecated API with the new one.

* Upgrade babel and babel plugins to latest version

* Replace jsonpFunction with the new uniqueName property

Add a unique name of the webpack build to avoid multiple webpack runtimes to conflict when using globals. It defaults to output.library name or the package name from package.json in the context, if both aren't found, it is set to an ''.

* Replace cacheDirectory inline configuration with options.cacheDirectory

* Upgrade @wordpress/e2e-tests dependency to version 5.6.0

* Remove babel-plugin-transform-react-jsx dependency

Remove babel-plugin-transform-react-jsx dependency because it is already included in @wordpress/babel-preset-default

* Remove unnecessary Babel dependencies

Remove some unnecessary babel dependencies that are already included in the @babel/preset-env package.

* Upgrade puppeteer dependency to version 16.2.0

* Remove caret from package.json dependencies

* Fix Storybook build error

This commit fixes the Storybook build error that was being caused because of Storybook by default uses Webpack 4, but since we are currently upgrading our webpack to version 5, we need to install some required dependencies and also explicitly tell Storybook to use Webpack 5.

* Fix package-lock.json after merging with trunk

* Add own webpack-rtl-plugin implementation to the project

Before upgrading Webpack to version 5, we were using the original `webpack-rtl-plugin` released by Romain Berger; unfortunately, this plugin is not compatible with Webpack 5, so we replaced it with `@automattic/webpack-rtl-plugin`. The problem is that `@automattic/webpack-rtl-plugin` by default generates files with the '.rtl.css' suffix and does not provide a way to change that.

This commit adds our own implementation of the `webpack-rtl-plugin` (adapted from `@automattic/webpack-rtl-plugin`) that is compatible with Webpack 5 and allows us to change the suffix of the generated files to follow the recommended way defined by Wordpress (https://codex.wordpress.org/Right-to-Left_Language_Support)

* Change conditional clause to be multiline

* Fix package-lock.json after merge with trunk

* Fix package-lock.json after merge with trunk

* Rename files to fix ESLint errors

This commit renames files that have the .js extension but contain JSX code. This is causing ESLint to throw errors because by default our Eslint configuration expects only files with the .jsx extension to contain JSX code.

* Fix package-lock.json file

* Add is-plain-obj module to the transformIgnorePatterns of jest config

* Update package-lock.json

* Fix package-lock.json

* Upgrade @wordpress/i18n dependency to version 4.31.0

* Update package-lock.json

* Update composer lock file

* Fix Webpack config for Webpack 5

* Add the package-lock.json

* Remove unsupported config from webpack

* Fix error with Webpack build

* Add wait for network idle to the tests

* Attempt to fix e2e test

* Restore promise.all

* Upgrade puppeteer to v17.1.3

* Upgrade expect-puppeteer

* Update expect-puppeteer

* Downgrade expect-puppeteer

* Revert "Upgrade puppeteer to v17.1.3"

This reverts commit 61ed52a56f131961f3970b6fb22cdd8b540bada3.

* Upgrade Puppeteer to version 17.1.3

* Fix executionContext.frame is not a function error

* Fix e2e tests

* Remove isExperimentalBuild from Product Gallery inner blocks

* Upgrade Webpack and Webpack-cli to latest version

* Upgrade postcss and mini-css plugins

* Fix error with mini-cart block

* Fix styling error with filter blocks

* Fix issue when running unit tests

* Fix storybook script not loading

* Fix a11y issue in Storybook

* Fix error when multiple isExperimentalBuild was being used

* Prevent error when layout is not present in the attributes object

* Update `chunkIds` to `named` in Webpack

* Add cache groups to the Webpack configs
2023-09-20 17:31:52 -03:00
Mike Jolley edf4a95b23 Feature Branch: Blockified Order Confirmation (https://github.com/woocommerce/woocommerce-blocks/pull/10056)
* Main block types for confirmation

* Initial blocks

* Styling and placeholders

* Make blocks experimental

* Update summary icon

* Add name/description for status block and missing text descriptions in the block.

Closes woocommerce/woocommerce-blocks#10057

* Order confirmation: Convert Order Details Templates to Blocks (https://github.com/woocommerce/woocommerce-blocks/pull/10095)

* Move code from templates into the details block

* Details -> Totals

* Downloads block

* Sample content for downloads block

* Add block icon

* Add conversion template (https://github.com/woocommerce/woocommerce-blocks/pull/10077)

* Update inner block name

* Add default title constant

* Revert "Add default title constant"

This reverts commit 1dd3bbfecc1be83c367b1ab064f5032ea58cb678.

* Add global styles for order confirmation status block (https://github.com/woocommerce/woocommerce-blocks/pull/10164)

* Implement style controls

* Prevent link color spilling over onto wrapper

* Add styles and remove class names

* Remove __experimentalWritingMode

* Add global styles for order confirmation summary block (https://github.com/woocommerce/woocommerce-blocks/pull/10179)

* Styles for summary

* Remove __experimentalWritingMode

* Add table styles for order details (https://github.com/woocommerce/woocommerce-blocks/pull/10185)

* Add table styles for order details

* __experimentalFontWeight

* Add link styles

* Handle preview link styles

* Unauthenticated views for Order Confirmation template (https://github.com/woocommerce/woocommerce-blocks/pull/10414)

* Different views by permission

* check user id matches when logged out

* Add order confirmation wrapper block (https://github.com/woocommerce/woocommerce-blocks/pull/10286)

* Add a heading wrapper block

* Register the BillingWrapper Block server side

* Fix exception 'render_content' error

* Add the Billing Wrapper Block to the template

* Fix wrong block name error

* Fix php error

* Conditionally render Billing Address within the Wrapper

* Fix parent rendering

* Clean up code (remove billing address from the template)

* Update titles, descriptions, and icons of the billing Block and inner block

* Fix broken block by removing the "parent" keyword

* Use a user-friendly title and description for the Billing Wrapper

* Update Billing Wrapper Block's title case

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

* Fix PHP failing unit test

---------

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

* Remove "thanks" for authenticated page

* Introduce shipping wrapper based on billing wrapper

Closes woocommerce/woocommerce-blocks#10053

* Order confirmation block: Verify email address for guest customers (https://github.com/woocommerce/woocommerce-blocks/pull/10567)

* Add verify step for guest orders

* Render content to pass through block content

* Revert package changes

* Customer orders cannot use email to verify

* Add style controls for order shipping and billing address blocks (https://github.com/woocommerce/woocommerce-blocks/pull/10633)

* Order confirmation block styling (https://github.com/woocommerce/woocommerce-blocks/pull/10780)

* Add missing heading to order details

* Summary block spacing

* Update css variables

* table styles

* Inherit border styles for cells

* Alignment and address styles

* Add downloads wrapper

* Style controls

* Fix typo

* Update Download Wrapper's Icon

* Fix TS error

* Disable Download Block's server side rendering in the editor

This fixes the loading after each style change from the style controls

* Clean up Downloads render functions

* Fix client side Downloads Block's table border

* Download + Total wrappers and tables styling

* small screen

* Remove server side render for previews

---------

Co-authored-by: Saad Tarhi <saad.trh@gmail.com>

* Shorten template description

* Update test address data

* Avoid leaking order key in permission form

* Remove todo

* Make email form required.

* Remove edit page link

* Remove empty columns from address wrapper

* Remove IIFE

* typo

* Update description to mention billing

* Adjust link scss

* Fix wrapper markup and spacing controls

* Add link preview in editor

* Add initial E2E setup for the Order Confirmation Block (https://github.com/woocommerce/woocommerce-blocks/pull/10840)

* Fix WC_DateTime check

* Move form outside of block markup

* Add additional information block (https://github.com/woocommerce/woocommerce-blocks/pull/10842)

* Add block which contains hooks

* Use skeleton for placeholder instead of illustration

* Remove duplicate methods

* Remove duplicate align tag

* Update meta styles

* Tests for order confirmation conditional blocks (https://github.com/woocommerce/woocommerce-blocks/pull/10972)

* Add tests for conditional blocks

* Move setup into test

* Add E2E to the the Order Confirmation Block (https://github.com/woocommerce/woocommerce-blocks/pull/10863)

* Add editor util functions

* Update editor template E2E test

* Add the "exact" property for consistency

* Skip test

Can't get the element in the page. More investigation needed! Skipping
for now.

* Fix "transformIntoBlocks" logic

* Add tests for logged in user

* Fix "beforeAll" config

* Confirm downloads section is visible when logged in

* Create "verifyOrderConfirmationDetails" util function

* Add logged in test case

* Add Guest user test case

* Fix editor e2e testing

* Apply a proper teardown

* Fix failing tests after logout

* Ensure we are logged in before visiting the editor

* Ensure to have shipping selected

* Wait for changes to be saved on the editor

* Ensure shipping options is selected

* Remove comment

* Ensure we are logged in before going to the admin page

* Mark the Order Confirmation as a side effect test

* OrderConfirmation blocks are not experimental

* resolve merge conflict

* Revert package lock changes

* Fix enqueue_assets

* Fix CSS 404s

* Make template tests more robust

* Fix page URL for default confirmation page

* Try afterEach to log back in

* Skip guest/logout use cases

Login out causes other tests to fail. We will implement these case when
the multiple sign in roles are introduced in the codebase.

* Remove tests requiring login out & add comments

* Remove unused util functions

* Hide confirmation blocks from post editor

---------

Co-authored-by: Saad Tarhi <saad.trh@gmail.com>
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-09-20 13:56:00 +01:00
Luigi 4de017c5b9 Merge branch 'trunk' of github.com:woocommerce/woocommerce-blocks into trunk 2023-09-20 12:19:21 +02:00
Luigi 446de5aece Merge branch 'release/11.1.0' of github.com:woocommerce/woocommerce-blocks into trunk 2023-09-20 12:19:02 +02:00
github-actions[bot] c5678716c6 Release: 11.1.1 (https://github.com/woocommerce/woocommerce-blocks/pull/11000)
* Add escaping to unescaped style attribute variable

* Empty commit for release pull request

* update testing instructions

* bump version to 11.1.1

* add zip link

---------

Co-authored-by: Daniel W. Robert <danielwrobert@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Luigi <gigitux@gmail.com>
2023-09-20 12:17:32 +02:00
Daniel Dudzic e29684e4ab Product Gallery Thumbnails: Only output thumbnails markup when multiple product thumbnails are present (https://github.com/woocommerce/woocommerce-blocks/pull/10761)
* Fix "On sale" badge class for shop

* Add class to sale badge

* Product Gallery Thumbnails: Remove empty markup from the frontend when no thumbnails are present

* Product Gallery Thumbnails: Minor null coalescing operator improvement

* Product Gallery Thumbnails: Remove the Thumbnails markup if there's only one image present

* Product Gallery Thumbnails: Minor null coalescing operator improvement

---------

Co-authored-by: Alba Rincón <alba.rincon@automattic.com>
Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2023-09-20 08:26:58 +00:00
Luigi Teschio 35e82fe4ec Fix: Password Protection not respected on single product template (https://github.com/woocommerce/woocommerce-blocks/pull/10999)
* Add password protection on the blockified Single Product Template

* Add E2E test

* fix unit test

* remove empty space
2023-09-20 07:17:13 +00:00
Sam Seay 767a093b6a Refactor frontend, frontend-container-block (of reviews) to TypeScript (https://github.com/woocommerce/woocommerce-blocks/pull/10787)
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2023-09-20 04:21:26 +00:00
Daniel Dudzic 67f8476a82 Update experimental blocks in the feature-flags-and-experimental-interfaces doc (https://github.com/woocommerce/woocommerce-blocks/pull/10937)
* Features Flags and Experimental Interfaces doc: Update blocks behind the experimental flag

* Product Gallery Next Previous: Add missing experimental flag
2023-09-19 21:37:00 +00:00
Daniel W. Robert 8fdd1726a6 Add escaping to unescaped style attribute variable 2023-09-19 18:48:08 +02:00
Mike Jolley 68064c115b Refactor Cart and Checkout Page Templates (https://github.com/woocommerce/woocommerce-blocks/pull/10773)
* Rename checkout template slug

* Remove redirect and custom title

* Classic shortcode block for checkout

* Empty title

* WIP placeholder

* Change blockified template

* Prefix cart and checkout templates with "Page: "

* Template migration routine

* Apply same treatment to cart template

* Notices

* Update placeholder text

* Classic shortcodes block

* Page content wrapper for templates

* Update default

* Do not save attributes

* Update templates

* Remove cart classic template

* Reverted endpoints for Cart & Checkout templates. This reverts PR 9406

* Migrate page content wrapper.

* Removed useless method arg. Minor tweaks.

* Skip migration if the theme has a template file for this page.

* Removed impossible condition.

* Migrate page content wrapper.

* Remove TemplateNotice in favour of DefaultNotice

* Documentation links in shortcode placeholder

* Hide cart and checkout page selector when using block themes

* Unused var

* Add tests for template changes

* Revert changes to classic-template

* Allow frontend redirect

* Unused file

* Bump version for updater

* Support x template naming as well as page-x

* Need to add item to cart to test checkout

* Fix header test by fixing utility for adding to cart

* Remove permalink tests

* Click body

* Wait for content to finish loading

* Wait for add to cart response when adding to cart without item name

* Wait for save before visiting frontend

* Set content instead of inserting block

* Perform test in site editor rather than page editor

* Prevent notice to set the default cart/checkout page from showing on the site editor.

---------

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
2023-09-19 10:58:18 +01:00
Tarun Vijwani ea1b201579 Checkout Block: Prevent changes in the selected shipping method when new rates are added or removed (https://github.com/woocommerce/woocommerce-blocks/pull/10457)
* Prevent changes in the selected shipping method when new rates are added or removed.

* Fix spacing as per the coding standards

* Remove additional new line space.
2023-09-19 12:29:03 +04:00
Brian 04578dda16 Cart Line Items » saleBadgePriceFormat / cartItemClass / cartItemPrice: Add code snippet and screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10989)
* Cart Line Items » saleBadgePriceFormat: Add code snippet and screenshot

* fix before image

* fix enter
2023-09-19 14:55:32 +07:00
Alba Rincón 26295c0eab [Store Customization] Update patterns to use the AI selected verticals for images (https://github.com/woocommerce/woocommerce-blocks/pull/10796)
* Add the Verticals API client

* Add tests

* Refactor error handling

* Create first version of the prompt class

* Improve Vertical selector and add tests

* Remove testing code

* Update class comment

* Add PatternImages class

* Pass the dictionary as param

* Add tests

* Add `get_pattern_images` function and use it on patterns

* Add the Jetpack Connection Package as a dependency for WooCommerce Blocks.

* Introduce the new Configuration Class for registering and enabling the Jetpack connection for sites and users.

* Introduce the Connection class for making requests to the GPT AI API.

* Update the get_jwt_token method.

* Update the error messages for the get_jwt_token method.

* Update the register_site method.

* Update the Configuration class structure and add Dependency Injection.

* Update structure for the Connection Class.

* Update the return type for the get_jwt_token method.

* Update method visibility for get_site_id

* Update the name and params for methods within the Connection Class

* Add tests for the Connecction class.

* Update the Constructor for the Configuration class.

* Add the Patterns class.

* Move the get_image_url function to the PatternImages class and update the call in all patterns to address errors.

* Remove the functions.php file

* Update the VerticalsSelector class.

* Update the constructor for PatternImages.

* Update the Store API Route for Patterns.

* Update the create_patterns_content method to ensure it returns the results of update_option.

* Add the new Patterns route to the RoutesController class.

* Update the route path and remove the business description validation as that is done via create_patterns_content

* Introduce the PatternsSchema

* Update the prompt, errors messages and output format for the Verticals Selector.

* Fix the missing file error for the Patterns Dictionary.

* Introduce the new get_patterns_dictionary method and update the create_patterns_content method to better handle errors.

* Update the returned response for the endpoint.

* Add the get_item_response method to the PatternsSchema class.

* Update response for when allow_ai_connection option is not set.

* Enable authentication for the endpoint.

* Modify and temporarily remove some failing tests for the AI API: a separate PR will be opened to clear those out later.

* Add validation to the verticals_id.

* Remove reference to the src/Patterns/functions.php file.

* Update `alt` to be more generic, since the displayed images will vary

* Store Customization > Schedule an action to update the patterns content whenever the business description is changed (https://github.com/woocommerce/woocommerce-blocks/pull/10956)

* Introduce the new OptionUpdate class.

* Update the path to action schduler and add a file_exists check before attempting to schedule the action.

* Update the content in patterns from the BlockPatterns class instead.

* Remove return comment

---------

Co-authored-by: Alba Rincón <alba.rincon@automattic.com>

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-09-19 09:05:44 +02:00
Brian 559b29c850 ExperimentalOrderShippingPackages add snippet (https://github.com/woocommerce/woocommerce-blocks/pull/10988) 2023-09-19 13:26:21 +07:00
Daniel Dudzic 6f32bf8cf7 Single Product: Fix width setting (https://github.com/woocommerce/woocommerce-blocks/pull/10977) 2023-09-18 12:35:30 +02:00
Tung Du d488a3f2b9 CollectionFilters: Hydrate Collection Data for inner filter blocks (https://github.com/woocommerce/woocommerce-blocks/pull/10873) 2023-09-18 10:00:18 +07:00
Brian 0b2b3d5df1 ExperimentalOrderMeta / ExperimentalOrderLocalPickupPackages / ExperimentalDiscountsMeta: add code snippet (https://github.com/woocommerce/woocommerce-blocks/pull/10976)
* ExperimentalOrderMeta add code snippet

* ExperimentalOrderLocalPickupPackages add code snippet

* ExperimentalOrderLocalPickupPackages add code snippet
2023-09-16 14:34:24 +07:00
Brian 181df639d5 Cart Line Items » itemName / subtotalPriceFormat / showRemoveItemLink: Add code snippet and screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10969)
* Cart Line Items » itemName: Add code snippet and screenshot

* subtotalPriceFormat

* showRemoveItemLink
2023-09-16 12:30:33 +07:00
Patricia Hillebrandt 067626a155 Store Customization > Create a new endpoint within Store API for updating patterns with AI-generated content (https://github.com/woocommerce/woocommerce-blocks/pull/10881)
* Add the Jetpack Connection Package as a dependency for WooCommerce Blocks.

* Introduce the new Configuration Class for registering and enabling the Jetpack connection for sites and users.

* Introduce the Connection class for making requests to the GPT AI API.

* Update the get_jwt_token method.

* Update the error messages for the get_jwt_token method.

* Update the register_site method.

* Update the Configuration class structure and add Dependency Injection.

* Update structure for the Connection Class.

* Update the return type for the get_jwt_token method.

* Update method visibility for get_site_id

* Update the name and params for methods within the Connection Class

* Add tests for the Connecction class.

* Update the Constructor for the Configuration class.

* Add the Patterns class.

* Update the VerticalsSelector class.

* Update the constructor for PatternImages.

* Update the Store API Route for Patterns.

* Update the create_patterns_content method to ensure it returns the results of update_option.

* Add the new Patterns route to the RoutesController class.

* Update the route path and remove the business description validation as that is done via create_patterns_content

* Introduce the PatternsSchema

* Update the prompt, errors messages and output format for the Verticals Selector.

* Fix the missing file error for the Patterns Dictionary.

* Introduce the new get_patterns_dictionary method and update the create_patterns_content method to better handle errors.

* Update the returned response for the endpoint.

* Add the get_item_response method to the PatternsSchema class.

* Update response for when allow_ai_connection option is not set.

* Enable authentication for the endpoint.

* Modify and temporarily remove some failing tests for the AI API: a separate PR will be opened to clear those out later.
2023-09-15 15:44:15 +00:00
Thomas Roberts e2b8083883 Update `postcode-validator` to 3.8.15 to validate "new" Taiwanese postcodes (https://github.com/woocommerce/woocommerce-blocks/pull/10924) 2023-09-15 07:05:01 -07:00
Brian 6aa7796e13 Coupons: Add code snippet and screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10957) 2023-09-15 20:50:09 +07:00
Brian 4d435d3c96 Order Summary Items Adjustments (https://github.com/woocommerce/woocommerce-blocks/pull/10970) 2023-09-15 19:59:04 +07:00
Brian f82c860de0 Proceed to Checkout Button Link: Add code snippet and screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10954)
* Proceed to Checkout Button Link: Add code snippet and screenshot

* Update docs/third-party-developers/extensibility/checkout-block/available-filters.md

Co-authored-by: Niels Lange <niels.lange@a8c.com>

---------

Co-authored-by: Niels Lange <niels.lange@a8c.com>
2023-09-15 19:09:12 +07:00
Brian 9c3bb8159c Proceed to Checkout Button Label: Add code snippet and screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10955)
* Update available-filters.md

* Update available-filters.md

* Update available-filters.md
2023-09-15 18:11:11 +07:00
Manish Menaria 890c5dbcac Transfer layout options from Toolbar to Inspector controls (https://github.com/woocommerce/woocommerce-blocks/pull/10922)
In this update, the layout options for the Product Collection block are transferred from the Toolbar to the Inspector controls. Below is the breakdown of the changes:

1. **Constants Update**
    - `LayoutOptions` enumeration has been imported into `constants.ts`, facilitating a more structured approach to managing layout types (grid and stack).
    - The default display layout type has been updated from 'flex' to reference `LayoutOptions.GRID`.
    - The `getDefaultQuery` function now uses the `getDefaultValueOfInheritQueryFromTemplate` utility to set the default `inherit` value. (This is mainly done to fix a bug)

2. **Display Layout Control Removal**
    - The `display-layout-control.tsx` file has been removed, discontinuing the previous method of layout management.

3. **New Layout Options Control**
    - A new component `LayoutOptionsControl` has been introduced in the `layout-options-control.tsx` file, utilizing the experimental `ToggleGroupControl` and `ToggleGroupControlOption` components from the WordPress package to provide a more intuitive layout selection experience.
    - The `types.ts` file has been updated to define the `LayoutOptions` enum, effectively mapping 'flex' to 'GRID' and 'list' to 'STACK'.

4. **Inspector Controls Update**
    - In `inspector-controls/index.tsx`, the obsolete `DisplayLayoutControl` has been replaced with the new `LayoutOptionsControl`, integrating it into the `ProductCollectionInspectorControls` component.
    - The `BlockControls` wrapper has been removed, and layout options have been relocated to the Inspector controls, presented as a toggle group within the ToolsPanel.

5. **Inherit Query Control Modification**
    - The `inherit-query-control.tsx` file sees a change in the reset value for the `inherit` query attribute to employ a default value which fix one bug.

These changes aim to streamline the user experience by relocating the layout options from the Toolbar to the Inspector controls, offering a centralized location for block settings. Leveraging an enum for layout options fosters code readability and maintainability.

Do note that the update uses experimental components, hence it would be prudent to keep an eye on potential alterations or deprecations in upcoming WordPress releases.
2023-09-15 15:38:48 +05:30
Brian 2dc82412d5 Order Summary Items » subtotalPriceFormat: Add code snippet and screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10958)
* Order Summary Items » subtotalPriceFormat: Add code snippet and screenshot

* fix linterror
2023-09-15 16:45:24 +07:00
Luigi Teschio 11062e8600 Product Gallery Block: Add Product Gallery template to allow users to edit full mode view (https://github.com/woocommerce/woocommerce-blocks/pull/10823)
* Product Gallery: add support for On Sale Badge Block

* add align support

* Add E2E tests

* set margin via Block Styles

* disable experimental flag

* add next previous block

* restore support file

* fix TS error

* fix layout

* change product

* change product

* Product Gallert Block: Add zoom on hover

* set to true by default

* remove block is already registered error

* remove unecessary await

* Improve zoom logic

Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>

* Product Gallery Full view mode: Add the logic to render the dedicated template

* use template-part instead template

* add E2E tests

* update selectors

* add feature flag product gallery template part

* fix E2E tests

* remove not necessary file

---------

Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
2023-09-15 08:54:49 +00:00
Brian 0abe53d079 Allowing blocks in specific areas in the Cart and Checkout blocks: Add screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10953) 2023-09-15 15:37:20 +07:00
Karol Manijak 8643df713c Improve the testing notes to include information about Product Rating (https://github.com/woocommerce/woocommerce-blocks/pull/10944)
* Improve the testing notes to include information about Product Rating being plugin feature

* Improve the wording
2023-09-15 08:39:02 +02:00
Tung Du 71b8bee08e Revert "Fix: use correct bump strategy for Assign Milestone workflow (https://github.com/woocommerce/woocommerce-blocks/pull/10805) (https://github.com/woocommerce/woocommerce-blocks/pull/10962) 2023-09-15 13:20:16 +07:00
Karol Manijak 4418cb7d67 Hide unexpected bullet point in Product Collection on Storefront (https://github.com/woocommerce/woocommerce-blocks/pull/10945) 2023-09-15 08:07:54 +02:00
Brian 06b09e07f0 Show Apply Coupon Notice / Show Remove Coupon Notice: Add code snippet and screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10931)
* Show Remove Coupon Notice: Add code snippet and screenshot

* Show Apply Coupon Notice: Add code snippet and screenshot

* Update available-filters.md

Co-authored-by: Niels Lange <niels.lange@a8c.com>

---------

Co-authored-by: Niels Lange <niels.lange@a8c.com>
2023-09-15 04:40:12 +00:00
Niels Lange 0c74f96e8f Add custom regex for validating Nicaraguan postal codes (https://github.com/woocommerce/woocommerce-blocks/pull/10928) 2023-09-15 03:16:04 +00:00
Paulo Arromba 615d4455d8 Updated composer.lock (https://github.com/woocommerce/woocommerce-blocks/pull/10936) 2023-09-14 14:51:23 +01:00
Thomas Roberts a3a55383f8 Add readme file to extend-rest-api directory and move internal doc into internal folder (https://github.com/woocommerce/woocommerce-blocks/pull/10926)
Co-authored-by: Niels Lange <info@nielslange.de>
2023-09-14 05:47:35 -07:00
Karol Manijak 25c0b47721 Add pattern chooser in Product Collection (https://github.com/woocommerce/woocommerce-blocks/pull/10876)
* Enable Product Collection patterns in inserter and kick off the layout control button

* Add Choose Pattern button

* Move Toolbar settings to related directory

* Display Pattern Selection modal with available patterns after clicking the button

* Make Pattern Chooser always visible

Patterns can be changed no matter if the Inherit Query from Template option in enabled or not

* Add pattern replacement mechanism

* Switch from Gutenberg styles to internal ones
2023-09-14 14:19:16 +02:00
Brian 48aad27c61 fix woocommerce/woocommerce-blocks#10918 (https://github.com/woocommerce/woocommerce-blocks/pull/10930) 2023-09-14 05:49:09 +00:00
Roy Ho 3c0498e891 Add collection filters block (https://github.com/woocommerce/woocommerce-blocks/pull/10726)
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2023-09-14 11:13:33 +07:00
Brian 461aa1d5d3 Place Order Button Label: Add code snippet and screenshot (https://github.com/woocommerce/woocommerce-blocks/pull/10932)
* Place Order Button Label: Add code snippet and screenshot

* add before screenshot
2023-09-14 04:07:25 +00:00
Tom Cafferkey fd83e0a4cb BlockTemplatesController: Check that $attributes['theme'] value isset before operating on it (https://github.com/woocommerce/woocommerce-blocks/pull/10879) 2023-09-13 13:58:16 +01:00
Saad Tarhi c28319fc3c Update Woo Blocks version in trunk 2023-09-12 16:57:47 +01:00
Saad Tarhi 5418cd7535 Fix link in "readme.txt" 2023-09-12 16:45:19 +01:00
Saad Tarhi cc211cf662 Fix PR's links in readme.txt 2023-09-12 16:45:10 +01:00
Saad Tarhi 704aaf8273 Update testing steps 2023-09-12 16:44:51 +01:00
Saad Tarhi 82dfe3d331 Remove a test for an experimental feature 2023-09-12 16:44:31 +01:00
Saad Tarhi 880cf7a197 Add testing notes 2023-09-12 16:44:11 +01:00
Saad Tarhi 41772b674b Remove changelog of a closed PR 2023-09-12 16:43:51 +01:00
Saad Tarhi ddc3474355 Comment: Indicate min WP version for WooCommerce Core, not Blocks.
Woo Core supports WP L1, and we support L0. We added this comment
because it can be confusing since the info can only be found on the
release instructions
2023-09-12 16:43:29 +01:00
Saad Tarhi b66ceecf7f Update WP min version in PHPCS file
It should match the min WP version of WooCommerce Core
2023-09-12 16:43:06 +01:00
Saad Tarhi 1ef1c4d154 Add changelog to "readme.txt" 2023-09-12 16:42:22 +01:00
Saad Tarhi cd734831a7 Fix link in "readme.txt" 2023-09-12 16:36:06 +01:00
Saad Tarhi 03b4b71927 Fix PR's links in readme.txt 2023-09-12 15:24:29 +01:00
Saad Tarhi ae9e2e5e64 Update testing steps 2023-09-12 14:50:27 +01:00
Saad Tarhi 1ce980b512 Remove a test for an experimental feature 2023-09-12 14:38:00 +01:00
Patricia Hillebrandt deb71f97fa Store Customization > Implement Client for requests to the GPT API (https://github.com/woocommerce/woocommerce-blocks/pull/10846)
* Add the Jetpack Connection Package as a dependency for WooCommerce Blocks.

* Introduce the new Configuration Class for registering and enabling the Jetpack connection for sites and users.

* Introduce the Connection class for making requests to the GPT AI API.

* Update the get_jwt_token method.

* Update the error messages for the get_jwt_token method.

* Update the register_site method.

* Update the Configuration class structure and add Dependency Injection.

* Update structure for the Connection Class.

* Update the return type for the get_jwt_token method.

* Update method visibility for get_site_id

* Update the name and params for methods within the Connection Class

* Add tests for the Connecction class.

* Update the Constructor for the Configuration class.
2023-09-12 08:41:43 +00:00
Daniel Dudzic 9db927de30 Product Gallery Thumbnails: Interactivity API directives (https://github.com/woocommerce/woocommerce-blocks/pull/10776)
* Fix "On sale" badge class for shop

* Add class to sale badge

* Move the thumbnails featching logic to an utils file. Add context directive with thumbnails data to the Product Gallery block. Add on-click directives to the Thumbnails block

* Product Gallery Thumbnails: Remove the legacy thumbnail markup

* Product Gallery Thumbnails: Add Large Image replacing

* update the main image when the thumbnail is clicked

* add E2E tests

* fix typo

* fix warning on the frontend

* address feedback

* update E2E test

* improve comment

* fix indentation

* improve E2E test

* improve flaky test

* improve E2E test

* improve comments

* improve E2E test

* try now

* add comment

* skip test

* reset script

* update todo comment

---------

Co-authored-by: Alba Rincón <alba.rincon@automattic.com>
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
Co-authored-by: Luigi <gigitux@gmail.com>
2023-09-12 09:36:44 +02:00
dependabot[bot] 468a0d0da6 Bump @types/wordpress__editor from 11.0.0 to 13.6.3 (https://github.com/woocommerce/woocommerce-blocks/pull/10884)
Bumps [@types/wordpress__editor](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/wordpress__editor) from 11.0.0 to 13.6.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/wordpress__editor)

---
updated-dependencies:
- dependency-name: "@types/wordpress__editor"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-11 17:13:59 +00:00
Saad Tarhi 4f791acb5b Add testing notes 2023-09-11 16:44:13 +01:00
Alba Rincón 2d5d336aad [Store Customization] Make request to the Verticals API to fetch matching images and classify them (https://github.com/woocommerce/woocommerce-blocks/pull/10789)
* Add the Verticals API client

* Add tests

* Refactor error handling

* Create first version of the prompt class

* Improve Vertical selector and add tests

* Remove testing code

* Update class comment

* Add PatternImages class

* Pass the dictionary as param

* Add tests

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-09-11 15:39:15 +00:00
Alba Rincón 9d803a287a [Store Customization] Create a service to get the selected vertical from the business description and the verticals (https://github.com/woocommerce/woocommerce-blocks/pull/10778)
* Add the Verticals API client

* Add tests

* Refactor error handling

* Create first version of the prompt class

* Improve Vertical selector and add tests

* Remove testing code

* Update class comment

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-09-11 15:24:43 +00:00
Saad Tarhi bf6e7d2428 Remove changelog of a closed PR 2023-09-11 16:15:49 +01:00
Saad Tarhi 5cc15e182f Comment: Indicate min WP version for WooCommerce Core, not Blocks.
Woo Core supports WP L1, and we support L0. We added this comment
because it can be confusing since the info can only be found on the
release instructions
2023-09-11 16:13:41 +01:00
Saad Tarhi f7dad7ae98 Update WP min version in PHPCS file
It should match the min WP version of WooCommerce Core
2023-09-11 15:14:46 +01:00
Saad Tarhi ac49526ad6 Execute "npm run change-versions" 2023-09-11 15:01:49 +01:00
Saad Tarhi 2b7cba5716 Add changelog to "readme.txt" 2023-09-11 14:54:13 +01:00
Daniel Dudzic 75bba1d55d Product Gallery: Lock the Sale Badge and the Next/Prev Buttons (https://github.com/woocommerce/woocommerce-blocks/pull/10869)
* Fix "On sale" badge class for shop
* Add class to sale badge
* Apply styleProps.styles to elements using them
* Product Gallery: Lock the Sale Badge and the Next/Prev Buttons
2023-09-11 11:37:27 +00:00
Tung Du 48650a8655 PHPCS: Update PHP and WP versions to match with current requirements (https://github.com/woocommerce/woocommerce-blocks/pull/10864) 2023-09-11 17:37:22 +07:00
Karol Manijak 7948c52b16 Change default number of columns in Related Products (https://github.com/woocommerce/woocommerce-blocks/pull/10875)
* Change default number of columns in Related Products

* Add default attributes to Product Template in Single Product template

* Revert adding attributes
2023-09-10 10:26:56 +02:00
dependabot[bot] 3be5d3d74d Bump @wordpress/e2e-test-utils from 10.1.0 to 10.12.0 (https://github.com/woocommerce/woocommerce-blocks/pull/10803)
Bumps [@wordpress/e2e-test-utils](https://github.com/WordPress/gutenberg/tree/HEAD/packages/e2e-test-utils) from 10.1.0 to 10.12.0.
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/e2e-test-utils/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/e2e-test-utils@10.12.0/packages/e2e-test-utils)

---
updated-dependencies:
- dependency-name: "@wordpress/e2e-test-utils"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
2023-09-08 17:34:19 -03:00
Luigi Teschio 3c7b47b7d1 Product Gallery: fix warning (https://github.com/woocommerce/woocommerce-blocks/pull/10839)
* Product Gallery: fix warning

* address feedback

* fix logic

* rename function
2023-09-08 16:06:48 +02:00
Tung Du 0cfea936e4 Fix: load blocks style separately for classic themes (https://github.com/woocommerce/woocommerce-blocks/pull/10758)
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2023-09-08 11:15:48 +07:00
Karol Manijak e6bd74fd3c Fix JS Lint issues (https://github.com/woocommerce/woocommerce-blocks/pull/10866) 2023-09-07 12:01:15 +02:00
Karol Manijak 7f2e5368ad Add Product Collection Rows pattern (https://github.com/woocommerce/woocommerce-blocks/pull/10857) 2023-09-07 10:24:36 +02:00
Tom Cafferkey 145fdf5e9b Product Image: Fix bug that prevented block styles being applied within the editor. (https://github.com/woocommerce/woocommerce-blocks/pull/10859) 2023-09-07 09:08:31 +01:00
Karol Manijak a2490ddfda Add Simple Grid Product Collection pattern (https://github.com/woocommerce/woocommerce-blocks/pull/10835)
* Add Simple Grid Product Collection pattern

* Move the sale badge to the lewft
2023-09-07 09:01:29 +02:00
Luigi Teschio 43c56e5383 Product Gallery Block: Add zoom on hovering on the frontend (https://github.com/woocommerce/woocommerce-blocks/pull/10791)
* Product Gallery: add support for On Sale Badge Block

* add align support

* Add E2E tests

* set margin via Block Styles

* disable experimental flag

* add next previous block

* restore support file

* fix TS error

* fix layout

* change product

* change product

* Product Gallert Block: Add zoom on hover

* set to true by default

* remove block is already registered error

* remove unecessary await

* Improve zoom logic

Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>

* Product Gallery Block: Add E2E tests for zoom while hovering setting (https://github.com/woocommerce/woocommerce-blocks/pull/10795)

---------

Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
2023-09-05 15:22:17 +02:00
Karol Manijak d9e17accf1 Fix the artifacts path for classic theme (https://github.com/woocommerce/woocommerce-blocks/pull/10837) 2023-09-05 15:03:56 +02:00
Alexandre Lara 2ebe7bd0c9 Product Gallery > Pager block: Fix block alignment (https://github.com/woocommerce/woocommerce-blocks/pull/10782)
* Fix block alignment with Large Image block

* Prevent error when layout is not present in the attributes object

* Add Large Image and Pager to its own group

* Fix issue when moving around the thumbnails block

* Fix e2e tests for Product Gallery block

* Change ancestor block for the Pager block
2023-09-05 09:52:19 -03:00
Luis Herranz 3a30f22dfa Product button: sync temporary number of items on instantiation (https://github.com/woocommerce/woocommerce-blocks/pull/10604)
* Add data-wc-key

* Add layout-init to sync temporary value

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2023-09-05 14:37:38 +02:00
Patricia Hillebrandt 7458ac54b0 Product Hero Pattern > Adjust the content width (https://github.com/woocommerce/woocommerce-blocks/pull/10832)
* Minor width adjustment for the Product Hero pattern.

* close div on a new line
2023-09-05 10:20:57 +00:00
Sam Seay fceff58059 Retry link retrieval on 429, fix the version of markdown-link-check (https://github.com/woocommerce/woocommerce-blocks/pull/10786) 2023-09-05 11:19:12 +07:00
Sam Seay abd41cae11 Fixes for jest transpilation issues. (https://github.com/woocommerce/woocommerce-blocks/pull/10788)
* Fix bug where is-plain-obj is not transpiled by Jest, update lock.
* Update packages.
* Mock useSelect for a handful of RichText selectors in test.
* Resolve react to single version to avoid invalid hook errors.
* Patch trim-html locally to avoid a bug in the released npm source.
* Mock out resizeObserver to avoid https://github.com/FezVrasta/react-resize-aware/issues/58
* Don't transpile config package: https://github.com/node-config/node-config/issues/628
2023-09-05 04:03:35 +00:00
dependabot[bot] 064b4c21ce Bump @wordpress/deprecated from 3.16.0 to 3.41.0 (https://github.com/woocommerce/woocommerce-blocks/pull/10830)
Bumps [@wordpress/deprecated](https://github.com/WordPress/gutenberg/tree/HEAD/packages/deprecated) from 3.16.0 to 3.41.0.
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/deprecated/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/deprecated@3.41.0/packages/deprecated)

---
updated-dependencies:
- dependency-name: "@wordpress/deprecated"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
2023-09-04 16:53:04 -03:00
dependabot[bot] f72fe33e6d Bump mockery/mockery from 1.6.5 to 1.6.6 (https://github.com/woocommerce/woocommerce-blocks/pull/10591)
Bumps [mockery/mockery](https://github.com/mockery/mockery) from 1.6.5 to 1.6.6.
- [Release notes](https://github.com/mockery/mockery/releases)
- [Changelog](https://github.com/mockery/mockery/blob/1.6.x/CHANGELOG.md)
- [Commits](https://github.com/mockery/mockery/compare/1.6.5...1.6.6)

---
updated-dependencies:
- dependency-name: mockery/mockery
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
2023-09-04 15:23:36 -03:00
Tom Cafferkey 664f2e88bc Update release checklist for WC Core version bump. (https://github.com/woocommerce/woocommerce-blocks/pull/10829) 2023-09-04 14:38:34 +01:00
Thomas Roberts 4ad6cdb18d Ensure WooCommerce Core scripts are dequeued correctly (https://github.com/woocommerce/woocommerce-blocks/pull/10624) 2023-09-04 02:48:06 -07:00
Patricia Hillebrandt d751c3a469 Bump dev version to 11.1.0-dev 2023-09-04 11:17:06 +02:00
Lucio Giannotta 578ba4725e Fix customer account icon not scaling in certain environments (https://github.com/woocommerce/woocommerce-blocks/pull/10533)
Customer Account block icon size is based on the parent `font-size`
in order to make sure they stay harmoniously together.
However, the `box-sizing` could be set by some other actor
and mess with the size of the icon.
2023-09-02 16:07:01 +02:00
Alexandre Lara bda42f936c Product Gallery > Prevent error when "layout" is missing in block attributes (https://github.com/woocommerce/woocommerce-blocks/pull/10784) 2023-09-01 19:41:41 -03:00
Luigi Teschio 3e581e0372 bump @wordpress/env to 8.2.0 (https://github.com/woocommerce/woocommerce-blocks/pull/10808) 2023-09-01 17:54:35 +02:00
Tung Du 27e2d818cd Fix: use correct bump strategy for Assign Milestone workflow (https://github.com/woocommerce/woocommerce-blocks/pull/10805) 2023-09-01 17:31:34 +07:00
Karol Manijak ac7e115c3e Update @wordpress/env to 8.1.1 and re-enable PHP Unit Tests for PHP v 8.1 and 8.2 (https://github.com/woocommerce/woocommerce-blocks/pull/9875)
Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: Alba Rincón <alba.rincon@automattic.com>
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2023-09-01 16:07:55 +07:00
Daniel W. Robert 70aa569254 Update lockfile for fresh installation. (https://github.com/woocommerce/woocommerce-blocks/pull/10785) 2023-08-31 17:56:08 -04:00
Daniel W. Robert 59f468f5ba Adjust `Follow us on social media` pattern icon alignment (https://github.com/woocommerce/woocommerce-blocks/pull/10709)
* Adjust column width and icon alignment.

Set new col width to `75%` / `25%` and set the icon flex-alignment
to `space-between`.

While this is not ideal, without any fine-grained control over
breakpoints, this seems to be marginally better than having the icons
remain right-aligned on mobile.

* Correct grammar for pattern title and heading.

Should be "on" not "in".
2023-08-31 16:55:38 -04:00
Luigi Teschio 22b9f6a952 Product Gallery Block: add support for the on Sale Badge block (https://github.com/woocommerce/woocommerce-blocks/pull/10764)
* Product Gallery: add support for On Sale Badge Block

* add align support

* Add E2E tests

* set margin via Block Styles

* disable experimental flag

* add next previous block

* restore support file

* fix TS error

* fix layout

* change product
2023-08-31 18:15:31 +02:00
Alexandre Lara e9ff849e08 Add woocommerce namespace to Product Gallery block (https://github.com/woocommerce/woocommerce-blocks/pull/10769) 2023-08-31 12:13:40 -03:00
Patricia Hillebrandt 0488824275 Update the testing instructions for woocommerce/woocommerce-blocks#10619 2023-08-30 17:27:51 +02:00
Patricia Hillebrandt e491c07e1b Update the changelog, testing steps and required versions after 11.0.0 release 2023-08-30 13:00:35 +02:00
Alex Florisca d632ffdfae Fix bug with wpautop for the empty cart (https://github.com/woocommerce/woocommerce-blocks/pull/10768) 2023-08-30 10:41:34 +01:00
Sam Seay 44f48e41e9 Refactor errors util to TypeScript, minor typing fixes (https://github.com/woocommerce/woocommerce-blocks/pull/10754) 2023-08-30 18:56:28 +12:00
Luigi Teschio 2d89f4892d add side_effects suffix to the Product Gallery Large Image Next Previous Block (https://github.com/woocommerce/woocommerce-blocks/pull/10766) 2023-08-29 16:19:20 +02:00
Patricia Hillebrandt 37b8a84f85 Add team members to the WordPress.org Contributors & Developers list for WooCommerce Blocks (https://github.com/woocommerce/woocommerce-blocks/pull/10746)
* Add the team to the list of contributors on .org's plugin directory.

* Add a few more teammates.
2023-08-29 12:43:19 +00:00
Paulo Arromba 4ab7828367 Fix/Template endpoint update for subpages (https://github.com/woocommerce/woocommerce-blocks/pull/10745)
* Updates endpoint logic for cart and checkout templates to match Wordpress URL guessing

* Revert wrongly committed file

* Revert wrongly committed file

* typo

* updated @since property
2023-08-29 11:05:14 +01:00
Alba Rincón 035d8249ab [Store Customization MVP] Verticals API client (https://github.com/woocommerce/woocommerce-blocks/pull/10687)
* Add the Verticals API client

* Add tests

* Refactor error handling
2023-08-29 10:13:25 +02:00
Lucio Giannotta 5c4a757b6e Convert `product-control` to TypeScript (https://github.com/woocommerce/woocommerce-blocks/pull/10552)
The main aim of this PR was to convert the product-control component to TypeScript. However, since the component is coupled with many other parts (it is itself wrapped into 4 HOCs), many refactoring changes were needed to make the types work.

In particular:

* Add `convertProductResponseItemToSearchItem` utility function

The function allows to clean up the `ProductResponseItem` in order
to make its shape compatible with the `SearchListItem`, instead of
passing the entire object.

Because data from the object might need to be used in certain
circumstance (e.g. render functions), the data is now allowed to be
scoped within a `details` key.

This commit also converts `utils/products` to TypeScript.

* Fix `ProductResponseItem` type missing `slug`

The `slug` is returned by the API but didn't appear in the type def.

* Improve certain HOCs types

The `withSearchedProducts` and `withTransformSingleSelectToMultipleSelect`
HOCs are now typed in such a way that it is clear what incoming props
they expect and what they inject.

* Refactor `ProductAttrributeTermControl` for further type safety

Make sure that `count` is always a `number` as required by the
component types.

* Refactor `search-list-control.tsx` and `item.tsx`

The new `SearchItem` allows for the `details` key to be passed.
All the components are now aware of it.
2023-08-29 08:01:31 +02:00
Lucio Giannotta a898a5b5ee Fix inconsistent padding in Customer Account block (https://github.com/woocommerce/woocommerce-blocks/pull/10476) 2023-08-29 07:32:48 +02:00
Tung Du a92b8a432f E2E: ensure the shop page is created by creating it manually (https://github.com/woocommerce/woocommerce-blocks/pull/10744) 2023-08-29 08:00:29 +07:00
Luigi Teschio c126731347 Product Gallery Block: Next/Previous block (https://github.com/woocommerce/woocommerce-blocks/pull/10235)
* Add Product Gallery Next Previous block

* update description

* update registration

* improve style

* use context instead of attributes

* add eslint and ts lint exception

* improve CSS

* E2E Next Previous block (https://github.com/woocommerce/woocommerce-blocks/pull/10329)

* Add E2E tests

* fix e2e tests path after rebase

* add screenshots

* improve E2E test

* improve E2E test

* improve E2E test

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>

* fix webpack conf

* Next Previous Button block - Add layout support (https://github.com/woocommerce/woocommerce-blocks/pull/10668)

* Add layout support

* Product Gallery Next Previous: Fix block crashing in the editor when vertical alignment has not been customized yet

* Product Gallery Next Previous: Position fixes for the Next/Previous button both in the editor and frontend

* add E2E test

* fix import

---------

Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>

* Next Previous Buttons: hide buttons when the product has only one image (https://github.com/woocommerce/woocommerce-blocks/pull/10743)

* Next Previous Buttons: hide buttons when the product has only one image

* update URL

* fix import

* set default value

* fix E2E test

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
2023-08-28 18:32:45 +02:00
Alex Florisca 24ddcb270e Update integration-interface.md
Minor changes to wording, where "both" was used to refer to 3 things
2023-08-28 15:43:27 +01:00
Paulo Arromba fb5ee53579 Display notices on cart/checkout FSE templates (https://github.com/woocommerce/woocommerce-blocks/pull/10151)
* Display notices on cart/checkout FSE templates

* revert space removal
2023-08-28 11:31:09 +01:00
Karol Manijak 31e9854316 Add Product Collection Full Grid pattern (https://github.com/woocommerce/woocommerce-blocks/pull/10665)
* Add initial look of Full Grid Product Collection pattern

* Refactor textAlign property of Product Button so it uses flex rather than text-align

* Update Product Button text align after the fix

* Remove debug log (https://github.com/woocommerce/woocommerce-blocks/pull/10719)

* Add Product Collection Grid pattern (https://github.com/woocommerce/woocommerce-blocks/pull/10660)

* Dispatch the `wc-blocks_render_blocks_frontend` event when rendering the empty cart block (https://github.com/woocommerce/woocommerce-blocks/pull/10619)

* E2E: Refactor Mini Cart to be ready for fully parallel (https://github.com/woocommerce/woocommerce-blocks/pull/10704)

* Revert dequeue add-to-cart-variation script which is needed to properly handle variable products in single product page (https://github.com/woocommerce/woocommerce-blocks/pull/10723)

* Update alignment options to new setting

---------

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2023-08-28 15:58:17 +05:30
Thomas Roberts 55f65cdf17 Move cart widget tests to playwright and ensure classic/block theme configs are executed correctly (https://github.com/woocommerce/woocommerce-blocks/pull/10669) 2023-08-28 03:04:28 -07:00
Alexandre Lara c718a056b8 Product Gallery block: Add support to Interactivity API (https://github.com/woocommerce/woocommerce-blocks/pull/10716)
* Add support to Interactivity API

* Fix php cs errors

* Rename numberOfThumbnailImages to numberOfThumbnails

* Use frontend.tsx with InteractivityAPI

* Replace viewScript in block.json
2023-08-25 15:42:31 -03:00
Karol Manijak dad3a41caa Fix UI misalignment of Filter by Price in TT1 theme (https://github.com/woocommerce/woocommerce-blocks/pull/10732)
* Fix UI misalignment of Filter by Price in TT1 theme

* Fix frontend Firefox styles

* Simplify the styles and fix them in Editor (Firefox/Safari)

* Align the background color and sizing in Firefox
2023-08-25 16:26:18 +02:00
Karol Manijak 95fb51be4d Enable Product Collection as a core feature (https://github.com/woocommerce/woocommerce-blocks/pull/10524)
* Enable Product Collection as a core feature

* Fix: disable product query title and summary variations from inserter in favour of Product Collection ones (https://github.com/woocommerce/woocommerce-blocks/pull/10548)

* Limit the scope of Product Query's Product Title and Product Summary

* Add missing piece after refactoring

* Enable manual migration of Products to Product Collection (https://github.com/woocommerce/woocommerce-blocks/pull/10655)

* Refactor block variation registration in product-collection (https://github.com/woocommerce/woocommerce-blocks/pull/10701)

This commit refactors the product-collection block's variation registration.

Changes:
- The `product-summary` and `product-title` variations have been encapsulated within their own respective functions: `registerProductSummaryVariation` and `registerProductTitleVariation`.
- Imported and invoked these new functions in the main `index.tsx` of the product-collection block, ensuring the variations are registered.

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2023-08-25 15:58:11 +02:00
Alexandre Lara 9936e4bb7a Update 1093 2023-08-24 19:16:22 -03:00
Alexandre Lara faa1f40a14 Update 1093.md 2023-08-24 19:15:32 -03:00
Alexandre Lara 28121715fd Add the testing notes for 10.9.3 2023-08-24 19:15:04 -03:00
Alexandre Lara e412dbf8e5 Add changelog to readme.txt 2023-08-24 19:14:57 -03:00
Karol Manijak 66d6154bff Revert dequeue add-to-cart-variation script which is needed to properly handle variable products in single product page (https://github.com/woocommerce/woocommerce-blocks/pull/10723) 2023-08-24 14:17:37 -03:00
Tung Du 69d5f47048 E2E: Refactor Mini Cart to be ready for fully parallel (https://github.com/woocommerce/woocommerce-blocks/pull/10704) 2023-08-24 20:33:20 +07:00
Thomas Roberts 542a04d282 Dispatch the `wc-blocks_render_blocks_frontend` event when rendering the empty cart block (https://github.com/woocommerce/woocommerce-blocks/pull/10619) 2023-08-24 01:37:14 -07:00
Karol Manijak eba1a5a19c Add Product Collection Grid pattern (https://github.com/woocommerce/woocommerce-blocks/pull/10660) 2023-08-24 09:59:08 +02:00
Karol Manijak de625c7f48 Remove debug log (https://github.com/woocommerce/woocommerce-blocks/pull/10719) 2023-08-24 09:29:50 +02:00
Sam Seay a753a0f1d2 Add a generic arg to useCollection to improve typing of results. (https://github.com/woocommerce/woocommerce-blocks/pull/10696)
Closes woocommerce/woocommerce-blocks#5726
2023-08-24 04:49:41 +00:00
Tung Du e20c605408 E2E: Ensure the Shop page is created (https://github.com/woocommerce/woocommerce-blocks/pull/10695) 2023-08-24 08:09:59 +07:00
Alexandre Lara 705de55bb6 Update composer.lock and package-lock.json files (https://github.com/woocommerce/woocommerce-blocks/pull/10710) 2023-08-23 20:38:02 -03:00
Sam Seay 1dd1cfadf4 Use GITHUB_TOKEN as the env variable for the changelog script (https://github.com/woocommerce/woocommerce-blocks/pull/10697) 2023-08-24 01:30:35 +12:00
Alex Florisca 69bcc49585 Fix nightly builds (https://github.com/woocommerce/woocommerce-blocks/pull/10689)
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
2023-08-23 11:39:37 +00:00