Commit Graph

6234 Commits

Author SHA1 Message Date
Mike Jolley a8dd298d52 Update params for woocommerce_before_thankyou to mirror core hook (https://github.com/woocommerce/woocommerce-blocks/pull/11862) 2023-11-21 14:45:33 +00:00
Seghir Nadir f113a14b89 Validate coupon usage against customer id AND emails (https://github.com/woocommerce/woocommerce-blocks/pull/11860)
* validate coupon usage against user and email

* add checks for logged out user

* change to direct array call

* fix the query

* fix the query

* fix arrays

* fixe how id is fetched

* Make function private

* use implode instead of join

* coupon shouldnt be a pointer

* move ignore statement

* add comment about tentative usage

* Update src/StoreApi/Utilities/OrderController.php

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

* better validation for user data

* remove unused variable

* bail early if we dont have limits

* add empty line after function

---------

Co-authored-by: Mike Jolley <mike.jolley@me.com>
2023-11-21 14:33:40 +00:00
Niels Lange a0592778b6 Update notice for default cart and checkout (https://github.com/woocommerce/woocommerce-blocks/pull/11861)
* Update notice for default cart and checkout

* Show full translatable string
2023-11-21 21:23:13 +07:00
Mike Jolley 51d3f9ca13 Add an example of woocommerce_store_api_add_to_cart_data (https://github.com/woocommerce/woocommerce-blocks/pull/11837) 2023-11-21 12:58:42 +00:00
Thomas Roberts 409988881b Move `CheckboxControl` to components package and leave alias in checkout package (https://github.com/woocommerce/woocommerce-blocks/pull/11662) 2023-11-21 10:55:42 +00:00
David Arenas 9e9f0341e2 Interactivity API: implement the new `store()` API (https://github.com/woocommerce/woocommerce-blocks/pull/11071)
* Sync Interactivity API code with Gutenberg

* New store() API

* Store raw actions

* Update wc-interactivity-store implementation

* Replace `wc_store` with `wc_initial_state`

* Parse and populate initial state

* Allow store parts in `store()`

* Accept namespaces in directive paths

* Add $$namespace to directives' object values

* Make namespace parsing more robust

* Use DeepPartial type for store parts

* Do not pass `rawStore` to `afterLoad` callbacks

* Simplify `store()` a bit

* Implement `privateStore()`

* Sync context directive with Gutenberg

* Refactor scope and extract getters per scope

* Add namespace to getters and actions

* Remove current privateStore implementation

* Remove `afterLoad` option from `store`

* Use same proxy handlers for ns, getters and actions

* Set scope inside `evaluate`

* Refactor proxy handlers

* Improve types a bit

* Catch errors in async actions

* Implement stacks for scopes and namespaces

* Implement `getElement`

* Change directives object structure

* Remove unnecessary import

* Implement private stores

* Return value from sync actions

* Minor optimizations and improved comments

* Don't use async inside `data-wp-watch`

* Use a single Provider in context directive

* Remove DeepPartial type

* Do not check if element exists

* Add the `current` prop of state inside the scope

* Move getters outside scope

* Fix wc-key assignment

* Fix missing `navigate` in directives

* Fix namespace not being picked in the same element

* Deep merge raw stores instead of proxied ones

* Fix namespace assignment

* Allow forward slashes in namespaces

* Migration of Product Collection and Product Button blocks to the new `store()` API (https://github.com/woocommerce/woocommerce-blocks/pull/11558)

* Refactor Product Button with new store() API

* Use `wc_initial_state` in Product Button

* Fix namespace

* Remove unnecessary state

* Test namespaces in directive paths

* Add test context with namespace

* Simplify woo-test context

* Move addToCart and animations to a file

* Do not pass `rawStore` to `afterLoad` callbacks

* Move callbacks and actions back to the main file

Because the animation was broken.

* Remove selectors in favor of state

* Use default ns in `getContext` for state and actions

* Remove `afterLoad` callback

* Remove unnecessary ns

* Fix getContext in add-to-cart

* Replace namespace and delete unnecessary store

* Pass context types only once

* Use an alternative for requestIdleCallback

* Add previous react code for notices

* Add namespace to Product Collection block

* Replace getTextButton with getButtonText

* Add block name to the ProductCollection namespace

* fix style HTML code

* Remove circular deps error on the Interactivity API

* Product Gallery block: Migrate to new Interactivity API store (https://github.com/woocommerce/woocommerce-blocks/pull/11721)

* Migrate Product Gallery block to new Interactivity API store

* Fix some references

* Add missing data-wc-interactive

* Fix an additional namespace

* Remove unnecessary click handler

* Dialog working

* Refactor action names

* Reindex PHP array

There was some missing indexes, which turned the array into an object in JS.

* Remove unused event handlers

* Move next/previous logic to external function

* Move StorePart util to the types folder

* Rename namespace to `woocommerce/product-gallery`

* Undo product collection namespace renaming

* Remove unnecessary namespace

* Don't hide the large image on page load

* Minor refactorings

* Fix eslint error

* Fix php cs errors with spacing and double arrows alignment

* Disable no-use-before-define rule for eslint

* Disable @typescript-eslint/ban-types rule for eslint

* Fix parsed context error in e2e tests

* Fix context parser for Thumbnail image

* Move store to the top of the frontend file

* Add interactivity api utils to the @woocommerce/utils alias

* Replace deprecated event attribute

---------

Co-authored-by: Luis Herranz <luisherranz@gmail.com>
Co-authored-by: David Arenas <david.arenas@automattic.com>
Co-authored-by: roykho <roykho77@gmail.com>

---------

Co-authored-by: David Arenas <david.arenas@automattic.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
Co-authored-by: roykho <roykho77@gmail.com>

* Fix error when closing product gallery dialog with keyboard escape key

* use wc_initial_state instead of wc_store

---------

Co-authored-by: Luis Herranz <luisherranz@gmail.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
Co-authored-by: roykho <roykho77@gmail.com>
2023-11-21 11:46:15 +01:00
Mike Jolley 3a49ae4dd3 Add tests for company address field (https://github.com/woocommerce/woocommerce-blocks/pull/11807)
* Company field tests

* Click page body before unchecking box
2023-11-21 10:04:51 +00:00
Luigi Teschio 86ab0ab3b1 Product Button: enqueue always the store (https://github.com/woocommerce/woocommerce-blocks/pull/11858) 2023-11-21 10:26:16 +01:00
Tung Du 3b31aa715c add: default template for Collection Filters block (https://github.com/woocommerce/woocommerce-blocks/pull/11805) 2023-11-21 16:25:43 +07:00
Daniel Dudzic eaa9e74a58 Run E2E test suite on Twenty-Twenty Four (https://github.com/woocommerce/woocommerce-blocks/pull/11466)
* Run E2E test suite on Twenty Twenty-Four

* Update TT4 download URL to the stable one

---------

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2023-11-21 09:11:19 +00:00
Manish Menaria 0444407d70 Fix: 404 error for No results block CSS file (https://github.com/woocommerce/woocommerce-blocks/pull/11854)
This commit introduces the `get_block_type_style` method in the `ProductCollectionNoResults` class. This new method is designed to manage frontend style handling specifically for this block type. Currently, it returns null, indicating no specific styles are assigned at this stage.
2023-11-21 12:53:26 +05:30
Tung Du 182e821539 MVP: Attribute filter block powered interactivity API (https://github.com/woocommerce/woocommerce-blocks/pull/11749)
* Update Interactivity API JS files

* Disable TS checks in the Interactivity API for now

* Add new SSR files

* Replace wp_ prefixes with wc_ ones

* Replace wp- prefix with wc-

* Replace guternberg_ prefix with woocommerce_

* Remove file comments from Gutenberg

* Rename files with `wp` prefix

* Fix code to load Interactivity API php files

* Remove TODO comments

* Replace @wordpress with @woocommerce

* Update Webpack configuration

* Fix directive prefix

* Remove interactivity folder from tsconfig exclude

* Add client-side navigation meta tag code

* Remove unneeded blocks.php file

* Fix store tag id

* Register Interactivity API runtime script

* Fix Interactivity API runtime registering

* Add Simple Price Filter block

* Remove all files related to directive processing in PHP

* Use values directly for SimplePriceFilter SSR

* Reset pages to 0 when changing filter

Note: we also need to do this with `/page/x`

* wip

* phpcs

* register price filter as inner block

* try: render block using save

* add types

* use min range var instead of 0

* inject dynamic data

* query price data in editor

* better injecting interactivity data

* remove rounding

* Product Collection Data endpoint doesn't care about current query so we remove the context for now

* extract data injecting as a method, possbily a trait in the future

* add sidebar setting

* duplicating the markup in php render callback for safety

* remove directive from edit component

* show prices without decimal

* use final class

* use sample collection data response

* prepare for multiple styles support

* use collection data from context

* cleanup props and props passing

* pass only necessary states

* retire heredoc in favor of late escaping

* reorganize style

* inherit style from current price filter react component, pre extract the component for multiple display style support

* keep minPrice smaller than max

* remove unnecessary active handler logic

* update folder structure

* avoid whitespace change

* clean up

* title

* move inspector to component folder, ready to be extracted to inner block

* block icon

* block name

* name

* use inner block for view

* inner block view switcher

* try: process data in Collection Filtes block only

* wip: query collection data from collection filters block only

* provide all context from collection filters block

* simplify context passing

* feat: use default attribute to define filter type of view block

* rename

* remove price block

* rename price slider to price, default price filter should be a slider

* type cleanup

* fix ancestor block name

* only passing the collection data down

* wip

* recusive

* editor preview

* refactor: data fetching, context passing, and code organization

* initial attribute filter block

* feat: attribute selector

* inspector control

* wip

* break the edit into smaller components

* wip: editor component

* extract checkbox list

* wip editor preview

* show count checkbox list

* fix param aggregation for attribute filter blocks

* post merge fix

* fix param aggregation for attribute filters

* fix: set correct selected attribute

* WIP checkbox list

* WIP checkbox list

* avoid action name conflicts

* Checkbox list front end

* phpcs

* update context on input, navigate on change

* fix: attribute selection

* dropdown

* remove isDeepEqual

* add: warning when attribute has no products or no attribute is selected

* update type

* update type

---------

Co-authored-by: David Arenas <david.arenas@automattic.com>
Co-authored-by: Luis Herranz <luisherranz@gmail.com>
2023-11-21 14:22:20 +07:00
Tung Du 73d89b77a7 Fix: Product Collection show products with correct stock statuses (https://github.com/woocommerce/woocommerce-blocks/pull/11708)
* update the get visibility query method

* fix the condition

* remove unnecessary test
2023-11-21 11:29:24 +07:00
Patricia Hillebrandt 9b99154d72 Customize your Store > Implement retry mechanism, enhance prompts and fix issue with AI content not being generated for new products (https://github.com/woocommerce/woocommerce-blocks/pull/11759)
* Fine-tune the prompts for generating product titles.

* Update the prompt for images.

* Update the prompts for generating content for patterns.

* Break down the pattern content generation into individual methods.

* Add character limit to prompts.

* Add character limit for a handful of titles.

* Add character limit to the title of the product-collection-4-columns pattern.

* Update the prompt to not add abbreviations

* Introduce the refine_returned_images_results method for AI to filter the images returned by Pexels

* Implement retry if the number of images returned by Pexels API is smaller than the number of images required by products and patterns.

* Update the prompt for the images search term.

* Fix AI image assignment for newly created products and improve performance.

* Ensure no additional dummy products are created or updated in simultaneous requests.

* Fix error on generating content for patterns for the first time and saving it to the post.

* Return error if the connection with AI failed.

* Update the prompt character limit for the Featured Category Triple pattern.

* Implement retry if the API connection with AI fails. Update the prompt to remove the length instruction. Add the last_business_description check to prevent duplicated API calls. Set a transient for images in case the request fails.

* Add retry for returning the refined search results. Update the prompt for defining the search term. Update error validation.

* Update the structure for fetching patterns content and reduce the number of requests.

* Break down the pattern ai content generation and assignment into multiple methods and introduce retry in case of failure.

* Update the structure for applying the AI generated content to patterns. Update the fetch and validation of ai responses and update the prompt to ensure longer texts are returned.

* Update the validation of the content returned by AI by verifying the array keys and ensuring the values are not empty. Additionally, the completion should be set.

* If for some reason AI didn't return the complete list of expected generated content, use the same the previous text from the same pattern as a replacement and avoid making an extra request to fetch just fetch a possible missing result.

* Update prompts for patterns.

* Make a single request to fetch all products data, implement retry for products and validation for the response returned by AI.

* Update the retries variable first within the patterns loop.

* Narrow down the AI content generation to only patterns that are part of the Assembler.

* Update the size of images and the prompt for AI generated content assigned to products.

* Don't make request to AI if the user provided a single word for their business description.

* Update the image assignment to products and remove the unused update_dummy_products method.

* Update the prompt for generating content for patterns.

* Update the prompt for products content generation and ensure that an error is returned if all requests fail.

* Update the prompt for patterns.

* Update the prompt for images.

* Update the prompt for images.

* Update prompt for button text.

* Don't schedule action for updating patterns content if the business description wasn't updated.

* add associative option when the local json is parsed

* Ensure the expected list of results matches the number or products to be updated.

* fix lint error

* Address CR.

---------

Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2023-11-20 16:59:52 +00:00
Mike Jolley 38441fb3dc Check `init_session_cookie` is callable (https://github.com/woocommerce/woocommerce-blocks/pull/11785) 2023-11-20 16:37:13 +00:00
Alex Florisca 8b45dbfecd Add storybook entry for StoreNotice component (https://github.com/woocommerce/woocommerce-blocks/pull/11790)
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
2023-11-20 15:49:40 +00:00
Thomas Roberts 777f8c049f Add Storybook entry for `Panel` (https://github.com/woocommerce/woocommerce-blocks/pull/11818) 2023-11-20 15:26:21 +00:00
Luigi Teschio b2046300d1 Update patterns with the new images (https://github.com/woocommerce/woocommerce-blocks/pull/11782)
* delete current images used in the patterns

* Update Feactured Category Cover Image Pattern

* Update Hero Product split pattern

* Update just arrived full hero pattern

* Update Featured Category Triple pattern

* Update Hero Product 3 Split pattern

* Update Hero Product Chessboard

* Update Alterning image and text pattern

* Update Testimonial single pattern

* Update Follow Us on social media pattern

* Update Banner pattern

* Update Alternating Image and Text pattern

* Update Hero Product Chessboard

* Update Featured Category focus pattern

* Update banner pattern

* restore images

* update hero product 3 split pattern

* remove duplicate image

* update dictionary json

* update banner pattern

* optimize image

* fix validation

* fixed width and height

* Replace image Featured Category Focus pattern
2023-11-20 14:43:27 +01:00
Manish Menaria 26550194d3 Product Collection - New 'No Results' block with default UI (https://github.com/woocommerce/woocommerce-blocks/pull/11783)
* Add custom 'No Results' block for Product Collection

This commit introduces a new 'No Results' block, replacing the default core 'query-no-results' block within product collection block. The 'No Results' block provides a tailored experience for WooCommerce stores, displaying a custom message when no products are found in a query.

Key changes include:
- A new block type 'woocommerce/no-results' is registered with a complete configuration and content structure.
- Edit and save functions are implemented for the block, allowing for custom content and styles within the block editor and on the front end.
- Webpack entries are updated to include the new block in the build process.
- A PHP class NoResults is added for server-side rendering, which only displays the block when the product query returns no results, enhancing performance.
- The ProductCollectionUtils utility class is extended to support the new block's query needs.

The new block enriches the user experience by providing clearer communication when no products match the collection criteria and allows store owners to customize the message and presentation.

* Update description

* Rename 'no-results' block to 'product-collection-no-results'

Changes include:
- Updating the block name in `edit.tsx` within the `product-collection` directory.
- Modifying the block.json file in the `no-results` inner block to reflect the new name.
- Adjusting the className in `edit.tsx` for the `no-results` inner block.
- Altering the webpack entries in `webpack-entries.js` to recognize the new block name.
- Renaming the block in `NoResults.php` to align with this update.

This renaming aims to make the block's purpose more clear and to maintain a consistent naming scheme within our product collection blocks.

* Rename NoResults to ProductCollectionNoResults for clarity

This commit renames the `NoResults` class to `ProductCollectionNoResults`. The change aims to enhance clarity and specificity about the class's purpose, indicating that it specifically handles no-result scenarios within product collections.

Changes made:
- Renamed `NoResults.php` to `ProductCollectionNoResults.php`.
- Updated the class name from `NoResults` to `ProductCollectionNoResults` in the file.
- Modified the reference in `BlockTypesController.php` to use the new class name.

This renaming ensures better readability and understanding of the class's role in the context of product collections. The primary change is the renaming, with no significant alterations in the class functionality.

* Update No-Results Message Formatting in Product Collection Block

This commit simplifies the layout and message content for the 'No results found' message in the product collection block's no-results edit component. The changes include:

1. Removal of the full stop in the 'No results found' string for consistency.
2. Replacing the 'core/group' block with a 'core/paragraph' block.
3. Streamlining the message content to be more concise and integrated into fewer text blocks.
4. Direct links for 'clearing any filters' and navigating to the 'store's home' are now included in the same paragraph.

---------

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-11-20 13:18:59 +00:00
Thomas Roberts ddcd32897b Rename Checkbox List story to work with storybook 7 (https://github.com/woocommerce/woocommerce-blocks/pull/11679) 2023-11-20 13:15:22 +00:00
Thomas Roberts 143f493097 Add Storybook entries for `TextInput`, `ValidatedTextInput`, and `ValidationInputError` (https://github.com/woocommerce/woocommerce-blocks/pull/11794) 2023-11-20 13:08:16 +00:00
Niels Lange e6a885283b Increase CSS specificity for local pickup address (https://github.com/woocommerce/woocommerce-blocks/pull/11772)
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-11-20 13:07:00 +00:00
Mike Jolley 0981e973c5 Continue validating after doing nested properties (https://github.com/woocommerce/woocommerce-blocks/pull/11792) 2023-11-20 13:05:42 +00:00
Thomas Roberts cc84383730 Move all totals components into components package (https://github.com/woocommerce/woocommerce-blocks/pull/11773)
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-11-20 12:53:41 +00:00
Paulo Arromba 1da927c64d Updated composer.lock and minor deps (https://github.com/woocommerce/woocommerce-blocks/pull/11817)
* Updated composer.lock and minor deps

- Upgrading automattic/jetpack-admin-ui (v0.2.23 => v0.2.25)
- Upgrading automattic/jetpack-connection (v1.58.2 => v1.60.1)
- Upgrading automattic/jetpack-status (v1.18.5 => v1.19.0)
- Upgrading theseer/tokenizer (1.2.1 => 1.2.2)
2023-11-20 12:51:14 +00:00
Mike Jolley 1f1808e616 Fix strings in classic-checkout modal window (https://github.com/woocommerce/woocommerce-blocks/pull/11771)
* Fix strings in modal window

* Update assets/js/editor-components/incompatible-extension-notice/modal.tsx

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

---------

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2023-11-20 12:36:49 +00:00
Thomas Roberts eaab9950af Update Puppeteer E2E tests to WP 6.4.1 and disable failing ones (https://github.com/woocommerce/woocommerce-blocks/pull/11816)
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2023-11-20 13:06:12 +01:00
Alex Florisca edbfb862b1 Update payment docs (https://github.com/woocommerce/woocommerce-blocks/pull/11751)
* Update payment docs

* Update payment docs

* Update docs/internal-developers/block-client-apis/checkout/checkout-flow-and-events.md

Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>

---------

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
2023-11-20 11:36:19 +00:00
Thomas Roberts 894f8e9ac4 Remove unused Verticals client PHP tests (https://github.com/woocommerce/woocommerce-blocks/pull/11813) 2023-11-17 06:02:58 -08:00
dependabot[bot] 471b9a1b60 Bump @wordpress/icons from 6.1.1 to 9.36.0 (https://github.com/woocommerce/woocommerce-blocks/pull/11611)
* Bump @wordpress/icons from 6.1.1 to 9.36.0

Bumps [@wordpress/icons](https://github.com/WordPress/gutenberg/tree/HEAD/packages/icons) from 6.1.1 to 9.36.0.
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/icons/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/icons@9.36.0/packages/icons)

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

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

* Add sparkles icon to codebase

* Fix failing JS-unit tests

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
2023-11-16 17:40:53 +00:00
Mike Jolley 377a3d9931 Make "Use same address for billing" visible by default (https://github.com/woocommerce/woocommerce-blocks/pull/11804) 2023-11-16 16:41:52 +00:00
Albert Juhé Lluveras 34432f150c Update Smoke Testing docs to reference Product Collection block and Cart/Checkout templates (https://github.com/woocommerce/woocommerce-blocks/pull/11713)
* Update smoke testing docs to mention the Product Collection block instead of the Products block

* Mention that Cart and Checkout blocks need to be added to the template instead of the pages

* Update docs/internal-developers/testing/smoke-testing.md

Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>

---------

Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
2023-11-16 16:25:34 +01:00
Alexandre Lara c8ef0fb3af Product Gallery block: Restrict block to be available only on the Single Product template or the Product Gallery template part (https://github.com/woocommerce/woocommerce-blocks/pull/11664)
* WIP: experimenting with strategy pattern for block registration

* Add TemplateChangeDetector to BlocksRegistrationManager

* Handle blocks registration

* Fix issue causing blocks to be registered multiple times

* Allow register/unregister blocks when on pages or posts

* Add BlockRegistrationStrategy logic

* Fix import error

* Add doc comments for BlockRegistrationManager class

* Add doc comments to TemplateChangeDetector class

* Fix eslint errors

* Import domReady from @wordpress/dom-ready

* Prevent error when using blockName for registerBlockType function

* Add e2e tests to check for block availability in different contexts

* Add e2e tests to cover block availability on different contexts
2023-11-16 15:03:58 +00:00
Hsing-yu Flowers 1a0a785227 Fix the order endpoint tax line items format (https://github.com/woocommerce/woocommerce-blocks/pull/11796) 2023-11-16 10:20:08 +00:00
Roy Ho 8f3f630522 Product gallery/dialog/enhancement (https://github.com/woocommerce/woocommerce-blocks/pull/11755)
* Hide pager in dialog

* Product Gallery: reset main image when dialog closes

* Product Gallery block: Add product title to dialog

* Align double arrow

* Use H2 to be more semantic

* Use product title block in template part

* Default pager to off

* Remove pager only in dialog

* Remove unused param

* Default pager to off instead of removing
2023-11-15 13:05:51 -08:00
Mike Jolley fd4675aa6a Refactor default editing state for customer address fields (https://github.com/woocommerce/woocommerce-blocks/pull/11765)
* Refactor default editing state for customer address fields

* Exclude email from invalid props check

* Merge conflict
2023-11-15 15:22:36 +00:00
Mike Jolley b0697be9d5 Adds a state example for the payment data store (https://github.com/woocommerce/woocommerce-blocks/pull/11770)
* Adds a state example for the payment data store

* Update docs/third-party-developers/extensibility/data-store/payment.md

Co-authored-by: Niels Lange <info@nielslange.de>

* Update docs/third-party-developers/extensibility/data-store/payment.md

Co-authored-by: Niels Lange <info@nielslange.de>

* Update docs/third-party-developers/extensibility/data-store/payment.md

Co-authored-by: Niels Lange <info@nielslange.de>

* Full stop

---------

Co-authored-by: Niels Lange <info@nielslange.de>
2023-11-15 11:19:39 +00:00
Sam Seay d62b950aae Add a stock filter block powered by the interactivity API (https://github.com/woocommerce/woocommerce-blocks/pull/11663) 2023-11-15 16:50:05 +13:00
Seghir Nadir 49579f4aa0 Move phone to default fields section instead of being handled inline. (https://github.com/woocommerce/woocommerce-blocks/pull/11651)
* Move phone to default fields section

* remove unused files and actions
2023-11-14 18:30:23 +00:00
Alexandre Lara 415e12c163 Product Gallery block: Add E2E tests to cover Variable Products (https://github.com/woocommerce/woocommerce-blocks/pull/11536)
* WIP: cover variable products in Product Gallery block

* Fix e2e tests for Product Gallery Large Image block

* Fix php cs error

* Fix eslint errors

* Fix php cs error

* Fix php cs error

* Fix import of file that does not exist

* Specify selected variable product for Large Image block E2E tests
2023-11-14 15:00:11 -03:00
Alex Florisca 9ad8323851 Move Button, StoreNotice and StoreNoticesContainer components into the components package (https://github.com/woocommerce/woocommerce-blocks/pull/11766)
* Move Button, StoreNotice and StoreNoticesContainer components into the components package

* Delete the button folder and leave alias in index.ts

* Update references from @woocommerce/blocks-checkout to @woocommerce/blocks-components
2023-11-14 16:32:53 +00:00
Alba Rincón 6539b018ab Fix hardcoded shop link in "Hero Product 3 Split" pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11767) 2023-11-14 17:12:53 +01:00
Thomas Roberts cb468c8ade Move `TextInput`, `ValidatedTextInput` and `ValidationInputError` to the `@woocommerce/blocks-components` package. (https://github.com/woocommerce/woocommerce-blocks/pull/11654) 2023-11-14 14:52:14 +00:00
Mike Jolley 22bc80536f Update release checklist (https://github.com/woocommerce/woocommerce-blocks/pull/11660)
* Update checklist

* Feedback and update patch checklist to match
2023-11-14 10:36:05 +00:00
Mike Jolley 02f9d97282 Playwright Fixes from the 11.5.x release branch (https://github.com/woocommerce/woocommerce-blocks/pull/11737)
* Adjust test to use legacy selector if block is not found

* Select block before transform

* Improve frame selector
2023-11-14 10:32:19 +00:00
Alex Florisca cee80347f3 Add storybook entry for Label component (https://github.com/woocommerce/woocommerce-blocks/pull/11682) 2023-11-14 09:58:57 +00:00
Niels Lange 845c84be1e Update changelog and testing notes for release 11.4.8 2023-11-14 14:22:26 +07:00
Caleb Mazalevskis 55f3cededf Fix typo. (https://github.com/woocommerce/woocommerce-blocks/pull/11382) 2023-11-14 13:11:14 +13:00
Parikshit Adhikari 9b1ca0707a fixed multiple typos inside docs (https://github.com/woocommerce/woocommerce-blocks/pull/11426) 2023-11-14 13:10:47 +13:00
Max Kohler 7cea7de7dd Update codex link (https://github.com/woocommerce/woocommerce-blocks/pull/11739) 2023-11-14 13:09:50 +13:00
Alex Florisca 4d90cb2803 Add storybook entries for RadioControl and RadioControlAccordion (https://github.com/woocommerce/woocommerce-blocks/pull/11657) 2023-11-13 17:12:46 +00:00
Mike Jolley e3d4996dad v11.5.4 Changelog and testing notes 2023-11-13 14:44:58 +00:00
Mike Jolley c93ee12770 Fix TT4 mobile styling for cart and notes field on checkout (https://github.com/woocommerce/woocommerce-blocks/pull/11742)
* Add box-sizing to textarea

* Fix cart mobile border
2023-11-13 12:52:29 +00:00
Mike Jolley 5bf57a90e1 Fix styling of Classic Cart and Checkout Blocks on regular pages (https://github.com/woocommerce/woocommerce-blocks/pull/11694)
* woocommerce_is_checkout/woocommerce_is_cart for classic shortcode block

* Add return to has_block_variation
2023-11-13 12:48:01 +00:00
Thomas Roberts 174c8e30ac Add `Textarea` entry to Storybook (https://github.com/woocommerce/woocommerce-blocks/pull/11635) 2023-11-13 11:52:46 +00:00
Alba Rincón 94b6c8b048 [CYS] Reduce the number of times the patterns dictionary is accessed (https://github.com/woocommerce/woocommerce-blocks/pull/11733)
* Load content and images on registration if the patterns is in the dictionary

* Stop getting the content from each pattern

* Add comment with explanation about the change
2023-11-13 09:27:59 +01:00
Niels Lange 1228e9bf83 Ensure that incompatible notices are displayed in Safari. (https://github.com/woocommerce/woocommerce-blocks/pull/11736) 2023-11-10 21:52:50 +01:00
Thomas Roberts abd32b21c9 Move `Panel` to components package (https://github.com/woocommerce/woocommerce-blocks/pull/11698) 2023-11-10 18:56:40 +00:00
Thomas Roberts 66fc4c5ea0 Add `FormStep` to Storybook (https://github.com/woocommerce/woocommerce-blocks/pull/11489) 2023-11-10 17:20:20 +00:00
Luigi Teschio 0d41c4df7e Add changelog Release 11.1.3 (https://github.com/woocommerce/woocommerce-blocks/pull/11697) 2023-11-10 16:50:15 +01:00
Tom Cafferkey 55f15c4912 PR Template: Add checklist item for browsers & viewports. (https://github.com/woocommerce/woocommerce-blocks/pull/11735) 2023-11-10 15:17:52 +00:00
Daniel Dudzic ff680940e4 Product Gallery Pager: Remove unnecessary margin (https://github.com/woocommerce/woocommerce-blocks/pull/11287) 2023-11-10 09:40:45 +01:00
Saad Tarhi 2182457673 Fix the Layout for Shipping and Billing Address Forms in the Checkout Block (https://github.com/woocommerce/woocommerce-blocks/pull/11486)
* Fix empty spaces in the address form

* Fix checkout layout for Japan and Hungary

* Added some comments in CSS
2023-11-10 08:07:49 +01:00
Tung Du d881fe208d Fix: different collection data request between editor and front end (https://github.com/woocommerce/woocommerce-blocks/pull/11710) 2023-11-10 11:04:49 +07:00
Saad Tarhi b8484850ff Merge changes from 11.4.7 2023-11-10 00:28:33 +01:00
Roy Ho ec8207e06c Product Gallery: Fix limited images displayed in the dialog (https://github.com/woocommerce/woocommerce-blocks/pull/11716)
* Product Gallery: Fix limited images displayed in the dialog

* Fix linting errors
2023-11-09 14:10:31 -08:00
Mike Jolley daea9f0fdf Fix address block invalidations in the editor and address card display in Firefox (https://github.com/woocommerce/woocommerce-blocks/pull/11714)
* Add checks to see if getCartData finished before rendering address

* Prevent block error due to excessive updates of customValidation

* Do not condense address in admin and handle phone field

* Add missing showPhoneField for billing

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
2023-11-09 16:25:28 +00:00
Thomas Roberts f8f535fc1d Merge changes from 11.4.6 2023-11-09 15:38:14 +00:00
Mike Jolley 6d24efe009 onPaymentProcessing->onPaymentSetup (https://github.com/woocommerce/woocommerce-blocks/pull/11578)
* onPaymentProcessing->onPaymentSetup

* Missed a billingAddress
2023-11-09 11:47:49 +00:00
Thomas Roberts df27cbac96 Update Jetpack WooCommerce Analytics module integration to check for changed template names (https://github.com/woocommerce/woocommerce-blocks/pull/11707) 2023-11-09 03:34:17 -08:00
Karol Manijak 41d40f47c2 Remove author, sticky, parents attributes from the Product Collection block in patterns (https://github.com/woocommerce/woocommerce-blocks/pull/11673) 2023-11-09 09:21:11 +01:00
Karol Manijak 955332941e Translate Related Products heading in Single Product template (https://github.com/woocommerce/woocommerce-blocks/pull/11693)
* Create Related Products pattern reused in the Single Product template

That's needed in order to make the Related Products string translatable

* Add margin to Related Products heading

* Add margin to Related Products transformed from classic template

* Simplify the translation

* Change string capitalization so it's the same as the other one and can be transklated
2023-11-09 09:00:23 +01:00
Roy Ho 08b0ceff53 e2e: Add hacky workaround for product image gallery (https://github.com/woocommerce/woocommerce-blocks/pull/11655) 2023-11-08 13:55:35 -08:00
Albert Juhé Lluveras 419d4ed4fd Update readme.txt and testing notes for 11.5.1 2023-11-08 19:39:44 +01:00
Albert Juhé Lluveras 68e6b251b0 Add protection against wrong params in get_block_template_fallback() (https://github.com/woocommerce/woocommerce-blocks/pull/11690)
* Add protection towards wrong params in get_block_template_fallback()

* Improve protection
2023-11-08 17:33:37 +01:00
Michael Pretty f4d1372d06 Fix attempts to count possible non-countable variables or usage of undefined variables (https://github.com/woocommerce/woocommerce-blocks/pull/11473)
* Fix attempts to count possible non-countable variables or usage of undefined variables

This fixes a few miscellaneous small problems where a possibly undefined variable was attempted to be accessed or a variable that wasn't necessarily countable was passed to `count()`

These were found by running Rector with rules specific to finding issues with php8.

* Fixing lint spacing issue
2023-11-08 16:22:22 +00:00
Saad Tarhi c1d2695fb0 Skip template related E2E tests (https://github.com/woocommerce/woocommerce-blocks/pull/11700) 2023-11-08 16:35:45 +01:00
Alba Rincón 55a3e2d953 [CYS] Fix decoding issue and pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11681)
* Fix pattern description

* Decode the actual file content, not the filepath
2023-11-08 14:45:23 +01:00
Luigi Teschio 4ebea101c7 Use wp_post table instead wp_option to store patterns data generated by AI (https://github.com/woocommerce/woocommerce-blocks/pull/11659)
* Use wp_post table instead wp_option to store patterns data generated by AI

* avoid crash when there isn't any patterns_ai_data post type

* restore check

* remove unnecessary constant

* catch error

* pass boolean to return WP_Error
2023-11-08 12:14:37 +01:00
Thomas Roberts b2efba9fef Add `SortSelect` to Storybook (https://github.com/woocommerce/woocommerce-blocks/pull/11618) 2023-11-08 11:13:49 +00:00
Thomas Roberts 7d4fc482fd Add storybook entry for `CheckboxList` (https://github.com/woocommerce/woocommerce-blocks/pull/11469) 2023-11-08 02:55:48 -08:00
Thomas Roberts fcdfcc2123 Add `Spinner` storybook entry (https://github.com/woocommerce/woocommerce-blocks/pull/11622) 2023-11-08 10:54:29 +00:00
Manish Menaria 033a92d536 Product Collection: Add support for filtering products by featured status (https://github.com/woocommerce/woocommerce-blocks/pull/11522)
* Add support for filtering products by featured status

- Added `featured` attribute to `ProductCollectionQuery` type to enable filtering by featured status.
- Implemented `FeaturedProductsControl` to provide a toggle option in the inspector controls.
- Integrated `FeaturedProductsControl` into `ProductCollectionInspectorControls`.
- Added `get_featured_query` function in `ProductCollection` class to generate query for fetching featured products.
- Updated existing functions and queries in `ProductCollection` class to support featured products filtering.

* Revert changes to composer.lock

* Refactor handling of 'featured' parameter

This commit makes the handling of the 'featured' parameter consistent in the ProductCollection class. Previously, the 'featured' parameter was being type-casted to boolean, which was not necessary and could lead to incorrect results. Now, the 'featured' parameter is used directly without type-casting, and the check for 'featured' products in the get_featured_query method has been updated accordingly. This ensures that the 'featured' parameter is handled consistently and correctly throughout the class.

* Handle undefined 'featured' index

This commit adds null coalescing operator to handle the case when 'featured' index is not set in the $query array. This prevents potential PHP notices or errors that may arise when trying to access an undefined index.
2023-11-08 15:37:32 +05:30
Lucio Giannotta 64b44f8ebd Rename 1145 to 1145.md 2023-11-08 17:31:20 +08:00
Lucio Giannotta ff9a98156b Update readme and testing notes for 11.4.5 2023-11-08 17:07:16 +08:00
Manish Menaria b177aa9048 Product Collection - Add `Created` filter in inspector controls (https://github.com/woocommerce/woocommerce-blocks/pull/11562)
* Add time frame filter to Product Collection block

This commit introduces the ability to filter products within the Product Collection block by a specified time frame. The changes include:

- A new 'timeFrame' property added to the DEFAULT_QUERY constant in constants.ts, initialized as null, allowing for the storage of time frame data.
- Creation of a new component `CreatedControl` in created-control.tsx that provides UI elements for selecting a time frame filter.
- Inclusion of `CreatedControl` in the Product Collection Inspector Controls.
- Expansion of the ProductCollectionQuery interface in types.ts to include a 'timeFrame' attribute.
- Addition of the 'timeFrame' parameter handling within the ProductCollection PHP class to construct and execute the date query based on the provided time frame.

The addition of the time frame filter offers enhanced flexibility in presenting products and allows users to dynamically segment their product lists based on product creation dates.

* Refactor: Standardize 'timeFrame' to be 'undefined' instead of 'null'

This commit includes a refactoring that changes the initialization and reset values for the `timeFrame` property from `null` to `undefined`. This standardization affects the constants, type definitions, and the handling of the `timeFrame` property in both the inspector controls and the PHP backend.

* Switch date query to use post_date_gmt for DST consistency

This commit changes the column reference in the date query from 'post_date' to 'post_date_gmt'. This update ensures that the product collection filtering is based on Coordinated Universal Time (UTC) rather than local time, which can be affected by Daylight Saving Time (DST) shifts. The modification will lead to more consistent and reliable behavior across different time zones and during DST changes.

* Capitalize toggle group labels

The following adjustments have been made:
- Introduced a constant `uppercaseStyle` to store the `{ textTransform: 'uppercase' }` style.
- Applied `uppercaseStyle` to both the 'IN' and 'NOT IN' toggle options to ensure label text is consistently uppercase.
- Updated the 'Not in' label text to uppercase ('NOT IN') to match the newly applied style.

These changes ensure that the toggle labels align with the design guidelines that call for uppercase styling in control elements.

* Make first letter of first work capital

* Rename to Within & Before

* Update i18n for Product Collection query operators

This commit updates the internationalization (i18n) for the Product Collection query operators in the 'Created' control component of the WooCommerce Blocks plugin. It replaces the '__' function with '_x' for translation and provides context comments for better translation handling. This improvement enhances the localization of the query operators for better multilingual support.
2023-11-08 14:32:49 +05:30
Tom Cafferkey 3f98449f90 MiniCart: Check that data is countable before counting (https://github.com/woocommerce/woocommerce-blocks/pull/11658) 2023-11-08 08:36:27 +00:00
Lucio Giannotta 82e8079c06 Fix Single Product Classic Template block not showing on the front-end (https://github.com/woocommerce/woocommerce-blocks/pull/11455)
In WordPress 6.4, it appears that the global `have_posts` is `false` in
the context of the full site editing single product template. This
breaks the Classic Template block.

In this commit, we are creating a custom query using the available id
instead of relying on the global query.

This might be a temporary workaround as we are waiting to see
if that's an issue that core is willing to fix, as it might affect
backwards-compatibility for other vendors.
2023-11-08 08:23:26 +01:00
Karol Manijak a2103ed8fd Update Feedback Prompt styles by removing horizontal margin causing scroll to show up (https://github.com/woocommerce/woocommerce-blocks/pull/11619) 2023-11-07 21:54:35 +01:00
Daniel Dudzic 50a224bca3 Product Button: Remove the hardcoded width and padding (https://github.com/woocommerce/woocommerce-blocks/pull/11537)
* Product Button: Remove the hardcoded width in favor of additional margin for :before and :after

* Product Button: Remove :after and :before margin
2023-11-07 17:46:20 +00:00
Paulo Arromba 03cb6742f4 Merge remote-tracking branch 'origin/trunk' into trunk 2023-11-07 15:34:58 +00:00
Alexandre Lara 1f1c252617 Product Gallery block: Disable zoom when hovering the Next/Previous buttons (https://github.com/woocommerce/woocommerce-blocks/pull/11538)
* Disable zoom when hovering next/previous buttons

* Improve logic to disable zoom when not hovering over the large image
2023-11-07 12:34:41 -03:00
Paulo Arromba 544c0391e7 Updated readme.txt with 11.4.4 2023-11-07 15:34:21 +00:00
Paulo Arromba 6989e8ddd7 Testing notes 2023-11-07 15:33:12 +00:00
Daniel W. Robert 656ca123bf Rename Centered Header Menu with Search pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11637)
* Rename Centered Header Menu with Search pattern

Since the search bar has been removed from this pattern, this PR renames
the pattern title and slug to reflect that change.

* Rename file to reflect search removal.

Remove `search` from the filename, as this no longer reflects the
pattern.
2023-11-07 10:00:53 -05:00
Alba Rincón 7a1d9bfc60 Add missing condition to avoid a php warning when 'plugins' is not set (https://github.com/woocommerce/woocommerce-blocks/pull/11652) 2023-11-07 15:05:28 +01:00
Mike Jolley fa74c79a25 11.6.0-dev bump (https://github.com/woocommerce/woocommerce-blocks/pull/11653) 2023-11-07 14:05:16 +00:00
Luigi Teschio 3bde3b174a Fix pattern route performance (https://github.com/woocommerce/woocommerce-blocks/pull/11535)
* fix pattern route performance

* update namespace

* improve middleware

* improve ProductSchema

* improve error handling

* update identifier

* fix middleware

* update description

* use schema to return the response

* Break down the generate_content method and create the new fetch_dummy_products_to_update method for handling the fetch of dummy products to be updated.

* Ensure the Product endpoint relies on the fetch_dummy_products_to_update method for fetching dummy products to avoid code repetition and add safety checks and handle errors in case certain properties are not available.

* Add error handling for the Products endpoint.

* Remove memory limit increase and update docblocks.

* re-add set_time_limit

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-11-07 14:50:19 +01:00
Thomas Roberts 61b1272d8a Add `Title` entry to Storybook (https://github.com/woocommerce/woocommerce-blocks/pull/11636)
* Export TitleProps interface for use on storybook

* Add Storybook entry for Title
2023-11-07 13:45:38 +00:00
Paulo Arromba b3b52dbff4 Fix Playwright E2E tests - SideEffects (https://github.com/woocommerce/woocommerce-blocks/pull/11638)
* Removed span text and test
2023-11-07 11:50:59 +00:00
Luigi Teschio 948fc1ac53 Filter By Rating: fix overlapping stars (https://github.com/woocommerce/woocommerce-blocks/pull/11644) 2023-11-07 10:59:36 +00:00
Mike Jolley a0bb87ed07 Restore checkout header which was reverted in cd7704b0ef (https://github.com/woocommerce/woocommerce-blocks/pull/11647) 2023-11-07 10:58:00 +00:00
Tung Du 73f9b997cc Collection Filters refactor: data fetching, context passing, and code organization (https://github.com/woocommerce/woocommerce-blocks/pull/11476) 2023-11-07 14:55:23 +07:00
Alex Florisca ded7d20c51 Fix the link to latest PRs on github nightly workflow (https://github.com/woocommerce/woocommerce-blocks/pull/11616) 2023-11-06 17:11:20 +00:00
Paulo Arromba 2a71627e36 Enhancement/New blockified Order Confirmation on new installs with block-based themes (https://github.com/woocommerce/woocommerce-blocks/pull/11615)
* Use new blockified Order Confirmation on blocks themes

* Handle translations on the new blockified Order Confirmation
2023-11-06 15:51:04 +00:00
Albert Juhé Lluveras 33bc75801e Add to Cart with Options block: fix inconsistency between editor and frontend (https://github.com/woocommerce/woocommerce-blocks/pull/11614)
* Add to Cart with Options block: fix inconsistency between editor and frontend

* Typo

* Use same margin values as block theme stylesheet
2023-11-06 16:30:25 +01:00
Roy Ho 4cdffc3b07 Product Gallery: Add e2e tests for crop image option (https://github.com/woocommerce/woocommerce-blocks/pull/11559) 2023-11-06 07:17:25 -08:00
Alba Rincón 0d538020a3 Fix 3-split pattern text content (https://github.com/woocommerce/woocommerce-blocks/pull/11612) 2023-11-06 11:43:47 +01:00
Thomas Roberts 614fc3dba6 Ensure input is validated when autofilled in Firefox (https://github.com/woocommerce/woocommerce-blocks/pull/11062) 2023-11-06 01:35:19 -08:00
Tung Du a52234e757 Fix: Make filter block contextual - Editor (https://github.com/woocommerce/woocommerce-blocks/pull/11218) 2023-11-06 14:14:58 +07:00
Albert Juhé Lluveras 51e04d0373 Prevent theme button border appearing in opinionated patterns (https://github.com/woocommerce/woocommerce-blocks/pull/11564) 2023-11-04 09:14:28 +01:00
Thomas Roberts 35c0d69206 Add legacy hooks documentation (https://github.com/woocommerce/woocommerce-blocks/pull/11575) 2023-11-03 17:06:35 +00:00
dependabot[bot] 88473a7875 Bump richardsimko/github-tag-action from 1.0.7 to 1.0.11 (https://github.com/woocommerce/woocommerce-blocks/pull/11530)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-03 09:37:20 -07:00
Mike Jolley 67f341899d Add back missing render-checkout-form hook (https://github.com/woocommerce/woocommerce-blocks/pull/11554) 2023-11-03 16:30:40 +00:00
Mike Jolley 504a15350f Docs: Update examples to use window global imports (https://github.com/woocommerce/woocommerce-blocks/pull/11577)
* Updating examples to use window global imports

* Remove incorrect package import description
2023-11-03 16:30:19 +00:00
dependabot[bot] 84e08e0522 Bump actions/setup-node from 3 to 4 (https://github.com/woocommerce/woocommerce-blocks/pull/11529)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-03 08:06:34 -07:00
dependabot[bot] 7b146c018f Bump @wordpress/i18n from 4.31.0 to 4.45.0 (https://github.com/woocommerce/woocommerce-blocks/pull/11572)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-03 07:23:03 -07:00
Alba Rincón aa2367a274 Add margin bottom to the `Hero Product 3 Split` pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11573)
* Add margin bottom to the hero-product-3-split pattern

* Add margin top
2023-11-03 14:20:56 +01:00
Alba Rincón ccbaab255c Set explicit margins in the search bar group (https://github.com/woocommerce/woocommerce-blocks/pull/11571) 2023-11-03 14:08:19 +01:00
Alba Rincón a8dd2c9bf2 Add aspect ratio to the `Featured Products 5 Columns` pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11570) 2023-11-03 14:08:10 +01:00
dependabot[bot] ad489cff36 Bump @wordpress/element from 4.20.0 to 5.22.0 (https://github.com/woocommerce/woocommerce-blocks/pull/11548)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-03 05:28:53 -07:00
dependabot[bot] 8a946cfa08 Bump @wordpress/dependency-extraction-webpack-plugin from 4.6.0 to 4.28.0 (https://github.com/woocommerce/woocommerce-blocks/pull/11549)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-03 04:32:19 -07:00
Darren Ethier 504b88490b Fix spelling issues in prompt. (https://github.com/woocommerce/woocommerce-blocks/pull/11546)
In the AI prompt, there are spelling issues:

- `bellow` instead of `below`
- `json` instead of `JSON`

Unclear if this would impact responses but should be fixed regardless.
2023-11-03 07:17:52 -04:00
Albert Juhé Lluveras c902a215d1 Prevent Sale badge overflowing the Product Image in some product grid blocks (https://github.com/woocommerce/woocommerce-blocks/pull/11556) 2023-11-03 09:42:40 +01:00
Daniel Dudzic f74aafe1bf Product Gallery Thumbnails: Add View all overlay (https://github.com/woocommerce/woocommerce-blocks/pull/11087)
* Product Gallery Thumbnails: Add View All link to the last thumbnail (non-interactive)

* Product Gallery Thumbnails: Add interactivity to the View All overlay

* Product Gallery Thumbnails: Refactor View all html to make it more readable

* Product Gallery Thumbnails: Fix woocommerce/woocommerce-blocks#11100 - Load all thumbnails and hide the View all overlay when in Dialog

* Product Gallery Thumbnails: Fix woocommerce/woocommerce-blocks#11099 - Enable the dialog for the View all thumbnails overlay even when the 'Full-screen when clicked' setting is disabled

* Product Gallery Thumbnails: Remove unnecessary concatenation from the View all html

* Product Gallery Thumbnails: Abstract the View All conditions into separate functions for readability

* Product Gallery Thumbnails: Add escaping to the View all plain text string

* E2E: Fix the Sale Badge and Single Product Template tests by selecting the first Sale Badge
2023-11-02 21:05:20 +01:00
Daniel Dudzic 5ccfecef60 Footer with 2 Menus Dark pattern: Fix color contrast issue in TT4 (https://github.com/woocommerce/woocommerce-blocks/pull/11484) 2023-11-02 20:40:48 +01:00
Luigi Teschio cd7704b0ef Backport 11.4.x changes in trunk (https://github.com/woocommerce/woocommerce-blocks/pull/11471)
* Empty commit for release pull request

* Add changelog entries to readme.txt

* Update version numbers

* Add testing instructions

* Update the changelog with woocommerce/woocommerce-blocks#11421

* Always show the `Enable the shipping calculator on the cart page` option in WC Admin (https://github.com/woocommerce/woocommerce-blocks/pull/11421)

* Always show `Enable the shipping calculator ...`

Always show the `Enable the shipping calculator on the cart page` option
no matter of what is used for the cart page.

* Update remove_shipping_settings docblock to accurately describe its purpose.

---------

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

* Add a safe guard that the variable is set before accessing it (https://github.com/woocommerce/woocommerce-blocks/pull/11424)

* Update zip package link

* Modify the <main> HTML tag in the title to 'main' to ensure the title remains intact

* Revert "Use the <header> element for the checkout header (https://github.com/woocommerce/woocommerce-blocks/pull/11222)"

This reverts commit 9e9ebc5039.

* Remove woocommerce/woocommerce-blocks#11222 from the Changelog and the Testing Notes

* Remove woocommerce/woocommerce-blocks#11190 from the Changelog and Testing Notes as it was never merged

* Update .zip file with latest changes

* Release: 11.4.2 (https://github.com/woocommerce/woocommerce-blocks/pull/11452)

* Empty commit for release pull request

* Do a version bump to 11.4.1

* Add Instruction Notes and update the Changelog

* Update the testing instructions and the changelog and the .zip link

* Empty commit for release pull request

* Remove the fontSize for the button (https://github.com/woocommerce/woocommerce-blocks/pull/11433)

* [Store Customization MVP] Ensure the AI-generated content in patterns is updated on plugin update (https://github.com/woocommerce/woocommerce-blocks/pull/11210)

* Update the patterns content after updating the plugin

* Remove unused variable and use statement

* Schedule action for updating the patterns content on plugin update (for both WooCommerce and WooCommerce Blocks.)

* Update condition to remove the plugin folder name

* Remove the update function from bootstrap.php

* Remove unused use

* Fix the condition, since $options['plugin'] is an array

* Remove pattern file

This was left empty by mistake in a merge, we need to remove the file or we get an error

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>

* Fix outer space and title (https://github.com/woocommerce/woocommerce-blocks/pull/11434)

* Store Customization > Update products with AI generated content (https://github.com/woocommerce/woocommerce-blocks/pull/11155)

* Introduce the ProductUpdater class.

* Update the image assignment for the default products content.

* Update the default products content.

* Introduce the generate_content and get_placeholder_products methods.

* Update the get_placeholder_products method and introduce the new create_new_product method.

* Verify the hash of the product content and compare it with the hash of the ai generated content to ensure we wont override products modified by the store owner.

* Add docblocks and update the structure for the ProductUpdater class.

* Pass the vertical images as a param for the PatternUpdater and the ProductUpdater.

* Update the provided variable to the PatternUpdater class.

* Update the ProductUpdater class to include the requirements for usage of the media_sideload_image method outside the wp-admin area (via API) and other adjustments to the products generation and hashes

* remove unnecessary calls to post/product images.

* Update the loop for generating products.

* Further adjustments to the Product Updater.

* Provide the business_description as a param for the generate_content ProductUpdates

* Update the default timeout for the AI connection; update the path to the default image. Add a limit of 6 when quering the total products created by the store owner.

* Add new neutral placeholder images for products and patterns.

* Update the prompt and the logic for the placeholder images.

* Remove placeholder images.

* Increase max execution time

* Update the products query.

* Move the media_sideload_image function dependencies to outside of the loop and add comment.

* Update text content.

* Address code review.

* bail early if no business description provided.

* Add an extra safety check in case of query errors.

* Address CR.

* Patterns > Upload optimized version of placeholder image (https://github.com/woocommerce/woocommerce-blocks/pull/11441)

* Improve vars name and remove duplicated user name (https://github.com/woocommerce/woocommerce-blocks/pull/11430)

* Add overlay with 30% opacity (https://github.com/woocommerce/woocommerce-blocks/pull/11428)

* [Store Customization] Update the "Footer with 3 Menus" (https://github.com/woocommerce/woocommerce-blocks/pull/11379)

* Fix search bar, spacing and show text in one line

* Set site log width

* Adjust margins and search bar

* Make the search bar fill space on mobile

* Update column sizes

* Remove width from site logo

* [CYS Woo Express] Update large footer (https://github.com/woocommerce/woocommerce-blocks/pull/11413)

* Update large footer

* Update space between icons

* Remove with from site logo

* update changelog and testing instructions

* bump to 11.4.2 version

* [CYS Woo Express] Fix essential header (https://github.com/woocommerce/woocommerce-blocks/pull/11449)

* Fix essential header

* Fix spacing

* update testing instructions

* Make groups to adapt better to mobile views (https://github.com/woocommerce/woocommerce-blocks/pull/11463)

* update testing instructions and changelog

* Unify the search bar layout across patterns (https://github.com/woocommerce/woocommerce-blocks/pull/11445)

* Unify the search bar layout across patterns

* restore changes

* [CYS Woo Express] Footer with simple menu and cart (https://github.com/woocommerce/woocommerce-blocks/pull/11409)

* Update footer simple menu cart

* Change structure to use rows not columns

* Make search fill space

* Fix spacing and switch mini-cart and menu

* Unify the search bar

* Remove mini cart

* update testing instructions and changelog

* Store Customization > Fetch product images from the Pexels API (https://github.com/woocommerce/woocommerce-blocks/pull/11280)

* Introduce the ProductUpdater class.

* Update the image assignment for the default products content.

* Update the default products content.

* Introduce the generate_content and get_placeholder_products methods.

* Update the get_placeholder_products method and introduce the new create_new_product method.

* Verify the hash of the product content and compare it with the hash of the ai generated content to ensure we wont override products modified by the store owner.

* Add docblocks and update the structure for the ProductUpdater class.

* Pass the vertical images as a param for the PatternUpdater and the ProductUpdater.

* Update the provided variable to the PatternUpdater class.

* Update the ProductUpdater class to include the requirements for usage of the media_sideload_image method outside the wp-admin area (via API) and other adjustments to the products generation and hashes

* remove unnecessary calls to post/product images.

* Update the loop for generating products.

* Further adjustments to the Product Updater.

* Provide the business_description as a param for the generate_content ProductUpdates

* Update the default timeout for the AI connection; update the path to the default image. Add a limit of 6 when quering the total products created by the store owner.

* Add new neutral placeholder images for products and patterns.

* Update the prompt and the logic for the placeholder images.

* Remove placeholder images.

* Pass the AI connection as a param and update the get_images_for_pattern method to rely on the results returned from the Pexels API.

* update the product updater class to rely on Pexels images and add the ai_connection as a param.

* Remove the unused get_random_images method.

* Update the patterns endpoint.

* Delete unused ChatGPTClient class.

* Introduce the new Pexels class.

* Remove the Verticals references.

* Update the reference for the alt description for images.

* Update the scheduled action to populate patterns and products.

* Remove unused Verticals classes.

* Ensure the Pexels class already returns the array with the expected format for assignment to Patterns and Products.

* Introduce the select_image_src_based_on_format method.

* Increase max execution time

* Increase max execution time

* Update the request to rely on the WP.com external-media endpoint instead.

* Improve performance for product content update.

* Improve quality of images used in products and update queries.

* Update the products query.

* Move the media_sideload_image function dependencies to outside of the loop and add comment.

* Update text content.

* Merge base branch

* Introduce the should_update_dummy_product method.

* Update the method to be triggered on scheduled action to return true.

* Change the image format for products to improve performance.

* Make portrait the default fallback image format.

* Address code review.

* bail early if no business description provided.

* Add an extra safety check in case of query errors.

* Address CR.

* Raise the default memory limit.

* Update the prompt for the search term for images.

* Make sure the 'woocommerce_blocks_allow_ai_connection' option is set to true if the site is connected to AI.

* Update the prompt for AI generated content in patterns and initialize the images and alts for the patterns.

* Update the prompt for products and introduce the update_dummy_products method.

* Update the default number of images returned by Pexels.

* Update the default fallback for the expected image format.

* Update the prompt for selecting the images.

* Add a character limit to the testimonials.

* Increase timeout to fetch products data

* Address code review.

* update changelog

* add zip link

* fix markdown

* remove duplicate testing instructions

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
Co-authored-by: Tom Cafferkey <tjcafferkey@gmail.com>
Co-authored-by: Luigi <gigitux@gmail.com>

* Release: 11.4.3 (https://github.com/woocommerce/woocommerce-blocks/pull/11496)

* bump to 11.4.3

* Empty commit for release pull request

* Improve Hero Product Chessboard pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11423)

* improve pattern

* remove hardcoded font-size

* address feedback

* update to h2

* Remove group and separator to get rid of the extra space (https://github.com/woocommerce/woocommerce-blocks/pull/11477)

* [Store Customization] Update the design for the Product Gallery pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11464)

* Remove rating, show only title and price

* Improve title spacing and level

* Patterns with Search Bar: improve style (https://github.com/woocommerce/woocommerce-blocks/pull/11478)

* "Product Collection X Columns" patterns: align "no reviews" text with the star (https://github.com/woocommerce/woocommerce-blocks/pull/11468)

* improve line-height

* use variable

* add testing instructions

* Rename pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11487)

* update readme

* Store Customization > Enhance the Hero Product Split pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11505)

* Update the bottom margin for the Hero Product Split and the heading from h3 to h2.

* Update heading comment

* update testing instructions

* Simplify the `Hero Product 3 Split` pattern design (https://github.com/woocommerce/woocommerce-blocks/pull/11495)

* Simplify the pattern design

* Add char limits to the AI generated content

* Fix url

* update testing instructions

* Product Search Block: unify border-radius (https://github.com/woocommerce/woocommerce-blocks/pull/11515)

* add testing instructions

* [Store Customization] Update the Centered Header Menu with Search Pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11304)

* Fix hidden elements on mobile and margins

* Increase navigation items spacing

* Add site logo width

* Improve search bar and title font weight

* Remove width from site logo

* Unify search bar

* Remove search, improve margins

* Use columns to improve the mobile view

* add testing instructions

* Large Header pattern: improve the layout on mobile view (https://github.com/woocommerce/woocommerce-blocks/pull/11490)

* Improve Large header

* improve large header

* use lens

* add padding

* add testing instructions

* Fix "Large footer" left spacing (https://github.com/woocommerce/woocommerce-blocks/pull/11520)

* Fix large footer left spacing

* Use esc_html_e

* add testing instructions

* add zip file

* improve testing instructions

* update testing instructions

* update testing instructions

---------

Co-authored-by: Luigi <gigitux@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
Co-authored-by: Saad Tarhi <saad.trh@gmail.com>
Co-authored-by: Mike Jolley <mike.jolley@me.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
Co-authored-by: Tom Cafferkey <tjcafferkey@gmail.com>
2023-11-02 17:06:27 +00:00
Alba Rincón a4e7c4f43d Inherit the line height (https://github.com/woocommerce/woocommerce-blocks/pull/11553) 2023-11-02 16:59:27 +01:00
Niels Lange 33f2242f0c Improve checkout filters arguments description (https://github.com/woocommerce/woocommerce-blocks/pull/11485)
* Improve checkout filters arguments description

* Fix broken links

* Update TOC of available-filters.md

* Add hint regarding @woocommerce/dependency-extraction-webpack-plugin

* Optimise screenshots
2023-11-02 22:45:08 +07:00
Alba Rincón 981c0d8297 Change the "chessboard" pattern structure to improve mobile view (https://github.com/woocommerce/woocommerce-blocks/pull/11545)
* Change the "chessboard" pattern structure to improve mobile view

* Fix AI prompts
2023-11-02 14:40:55 +01:00
Mike Jolley ba09750661 Add Notices Documentation to Storybook and upgrade to Storybook 7 (https://github.com/woocommerce/woocommerce-blocks/pull/11524)
* Rename stories

* MDX guidelines

* dedupe and fix dependencies

* Notice Banner Docs

* Fix root elements and icon library docs

* Fix ProductPrice stories

* Organise storybook structure

* Fix error placeholder story

* Snackbar docs

* Missing dotenv dependency

* Update storybook/main.js

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update assets/js/base/components/snackbar-list/docs/docs.mdx

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update assets/js/base/components/notice-banner/docs/docs.mdx

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update assets/js/base/components/snackbar-list/docs/docs.mdx

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update assets/js/base/components/snackbar-list/docs/docs.mdx

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update assets/js/base/components/snackbar-list/docs/docs.mdx

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update assets/js/base/components/snackbar-list/docs/docs.mdx

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update assets/js/base/components/snackbar-list/docs/docs.mdx

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update assets/js/base/components/snackbar-list/docs/docs.mdx

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>

* Update package lock

* update snaps

* fix json error check

---------

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
2023-11-02 13:01:42 +00:00
Alba Rincón abdfe69b38 Update the spacing in the columns to improve the mobile view (https://github.com/woocommerce/woocommerce-blocks/pull/11544) 2023-11-02 13:22:50 +01:00
Niels Lange 2d144de9fc Introduce hover-effect() mixin (https://github.com/woocommerce/woocommerce-blocks/pull/11526) 2023-11-02 16:16:19 +07:00
dependabot[bot] 41e5ac31b1 Bump @wordpress/base-styles from 4.33.0 to 4.35.0 (https://github.com/woocommerce/woocommerce-blocks/pull/11499)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 13:42:52 -07:00
dependabot[bot] d7f079908f Bump fs-extra from 10.1.0 to 11.1.1 (https://github.com/woocommerce/woocommerce-blocks/pull/10498)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 12:07:51 -07:00
Mike Jolley 49606ce4b6 Fix state input in playwright (https://github.com/woocommerce/woocommerce-blocks/pull/11532) 2023-11-01 16:51:27 +00:00
Mike Jolley 7cd966f0fd Add checkout-header template to the correct area (https://github.com/woocommerce/woocommerce-blocks/pull/11528) 2023-11-01 16:34:10 +00:00
Alex Florisca 49a5a11290 Update link to GH PRs (https://github.com/woocommerce/woocommerce-blocks/pull/11527) 2023-11-01 11:25:46 +00:00
Thomas Roberts aba0dfed0a Move `Title` to components package (https://github.com/woocommerce/woocommerce-blocks/pull/11383) 2023-11-01 03:40:29 -07:00
Roy Ho 6f9f9b10c5 Product gallery/add crop images (https://github.com/woocommerce/woocommerce-blocks/pull/11482)
* Product Gallery: Add cropped image support

* Product Gallery: Add cropped image support

* Clean up

* Create the crop dimensions based on smallest original image dimension

* Bail if image is not available
2023-10-31 15:23:57 -07:00
Daniel Dudzic 534a0dcd62 All Products: Add cursor pointer when hovering over pagination items (https://github.com/woocommerce/woocommerce-blocks/pull/11502) 2023-10-31 21:18:44 +00:00
Mike Jolley 46063d8fdd match values before looking at labels (https://github.com/woocommerce/woocommerce-blocks/pull/11410) 2023-10-31 15:48:34 +00:00
Alba Rincón 0f9f1cbb92 Fix "Large footer" left spacing (https://github.com/woocommerce/woocommerce-blocks/pull/11520)
* Fix large footer left spacing

* Use esc_html_e
2023-10-31 14:50:18 +01:00
Luigi Teschio 955317f622 Large Header pattern: improve the layout on mobile view (https://github.com/woocommerce/woocommerce-blocks/pull/11490)
* Improve Large header

* improve large header

* use lens

* add padding
2023-10-31 14:00:08 +01:00
Alba Rincón d87bec49ce [Store Customization] Update the Centered Header Menu with Search Pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11304)
* Fix hidden elements on mobile and margins

* Increase navigation items spacing

* Add site logo width

* Improve search bar and title font weight

* Remove width from site logo

* Unify search bar

* Remove search, improve margins

* Use columns to improve the mobile view
2023-10-31 13:59:57 +01:00
Alex Florisca 05082f5240 Add link to PRs merged in the last day to nightly release (https://github.com/woocommerce/woocommerce-blocks/pull/11431) 2023-10-31 12:12:55 +00:00
Luigi Teschio 07a2e2fced Disable test eslint rule for test.ts file (https://github.com/woocommerce/woocommerce-blocks/pull/11497) 2023-10-31 11:16:40 +01:00
Luigi Teschio 981e14a332 Product Search Block: unify border-radius (https://github.com/woocommerce/woocommerce-blocks/pull/11515) 2023-10-31 11:08:11 +01:00
Alba Rincón d25e7aeffc Simplify the `Hero Product 3 Split` pattern design (https://github.com/woocommerce/woocommerce-blocks/pull/11495)
* Simplify the pattern design

* Add char limits to the AI generated content

* Fix url
2023-10-31 10:11:18 +01:00
Patricia Hillebrandt c290231946 Store Customization > Enhance the Hero Product Split pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11505)
* Update the bottom margin for the Hero Product Split and the heading from h3 to h2.

* Update heading comment
2023-10-31 08:07:56 +01:00