Commit Graph

21159 Commits

Author SHA1 Message Date
Bart Kalisz 82d1df5b37
[E2E] Stabilize a flaky Price Filter test (#44690) 2024-02-20 16:30:16 +01:00
Remi Corson 1cbc04449c
Introduce `<Notice>` component for WooCommerce Admin (#44620)
* Introduce Notice component

* minor alignment fix

* Fix MD title increment

* Fix readme lint

* add changelog entry

* fix CSS lints

* Small tweaks.

Regularising the spelling of isDismissible.
Using sanitizeHTML to sanitize the notice description.
Making the variant classes like &-success to make them a bit shorter.
Adjusting wording of README to convey that this component is designed for the marketplace, though it can be used elsewhere.
Tweaking whitespace in one place in the TSX to please the linter.

* Update plugins/woocommerce-admin/client/marketplace/components/notice/notice.tsx

Co-authored-by: Michal Iwanow <4765119+mcliwanow@users.noreply.github.com>

* address feedback

* Changed notice classnames to use `__{$variant}` pattern as well. Restored 40px bottom margin to notices on viewports 600px and above. Added height 24px on icons to ensure they're nicely vertically centred.

---------

Co-authored-by: Remi Corson <1649788+corsonr@users.noreply.github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: Michal Iwanow <4765119+mcliwanow@users.noreply.github.com>
2024-02-20 14:52:41 +00:00
Alexandre Lara 319c2637eb
Reviews block: Convert editor-block.js to editor-block.tsx and replace propTypes with TypeScript definitions (#44594)
* Convert Reviews Editor code to TypeScript

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-20 10:58:52 -03:00
Gan Eng Chin de66873c33
Add `source` event props for `marketing_recommended_extension` track events to differentiate recommendations from woo.com API or default fallback data (#44714)
* Add getRecommendationSource util.

* Add `source` eventprop for `marketing_recommended_extension` track event.

* Make test pass with updated track event.

* Add tests for getRecommendationSource.

* Add JSDoc for getRecommendationSource.

* Better test descriptions.

* Add changelog.
2024-02-20 19:44:28 +08:00
Luigi Teschio 5fe5aef5a0
Product Image block: show the setting to control the imageSizing attribute and add the attribute to the `Product Catalog` and `Product Search Results` templates (#44691)
* add imageSizing attribute to the product catalog template

* add attribute for the product search results template

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-20 10:50:42 +01:00
Luigi Teschio 879cfaec46
[CYS- Core] Improve default palette (#44722)
* improve default palette

* improve comment

* Add changefile(s) from automation for the following project(s): woocommerce

* improve comment

* fix theme.json

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-20 10:48:27 +01:00
Luigi Teschio 62f2782715
[CYS - Core] improve logic to find active fonts (#44724)
* improve logic to find active fonts

* Add changefile(s) from automation for the following project(s): woocommerce

* Update changelog

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Alba Rincón <alba.rincon@automattic.com>
2024-02-20 10:48:09 +01:00
Albert Juhé Lluveras 484398cfe1
Open templates from list instead of loading the URL in block templates e2e tests (#44774)
* Open templates from list instead of loading the URL in block templates e2e tests

* Typo

* Clean up

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Make sure correct template is loaded

* Create a TemplateType type to avoid having to define it in several places

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-20 10:35:27 +01:00
RJ 7f01490fd7
fix: shipping tour should not show usps/dhl to non-us merchants (#44765)
* fix: shipping tour should not show usps/dhl to non-us merchants

* lint
2024-02-20 13:33:01 +08:00
Chi-Hsuan Huang 2f6818772e
Fix untranslated "Are you already selling somewhere else?" text in the product task list (#44763)
* Fix untranslated "Are you already selling somewhere else?" text in the product task list footer.

* Add changelog
2024-02-20 10:25:17 +08:00
Jorge A. Torres 0af71d5c48
Update contributors list with some missing core contributors (#44740)
* Add Proton to contributors list

* Add changelog
2024-02-19 15:57:34 -08:00
Alfredo Sumaran 0407569382
Apply Rector suggestions for PHP 8.1 (#41253)
* Apply Rector suggestions

* Add changefile(s) from automation for the following project(s): woocommerce

* Apply feedback suggestions

* Add missing if

* Align assignments to satisfy the linter

* Move count call outside the loop to satisfy the linter

* Escape output to satisfy the linter

* Remove unnecessary assignment

* Remove unnecessary is_countable check

* Remove unnecessary array casting

* Restore variable name

* Update changelog entry

* change static to self for consistency
2024-02-19 12:29:16 -08:00
Karol Manijak 5b420159cb
Product Collection: disable "Sync with current query" option for 2nd+ block on archive (#44577)
* Refactor store usage

* Prepare function resolving inherit property for additional check

* Add logic to disable sync with query if there's already one Product Collection on archive that does that

* Add changelog

* Cover the post editor case

* Add E2E test for that and small refactor in tests

* Remove duplicated import

* Fix lint problems

* Fix typo in test description

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

* Replace confusin abbreviation with other description

* Update the logic to be more robust and covering also the case where Product Collection blocks are nested

* Add issue reference to the comment

* Add eslint disable before ts-ignore

---------

Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
2024-02-19 17:51:42 +01:00
Jonathan Lane 852e8f4c0e
Merchant coupon creation (#44671)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-02-19 16:43:53 +02:00
nigeljamesstevenson 7699c52b9d
Update stable tag to 8.6.0 (#44662)
woorelease: Update stable tag to 8.6.0
2024-02-19 13:33:35 +00:00
Néstor Soriano 89c6fbbb7c
Add the Receipts Rendering Engine (#43502) 2024-02-19 12:03:46 +01:00
Chi-Hsuan Huang 0b55f4ee12
Add php unit watcher and update unit test docs (#44681)
* Add phpunit-watcher to automatically rerun PHPUnit tests when source code changes

* Update unit tests docs

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-19 16:40:29 +08:00
Karol Manijak 76f6b0097e
Product Collection: Improve flaky E2E test (#44687)
* Remove unnecessary waitForResponse making a test flaky

* Add changelog
2024-02-19 09:08:11 +01:00
Manish Menaria ce00f299ea
Improve Accessibility in Product Collection Navigation (#44599)
* Add animation for client-side pagination

This includes:
- Addition of animation state management in the frontend file to control the visual transition between pagination states.
- Introduction of new SCSS rules for the start and finish animations, ensuring a seamless and visually appealing pagination experience.
- Modification of the PHP logic to inject necessary HTML for the animation to be applied.

These updates aim to provide a more engaging and responsive interface for users navigating through product collection.

* Enhance accessibility for product collection navigation

This commit introduces several improvements to enhance accessibility and user experience. Specifically, it adds new context properties to manage accessibility messages during the navigation process, including messages for loading and when a page has loaded. These changes ensure that screen reader users receive appropriate feedback during navigation.

Changes made:
- Added `accessibilityMessage`, `accessibilityLoadingMessage`, and `accessibilityLoadedMessage` properties to the `ProductCollectionStoreContext`. These properties store messages to be announced by screen readers during different stages of page navigation.
- Implemented logic in the product collection store to update the `accessibilityMessage` during the start of navigation (showing a loading message) and upon completion (showing a loaded message).
- Utilized a technique to ensure that consecutive identical messages are still announced by screen readers, by appending a no-break space to the message if it is the same as the previous one. This follows a pattern similar to the `@wordpress/a11y` package.
- In `ProductCollection.php`, enhanced the block's HTML output to include these new accessibility messages and integrated them with the existing interactive data attributes. This ensures that the front-end components are fully prepared to handle these accessibility enhancements.
- Added a new `div` with `class="screen-reader-text"` and `aria-live="polite"` attributes, which dynamically displays the accessibility message based on the navigation state. This div complements the visual pagination animation with an accessibility-focused mechanism for announcing the page load states to screen reader users.

By addressing accessibility considerations with these enhancements, we're making Product Collection navigation more inclusive and user-friendly for all users.

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-19 11:35:14 +05:30
Shiva Poudel a14c59b819
Fix - TGM Plugin activation calling undefined function wc_get_screen_ids (#44114)
Fixes an edge case where `WC_Admin_Notices::add_notices()` can be called, but the `wc_get_screen_ids()` function has not yet been defined.
2024-02-16 16:10:34 -08:00
Tarun Vijwani 4e6476a996
Adjust spacing in/between elements on the Cart and Checkout block pages (#44160)
* Add spacing in Checkout block page

* Add spacing in Order summary block

* Update responsive styles for order summary panel

* Update styles for cart and cart line items table

* Update styles for order summary and cross-sells products

* Remove unnecessary CSS styles from cart line items table and cart block

* Remove unused CSS class from cart line items table

* Fix linting errors

* Add changelog

* Fix changelog lint

* Update quantity selector style

* Increase the line-height of the set description and remove margin top from email field

* Add margin-top to order summary image and express payment margin adjustment

* Update styles for cart and checkout components

* Fix linting error

* Fix margin units in cart-cross-sells-products

* Replace em with px

* Add margin-top to payment method container

* Update styles for Cart block for mobile screen

* Update padding in cart style.scss
2024-02-17 01:50:11 +04:00
github-actions[bot] 91fcab7008
Delete changelog files based on PR 44704 (#44730)
Delete changelog files for 44704

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-16 20:59:11 +00:00
github-actions[bot] 86f77c89ef
Delete changelog files based on PR 44698 (#44728)
Delete changelog files for 44698

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-16 20:48:50 +00:00
github-actions[bot] e736b62e95
Delete changelog files based on PR 44680 (#44720)
Delete changelog files for 44680

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-16 20:42:57 +00:00
Jonathan Lane 19b51c83e7
Tests for restricted coupon creation (#44716)
* Tests for restricted coupon creation

* Add changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-02-16 15:43:42 -04:00
Tarun Vijwani 7528a7d65e
Fix removal of express payment method from state (#44633)
* Fix removal of express payment method from state

- Correct the logic for removing an express payment method from the availableExpressPaymentMethods state object.
- Previously, the deletion targeted the incorrect object, leading to incorrect change in state. Now, the correct entry is removed using destructuring and rest parameters, ensuring the express payment method is properly deleted.

* Revert "Fix removal of express payment method from state"

This reverts commit 8e24553794.

* Fix typo error in the reducer

* Add unit to make sure correct express payment method is removed

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Remove payment method descriptions from express and fix changelog

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-16 23:00:42 +04:00
github-actions[bot] ea50305d91
Delete changelog files based on PR 44676 (#44718)
Delete changelog files for 44676

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-16 18:29:45 +00:00
Seghir Nadir e8a403b406
add default values for admin address filters (#44704)
* add default values for "woocommerce_admin_shipping_fields" and "woocommerce_admin_billing_fields" filters

* use null instead
2024-02-16 15:10:26 +00:00
Tom Cafferkey 5a761ae05e
Move condition to check post status before rendering product (#44698)
Co-authored-by: Leif Singer <git@singer.sh>
2024-02-16 14:15:48 +00:00
Alba Rincón 2d2d626c03
[CYS on Core] Update homepage templates intro patterns (#44616)
* Add bottom margin to the pattern

* Increase the height of the pattern to match designs

* Replace intro patterns on Core

* Add changelog

* Update the default intro to be hero product split
2024-02-16 14:59:16 +01:00
Bart Kalisz 711f420ef1
[E2E] Stabilize flaky Add to Cart test (#44639)
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
2024-02-16 13:44:41 +00:00
Thomas Roberts 0d5c224520
Prevent script caching by using the WC core version to hash WC blocks assets instead of old WC Blocks version (#44676)
* use the WC core version to hash WC blocks assets

This is because the previous hash was generated using WC blocks version, which hasn't been updated since joining the monorepo.

* Make class variable to hold new prefixed wc version

* Add changelog

* Add var type to new class property

* Add prefix to prevent collission

* also use wc version for styles

* make variable public

---------

Co-authored-by: Nadir Seghir <nadir.seghir@gmail.com>
2024-02-16 14:07:05 +01:00
Tarun Vijwani 506499dec4
Prevent prefilling of the billing address with the shipping address in the Checkout block for the Guest Shopper (#44347)
* Clear billing address when useShippingAsBilling checkbox is unchecked

* Add billing address sync with server

* Add useRef hook to store previous billing address and update sync functions

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Revert "Add useRef hook to store previous billing address and update sync functions"

This reverts commit 7bc3312ab7.

* Added condition to clear address only for guest users

* Add E2E test to check billing address form is empty for Guest shopper

* Fix typo

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Updated docs-manifest.json

* Revert "Updated docs-manifest.json"

This reverts commit 20d578a9d6.

* Include company field in the E2E test

* Replace beforeAll with beforeEach

* Skip country reset to keep consistency with Shortcode Checkout

* Remove sync billing address on server

* Update E2E test to include the shipping address check

* Remove unsed  imports

* Clear address fields except country and state

* Optimize the billing and shipping address check with switch statement

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2024-02-16 16:10:51 +04:00
Sam Seay 5ecea1b8c2
Support testing many variants of a block at runtime via dynamically generated templates (#44223) 2024-02-17 01:00:36 +13:00
Manish Menaria e210302e8a
Product Collection: Add loading indicator for client-side pagination (#44571)
* Add animation for client-side pagination

This includes:
- Addition of animation state management in the frontend file to control the visual transition between pagination states.
- Introduction of new SCSS rules for the start and finish animations, ensuring a seamless and visually appealing pagination experience.
- Modification of the PHP logic to inject necessary HTML for the animation to be applied.

These updates aim to provide a more engaging and responsive interface for users navigating through product collection.

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Allow user clicks under product collection's loading animation

This commit enhances the user experience of the loading animation for the product collection block. Changes include:

- Specifying `transform-origin: 0% 0%;` directly within the block's initial style to indicate the animation should start from the left
- Adding `pointer-events: none;` to allow user interactions with elements underneath the loading animation, thus improving usability by not blocking clicks.

Additionally, redundant `transform-origin` properties were removed from the `@keyframes` declaration to clean up the code and avoid unnecessary repetition. This simplification contributes to both the maintainability and readability of the stylesheet.

* Fix linting errors in SCSS file

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-16 15:43:58 +05:30
Chi-Hsuan Huang eb2b1fef1d
Add checks and unit tests to rule processors (#44448)
* Add checks and unit tests to rule processors

* Add checks and unit tests to PluginsActivatedRuleProcessor

* Add checks and unit tests to PluginsVersionRuleProcessor

* Add checks and unit tests to PublishAfterTimeRuleProcessor

* Add checks and unit tests to PublishBeforeTimeRuleProcessor and fix PublishAfterTimeRuleProcessor

* Add checks and unit tests to WCAdminActiveForRuleProcessor

* Add unit tests and refactor TotalPaymentsVolumeProcessor

* Fix unit tests

* Add changelog

* Fix unit tests

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/base-location-state-rule-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/wcadmin-active-for-rule-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/wcadmin-active-for-rule-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/wcadmin-active-for-rule-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/wcadmin-active-for-rule-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/total-payments-volume-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/is-woo-express-rule-processer.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/is-woo-express-rule-processer.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Use Throwable instead

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/total-payments-volume-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/src/Admin/RemoteInboxNotifications/BaseLocationCountryRuleProcessor.php

Co-authored-by: RJ <27843274+rjchow@users.noreply.github.com>

* Update plugins/woocommerce/src/Admin/RemoteInboxNotifications/PluginsActivatedRuleProcessor.php

Co-authored-by: RJ <27843274+rjchow@users.noreply.github.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/plugin-version-rule-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/publish-after-time-rule-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/publish-before-time-rule-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Update plugins/woocommerce/tests/legacy/unit-tests/woocommerce-admin/remote-inbox-notifications/total-payments-volume-processor.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Address PR feedback

---------

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
Co-authored-by: RJ <27843274+rjchow@users.noreply.github.com>
2024-02-16 10:10:15 +00:00
Tung Du 0425857b7f
[Experimental] Fix Active Filter chips style (#44682) 2024-02-16 10:09:49 +00:00
Chi-Hsuan Huang 75118fbe40
Add checks and unit tests to Transformers (#44634)
* Add checks and unit tests to Transformers

* Add changelog

* Update docs

* Fix test

* Set the default value to an empty array

* Set default value to array() for ArrayColumn
2024-02-16 16:51:09 +08:00
Ilyas Foo 0ea64cf93b
Add error handling and tests for ShippingPartnerSuggestions (#44641)
* Add error handling and tests for ShippingPartnerSuggestions, add missed generic error handling for RemoteFreeExtension evaluator

* Changelog
2024-02-16 15:18:30 +08:00
Vedanshu Jain 1d91b89d16
Dont render attribution metabox for non-supported order types. (#44680)
* Dont render attribution metabox for non-supported order types.

* Use a screen check instead of order type check for better compat.

* phpcs fix

* Remove unnecessary call.
2024-02-16 12:39:25 +05:30
Manish Menaria 017b5e249a
Product Collection: Handle empty block content in process_pagination_links method (#44575)
* Handle empty block content in process_pagination_links method

This commit introduces a check for empty block content in the `process_pagination_links` method of the `ProductCollection` class. This change ensures that if the block content is empty, the method will immediately return the original content without attempting further processing. This enhancement prevents potential errors or unnecessary processing steps on empty content.

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-16 11:35:59 +05:30
Sam Seay f513ce7c25
[Experimental] Refresh product collections that don't support the interactivity API (#44631) 2024-02-16 15:51:42 +13:00
ericmulder 4cf4868855
fix fatal string to array conversion error in get_full_size_image_dim… (#40395)
Ensures that even if `wp_get_attachment_metadata` returns an unexpected value due to a filter, the `get_full_size_image_dimensions` method will handle it correctly and not throw an error.

Fixes #40393

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-02-15 15:45:10 -08:00
Adrian Moldovan ddf908d7fb
[e2e tests] Enhance product reviews tests (#44644)
* Rename test

* Updated tests to use work with more reviews

* Add changelog

* Add new test: can filter the reviews by product

* Fix lint errors and warnings
2024-02-15 13:30:47 -08:00
Jonathan Lane fce80c40c0
E2e/customer emails (#44622)
* Adds tests for user account emails

* Add changelog

* Fix linting issues (code formatting)

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-02-15 13:07:31 -08:00
nigeljamesstevenson a0b72b0546
Cherry-pick #301 into trunk (#44667)
Checkout changes from #293

Co-authored-by: Rodel Calasagsag <rodel.calasagsag@automattic.com>
2024-02-15 21:06:37 +00:00
nigeljamesstevenson 45fd1ab3f0
Cherry-pick #298 into trunk (#44666)
* add wc_get_valid_product_statuses

* add support for sku

* add unit tests for the `product_page` shortcode

* add `woocommerce_shortcode_product_page_override_read_permissions_unpublished` filter

* keep a list of invalid statuses instead of valid ones and allow overriding it

* move deprecation notice handling into methods

* appease the linter

* remove `visibility` attribute

* ensure we remove the filters that we add in a test

* allow overriding read permissions in both directions (or not at all)

* add sku-based tests and remove some superfluous testing data and asserts

* add back in missing variable

* remove superfluous `hidden` visibilities

* add changelog file

---------

Co-authored-by: Leif Singer <git@singer.sh>
2024-02-15 21:06:25 +00:00
nigeljamesstevenson 58781b796c
Cherry-pick #295 into trunk (#44665)
* Prevent file-sniffing through the product editor's downloadable files UI.

Before now, files that do not exist and files that exist outside an approved directory led to different error messages. This meant the latter could be taken as an indicator that a given file exists.

* Correct initial indent.

---------

Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
2024-02-15 21:06:14 +00:00
Ron Rennick 5ec07c1e5f
update states, expected plugins in api tests (#44650)
* update states, expected plugins in api tests

* add changelog

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-02-15 14:22:24 -04:00
Jonathan Lane 2812adc5af
Add sharding to Blocks e2e tests (#44440)
* Add sharding to Blocks e2e tests

* Changelog

* Push a change to Blocks README to trigger tests

* Fix syntax

* Fixed again

* Try again

* Trying to get the shard number

* Shard names

* fix E2E test

* complete all the jobs

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2024-02-15 09:27:17 -08:00
Alexandre Lara 452c522b95
[DOC] Resolve incorrect branch references in Gutenberg links (#44566)
* Fix Gutenberg links in the docs pointing to the wrong branch

* Add changefile(s) from automation for the following project(s): @woocommerce/notices, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/components, woocommerce-blocks, woocommerce-beta-tester, woo-ai

* Fix markdown lint errors

* Fix wrong link in the docs

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-15 14:13:28 -03:00
Jorge A. Torres f79bf3a340
Add `wc hpos backfill` tool to backfill from/to either datastore (#44281)
* Fix docblock

* First pass at backfill CLI tool

* Use ‘posts’ instead of ‘cpt’ in legacy data handler

* Include posts to HPOS migrator in LegacyDataHandler

* Add backfill method to legacy data handler

* Add tests

* Add changelog

* Appease linter

* Rename <id> to <order_id> in WP-CLI docblock

* Make from/to datastore argument mandatory

* Improve handling of invalid order types

* PHPCS fixes
2024-02-15 08:13:23 -08:00
Thomas Roberts c7eb05ac5e
Remove Additional Checkout Fields entry from 8.5 changelog (#44642) 2024-02-15 06:46:48 -08:00
Alba Rincón 7440082381
[CYS on Core] Update image to have a better resolution (#44611)
* Update image to have a better resolution

* Add changelog
2024-02-15 14:28:24 +01:00
Alba Rincón c9fe049934
[CYS - Core] Update the subheading copy of the transitional page (#44603)
* Update the subheading copy of the transitional page

* Add changelog
2024-02-15 13:59:43 +01:00
Justin Palmer b439a01cd5
Add mobile app order attribution source (#44519)
* Add mobile_app order attribution source
2024-02-15 13:44:02 +01:00
Fernando Marichal f09bc85875
Fix pre-publish modal styles (#44562)
* Fix pre-publish modal styles

* Improve styles

* Add changelog

* Add vars to styles

# Conflicts:
#	packages/js/product-editor/src/components/prepublish-panel/style.scss

* Fix sidebar styles

* Add changelog

* add overflow auto

* Fix quotes
2024-02-15 09:36:59 -03:00
Justin Palmer 406dcac669
Order attribution - avoid attributing AJAX-checkouts to Web Admin (#44219)
* Ensure is_admin AND ! wp_doing_ajax for setting Web admin source

* Better control to permit possible wp-admin ajax order creation
2024-02-15 12:38:09 +01:00
Albert Juhé Lluveras dd56a3ba61
Clean up block templates after running e2e tests (#44600)
* Clean up block templates after running e2e tests

* Add changelog entry

* Fix linting
2024-02-15 08:17:12 +01:00
Viktor Szépe 49557b3229
Fix reference to WC_API_Server (#37054)
* Fix reference to WC_API_Server

* Add changelog
2024-02-15 07:14:36 +00:00
RJ 141c2e4399
add/explat experiment name validation (#44535) 2024-02-15 12:35:23 +08:00
Barry Hughes 94c0578029
Session handler: restore use of _table property, for consistency with other methods. (#44517)
* Restore use of _table property, for consistency with other methods.

* Ignore interpolated/unprepared variable warning (we're referencing a table name).
2024-02-14 19:22:53 -08:00
Chi-Hsuan Huang a5711d03ca
Improve remote specifications transient handling and error management (#44384)
* Add set_specs_transient helper method

* Store default specs into transient when spec rules fails

* Add changelog

* Fix automatic conversion of false to array is deprecated

* Update plugins/woocommerce/src/Admin/DataSourcePoller.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Use set_specs_transient

* Handle evaluation error properly

* Add unit tests

* Update init

* Update changelog

* Update changelog

* Update plugins/woocommerce/src/Admin/Features/PaymentGatewaySuggestions/EvaluateSuggestion.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

* Change expires time compare operator to <= for safety

---------

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2024-02-15 11:00:36 +08:00
Kazuto Takeshita 71b6e74615
Make the structured data price of group products refer to the latest child product price (#42808)
* Changed Make the structured data price of group products refer to the latest child product price.

* Add changelog

* PHPCS fixes

---------

Co-authored-by: Jorge Torres <jorge.torres@automattic.com>
2024-02-15 02:58:21 +00:00
Jonathan Lane c3b355a53f
Remove test publishing (#44592) 2024-02-14 16:41:11 -08:00
nigeljamesstevenson 83fc7a88f3
Update Action Scheduler to 3.7.2 (#44628)
* Update Action Scheduler to 3.7.2
2024-02-14 16:28:02 -08:00
Paul Sealock 0f27449454
Update states.php -> Add Morocco regions (#41769)
Add regions for Morocco according to CLDR.
2024-02-14 16:17:09 -08:00
Christopher Allford eb543f564f
Fixed `@woocomerce/classic-assets` Watch Command (#44627)
The `watch:build` setup in this package does not conform to
the expects format and so the build command was not being
run. This fixes that and ensures it gets executed correctly.
2024-02-14 15:53:14 -08:00
Thomas Roberts 1ddd904b26
Add additional checkout fields documentation (#43782)
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Mike Jolley <mike.jolley@me.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-02-14 13:48:03 -08:00
Mike Jolley b94c14e745
[Experiment] Fix additional address field validation notices (#44615) 2024-02-14 10:02:30 -08:00
Matt Sherman d279466eb3
[Product Editor] Fix blank editor flash when loading product (#43840)
* EditorLoadingContext

* Use EditorLoadingContext

* Remove fallbacks

* Make sure metadata exists before using it

* Add header loading state

* Do not return skeleton

* Use EditorLoadingContext

* Update editor loading state

* Remove ProductPageSkeleton

* Remove unused import

* Remove unused import

* Handle undefined variationId and parentId in VariationSwitcherFooter

* Remove ProductPageSkeleton

* Include productId in determination of whether editor is loading

* Handle variation loading

* Fix rebase merge conflict mistakes

* Fix layout margins

* Show welcome tour and feedback bar after editor has loaded

* Changelogs

* Make loading context experimental
2024-02-14 09:57:17 -05:00
Bart Kalisz 2432b3b22e
[E2E] Update the blocks E2E setup guide (#44468)
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2024-02-14 16:00:52 +02:00
nigeljamesstevenson fd24ff80e0
Delete plugins/woocommerce/changelog/kevinbates-patch-1-1
File removed as part of actioning CFE pf59Ax-L1-p2
2024-02-14 13:36:42 +00:00
Alba Rincón bf938b0bd3
[CYS] Update `Hero product chessboard` pattern (#44553)
* Reduce the `woocommerce-customize-store-banner-content` width to better fit the copy

* Add changelog

* Remove the image placeholder and improve margins

* Add changelog
2024-02-14 14:28:40 +01:00
Ilyas Foo c0804827a4
Improve tasklist performance, add prop to track (#44442)
* Improve tasklist performance, add prop to track

* Changelog

* Lint
2024-02-14 21:17:08 +08:00
Ilyas Foo 8ba2942099
Fix type handling and default value for remote API transformers (#44418)
* Add default value check and parameter, change transformer behaviour around defaults and types, update and add tests

* Changelog
2024-02-14 21:16:39 +08:00
Alba Rincón e5e641180b
Update the `Product gallery` pattern title (#44604)
* Update the product gallery title

* Add changlog
2024-02-14 13:55:33 +01:00
github-actions[bot] e00f49a0b1
Delete changelog files based on PR 44526 (#44608)
Delete changelog files for 44526

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-14 13:19:22 +01:00
github-actions[bot] d12cc1a770
Delete changelog files based on PR 44318 (#44606)
Delete changelog files for 44318

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-14 11:46:04 +00:00
Alba Rincón 0e1239867a
[CYS] Reduce the width of the "Design your own" text box on the Intro screen (#44546)
* Reduce the `woocommerce-customize-store-banner-content` width to better fit the copy

* Add changelog

* Increase the width to fit the sentence in one line
2024-02-14 11:44:41 +01:00
Justin Palmer 754779e00e
Simplify Customer history calculation (#44318)
* Only show customer history box if WooCommerce Analytics are enabled

* Use requests to /reports/customers endpoint for customer history data

* Don't reinvent the wheel - use customer analytics data for Cust. Hist.

* Remove Customer Order Count from tracks data

* Simplify the customer history process

* Omit Customer history content when adding a new order in wp-admin

* Early return to reduce complexity

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>

* Simplify matching customers

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>

* Remove unnecessary method

* Use Customers Query directly to get customer history data

* Template version bump

* Move the customers query to CustomerHistory

* Only show customer history box if WooCommerce Analytics are enabled

* Use requests to /reports/customers endpoint for customer history data

* Don't reinvent the wheel - use customer analytics data for Cust. Hist.

* Remove Customer Order Count from tracks data

* Simplify the customer history process

* Style and legibility fixes

* Template version bump

* Add changelog

* Omit Customer history content when adding a new order in wp-admin

* Early return to reduce complexity

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>

* Simplify matching customers

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>

* Remove unnecessary method

* Use Customers Query directly to get customer history data

* Template version bump

* Move the customers query to CustomerHistory

* Match default params

* Simplify Customer Query params (cache key match with API is much harder)

---------

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>
2024-02-14 11:38:10 +01:00
Albert Juhé Lluveras 13ded5be76
Minor typo and text styling fixes (#44583)
* Fix typos in PHP comments

* Fix styling of tests/README.md

* Other linting fixes

* Add changelog file
2024-02-14 11:13:28 +01:00
Luigi Teschio cb1ae99a77
Core - CYS: fix fonts not loaded on the font picker iframes (#44586)
* Core - CYS: fix fonts not loaded on the font picker iframes

* add changelog

* fix lint error
2024-02-14 10:30:18 +01:00
Alba Rincón 0f198da833
[CYS] Update "Start customizing your store" task description on Core (#44584)
* Update customized store task description on Core

* Add changelog
2024-02-14 09:08:16 +01:00
Alba Rincón da8fee41aa
[CYS] Update the "Change your homepage" description on Core (#44579)
* Update the "Change your homepage" description on Core

* Add changelog
2024-02-14 09:07:55 +01:00
Corey McKrill b2d9d6f118
Logging: Add filter to modify the list of expired logs to be deleted (#44380)
* Logging: Add filter to modify the list of expired logs to be deleted

This provides a way for extensions to ensure that some log files are
retained for a different time period than the normal
retention period setting.

* phpcs cleanup

* Add changelog file

* Add note to settings view when hook has filter on it

Also remove the note about retention days from the log entry that's
generated when expired log files are deleted
2024-02-13 12:42:38 -08:00
Matt Sherman a619aba5ee
Product Editor: load translations (#44520)
* Clarify when the custom message is used in useConfirmUnsavedChanges

* Changelog

* Load translations for wc-navigation and wc-product-editor scripts

* Changelog
2024-02-13 15:38:04 -05:00
Mike Jolley 51a9da9f2c
[Experiment] Additional field extensible sanitisation and validation handling (#44463)
* Fix field saving in account area

* Check for error notices in core form handler

* Tidy up additional field saving in api

* sanitize_additional_fields does not expect request

* Validate fields with extra context

* Revert "Tidy up additional field saving in api"

This reverts commit 872c8f4afb.

* Tidy update_customer_from_request

* validate_field docs

* Validation and sanitization hooks

* Address schema validates fields and address location

* Validate locations

* Frontend validation

* Remove empty error response

* Document account details hook

* field_key

* Improve validation routine

* Changelog

* Swap key and value in woocommerce_blocks_validate_additional_field hook

* woocommerce_blocks_validate_location_X_fields

* Validation and sanitization callbacks

* Update try catch blocks
2024-02-13 19:40:55 +01:00
Mike Jolley cea1c10122
Fix coupon codes containing apostrophes (#40998)
* Use wp_kses_post to sanitize coupon codes

* Fix notice (php 8)

* Add changefile(s) from automation for the following project(s): woocommerce

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove duplicate changelog entry

* Try alternative wp_kses function

* Account for unfiltered_html

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
2024-02-13 17:01:49 +00:00
Alba Rincón a48e2111b8
[CYS] Add title to the "Product Gallery" pattern (#44556)
* Add title to the "Product Gallery" pattern

* Add changelog
2024-02-13 14:40:49 +01:00
Luigi Teschio 69728b70e9
CYS - Core: catch error when font installation fails (#44559)
* CYS - Core: catch error when font installation fails

* add changelog

* reduce the requests number
2024-02-13 13:15:52 +00:00
Luigi Teschio a2d35b0563
CYS - Core: install fonts only when the tracking is enabled (#44558)
* CYS - Core: install fonts only when the tracking is enabled

* add a parameter to reduce the response payload

* add changelog
2024-02-13 14:03:06 +01:00
Chris Lilitsas 8d5c0dae83
Ensure proper handling of product-related taxonomies in filtering logic (#44230)
* Fix product-related whitelisting in Product Query and Collection blocks

* Fix Product Query Utility

* Remove store-api related fix

* Changelog
2024-02-13 13:59:02 +02:00
Adrian Moldovan e863c02551
[e2e tests] Add tests for managing product images in block editor (#44470) 2024-02-13 01:20:48 +02:00
Karol Manijak 2750e79224
Getting the Product Collection location/context (#43997)
* Early implementation of getting the Product Collection location/context

* Solve the problem of async fetch in the hook

* Improve typing

* Import core data store instead of hardcoding store name

* Recognise Product Category and Product Tag

* Remove attr property from archive location data

* Unify states naming

* Add TODO entry

* Display the info about the location of Product Collection

* Improve the typing

* Recognise if Product Collection is nested in Single Product block

* Improve cases descriptions and add some defaults to potentially undefined values

* Change the taxonomies sourceData

* Recognise Mini Cart as Cart context

* Recognise attribute as archive contect but no taxonomy

* Refactor the function into single useEffect and clean it up

* Fix typo

* Remove unnecessary import

* Stop rendering the output in Editor (it was for demo purposes)

* Pass location data to Product Template query in Editor

* Replace templateSlugs literal strings with object reference

* Rename parseResponse function to more specific name getIdFromResponse

* Add dpeendency array to useEffect

* Refactor templates detection

* Use full taxonomy names instead of shortcuts

* Write down scenarios to test

* Working scenario

* Change the verification way for more robust

* Add more robust methods to include Single Product block

* Add test Product Collection in Single Product block in a Single Product Template

* Imprvoe the order of veryfing the requests

* Fix linter issues. Although that makes code less readable

* Improve the useGetLocation typing so it's more generic

* Rework the E2E tests regarding location of Product Collection and limit their number

* Bring back necessary eslint-disable

* Remove unused imports

* Uncomment line required for other tests

* Add changelog

* Rename constant from BLOCK_NAME to BLOCK_SLUG as it's a slug

* Add a BLOCK_NAME constant and replace the literal block name usages in E2E tests

* Fix post merge issues

* Fix test after merge

* Adjust the tests to kick off waiting for request before action that triggers them
2024-02-12 20:59:40 +01:00
Karol Manijak cc0d7368e9
Add missing Beta label to Product Filters E2E tests (#44564)
* Add missing Beta label to Product Filters E2E tests

* Add changelog
2024-02-12 20:26:19 +01:00
Néstor Soriano 60cc3df264
Fix for the dependency injection container resolution by tag (#44496)
* Fix for the DI container resolution by tag.

This fixes an issue that arises when using service providers inheriting
from AbstractInterfaceServiceProvider: if one of these providers
registers classes both by name and by tag, and one of its registered
classes is requested with 'get' by name before a list of classes is
requested by tag, then that service provider gets locked as the only one
providing that tag, and the others get ignored. This is due to the fact
that container definitions are created "on the fly" as needed and the
base 'get' method won't try to register additional providers if the
requested tag is already provided by at least one of the already
existing definitions.

* Add changelog file

* Add a unit test for the fix
2024-02-12 10:21:51 -08:00
Luigi Teschio 79ff29138c
CYS - Core: fix fonts not loaded after the setup (#44550)
* CYS - Core: fix fonts not loaded after the setup

* add changelog
2024-02-12 18:33:19 +01:00
Luigi Teschio 3919b8361d
CYS - Core: Add async font installation (#44473)
* CYS - Core: Ensure that the bodoni font is loaded

* CYS-Core: install fonts via async job

* ensure that the font are installed only when the Font Library is installed

* improve documentation and validation

* add changelog

* remove unused class

* remove not necessary changes

* improve documentation

* improving naming

* improve documentation

* fix PHP linter

* fix phpdoc comment
2024-02-12 16:23:21 +00:00
Luigi Teschio 738a57fe98
Core - CYS: fix inter font not applied (#44544)
* Core - CYS: fix inter font not applied

* remove logs

* add changelog
2024-02-12 14:09:04 +00:00
Sam Seay 143388dae8
[Experimental] Add (Beta) suffix to block name of new filter blocks (#44487) 2024-02-12 11:15:49 +00:00
Manish Menaria 4ae60196ea
Product Collection: Make attributes available in rest_product_query hook (#44150)
* Make attributes available in rest_product_query hook

This commit introduces the 'includeInQueryContext' attribute to the 'woocommerce/product-collection' block and updates the 'woocommerce/product-template' block to consume this new attribute.

Key Changes:
1. `woocommerce/product-collection` Block:
   - A new attribute 'includeInQueryContext' is added in `block.json`. This attribute is designed to hold a list of attribute names relevant for the query context.
   - The 'includeInQueryContext' attribute is included in the `providesContext` field to ensure its availability to child blocks.
   - In `constants.ts`, default values for 'includeInQueryContext' are defined, specifying 'collection' and 'id' as initial attributes.
   - The `types.ts` file is updated with a comment explaining the purpose of 'includeInQueryContext'.

2. `woocommerce/product-template` Block:
   - Modified `block.json` to utilize the 'includeInQueryContext' context provided by the parent `woocommerce/product-collection` block.
   - The `edit.tsx` file is updated to handle the new context. It uses a newly added utility function `useProductCollectionBlockAttributes` from `utils.tsx` to access parent block attributes.
   - The `utils.tsx` file is introduced, containing the `useProductCollectionBlockAttributes` hook. This hook is responsible for finding the parent 'woocommerce/product-collection' block and returning its attributes.
   - Within `edit.tsx`, logic is added to create a query context object based on the attributes specified in 'includeInQueryContext', enhancing the block's ability to dynamically adapt to changes.

* Remove commented code

* Rename query context attribute and optimize parent block detection

This commit introduces two significant changes aimed at improving code readability and efficiency.

1. **Renaming of Query Context Attribute:**
   - The attribute `includeInQueryContext` has been renamed to `queryContextIncludes` across various files, including block JSON configurations and TypeScript definitions. This change makes the attribute's purpose more intuitive, indicating it specifies which attributes to include in the query context.

2. **Optimized Parent Block Detection:**
   - Replaced the use of `getBlockParents` with `getBlockParentsByBlockName` in utility functions to find the closest Product Collection block. This optimization allows for a more direct and efficient way to identify the relevant parent block by specifying the block name, reducing unnecessary iterations and improving code performance.

* Streamline query context construction in product template

Key Changes:
- **Introduction of `useProductCollectionQueryContext` Hook:** This new hook takes the `clientId` and `queryContextIncludes` as inputs and returns a query context object. It encapsulates the logic for fetching parent product collection block attributes and constructing the query context accordingly. This abstraction simplifies the edit component's logic, focusing on the essentials and improving code readability.
- **Optimization of Parent Block Detection:** The hook uses `getBlockParentsByBlockName` to accurately and efficiently find the closest parent `Product Collection` block, minimizing the overhead previously associated with traversing the block hierarchy.

* Always include `collection` and `id` in query context

* Minor refactor

* Enhance query context handling for more maintainable code

- Introduced `DEFAULT_QUERY_CONTEXT_ATTRIBUTES` in `edit.tsx` to maintain a clear list of default query context attributes.
- Modified `ProductTemplateEdit` to automatically include these default attributes in `queryContextIncludes`, ensuring they are always part of the query context without manual initialization.
- Simplified `useProductCollectionQueryContext` in `utils.tsx` by removing static initialization of 'collection' and 'id', relying instead on the dynamic addition of necessary attributes from `queryContextIncludes`.

This refactor enhances the maintainability and clarity of the code, ensuring a solid foundation for future enhancements and features.

* Add E2E tests for Product Collection query context

- Added a new test suite 'Query Context in Editor' to validate the correctness of query context parameters when the Product Collection block is used. This suite ensures that:
  - For the 'Product Catalog', only the ID is sent in the query context, confirming that collection-specific parameters are excluded when not relevant.
  - For collections such as 'On Sale', the collection name is correctly passed in the query context, validating that the block dynamically adjusts query parameters based on its settings.

- Introduced a new utility method `setupAndFetchQueryContextURL` in `product-collection.page.ts`. This method automates the setup of a post with the Product Collection block and fetches the URL with query context parameters, facilitating the validation of query context handling.

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Fix edge case when `queryContextIncludes` is not defined

- Initializing `queryContextIncludes` with a default empty array directly in the destructuring assignment of the component's props. This approach ensures that `queryContextIncludes` is always an array, simplifying downstream logic.
- Creating a new constant `queryContextIncludesWithDefaults` to hold the combination of `queryContextIncludes` and `DEFAULT_QUERY_CONTEXT_ATTRIBUTES`. This step avoids directly mutating the `queryContextIncludes` prop, aligning with best practices for functional purity and making the code easier to understand and debug.
- Updating the `useProductCollectionQueryContext` hook call to use `queryContextIncludesWithDefaults`. This ensures that the default query context attributes are consistently included without altering the original prop.

These adjustments not only enhance the code's maintainability but also ensure more predictable behavior by avoiding side effects related to parameter mutation.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-12 14:15:24 +05:30
Karol Manijak 96f3e3c98b
Remove global pageObject action from Product Collection tests and add it as before each for specific tests (#44407)
* Remove global pageObject action from Product Collection tests and add it as before all for specific tests

* Replace beforeAll with beforeEach

* Adjust the beforeEach usage

* Add changelog

* Refresh locators when adding Single Product block as it's not initialised in pageObject

* Change method dedicated to templates to one dedicated to posts
2024-02-12 09:44:02 +01:00
Alba Rincón 7f8b1e201c
[CYS] Ensure the font family for buttons match the one assigned for the content, not the title (#44458)
* Fix select font for buttons

* Add changelog
2024-02-12 09:25:36 +01:00
github-actions[bot] cd43dd1116
Delete changelog files based on PR 44494 (#44534)
Delete changelog files for 44494

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-12 10:11:14 +08:00
kevinbates abc6993678
Update woocommerce.php (#44527)
* Update woocommerce.php

* Add changelog file
2024-02-09 17:27:18 -08:00
kevinbates 578f711730
Update readme.txt (#44526)
* Update readme.txt

Removing Woo Express section
Correcting eCommerce -> ecommerce

* Add changelog file
2024-02-09 17:26:57 -08:00
Fernando Marichal 30f66aa94f
[Product editor block]: Rename the Add button to Publish (#44461)
* Rename Publish button

* Fix e2e tests

* Add changelog

* Add WC changelog

* Modify "Product published" copy
2024-02-09 15:19:35 -03:00
Albert Juhé Lluveras 2f5eaa1f4c
BlockTemplateUtils cleanup (#44256)
* Remove 'get_block_template' backwards compatibility check

* Add back get_block_template as a deprecated function

* Deprecate BlockTemplateUtils::filter_block_templates_by_feature_flag()

* Replace 'default template' with 'fallback template'

* Only load BlockTemplatesController in block themes

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Remove unnecessary WP version comparison

* Revert "Only load BlockTemplatesController in block themes"

This reverts commit 8e1ed347d61b7ae5e8b8b96fa73b410565570f01.

* Remove deprecated functions, as they are marked as internal

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-09 18:50:08 +01:00
nigeljamesstevenson c8f8299f02
Remove WooCommerce Blocks entry from the WooCommerce status page (#44412)
* Remove WooCommerce Blocks entry from the WooCommerce status page

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-09 17:44:14 +00:00
Alexandre Lara 7ec1b7f3a1
Product Gallery block: Add logic to trap keyboard focus within the Product Gallery Pop-Up (#44439)
* Add logic to trap keyboard focus inside the Product Gallery Pop-Up

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Remove unnecessary condition

* Fix issue with keyboard focus trap not working within the Pop-Up

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-09 13:43:51 -03:00
Bartosz Budzanowski 8eea9f77ff
Update marketplace suggestion wording. (#44494)
* Update description wording for Marketplace Suggestions, Show Suggestions setting.

* Add changelog file.

* Update tests.
2024-02-09 15:37:39 +00:00
Hicham Boushaba a903aa8633
Revert the override of the Jetpack data endpoint (#44390)
Revert PR #38987
2024-02-09 07:22:51 -08:00
Álvaro Thomas accbf30da5
[e2e] Can Edit and Delete Product Review (#44411)
* Update product-review

Add test to edit a product review and another test to delete it

* Add changefile(s) from automation for the following project(s): woocommerce

* Add changefile(s) from automation for the following project(s): woocommerce

* Added test data in fixture and changelog extra line

Change test data use from constants at the top to test data created in a fixture for each test. Also, added extra line to the changelog file.

* Add changefile(s) from automation for the following project(s): woocommerce

* Update changelog

Fixed mixed lines on previous commit.

* Add changefile(s) from automation for the following project(s): woocommerce

* Update plugins/woocommerce/tests/e2e-pw/tests/merchant/product-reviews.spec.js

Remove edited timestamp

Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>

* Update plugins/woocommerce/tests/e2e-pw/tests/merchant/product-reviews.spec.js

Update hover action to review id.

Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>

* Update plugins/woocommerce/tests/e2e-pw/tests/merchant/product-reviews.spec.js

Change Quick Edit button to reach review identifier

Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>

* Update plugins/woocommerce/tests/e2e-pw/tests/merchant/product-reviews.spec.js

Replace updated review check to single line assert

Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>

* Update plugins/woocommerce/tests/e2e-pw/tests/merchant/product-reviews.spec.js

Hover to edit on review identifier

Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>

* Update plugins/woocommerce/tests/e2e-pw/tests/merchant/product-reviews.spec.js

Point to trash a review to its identifier.

Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>

* Update plugins/woocommerce/tests/e2e-pw/tests/merchant/product-reviews.spec.js

Point to trash a review to its identifier.

Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>

* Added Review Edit test

Added Review Edit test apart from Quick Edit test. Included assertions to verify that the review has been edited and can be seen both in the reviews list and the shop's page.

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-02-09 16:12:16 +01:00
Alexandre Lara 74c6fcad2d
Product Gallery block > Pop-Up: Fix overlay sizing issue (#44479)
* Fix overlay issue when Product Gallery Pop-Up is open

* Fix stylelint error

* Add changelog

* Fix e2e tests for Product Gallery Pop-Up
2024-02-09 11:38:41 -03:00
Luigi Teschio b91762be69
CYS - Core: Ensure that the Bodoni font is loaded (#44464)
* CYS - Core: Ensure that the bodoni font is loaded

* add changelog
2024-02-09 15:13:38 +01:00
Corey McKrill 1af675e502
Logging: Add check for file key when parsing backtrace (#44486)
Ensures that no undefined index warnings are thrown while parsing
the backtrace to determine a log's source.

Fixes #44475
2024-02-09 18:06:50 +05:30
Albert Juhé Lluveras 1905534fb8
Improve password-protected Single Product block template to verify correct template is displayed after correct password is introduced (#44452)
* Improve password-protected Single Product block template to verify correct template is displayed after correct password is introduced

* Add changelog entry
2024-02-09 10:53:27 +01:00
Karol Manijak db082421ad
Product Collection: fix assymmetrical padding in Editor (#44403)
* Import editor.scss styles of Product Templayte and increase specificity

* Add changelog

* Add ts ignore

* Revert changing eslint-disable as it conficts with another rule creating more errors
2024-02-09 09:42:29 +01:00
Albert Juhé Lluveras f65a7e45a5
Fix e2e tests due to duplicate rows when clearing customizations (#44454)
* Fix e2e tests due to duplicate rows when clearing customizations

* Add changelog entry
2024-02-08 23:15:11 +01:00
Christopher Allford 8b4efc9c03
Added Missing Blocks Linting Change Trigger (#44233)
* Added Missing LInting Changes

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-02-08 13:48:03 -08:00
Fernando Marichal a89d2572f0
Product Editor: Subsection block (#43725)
* Add SubsectionInterface

* Replace use of add_section inside sections

* Add Subsection class

* Add subsection block component

* Add subsection-description block

* Update deprecation note

* Add changelogs

* Fix lint

* Add get_subsection_by_id

* Add tests

* Fix ProductFormTemplate lint

* Fix CustomProductFormTemplateTest lint

* fix readme

* Fix lint

* Replace add_section with add_subsection

* Fix readme

* Fix markdown file multiple headings duplication
2024-02-08 15:44:49 -03:00
Vedanshu Jain 4daa3f31f1
Build path info directly instead of loading REST API. (#44080)
* Build path directly instead of directly loading REST API.

* Add changelog.

* Make shapes of routes array consistent with whats returned in API.

* Add doc comment.

* Fix missing slash typo

* Make linter happy.

* Add doc block for filter.

* Short hydration logic to use controller directly.

* Rename _get_path to get_path_regex for accuracy and lint.

* Restore nonce check bypass for internal hydration requests.

* Restore cache notice check to allow controllers to start from clean slate.

* Update since tag.
2024-02-08 16:36:21 +00:00
Luigi Teschio abdf0c3f8a
CYS - Core: ensure that the the default font pair and color pair are selected (#44309)
* CYS - Core: ensure that the default font and color are selected

* remove console.log

* Add changefile(s) from automation for the following project(s): woocommerce

* add comment

* add changelog

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-08 15:08:38 +00:00
Mike Jolley 509ac4ffd7
Fix deprecation notices for legacy order item keys. (#44362)
* Declare legacy variables to prevent PHP notices

* changelog
2024-02-08 12:51:34 +00:00
Alba Rincón 5af5f9b235
[CYS on Core] Ensure the size of fonts is not affected by the font family changes (#44424)
* Fix fonts affecting the size of each other

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove log

* Removae old typography settings before applying new ones

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-08 13:38:20 +01:00
Jonathan Lane d15bd09c39
Update daily workflow to sharding (#44330)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-02-08 11:45:03 +02:00
Albert Juhé Lluveras e0f4ed8509
Add automated tests to verify specific product block templates are rendered (#44363)
* Add automated tests to verify specific product templates are rendered

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-08 10:18:33 +01:00
Chris Lilitsas 60c17eb126
Include the selected collection in the product collection block context (#43247)
* Include collection attribute in the block context

* add 'collection' to useContext for Product Template

* Changelog

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2024-02-08 10:55:05 +02:00
Adrian Moldovan 035eb2dade
[e2e tests] Add new tests for up-sells and cross-sells (#44154)
* Add tests skeleton

* Add up-sell test

* Add changelog

* Add test for cross-sells

* Renamed spec file

* Add tests for remove up-sells and remove cross-sells

* Update the viewport

* Extract the update product action into a function

* Fix the expect for up-sells

* Add a poll mechanism when checking that up-sells were removed.

* * Use backspace to remove linked items

* Add a check for up-sells before removing them to prevent a false negative result

* Uncomment cleanup code

* Revert viewport height
2024-02-07 14:28:56 -08:00
Alexandre Lara f7b92e8b6b
Product Gallery block: Focus should return to trigger element when closing pop-up (#44414)
* Return focus to trigger element when closing pop-up

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Fix php cs error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-07 17:18:41 -03:00
Fernando Marichal 19a78cd176
Add pre-publish sidebar (#44331)
* Add prepublish sidebar

* Add openPrepublishSidebar to store

* Add changelog

* Rename modal and small refactor

* Add feature flag

* Move prepublish sidebar

* change import path

* Rename classes

* Fix width

* Fix styles

* Rename prepublish panel

* Rename div class

* Remove onSuccess from PublishButton

* Fix panel position

* Use actions instead of sidebar

* Add wc-admin changelog

* Move changelog

* Fix lint
2024-02-07 15:30:33 -03:00
Adrian Moldovan 2628a52385
[e2e tests] New tests for product edit in block editor (#44272)
* Add new test with a product name edit

* Add changelog

* Update price and description

* Check product summary update

* Remove unnecessary interpolation
2024-02-07 09:46:19 -04:00
Néstor Soriano f730e4edb7
Simplify the applied coupon data that gets stored as line item meta (#44113)
Previously, a 'coupon_data' line item meta entru was being stored
when a coupon was applied to an order. Now a much shorter
'coupon_reapply_info' entry is stored instead, containing just
coupon id, code, discount type, amount, and whether the coupon
grants free shipping.
2024-02-07 12:23:23 +01:00
Veljko V 28bfa5465f
Improve existing E2E shopper product description & images test (#44365)
* Improve existing simple product test

* Add missing changelog
2024-02-07 11:33:18 +01:00
Karol Manijak 67dda736d4
Improve flaky Product Collection E2E test when nested in Single Product block (#44404)
* Improve Product Collection test when nested in Single Product block, previous version was flakyu

* Add changelog

* Move the priovate method below the comment starting private methods

* Remove unnecessary wait
2024-02-07 07:53:48 +01:00
Alexandre Lara 0654fa1997
Product Gallery block: Announce Pop-Up Opening with Voiceovers (#44332)
* Add aria attributes to product gallery pop-up

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Fix Interactivity API store import

* Announce Dialog opening with VoiceOver

* fix php cs lint error

* Remove unnecessary data-wc-watch directive from Product Gallery block

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-06 14:28:33 -03:00
Mike Jolley 45923dc5f3
[Experiment] Handle customer session meta data (#44181)
* Update data store to bail if there is no customer ID

* Use WC_Data meta functions

* Save and load meta in session class

* Customer session handling

* CheckoutFields - only persist customer data to accounts

* Inline docs for session handling

* Handle meta data in session

* Document wc->customer inline

* Store only additional fields in session

* Prevent notice in WC_Data

* Organise keys and remove duplicates

* Correctly save fields to account

* Fix notices on checkout

* Remove unnecessary diff

* Changelog

* Go back to previous way to loading session handler to avoid 3rd party breakage

* No need to track is_session

* white space

* Remove changes to customer data store

* Update class-wc-customer-data-store.php

* Populate client from additional values from api

* Additional fields in session

* Add woocommerce_customer_allowed_session_meta_keys hook

* Put back legacy keys for tests

* Remove key fixes

* Don't save additional fields to customer object

* Remove duplicate init call

* Only persist contact fields
2024-02-06 15:16:00 +00:00
Alba Rincón fa9d68eed6
[CYS] Fix - Add back parent machine to the `designWithNoAiStateMachineDefinition` child machine option (#44397)
* Add back parent machine to the designWithoutAi child machine option

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-06 14:28:22 +01:00
github-actions[bot] e373a69209
Delete changelog files based on PR 43834 (#44399)
Delete changelog files for 43834

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-06 20:33:57 +08:00
Albert Juhé Lluveras fa9d42be4f
Add template title and description on 'get_block_template' hook (#44254)
* Simplify add template title and description

* Add template title and description on 'get_block_template' hook. Fixes #42221

* Add tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Fix test in template parts

* Use BlockTemplateUtils::template_has_title when possible

* Add test also when saving the default WooCommerce template

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-06 13:33:38 +01:00
Alexandre Lara b4928ed46a
Product Gallery block: Enable keyboard navigation for thumbnails (#44236)
* Add ability to select thumbnails using keyboard

* Add ability to open the Product Gallery pop up using the keyboard

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Fix outline border not showing on Thumbnails on some browsers

* Prevent firefox browser from focusing on UL tag of the Large Image block

* Enable usage of 'Space' and 'NumpadEnter' keys to navigate between the thumbnails

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-06 08:55:03 -03:00
github-actions[bot] a0980a1178
Delete changelog files based on PR 44359 (#44396)
Delete changelog files for 44359

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-06 19:52:11 +08:00
Mike Jolley 35630bb52b
Update combobox validation message to be more generic (#44229)
* Update combobox validation message

* Changelog
2024-02-06 11:51:09 +00:00
Luigi Teschio 159d47434b
[CYS - Core] Before installing the fonts, ensure that the font library is available (#44358)
* Avoid duplicating the `/onboarding/themes/recommended` request

* Use `fetchActiveThemeHasMods` in the `fetchIntroData` function

* Add changefile(s) from automation for the following project(s): woocommerce

* WIP

* WIP

* WIP

* WIP

* Move the `activeThemeHasMods` to outside the `intro` key, since it's used also in other places

Refactor, add comments and cleanup

* Remove unnecessary log

* Set the `activeThemeHasMods` on the parent window to true after the design step to avoid having to fetch it again

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove unused import

* Add comment and ref to the new issue

* CYS - Core: fix flow when Font Library is not installed

* Add changefile(s) from automation for the following project(s): woocommerce

* improve naming

---------

Co-authored-by: Alba Rincón <alba.rincon@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-02-06 11:28:26 +01:00
Sam Seay 5f00e2f87a
[Experimental] Add e2e tests for the rating filter block (#44192) 2024-02-06 23:22:21 +13:00
Christopher Allford a90b044e73
Updated PNPM Lock File (#44382)
* Updated Lock File

* Add changefile(s) from automation for the following project(s): woo-ai

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-06 09:33:58 +00:00
Alexandre Lara 560f0e933d
Product Gallery block: Prevent block error when a user inputs a decimal number for the Number of Thumbnails setting (#44282)
* fix error on decimal input for the Number of Thumbnails setting

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-05 15:17:35 -03:00
github-actions[bot] b764167f11
Delete changelog files based on PR 44283 (#44368)
Delete changelog files for 44283

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-06 00:44:36 +08:00
Mike Jolley fa01e1b541
[Experimental] Add option to `show_in_order_confirmation` for additional checkout fields (#44314)
* Improve readability of register_checkout_field

* show_in_order_confirmation

* changelog
2024-02-05 16:19:34 +00:00
Justin Palmer cd7f429bc1
Remove Customer Order Count from Order Attribution checkout data (#44359)
* Remove Customer Order Count from Checkout Tracks data
2024-02-05 16:06:49 +01:00
Alba Rincón a943de24fa
[CYS] Avoid duplicating requests during the CYS flow (#44179)
* Avoid duplicating the `/onboarding/themes/recommended` request

* Use `fetchActiveThemeHasMods` in the `fetchIntroData` function

* Add changefile(s) from automation for the following project(s): woocommerce

* WIP

* WIP

* WIP

* WIP

* Move the `activeThemeHasMods` to outside the `intro` key, since it's used also in other places

Refactor, add comments and cleanup

* Remove unnecessary log

* Set the `activeThemeHasMods` on the parent window to true after the design step to avoid having to fetch it again

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove unused import

* Add comment and ref to the new issue

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2024-02-05 12:36:33 +01:00
Mike Jolley d858d22930
[Experimental] Surface custom fields in My Account pages (#43823)
* Get default attributes on front end

* Remove console log

* Show notice about 0 registered fields in editor

* Do not show block in editor if no fields are registered

* Wrapper block

* Update webpack config

* Wrapper block type definition

* Separate fields from the hook block

* Hide when no custom fields exist

* Address and contact fields

* Shared form fields in settings

* Revert render_content to original

* Allow definition of unchecked value which includes a hidden field

* Move woocommerce_edit_account_form above password section, which should be last.

* My Account hooks

* Move account handling to service class

* Show fields in order details

* Remove unused prop

* remove comment

* Hook docblocks

* Add changefile(s) from automation for the following project(s): woocommerce

* Add note about nonce verification

* wp_kses_post for label

* fix nonce linting

* Add docblock to hook

* Bump template version

* Persist contact fields to customer

* Change action name

* Add changefile(s) from automation for the following project(s): woocommerce

* Changelog

* Margin fix on order confirmation for older core themes

* Bump version tags

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-02-05 10:59:17 +00:00
Thomas Roberts 877a16096c
Update notice templates display logic to show updated templates in block themes only (#44283)
* WIP

* Add e2e tests for regular and custom templates

* Allow theme *.zip files for testing purposes

* Bump template versions

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Update comments in bash script

* Remove child themes - they will be installed from the zip

* Fix lint error re spacing

* Bump template versions

* Update PHP unit tests for classic style notices

* Revert "Remove child themes - they will be installed from the zip"

This reverts commit 98b1036616.

* Remove classic cart check in test

* Revert "Add e2e tests for regular and custom templates"

This reverts commit ef531854f9.

* Revert test-related changes

* Remove report

* Prevent phpcs warning for not escaped output

It is escaped in the wc_get_notice_data_attr function

* Revert notice changes to core E2E tests

* Update shopper add to cart e2e test to use correct notice class

* Update checkout block E2E test to use correct notice class

* Fix typo

* Update test to check for correct notice classes

* Update notice comment

* Re-apply block template overrides

* Consistent notice check with other templates

---------

Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-02-05 11:50:15 +01:00
Albert Juhé Lluveras 097bd5c8f5
Add e2e tests for password-protected Single Product block template (#44304)
* Add e2e tests for password-protected Single Product block template

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Fix tests

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-05 10:47:18 +01:00
Sam Seay 497d4b8a25
Remove class scoping and just use text to find elements (#44289) 2024-02-05 14:27:54 +13:00
Hsing-yu Flowers 24ea7a1848
Move the guest should verify email logic to the order class (#43834)
* Move the guest should verify email logic to the order class

* Refactor for readability and remove redundant code

* Use billing email variable

* Remove white space

* Rename and move email_is_valid to users utils

* Use global WC_DateTime and WC_Session classes

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-02 18:03:07 -08:00
Damián Suárez f1236696d9
[Product Block Editor]: use Textarea block in the variation description field (#44151)
* use text-area for variation desctiption field

* changelog

* tweak // Translators string

* use var to define textarea border color

* remove optional from description label
2024-02-02 15:50:36 -04:00
Jonathan Lane f93dcc292c
Misc e2e test fixes (#44325)
* Change local workers to 1

* Add helpers for adding shipping

* Add shipping zone before order

* Fix tax assertion

* Fix assertion

* Tightened up locators

* Dismiss tour if visible

* Back to function

* Update tax label

* Enable shipping

* Update locator

* Changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-02-02 10:17:32 -08:00
Thomas Roberts 8ac959f4e7
[Experimental] Prevent string-based sanitization on non-string field types in additional checkout fields (#43999)
Co-authored-by: github-actions <github-actions@github.com>
2024-02-02 10:16:02 -08:00
Luigi Teschio 5937b3dec1
CYS - Core: Font Library: disable the installation of the fonts (#44311)
* avoid crash when Gutenberg is not installed

* add issue link

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-02 16:34:33 +01:00
Álvaro Thomas 5fd4176ad0
[e2e tests] Check email for completed order (#44186)
* Add completed order email test

Add test structure to verify completed order email arrival and content

* Verify Email JSON Content

Parse email content in JSON format

* Record email content in JSON

Record email content in JSON

* Update emails completed order checks

Added checks to verify the content of completed order's emails

* Add changefile(s) from automation for the following project(s): woocommerce

* Update email content const & remove duplicated test

Updated with a new const to record email content const and removed duplicated assertion.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-02 16:13:16 +01:00
Maikel Perez eaa791f7da
Hide Downloads section under Toggle for product variations (#44152)
* Create DownloadableProductTrait for common downloadable blocks creation

* Use DownloadableProductTrait in SimpleProductTemplate

* Use DownloadableProductTrait in ProductVariationTemplate

* Remeber downloadable files in product variations

* Add changelog file

* Fix php linter error

* Unlink downloads and downloadable product props so they can be managed separately

* Remove invalid margin bottom from the uploader label

* Add changelog file
2024-02-02 10:04:42 -03:00
github-actions[bot] f383284ba6
Delete changelog files based on PR 44207 (#44302)
Delete changelog files for 44207

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-02 12:31:53 +01:00
github-actions[bot] 11daa0d5ee
Delete changelog files based on PR 44178 (#44300)
Delete changelog files for 44178

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-02 11:45:54 +01:00
github-actions[bot] d7a294cb32
Delete changelog files based on PR 44174 (#44293)
Delete changelog files for 44174

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-02-02 09:58:46 +01:00
Jorge A. Torres ececdf0c1b
Add background HPOS cleanup process (#43293)
* Make legacy data cleanup more performant

* Add legacy data cleanup processor

* Make legacy cleanup available in the UI

* Add some validation around data synchronizer / data cleanup settings

* Add some error handling

* Add changelog

* Make CI happy

* Improve option handling

* Add unit tests

* Partially revert “real time” cleanup

* Re-schedule cleanup on ‘shutdown’ if necessary

* Revert CSS changes for HPOS settings screen

* Revert JS changes for HPOS settings screen

* Allow tools to display a status text

* Move order cleanup to Tools

* PHPCS fixes

* Extend bail early protection to other batch processing functions

* Log and stop cleanup when a full batch fails

* Make PHPCS happy
2024-02-02 12:09:08 +05:30
Manish Menaria 1d8007b822
Product Collection: Return to top after page change (#43817)
* Initial working version

* Update scrolling behavior in product collection block frontend

This commit updates the scrolling behavior in the product collection block's frontend script.

Previously, the code focused on the first anchor or button within a product collection block. This approach was taken to maintain accessibility and ensure that the focused element was scrolled into view. However, this behavior has been changed to improve the user experience.

The updated code now directly scrolls to the first product in the collection. This is achieved by selecting the product using a new selector that targets the `.wc-block-product` class within the `.wc-block-product-template` of the specified `data-wc-navigation-id`. Once the product is selected, the `scrollIntoView` method is used with smooth behavior and start block alignment, offering a more visually appealing scroll effect.

This change enhances the user experience by smoothly directing attention to the beginning of the product collection, making it easier for users to browse products.

* Remove code related to animation

* Fix the issue related to pagination block rendering

- I have improved the code by breaking it into smaller functions
- Added unique `data-wc-key` to each anchor tag

* Enhance Product Collection Block with Interactive Prefetching

* Refine Prefetch Logic & other improvements

This commit further refines the prefetch logic and interactivity in the Product Collection block. It focuses on enhancing code clarity and improving the prefetch behavior based on user interactions.

Key changes include:
1. Renamed 'isPrefetchNextAndPreviousLink' to 'isPrefetchNextOrPreviousLink' in ProductCollectionStoreContext for better readability and accuracy.
2. Modified the scrollToFirstProductIfNotVisible function to accept a wcNavigationId as a parameter instead of a reference
3. Introduced checks for the existence of wcNavigationId in scrollToFirstProductIfNotVisible to prevent unnecessary executions.
4. Updated comments throughout frontend.tsx for enhanced clarity, explaining the prefetch logic and its triggers in detail.
5. Adjusted the logic in the navigate and prefetch functions to align with the new context structure and prefetch strategy.
6. In ProductCollection.php, updated data attributes to align with the revised prefetch strategy.
7. Refined the attribute setting in process_pagination_links function to correctly implement the updated interactivity and prefetch logic.

These changes aim to optimize the prefetch functionality, reduce unnecessary prefetching on initial page load, and ensure a smoother and more efficient navigation experience within the Product Collection block.

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Improve comments

* Use wp_json_encode for data-wc-interactive attribute

This commit updates the `ProductCollection` class to use `wp_json_encode` for setting the `data-wc-interactive` attribute value. Previously, the attribute value was hardcoded as a JSON string. Now, by utilizing `wp_json_encode`, we ensure the JSON encoding is handled correctly by WordPress standards, enhancing readability and maintainability of the code.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-02 12:07:29 +05:30
Sam Seay 6da45f6bed
[Experimental] Add e2e tests for the new active filter block (#44190) 2024-02-02 15:08:01 +13:00
Barry Hughes ded33b7049
Update JS Cookie library to v3.0.5. (#43686) 2024-02-01 11:36:12 -08:00
Luigi Teschio ae1503f588
CYS - AI flow: fix regression - no fonts visible (#44280)
* CYS - AI flow: fix regression - no fonts visible

* Add changefile(s) from automation for the following project(s): woocommerce

* Trigger Build

* fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-01 18:44:28 +00:00
Luigi Teschio e0972ef6ea
[WIP] CYS - Core: add integration with the font library (#44004)
* CYS - Core: add integration with the font library

* install font only when necessary

* refactor logic

* add try catch

* renaming font

* refactor some code

* refactor some logic

* Add changefile(s) from automation for the following project(s): woocommerce

* remove not used import

* avoid mutability

* improve performance

* update name variable

* fix naming

* fix endpoints after font collection rest controller improvements

* use promise.all into the map

* improve performance

* fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-01 17:16:12 +00:00
Karol Manijak 84f2de633d
Fix incorrect product data displayed in Product Collection in context of Single Product block (#44123)
* Initial approach to fix incorrect product data displayed in Product Collection in context of Single Product block

* Remove the BlockCOntextProvider

* Add Block context for title and summary

* Add changelog

* Improve typing

* Add E2E test with Product Collection inside Single Product block

* Improve insertBLock function description

* Make productPrices selector in Product Collectionmore specific

* Extract components props into a types
2024-02-01 17:55:38 +01:00
Maikel Perez 861cc7cc02
Add common options to the variations options empty state (#44001)
* Always show Variation options and Variations sections within the Variations tab

* Remove woocommerce/product-variations-fields block since it's not needed anymore

* Create ProductTShirt image for variation options empty state

* Add renderCustomEmptyState to the attribute control component to be able to set a not default empty state

* Render a custom empty state for variation options

* Adds defaultSearch prop to NewAttributeModal so it can be used to start searching right after the modal is shown

* Let the empty state adds an attribute that matches a given text

* Add changelog files

* Fix linter errors
2024-02-01 11:18:23 -03:00
Luigi Teschio 42a2d00cba
CYS - Core - Check the Font Library availability (#44206)
* Ensure that the Font Library is available

* Add changefile(s) from automation for the following project(s): woocommerce

* fix iframe issue

* improve comment

* don't return any object

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-01 11:30:50 +00:00
Thomas Roberts 1130380f73
[Experimental] Allow Additional Information block to be moved but not removed (#44193)
Co-authored-by: github-actions <github-actions@github.com>
2024-02-01 02:58:05 -08:00
Thomas Roberts 77d2dd9453
Make combobox suggestions have same border as main input (#44183)
Co-authored-by: github-actions <github-actions@github.com>
2024-02-01 02:57:57 -08:00
Albert Juhé Lluveras d936e4afee
Merge Checkout Header and Mini-Cart template parts tests into parameterized test files (#44176)
* Rename block template customization test files

* Move Checkout Header template part tests to parameterized tests

* Make it so 'userText' in tests is different in each template, so prevent false positives

* Move Mini-Cart template part tests to parameterized tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Make sure there are products in cart before going to the Checkout template

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-01 11:43:33 +01:00
Vedanshu Jain 4c0f7605b3
Fix refund props not updating properly with HPOS (#44214) 2024-02-01 11:38:17 +01:00
Alfredo Sumaran 9bb7cd7b8b
Apply Rector suggestions for PHP 8.1 (#41482)
* Apply Rector suggestions

* Add changefile(s) from automation for the following project(s): woocommerce

* Restore false positive

$missing_tables will always be an array

* Restore false positive.

Rector issue: AddDefaultValueForUndefinedVariableRector.

This time the early return is valid so there’s no need to move the $process_limit assignment to the top.

* Ask if $orders is an array

$orders is used as an array lines below. Add `is_array` just in case the “paginate” param is used which would change $orders to an object.

* Check if variable is array

Simplifies variable check given that they are used as an array lines below.

* Restore code as taxes is always an array

* Restore false positive

In the previous loop the $data variable is being built as an array of arrays. Then $value in this loop will allways be array.

* Restore false positive

get_children’s method. of a WC_Product instance will always return an array.

* Simplify variable check

Ask if varialbe is array since it only can be array or false.

* Restore false positive

WC_Blocks_Utils::get_blocks_from_page() will always return an array.

* Restore false positive

There’s a check asking if $existing_meta_data[ $meta_data->key ] is array.

* Restore false positive

$child_ids will always be an array.

* Restore false positives

WC_Product->get_visible_children() will always return an array.

* Restore false positives

WC_Product->get_children() will always return an array.

* Restore false positive

WC_Product->get_visible_children() will always return an array.

* Restore false positive

WC_Order->get_items() will always return an array.

* Restore false positive

The get_matching_rates private method will always return an array.

Updated the @return declaration to be an array instead of boolean.

* Remove unnecessary array type casting.

* Restore false positive

$this->get_children() will always return an array.

* Fix lint issues

* Remove unnecessary default assignment

* Remove unnecessary is_array check

* Remove unnecessary is_array check

* Remove unnecessary is_array check

* Change default value from null to false

* Remove unnecessary is_array check

* Update changelog entry

* Update changelog entry

* Update changelog entry

* Add changefile(s) from automation for the following project(s): woocommerce

* Update changelog entry

* Use self for consistency

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-02-01 10:06:12 +00:00
Christopher Allford 7f556d07b2
Removed Unnecessary `@woocommerce/plugin-woocommerce` Asset Copy Caching (#44234) 2024-01-31 16:12:00 -08:00
Jonathan Lane 9c00c2676b
Improve flaky e2e tests (#44208)
* Fix flaky guest checkout tests

* Removed a couple of extra assertions (not needed)

* Enable payment gateway

* Add changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-31 10:08:11 -08:00
Veljko V 7c4dca8348
Rename and move test Cart & Checkout Tax Calculation out of isolation and update some locators to use getBy (#44115)
* Move test out of isolation and update it

* Add changelog file
2024-01-31 08:31:33 -08:00
Adrian Moldovan 62101246ca
[e2e tests] Add downloadable product test (#44112) 2024-01-31 17:51:14 +02:00
Karol Manijak a164c8afa9
Fix CI Lint errors (#44228)
* Fix linter issues

* Add changelog
2024-01-31 16:12:30 +01:00
Cem Ünalan f2b77b1ada
Marketplace: Fix the bug hiding connection warning (#44207)
* Marketplace: Fix the bug hiding connection hiding

Actually, this bug causes all modal state to be lost. But since we
check the connection only when the page loads, on a subsequent tries, we can 't show the connection warning.

* Marketplace: update documentation and typos

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-31 12:50:47 +03:00
Paulo Arromba 1e815751ab
Fix/31582 special characters in password on checkout page lead to not working account (#43777)
* Fix registration during checkout

* Added changelog.

* Moved changelog.

* Added correct spacing

* Move password slashing into WC_Checkout:get_posted_data()

* Lint fix
2024-01-31 09:36:58 +00:00
Niels Lange c704ae2cab
Migrate coupon- and shipping-related tests to Playwright (#44108)
* Migrate coupon- and shipping-related tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Fix prettier issue

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-31 01:23:09 -08:00
Jonathan Lane c96f68e88d
Adds tests to monitor number of JS files included in pages (#44046)
* Adds tests to monitor number of JS files included in pages

* Changelog

* Update file counts

* Changed assertion to LTE

* Revise file counts

* Update numbers

* Increased numbers

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-30 14:23:33 -08:00
Thomas Roberts d0b0c4c90b
Set `$plain_text` to false in new email addresses hook (#44178)
Co-authored-by: github-actions <github-actions@github.com>
2024-01-30 10:00:19 -08:00
Mike Jolley 610022150e
Change specificity of date picker rules (#44174)
* Change specificity of date picker rules

* changelog
2024-01-30 17:06:05 +00:00
Luigi Teschio 336abf7a73
Store API - Documentation: Fix broken link (#44180)
* Store API: fix link documentation

* Add changefile(s) from automation for the following project(s): woocommerce

* fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-30 14:23:28 +01:00
Sam Seay 08d5cc05aa
[Experimental] Fix a bug where new attribute filter block flickers in editor. (#44147) 2024-01-31 01:10:12 +13:00
github-actions[bot] 9eff44945a
Prep trunk for 8.7 cycle (#44056)
Prep trunk for 8.7 cycle with version bump to 8.7.0-dev

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-30 12:40:10 +01:00
Alba Rincón 1045948487
Update the CYS intro modal copy on Core (#44081)
* Update the CYS intro modal copy on Core

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-30 09:58:51 +01:00
Alba Rincón 595cdeadb0
Create a dedicated survey and tracking events for the CYS flow on core (#43862)
* Create a dedicated survey and tracking events for the CYS flow on core

* Update booleans to show button and survey

* Remove console log

* Add changefile(s) from automation for the following project(s): woocommerce

* Style required question asterisk and make the questions required

* Fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-30 09:58:05 +01:00
Alba Rincón 4ad6b41026
Fix ai status missing on CYS transitional page (#44121)
* Fetch the ai status on the transitional page of the CYS flow

* Only check AI status on WooExpress

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-30 09:54:16 +01:00
Albert Juhé Lluveras 3df7da4bd2
Add theme-customization e2e tests to Cart, Checkout and Order Confirmation templates (#43794)
* Add theme-customization e2e tests to Cart and Checkout templates

* Add theme-customization e2e tests to Order Confirmation template

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Update after rebase

* Make it so Order Confirmation template tests are also part of the parameterized tests

* Use CUSTOMIZABLE_WC_TEMPLATES constant instead of defining the templates again

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Fix wrong template slug

* Rename 'default' to 'fallback' template

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-30 09:44:42 +01:00
Ilyas Foo 6dd96b3e14
Fix beta test plugin deprecated creation dynamic property (#44109)
* Add plugin_name declaration

* Changelog
2024-01-30 16:12:02 +08:00
Chi-Hsuan Huang 6832a4b249
Update onboarding task documentation & add back `example` command (#44026) 2024-01-30 12:05:46 +08:00
Damián Suárez 74d0b39bb0
[Product Block Editor]: introduce TextArea field block (#44104)
* introduce TextAreaBlockEdit block

* reglister text area block

* use text-area block in the summary block

* changelog

* changelog

* fix whitespace lint issue

* remove unused types

* intrduce placehholder attribute

* property is the only required attribute

* tidy block attributes

* use useProductEntityProp()

* define fallback value

* remove unused CSS class

* organize attrs

* do not implement tooltip yet

* fix eslint error

* update text-area keywords
2024-01-29 17:14:17 -03:00
github-actions[bot] 487c7a87f0
Release: Remove 8.6 change files (#44057)
Delete changelog files from 8.6 release

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-29 18:04:49 +01:00
Albert Juhé Lluveras cca2271671
Remove Cart and Checkout templates migration code (#44148)
* Remove Cart and Checkouts templates migration code

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-29 16:12:33 +01:00
Leif Singer be10f00f05
HPOS: fix handling order meta containing nonexistent class when sync is on (#43517)
* add draft test

* test unserializing an order meta with an object of a non-existent class

* appease the linter

* add asserts for the $meta's object_vars

* linter fix

* we actually don't need these to force a sync

* add one to time to avoid potential flakiness

* use simpler fetch for order

* catch the errors and do things manually via wpdb instead

* appease the linter

* add changelog file

* specify format for the insert

* add test for deleting meta

* detect incomplete class in meta value instead of catching and examining errors

* appease the linter

* fix typo

* address review comments

* empty cache when we have manually deleted the post meta

* use `is_object`

* add logging

* log the order ID
2024-01-29 19:04:07 +05:30
Álvaro Thomas 06754dc917
[e2e tests] README.md - Add link to WooCommerce Monorepo prerequisites (#43552)
* Update README.md

Add a link to the WooCommerce Monorepo prerequisites before going through the e2e-pw prerequisites.

* Update WC prerequisites to relative link and added changelog

Update link to WC monorepo prerequisites

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove duplicated lines

Remove duplicated instructions and leave the step to install Docker and Docker compose

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-01-29 12:31:38 +01:00
Alfredo Sumaran 6cada6447a
Apply Rector suggestions for PHP 8.1 (#43227)
* Apply Rector suggestions

* Add changefile(s) from automation for the following project(s): woocommerce

* Update changelog entry

* Typo

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-29 17:00:44 +05:30
Mike Jolley 919e2e0060
Prevent `wc_get_chosen_shipping_method_ids` from causing fatal errors if chosen methods are not strings (#43869)
* Check for string values when updating chosen_shipping_methods session

* Ensure filtering woocommerce_shipping_chosen_method provides a string value

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-29 11:22:27 +00:00
Mike Jolley efe07e0ee2
Fix default shipping method selection after rate changes (#44117)
* Change default unless local pickup is being used

* Changelog
2024-01-29 10:07:50 +00:00
Albert Juhé Lluveras 7f735714a4
Add e2e tests for the Page Content Wrapper block (#44122)
* Add Page Content Wrapper e2e tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-29 10:11:43 +01:00
Sam Seay cfd8f36578
[Experimental] Utilize WP generated class names to style rating filter block. (#44072) 2024-01-29 19:50:47 +13:00
jonathansadowski 6f9e8531cf
Add wireit build config for woo-ai plugin (#43769)
* Add wireit build config for wooai plugin

* Add changefile(s) from automation for the following project(s): woo-ai

* Add lint config for woo-ai plugin js and css

* Remove build:admin script for wooai

* Remove ci config for woo-ai

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-26 16:08:04 -06:00
github-actions[bot] d7eaca8415
Delete changelog files based on PR 44094 (#44127)
Delete changelog files for 44094

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-26 17:32:00 +00:00
Ivan Stojadinov 324b816aec
[e2e] Check email for cancelled order (#43985)
* Add new "can receive cancelled order email" test

* Add new "can receive cancelled order email" test

* Add changefile(s) from automation for the following project(s): woocommerce

* temp: wait for 1s

* temp: wait for 1s

* Revert changes introduced in 5aa5013

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-26 17:09:02 +01:00
Ivan Stojadinov 5e87527a44
Add "can view product review" test (#44077)
* Add "can view product review" test

* Add changefile(s) from automation for the following project(s): woocommerce

* Add timestamp to reviewer's email

* Verify reviewer's email and rating

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-26 17:06:36 +01:00
Alfredo Sumaran a656fe0496
Apply Rector suggestions for PHP 8.1 (#43230) 2024-01-26 16:25:11 +01:00
Corey McKrill 022fef4cfb
Logging: Add details about configuration to SSR (#44106)
Adds logs settings values to both the SSR REST API endpoint and to the
HTML version of the SSR screen. Also adds a new method for calculating
the total size of the log directory, and adds that info to the Logs
Settings screen in addition to the SSR.
2024-01-26 16:24:19 +01:00
Mike Jolley a66075ee11
Refactor `get_allowed_countries` and `get_shipping_countries` to make less error prone (#44034)
* Make `get_allowed_countries` default to `all`

* Make `get_shipping_countries` handle `disabled` and apply filter on all cases

* Add changefile(s) from automation for the following project(s): woocommerce

* changelog

* Put option in variable to avoid multiple calls

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-26 15:11:36 +00:00
Álvaro Thomas 7bfef28ac5
[e2e] Update create simple product test (#43783)
* Update create simple product

Add steps that add description, sale price, SKU, purchase note and an attribute (Color)

* Update  add-virtual-product formatting and locators

Update  add-virtual-product tests with suggested formatting and locators

* Add changelog file

Adding the missing changelog file via pnpm --filter=plugin-woocommerce run changelog add

* Update locators with getBy on product creation

Update product name, price, sale price and virtual checkbox marking locators to use getBy instead

* Update SKU and publish locators with getBy instead

Updated SKU and publish locators with getBy instead

* Added asserts to create-virtual-prd test

Added asserts to create-virtual-prorduct test

* Update SKU check

Update SKU assertion

* Remove keyboard action

Remove press enter keyboard action

* Add changelog

Added changelog file

* Add changefile(s) from automation for the following project(s): woocommerce

* Update virtualProductName check

Update virtualProductName check to the const instead of the string

* Rebase and format

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Veljko <veljano@yahoo.com>
2024-01-26 10:21:26 +01:00
Adrian Moldovan 4bcb62dc9f
[e2e tests] Add tests for product bulks edit (#44039) 2024-01-26 10:53:05 +02:00
Sam Seay 067cdef753
[Experimental] Utilize WP generated class names to style interactivity stock filter block. (#44073) 2024-01-26 19:29:39 +13:00
Sam Seay 1ce39d98fb
[Experimental] Utilize WP generated class names when styling new active filters block. (#44069) 2024-01-26 19:06:50 +13:00
Thomas Geiger a9997ca1d1
Add filter to block product grid add to cart button to allow extra HTML attributes (#43700) 2024-01-26 09:34:22 +07:00
nigeljamesstevenson 0064abbd0f
Update stable tag to 8.5.2 (#44096)
woorelease: Update stable tag to 8.5.2
2024-01-25 19:44:13 +00:00
Corey McKrill 421ec8e31a
Settings: Ensure row attributes don't have HTML entities (#44094)
In #43166 I changed the way that row classes are added on settings
fields. However, by using `esc_html`, it's actually outputting invalid
HTML, where the double quote wrappers are getting converted to HTML
entities. This simply switches back to escaping only the attribute value
and not worrying if the tr element contains an empty class attribute.
2024-01-25 18:54:39 +00:00
github-actions[bot] 603a4fc689
Delete changelog files based on PR 44037 (#44083)
Delete changelog files for 44037

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-25 16:11:00 +00:00
github-actions[bot] 1a38522518
Delete changelog files based on PR 43354 (#44089)
Delete changelog files for 43354

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-25 16:10:35 +00:00
Albert Juhé Lluveras 66c3467b69
Avoid duplicate templates appearing on the Site Editor when the WooCommerce template and the theme template have been customized by the user (#44000)
* Avoid duplicate templates appearing on the Site Editor when the WooCommerce template and the theme template have been customized by the user

* Add tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Clean up templates after running all tests to increase speed

* Fix comment linting

* Fix addToCart() util with the classic template

* Remove unnecessary condition

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-25 14:55:17 +01:00
Mike Jolley dc6af08596
Initialise customer sessions on the order pay page (#43858)
* Create session on the order pay page

* Add changefile(s) from automation for the following project(s): woocommerce

* changelog

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-25 13:12:10 +00:00
Alba Rincón f46ffe1450
[CYS] Proceed with product creation when their images fail to upload (#44031)
* Return error when the product creation fails

* Add changefile(s) from automation for the following project(s): woocommerce

* Continue with product creation even when the image upload fails

* Revert

* Add changefile(s) from automation for the following project(s): woocommerce

* Add changefile(s) from automation for the following project(s): woocommerce

* Add changefile(s) from automation for the following project(s): woocommerce

* Add a warning message with the error when creating the products with no images

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-25 12:49:45 +01:00
Luigi Teschio 0a1c4a6920
[CYS - Core] Handling errors during the setup for the `NoAI` flow (#43810)
* CYS - Core: handling errors during the setup

* fix CSS format

* remove export

* fix CSS

* Add changefile(s) from automation for the following project(s): woocommerce

* fix import

* fix style notice

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-25 12:04:44 +01:00
Mike Jolley 538e45ccb4
Fix SVG markup in miniCartIcon (#44042)
* Update MiniCart.php

* Add changelog entry

---------

Co-authored-by: niharikamahajan02 <72392580+niharikamahajan02@users.noreply.github.com>
2024-01-25 11:03:51 +00:00
Ilyas Foo 2c283d7134
Add rudimentary try catch for all remote endpoint spec evaluators (#44037)
* Add rudimentary try catch for all remote endpoint spec evaluators

* Changelog

* Lint

* More lint
2024-01-25 18:58:15 +08:00
Tung Du 1abefd5eee
[Experimental] Filter block: replace custom upgrade panel by Transforms API (#44024) 2024-01-25 15:28:09 +07:00
Tung Du b50431d9af
[Experimental] Filter block: refactor visibility control, context passing, and filter data processing (#43996) 2024-01-25 13:55:45 +07:00
Vedanshu Jain efd5ccebeb
Add filters for customer email and order id for performance. (#43865)
* Add filters for customer email and order id for performance.

* Empty where should not cause invalid query.

* Add changelog.

* Add unit test for newly supported search params.

* Apply coding standards.

* Add a trailing wildcard to allow broader search.

* Remove extra line.

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-01-24 16:08:07 -08:00
Cem Ünalan 48ebe7b84c
Marketplace: Add "Add to Store" button for free and WordPress.org products #43616 (#43983)
* Marketplace: Add "Add to Store" button for free and WordPress.org products (#43616)

* Marketplace: Install free .org plugins with Add to Store button

* Marketplace: addressed feedback for the the new install free products flow

- Moved notices to the top of the modal
- Updated notice styles slightly
- Updated the CreateOrderSuccessResponse to reflect API changes

* Marketplace: Require the Helper orders API file

* Marketplace: fix linter errors

* Marketplace: form encode when submitting the request

The body is encoded anyways by the WordPress core. However, if I don't
do it here, I can't create a valid signature to be verified by
Woo.com.

I could have just submitted a JSON too, but this seamed easier since
the body is parsed on Woo.com automatically when it's in this form.

* Add changefile(s) from automation for the following project(s): woocommerce

* Marketplace: remove "~" character in imports and use relative paths

* Marketplace: fix margins in the product with the Add to Store button

* Marketplace: Add conditions to hide the button

We hide it if:

- the product is already installed
- user doesn't have the right capability
- if the product is just installed using our flow and there is
no page refresh

* Marketplace: don't show Add to Store button on Themes and on Discover

* Marketplace: fix linting

* Marketplace: hide ratings from the product if "is-small" class exists

* Marketplace: fix linting errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-24 23:02:20 +03:00
Jonathan Lane 27f079e9b1
Adds tests for core profiler (#44022)
* Adds tests for core profiler

* Add additional assertions

* Add changelog

* Standardize spacing

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-24 12:00:52 -08:00
Tomek Wytrębowicz 1976e40136
Remove wp-data & wc-blocks-checkout dependencies from OA script (#43857)
Resolve conditional dependency in JS.

Fixes #43829

Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2024-01-24 18:58:57 +01:00
Tarun Vijwani 0c79d1b6a7
Display shipping calculator link in the Cart block when fallback shipping options available (#43803)
* Hide the shipping rates in editor to match front-end

- If there are no shipping rates, hide the shipping rates in editor to match front-end.

* Add get_shipping_zones method to CartCheckoutUtils

* Display change address like for fallback shipping zone

- If cart has multiple and default shipping zones without shopper address, display the change address link

* Update shipping address label

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Fix linting errors

* Update plugins/woocommerce-blocks/assets/js/base/components/cart-checkout/totals/shipping/shipping-address.tsx

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

* Display shipping calculator for locations outside all other zones

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Update typescript for activeShippingZones

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
2024-01-24 20:40:53 +04:00
louwie17 11aa8b6c46
Update product editor experiment name for new release (#44014)
* Update experiment name and enable linked products

* Add changelog
2024-01-24 11:41:05 -04:00
Thomas Roberts 0ecb53f61c
[Experimental] Update args for `woocommerce_blocks_validate_additional_field_{key}` filter (#44012) 2024-01-24 07:06:16 -08:00
Albert Juhé Lluveras 081f9d303b
Move Cart, Checkout and Order Confirmation template customization tests to the parameterized tests file (#43992)
* Move Cart, Checkout and Order Confirmation template customization tests to the parameterized tests file

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Clean up order-confirmation.block_theme.spec.ts file

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-24 15:26:07 +01:00
Adrian Moldovan 0aebb139c2
Update eslint parser to @babel/eslint-parser (#43859) 2024-01-24 13:06:51 +02:00
Vlad Bozdog a6210ba312
43813 hpos add missing filters on order listtable (#43815)
* add filter on build_count_query

* 43813-hpos-add-missing-filters-on-order-listtable

* 43813-hpos-add-missing-filters-on-order-listtable

* 43813-hpos-add-missing-filters-on-order-listtable

* 43813-hpos-add-missing-filters-on-order-listtable

* 43813-hpos-add-missing-filters-on-order-listtable

* 43813-hpos-add-missing-filters-on-order-listtable

* 43813-hpos-add-missing-filters-on-order-listtable

* Update plugins/woocommerce/src/Internal/Admin/Orders/ListTable.php

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>

* Update plugins/woocommerce/src/Internal/Admin/Orders/ListTable.php

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>

* 43813-hpos-add-missing-filters-on-order-listtable

* 43813-hpos-add-missing-filters-on-order-listtable

---------

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-01-24 09:17:25 +01:00
Chi-Hsuan Huang aa028da0b7
Send store address data to the obw subscribe endpoint (#43848)
* Sync country name to Klaviyo and Mailchimp

* Add state name

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-24 09:43:46 +08:00
Ilyas Foo f85d275c3a
Fixes `strpos` in `ComparisonOperation` for PHP 8 (#44007)
* Fixes

* Changelog

* Add breaks
2024-01-24 08:42:41 +08:00
jonathansadowski 9b98a85380
Remove docs plugin from monorepo (#44013)
* Remove docs plugin from monorepo

* Add language to md-docs readme

* Fix lint error in blocks

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-23 16:16:07 -06:00
Adrian Moldovan d66a48e8e5
[e2e tests] Add tests for product images (#43775)
* Import media on environment setup

* Add product-images.spec with one complete test and all other skeleton tests

* Add changelog

* Implement can update the product image

* Implement can delete the product image

* Implement can delete the product image

* Skip not implemented test

* Merge fixtures

* Add productWithImage fixture

* Remove unused variable `api`

* Partial implementation of can create a product gallery

* Check the image gallery in store frontend

* Added `can update a product gallery` test

* Run all tests

* Search for image in media library

* Check that the remove gallery image is not displayed

* Add repeatEach configuration

* eslint formatting

* Extract some repeating steps into a function

* Update check for thumbnail

* Fix test image name
2024-01-23 13:31:22 -08:00
Maikel Perez 9f3c7885a4
Remember downloadable files (#44008)
* The previously uploaded file should re-appear when the product changes from downloadable to not and then back again

* Add changelog file

* Fix php linter error
2024-01-23 14:53:22 -03:00
louwie17 1a4ebebf6a
Fix description toolbar with latest GB version (#43835)
* Initial changes to fix the toolbar in the iframe editor

* Moved toolbar to header and respect fixedToolbar preference

* Only render Gutenberg toolbar with specific version

* Update GB version

* Fix build issue

* Add fixed toolbar menu

* Remove unused import

* Add changelogs

* Fix lint errors

* Fix PHP lint error
2024-01-23 11:17:37 -04:00
Maikel Perez 26a546954a
Hide Downloads section under Toggle (#43864)
* Add Include downloads to show/hide the Downloads section

* Fix margin top for none first child nested sections

* Add changelog files

* Fix php linter errors
2024-01-23 12:12:52 -03:00
Maikel Perez dbae7d6661
Create product-pre-publish-modal feature flag (#43861)
* Create product-pre-publish-modal feature flag

* Add changelog file

* Fix auto formatting change
2024-01-23 11:46:52 -03:00
Maikel Perez 7ec8f7932e
Variations tab should be moved to the second tab, after General (#43998)
* Move variations tab to position 2 so it will appear right next to the general tab

* Add changelog file
2024-01-23 11:45:59 -03:00
Niels Lange 30dfa013f9
Unskip e2e tests (#43852)
* Remove obsolete comment

* Unskip cart and checkout translation tests

* Unskip shipping method switching tests

* Unskip template-related e2e tests

* Unskip order confirmation test for guest users

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Adjust broken e2e tests

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-23 21:32:10 +07:00
Alba Rincón a44a45b56a
CYS Redirect to intro screen if theme is not modified (#43736)
* Redirect to intro screen if theme is not modified

* Add changefile(s) from automation for the following project(s): woocommerce

* Add and fix test for the redirection

* Redirect with the proper url 'intro'

* Remove only

* Avoid completing the cys task when switching themes

* Revert prev commit and reset `woocommerce_admin_customize_store_completed` before each test

* Set the `woocommerce_admin_customize_store_completed` to `no` before each test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-23 11:15:19 +01:00
Alfredo Sumaran 4fd42aa7c5
Apply Rector suggestions for PHP 8.1 (#43236)
* PHP 8 Updates for src/Internal

* Add changelog entry

* Fix PHP lint issues

* Add unit test for not in queries.

---------

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-01-23 15:32:46 +05:30
Ilyas Foo 8a1af8a432
Add "I'm selling online and offline" for Square credit card payment recommendation (#43816)
* Add online offline for Square credit card

* Lint

* Changelog

* Update plugins/woocommerce/src/Admin/Features/PaymentGatewaySuggestions/DefaultPaymentGateways.php

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>

---------

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2024-01-23 13:52:27 +08:00
Sam Seay 42e77d4938
[Experimental] Product Filter - Reintroduce Wrapper Block (#43688) 2024-01-23 18:29:24 +13:00
Chi-Hsuan Huang 9b7d9ce689
Update the onboarding profile API validation for `business_extensions` parameter (#43806)
* Update the validation for business_extensions parameter

* Add changelog
2024-01-23 10:53:16 +08:00
Justin Palmer 8baa07e029
Remove `UTM` from Order Attribution metabox labels (#43041)
* Rename order attribution template file
* Update OA field name to `source_type` to keep up with https://github.com/woocommerce/woocommerce/pull/41690
* Discard conditional UTM labels altogether

---------

Co-authored-by: Tomek Wytrębowicz <tomalecpub@gmail.com>
2024-01-23 01:40:05 +01:00
Damián Suárez 0940201c37
Add suggested-products product endpoint (#43720)
* init approach of related products endpoint

* register related prodducts endpoint

* rename response prop with ids

* filter categoris from endpoint params

* filter categories when pulling related products

* changelog

* extend from WC_REST_CRUD_Controller class

* iterate over defininf endpoint params

* doc

* merge product terms with params

* introduce `combine` param

* return products collection instead of plain array

* fixinf eslint issues

* pass proper fn args to bound fns

* do not call parent register method

* post type is defined by parent controller class

* remove related products controller

* extend products controller with `related-products`endpoint

* filter post__in param

* when no related products found return empty array

* change and register endpoint params

* remove commented line

* add a custom method to extend the params

* update

* fix typo

* ensure to respect the products limit

* fix eslint issue

* remove unrequired endpoint id param
2024-01-22 17:18:02 -03:00
Christopher Allford db8da8d712
Properly Configured Wireit Production Builds (#43716) 2024-01-22 10:13:45 -08:00
Tarun Vijwani 139150134f
Add store notices to the Cart and Checkout block templates (#43753)
* Fix session notices in Cart and Checkout block pages

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Update plugins/woocommerce-blocks/assets/js/base/components/notice-banner/style.scss

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

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
2024-01-22 21:25:42 +04:00
Néstor Soriano 7c62443ebe
Improve the logging/noticing of Legacy REST API usages (#43851)
* Include request IP address in the logging of Legacy REST API usages

* Add link to the Legacy REST API plugin to the usage notices
2024-01-22 17:02:19 +01:00
Alfredo Sumaran e48849444c
Apply Rector suggestions for PHP 8.1 (#43235)
* PHP 8 updates for src/Database/*

* Add changelog entry

* Update changelog entry
2024-01-22 15:30:31 +00:00
Barry Hughes f6fbb42652
Optimize performance of `WC_Install::is_new_install()`. (#43767) 2024-01-22 16:08:05 +01:00
Mike Jolley 18cd0a9690
[Experimental] Surface custom fields in Emails (#43519)
* Get default attributes on front end

* Remove console log

* Show notice about 0 registered fields in editor

* Do not show block in editor if no fields are registered

* Wrapper block

* Update webpack config

* Wrapper block type definition

* Separate fields from the hook block

* Hide when no custom fields exist

* Address and contact fields

* Shared form fields in settings

* Revert render_content to original

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Get default attributes on front end

* Add initial sections to email templates

* Revert "Get default attributes on front end"

This reverts commit f76c21617a2c5ad832d4579ba2c4c8e98afd440d.

* Also render contact fields

* Handle plain text

* Add changefile(s) from automation for the following project(s): woocommerce

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Unwanted changes from rebase

* Use get_order_additional_fields_with_values

* Remove sample fields

* Version bump for styles

* Update plugins/woocommerce/includes/class-wc-emails.php

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

* Update plugins/woocommerce/includes/class-wc-emails.php

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

* Apply view context

* Handle null

* Context

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2024-01-22 13:56:22 +00:00
Thomas Roberts 4114c5a5f1
[Experimental][Refactor] Reduce complexity of custom field registration function (#43663)
Co-authored-by: github-actions <github-actions@github.com>
2024-01-22 05:48:23 -08:00
Albert Juhé Lluveras c1b131c869
Add e2e tests to verify specific theme templates have priority over user-modified Product Catalog template (#43750)
* Add e2e tests to verify specific theme templates have priority over user-modified Product Catalog template

* Add changefile(s) from automation for the following project(s): woocommerce-blocks
2024-01-22 14:44:07 +01:00
Albert Juhé Lluveras 550bfe3572
Update WC Blocks Playwright tests docs so we pass parameters correctly to PNPM scripts (#43779) 2024-01-22 11:20:59 +01:00
Alba Rincón 95ed989ab4
Fix handling the error from the `product_image_upload` and `update_product_content` functions (#43793)
* Fix handling the error from the `product_image_upload` function

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix linting errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-22 09:59:51 +01:00
Thomas Roberts 7dabf2b031
[Experimental] Add `$request` to additional fields validation filter (#43789)
* Add $request to additional fields filter

* Add changelog entry

* Add data to additional message
2024-01-19 23:21:47 -08:00
Veljko V 7f2fd37fad
Refactor code and merge checkout and coupon tests and add new restricted cart coupons tests (#43819)
* Add changelog and update var naming in block tests

* Format code in two tests

* Add missing payment method set to the test

* Refactor tests and merge cart checkout coupons

* Clear cookies before every test
2024-01-19 10:32:19 -08:00
Mike Jolley 60509aa539
[Experimental] Surface additional checkout fields values in Admin order page. (#43748)
* Get default attributes on front end

* Remove console log

* Show notice about 0 registered fields in editor

* Do not show block in editor if no fields are registered

* Wrapper block

* Update webpack config

* Wrapper block type definition

* Separate fields from the hook block

* Hide when no custom fields exist

* Address and contact fields

* Shared form fields in settings

* Revert render_content to original

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Show address placeholders

* View fields in admin

* Pass order object and context to field hooks in WP admin

* CheckoutFieldsAdmin class

* Move logic to CheckoutFieldsAdmin

* Implement context

* Style checkboxes correctly in meta box

* Update handling

* Undo change to changelog

* Correct docblock comment for woocommerce_admin_shipping_fields

* Document context

* No need to init fields

* Fix checkbox handling for bw compat reasons

* Add changefile(s) from automation for the following project(s): woocommerce

* Force CI

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix CSS rule

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-01-19 11:35:17 +00:00
Luigi Teschio f866d0d30f
[CYS - Core] Improve loading screen (#43791)
* CYS - Core: Create dummy products

* Add changefile(s) from automation for the following project(s): woocommerce

* CYS - Core: Improve loading screen

* fix import

* Add changefile(s) from automation for the following project(s): woocommerce

* update image

* add missing image

* fix CSS

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-19 12:03:19 +01:00
Jonathan Lane a0988461ec
[E2E] Tests for coupon usage restrictions (#43590)
* Changelog

* Tests for restricted coupons

* Update to test checkout not cart… which is what I should have been using

* Removal -- from PR feedback

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-19 10:49:24 +01:00
Alfredo Sumaran f2e90aa01d
Apply Rector suggestions for PHP 8.1 (#43237)
* PHP8 Fixes for templates dir

* Add changelog entry

* Bump template version

* Bump template version number

* Update changelog entry

* Typo
2024-01-19 10:07:53 +01:00
Alfredo Sumaran 5b6897e690
Apply Rector suggestions for PHP 8.1 (#43229)
* Apply Rector suggestions

* Add changelog entry

* Update changelog entry

* Fix PHP Lint errors
2024-01-19 10:07:06 +01:00
Niels Lange 32282a00ce
Add tracking for incompatible extensions (#42816)
* Add tracking for incompatible extensions

* Separate tracking data
2024-01-19 13:03:33 +07:00
Chi-Hsuan Huang 5bdc56e287
Fix activity panel showing incorrect currency (#43733)
* Fix activity panel showing incorrect currency

* Add changefile(s) from automation for the following project(s): woocommerce

* Use store currency setting when order currency is different from the store currency

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-19 12:20:36 +08:00
Atanas Penchev 32ca8c16f2
Replace FlexSlider $.fadeIn() with vanilla .animate() (#41979)
* Vanilla .animate() instead of jQuery .fadeIn()

* Slider .animate() keyframes are now a list with 2 objects

[{ marginLeft: old }, { marginLeft: new }] keyframe syntax instead of
{ marginLeft: [old, new] } keyframe syntax for consistency

* Changelog

* Tweak changelog.

---------

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2024-01-18 15:30:51 -08:00
Ivan Stojadinov 50b4275174
[e2e] Expand simple product creation with more details (#43710)
* Expand 'can create simple non-virtual product' test

* Expand 'can create simple non-virtual product' test

* revert line break

* changelog add

* Revert "changelog add"

This reverts commit 0aa8f62cf7.

* Changelog - add update details

* Use getBy* where appropriate

* Add more geyBy*s

* Add more geyBy*s #2

* Add API calls to delete category and tag

* Update productCategory
2024-01-18 09:59:15 -08:00
Gan Eng Chin 6246cf6ff2
Marketing: Add "Sales" column in Campaigns card (#43284)
* Add sales property to MarketingCampaign class.

* Return campaign sales data in API.

* Display Sales in Campaigns card.

* Fix test for useCampaigns.

* Display a "-" when there are no cost or sales value in Campaigns card.

* Add changelog.

* Fix test for useCampaigns hook.

* Fix PHP lint issue.
2024-01-19 01:42:35 +08:00
Luigi Teschio c6e5d0d504
CYS - Core: Create dummy products (#43784)
* CYS - Core: Create dummy products

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-18 15:52:49 +01:00
Alba Rincón 589259f39f
[CYS on Core] Intro screen - Update the copy depending on whether the user already started to customize their store (#43690)
* Add new banner for no-Ai existing theme

- Add new banner
- Update copy
- Refactor the theme preview structure

* Make preview optional

* Remove log

* Remove unused param

* Fix linting error

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-18 14:59:10 +01:00
Niels Lange 7cd04dfa5a
Add e2e test to hover Mini Cart totals (#43693)
* Add e2e test to hover Mini Cart totals

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Optimise hover test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-18 20:06:28 +07:00
Thomas Roberts bf61e57ce4
Ensure "email" field id does not include the section ID (#43734)
Co-authored-by: github-actions <github-actions@github.com>
2024-01-18 04:33:50 -08:00
Albert Juhé Lluveras 91d0e16151
Convert block templates tests to parametized tests (#43778)
* Convert block templates tests to parametized tests

* Use frontendUtils.addToCart() when possible

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-18 13:29:07 +01:00
Albert Juhé Lluveras 6c3f8cb6fb
Add e2e tests to verify block templates can be customized if the theme has its own custom templates (#43650)
* Update commands to run e2e tests

* Capitalize Product Catalog template name

* Create tests with block theme with templates

* Create Block Theme with Templates test environment

* Update classic theme commands

* Code cleanup

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Code cleanup (II)

* Add config to blocks-playwright.yml and remove unnecesssary .github/workflows/playwright.yml file

* Remove unnecessary imports from product-catalog-template.block_theme_with_templates.spec.ts

* Update blocks e2e commands to pnpm

* Replace hardcoded strings with a variable

* Unify all 'block theme with templates' tests in a parameterized test

* Create a testData object for the Mini-Cart template part test

* Fix some code styling issues

* Create a testData object for the Mini-Cart template part test (II)

* Remove duplicate userText variable

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-18 11:39:24 +01:00
Manish Menaria 8c284a5074
[Product Collection] Add unique ID attribute (#43314)
* Add unique ID attribute to Product Collection block

In this update, we introduced a unique identifier for each instance of the Product Collection block. This change involves several key modifications:

1. **Block JSON Update**: Added a new `id` attribute in `block.json` to store the unique identifier for each block instance.

2. **Product Collection Content Update**: In `product-collection-content.tsx`, we utilized the `uuid` library to generate a unique ID. This is done in a `useEffect` hook, ensuring that each block instance receives a distinct ID upon initialization.

3. **Type Definitions**: The `ProductCollectionAttributes` interface in `types.ts` was updated to include the new `id` attribute, aligning with our enhanced data structure.

4. **Package Dependencies**: To support this feature, `@types/uuid` and `uuid` were added to `package.json`, ensuring we have the necessary tools for ID generation.

This enhancement is pivotal for uniquely identifying each Product Collection block, paving the way for more robust and individualized block handling in the future.

* Rename uniqueId to id

* Add lock file

* Add 'id' context to product collection and template

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Merge trunk with 42861-introduce-a-unique-identifier-for-each-product-collection-block

* Regenerate the lockfile

* Remove autogenerated change in plugins/woocommerce/package.json

* Regenerate lock file

* Rerun CI actions

* Delete pnpm-lock.yaml file & regenerate it using pnpm install command

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-18 15:30:57 +05:30
Luigi Teschio 0a98e5acd6
[CYS - Core] Switch to TT4 when the flow starts (#43740)
* CYS - Core: add unit test

* Add changefile(s) from automation for the following project(s): woocommerce

* fix description

* Enable TT4 when the customize your store process starts

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-17 15:09:12 +01:00
Matt Sherman 824dc6be51
Remove BlockTemplateRegistry (#43589) 2024-01-17 07:12:12 -05:00
Vlad Bozdog 4966697b7f
41827-improve-coupon-usage-by-user-query-performance (#43731)
The sql query can be slow on big data sets, because the post meta value is type of string, and we are quering with a number.
2024-01-17 11:29:28 +01:00
Vedanshu Jain 90b3e11dba
HPOS: Remove buggy check in the data cleanup tool. (#43727)
* Add refund order to unit test.

* Remove buggy defensive check since existance of order is already verified.

* Changelog.

* PHPCS fixes.

* Added more assertions after cleanup to verify cleanup worked.
2024-01-17 14:58:11 +05:30
Chi-Hsuan Huang 8b567dcbc7
Update payment partners 2024 q1 (#43514)
* Remove eway and zipco

* Add Airwallex

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix lint

* Update airwallex images

* Fix category_other value

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-17 09:40:08 +08:00
Alexandre Lara 8258919e22
Product Gallery block: Remove the experimental flag from the Product Gallery block (#43586)
* Remove the experimental flag from the Product Gallery block

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-16 21:05:47 -03:00
Karol Manijak 1dd23f8eeb
Product Collection: add E2E tests to Editor filters - by featured products, by created date, by price range (#43473)
* Add test to Product Collection - featured products filters

* Open Featured option before trying to set it up

* Add test for Created filter

* Add missing awaits

* Add tests for a price range filter

* Add explanation to test step

* Update the conditions for created filter

* Add changelog

* Change leftover values

* Empty commit - trigger CI
2024-01-16 20:59:27 +01:00
Vedanshu Jain 4b401e59de
Add support for specifying filters when searching orders. (#43356)
* Add the UX element dropdown for search box.

* Add unit test for search_filter param.

* Add support for search filter in search query for better performance.

* Link search_filter dropdown with query param.

* Fix conflicts.

* Reformat to allow adding more filters in future.

* Fixing margin in the search filter box.

* Fix merge conflict.

* Apply linting.

* Add changelog.

* Apply PR suggestions.

* Grammer fixes.
2024-01-16 20:37:16 +05:30
Mike Jolley 1dee94362f
[Experimental] Surface additional checkout fields on Order Confirmation page (#43449)
* Get default attributes on front end

* Remove console log

* Show notice about 0 registered fields in editor

* Do not show block in editor if no fields are registered

* Wrapper block

* Styling/spacing

* Update webpack config

* Register heading pattern

* Wrapper block type definition

* get_fields_for_location return fields in array format

* Use wrapper in default content

* Separate fields from the hook block

* Hide when no custom fields exist

* Address and contact fields

* Shared form fields in settings

* remove info block from wrapper

* Revert render_content to original

* rename block

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Update styling

* Create shared get_order_additional_fields_with_values to format values

* Update block names and descriptions

* Show address placeholders

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Unused import

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-01-16 13:17:28 +00:00
Luigi Teschio dc0fd26917
CYS - Core: add unit test for the `NoAI` flow state machine (#43692)
* CYS - Core: add unit test

* Add changefile(s) from automation for the following project(s): woocommerce

* fix description

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-16 14:01:31 +01:00
Thomas Roberts c776fb63bc
[Experimental] Add custom validation hooks for additional checkout fields (#43435)
Co-authored-by: github-actions <github-actions@github.com>
2024-01-16 03:01:51 -08:00
Alba Rincón b9f447b101
Update copy for CYS intro screen sidebar (#43551)
* Update copy for CYS intro screen sidebar

* Add changefile(s) from automation for the following project(s): woocommerce

* Avoid using variables in __()

* Add missing period

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

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2024-01-16 09:07:47 +01:00
Karol Manijak c531067daf
Improve the selector determining the products are loaded in Product Collection tests (#43464)
* Improve the selector determining the products are loaded in Product Collection tests

* Add changelog

* Update plugins/woocommerce/changelog/test-42038-make-product-collection-e2e-tests-more-robust

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

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2024-01-16 08:31:22 +01:00
Niels Lange 9779f0a022
Migrate mini cart tests (#43549)
* Migrate mini cart tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Adjust broken e2e test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-16 13:58:54 +07:00
Adrian Moldovan 04154eee09
[e2e tests] New test that checks a customer can comment on a post (#43419)
* Add new spec for checking comments on a post

* Add changelog

* Update locators to use geBy methods

* Update locators to use geBy methods

* Fixed strict mode violation
2024-01-15 15:24:22 -08:00
Thomas Roberts 23db3eff69
[Experimental] Handle adding attributes during fields registration (#43379)
Co-authored-by: github-actions <github-actions@github.com>
2024-01-15 14:59:36 -08:00
Jonathan Lane f7e8b676d6
Change HPOS and non HPOS e2e tests to use 5 shards each (#43672)
* Change HPOS and non HPOS e2e tests to use 5 shards each

* Add changelog

* Update numbering

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-15 14:18:57 -08:00
Christopher Allford 95bc1189e5
Update `wireit` & Optimize Builds (#43595)
This bumps the version to 0.14.3 so that we can take advantage of some
upstream improvements. It also makes some changes to the way our
builds and watches work to minimize the number of unnecessary
Node processes involved in the execution.
2024-01-15 14:06:55 -08:00
Danny Dudzic 43be71a52f
[Experimental] Product Gallery: Update div elements to ul/li for better accessibility (#43612)
* Product Gallery: Update div elements to ul and li for better accessibility

* Product Gallery: Add changelog files

---------

Co-authored-by: roykho <roykho77@gmail.com>
2024-01-15 13:04:03 -08:00
Christopher Allford 31c170f80c
Added Missing Lint Build (#43665)
Unfortunately, it looks like we need to build in order
to be able to lint. This makes sense since some
projects will lint imports from others that haven't
been built yet.
2024-01-15 12:30:54 -08:00
Alejandro López Ariza cb269e47ab
Update stable tag to 8.5.1 (#43671)
woorelease: Update stable tag to 8.5.1
2024-01-15 20:38:09 +01:00
Adrian Moldovan 357e37819f
[e2e tests] Add new spec for remove product tests (#43518) 2024-01-15 20:23:30 +02:00
Tarun Vijwani d329ced1e8
E2E tests migration: performance -> cart (#42943)
* Add Performance Util class to evaluate performance

* Add performance logging in cart block test

* Remove additional comments

* Migrate Cart  E2E performance tests to Playwright

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Refactor performance calculations in PerformanceUtils page

* Fix linting errors

* Replace beforeAll with beforeEach

* Fix directory creation in performance-utils.page.ts

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2024-01-15 21:03:24 +04:00
github-actions[bot] 33ae0d607d
Delete changelog files based on PR 43641 (#43646)
Delete changelog files for 43641

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-15 16:06:42 +00:00
Maikel Perez d853af297b
Improve the validation process when changing the product type (#43564)
* Remove the required validation constraint from the LINK TO THE EXTERNAL PRODUCT field

* Add changelog file
2024-01-15 12:49:24 -03:00
Alba Rincón 50c7e51d86
Add "No AI" banner image and center banner content (#43547)
* Add "No AI" banner image and center banner content

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-15 14:17:33 +01:00
Karol Manijak 2c628a2938
Product Collection: add E2E tests to Editor filters - by tag and by stock status (#43548)
* Add test to check Product Collection filtering by tags

* Set single product out of stock and unskip the test for stock status

* Add changelog

* Use more specific selector

* Update variables holding products in products.sh to keep the same convention
2024-01-15 11:25:49 +01:00
Leif Singer 89cb0f7cef
clarify comment in maybe_sync_order (#43573)
* clarify comment in maybe_sync_order

* Add changefile(s) from automation for the following project(s): woocommerce

* appease the linter

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-15 10:24:29 +01:00
Vedanshu Jain e1f57da0ad
Use GMT date when fetching cancellation orders. (#43641) 2024-01-15 09:09:19 +01:00
Christopher Allford 758df4854d
Use `ci-jobs` Utility For `ci.yml` Matrix (#43532)
This adds support for using the `pnpm utils ci-jobs` command in our `ci.yml` file. One of the bigger benefits to this change too is that we're now distributing a bundled version of the utils tool. This lets us run it without actually having to install the repo and will let us speed up any workflows that currently do.
2024-01-12 20:32:14 -08:00
Maikel Perez 4f8922aa0b
Remove Variable product template from the product template list (#43422)
* Remove variable-product-template from the product template list

* Add changelog files

* Redirect the variable product to the new experience now that is does not have a product template anymore

* Fix php linter error
2024-01-12 18:47:15 -03:00
Alexandre Lara 4b5c6982e4
[Experimental] Product Gallery block: Prevent page from scrolling when pop-up is open (#43378)
* Prevent body from scrolling when pop-up is open

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Add namespace to the modal-open css class

* Fix class name for the Product Gallery block

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-12 15:10:33 -03:00
Vlad Olaru 469b74433c
Fix Subscriptions autorenewals column for WooPayments pre-install promo in Settings > Payments (#43436)
* Do not sanitize WooCommerce Subscriptiion column HTML in Settings > Payments methods table

* Add features supports entry to pseudo-gateway WCPay Promotion

* Add changelog

* Add changelog entry for woocommerce-admin

* Lint fixes
2024-01-12 19:05:29 +02:00
Matt Sherman ee6642e0c7
Product Editor: Load layout templates from the REST API (#43384)
* Move ProductTemplate type

* useProductTemplate

* Use useProductTemplate

* Use useLayoutTemplate

* Handle if window.productBlockEditorSettings doesn't exist

* Unit tests for useProductTemplate

* Fix fallback in useProductTemplate

* Remove layoutTemplates from ProductEditorSettings on client

* Fallback to simple-product layout template

* Unit test to verify the standard product template is used if product type is variable

* Use standard product template if product type is variable

* Unit test to verify product type is used to match if product template id matches a template with a different product type

* Make sure product type matches on product template, unless variable, in which case we match simple

* Remove layoutTemplates and layoutTemplateEvents from global

* Changelog

* Changelog

* Import types only
2024-01-12 11:54:35 -05:00
github-actions[bot] ad735b2bf2
Delete changelog files based on PR 43550 (#43568)
Delete changelog files for 43550

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-12 17:00:10 +01:00
github-actions[bot] 69360cd93e
Delete changelog files based on PR 43497 (#43563)
Delete changelog files for 43497

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-12 16:52:50 +01:00
github-actions[bot] f6f7c076f4
Delete changelog files based on PR 43504 (#43523)
Delete changelog files for 43504

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-12 16:52:02 +01:00
github-actions[bot] 6dba702341
Delete changelog files based on PR 43506 (#43539)
Delete changelog files for 43506

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-12 16:51:44 +01:00
Jonathan Lane ac5ffdae46
Move e2e HPOS disabled tests to matrix (#43537)
* Move e2e HPOS disabled tests to matrix

* Changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-12 10:30:10 -04:00
Alba Rincón be1c794387
Remove the `patterns_ai_data` post from DB when resetting the CYS (#43499)
* Call the `/wc/private/ai/patterns` to remove the `patterns_ai_data` post from the db

* Add changefile(s) from automation for the following project(s): woocommerce-beta-tester

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-12 13:58:32 +01:00
Luigi Teschio 5edea79b41
CYS: fix php warning raise by the Product Collection block (#43546)
* CYS: fix php warning raise by the Product Collection block

* fix typo

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-12 13:44:06 +01:00
Albert Juhé Lluveras aa661f2234
Fix Mini-Cart price disappearing on hover (#43550)
* Fix Mini-Cart price disappearing on hover

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-12 13:39:34 +01:00
Roy Ho 5d87130b43
[Experimental] Product gallery/remove default (#43487)
* Remove Product Gallery block as default

* Add beta label to Product Gallery block title

* Add changelog files
2024-01-11 18:03:58 -08:00
Niels Lange 780196a5b0
Fix notice template overwrites (#43506)
* Fix notice template overwrites

* Add changefile(s) from automation for the following project(s): woocommerce

* Bump template versions

* Changing template version numbers to 8.5.0 as they haven’t been touched

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-11 22:12:55 +01:00
Jorge A. Torres 9ce508f47d
Add HPOS CLI tool to compare an order between datastores (#43173)
* Add `wp wc hpos status` command

* Add helper method to build order from different datastores

* Add helper method `get_diff_for_order()` to compare orders between datastores

* Add CLI tool `wp wc hpos diff` to compare an order between datastores

* Add changelog

* PHPCS fixes

* Better format for dates
2024-01-11 16:51:01 +00:00
Luigi Teschio ac43fb2426
fix ESLint configuration regarding import path aliases (#43421)
* fix ESLint configuration regarding import path aliases

* Add changefile(s) from automation for the following project(s): woocommerce

* fix eslint configuration

* update eslint-import-resolver-typescript version

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-11 16:40:38 +01:00
Vedanshu Jain c675ce53a5
Fix product prices not being updated on scheduled sale automatically. (#43497)
* Add test for scheduled date start

* Add more test around product sales.

* Simplify sales check + also check product sale price is changed.

* Apply conding standards.

* Add changelog.

* Revert changes added in 39948 with explanation.

* Revert changes added in 39948 with explanation.
2024-01-11 15:18:18 +00:00
Luigi Teschio c409fcd050
[CYS - Core] introduce route guards for the AI flow (#43481)
* CYS - Core: Setup the site with a default homepage when the assembler is loaded

* CYS - Core: Implement route guards

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-11 16:12:41 +01:00
Seghir Nadir 77d0a6a847
Limit cookie dedupe logic to only WooCommerce Cart cookies (#43504)
* limit check to only Woo cookies

* limit logic to woo cookies only

* add changelog

* no need for set-cookie prefix
2024-01-11 15:53:50 +01:00
Luigi Teschio c686f605e6
[CYS - Core] Update the homepage with default patterns when the assembler is loaded (#43457)
CYS - Core: Setup the site with a default homepage when the assembler is loaded
2024-01-11 15:32:16 +01:00
Paulo Arromba 99e825df1f
Migrate merchant local-pickup e2e tests to Playwright (#43057)
* Playwright migrated test file bootstrap and first test for local pickup

* Added page reload to force a new render

* Updated test description

* WIP: figuring out the fake input checkbox

* WIP: figuring out flaky state of local pickup enabled

* Fix flakey enable/disable local pickup

* Migrated remaining local pickup tests to Playwright

* Removed deprecated E2E

* Added changelog

* Corrected linting errors

* Fixed playwright/no-element-handle lint error

* Replace CSS IDs and classes with recommended built in locators

* Remove obsolete function calls

---------

Co-authored-by: Niels Lange <info@nielslange.de>
2024-01-11 21:25:12 +07:00
Albert Juhé Lluveras 67fb8d7511
Add e2e tests to verify Products by Category/Tag/Attribute templates default to Product Catalog template (#43471)
* Add e2e tests to verify Products by Category/Tag/Attribute templates default to Product Catalog template

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-11 12:47:56 +01:00
Sam Seay 5fdbe63530
[Experimental] Rename Collection Filters to Product Filters (#43363)
---------
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2024-01-12 00:27:33 +13:00
Veljko V b6bdfe0572
Add new E2E tests for Shopper Cart Quantity Limit and Cross Sell Items (#43333)
* Add e2e test for shopper cart quantity limit and cross sell items

* Add changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-10 11:36:32 -08:00
Veljko V eb49308781
Add new E2E tests to cover Shopper Checkout Block flow (#41218)
* Add few E2E tests to cover half of the milestone

* Improve welcome modal closing

* Add new test scenarios

* Add more tests to cover creating account and shipping

* Update shipping zone labels to fulfil latest design changes

* Add tests for checkout block coupons and cart block coupons

* Remove only flag leftover

* Add checkout block tax tests and merge with cart test

* Update selectors to match checkout page

* Update checkout block test and comment scenario until issue resolved

* Remove only leftover

* Update checkout block test

* Improve filling shipping and billing checkout

* Create order via API with coupon

* Include checkout filling util helper

* Update test to use get by role for alerts

* Remove only leftover

* Adjust scenario for placing an order as a customer

* Improve existing customer placing order scenario

* Add util helper for adding products to cart

* Remove leftover from testing

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-10 11:36:11 -08:00
Jonathan Lane 9c2048f029
Shard e2e test execution on CI (#43056)
* Try sharding e2e tests

* Update reporter for merge

* Add changelog

* Change to trigger CI

* Update job name to match existing run

* Install with dependencies

* Set working directory

* Only run 2 workers at a time on CI

* Try single run, but 6 shards

* Simplify welcome modal closing util helper

* Switch to more simpler way of closing welcome modal

* Fix flakiness in create shipping zone test

* Try 10 shards

* Drop CI retries to 2 from 4

* Update path to reports

* Fix syntax error in GH file

* Remove working directory

* Update directories

* Path again

* Use Allure dir

* Fix merge step

* Install dependencies

* Setup repo in report merge

* Commands to merge reports

* Set working directory

* Update actions

* Name upload artifacts

* Just numbers for shards

* Update matrix

* Need to redeclare env variables

* Update file paths for merge step

* Remove working directory for merge step

* Try absolute paths

* Missed a path

* Put all artifacts in single download folder

* Tweak download action

* Might not have to merge reports

* Fix typo

* Update path for summary report

* Update results paths

* Tweak condition

* Add step to check success of matrix run

* Remove ternary per feedback

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Veljko <veljano@yahoo.com>
2024-01-10 10:42:05 -08:00
Jonathan Lane bcea0fecb9
Add conditional skip to FTUX (#43437)
* Add conditional skip to FTUX

* Changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-01-10 08:33:02 -08:00
Albert Juhé Lluveras 6bc865dd9b
Add e2e tests for user customization of block templates (#43426)
* Add e2e tests for user customization of block templates

* Update instructions to run Playwright e2e tests

* Code cleanup

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Create revertTemplateCustomizations util

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-10 16:51:53 +01:00
github-actions[bot] b9f371c23b
Delete changelog files based on PR 43269 (#43467)
Delete changelog files for 43269

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-10 16:31:08 +01:00
Thomas Roberts d8331dc3f1
Add additional information block for custom checkout fields (#43274)
Co-authored-by: Mike Jolley <mike.jolley@me.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-01-10 06:20:06 -08:00
github-actions[bot] 5451d1ef23
Delete changelog files based on PR 43428 (#43461)
Delete changelog files for 43428

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-10 14:48:57 +01:00
Jorge A. Torres 39ec01bceb
Fix PHP warning related to logging severity threshold (#43448)
* Fix PHP warning related to logging default severity threshold

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-10 13:32:35 +00:00
Bartosz Budzanowski a6705cda15
Force marketing menu items order. (#41836)
* Force marketing menu items order.

* Add changelog.

* Make sure that Overwiev is present.

* Coupons should be always second.

* Update plugins/woocommerce/src/Internal/Admin/Marketing.php

Co-authored-by: Gan Eng Chin <ecgan@users.noreply.github.com>

* Update plugins/woocommerce/src/Internal/Admin/Marketing.php

Co-authored-by: Gan Eng Chin <ecgan@users.noreply.github.com>

* Use fallback for different languages.

* Use location as a fallback for names.

* Fix linting.

* Refactor.

* Remove unneded new line.

* Remove duplicated code.

---------

Co-authored-by: Gan Eng Chin <ecgan@users.noreply.github.com>
2024-01-10 14:23:41 +01:00
Gan Eng Chin 0636a09f63
Delete old marketing recommendations transient upon update to WC 8.6.0 (#43162)
* Add MarketingRecommendations feature.

The code here is based on other feature with default fallbacks and with data source poller, e.g. see payment gateway suggestions.

* Use MarketingRecommendations feature in API.

* Add spec_key for MarketingRecommendationsDataSourcePoller.

If we don't specify it, the default is `id`, which is not used in our recommendation data, and this will cause things not to work as expected.

* Recursively convert object to array.

This is because all the subsequent functions work with arrays, not objects.

* Make recommended marketing tools and coupons use MarketingRecommendationsInit.

This is so that recommended channels, tools, and coupons make use of the same transient data with data source poller.

* Add changelog.

* Fix PHP lint issues.

* Add doc comment to fix lint error.

* Fix tests in MarketingRecommendationsTest.

* Replace recommendations.json file with generated data in DefaultMarketingRecommendations.

This is to have i18n support.

* Add icons for fallback marketing recommendations.

* Fix PHP linting issue.

* Fix linting issue.

* Fix failing tests with PHP 8.0.

* Remove unused replaced code in MarketingSpecs.

* Delete old marketing recommendations transient upon update to WC 8.6.0.

* Add changelog.
2024-01-10 21:05:36 +08:00
Chris Lilitsas e24aabff04
Introduce a new block style for the Product Details block and set it as default (#42965)
* Introduce the minimal block style for productDetails block

* Change the default style in the template

* Change the default template when using the transform-to-blocks button

* Cleanup

* Organize CSS selectors

* Add opacity on hover

* Fix specificity and add explanation

* Cleanup

* Changelog
2024-01-10 14:08:48 +02:00
Karol Manijak 30888d7f1b
Product Collection: Rename "Inherit query from template" option and make description contextual (#43270)
* Update the copy of Inherit Query from template and make it contextual

* Add changelog
2024-01-10 12:40:05 +01:00
Tung Du 8fb3d394a5
[Experimental] Add basic e2e test for new filter blocks (#43392) 2024-01-10 18:17:00 +07:00
Gan Eng Chin 6802b2720a
Add Default Fallback Marketing Channel Recommendations (#43001)
* Add MarketingRecommendations feature.

The code here is based on other feature with default fallbacks and with data source poller, e.g. see payment gateway suggestions.

* Use MarketingRecommendations feature in API.

* Add spec_key for MarketingRecommendationsDataSourcePoller.

If we don't specify it, the default is `id`, which is not used in our recommendation data, and this will cause things not to work as expected.

* Recursively convert object to array.

This is because all the subsequent functions work with arrays, not objects.

* Make recommended marketing tools and coupons use MarketingRecommendationsInit.

This is so that recommended channels, tools, and coupons make use of the same transient data with data source poller.

* Add changelog.

* Fix PHP lint issues.

* Add doc comment to fix lint error.

* Fix tests in MarketingRecommendationsTest.

* Replace recommendations.json file with generated data in DefaultMarketingRecommendations.

This is to have i18n support.

* Add icons for fallback marketing recommendations.

* Fix PHP linting issue.

* Fix linting issue.

* Fix failing tests with PHP 8.0.

* Remove unused replaced code in MarketingSpecs.

* Remove unneeded false check.

This is because `is_array` would return `false` when `false` is being passed as the argument.

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>

---------

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>
2024-01-10 18:39:59 +08:00
And Finally b62c3bc2f4
Do not access change_feature_enable() statically. Closes #43175. (#43428)
* Do not access change_feature_enable() statically. Closes #43175. Copy of @helgatheviking's cd71d08577.

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-10 09:43:03 +00:00
Corey McKrill 4ecbaf573c
Logging: Add settings UI to configure the logger (#42979)
* Centralize log level labels

* Fire an action specific to loading the Logs tab

* Functional settings screen (no way to navigate to it yet)

* Deprecate wc_register_default_log_handler

* Hook up the settings

* Add section nav

* Add an action hook to the settings form

* Rename render_page method to render_form

* Scaffold the unit tests

* Remove logging enabled check from WC_Logger construct

Caching the enabled setting value turns out to not be a great idea,
it breaks some tests, and could cause issues if the setting value
changes, and then a logging event happens later in the same request.

WP has its own caching layer for options anyway, but one that will
update if the value of the option changes. So this just makes the
enabled check directly from the should_handle method.

* Add most unit tests. Still needs a couple more

* Add remaining unit tests

* Update since values on new hooks to 8.6.0

* phpcs cleanup

* Change deprecated tag from 8.5.0 to 8.6.0

* Add missing return types to unit tests

* Add changelog file

* Add missing clear method to new log file handler

* Change level_threshold default value to 'none'

* Ensure logger has a valid level threshold set, regardless of level given

* Update legacy unit test

* Ensure settings only saved on settings view

* Add settings sections for filesystem and database

Also add a filesystem setting for collapsing log entry lines.

* Add public LoggingUtil class for external usage, and use in WC_Logger

* Remove unused import

* Deprecate wc_get_log_file_path and wc_get_log_file_name

* Preserve white space in log file lines

It turns out that several extensions add log entries that are just
a print_r of an array. Preserving the white space is important for
making this data legible (ideally they'd switch to adding this data
within the context parameter)

* More legacy unit test fixes

* Remove entry collapse option and functionality

It's unclear right now that entry collapsing provides much real
benefit, while it clearly does have some potential drawbacks if
extensions are in use that add print_r output to the log files.

* phpcs cleanup

* Yet more unit test tweaks

* Remove unused code

* Don't wrap extra handler options in <code>, it gets excaped

* Attempt fix for WC_Tests_Logger::test_clear

This is only failing on GH CI, not when running locally. Maybe
ensuring all the created log files are deleted will help.

* Improve logging of fatal errors

This improves the formatting of error messages caught and logged
during shutdown to be more legible and to take advantage of the
logging method's context parameter. With this change, the log entry
will be a simple message on one line, and any stack trace will be
available but hidden in an "Additional context" details element.

* Tweaks to some settings' wording

* Update webooks link to logs, undeprecate

* Remove `realpath` usage since it deos not work if log directory does not already exists.

---------

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-01-10 14:44:05 +05:30
Alba Rincón a38c7bcccf
CYS: fix PHP warnings and pattern button (#43354)
* Remove custom styles from button

* Avoid php warning about images and slug not defined

* Add changefile(s) from automation for the following project(s): woocommerce

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix linting errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-10 09:03:56 +01:00
berislav grgičak c018d7751b
Redirect Woo.com connect request to selected page (#43315)
* Working redirect

* Dynamic connect urls

* Clean up

* Changelog
2024-01-10 07:20:15 +01:00
Chi-Hsuan Huang 2c122ba446
Track core profiler individual plugin installation success/failure (#43309)
* Track core profiler individual plugin installation success/failure

* Add changefile(s) from automation for the following project(s): woocommerce

* Log coreprofiler_store_extension_installed_and_activated async failures

* Log coreprofiler_store_extension_installed_and_activated sync success

* Rename track prop key

* Track error_message for recordFailedPluginInstallations

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-10 11:48:34 +08:00
Maikel Perez 1ad48760c9
Redirect supported product types to the new experience based on the product template associated to it (#43341)
* Redirect supported product types to the new experience based on the product template associated to it

* Add changelog file

* Fix linter error

* Redirect using the product type first and then the associated product template

* Set the product template id also for unsupported product templates

* Add changelog file

* Remove supported_product_types from the RedirectionController since the product_templates is used instead

* Fix php linter error
2024-01-09 18:31:25 -03:00
Alejandro López Ariza ed015e5485
Update stable tag to 8.4.0 (#43425)
woorelease: Update stable tag to 8.4.0
2024-01-09 16:51:08 +01:00
Luigi Teschio 1453597400
CYS - Core: implement 'noAI' flowType (#43368)
* CYS - Core: implement 'noAI' flowType

* Add changefile(s) from automation for the following project(s): woocommerce

* remove unused import

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-09 15:49:59 +01:00
Ismael Martín Alabarce 45377e63be
Update WooPayments task copy (#43365)
* Update WooPayments task copy

* Add changelog

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-09 12:43:47 +01:00
Alejandro López Ariza 937b6d66c8
Update stable tag to 8.5.0 (#43402)
woorelease: Update stable tag to 8.5.0
2024-01-09 11:21:42 +01:00
Daniel Dudzic 3be8264c5d
[Experimental] Product Gallery Pager: Improve accessibility (#43348)
* Product Gallery Pager: Improve accessibility

* Product Gallery Pager: Fix number pager styling
2024-01-09 10:48:49 +01:00
Denis Dvali aa4fda8b27
Remove v1 of plugin installer (#37893)
* Remove v1 of plugin installer.

* Rename WC_REST_WCCOM_Site_Installer_Controller_V2 into WC_REST_WCCOM_Site_Installer_Controller.

* - Create base controller for WCCOM Site requests, extended by Installer and SSR controllers.
- Switch get SSR endpoint to v2 namespace.

* Remove namespace property from Installer controller.

* Linting.

* Add changefile(s) from automation for the following project(s): woocommerce

* Switch request method of reset install endpoint to POST (#43150)

- Switch reset installation state request to POST.
- Change wccom-site API namespace to v3.

* Exclude deleted files from linter check (#43355)

Exclude deleted files from linter check.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-09 09:23:13 +00:00
Tom Cafferkey b58a1932fe
Block Hooks API: Abstract Block Hooks code into a separate trait class (#43250)
Co-authored-by: github-actions <github-actions@github.com>
2024-01-09 08:41:42 +00:00
github-actions[bot] 4f6f7aa8c6
Delete changelog files based on PR 43344 (#43388)
Delete changelog files for 43344

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-09 00:05:51 +00:00
Alexandre Lara 65d9c6764c
[Experimental] Product Gallery block: Rename media setting to "Open pop-up when clicked" (#43302)
* Rename media setting to "Open pop-up when clicked"

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-08 16:58:27 -03:00
Gan Eng Chin 8b1df6c946
Fix "rm: .git/hooks: No such file or directory" error in `pnpm install` when the directory is missing (#43142)
* Fix "rm: .git/hooks: No such file or directory" error in `pnpm install`.

* Add changelog.

* Use "rm -rf" instead of "test" command on .git/hooks directory.

We use the "-f" flag so that it does not throw error when the directory does not exist.
2024-01-08 14:13:42 -04:00
jonathansadowski ce3a38ac55
Try reducing blocks build size (#43344)
* Try reducing blocks build size

* Add changefile(s) from automation for the following project(s): woocommerce

* Only set NODE_ENV if its not already defined

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-08 11:33:49 -06:00
Tomek Wytrębowicz fa62e63037
Make OSA fields extendable, simplify naming (#41690)
- Use `referrer` & `source_type` field names consistently
   Remove the need to translate it back and forth.
- Make fields actually extendable using `wc_order_attribution_tracking_fields`.
   Propagate the field configuration to the client side as well.
   Disambiguate fields in variables and functions.

Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2024-01-08 16:17:04 +01:00
Jorge A. Torres ebb6b0fe54
Fix possible duplication in certain HPOS related Tracks events (#43318)
* Fix possible duplication of HPOS related Tracks events

* Add changelog
2024-01-08 20:12:37 +05:30
Thomas Roberts c159e8a858
Update Checkout Fields error reporting to use `_doing_it_wrong` instead of wc logger (#43283)
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2024-01-08 03:16:08 -08:00
Karol Manijak 8d4f1cecec
Product Collection: Make sure all variations are taken into account when choosing collection (#43273)
* Make sure all variations are taken into account when choosing collection

* Add changelog
2024-01-08 10:55:42 +01:00
Tung Du aab950e27a
[Experimental] Add: Filter blocks migration (#43218)
* add: upgrade panel

* add: toolbar upgrade button

* add: downgrade panel

* chore: changelog

* refactor: move the upgrade component to `Collection Filters` block
2024-01-08 16:31:06 +07:00
Tung Du 823a35a9f2
[Experimental] Add: notice informing users about the usage of filter blocks (#43262) 2024-01-08 13:43:12 +07:00
Sam Seay 1eba9c62a8
Add lint config to blocks to lint imports (#43310) 2024-01-08 18:32:15 +13:00
Maikel Perez a7627fbf0e
Linked product list empty state (#43163)
* Add product search field to the linked product list block

* Add empty state to the linked product list block

* Fix AdviceCard styles

* Create skeleton for the linked product list block

* Fix linter errors

* Move the product list skeleton to the product list component folder

* Revert AdviceCard changes

* Remove upsells and cross-sells block to use linked-product-list block instead

* Add changelog files
2024-01-05 15:26:06 -05:00
Corey McKrill f8b906000f
Remove usage of PHP 8+ function from bootstrapper (#43308)
(PHP 7.4 compat) string lib polyfills are unavailable during bootstrapping.
2024-01-05 12:03:12 -08:00
Roy Ho 6ef04bafa5
Hide sale badge if product image is disabled (#43334)
* Hide sale badge if product image is disabled

* Fix css target to cover all product grid

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Hide on sale badge via PHP side

* Remove css changes

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-05 11:16:37 -08:00
Seghir Nadir e50e7799c0
Support additional fields in the Contact step for Checkout (#43088)
* add custom fields to contact info step

* fix linting

* add changelog

* adjust fields validation

* address review changes

* address sanization and validation

* fix billing address shape

* address schema issues

* cast address to array

* dont sanitize stuff that will validated

* fix linting issues

* fix cart unit test

* revert test

* fix the email issue
2024-01-05 18:35:28 +01:00
Alba Rincón 5752bd7a9f
Fix CYS updateStorePatters to use the new images endpoint structure (#43285)
* Return the correct empty images response

* Use the correct structure in the images endpoint response

* Add changefile(s) from automation for the following project(s): woocommerce

* Throw error when no images and the store is already ai generated

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-05 17:56:51 +01:00
Matt Sherman 9ba256235a
Fix @woocommerce/block-templates changes not being picked up on build (#43328) 2024-01-05 11:44:25 -05:00
Luigi Teschio 3978be9fdd
fix - Product Button: don't trigger jQuery add to cart function when the button is clicked on classic themes (#43325)
* fix - Product Button: don't trigger old add to cart function when the button is clicked on classic themes

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* improve E2E tests

* update changelog

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* update changelog

* use beforeEach

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-05 17:34:16 +01:00
Roy Ho 8bbb35d63e
[Experimental] Product Gallery: Use @container rule to adjust overlay link count font size (#43294)
* Product Gallery: Use @container rule to adjust overlay link count font size

* Add changelogs

* Remove em from line height

* Make view all link smaller
2024-01-05 07:23:19 -08:00
Albert Juhé Lluveras 67ddade2fd
Delete woocommerce-gutenberg-products-block.php file (#43319)
* Delete woocommerce-gutenberg-products-block.php file

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-05 15:32:15 +01:00
louwie17 62e2b53a55
Fix highlight tooltip deprecation notices (#43303)
* Remove deprecated achorRect and IsolatedEventContainer usage

* Add changelog

* Remove unused code

* Add option for shouldCloseOnClickOutside
2024-01-05 08:35:06 -04:00
Tung Du 37c94c7604
[Experimental] Fix: get the correct min/max price for filtering (#43313) 2024-01-05 17:19:33 +07:00
Saad Tarhi 009ff8707b
Move shopper-side Cart E2E tests to Playwright (#42897)
* Convert empty cart E2E test

* Convert product removal E2E test

* Convert quantity update E2E test to Playwright

* Convert E2E tests of the remaining methods that update cart quantity

* Convert E2E test: Proceed to Checkout

* Convert E2E test: Cross-Sells

* Remove test files

* Update plugins/woocommerce-blocks/tests/e2e/tests/cart/cart-block.shopper.block_theme.side_effects.spec.ts

Co-authored-by: Tarun Vijwani <tarun.vijwani@automattic.com>

* Set up cross sells products before e2e test

* Solve merge conflict

* Add changelog entry

* Remove obsolete import

---------

Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Tarun Vijwani <tarun.vijwani@automattic.com>
2024-01-05 17:15:23 +07:00
Albert Juhé Lluveras b07005afd1
Fix commands with tags breaking the command palette (#43269)
* Fix commands with tags breaking the command palette

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-05 10:41:37 +01:00
Tung Du af2dedb137
[Experimental] Filter blocks: add the navigate function back (#43287)
* fix: add the navigate function back

* fix: move the navigate function to a dedicate file only for frontend use
2024-01-05 14:33:43 +07:00
Niels Lange 413fb72630
Fix broken link to internal *.md file. (#43261) 2024-01-05 10:48:36 +07:00
Tarun Vijwani 2b0da27fd0
Update generic incompatibility notice (#42751)
* Move the switch to classic shortcode block button to separate component

- Move modal component file from incompatible-extension-notice component folder to switch-to-classic-shortcode-button folder.
- Rename modal component file to model-content component file.
- Move the switch to classic shortcode block button to separate component folder

* Update generic incompatibility notice

- Update the notice description.
- Add switch to classic shortcode block button to the notice.

* Fix margin in editor.scss

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Update class names in switch-to-classic-shortcode-button component

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Update plugins/woocommerce-blocks/assets/js/editor-components/switch-to-classic-shortcode-button/editor.scss

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

* Refactor SwitchToClassicShortcodeButton component

* Fix css lint erros

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Add type property to notice events

* Refactor switch to classic shortcode button logic

* Use isCart for switchButtonLabel and snackbarLabel

* Remove empty div in sidebar compatibility notice component

* Refactor switch to classic shortcode button event handling

* Adjust wording

* Adjust marging and readability

* Introduce union for SwitchToClassicShortcodeButtonProps type prop

* Simplify logic

* Use proposed text

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2024-01-05 10:47:34 +07:00
Corey McKrill 68c147a491
Settings: Make minor corrections to the HTML markup of settings fields (#43166)
* Corrections to HTML markup of settings controls

* Remove deprecated `valign` attributes from table row elements
* Remove orphaned quotation marks from the end of table row elements

Co-authored-by: Sagehen Studio <2924107+sagehenstudio@users.noreply.github.com>

* Enable title prop for `info` setting type

This gives the `<th>` for the info setting type a closing tag
since its not self-closing. It also allows for adding a `title` prop
to the info setting type, to match all the other setting types.

* Add changelog file

* phpcs cleanup

---------

Co-authored-by: Sagehen Studio <2924107+sagehenstudio@users.noreply.github.com>
2024-01-04 16:08:31 -08:00
github-actions[bot] 88d71aa9c8
Delete changelog files based on PR 43257 (#43291)
Delete changelog files for 43257

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-04 17:08:52 +00:00
Damián Suárez 17c8354ad9
[Product Block Editor]: Be able to dismiss AdviceCard instances (#43124)
* introduce packages/js/data/src/user/types.ts pref

* be able to dismiss the Upsells advice

* rename user pref key

* typify product_advice_card_dismissed prop

* store is dismissed state in the user pref

* delegate the dismiss state to the component

* changelog

* remove console.log :'(

* fix TS issue

* fix TS issue

* changelog
2024-01-04 12:17:03 -03:00
Alexandre Lara bffe12b945
Product Gallery block: Fix e2e tests for Thumbnails block (#43060)
* Fix e2e tests for thumbnails change

* Add changelog
2024-01-04 10:38:32 -03:00
Maikel Perez f34bb52f9e
Linked product list (#43145)
* Create and register product-linked-list-field block

* Add upsells and cross-sells blocks to the simple product template

* Create formatted price component

* Add linked product table to the linked product list block

* Add remove product button to each product row

* Add see product page button

* Add link to the product name so it can be edited in a new tab

* Fix some styles

* Add product search field to the linked product list block

* Fix styles

* Add changelog files

* Fix linter error

* Fix rebase conflicts

* Use useProductEntityProp instead of useEntityProp within product-linked-list-field block

* Move the product list to its own component

* Move the product select to its own component

* Move the product image to its own component

* Fix linter error
2024-01-04 08:34:53 -05:00
Niels Lange 0cffd32875
Remove old noticed on classic checkout when applying coupon code (#43244)
* Remove old noticed on classic checkout when applying coupon code

* Remove old noticed on classic checkout when applying coupon code

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-04 12:31:00 +01:00
Alba Rincón f528361ec2
Show default patterns and products if the images request fails (#43157)
* Show default patterns and products if the images request fails

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove space

* Simplify condition

* Removed unused call

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-04 12:11:00 +01:00
Karol Manijak 4128bff64c
Fix incorrect layout of Product Collection placeholder on Firefox (#43264)
* Fix incorrect layout of Product Collection placeholder on Firefox

* Add changelog
2024-01-04 11:20:57 +01:00
Alba Rincón 9d86e1f038
Remove the double quotes from the AI generated content before saving it (#43249)
* Remove the double quotes from the AI generated content before saving it

This will avoid having two consecutive double quotes and breaking the JSON.

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-04 09:47:28 +01:00
Kyle Nel 4428d81b12
Display ratings on marketplace product cards (#43240)
* Add rating and change product card layout

* Fix some minor CSS bugs in existing code

* Implement skeleton loader

* Update theme card styling to match design

* Add changefile(s) from automation for the following project(s): woocommerce


---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-04 10:07:00 +02:00
Sam Seay faf1c6f09e
[Experimental] Use variations to provide all the product filters wrapped by CollectionFilters block (#43216)
---------
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2024-01-04 18:33:59 +13:00
Siddharth Thevaril a6ea063cba
Fix payment gateway doc (#43238)
* Fix namespace

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-04 12:07:07 +07:00
Tung Du de1d60ebe4
[Experimental] Add Widget support to new collection filter blocks (#43153) 2024-01-04 11:56:24 +07:00
Sam Seay 73160b3c41
[Experimental] Filter out filter options that would result in 0 products. (#43220) 2024-01-04 17:23:40 +13:00
kevinbates 7f7515aa1c
Update readme.txt (#43257)
* Update readme.txt : updated the intro text and added 3 links.

* Changelog.

---------

Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
2024-01-03 19:18:57 -08:00
Leif Singer a81cfff412
Add tests for searching for multiple term IDs (#43089)
* correct copy/paste error

* test searching by multiple tag IDs

* test searching by multiple category IDs

* add the changelog file
2024-01-03 19:18:22 -08:00
Matt Sherman a8dab20997
Layout templates REST API (#43067)
* Endpoint shell

* Single layout template route

* Add area query arg

* Fix BlockTemplateRegistry::get_registered() return type

* Check if templates are registered before registering

* Use json format for layout templates response

* Remove unused use

* Use json format for layout templates response for get_items

* Consolidate processing for get_items and get_item

* LayoutTemplateRegistry

* Fix matching by id

* Get templates from LayoutTemplateRegistry

* Remove unused method

* Fix typo in code doc

* Move template instantiation to registry

* Return template instance, not json when instantiating

* Use LayoutTemplateRegistry instead of BlockTemplateRegistry

* Add code docs for rest controller

* Fix code doc in BlockTemplateRegistry

* Code docs for LayoutTemplateRegistry

* Changelog

* Add code doc for LayoutTemplatesServiceProvider

* Unit test for registering a layout template

* Unit tests for invalid params when registering layout template

* Unit test for layout template instantiation

* Unit test for instantiating layout templates with query params

* Unit test for layout template instance caching

* Cache layout template instances

* Refactor layout template info querying

* Add unit test for layout template instantiation actions

* Add before and after layout template instantiation actions

* Use layout template ID for array key

* REST API unit test to get all items

* Unit test for unregister_all

* Method to unregister all layout templates

* REST API unit test to get all items for a specific area

* Fix to_json() in TestLayoutTemplate

* REST API unit test to get single item

* Fix get_item

* REST API unit test for single item with invalid id

* REST API unit test for get all items for invalid area

* Fix test_cached_instances - array access

* Test that old register hook is called

* Call old register hook

* Remove before hook (will put in separate PR)
2024-01-03 20:02:38 -05:00
Denis Dvali 280fe7cd51
Fix occurrences where Installer_Error exception is returned instead of being thrown (#43108)
* Fix occurrences where Installer_Error exception is returned instead of being thrown.

* Add changefile(s) from automation for the following project(s): woocommerce

* Add @throws tag in function comment.
2024-01-03 14:59:08 -08:00
Tomek Wytrębowicz 70b22764a9
Fix Consent API integration with OSA (trunk-based) (#43012)
- Stop tracking order attribution when the consent is revoked on the same page.
   Switch `wp_consent_type_defined` to VanillaJS event, as this is what the latest Complianz dispatches.
   Remove jQuery dependency.
   5427807509
- Update checkout block data when consent is given/revoked on the same page
   263d0b8a14
- Register WPConsentAPI integration for OrderAttribution
   cde9f642a1
- Don't store empty meta values for order attribution 
   If no values at all are sent, don't create meta records
   00b83eed00
- Don't translate or add parenthesis to unknown placeholder
   bbc4b1f699
- Un-hardcode marketing category in wp-consent-api-integration.js
   45014a715a

Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2024-01-03 22:36:35 +01:00
Damián Suárez b6f8ab94f5
[Woo beta tester]: add User Preference panel (#43125)
* introduce UserPreference panel

* render user preference panel

* expose UserPreferences type

* introduce force mode to update user pref

* rename global object with `__wcbt`

* changelog

* changelog
2024-01-03 17:42:18 -03:00
rodelgc 12e65af8ca
Fix WooAF changelog typo and release date (#43254)
* Fix typo

* Fix `acceleratedReleaseDate` output

* Comment unnecessary steps, jobs

* Do only a dry-run

* Revert "Do only a dry-run"

This reverts commit a41ea99401.

* Revert "Comment unnecessary steps, jobs"

This reverts commit 97985a0ad0.

* Add changelog
2024-01-03 12:56:39 -06:00
Albert Juhé Lluveras 263011bdd2
Prevent Command Palette scripts to enqueue unnecessary scripts in the editor (#43221)
* Prevent Command Palette scripts to enqueue unnecessary scripts in the editor

* Add changefile(s) from automation for the following project(s): woocommerce

* Properly set script asset dependencies

* Create util function to simplify the code

* Fix JS warning when registering WooCommerce Commands

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-03 18:07:43 +01:00
Daniel Dudzic 7163d610e5
Product Gallery: Fix Large Image snapping position on window resize (#43251)
* Product Gallery: Fix Large Image snapping position on window resize

* Product Gallery Snap Fix: Add changelog
2024-01-03 17:46:43 +01:00
Niels Lange ce625318cf
Update contributors list (#43182)
* Update contributors list

* Add changefile(s) from automation for the following project(s): woocommerce

* Add changelog entry

* Add contributors of WooCommerce Beta Tester

* Delete duplicate changelog entry

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-03 18:02:30 +07:00
Michael Pretty e7647333a1
Fix bug when searching orders with a term starting with d, s, or f (#43085)
* Don't prepare the order search $meta_sub_query twice.

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Nestor Soriano <konamiman@konamiman.com>
2024-01-03 11:49:17 +01:00
Sam Seay 187780905f
[Experimental] Use CheckboxList component in interactivity attribute filter (#43217) 2024-01-03 22:58:57 +13:00
Sam Seay 161bf51bd3
[Experimental] Allow overriding placeholder in interactivity Dropdown::render (#43211)
* add: multiple select support to attribute dropdown
* fix: remove active filter from dropdown
* chore: remove unused extractBuiltinColor

---------
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2024-01-03 20:52:45 +13:00
Tung Du 97e4c55aeb
[Experimental] Rating Filter block: fix wrong import path (#43198) 2024-01-03 09:31:50 +07:00
Alexandre Lara 44e4a75419
[E2E Tests] Product Gallery > Thumbnails block: Refactor code to remove unnecessary wait for timeout (#43180)
* Refactor code to remove unnecessary wait for timeout

* Add changelog
2024-01-02 16:29:37 -03:00
Alexandre Lara e968c329c6
Add e2e tests for image transition in Product Gallery block (#43095)
* Add e2e tests for image transition in Product Gallery block

* Create e2e tests for the Product Gallery block when it is inside the pop-up

* Add changelog

* Remove unnecessary lodash dependency import
2024-01-02 16:19:28 -03:00
Alba Rincón f9cdce486a
Increase Pexels product images width to 400px to have a better resolution (#43174)
* Increase product images width to 400 to have a better resolution

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-01-02 13:59:38 +01:00
Sam Seay 5de0f4a274
[Experimental] Refactor the interactivity dropdown to remove dependence on FormTokenField (#43183)
* Also fix https://github.com/woocommerce/woocommerce/issues/43154
2024-01-02 17:13:27 +13:00
github-actions[bot] e43eb1dcab
Delete changelog files based on PR 43177 (#43203)
Delete changelog files for 43177

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-01-01 23:05:34 +00:00
Sam Seay 7619549091
Check if WOOCOMMERCE_BLOCKS_PHASE is set inside build-zip script. (#43169) 2024-01-01 17:20:01 +13:00
Tung Du bd9ddc830a
[Experimental] Add: QueryFilters class to calculate filter data for product queries (#42811)
* add: query filters count class

* chore: method comments

* refactor: rename class to QueryFilters

* fix: price filter count

* fix: price filter url

* chore: remove unnecessary transformation

* chore: remove unused meta query filter

* chore: put public methods on the top of the class

* fix: passing $wp_query

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* fix: stock query clause

* fix: handle and query type for attribute filter

* fix: ensure passing non null value to floor/ceil

* [Experimental] Collection Filter blocks: ensure the namespace is always rendered (#43112)

* fix: ensure the namespace is always rendered

* fix: target only wc queries

* fix: properly reset part of query to make new filter blocks work with Product Collection block
2024-01-01 10:18:50 +07:00
Albert Juhé Lluveras c58b0cf936
Fix error when adding to cart from the Product Collection block if Google Analytics plugin is enabled (II) (#43177)
* Revert "Trigger event `experimental__woocommerce_blocks-cart-add-item` in the SSR Product Button vis Interactivity API (#42946)"

This reverts commit 4fec136da1.

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-29 17:23:35 +01:00
Alexandre Lara 4efd2123a3
[Docs] Update links from WooCommerce.com to Woo.com for the Woo Blocks documentation (#43055)
* Update woocommerce.com URLs in documentation and code files

* Add changelog

* Fix github repository link in extend-rest-api-add-custom-fields.md

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

* Add github reporter (#42974)

* Add github reporter

* Add changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>

* Fix product task redirect to support grouped and external products (#43051)

* Rearrange product redirection logic to better accept grouped and external produc types

* Add changelog

* Modify feedback modal actions (#43005)

* Adapt feedback modal actions

* Add changelogs

* Modify comments

* Fix tests

* Fix test

* Update class-wc-gateway-bacs.php (#43054)

* Update class-wc-gateway-bacs.php

Fix typo in textdomain

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>

* [Product Block Editor]: Add `Linked product` tab (#43009)

* add linked-products to group IDs

* add Linked Products tab

* tweak hideConditions condition

* changelog

* fix typo in doc comment

* Introduce a product type selection within the new experience (#41823)

* Create a relation between the product type and the product block template

* Add 'patterns' to name the kind of products that can be created for a specific template

* Resolve template using its id as a template query param

* Rename ProductEditPattern to ProductTemplate

* Rename get_patterns hook to woocommerce_product_editor_get_product_templates

* Return the list of templates to the client

* Set layout template events as array

* Register the layout template based on the product template or the post type in case of product variations

* Registering non supported product types

* Create and register the woocommerce/product-details-section-description block

* Add the product type to the section description

* Create product type selector

* Fix menu item style

* Highlight selected menu item

* Set the selected product template

* Set product template title to lowercase in the content description

* Rename blocks by blockTemplates under the AbstractBlockTemplate class

* Rename to woocommerce_product_editor_product_templates filter

* Remove product_template_ prefix from the supported_product_types map

* Rename get_formatted to to_JSON and convert the props to client side like

* Refactor get_product_templates

* Fix icon resolution

* Add a confirmation modal for unsupported product templates

* Add changelog files

* Remove product types using for testing

* Fix redirection when changing to a non supported product template

* Set the change button state to busy when it is saving the product

* Fix php linter errors

* Fix rebase conflict

* Move ProductTemplate to Automattic\WooCommerce\Admin\Features\ProductBlockEditor namespace

* Add the to_json definition to the BlockTemplateInterface

* Create default product template by custom product type if it does not have a template associated yet

* Fix some comments and product template creation validation

* Add support to load the product template icon from an external resource

* Fix php linter

* Fix the changelog description

* [Experimental] Interactivity Dropdown multi-select mode, ratings filter and introduce each directive (#42981)


---------
Co-authored-by: David Arenas <david.arenas@automattic.com>

* Introduce the transient files engine (#42877)

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>

* Change marketplace install API request to POST instead of GET (#43033)

* Change marketplace install API to using POST instead of GET
* Fix linting error
* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>

* Prep trunk for 8.6 cycle (#43021)

Prep trunk for 8.6 cycle with version bump to 8.6.0-dev

Co-authored-by: WooCommerce Bot <no-reply@woo.com>

* Add Playwright tests for All Reviews, Reviews by Product and Reviews by Category blocks (#42903)

* Remove Reviews blocks Puppeteer tests

* Minor code cleanup

* Typos

* Create publishAndVisitPost() editor util

* Fix subcategories when importing products in Playwright and add reviews

* Add Reviews blocks tests in Playwright

* More typos

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Create a 'reviews' object in data.ts so we can store reviews data in one single place

* Update test so instead of creating a new post in each test, we go to the already-created post

* Add source comments to reviews data to match it with the script

---------

Co-authored-by: github-actions <github-actions@github.com>

* Release: Remove 8.5 change files (#43022)

Delete changelog files from 8.5 release

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
Co-authored-by: Alex López <alex.lopez@automattic.com>

* Delete changelog files based on PR 43033 (#43079)

Delete changelog files for 43033

Co-authored-by: WooCommerce Bot <no-reply@woo.com>

* Delete changelog files based on PR 43051 (#43081)

Delete changelog files for 43051

Co-authored-by: WooCommerce Bot <no-reply@woo.com>

* Interactive Price Filter: use `context` instead of `state` (#42980)

* feat: use context instead of state

* fix: temporary move the context to inner element for diffing to work

* fix: update context before navigation for optimistic UI

* Load google analytics gtag script asynchronously in WooCommerce Blocks (#43040)

Co-authored-by: github-actions <github-actions@github.com>

* set WOOCOMMERCE_BLOCKS_PHASE to 1 for the production build (#43074)

* set WOOCOMMERCE_BLOCKS_PHASE to 1 for the production build

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>

* Revert "Fix schedule sales error" (#43094)

Revert "Fix schedule sales error (#42700)"

This reverts commit 9b800aa179.

* [Product Block Editor]: add Linked product sections. First approach. (#43013)

* add Linked products, Upsell section

* changelog

* add Cross-lens section

* add links to the Upsell sections

* changelog

* fix lint issues

* fix lint issus

* fix linting issue :-|

* check whether the linked product group is defined

* [Product Block Editor]: introduce ShoppingBags component (#43042)

* add ShoppingBags component

* Add ShoppingBag story

* changelog

* Fix: Collection data being leaked between Collection Filters blocks (#43044)

* fix: CYS - change heading color (#43076)

* fix: CYS - change heading color

* Add changefile(s) from automation for the following project(s): woocommerce

---------

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

* Delete changelog files based on PR 43074 (#43118)

Delete changelog files for 43074

Co-authored-by: WooCommerce Bot <no-reply@woo.com>

* [Product Block Editor]: fix feature flag to hide the Linked products (#43119)

* fix flag to hide/show product editor

* changelog

* Add changelog

---------

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
Co-authored-by: Jonathan Lane <lanej0@users.noreply.github.com>
Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: louwie17 <lourensschep@gmail.com>
Co-authored-by: Fernando Marichal <fernando.marichal@automattic.com>
Co-authored-by: Marc Guay <marc.guay@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Damián Suárez <rdsuarez@gmail.com>
Co-authored-by: Maikel David Pérez Gómez <maikel.perez@automattic.com>
Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
Co-authored-by: Kyle Nel <22053773+kdevnel@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: WooCommerce Bot <no-reply@woo.com>
Co-authored-by: Alex López <alex.lopez@automattic.com>
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-12-29 12:28:11 -03:00
Manish Menaria 1ed5d0872a
Fix: Enable Pagination Block Visibility in Product Collection Block (#43132)
* Fix: Enable Pagination Block Visibility in Product Collection Block

This commit resolves an issue where the Pagination block was not visible in the block insertor within the Product Collection block.

- The core query pagination block name, initially hardcoded, is now declared as a constant `coreQueryPaginationBlockName` in `constants.ts`. This change not only improves code readability but also ensures consistency in using the block name across different files.

- In `index.tsx`, the `addProductCollectionBlockToParentOfPaginationBlock` utility function from `utils.tsx` is imported and executed. This function plays a crucial role in the fix. It dynamically adds the Product Collection block to the parent array of the Core Pagination block, ensuring the latter's visibility in the insertor when editing the Product Collection block.

- The utility function employs WordPress hooks and version checks to gracefully handle different WordPress environments. This careful approach maintains backward compatibility while addressing the current issue.

With these changes, merchants can now easily add a Pagination block from the insertor while working on the Product Collection block, enhancing the user experience and functionality.

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-29 15:45:29 +05:30
Jorge A. Torres 69a864af67
Update tracks events hooks for HPOS (#42879)
* Update ‘orders_view’ tracks event for HPOS

* Update ‘orders_view_search’ tracks event for HPOS

* Update ‘order_edit_date_created’ tracks event for HPOS

* Update ‘order_edit_add_order’ tracks event for HPOS

* Correctly enqueue order tracking JS scripts when HPOS is active

* Address TS script

* Change add_filter() to add_action()

* Fix tests

* Add changelog

* Fix some linting issues

* Make PHPCS happy

* Better handle deprecating old method

* Fix condition
2023-12-29 08:46:59 +00:00
Manish Menaria 5d5fc57e8c
Fix: migration issues when transitioning from Products (Beta) block to Product Collection block (#43130)
* Update product query block templates with WooCommerce namespace

It modifies the `<wp:post-template>` block in multiple files to include a new attribute: `{"__woocommerceNamespace":"woocommerce/product-query/product-template"}`.

The inclusion of the `__woocommerceNamespace` attribute is a strategic enhancement, ensuring that these block templates are explicitly recognized as part of the WooCommerce namespace.
This fix the issue where migration from Products beta block to Product Collection block doesn't work properly.

* Fix linting error

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-29 12:09:12 +05:30
Jorge A. Torres 9ce04dc807
Add hook to exclude certain properties from HPOS sync/verification (#43123)
Certain order properties (or metadata) are not relevant for HPOS verification. For example, `_edit_lock` which is an ephemeral key. So far we've been hardcoding these keys in various places. This provides a new API to access these keys. It also introduces hook `woocommerce_hpos_sync_ignored_order_props` which allows 3rd party code to add new keys to be ignored by sync/verification code.

Fixes #41907
2023-12-28 10:40:02 -08:00
Sam Seay eabb27c72b
[Experimental] Add block text color support to interactivity filter blocks (#43068)
* [Experimental] Render headings as inner blocks of collection filters (#43109)
2023-12-29 03:06:35 +13:00
Damián Suárez b36023e8aa
[Product Block Editor]: render empty state for the Cross-sells section (#43143)
* introduce cross-sells product field block

* export Cross-sell block

* add Cross-sells block instance into the Cross-sell section

* fix importing image bug

* changelog

* changelog

* remove unexpected console.log instance
2023-12-28 09:06:01 -05:00
Tarun Vijwani 2749cebf7f
E2E tests migration: Backend mini-cart tests to Playwright (#43093)
* Migrate Backend mini-cart tests to Playwright

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-12-28 14:33:53 +04:00
Corey McKrill 718978f840
Logging: QoL improvements to the single file view (#43146)
* Clear line highlight with a click

* Vertically center log file line when selected

* Add changelog file
2023-12-28 09:31:31 +00:00
Niels Lange 8e7c5cca1c
Show rating stars for the cross-sells products (#43069)
* Show rating stars for the cross-sells products

* Fix typo introduced in #43116 (#43148)

* Fix typo introduced in #43116

* Add changefile(s) from automation for the following project(s): @woocommerce/product-editor

---------

Co-authored-by: github-actions <github-actions@github.com>

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-28 16:20:07 +07:00
Damián Suárez 35a4f077cf
[Product Block Editor]: render empty state for the Upsells section (#43116)
* Upsells block: scafolding

* export Upsells block

* add Upsells block into the Upsells section

* render empty state for the Upsells section

* iadd hardcoded isEmpty flag

* changelog
2023-12-27 19:40:03 -03:00
Damián Suárez b41ecfe33d
[Product Block Editor]: update the conditions to hide the Cross-sells section (#43140)
* update the conditions to hide Cross-sells section

* changelog

* fix eslint issues
2023-12-27 19:39:16 -03:00
Patricia Hillebrandt de9322fb38
[CYS] Update the neutral color palette to black and white (#43114)
* Update the neutral color palette to black and white.

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-27 09:30:08 -03:00
Patricia Hillebrandt 589617a41d
CYS > Update AI-generated site title, image optimizations and updated directory structure (#43086)
* Remove the last business description check to allow repetition.

* Create the new AIContent directory and update the structure and name of the classes.

* Ensure the store title is updated with new AI-generated content if the previous title was also AI-generated.

* Return if the images result in error.

* Update the name of the option for fetching the AI generated site title.

* Introduce the new adjust_image_size method for shared usage between products and patterns.

* Increase the quality of images used in patterns

* Introduce the ContentImageProcessor class.

* Undo PatternsHelper rename

* Add changefile(s) from automation for the following project(s): woocommerce

* Address lint errors

* Ask AI to summarize the business description if the number of characters provided by the user is bigger than 150 characters.

* Rename the ContentImageProcessor class to ContentProcessor and introduce the new summarize_business_description method.

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-27 08:33:37 -03:00
Karol Manijak 37155abb0c
New flow of adding Product Collection and basic set of Collections (#42696)
* Migrate PR to Core

* Migrate test changes

* Add Custom Collection with inherit query attribute disabled

* Update copy of Product Catalog collection

* Don't choose default active collection in polaceholder and remove highlight

* Remove inherit query option from inspector controls

* Add collection names to Product Catalog and Custom one

* Unify Collection Chooser between Modal and Placeholder

* Bring back util removed by accident

* Replace the translations domain with woocommerce

* Remove leftovers after merge

* Add pagination and no results to Product Catalog and Custom collections

* Revert textdomain change

* Fix lint error

* Add changelog entry

* Change collection label

* Bring back Inherit query from template

* Remove Custom collection and bring back single Product Collection

* Simplify applying collection

* Make sure Inherit query from template is enabled in archive templates by default and disbaled in posts/pages

* Change incorrect Playwright locator

* Add test for Product Catalog inheriting the query in product archive

* Add tests for recommendation collection hiding the predefined filters

* Add reviews to multiple products

* Update expected products in Top Rated

* Remove rating creation in test env and skip undeterministic tests

* Add skip to Best Sellers test

* Update README.md

* Add more keywords to collections, like 'product collection' to recommendation collections

* Rephrase the README note about Collections registration

* Simplify types

* Rename unchangeableFilters to hideControls

* Fix typo in file name

* Remove 'pattern' references from toolbar files

* Replace hardcoded SCSS color with wc variable

* Remove changelog file from different PR

* Move hideControls to Product Collection ayttributes

* Improve responsiveness of columns in Product Collection Placeholder

* Use admin color pallette in Product Collection Placeholder

* Move Inherit query from template to the top of Inspector Controls

* Change the Collection prefix to woocommerce rather than woocommerce-blocks

* Simplify Placeholder and Modal styles
2023-12-27 11:07:27 +01:00
Damián Suárez 300e79ac7f
[Product Block Editor]: fix feature flag to hide the Linked products (#43119)
* fix flag to hide/show product editor

* changelog
2023-12-26 14:14:43 -03:00
github-actions[bot] 0f880ff7a2
Delete changelog files based on PR 43074 (#43118)
Delete changelog files for 43074

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-12-26 22:44:02 +08:00
Luigi Teschio 7cb10704ff
fix: CYS - change heading color (#43076)
* fix: CYS - change heading color

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-12-26 09:07:52 -03:00
Tung Du c2cab76069
Fix: Collection data being leaked between Collection Filters blocks (#43044) 2023-12-26 16:13:30 +07:00
Damián Suárez 7be2481381
[Product Block Editor]: add Linked product sections. First approach. (#43013)
* add Linked products, Upsell section

* changelog

* add Cross-lens section

* add links to the Upsell sections

* changelog

* fix lint issues

* fix lint issus

* fix linting issue :-|

* check whether the linked product group is defined
2023-12-22 18:44:44 -03:00
Damián Suárez 7f2b1c42fd
Revert "Fix schedule sales error" (#43094)
Revert "Fix schedule sales error (#42700)"

This reverts commit 9b800aa179.
2023-12-22 18:20:56 -03:00
Luigi Teschio 99aeaff6dd
set WOOCOMMERCE_BLOCKS_PHASE to 1 for the production build (#43074)
* set WOOCOMMERCE_BLOCKS_PHASE to 1 for the production build

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-22 17:43:53 +01:00
Thomas Roberts db17f27f02
Load google analytics gtag script asynchronously in WooCommerce Blocks (#43040)
Co-authored-by: github-actions <github-actions@github.com>
2023-12-22 08:42:11 -08:00
Tung Du 0c5d01a6ac
Interactive Price Filter: use `context` instead of `state` (#42980)
* feat: use context instead of state

* fix: temporary move the context to inner element for diffing to work

* fix: update context before navigation for optimistic UI
2023-12-22 22:05:31 +07:00
github-actions[bot] d14be998f5
Delete changelog files based on PR 43051 (#43081)
Delete changelog files for 43051

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-12-22 13:10:20 +01:00
github-actions[bot] 3ff4385e69
Delete changelog files based on PR 43033 (#43079)
Delete changelog files for 43033

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-12-22 13:08:07 +01:00
github-actions[bot] 6790d2558e
Release: Remove 8.5 change files (#43022)
Delete changelog files from 8.5 release

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
Co-authored-by: Alex López <alex.lopez@automattic.com>
2023-12-22 09:52:00 +01:00
Albert Juhé Lluveras 2da7b73e76
Add Playwright tests for All Reviews, Reviews by Product and Reviews by Category blocks (#42903)
* Remove Reviews blocks Puppeteer tests

* Minor code cleanup

* Typos

* Create publishAndVisitPost() editor util

* Fix subcategories when importing products in Playwright and add reviews

* Add Reviews blocks tests in Playwright

* More typos

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Create a 'reviews' object in data.ts so we can store reviews data in one single place

* Update test so instead of creating a new post in each test, we go to the already-created post

* Add source comments to reviews data to match it with the script

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-22 09:33:18 +01:00
github-actions[bot] a355346be2
Prep trunk for 8.6 cycle (#43021)
Prep trunk for 8.6 cycle with version bump to 8.6.0-dev

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-12-22 09:27:54 +01:00
Kyle Nel 92e1b932c3
Change marketplace install API request to POST instead of GET (#43033)
* Change marketplace install API to using POST instead of GET
* Fix linting error
* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-22 10:03:11 +02:00
Néstor Soriano a8b0f88bad
Introduce the transient files engine (#42877)
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2023-12-22 08:44:18 +01:00
Sam Seay 3eeeddfdb3
[Experimental] Interactivity Dropdown multi-select mode, ratings filter and introduce each directive (#42981)
---------
Co-authored-by: David Arenas <david.arenas@automattic.com>
2023-12-22 13:34:28 +13:00
Maikel David Pérez Gómez a592a473d3
Introduce a product type selection within the new experience (#41823)
* Create a relation between the product type and the product block template

* Add 'patterns' to name the kind of products that can be created for a specific template

* Resolve template using its id as a template query param

* Rename ProductEditPattern to ProductTemplate

* Rename get_patterns hook to woocommerce_product_editor_get_product_templates

* Return the list of templates to the client

* Set layout template events as array

* Register the layout template based on the product template or the post type in case of product variations

* Registering non supported product types

* Create and register the woocommerce/product-details-section-description block

* Add the product type to the section description

* Create product type selector

* Fix menu item style

* Highlight selected menu item

* Set the selected product template

* Set product template title to lowercase in the content description

* Rename blocks by blockTemplates under the AbstractBlockTemplate class

* Rename to woocommerce_product_editor_product_templates filter

* Remove product_template_ prefix from the supported_product_types map

* Rename get_formatted to to_JSON and convert the props to client side like

* Refactor get_product_templates

* Fix icon resolution

* Add a confirmation modal for unsupported product templates

* Add changelog files

* Remove product types using for testing

* Fix redirection when changing to a non supported product template

* Set the change button state to busy when it is saving the product

* Fix php linter errors

* Fix rebase conflict

* Move ProductTemplate to Automattic\WooCommerce\Admin\Features\ProductBlockEditor namespace

* Add the to_json definition to the BlockTemplateInterface

* Create default product template by custom product type if it does not have a template associated yet

* Fix some comments and product template creation validation

* Add support to load the product template icon from an external resource

* Fix php linter

* Fix the changelog description
2023-12-21 18:45:31 -05:00
Damián Suárez eac1a460f0
[Product Block Editor]: Add `Linked product` tab (#43009)
* add linked-products to group IDs

* add Linked Products tab

* tweak hideConditions condition

* changelog

* fix typo in doc comment
2023-12-21 16:00:32 -03:00
Marc Guay 65828db266
Update class-wc-gateway-bacs.php (#43054)
* Update class-wc-gateway-bacs.php

Fix typo in textdomain

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-21 19:54:12 +01:00
louwie17 9182efaaf6
Fix product task redirect to support grouped and external products (#43051)
* Rearrange product redirection logic to better accept grouped and external produc types

* Add changelog
2023-12-21 14:09:00 -04:00
Jonathan Lane a67a1c6efc
Add github reporter (#42974)
* Add github reporter

* Add changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2023-12-21 09:07:54 -08:00
Moon dc26c5a8f4
Fix incorrect wpBody margin top value set by TasksReminderBar (#43020)
* Use clientHeight to set the correct marginTop -- height is not a valid property

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-21 08:43:50 -08:00
Alba Rincón b3db937d3a
CYS - Ensure the offline modal is displayed whenever AI is unavailable (#42949)
* Show the ai offline modal independently from the onboarding tour

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove log

* Fix tests

* Add customizing parameter to avoid showing the aioffline modal when customizing

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-21 16:56:22 +01:00
Jaclyn Chen d1a8f91836
Analytics: add `date_type` parameter to override date type option for revenue stats (#42938)
* Add `date_type` parameter to revenue stats API for overriding the date type column.

* Update coding styles.

* Add changelog.

* Validate `date_type` value with strict matching.

* Add test cases for passing a valid/invalid `date_type` parameter.

* Remove extra validation on `date_type` value as it's already validated at the API level.

* Check for each allowed value of `date_type` in the test case.
2023-12-21 09:38:19 -04:00
Paulo Arromba 1219cadf10
Fix/ Count() warning/error on invalid data supplied by the filter `woocommerce_cart_shipping_packages` (#42964)
* Fixed count() warning on invalid data supplied by the filter.

* Add changefile(s) from automation for the following project(s): woocommerce

* Removed unnecessary if

* Ordered comment to match if-clause
2023-12-21 13:24:39 +00:00
Fernando Marichal 9b800aa179
Fix schedule sales error (#42700)
* Fix schedule sales error

* Add changelog

* Fix lint

* Fix variable product error

* Add clear cache

* Remove sale price fix from data-store-cpt

* Fix comment

* Remove cache cleaning

* Add unit tests

* Fix lint

* Modify get_price
2023-12-21 10:10:22 -03:00
Thomas Shellberg cf52b42e26
Add React Testing Library to the Woo AI plugin. (#42993)
* Add React Testing Library and the simplest of tests to verify tests can be run successfully.
2023-12-21 12:25:08 +01:00
Niels Lange 01ede130aa
Adjust indents of old notice styles (#43031)
* Clean up old notice styles

* Adjust vertical marging for error list items on TT theme

* Add changefile(s) from automation for the following project(s): woocommerce

* Delete obsolete CSS file

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-21 17:10:14 +07:00
Tom Cafferkey 505fe17db2
Product Hero Pattern: Fix button alignment (#42913)
Co-authored-by: github-actions <github-actions@github.com>
2023-12-21 09:31:23 +00:00
Tom Cafferkey a9550d8894
Store API: Add support to query product_variations by attributes (#42983)
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-12-21 08:09:06 +00:00
Tom Cafferkey 99fc85ae15
Block Hooks API: Add Tazza theme to the list of allowed themes for Mini Cart auto-insertion (#42900)
Co-authored-by: github-actions <github-actions@github.com>
2023-12-21 08:08:54 +00:00
Manish Menaria ba4f3d4d29
Add price range filter to Product Collection block (#42858)
* Add price range filter to Product Collection block

This update introduces a price range filter feature to Product Collection. Changes include:

1. Constants Update:
   - Added `priceRange` as undefined in `DEFAULT_QUERY` and `DEFAULT_FILTERS` in `constants.ts`.

2. Style Adjustments:
   - Added CSS for `.wc-block-product-price-range-control` in `editor.scss` to align the input text to the end.

3. Component Integration:
   - In `inspector-controls/index.tsx`, the `PriceRangeControl` component is now imported and integrated.

4. New Components:
   - `PriceTextField.tsx` and `PriceRangeControl/index.tsx` have been created to handle price range inputs in the Product Collection block.

5. Backend Integration:
   - `PriceRange` interface added in `types.ts` for type support.
   - In `ProductCollection.php`, a filter (`add_price_range_filter`) is added to modify the main query based on the price range, including adjustments for tax considerations.

Overall, this enhancement allows users to filter products within a specific price range. The backend adjustments ensure that the filtering respects tax settings and displays accurate prices.

* Fix formatting

* Fix: Price range filter not working on Editor

* Improve: Share logic between Frontend & Editor

* Add changelog

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Remove duplicate changelog file

* Enhanced Input Control for Price Fields

Key changes include:

1. **Switch to Input Control**: Replaced the NumberControl component with the more versatile InputControl. This offers better handling of currency formatting and user input.

2. **Currency Formatting Logic**: Added robust logic for formatting numbers according to the currency settings. This includes handling thousand separators, decimal places, and currency symbols.

3. **String-to-Number Conversion**: Implemented a function to convert user-entered strings back to numbers, accounting for currency symbols and separators. This ensures accurate parsing of user input for processing.

4. **Input Handling Improvements**: Modified the onChange handlers for minimum and maximum price inputs. Now, they correctly handle edge cases like undefined or zero values, maintaining consistency in the user interface and data processing.

* Refactor price range query handling

1. Introduction of a new method `get_price_range_query_args()` to encapsulate the logic for handling price range queries, especially for the two edge cases:
   - Prices excluding tax displayed including tax.
   - Prices including tax displayed excluding tax.

2. Removal of direct conditionals in the `get_query_results()` method, replacing them with a call to the new `get_price_range_query_args()` method. This makes the code more modular and easier to understand.

This refactor enhances readability and maintainability of the code, ensuring that special cases in price range filtering are handled more effectively.

* Remove unnecessary suffix prop

* Refactor PriceTextField formatting logic for currency

1. Conditional application of thousand separators: The code now checks for the existence of `currency.thousandSeparator` before applying it. This prevents potential errors when the separator is undefined.

2. Simplified decimal separator handling: Introduced a fallback for the decimal separator, defaulting to a period ('.') if not specified by the currency settings.

3. Enhanced readability and documentation: Added comments to clarify the purpose of code blocks, especially where currency symbols are added or removed, and where value normalization occurs.

4. Function renaming for clarity: Renamed `formatValueWithCurrencySymbol` to `formatCurrency`, which better reflects its purpose.

* Fix onBlur issue with PriceTextField component

Refactored the PriceTextField component to utilize useState for better state management. This change introduces a local state variable, 'newValue', to store the current value. The state updates occur in the handleOnChange function, ensuring that the component's state is managed efficiently. Additionally, a new function, handleOnBlur, is implemented to handle the onBlur event, updating the component's state when focus is lost. The handleEnterKeyPress function captures the 'Enter' key press, providing a more user-friendly experience by allowing users to confirm their input with the Enter key.

* Fix linting error

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-21 12:45:20 +05:30
Niels Lange 49d6b2058a
Link cross-sells product image to product page (#42904)
* Link cross-sells product image to product page

* Add changelog entry

---------

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-12-21 11:13:47 +07:00
Justin Palmer cb0c42180a
Revise excluded order statuses for order attribution customer history (#42999)
* Better align excluded order statuses with WC Reports

* Update Tracks data to match updated customer order history count

* Add changelog

* Clarify code comment

* Exclude `checkout-draft` for block checkout/API orders.

* Remove unecessary array_map

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>

* Use existing method to get un-prefixed order statuses

---------

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>
2023-12-21 00:06:30 +01:00
Simran Vijwani 8e351f2f15
Add UTM group to product URL on the Discover page (#41967)
* Add utm_category to discover page

* Fix product category URL params

* Add changefile(s) from automation for the following project(s): woocommerce

* Update productCategory to productGroup in Discover and NoResults components

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: Simran <simran.kaur@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
2023-12-21 02:13:52 +04:00
Dekadinious d8e01b23cd
Update documentation in class-wc-order-item-product.php (#41160)
* Update class-wc-order-item-product.php

* Changelog.

* Fix alignment.

---------

Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
2023-12-20 13:52:00 -08:00
Leif Singer 06dc19ebd4
Ensure the gateway activation email does not depend on the gateway title being stored in the settings option (#42992)
* use `method_title` for the email to the admin as that is better suited for an admin context

* do not require the title to be set in the updated option

* add the changelog file

* adjust the test, too

* appease the linter
2023-12-20 13:44:30 -08:00
Ilyas Foo 4a5373409b
Fix shipping cost formatting to respect shipping formula (#42916) 2023-12-21 10:25:43 +13:00
Kathy 4d7bf10c96
Use product-sale-price ID for hooks. Closes #42907. (#42908)
* Use product-sale-price ID for hooks. Closes #42907.

* attempt to add a changelog
2023-12-20 17:44:32 -03:00
Damián Suárez e1e1d3c593
[Product Block Editor]: add `product-linked` feature flag (#43006)
* Add product-linked feature flag

* cchangelog

* enable product-linked flag in dev for now

* set product-linked unavailable in prod
2023-12-20 16:41:00 -03:00
Daniel Dudzic 7122669d44
Product Gallery: Simplify the Product Gallery Pop-up (#42797)
* Product Gallery Pop-up: Simplify the pop-up for v1

* Product Gallery Pop-up: Update the Product Gallery template part contents

* Product Gallery Pop-up: Add changelog entry

* Product Gallery: Fix CSS linting errors

* Product Gallery Pop-up: Add an additional changelog entry

* Product Gallery Pop-up: Update changelog message

* Product Gallery Pop-up: Fix logic error
2023-12-20 19:03:01 +01:00
Tom Cafferkey 0ba8f7848d
Block Hooks API: Add Amulet theme to the list of allowed themes for Mini Cart auto-insertion (#42899)
Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 15:26:21 +00:00
Luigi Teschio e45089eab3
CYS - select the right font with AI offline (#42973)
* CYS - select the right font with AI offline

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 15:41:19 +01:00
Luigi Teschio 24d0fed8e5
CYS - reset products and pattern when the site doesn't have AI generated content (#42970)
* CYS - reset products and pattern when the site doesn't have AI generated content

* Add changefile(s) from automation for the following project(s): woocommerce

* fix lint

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 15:41:04 +01:00
Niels Lange 2f2e573f48
Fix notice styles (#42692)
* Fix notice styles

* Adjust failing e2e test
2023-12-20 08:29:43 -06:00
Brian Borman df1f5d9e45
Check store api draft order on short code for reserved stock (#42796) 2023-12-20 06:18:47 -08:00
Tom Cafferkey 95c34a430d
Block Hooks API: Add Thriving Artist theme to the list of allowed themes for Mini Cart auto-insertion (#42910)
Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 13:42:38 +00:00
Karol Manijak 4fec136da1
Trigger event `experimental__woocommerce_blocks-cart-add-item` in the SSR Product Button vis Interactivity API (#42946)
* Trigger event experimental__woocommerce_blocks-cart-add-item in the SSR Product Button vis Interactivity API

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Update code comment and add reference to the followup issue

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 13:50:43 +01:00
berislav grgičak 8d6621ece1
Remove install support for Woo.com hosted products (#42952)
* Installer url API

* Redirect if installer not available

* Remove paid product autoinstall support

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 12:52:51 +01:00
Néstor Soriano df17713dea
Add logging and an admin notice for Legacy REST API usages (#41804)
* Add logging and admin noticing for rest api usages

Two new settings are added (UI in the Legacy API settings page):

- woocommerce_legacy_api_log_enabled
- woocommerce_legacy_api_usage_notice_enabled

When any of the two are enabled, legacy API usages are stored
in two options, 'wc_legacy_rest_usages' and 'wc_legacy_rest_last_usage'.

'wc_legacy_rest_usages' is a dictionary keyed by user agent,
each entry is in turn a dictionary keyed by request route,
items are arrays containing first and last usage dates as well
as total usages count (API version is logged too but for simplicity
it's not used to key the data).

'wc_legacy_rest_last_usage' contains the entry for the last usage,
regardless of user agent and route. It's used to display the notice.

When 'woocommerce_legacy_api_usage_notice_enabled' is enabled,
and the 'wc_legacy_rest_last_usage' option exists, an admin notice
displaying its contents is shown.

* Add changelog file

* Linting fixes

* Fix unit test

* Simplify the approach to logging/noticing:

- Remove settings
- Use a transient instead of an option for temporary data
- Store temporary data by user agent but not by route
- Make the admin notice dismissable
- Don't log now show the notice if the legacy REST API extension
  is installed and active
- Add a filter to explicitly disable the logging

* Small fixes, including a missing "exit" after request processing

* Apply suggestions from code review

Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>

* Fix linting issues

* Update the warning text under the "Enable legacy REST API" setting

* Change the rules to display the notice.

Now it won't appear if the transient isn't available
or if the Legacy REST API is disabled (or if the Legacy REST API
extension is active, as before); but if the user hasn't
explicitly dismissed the notice it will appear again if the transient
is recreated or the Legacy REST API is enabled again.

---------

Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
2023-12-20 11:34:31 +00:00
Justin Palmer 8853c93aca
Tweak Order Attribution meta data and Tracks data (#42937)
* Add the source type / origin of "Web admin" for orders created in admin

* Include "Web admin" in values for Order information metabox

* Include "Web admin" value for the Order information metabox

* Use the Order Origin meta value in the Origin column of the Orders table

* Add web admin and direct as origin values, and a flag for un/translated

* Use the untranslated origin_label value in Tracks

* Don't store the origin label in the database to allow better l10n

* Lowercase origin label in Tracks

* Empty label and Direct or Web admin as source for orders table column

* Better Tracks customer order count and include customer status

* Add changelog

* Update test to expect Unknown

* Remove short ternary

* Change OA meta box title to Order Attribution

* Use native order method `get_total_refunded`

* Simplify origin labels - use the same value for Orders Edit and table

* Correct imprecise doc comment.

* Improve customer order count and total spend calculation

* Make default label "Unknown" (for pre-OA orders, for example)

* Update tests to match new labels
2023-12-20 12:28:19 +01:00
Kyle Nel 58138e0036
Hide In-app marketplace feature flag UI (#42951)
* Hide Marketplace feature toggle UI
* Ensure marketplace feature is active in DB on all sites

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 12:44:22 +02:00
Alba Rincón 8484520231
CYS > Update copy to remove the duplicate "try to include" (#42960)
* Remove duplicated text

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 10:39:09 +01:00
Thomas Roberts 7768ef5b5c
Prevent "Use same address for billing" being checked by default if addresses differ (#42967)
* Don't access the keys of what is now just an array

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-20 14:47:59 +07:00
Matt Sherman 0b315380ed
Skip BlockRegistry tests for now until we can figure out why they are flaky (#42977) 2023-12-19 22:51:50 -05:00
Kathy 7cbf7a3442
Cart: Force calculate totals when ordering again (#42921)
Ensure cart totals are correctly calculated when using "Order again".

Fixes #42889
2023-12-19 16:58:41 -08:00
Barry Hughes d033a40b26
Tweak create-product-attribute spec (#42854)
* Adds missing aria-label and tabindex HTML attributes to the Help tip element for "Product data" on "Add new product" page.

* Escape HTML tags

* Added changelog

* Update comment

* Amend method for selecting "New attribute" placeholder.

* Restore use of `getByRole()` and select first instance (two are being matched, in some cases).

* Use last match (in some test runs, `getByRole()` is unexpectedly matching more than 1 heading.

---------

Co-authored-by: Sagar Tamang <mi5t4n@gmail.com>
2023-12-19 16:35:20 -08:00
Luigi Teschio 310de4cc9f
Docs: Compatibility Layer - update documentation about `woocommerce_single_product_summary` (#42862)
* docs: Compatibility Layer - update documentation about woocommerce_single_product_summary

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-19 23:18:24 +01:00
Paul Sealock b04c45ee5e
Shipping Settings: Highlight text on focus of cost input values (#42689) 2023-12-20 08:22:17 +13:00
louwie17 a72f3ee7a2
Add grouped and external products to new experiment (#42934) 2023-12-19 14:21:05 -04:00
Albert Juhé Lluveras 06e5b43d52
Reviews by Product block: fix encoded in input aria-label (#42944)
* Reviews by Product block: fix encoded in input aria-label

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-19 13:05:18 +01:00
Mike Jolley fe37bf8ddb
Remove duplicate cookie headers from the response (#42828)
Co-authored-by: github-actions <github-actions@github.com>
2023-12-19 03:10:52 -08:00
Tom Cafferkey 73e696f467
Block Hooks API: Add Zaino theme to the list of allowed themes for Mini Cart auto-insertion (#42912)
Co-authored-by: github-actions <github-actions@github.com>
2023-12-19 11:06:35 +00:00
Seghir Nadir d63dd1ed49
Allow passing partial data to Store API extensions field. (#42790)
* Make extended fields optional in Store API

* add tests

* add changelog

* update logic in validate function

---------

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-12-19 12:04:11 +01:00
Paul Sealock 23f44c0484
Shipping Settings: revert refresh styles (#42738) 2023-12-19 23:42:21 +13:00
Tung Du c651b10b3d
Add: Active Filters block powered by Interactivity API (#42008)
* add: active filters block

* update text domain

* chore: linting

* use template string instead of concat

* add experimental flag to register block type calls

* chore: update comments

* feat: register active rating filter data

* fix: unique navigation id when collection filters are added outside product collection

* fix: active filter rating id

* fix: return the href

* chore: phpcs
2023-12-19 17:29:33 +07:00
Jorge A. Torres 1965dfb63e
Add CLI tool to remove order data from legacy tables (#42848)
* Introduce `LegacyDataHandler` for handling legacy orders in the HPOS datastore

* Add methods to count and obtain orders subject to cleanup

* First pass at metadata cleanup for orders

* Add unit tests

* Implement `wc hpos cleanup` CLI tool

* Make PHPCS happy

* Add changelog

* Change error to warning

* Improve tests

* Fix unit tests

* Allow cleaning up of placeholders with meta

* Add support for `--force` flag

* Update plugins/woocommerce/changelog/enhancement-41914

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

* Update plugins/woocommerce/src/Database/Migrations/CustomOrderTable/CLIRunner.php

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

* Update plugins/woocommerce/src/Database/Migrations/CustomOrderTable/CLIRunner.php

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

* Exclude auto-draft

---------

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2023-12-19 09:32:55 +00:00
Tom Cafferkey bd6a8d365a
Block Hooks API: Add Tsubaki theme to the list of allowed themes for Mini Cart auto-insertion (#42911)
Co-authored-by: github-actions <github-actions@github.com>
2023-12-19 08:59:13 +00:00
Bartosz Budzanowski 1c4d373c84
Fix Order Attribution device type in tracks. (#42814)
* Fix Order Attribution device type in tracks.

* Add changelog.

* Fix indentation.

* Remove wrong comment.

* Update plugins/woocommerce/changelog/fix-order-attribution-device-type-in-tracks

Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>

* Update plugins/woocommerce/src/Internal/Admin/Orders/MetaBoxes/OrderAttribution.php

Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>

* Remove trailing whitespace.

---------

Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-12-19 09:18:19 +01:00
Tarun Vijwani 82a6611144
Move the switch to classic shortcode block button to separate component (#42724)
* Move the switch to classic shortcode block button to separate component

- Move modal component file from incompatible-extension-notice component folder to switch-to-classic-shortcode-button folder.
- Rename modal component file to model-content component file.
- Move the switch to classic shortcode block button to separate component folder

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Update class names in switch-to-classic-shortcode-button component

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Update plugins/woocommerce-blocks/assets/js/editor-components/switch-to-classic-shortcode-button/editor.scss

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

* Refactor SwitchToClassicShortcodeButton component

* Fix css lint erros

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
2023-12-19 11:44:09 +04:00
Paul Sealock 055b1429fe
Admin.scss: Provide image-mask for Chrome (#42853)
* add mask-image

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-19 16:44:57 +13:00
Corey McKrill 7ff0e47690
Navigation: Change error_log call to doing_it_wrong (#42890)
Avoids printing an error log message in the middle of phpunit output.

Co-authored-by: Leif Singer <leif@automattic.com>
2023-12-18 14:26:38 -08:00
Daniel Dudzic 11b8276a29
Product Gallery: Add Group block labels (#42868)
* Product Gallery: Add Group block labels

* Product Gallery Group Labels: Add changelog entry

* Product Gallery Group Labels: Add an additional changelog entry

* Product Gallery Group block labels: Update changelog message
2023-12-18 22:24:30 +01:00
Maikel David Pérez Gómez 1c3843e4ec
Remove list/sale price from the General tab in grouped products (#42909)
* List and sale price should not be visible in the general tab for grouped products.

* Add changelog files

* Fix lint error
2023-12-18 16:26:38 -04:00
Corey McKrill 89fe33d64f
Logging: Render line breaks in log messages in the db log list table (#42683)
Allow for line breaks within log messages so they can be easier to read when they contain a lot of content.

Based on a suggestion in #27758

Co-authored-by: Moritz Meißelbach <4208996+Biont@users.noreply.github.com>
2023-12-18 11:24:53 -08:00
Corey McKrill 61885b8013
Logging: Improve functionality in new LogHandlerFileV2 handler class (#41802)
This fleshes out the LogHandlerFileV2 class that was introduced back in #40662. It no longer extends the original file log handler, but works as a standalone. To realize the improvements in the handler class, lots of improvements are also made to the File and FileController classes.

Notable enhancements in this handler class vs the original one:

* Better algorithm for determining the "source" of a log entry when none is provided.
* Normalizes the source property of a log entry so that variations in capitalization will still result in the same value.
* Improves file rotation behavior so that it will consistently increment each rotation up by one.
* Formats log messages to remove line breaks, so that each line of a log file is an entire entry.
* To complement this, data from the $context parameter is added to the log entries, and displayed in the log file viewer as prettified JSON, hidden behind a `<details>` element. Thus, each log entry can be expanded to show the context data, but it won't dominate the screen in the log viewer by default.

Fixes #41561
2023-12-18 10:42:17 -08:00
Nathan Silveira 09bcb3fcac
Add support for appending a unique string to the filename for the wp/v2/media endpoint (#42702)
* Extract 'downloadable product' class and include it for API endpoint calls as well

* Re-add mediauploader component

* Restore UploadFilesMenuItem

* Provide additionalData type

* Restore MediaUploader component

* Lint PHP

* Add changelogs

* Update pnpm-lock

* Revert "Update pnpm-lock"

This reverts commit b61ee5813aa0b7b8b1ea8e71423bedbb6f876139.

* Revert pnpm-lock.yaml

* Fix unit tests

* Use WC_ABSPATH
2023-12-18 14:12:44 -03:00
nigeljamesstevenson bbe2a6f2d7
Cherry pick #290 into trunk - Address potential rXSS vulnerability (product-reviews-have-moved notice) (#42728)
* Revert "k6 perf tests: Fix parsing of COT/HPOS environment variable (#40930)"

This reverts commit 50c56d8427, reversing
changes made to cbc3bac88c.

* Address potential rXSS vulnerability in the product-reviews-have-moved notice.

* Changelog.

* Restore button-based approach for notice dismissal.

In the context of this edit comments screen, it looks better as a button (than as a link, which would require extra CSS to support).

* Tidy.

* Update tests: reviews-have-moved notice HTML has been updated.

* Modify form-based approach following code-review feedback.

---------

Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
2023-12-18 16:28:17 +00:00
Ron Rennick de774715bc
Add product image by SKU (#40076)
* add matching image by sku exp feature

* attach featured image in rest api

* add CSV import support

* include changelog

* update from feedback- move to products advanced settings

* address phpcs

* bump @since to 8.5.0

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2023-12-18 10:13:11 -04:00
Albert Juhé Lluveras 140d1db2cc
Add tracking when opening or searching in the Command Palette (#41838)
* Add tracking when opening or searching in the Command Palette

* Add changefile(s) from automation for the following project(s): woocommerce

* Add 'origin' property to all Command Palette events

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-18 14:36:53 +01:00
Kyle Nel 56d038ff5f
Add redirect to new In-App marketplace installer (#42010)
* Add redirect to new In-App marketplace installer

* Update to shared redirect method

* Add changelog

* Add feature flag check

* reuse get_helper_redirect_url

* Remove debug code

* Fix linter issues

* Add linter exception

---------

Co-authored-by: Bero <berislav.grgicak@gmail.com>
2023-12-18 13:25:13 +00:00
Cem Ünalan 23ec020ed9
Marketplace: refresh subscriptions if "install" parameter exists (#42704)
* Marketplace: refresh subscriptions in if "install" parameter exists

* Marketplace: handle loadSubscriptions or refreshSubscriptions failing

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-18 12:53:36 +00:00
Jorge A. Torres 26b7903a68
Add hooks around HPOS orders being synced from/to posts on read/write (#42866)
* Remove unnecessary code

* Add hooks for when an HPOS order is updated from post or backfilled to a post

* Add changelog

* Add docblocks
2023-12-18 12:49:48 +00:00
Seghir Nadir 8ecfcfb9a0
Add Checkbox support for Additional Fields in Checkout Block (#42780)
* Introduce Additional Fields API for Checkout Block https://github.com/woocommerce/woocommerce-blocks/pull/12073

* revert test to what it was

* Default to text, if the type supplied is not supported throw an error

* Add type for options

* Return null if somehow the select made it through without options

* Make select fields type enum and add options to schema

* Lint fixes

* Update plugins/woocommerce-blocks/assets/js/base/components/cart-checkout/address-form/address-form.tsx

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

* Update plugins/woocommerce/src/Blocks/Domain/Services/CheckoutFields.php

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

* Update checks to log errors and fail gracefully

* Add field id to class names

* Fix lint error

* Fix short array use

* Introduce Additional Fields API for Checkout Block https://github.com/woocommerce/woocommerce-blocks/pull/12073

* Default to text, if the type supplied is not supported throw an error

* Lint fixes

* Introduce Additional Fields API for Checkout Block https://github.com/woocommerce/woocommerce-blocks/pull/12073

* add support for registering checkboxes

* remove extra error log

* add styling

* fix rebase conflit

* fix rebase conflit 2

* fix linter errors

* address review comments

* add warning for checkbox

* fix changes

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
2023-12-18 13:21:36 +01:00
Alba Rincón d5a46a1cfb
Remove padding for the products query when background is added (#42817)
* Remove padding for the products query with background

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
2023-12-18 11:14:43 +01:00
Sam Seay 6d4c69850c
Experimental Collection Rating Filter (#41999)
Introduce Experimental Collection Rating Filter, CheckboxList interactivity component.
2023-12-18 22:47:24 +13:00
Christopher Allford bf29119032
Updated PNPM to ^8.12.1 (#42860) 2023-12-18 20:31:49 +13:00
Roy Ho d15bfd2398
Product Gallery: reset main image when variations are cleared (#42830)
* Product Gallery: reset main image when variations are cleared

* Add changelog for woo core

* Update event name to be more descriptive
2023-12-15 13:22:10 -08:00
Jonathan Lane 1bf35ac737
Playwright test workflow migration from Blocks repo (#42804)
* First pass at Playwright test migration

* Set working directory

* Remove exec

* Configure the environment before testing

* Remove filter

* Update paths for tests

* Try explicitly stating working-directory

* Change tests directory

* Try running all tests

* Uncommented project

* Update commands to run tests

* Comment out env config

* Uncomment

* Changelog

* Set up multiple test configurations

* Update failing test

* Update paths for artifacts

* Update path to artifacts

* Path to results

* remove unnecessary file

* Skip translation E2E tests

Skipping translation tests until we fix the missing translations issues after we changed the domain to "woocommerce"

* Update the artifacts path

* Fix lint errors

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: Saad Tarhi <saad.trh@gmail.com>
2023-12-15 09:34:29 -08:00
Keith Light 6e8678aca0
Add HTML5 theme support to NO JS handling (#42753)
* Add HTML5 theme support to NO JS handling

* Add changelog entry

* Tweak changelog.

* Add phpcs ignore comment for safe unescaped output

---------

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2023-12-15 09:15:14 -08:00
Patricia Hillebrandt 69172606f5
CYS - AI Improvements (#42800)
* Add the response_format to the params for requests to AI to ensure it will return the responses in JSON format.

* Update the prompt to define the search term for images from Pexels.

* Streamline product content update and the product image uploads within the ProductUpdater class.

* IMprove prompts for images and product content generation.

* Update the prompt for defining the search term on Pexels and drop double quotes from the response.

* Update the prompts and the position for the titles on content generation for the woocommerce-blocks/testimonials-3-columns pattern.

* Set the 'woocommerce_ai_managed_images' transient for the products endpoint callback in case execution is interrupted so images don't have to be fetched from Pexels again.

* Update the prompt for defining the search term for images.

* Remove unused methods from the PatternsHelper class.

* Update the prompt for AI content generation in patterns.

* Update the prompts for the testimonials and the Hero Product 3 Split patterns.

* Update the position for the main title in the Hero Product 3 Split pattern.

* Reduce the size of the images uploaded to the media library for products.

* Add docblock and update prompts.

* Update the default size of the images received from Pexels to be downloaded and uploaded to the media library.

* Update prompts for the Hero Product 3 Split pattern.

* Add changefile(s) from automation for the following project(s): woocommerce

* Address lint errors.

* Update array formatting

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-15 11:49:16 -03:00
Thomas Roberts 0c6a943c42
Add select field type for custom checkout fields (#42758)
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Nadir Seghir <nadir.seghir@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
2023-12-15 06:39:22 -08:00
louwie17 90dc5bad2e
Address some deprecation warnings (#41845)
* Remove use of deprecated conditional block

* Remove use of deprecated context usage

* Remove use of deprecated positoin on Dropdown in favour of popoverProps

* Add changelogs

* Remove unused import

* Fix lint errors

* Remove popoverProps.position with popoverProps.placement

* Update missed items replacing position to placement

* Fix lint error

* Fix placement position

* Update changelogs
2023-12-15 09:45:06 -04:00
Seghir Nadir 12572ce08c
Introduce Additional Fields extensibility API (#42695)
* Introduce Additional Fields API for Checkout Block https://github.com/woocommerce/woocommerce-blocks/pull/12073

* add changelog

* Auto load the Blocks/Domain/Services/functions.php file

* add changelog

* revert test to what it was

* Update text domain for translations

* Ensure address data is added on the cart block too

* fix lint problem

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
2023-12-15 13:45:38 +01:00
Ilyas Foo 3d7e6bc796
Enable WCCOM shipping partners API consumption (#42810)
* Enable shipping partners API use from frontend

* Changelog

* Add id to each shipping partner to match wccom structure
2023-12-15 20:33:36 +08:00
Damián Suárez d996008219
[Product Block Editor]: propagate content from description inner blocks to Modal editor (#42768)
* set description like the property to update

* switch between summary block and block preview

* add todo: comment

* femove duplicated doc comment block

* Use a quick check to improve performance

* expose getContentFromFreeform() helper fn

* parse freeform content to valid blocks

* changelog

* fix TS issue

* changelog
2023-12-15 09:20:02 -03:00
Thomas Roberts 865ea6ada9
Disable `DisallowShortArraySyntax` and `InternalInjectionMethod` sniffs for blocks files. (#42863)
* Disable some rules for blocks files

* Add changelog
2023-12-15 12:39:31 +01:00
Tom Cafferkey 5cdbc8c98a
Merge branch 'trunk' into update/auto-insert-mini-cart-into-tt2 2023-12-15 08:08:45 +00:00
Tom Cafferkey 9f997106ec
Block Hooks API: Add TT3 theme to the list of allowed themes for Mini Cart auto-insertion (#42760) 2023-12-15 08:07:31 +00:00
github-actions bbc0390e35 Add changefile(s) from automation for the following project(s): woocommerce 2023-12-14 20:26:58 +00:00
paul sealock 7b1f538573 Handle multiple tables in an html string 2023-12-15 09:15:01 +13:00
nigeljamesstevenson 3042b9fba6
Update Action Scheduler to 3.7.1 (#42820) 2023-12-14 17:01:54 +00:00
Tom Cafferkey b72d9e341f
Merge branch 'trunk' into update/auto-insert-mini-cart-into-tt2 2023-12-14 15:48:59 +00:00
Tom Cafferkey 59fb6aa2c6
Merge branch 'trunk' into update/auto-insert-mini-cart-into-tt3 2023-12-14 15:48:56 +00:00
tjcafferkey e1853dcfe6 Change [] to array() for linting 2023-12-14 15:46:22 +00:00
tjcafferkey 23ff1a54cd Change [] to array() for linting 2023-12-14 15:40:38 +00:00
Seghir Nadir 25d0417644
Add InternalInjection sniff exceptions for blocks (#42821) 2023-12-14 16:36:40 +01:00
Tom Cafferkey c989f6e337
Merge branch 'trunk' into update/auto-insert-mini-cart-into-tt3 2023-12-14 14:25:58 +00:00
Leif Singer 6f902e3dbb
Delete trashed orders after `EMPTY_TRASH_DAYS` as defined by WordPress (HPOS) (#41949)
* Add a test that fails if trashed orders are never deleted under HPOS

* Delete trashed orders after `EMPTY_TRASH_DAYS` as defined by WordPress

* add the changelog file

* appease the linter

* return early if HPOS is not authorative

* attempt to precede WordPress itself (which uses priority 10) to increase the probability of orders and their posts being handled solely by us

* appease the linter
2023-12-14 14:24:09 +00:00
Ron Rennick 5ca5d9bdab Merge branch 'trunk' into add/blocks-injection-rule 2023-12-14 10:11:16 -04:00
Tom Cafferkey 853c57a604
Merge branch 'trunk' into update/auto-insert-mini-cart-into-tt2 2023-12-14 14:04:11 +00:00
Roy Ho 255f1ff919
Product gallery/legacy/transform (#42719)
* Product Image Gallery: Add transform to Product Gallery block

* Single Product Template: Transform to blocks with new Product Gallery block

* Ensure we first check for block existance

* Add changelog

* Add/delete changelog file
2023-12-14 05:47:48 -08:00
Luigi Teschio 9ff69b01cc
fix: CYS - fix path images patterns (#42705)
* fix: CYS - fix path images pattern

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-14 14:12:52 +01:00
github-actions a4d6537597 Add changefile(s) from automation for the following project(s): woocommerce 2023-12-14 13:03:44 +00:00
Ron Rennick 8292ff1cca Add InternalInjection sniff exceptions for blocks 2023-12-14 08:59:57 -04:00
nigeljamesstevenson 3ada74b56d Update Action Scheduler to 3.7.1 2023-12-14 12:56:05 +00:00
berislav grgičak 2964800f27
Add subscription install modal (#42009)
* Install modal

* Add connect button

* Small product card

* Add install functionality

* Add no subscription error

* Fix error notice loading

* Connect style

* Add success state

* Fix admin urls

* Add error message to failed install events

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-14 12:45:40 +01:00
Luigi Teschio 0903a53664
fix: CYS - update copy (#42703)
* fix: CYS - update copy

* not format style file

* Add changefile(s) from automation for the following project(s): woocommerce

* add changelog

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-14 12:32:37 +01:00
github-actions d8132154ba Add changefile(s) from automation for the following project(s): woocommerce 2023-12-14 10:59:34 +00:00
tjcafferkey 30dab31b4c Enable Mini Cart auto-insertion for TT2 but exclude some header patterns 2023-12-14 10:48:55 +00:00
Seghir Nadir 2b54c8a61d
Performance: Bootstrap metrics tracking (#42005) 2023-12-14 10:45:15 +01:00
Alba Rincón 5187b2d1ef
Change the imageSizing to single in patterns (#42767)
* Change the imageSizing to single

Images need a higher resolution in patterns used for the CYS project in the assembler

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-14 10:26:17 +01:00
Riad Benguella 36c259a2a1 Performance: Bootstrap metrics tracking 2023-12-14 09:52:01 +01:00
Sam Seay 609f39b073
Fix the cp command for blocks so that the contents of build is copied into assets/client/blocks (#42807) 2023-12-13 21:32:24 -08:00
RJ 762c2ef924
add: easyship to shipping task for AU, NZ, SG, HK (#41852) 2023-12-14 11:13:08 +08:00
Christopher Allford e46d6bd207
Fixed `watch:build` Race Conditions (#42802)
There's currently a bug with `wireit` that makes the watch crash.
Swiching over to `nodemon` until that is resolved will
keep that from happening.
2023-12-13 18:25:16 -08:00
Paul Sealock 346664f348
Shipping Settings: Allow extensions to render description links (#41954) 2023-12-14 14:31:00 +13:00
Paul Sealock 4e98801e8f
Shipping Settings: Replace tables only for use in modals (#42795) 2023-12-14 14:02:58 +13:00
Jonathan Lane 8e2e7de7ce
Migrate Puppeteer test action from Blocks repo (#42733)
* Migrate Puppeteer test action from Blocks repo

* Update file path

* Use pnpm

* Use npm

* Updates based on feedback

* Comment out paths for testing

* Fix paths with working directory

* Use pnpm

* Fix missing pnpms

* npm instead

* Do use pnpm

* Update command

* Blocks wp-env config

* Update paths, config files

* Run test commands from blocks

* Config update

* Uncomment paths so that e2e checks only run on Blocks

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2023-12-13 16:01:34 -08:00
paul sealock 2b769f5088 use kses_post 2023-12-14 12:57:31 +13:00
github-actions f66a6fe44e Add changefile(s) from automation for the following project(s): woocommerce 2023-12-14 12:57:31 +13:00
paul sealock bcb5a393e6 inline wp_kses 2023-12-14 12:57:31 +13:00
paul sealock 28df5447d0 make height dynamic 2023-12-14 12:57:31 +13:00
paul sealock e8ca0c250c allow target attribute 2023-12-14 12:57:31 +13:00
paul sealock 812271fd85 use wp_kses to sanitize but allow links 2023-12-14 12:57:31 +13:00
Christopher Allford d0d49b49f5
Fix Component Project Changelog Checking (#42794) 2023-12-13 15:41:11 -08:00
Paul Sealock a232c32c8e
Shipping Settings: Add busy animation to Continue button (#42688) 2023-12-14 12:26:21 +13:00
github-actions f908d9bec5 Add changefile(s) from automation for the following project(s): woocommerce 2023-12-13 22:28:37 +00:00
github-actions 2b6f10311f Add changefile(s) from automation for the following project(s): @woocommerce/create-product-editor-block, woocommerce-blocks, woocommerce 2023-12-13 22:26:53 +00:00
github-actions 4bb43d87b9 Add changefile(s) from automation for the following project(s): woocommerce 2023-12-14 11:26:18 +13:00
paul sealock ba64a21f46 Add busy animation to Continue button 2023-12-14 11:23:33 +13:00
paul sealock 1b0fa5d04e remove whitespace for linter 2023-12-14 10:43:55 +13:00
Christopher Allford 2fa8f357f8
Fixed Blocks' `wp-env` Configuration (#42798)
* Fixed Blocks' `wp-env` Configuration

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-13 13:07:15 -08:00
github-actions 12dab59815 Add changefile(s) from automation for the following project(s): woocommerce 2023-12-13 20:46:10 +00:00
paul sealock 481c4eaaf5 Replace tables only for the modal 2023-12-14 09:39:05 +13:00
Christopher Allford e231be78f9
Fixed PHPUnit Tests Broken by Merge (#42731) 2023-12-13 12:38:59 -08:00
Mike Jolley db9be95f5d
Allow built in payment method descriptions to contain HTML when rendered on the block checkout (#42706) 2023-12-13 15:49:29 +00:00
Christopher Allford 8cf2f54ab8
Migrated Blocks' PR Assignment Workflow (#42782) 2023-12-13 07:30:15 -08:00
Mike Jolley 6dfcbbd525 Blocks changelog 2023-12-13 15:24:18 +00:00
Mike Jolley b6e3e32d7c changelog 2023-12-13 14:37:21 +00:00
Mike Jolley 2abd0422a8 Allow HTML in built in payment method descriptions 2023-12-13 14:37:21 +00:00
Tom Cafferkey 136bb741b0
Merge branch 'trunk' into update/auto-insert-mini-cart-into-tt3 2023-12-13 14:31:05 +00:00
github-actions 641fe4d590 Add changefile(s) from automation for the following project(s): woocommerce 2023-12-13 13:53:07 +00:00
tjcafferkey ce869a7430 Add TT3 theme to the list of allowed themes for Mini Cart auto-insertion 2023-12-13 13:31:05 +00:00
Niels Lange 31c9eed519
Fix ESLint issue 2023-12-13 17:06:38 +07:00
Niels Lange 040038a339
Add changelog entry 2023-12-13 16:46:23 +07:00
Niels Lange ca73ac42b6
Display update quantity notice on classic cart 2023-12-13 16:44:16 +07:00
Christopher Allford be290984b9
`setup-woocommerce-monorepo` Action in Highlight Changes Workflow (#42740) 2023-12-12 21:33:52 -08:00
Christopher Allford ec9b7852f9
Fixed Blocks Linting Errors (#42727) 2023-12-12 15:05:20 -08:00
Jonathan Lane dd255a2820
Update daily test workflows post Blocks-merge (#42716)
* Update action for API tests

* Changelog

* Update e2e tests

* Rename WooCommerce Payments to WooPayments

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2023-12-12 14:50:18 -08:00
nigeljamesstevenson c50c0f1488 woorelease: Update stable tag to 8.4.0 2023-12-12 22:16:13 +00:00
Ron Rennick d1498d45f2
update woo-gutenberg-products-block text domain to woocommerce in src folder (#42718)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2023-12-12 14:13:15 -08:00
Ron Rennick 60b445510d
update woo-gutenberg-products-block text domain to woocommerce in patterns and templates folders (#42720)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2023-12-12 14:13:03 -08:00
Ron Rennick 4fddface47
update text domain in plugins/woocommerce-blocks (#42717)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2023-12-12 14:12:36 -08:00
Ron Rennick a2812bdb59
remove PHP related scripts from blocks package.json (#42722)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2023-12-12 13:46:53 -08:00
Paul Sealock 5b393e78c6
Shipping Settings: Add a back button to method configuration screen (#41958) 2023-12-13 10:02:50 +13:00
Christopher Allford 4c4e89bc98
Enhance Build Watching (#42712)
Similarly to `build:project`, a new `watch:build:project`
script will watch individual projects for changes. The
`watch:build` script has been updated so that it does
a deep watch in the same vein as `build`. We have also
hooked up tool-level watching for faster performance.
2023-12-12 12:43:48 -08:00
Ron Rennick 76b4f39116
remove woocommerce-blocks from text domain substitution (#42017)
* remove woocommerce-blocks from text domain substitution

* restore prior art commented out

* add internal-js-tests composer.json

* covert internal-js-tests/changelog to a folder

* update blocks composer.json

* fix path, add composer install to changelog script

* add woo-ai changelog

* add composer install to beta tester changelog script

* add composer.json to woocommerce-admin

* add changelog folder & file to woocommerce-admin

* add composer install to woocommerce changelog script

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2023-12-12 15:38:20 -04:00
Christopher Allford 4e89debd0c
Fix Jest Preset (#42707)
When using a preset we need to keep in mind that the transformation
paths are relative to the preset, not the consuming package. We get
around this by using `<rootDir>` in the transform paths. However,
doing this means fixing the root directory for all of the jest tests.
This keeps the tests working in the same way but lets us fix the
preset too.
2023-12-12 09:58:13 -08:00
Jonathan Lane 7692fa5430
Fix flaky tests, failures from Blocks merge (#41815)
* Clean up created pages and posts

* Move tax tests so that they run last

* Improve locators

* Changelog

* Improve locators

* Improve locator on heading

* Change assertions to look for alert text

* Change assertion to look for text

* Update locators

* Update locator

* Update alternate elements

* Specify first order amount

* Update locator

* Changelog

* Increase reliability of checkout test

* Update a few locators

* Remove .slice()

* Add some console output to checkout test

* Make command palette tests Mac-compatible

* Added update for why download test flaky

* Improvements to checkout tax tests

* Add changelog

* Assert on range of prices

* Improve the regex for matching the price

* Changelog

* Clean up locator

* Unskip analytics tests

* Remove logging statements

* Update variations selector

* Remove comment

* Fix disable block tests

* Remove skipped legacy coupon page test

* Account for multiple products in test

* Cleaned up some console.logs

* Added specificity to locator

* Better price parsing

* Fix cart block shipping test

* Fix syntax error

* Update Playwright, fix logic error

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2023-12-12 07:56:56 -08:00
Leif Singer 0a0351aa6a
Logging: Prevent fatal type error when submitting empty search (#41847) 2023-12-12 12:36:21 +01:00
Christopher Allford 1c635cda6f
Optimized `wireit` Fingerprinting File Inputs (#42684)
Having an explicit `"files"` definition will allow us to fingerprint
dependencies in `wireit` more granularly. This avoids problems
that can be caused by different source files and directories that
trigger a rebuild in a dependee before a dependent finishes.
2023-12-11 16:21:35 -08:00
Corey McKrill 44ab680fe1
Logging: Fix pagination and filtering on DB log list table (#41870)
Fixes some issues where pagination and filters were not persisting in the DB log list table view after running a bulk action. Also adds a way to customize the number of log entries shown per page.

Fixes #39359
2023-12-11 12:27:26 -08:00
Christopher Allford e718975963
Fixed WooCommerce Docs Build Errors (#42000) 2023-12-10 22:39:00 -08:00
Christopher Allford 05d398c8d3 Fixed Blocks CSS Linting 2023-12-10 14:11:32 -08:00
Christopher Allford 6360c38eb8 Fixed Failing PHPUnit Test 2023-12-10 13:26:17 -08:00
Christopher Allford ea6a39dbc1 Fixed Blocks PNPM `run` & Env Var Usage 2023-12-10 12:44:44 -08:00
Christopher Allford 245fbadc51 Added Missing Blocks Build Output 2023-12-10 12:32:29 -08:00
Christopher Allford e580d27afd Added Missing Block Dependencies 2023-12-10 12:24:20 -08:00
Christopher Allford a8fd8fafa5 Applied Linting Fixes 2023-12-09 23:32:45 -08:00
Christopher Allford 87b5ee54eb Removed Blocks PHP Linting 2023-12-09 22:41:21 -08:00
Christopher Allford dc5aa18f35 Wireit Added: `@woocommerce/block-library` 2023-12-09 22:35:11 -08:00
Christopher Allford 96af36bf1f Locked `wireit` Version 2023-12-09 21:56:12 -08:00
Christopher Allford 403e2919ee Merge branch 'trunk' into refactor/task-infrastructure 2023-12-09 21:51:43 -08:00
Christopher Allford 5ff9c477aa Updated Documentation 2023-12-09 21:42:59 -08:00
Christopher Allford 4c0cc805dc Removed Old Docs Links 2023-12-09 21:40:52 -08:00
Christopher Allford 6d57e59ad4 Corrected Blocks Readme 2023-12-09 21:39:19 -08:00
Christopher Allford b4fd0c3b7b Fixed Blocks INI File Path 2023-12-09 21:33:34 -08:00
Christopher Allford e34361695d Fixed Image Asset Paths 2023-12-09 21:26:49 -08:00
Christopher Allford cf357e809b Fixed Blocks Asset Constant Path 2023-12-09 21:20:21 -08:00
Christopher Allford 25d42b0c05 Fixed Blocks Asset Paths 2023-12-09 21:15:57 -08:00
Christopher Allford 386d0db969 Fixed Blocks Dependency Check
Since we've merged it into WooCommerce Core there's nothing for us
to bother checking it against.
2023-12-09 21:03:34 -08:00
Christopher Allford fa5f7046dd Fixed Blocks Plugin Paths 2023-12-09 21:02:46 -08:00
Christopher Allford 389828ad7e Fixed Blocks Autoloads 2023-12-09 20:42:32 -08:00
Christopher Allford 8b6036a30e Changed Blocks Build Output 2023-12-09 18:18:25 -08:00
Christopher Allford 0514069d7b Added Missing Blocks Dependencies 2023-12-09 18:14:26 -08:00
Christopher Allford d06cd2f729 Added Missing PHPUnit Dependencies 2023-12-09 16:18:17 -08:00
Christopher Allford d443e92f23 Renamed Shortcode Assets "Classic" 2023-12-09 15:37:13 -08:00
Christopher Allford 4d0cde4b4b Lock File Update 2023-12-09 15:35:55 -08:00
Christopher Allford d244662669 Synchronized Dependencies 2023-12-09 14:40:16 -08:00
Christopher Allford fa011a431b Removed Unnecessary `run` From `pnpm` 2023-12-09 14:36:22 -08:00
Christopher Allford e9484c33f4 Removed Unnecessary `run` Usage
Since `pnpm` defaults to `run` unless a built-in
command exists we don't really need to use `run`.
2023-12-09 14:31:56 -08:00
Christopher Allford 1e4d55b36a Updated Documentation 2023-12-09 14:30:29 -08:00
Christopher Allford 5200c2e97f Change Asset Build Outputs
Wireit doesn't allow us to have build outputs in a directory outside
of the package. We can get around this by having a build step in
WooCommerce that copies the files from the output directories.
2023-12-09 14:27:30 -08:00
Christopher Allford d015950e86 Wireit Dependencies Set 2023-12-09 14:24:51 -08:00
Christopher Allford 3d79d5f204 Removed Turbo References 2023-12-09 14:22:04 -08:00
Christopher Allford 92e3d5fefb Added Wireit Commands to WooCommerce
There's quite a bit of work needed in this file but
I'll come back to that later when I can review it all
in more detail.
2023-12-09 14:17:11 -08:00
Christopher Allford f9e6f3a3a4 Add Wireit: `@woocommerce/shortcode-assets` 2023-12-09 14:16:13 -08:00
Christopher Allford e729417335 Revised Test Command
We will never run all tests concurrently so this is better.
2023-12-09 14:14:47 -08:00
Christopher Allford 5a99b8e6a9 Add Wireit: `@woocommerce/admin-library` 2023-12-09 14:12:31 -08:00
Christopher Allford 5f606e4d8e Added Missing Core Plugin Dependencies 2023-12-09 13:23:32 -08:00
Christopher Allford 4c0f4f1e5b Privatized Plugin Packages 2023-12-09 13:11:18 -08:00
Christopher Allford df32d8e967 Added `wireit` Dependency
We're adding this to _every_ package since they have their own
configuration and scripts to run. This also keeps them
isolated so that they can operate independently.
2023-12-09 13:11:15 -08:00
Christopher Allford 66fceae065 Renamed WooCommerce Docs Plugin Package
As part of the prevention of supply chain attacks the package has been
renamed to `@woocommerce/plugin-woocommerce-docs`.
2023-12-09 12:59:24 -08:00
Christopher Allford 4d9a3715fe Renamed WooCommerce AI Plugin Package
As part of preventing supply chain attacks, the package was
renamed `@woocommerce/plugin-woo-ai`.
2023-12-09 12:59:24 -08:00
Christopher Allford ebeaa84230 Renamed WooCommerce Beta Tester Package
As part of the prevention of supply chain attacks we are
renaming the package `@woocommerce/plugin-woocommerce-beta-tester`.
2023-12-09 12:59:24 -08:00
Christopher Allford 5bbb9edc6d Renamed WooCommerce Plugin Package
In order to prevent supply-chain attacks we have renamed
the package. The new name is `@woocommerce/plugin-woocommerce`.
2023-12-09 12:59:24 -08:00
Christopher Allford c0237250fb Renamed `woocommerce/client/legacy` Package
NPM requires names to be single-word or have a scope. The
current name is not valid. The package has been renamed
`@woocommerce/shortcode-assets` to better match its purpose.
2023-12-09 12:59:24 -08:00
Christopher Allford 6d685e5185 Renamed `woocommerce/client/admin` Package
NPM package names _must_ either be single-word or have
a scope. The current structure is unsupported and has been
changed. The new package name is `@woocommerce/admin-library`.
2023-12-09 12:59:24 -08:00
Christopher Allford 2081839bcd Fixed Notice Error 2023-12-09 12:40:22 -08:00
Christopher Allford 02828cc5d4 Fixed CI Inconsistencies 2023-12-09 12:30:25 -08:00
Christopher Allford 6c8207541a Resolved Type Errors 2023-12-09 12:08:16 -08:00
Christopher Allford bc65f9687b Updated Syncpack Dependencies 2023-12-09 07:16:39 -08:00
Christopher Allford 3a88cc739a Updated Dependencies 2023-12-09 07:12:20 -08:00
Christopher Allford efe38391e8 Removed WooCommerce Blocks Composer Package 2023-12-09 05:46:17 -08:00
Christopher Allford 1d056b3b37 Update Blocks Text Domain 2023-12-09 05:44:54 -08:00
Christopher Allford ac25f674e6 Moved Blocks PHPUnit Tests 2023-12-09 05:35:16 -08:00
Christopher Allford 6950115000 Moved Static Blocks Files 2023-12-09 05:35:11 -08:00
Christopher Allford 2821bc2a8c Merged Blocks Namespace 2023-12-09 05:35:04 -08:00
Christopher Allford 8ae34f1f3e Excluded Blocks From Syncpack 2023-12-09 05:22:40 -08:00
Christopher Allford a59009dbec Removed Blocks NPM Hooks
Since we've pulled it into the monorepo these hooks don't need to
be here anymore.
2023-12-09 05:17:49 -08:00
Christopher Allford 12940ebcd6 Merge remote-tracking branch 'woocommerce/woocommerce-blocks/trunk' into merge/woocommerce-blocks 2023-12-08 20:14:58 -08:00
Christopher Allford 31b5a3be11 Add Monorepo Merge Notice Workflow (https://github.com/woocommerce/woocommerce-blocks/pull/12101)
Added Merge Notice Workflow
2023-12-08 20:08:42 -08:00
Karol Manijak a493ef6eb4 Remove placeholder image rendering as it's covered in Core function get_image anyway (https://github.com/woocommerce/woocommerce-blocks/pull/12098)
Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
2023-12-09 01:22:07 +01:00
Arsany Benyamine 0672f73723 replace old props with variant prop (https://github.com/woocommerce/woocommerce-blocks/pull/11933)
Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
2023-12-09 00:30:33 +01:00
Saad Tarhi 33978990a5 Move shopper-side Checkout E2E tests to Playwright (https://github.com/woocommerce/woocommerce-blocks/pull/11998)
* convert first local pickup test

* Convert the second local pickup test

This test detected a bug. We will skip it for now and create a ticket to fix it!

* Remove old local pickup E2E tests

* Convert Payment Methods E2E tests

* Remove old payment methods tests

* Convert shipping/billing E2E tests

* Remove old shipping/billing E2E tests

* Add some line breaks for a better readability

* Update tests/e2e/tests/checkout/checkout-block.shopper.block_theme.side_effects.spec.ts

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

* Fix ESLint errors

* Move E2E tests to the Checkout shopper file

* Fix ESLint error

* Convert Checkout Error Forms E2E tests

* Use guest user instead of logged in customer for Checkout Errors E2E tests

---------

Co-authored-by: Niels Lange <info@nielslange.de>
2023-12-08 21:35:53 +01:00
Christopher Allford 0eeb214941 Removed Accidentally Added Workflow 2023-12-08 11:30:19 -08:00
Christopher Allford 3683c1486c Added Monorepo Merge Notice Workflow
This workflow leaves a comment and closes any pull requests
or issues that have been opened in
the repository.
2023-12-08 11:28:03 -08:00
Christopher Allford 58b692c3a6
Automatically Deactivate Merged Packages (#41956)
Once a feature plugin has been merged it is no longer necessary for it
to be activated. In some cases, having it activated can actually
lead to problems. This will automatically disable any packages
that we have marked as "merged".
2023-12-08 10:38:47 -08:00
Saad Tarhi 417683095a Playwright E2E tests: Multiple signed in roles (https://github.com/woocommerce/woocommerce-blocks/pull/10561)
* Convert checkout place order E2E tests to Playwright

* Add "gotoMyAccount" method

* Create login/logout utility functions

* Use the existing "customer" test data

* Complete the place order test cases

* Fix "My Account" page title

* Fix rebase

* Reset My account page title

* Check for heading instead of the page title

* Check for heading in login/logout functions

* Fix all failing tests

* Add guest/customer/admin roles

* Update the auth setup

* Register the auth setup within Playwright

* Update testing cases

* Add generated auth files to .gitignore

* Tidy up comments

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

* Remove unnecessary comment

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

* Update comments

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

* Remove unnecessary comment

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

* Update comment for Guest case

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

* Remove confusing comment

* Remove another unnecessary comment

* Remove unnecessary Playwright project dependency

* Tidy up the file structure and constants

* Fix mixed up test descriptions

* Remove commented code

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

* Remove unnecessary function from frontend-utils

* Refactor testing cases

* Rename testing file

* Delete unused testing file

* Ensure we're logged out before trying to log in as a user

* Log out before each authentication setup step

* Ensure tests requiring admin are logged in

* Log in as admin during block theme setup

* Fix Playwright strict mode violation

* Run Multiple sign-in roles to the global-setup phase

In this step of the Playwright's setup, we can add the multiple sign-in
roles and keeping the admin logged by default.
This fixes the issue of failing tests `logged out` error.

* Remove unnecessary login as admin

* Remove "auth.setup" dependency since the logic lives in the global setup instead

* Remove unnecessary login as admin from test files

The admin profile is set by default

---------

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
2023-12-08 17:44:59 +01:00
Tarun Vijwani 62dbd8f70d Convert PaymentMethodErrorBoundary to Class component (https://github.com/woocommerce/woocommerce-blocks/pull/12088)
* Convert PaymentMethodErrorBoundary to class component

* Remove unused expressPaymentMethodId variable
2023-12-08 16:28:55 +00:00
Matt Sherman e4f67f9f10
Template API: Registration of custom block types (#41937) 2023-12-08 10:49:20 -05:00
dependabot[bot] 95b8b03051 Bump automattic/jetpack-config from 1.15.4 to 2.0.0 (https://github.com/woocommerce/woocommerce-blocks/pull/11958)
Bumps [automattic/jetpack-config](https://github.com/Automattic/jetpack-config) from 1.15.4 to 2.0.0.
- [Release notes](https://github.com/Automattic/jetpack-config/releases)
- [Changelog](https://github.com/Automattic/jetpack-config/blob/trunk/CHANGELOG.md)
- [Commits](https://github.com/Automattic/jetpack-config/compare/v1.15.4...v2.0.0)

---
updated-dependencies:
- dependency-name: automattic/jetpack-config
  dependency-type: direct:production
  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-12-08 15:33:30 +00:00
Tarun Vijwani 5afdacb72e Add missing selectors to data store documentation (https://github.com/woocommerce/woocommerce-blocks/pull/11969)
* Add missing selectors to docs

- Add missing selectors for the following:
- data-store/checkout
- data-store/collections
- data-store/payment
- data-store/schema

* Fix markdown

* Fix getIncompatiblePaymentMethods selector description.

* Fix schema selectors information

* Fix additional spacing

* Add more information about the objects.

* Update checkout.md to use more descriptive
variable name for prefersCollection
2023-12-08 15:15:34 +00:00
dependabot[bot] 088ca1df35 Bump automattic/jetpack-autoloader from 2.12.0 to 3.0.2 (https://github.com/woocommerce/woocommerce-blocks/pull/11957)
Bumps [automattic/jetpack-autoloader](https://github.com/Automattic/jetpack-autoloader) from 2.12.0 to 3.0.2.
- [Release notes](https://github.com/Automattic/jetpack-autoloader/releases)
- [Changelog](https://github.com/Automattic/jetpack-autoloader/blob/trunk/CHANGELOG.md)
- [Commits](https://github.com/Automattic/jetpack-autoloader/compare/v2.12.0...v3.0.2)

---
updated-dependencies:
- dependency-name: automattic/jetpack-autoloader
  dependency-type: direct:production
  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-12-08 15:10:14 +00:00
Maikel David Pérez Gómez cc25c54afd
Grouped product field is being shown on non-grouped product types (#41946)
* Products in this group field should not be visible in any other product types, only visible in the grouped product type.

* Stock status under Inventory tab should not be visible when editing/creating a grouped product.

* Variations tab is not visible when editing/creating a grouped product.

* Add changelog file

* Fix php linter
2023-12-08 10:53:40 -04:00
dependabot[bot] c8174e2f93 Bump automattic/jetpack-connection from 1.60.1 to 2.1.0 (https://github.com/woocommerce/woocommerce-blocks/pull/12036)
Bumps [automattic/jetpack-connection](https://github.com/Automattic/jetpack-connection) from 1.60.1 to 2.1.0.
- [Release notes](https://github.com/Automattic/jetpack-connection/releases)
- [Changelog](https://github.com/Automattic/jetpack-connection/blob/trunk/CHANGELOG.md)
- [Commits](https://github.com/Automattic/jetpack-connection/compare/v1.60.1...v2.1.0)

---
updated-dependencies:
- dependency-name: automattic/jetpack-connection
  dependency-type: direct:production
  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-12-08 14:43:29 +00:00
dependabot[bot] fd8443cb80 Bump @wordpress/wordcount from 3.13.0 to 3.47.0 (https://github.com/woocommerce/woocommerce-blocks/pull/12094)
Bumps [@wordpress/wordcount](https://github.com/WordPress/gutenberg/tree/HEAD/packages/wordcount) from 3.13.0 to 3.47.0.
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/wordcount/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/wordcount@3.47.0/packages/wordcount)

---
updated-dependencies:
- dependency-name: "@wordpress/wordcount"
  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>
2023-12-08 14:28:16 +00:00
dependabot[bot] e1a4d612eb Bump @adobe/css-tools from 4.3.1 to 4.3.2 (https://github.com/woocommerce/woocommerce-blocks/pull/12002)
Bumps [@adobe/css-tools](https://github.com/adobe/css-tools) from 4.3.1 to 4.3.2.
- [Changelog](https://github.com/adobe/css-tools/blob/main/History.md)
- [Commits](https://github.com/adobe/css-tools/commits)

---
updated-dependencies:
- dependency-name: "@adobe/css-tools"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-08 13:49:57 +00:00
dependabot[bot] 049d45689c Bump phpunit/phpunit from 9.6.13 to 9.6.15 (https://github.com/woocommerce/woocommerce-blocks/pull/12035)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 9.6.13 to 9.6.15.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/9.6.15/ChangeLog-9.6.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/9.6.13...9.6.15)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  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>
2023-12-08 13:33:28 +00:00
Sebastian Buchwald 5ff41e577f Fix empty ClassicTemplate on product_cat site templates (https://github.com/woocommerce/woocommerce-blocks/pull/11164)
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
2023-12-08 13:30:31 +01:00
Mike Jolley 1535caac84 Update product category controls to use typescript (https://github.com/woocommerce/woocommerce-blocks/pull/11909)
* ProductControl is now defined in typescript. Remove todo

* Update components to typescript

* Update lifecycle test
2023-12-08 11:39:31 +00:00
Karol Manijak 31905b97f2 Make Featured Category centred horizontally (https://github.com/woocommerce/woocommerce-blocks/pull/12063) 2023-12-08 10:11:34 +01:00
Karol Manijak e7a53dcf06 Update Features Flags and Experimental Interfaces doc with Collection Filters and its inner blocks (https://github.com/woocommerce/woocommerce-blocks/pull/12047)
* Update Features Flags and Experimental Interfaces doc with Collection Filters and its inner blocks

* Replace feature flag references with links to specific commit, not trunk
2023-12-08 10:10:58 +01:00
github-actions d69d4ce978 Add changefile(s) from automation for the following project(s): woocommerce 2023-12-08 02:45:59 +00:00
paul sealock f47816b3e6 Better event name 2023-12-08 15:39:14 +13:00
paul sealock cbe376088c Add a back button to method configuration screen 2023-12-08 15:33:54 +13:00
Roy Ho 4992b77e49 Remove styling from sale badge (https://github.com/woocommerce/woocommerce-blocks/pull/12077)
Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
2023-12-07 18:24:18 -08:00
Damián Suárez cf33d1a31c
[Product Block Editor]: re implement product description field (#41862) 2023-12-07 20:51:39 -03:00
Damián Suárez a459f1eb7e fix eslint error 2023-12-07 19:55:18 -03:00
Barry Hughes 030bc4004f
Add customer address change action to user profile (#39254) 2023-12-07 14:52:36 -08:00
Daniel Dudzic ca3234b4be Product Gallery: Replace the frontend custom placeholder with the core Woo placeholder (https://github.com/woocommerce/woocommerce-blocks/pull/12086) 2023-12-07 23:51:32 +01:00
Damián Suárez a31f09bb06 fix e2e failing tests 2023-12-07 19:35:06 -03:00
Damián Suárez c99c04b160 fix lint issues 2023-12-07 19:35:06 -03:00
Damián Suárez a5f889a87f changelog 2023-12-07 19:35:06 -03:00
Damián Suárez 356ac0bdb5 insert Summary block into the Description one 2023-12-07 19:35:05 -03:00
Leif Singer 7838adc1b9
Logging: Enable viewing log entry context data in the DB logger list table (#41936) 2023-12-07 22:58:05 +01:00
Matt Sherman 6bec52cfe8 Changelog 2023-12-07 15:59:52 -05:00
Matt Sherman c93c3e3fcd Assert that template attributes and usesContext are augmented 2023-12-07 15:50:47 -05:00
Matt Sherman 23fa0fedf8 Additional unit tests 2023-12-07 15:30:52 -05:00
Matt Sherman 4dc0ac6432 Extract is_registered and unregister 2023-12-07 15:17:25 -05:00
Maikel David Pérez Gómez 37c965735d
Create section description block (#41929)
* Create section description block

* Add changelog files

* Change section description block to receive its content from the attributes instead of innerBlocks
2023-12-07 14:11:23 -05:00
Corey McKrill 286fb53418
Only render context row when an entry has context data 2023-12-07 11:00:56 -08:00
Corey McKrill 0d286a19f8
Update unit tests to use JSON instead of serialize 2023-12-07 10:58:23 -08:00
Matt Sherman 7206f2b3b9 Add unit test for register_block_type_from_metadata 2023-12-07 13:45:28 -05:00
Tarun Vijwani 29b4217f15 Update the border colors in the Cart and Checkout blocks (https://github.com/woocommerce/woocommerce-blocks/pull/11474)
* Change border color to Gutenberg 100 for Cart and Checkout blocks

* Change form input color to Gutenberg 900 for Cart and Checkout blocks

* Fix additional border colors of Checkout block

* Update borders and form field colors in Cart Block

* Change border color to $universal-border-light

* Change border color for cart line items to $universal-border-light

* Change  form input fields border color to $universal-border-dark

- Add $universal-border-dark color variable for woocommerce/woocommerce-blocks#1e1e1e on white.

* Fix colors of text area border and form steps

* Change  form input fields border color to $universal-border-dark

- Add $universal-border-dark color variable for woocommerce/woocommerce-blocks#1e1e1e on white.

* Fix form steps

* Update universal dark border rgba value

- Update universal dark border rgba value from rgba(0, 0, 0, 0.882) to rgba(17, 17, 17, .80) to keep it consistent with universal-border colors

* Update $universal-border-light color

* Update the opacity of the borders

* Update the border color to rgba (17, 17, 17, 0.12)

* Roll back $universal-border-light value to the original value: 0.115

* Remove Opacity and pass it as argument in with-translucent-border

- We have with-translucent-border option that accepts border and opacity for pseudo elements.

* Remove additional spaces

* Replace with-translucent-border with normal border

- Since we're are not mixing the opacity to the border color so we don't need to use mixin with-translucent-border.

* Fix applied css and add low contrast Color usage details

-  Fix minor CSS as per the standards.
- Add comments for universal border colors that they're low contrast colors and should be used for decorative elements only

* Fix border gap and double border for multiple shipping packages

* Fix payment method borders and Cart line items borders

- Change border bottom to border-top for cart line items.
- Fix payment method radio control borders.

* Fix local pickup border

- Local pickup was using  with-translucent-borders so it has some opacity, changed it to border-bottom.

* Add border-bottom to cart items

* Remove additional border from Cart items

* Fix radio and checkbox borders as per the design

* Fix shipping method borders and background color as per the design.

* Force align left on the description for the local pickup options.

* Update border color in quantity selector component

* Fix Shipping options radio selection alignment

- Add left padding to wc-block-components-shipping-rates-control__package element.

* Update colors and variables

* Change checkbox and radio button colors

- Change checkbox and radio button colors from  rgba(25, 23, 17, 0.3) to  rgba(25, 23, 17, 0.48).

* Remove bottom property from express payment style
2023-12-07 21:37:48 +04:00
Thomas Roberts 906961be3b Move merchant-side Checkout E2E tests to Playwright (https://github.com/woocommerce/woocommerce-blocks/pull/11853) 2023-12-07 17:32:18 +00:00
Alefe Souza 4b58adde04 Fix casting error on Utils::wp_version_compare (https://github.com/woocommerce/woocommerce-blocks/pull/11802)
* Fix casting on Utils::wp_version_compare

* Fix linting issue

* Apply version number fix on current wp version

* Fix linter errors

* Fix linter errors
2023-12-07 18:18:34 +01:00
Niels Lange 7a0835e354 Migrate translation tests to Playwright (https://github.com/woocommerce/woocommerce-blocks/pull/12070)
* Migrate translation tests to Playwright

* Optimise tests

* Migrate translation tests to Playwright

* Optimise tests

* Run test as side effects
2023-12-07 16:50:00 +00:00
Luigi Teschio 88562d1106 Products By Attribute: E2E tests - skip test (https://github.com/woocommerce/woocommerce-blocks/pull/12085) 2023-12-07 17:19:50 +01:00
Hsing-yu Flowers 2578fa11e9 Update the checkout order endpoint allowed order statuses for payment complete (https://github.com/woocommerce/woocommerce-blocks/pull/12018)
* Update the allowed order statuses for payment complete

* Check if order exists before checking needs_payment
2023-12-07 11:09:19 -05:00
Matt Sherman c892074b76 Update comment for phpcs:disable 2023-12-07 10:58:19 -05:00
Matt Sherman 7c14b27f36 Extract public function to register block type 2023-12-07 10:55:46 -05:00
Luigi Teschio d959781fc6 Social Follow Us Pattern: fix width image (https://github.com/woocommerce/woocommerce-blocks/pull/12080) 2023-12-07 15:42:45 +01:00
Mike Jolley efe2017794 Fix classname for dark mode in validation notice (https://github.com/woocommerce/woocommerce-blocks/pull/12037) 2023-12-07 14:41:31 +00:00
Mike Jolley 45ae286a10 Change guest permissions to full after verification (https://github.com/woocommerce/woocommerce-blocks/pull/12072) 2023-12-07 14:41:12 +00:00
ragulka ba9760baa3 reset array keys after filtering to prevent conversion to JSON object (https://github.com/woocommerce/woocommerce-blocks/pull/11070) 2023-12-07 14:40:34 +00:00
Luigi Teschio be79b9864e
Fix: `useEditorBlocks` hook always returns an array (#41874)
* fix: useEditorBlocks hook always returns an array

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-07 14:41:44 +01:00
Patricia Hillebrandt 4467715546
[CYS] Update the call to the ai product endpoint to account for the newly introduced last_product param. (#41842) 2023-12-07 09:17:29 -03:00
Patricia Hillebrandt d9ca827083
[CYS] Temporarily remove the survey button (#41781) 2023-12-07 09:16:15 -03:00
Patricia Hillebrandt 396f1e5169 Merge branch 'trunk' into 41637/remove-survey-button 2023-12-07 08:49:10 -03:00
Patricia Hillebrandt c60992e061
Update color palettes when AI is no available (#41880) 2023-12-07 08:39:13 -03:00
Barry Hughes e9ba3d3755
Make the process for initiating the password strength meter more robust. (#41822) 2023-12-07 12:25:13 +01:00
Patricia Hillebrandt 4c62ac23ee Address build and lint errors 2023-12-07 08:05:06 -03:00
Patricia Hillebrandt 90dc7aaa41 Fix lint error 2023-12-07 07:55:35 -03:00
Patricia Hillebrandt 00b7b78ee8 Merge branch 'trunk' into update/ai-product-endpoint-last-product-param 2023-12-07 07:27:14 -03:00
Patricia Hillebrandt 422e9ce1b9 Merge branch 'trunk' into update-color-palettes-no-ai 2023-12-07 07:22:53 -03:00
Patricia Hillebrandt a8d4de29f9 Address lint errors. 2023-12-07 06:26:55 -03:00
Niels Lange ab766273ff Fix font weight of cart totals title in site editor (https://github.com/woocommerce/woocommerce-blocks/pull/12051)
* Fix font weight of cart totals title in site editor

* Set explicit font-weight for th in cart line items
2023-12-07 15:55:47 +07:00
Luigi Teschio f59b95d6e3
CYS: Reset products when the AI is offline (#41923)
* CYS: Reset products when the AI is offline

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-07 09:42:16 +01:00
Luigi Teschio 60efd15e7e CYS: Add DELETE private/ai/products endpoint (https://github.com/woocommerce/woocommerce-blocks/pull/12076)
* CYS: Add DELETE private/ai/products endpoint

* Ensure the hash for the product is also updated on content reset.

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-12-07 09:27:57 +01:00
Luigi Teschio 01d9bfc678
CSY: Update copy when AI is offline (#41900)
* fix: CSY - update font copy when ai is offline

* Add changefile(s) from automation for the following project(s): woocommerce

* update font

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-07 09:16:28 +01:00
Chi-Hsuan Huang f793b64c64
Make CYS loader smoother (#41772)
* Make CYS loading sequence smoother

* Add changelog
2023-12-07 12:14:57 +08:00
Matt Sherman 1451626182 Make the BlockRegistry a singleton 2023-12-06 20:07:52 -05:00
Marco Almeida dd1a76d2be
Cart shortcode: Format postcode before validation on the shipping calculator (#41917)
In the shortcode-based Cart, format postcode before validation on the shipping calculator to be coherent with the checkout behaviour.

Fixes #41913
2023-12-06 16:43:57 -08:00
Corey McKrill d82747f643
Add changelog file 2023-12-06 16:34:05 -08:00
Corey McKrill 57804c0ed5
Improve backtrace getter 2023-12-06 16:05:26 -08:00
barryhughes 6dd6866640 Changelog. 2023-12-06 15:43:43 -08:00
barryhughes b186a83aea Set version tag to 8.5.0. 2023-12-06 15:35:38 -08:00
barryhughes 64206a9a6d Use strict array searching. 2023-12-06 15:35:04 -08:00
Corey McKrill 651e754fdd
Show log context as additional togglable table row
This is partly based on the work done by @johnregan3 in #31823.

Co-authored-by: John Regan <john.m.regan@gmail.com>
2023-12-06 15:03:22 -08:00
Patricia Hillebrandt 89108c348b ditch spacing. 2023-12-06 19:04:21 -03:00
Patricia Hillebrandt 6bc41b24e3 Fix lint error. 2023-12-06 19:01:28 -03:00
Daniel W. Robert cb48f78fae Remove `Approved Pull Requests` Workflow (https://github.com/woocommerce/woocommerce-blocks/pull/12017)
* Remove ADD_LABEL step for 'status: ready to merge'

This updates the workflow to remove the step for adding the 'status: ready to
merge' label.

Additionally, this adjusts the naming within the job to reflect the
change to the workflow.

* Remove entire workflow for Approved Pull Requests

Once Woo Blocks is merged into the monorepo, this workflow will no
longer be needed / relevant at all.
2023-12-06 15:25:02 -05:00
Patricia Hillebrandt 6305c8f001 Merge branch 'trunk' into update-color-palettes-no-ai 2023-12-06 16:58:53 -03:00
Christopher Allford 8c6b414fe0
Revert "Refactoring Task Infrastructure" (#41928)
Revert "Refactored Task Infrastructure (#41202)"

This reverts commit 96a973b9fa.
2023-12-06 11:36:12 -08:00
Christopher Allford d6a3ba9ba9
Revert "Renamed `@woocommerce/shortcode-assets`" (#41927)
Revert "Renamed `@woocommerce/shortcode-assets` (#41922)"

This reverts commit d0fa93d470.
2023-12-06 11:35:53 -08:00
Christopher Allford d0fa93d470
Renamed `@woocommerce/shortcode-assets` (#41922) 2023-12-06 10:13:25 -08:00
Christian Wach 8fbb7cd8fc Add customer address change action to user profile 2023-12-06 18:01:01 +00:00
Christopher Allford 96a973b9fa
Refactored Task Infrastructure (#41202)
* Fixed NPM packages with invalid names.
* Renamed plugin packages.
* Standardized package NPM scripts.
* Replaced Turborepo with Wireit.
2023-12-06 09:32:32 -08:00
Patricia Hillebrandt 564f95d997 Update the color palette migrated from Tsubaki for the New - Neutral palette. 2023-12-06 14:22:35 -03:00
Atanas Penchev bf87c09969
CSS3 transitions for all fade animations (#37692)
* CSS3 transitions for all fade animations

* Changelog

* Whitespace

* Formatting

* Lambda function

* Comment

* Clean up transitionEnd event listeners if (!touch)

* Update this.offsetWidth comment

* Use jQuery methods in order to greatly reduce diff
2023-12-06 17:44:26 +01:00
Mike Jolley 14cdc5e6f5 Use locale in isAddressComplete (https://github.com/woocommerce/woocommerce-blocks/pull/11888) 2023-12-06 16:33:15 +00:00
Chris Lilitsas 62e094e554
Missing CSS class on the empty-orders notice CTA in the My Account > Orders page (#41325)
* Add missing class

* Add changefile(s) from automation for the following project(s): woocommerce

* Template bump

* Bump version

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-06 15:59:05 +00:00
Karol Manijak 71640ef347 Restructure Product Collection editor files (https://github.com/woocommerce/woocommerce-blocks/pull/11981)
* Move Product Collection editor experience components into /edit directory

* Move Product Collection Inner Blocks structure to constants

* Improve the Product Collection's variations names
2023-12-06 15:50:24 +01:00
Leif Singer 4897cdb683
Logging: Update doc block to more accurate return value (#41867) 2023-12-06 14:48:11 +01:00
github-actions 4cd59f6a3a Add changefile(s) from automation for the following project(s): woocommerce 2023-12-06 13:45:12 +00:00
github-actions 6d252400fb Add changefile(s) from automation for the following project(s): woocommerce 2023-12-06 13:43:30 +00:00
Alba Rincón 6806f61aa7 Show the survey button only when AI is available 2023-12-06 14:43:16 +01:00
Alba Rincón cb3fdeb35d Change copy depending on the the AI availability 2023-12-06 14:41:46 +01:00
Alba Rincón 77826c6c76 Add new color palettes for when ai is unavailable 2023-12-06 14:41:34 +01:00
Karol Manijak 4d72c559d3 Unify the @typescript-eslint/parser version with eslint-plugin and what's in Core (https://github.com/woocommerce/woocommerce-blocks/pull/12066) 2023-12-06 20:28:48 +07:00
Barry Hughes 4c57f72574
Change To be able to download order data from all products removed (#41449) 2023-12-06 04:57:41 -08:00
Moon 212c5bca3e
CYS - AI Offline flow (#41656) 2023-12-06 20:49:28 +08:00
Mike Jolley ccd0b6b33c Use get_plugins because it uses cache (https://github.com/woocommerce/woocommerce-blocks/pull/12031) 2023-12-06 12:43:07 +00:00
Mike Jolley 946d15ca48 Adjust nesting so page wraps the main group block (https://github.com/woocommerce/woocommerce-blocks/pull/12050) 2023-12-06 12:31:37 +00:00
Tarun Vijwani 1879839657 Add missing actions to data store documentation (https://github.com/woocommerce/woocommerce-blocks/pull/11986)
* Add missing actions to the documentation

- Add the missing actions to the following:

- data-store/cart
- data-store/checkout
- data-store/collections
- data-store/validation

* Move actions above selectors in Cart doc

* Add more info to cart actions

* Fix syntax of Cart actions examples

* Fix syntax and examples

- Use store name constant instead of strings
- Fix description and examples of collections document

* Add more info about the keys of objects and arrays

* Update billing address info in cart data

* Update parameter names and descriptions in
checkout.md and collections.md

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

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

---------

Co-authored-by: Niels Lange <info@nielslange.de>
2023-12-06 08:58:25 +00:00
Niels Lange 69ef1b96e8 Enable new notice styles for all themes (https://github.com/woocommerce/woocommerce-blocks/pull/12043)
* Enable new notice styles

* Fix Twenty Twenty-One button background color issue
2023-12-06 15:46:22 +07:00
Luigi Teschio 1f410bdd04 fix: Product Collection: Featured Products 5 Columns improve spacing (https://github.com/woocommerce/woocommerce-blocks/pull/12041) 2023-12-06 09:05:49 +01:00
jonathansadowski d8b2663def
Update stable tag to 8.3.1 (#41612)
woorelease: Update stable tag to 8.3.1

Co-authored-by: rodel <rodel@rodels-MBP.automattic.net>
2023-12-06 05:36:09 +08:00
barryhughes 8fa3282981 Bump version tags. 2023-12-05 13:29:35 -08:00
barryhughes 6cf48117cc Changelog. 2023-12-05 13:29:35 -08:00
barryhughes 54675f228b Update template doc tags; remove unnecessary phpcs:ignore rule. 2023-12-05 13:29:35 -08:00
barryhughes acf14e07a6 Add docblock for filter hook `woocommerce_order_downloads_table_show_downloads`. 2023-12-05 13:29:35 -08:00
mt8 d51ed1aa4c Change: Added a filterable variable to the variables when loading the order/order-details.php template. 2023-12-05 13:29:35 -08:00
mt8 94f95f6ea3 Revert "Add woocommerce_order_has_downloadable_item filter to WC_Order->has_downloadable_item()"
This reverts commit 3baa6a891e.
2023-12-05 13:29:35 -08:00
mt8 6c087974b8 Add woocommerce_order_has_downloadable_item filter to WC_Order->has_downloadable_item() 2023-12-05 13:29:35 -08:00
Fernando Marichal 6ea7a48dbc
Add link to documentation to Downloads section (#41844)
* Modify Downloads description

* Remove text decoration

* Add changelogs

* Modify translators texts

* Fix indenting

* Remove link style

---------

Co-authored-by: Fernando Marichal <fernandomarichal@fernandos-mbp.lan>
2023-12-05 16:59:32 -03:00
rodelgc 8732330ba9
Delete Blocks 11.6.2 changelog from trunk (#41899) 2023-12-06 03:27:14 +08:00
Albert Juhé Lluveras b41c8f5086
Update WooCommerce Blocks to 11.7.0 (#41876)
* Update WooCommerce Blocks to 11.7.0

* Update Mini-Cart block e2e Playwright tests

---------

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2023-12-05 16:53:49 +01:00
github-actions[bot] d5c7664c57
Delete changelog files based on PR 41834 (#41885)
Delete changelog files for 41834

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-12-05 23:36:50 +08:00
Roy Ho 6df846d11a Product gallery/fix/view all link (https://github.com/woocommerce/woocommerce-blocks/pull/11995)
* Center align view all link

* Add thumbnail count specific styling

* Product Gallery Thumbnails: Improve the responsiveness of the View All overlay text

---------

Co-authored-by: Daniel Dudzic <daniel.dudzic@automattic.com>
2023-12-05 16:25:41 +01:00
github-actions[bot] 9f1231faff
Release: Remove 8.4 change files (#41655)
Delete changelog files from 8.4 release

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-12-05 09:53:10 -05:00
github-actions[bot] 8999de2938
Prep trunk for 8.5 cycle (#41654)
Prep trunk for 8.5 cycle with version bump to 8.5.0-dev

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-12-05 09:48:52 -05:00
Mike Jolley fac4312664 Remove "shopper's" from string (https://github.com/woocommerce/woocommerce-blocks/pull/12049) 2023-12-05 12:37:19 +00:00
Thomas Shellberg 7b0affff3e
Fix z-index issue with the Image Background Removal Spotlight. (#41185)
* [Woo AI] - Fix z-index issue with the Image Background Removal Spotlight.
2023-12-05 13:08:57 +01:00
Paulo Arromba 9e200b390c
Update WooCommerce Blocks to 11.6.2 (#41869)
Updated woocommerce/woocommerce-blocks to 11.6.2
2023-12-05 11:21:14 +00:00
Albert Juhé Lluveras 38fbb179d9 Update versions to 11.8.0-dev 2023-12-05 10:58:14 +01:00
Albert Juhé Lluveras c50f395efd Add 11.7.0 testing steps and changelog 2023-12-05 10:57:17 +01:00
Christopher Allford 88969742f2
Regenerate PNPM Lock File & Fix Errors (#41830) 2023-12-05 00:36:30 -08:00
Sam Seay c5ad636e35 Upgrade TypeScript to 5.3.2 (https://github.com/woocommerce/woocommerce-blocks/pull/11926)
* Also add skipLibCheck option to TS Config.
2023-12-05 18:17:04 +13:00
Eason d57b9e1d05
Make the `useCampaigns` hook support being used with multiple instances (#41211)
* Add tests for the `useCampaigns` hook in the woocommerce-admin marketing.

* Add `channels` to the deps of `useSelect` in the `useCampaigns` hook to avoid outdated hook states.

* Make the `useCampaigns` hook support being used with multiple instances.

- Include the `perPage` in the page key of campaigns in the multichannel's data store.
- Move the processing of querying the campaigns paging to the selector of the multichannel's data store.
- Move `total` in each campaign's paging of the multichannel's data store.
- Remove unused properties and their types: `state.campaigns.perPage` and `state.campaigns.total`

* Add changelog

* Multichannel data store - Move the `total` from `campaigns.pages[*]` to `campaigns.meta` to have only one total value.

Related to:
- https://github.com/woocommerce/woocommerce/pull/41211#discussion_r1409634640
- https://github.com/woocommerce/woocommerce/pull/41211#discussion_r1409590559

* Multichannel data store - Return the pagination meta of campaigns along with the `getCampaigns` selector.

Address: https://github.com/woocommerce/woocommerce/pull/41211#discussion_r1412266127
2023-12-05 11:20:05 +08:00
Corey McKrill 165495a015
Logging: Update doc block to more accurate return value
Improves the doc block of `wc_get_logger()` to reflect that the return
value will be a class that implements `WC_Logger_Interface`, but may
not actually be an instance of `WC_Logger`.

Fixes #41256
2023-12-04 13:06:31 -08:00
Paulo Arromba 159ce527a7 Add/11.6.2 testing instructions and changelog (https://github.com/woocommerce/woocommerce-blocks/pull/12040)
* Updated readme.txt, versions, added testing steps

* Updated testing zip link
2023-12-04 17:24:58 +00:00
Albert Juhé Lluveras 9371318292 Revert "Remove unused Add to Cart product element (https://github.com/woocommerce/woocommerce-blocks/pull/11948)" (https://github.com/woocommerce/woocommerce-blocks/pull/12033)
This reverts commit 6a397d65f9.
2023-12-04 17:28:58 +01:00
Darren Ethier 795f008952 Implement the Block Hooks API to automatically inject the Mini-Cart block (https://github.com/woocommerce/woocommerce-blocks/pull/11745)
* Change the default for Mini Cart block

The Block Hooks API currently doesn’t allow for setting the default state of the block injected into content so this ensures the mini-cart block has a better default state for injection. The current default (displaying total value in cart) takes up more width increasing the risk of poor layout.

* Utilize Block Hooks to automatically inject mini-cart block.

* include experimental prefix on filters

* Fix filter name.

* remove experimental prefix.

On thinking about this, I don’t think these need to be experimental. They are intentionally provided as escape hatches for hosts/themes that want to opt-in/out so we’ll have to support them when this is shipped (at least until its no longer needed!)

* fix variable name!

* fix unit tests because of new default

* remove another incorrect text expectation

Defaults for the block affect this expectation.

* fix E2E tests

* Mini Cart Block: improve E2E test

* fix: improve check for the Product Collection block

---------

Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2023-12-04 17:27:27 +01:00
Luigi Teschio 5b0e74383b Improve AI prompt for the Featured Category Triple pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11879)
* Improve AI prompt for the Featured Category Triple pattern

* test

* improve prompt
2023-12-04 16:28:36 +01:00
Luigi Teschio f74f5a2e61 Fix Testimonials 3 Column pattern width (https://github.com/woocommerce/woocommerce-blocks/pull/12030)
* Fix Testimonials 3 Column pattern width

* remove padding
2023-12-04 16:28:22 +01:00
Alba Rincón 4b63874ff8
Switch assembler theme to TT4 (#41736)
* Switch assemble theme to TT4

* Add changefile(s) from automation for the following project(s): woocommerce

* Rename changelog file

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove duplicated changelog

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove duplicated changelog

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-04 16:20:05 +01:00
Tung Du 2bc48e4e4a Fix: Ensure new filter blocks work with inherited query context (https://github.com/woocommerce/woocommerce-blocks/pull/12022)
* make the collection filters block available globally

* make query optional

* remove unnecessary editor contextual
2023-12-04 21:05:09 +07:00
Chi-Hsuan Huang f4e486d421
Update CYS task subheading (#41771)
* Update cys task subheading

* Add changelog
2023-12-04 21:35:34 +08:00
Nathan Silveira 4f08753d0c
Add wc-settings to the footer when injecting wc-settings dependency (#41790) 2023-12-04 10:06:38 -03:00
Luigi Teschio 945e476648 Improve AI prompt for the header of the Hero Product 3 Split pattern (https://github.com/woocommerce/woocommerce-blocks/pull/11877)
* Improve AI prompt for the header of the Hero Product 3 Split pattern

* improve prompt
2023-12-04 14:04:28 +01:00
Patricia Hillebrandt 5f4c8e2f7c [CYS] Fix regression and ensure AI-generated content is assigned to products after the third attempt (https://github.com/woocommerce/woocommerce-blocks/pull/12016)
* Fix restriction preventing the update of products with AI-generated content after the 3rd attempt.

* use set_slug rather than wp_update_post for updating the product permalink.

---------

Co-authored-by: Alba Rincón <alba.rincon@automattic.com>
2023-12-04 09:58:01 +01:00
Luigi Teschio af23649365 Hook `woocommerce_single_product_summary` action to `core/post-excerpt` block (https://github.com/woocommerce/woocommerce-blocks/pull/11953)
* hook woocommerce_single_product_summary into core/post-excerpt block

* Add E2E tests

* improve E2E test
2023-12-04 09:03:00 +01:00
Alba Rincón a387c93528 Update patterns design (https://github.com/woocommerce/woocommerce-blocks/pull/12005)
* Update "Just arrived full hero" pattern design

* Remove titles from galleries and update chessboard copy

* Remove unused patterns and old option
2023-12-04 08:58:32 +01:00
Patricia Hillebrandt 1f1ddd17d4 Merge branch 'trunk' into update/ai-product-endpoint-last-product-param 2023-12-04 04:04:02 -03:00
Panos (Panagiotis) Synetos 2ab2862185
activation.css does not have access to $woocommerce variable 2023-12-04 08:50:58 +02:00
Panos (Panagiotis) Synetos 3b151dd1db
Merge branch 'trunk' into fix/41774-use-fallback-colors-css-variables 2023-12-04 08:18:52 +02:00
Paul Sealock d25ebd0a1e
Shipping Settings: Revert removal of default method names (#41833) 2023-12-03 14:15:03 +13:00
Paul Sealock 3e139f3c73
Shipping Settings: Refresh shipping methods on every addition (#41834) 2023-12-03 14:14:53 +13:00
Alba Rincón 1a3cd9b328 Update product placeholders with products from design (https://github.com/woocommerce/woocommerce-blocks/pull/12007)
* Update product placeholders

* Fix errors

* WIP

* Fix image path and reduce image size

* Upload ai image only if present

* Replace typewriter image

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-12-02 09:47:53 +01:00
Niels Lange 1c7d995e97 Decrease modal width (https://github.com/woocommerce/woocommerce-blocks/pull/12003) 2023-12-02 02:54:39 +00:00
Corey McKrill 9c54477ce5
Add changelog file 2023-12-01 14:16:47 -08:00
Corey McKrill 54efe56eae
Logging: Prevent fatal type error when submitting empty search
Ensures that if the "Search within these files" form is submitted with
an empty input, it does not trigger a fatal error due to the search
method returning an empty array at a time when it should be returning
the integer `0`.
2023-12-01 14:12:52 -08:00
Corey McKrill aaff5a0f43
Logging: Enable downloading log files singularly and in bulk (#41801)
Add functionality and UI for downloading log files directly from WC Admin.

Fixes #40645
2023-12-01 13:49:46 -08:00
paul sealock 2d8a192ef3 remove validation since no field are required 2023-12-02 10:37:01 +13:00
Chris Lilitsas 0f3c4ea4bd
Vertical alignment issue in the variations selector (#41369)
This PR removes a line-height rule causing vertical alignment issues in the variations selector and introduces a bottom margin on the single variation container.

Closes #41367
2023-12-01 12:22:47 -08:00
Seghir Nadir 226d7de6d6 import checkbox from single place (https://github.com/woocommerce/woocommerce-blocks/pull/12015) 2023-12-01 19:40:04 +01:00
Dekadinious acdb2df13a
Show variations in upsells when parent is not published (#30042)
* Show variations in upsells when parent is not published

I was struggling to get the upsell section to show for our eCommerce site. After some digging I found that line 1525 stopped variations from showing in the upsell section if the parent product was set to privately published. This makes testing products and upsells hard, and it's inconsistent behaviour when simple products that are privately published do show up. The proposed change will make variations show up as long as the current user can edit the parent product. This is consistent with the behaviour for simple products.

* Add changelog

---------

Co-authored-by: Jorge Torres <jorge.torres@automattic.com>
2023-12-01 17:08:11 +00:00
Seghir Nadir 42ee5522f9 Remove page view tracking in favor of jetpack (https://github.com/woocommerce/woocommerce-blocks/pull/12010) 2023-12-01 08:26:01 -08:00
Alba Rincón ce71e30732 [Store Customization] Flush permalinks after updating all products (https://github.com/woocommerce/woocommerce-blocks/pull/11971)
* Flush after updating all products, not after updating each of the products

Flushing is an expensive operation so we should run it carefully

* Remove the index param and add the last_product param to the Product endpoint.

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2023-12-01 16:59:09 +01:00
Albert Juhé Lluveras 94e4ffd611
Create closeWelcomeModal, goToPageEditor and goToPostEditor utils in PlayWright e2e tests (#41807)
* Create closeWelcomeModal, goToPageEditor and goToPostEditor utils in PlayWright e2e tests

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-01 15:58:57 +01:00
Saad Tarhi 8f99863a2e Create add to custom fields documentation (https://github.com/woocommerce/woocommerce-blocks/pull/11787)
* Create add to custom fields documentation

* Update the checkout custom field docs

* Add back end steps and examples

* Make it clear that we are building a field block

* Update docs/third-party-developers/extensibility/rest-api/extend-rest-api-add-custom-fields.md

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

* Update docs/third-party-developers/extensibility/rest-api/extend-rest-api-add-custom-fields.md

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

* Update docs/third-party-developers/extensibility/rest-api/extend-rest-api-add-custom-fields.md

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

* Update docs/third-party-developers/extensibility/rest-api/extend-rest-api-add-custom-fields.md

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

* Mention that the block will not render if parent isn't required

* Add more details about `seExtensionData`

* Add additional code examples for the backend

* Avoid extending store API inside an IntegrationInterface

* Add code example that invokes the extend store endpoint class

---------

Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2023-12-01 15:16:46 +01:00
github-actions 0f0a54d90a Add changefile(s) from automation for the following project(s): woocommerce 2023-12-01 13:56:59 +00:00
Patricia Hillebrandt 60bf7c9536 Update the call to the /wc/private/ai/product endpoint to include the new param last_product 2023-12-01 14:37:21 +01:00
louwie17 e099625d3f
Update external product and hide tabs (#41824)
* Add hide condition for shipping and variation tab for external product type

* Add changelog
2023-12-01 09:31:48 -04:00
Paulo Arromba 4e6fb96c8e Update Feedback link on Cart and Checkout blocks (https://github.com/woocommerce/woocommerce-blocks/pull/12006)
* Update feedback link

* Remove default url link, and make the param required
2023-12-01 13:01:42 +00:00
Panos (Panagiotis) Synetos 7e9d04afa2
Merge branch 'trunk' into fix/41774-use-fallback-colors-css-variables 2023-12-01 14:48:17 +02:00
Michael Pretty 874bffc0db
Fix 40075/avoid count query unless after first page (#40092)
* Avoid running a second query to account for incorrect totals if pagination is set too high if pagination isn't used.

Fixes #40075

* Adding changelog entry
2023-12-01 11:44:56 +00:00
Paulo Arromba a07e3815c1 Update feedback link (https://github.com/woocommerce/woocommerce-blocks/pull/11999) 2023-12-01 10:16:57 +00:00
Alba Rincón 5f4df2a3e7 Update patterns copy (https://github.com/woocommerce/woocommerce-blocks/pull/11997) 2023-12-01 10:49:17 +01:00
Manish Menaria 630c79adf7 Product Collection - Fix HTML Entity Decoding in Taxonomy Controls (https://github.com/woocommerce/woocommerce-blocks/pull/11982) 2023-12-01 15:11:41 +05:30
Albert Juhé Lluveras 34cfbd94b4
Add extra protections against wrong filter values in the Command Palette logic (#41773)
* Add extra protections against wrong filter values in the Command Palette logic

* Add changefile(s) from automation for the following project(s): woocommerce

* Add protection to make sure  is an array

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-12-01 10:07:34 +01:00
Panos (Panagiotis) Synetos d045d9d292
Merge branch 'trunk' into fix/41774-use-fallback-colors-css-variables 2023-12-01 08:41:21 +02:00
paul sealock 7c5861f943 fix linter errors 2023-12-01 17:47:44 +13:00
github-actions 94e0ff77e0 Add changefile(s) from automation for the following project(s): woocommerce 2023-12-01 04:21:15 +00:00
github-actions 36c4da0def Add changefile(s) from automation for the following project(s): woocommerce 2023-12-01 04:21:14 +00:00
paul sealock a10d3c545f Refresh shipping methods when a method without configuration options is added 2023-12-01 17:16:29 +13:00
paul sealock 62175c4f18 Revert removal of defaults 2023-12-01 16:58:56 +13:00
Moon 6b77f71ea7
Show a warning modal when user tries to leave the assember hub (#41596)
* Show warning modal when user tries to leave the assember hub

* Remove pushState and popstate changes from the iframe

* Listen to popstate and render a warning modal when the user tries to leave the page

* Add changefile(s) from automation for the following project(s): woocommerce

* Update GoBackWarningModal to accept a callback for reusability

* Reuse GoBackWarningModal

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-30 18:23:00 -08:00
Christopher Allford c6b74ddafa
Revert "Resolve PNPM Lock File Errors" (#41828)
Revert "Resolve PNPM Lock File Errors (#41800)"

This reverts commit 2550558a13.
2023-11-30 14:55:35 -08:00
Daniel Dudzic ca8bb47c8d Product Gallery: Add a Product Image fallback (https://github.com/woocommerce/woocommerce-blocks/pull/11978)
* Product Gallery: Add a placeholder fallback when the Product Image is not set

* Product Gallery Placeholder: Pass by reference warning fix
2023-11-30 23:54:39 +01:00
Bartosz Budzanowski f271f9fea4
Update order attribution default cookie lifetime. (#41806) 2023-11-30 22:53:59 +01:00
Christopher Allford 2550558a13
Resolve PNPM Lock File Errors (#41800)
This makes the lock file constraints more specific to prevent the
backward incompatible types from WordPress types using the caret
constraint.
2023-11-30 09:33:34 -08:00
Jason Kytros a9ae5a72f1 Use `$woocommerce` variable instead of a hardcoded color 2023-11-30 16:54:14 +02:00
Mino 5a851cba28
Fix product variation sale_price_dates_to not being set to 23:59:59 when it's set via the variation bulk actions (#41564)
* sets sale price to 23:59:59 when sale schedule variation bulk action runs

* made the date being sent in the CRUD object coherent with the rest of the wc codebase. added changelog file

* fix issue raised by linter
2023-11-30 14:54:05 +00:00
Bartosz Budzanowski ea51e4ee85 Remove mention of fractions. 2023-11-30 15:46:09 +01:00
Bartosz Budzanowski 48f60670fc
Update plugins/woocommerce/src/Internal/Orders/OrderAttributionController.php
Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-30 15:37:33 +01:00
Niels Lange 7ea98576bc Limit number of visible incompatible extensions in sidebar notice (https://github.com/woocommerce/woocommerce-blocks/pull/11972)
* Limit number of visible incompatible extensions in sidebar notice

* Adjust link text

* Ensure text-decoration works in Safari

* Minor CSS tweaks

* Refactor constant names

* Adjust chevron position for opened state

* Revert "Adjust chevron position for opened state"

This reverts commit ff5142427738626837be887dd8d7e5d94c2432d4.
2023-11-30 06:37:19 -08:00
Bartosz Budzanowski 8cc1fb863e
Update plugins/woocommerce/changelog/update-order-attribution-session-length
Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-30 15:35:40 +01:00
Bartosz Budzanowski 137661a6d2
Update plugins/woocommerce/src/Internal/Orders/OrderAttributionController.php
Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-30 15:35:30 +01:00
Panos (Panagiotis) Synetos f75b3ea813
Merge branch 'trunk' into fix/41774-use-fallback-colors-css-variables 2023-11-30 14:42:54 +02:00
Bartosz Budzanowski e44514c909 Add changelog file. 2023-11-30 13:25:52 +01:00
Bartosz Budzanowski 9986b88954 Update order attribution default cookie lifetime. 2023-11-30 13:22:04 +01:00
Justin Palmer f35d52203e
Add order attribution feature (#39701) 2023-11-30 12:54:20 +01:00
Panos (Panagiotis) Synetos e06c442aff
Revert commit 2023-11-30 13:13:17 +02:00
Panos (Panagiotis) Synetos 62aaa746e8
Wake up github actions 2023-11-30 13:10:47 +02:00
github-actions eef1ac9272 Add changefile(s) from automation for the following project(s): woocommerce 2023-11-30 11:08:10 +00:00
Panos (Panagiotis) Synetos 4abab55dd2
Update changelog 2023-11-30 13:06:30 +02:00
Justin Palmer 2ef39a1298
Revert template version bumps from 2eecbb715d 2023-11-30 11:19:09 +01:00
github-actions 69299e9499 Add changefile(s) from automation for the following project(s): woocommerce 2023-11-30 10:17:42 +00:00
Panos (Panagiotis) Synetos 2928216029
Use fallback colors wherever CSS variables are used in WooCommerce admin 2023-11-30 11:53:12 +02:00
Jason Kytros a34ddb8993
Remove Subscriptions from the Add Product task list (#41778) 2023-11-30 16:08:47 +07:00
Alba Rincón ccb6e1ecdc [Store Customization] Update the "Footer with 3 Menus" pattern to remove the last 2 menus (https://github.com/woocommerce/woocommerce-blocks/pull/11980)
* Remove the last 2 menus

* Rename pattern to reflect new situation
2023-11-30 09:17:51 +01:00
Jason Kytros e8e52eaa6e Remove unused dependency 2023-11-30 09:18:27 +02:00
Jonathan Lane eec6b7e7aa
A number of e2e test improvements based on flaky test tracking (#41768) 2023-11-29 17:00:03 -08:00
Darren Ethier 25008b6361 Update close-stale-issues.yml workflow to update stale label. 2023-11-29 15:55:47 -05:00
Jason Kytros b1ac7300c7 Remove unused ) 2023-11-29 17:45:14 +02:00
Justin Palmer 2eecbb715d
Set since tags to 8.5.0 2023-11-29 16:44:24 +01:00
Corey McKrill 9a947c1a06
Logging: Implement "search within log files" (#41353)
* Normalize render method names

* Refactor get_query_params to allow key filtering

* Scaffold the search results view

* Add missing unslash

* First pass at functional search

* Fix memory leak and recursive highlighting

* Fix various search string edge cases

* Move match highlighting to format_match method

* Tweak match line formatting

* Rename ListTable to FileListTable

* Switch search results view to a list table

* Add notice about max files for search

* Remove unused function

* Only use monospace font on the matched line part of search results

* Add notice about search result limit

* Fix font in table header

* phpcs cleanup

* Remove unnecessary search form action

* Add caching to search results

* Add unit test for search method

* Caching improvements

* phpcs cleanup

* Add unit test for close_stream

* Remove unneeded linting exception

* Add changelog file

* Remove unnecessary usage of get_class()

* Make sure file stream gets closed when we break the loop early

* Make the returned results an even 200 when hitting the limit
2023-11-29 14:52:37 +00:00
Niels Lange e1efae2fe2 Improve readability of order note (https://github.com/woocommerce/woocommerce-blocks/pull/11944) 2023-11-29 21:39:07 +07:00
Jason Kytros f16061e4fe Add space 2023-11-29 16:08:00 +02:00
Jason Kytros aaf4e090a6 Prettier fixes 2023-11-29 15:03:16 +02:00
github-actions fdaa33b4f1 Add changefile(s) from automation for the following project(s): woocommerce 2023-11-29 12:46:10 +00:00
Jason Kytros 220a5b2e9b Remove Subscriptions from the Add Product task list 2023-11-29 14:40:21 +02:00
Thomas Roberts 66cc2bd9e8 Move checkout terms & conditions/privacy policy tests (https://github.com/woocommerce/woocommerce-blocks/pull/11973) 2023-11-29 04:16:44 -08:00
Leif Singer 1e4b25e9eb
Downloadable Product Permissions: The text "-1" is rendered every time merchants click the "Grant access" button without entering any product (#41682) 2023-11-29 11:42:22 +01:00
Albert Juhé Lluveras a8c44eb4c7 Reviews by Product: fix reviews count not appearing in product selector (https://github.com/woocommerce/woocommerce-blocks/pull/11976) 2023-11-29 11:13:18 +01:00
Sam Seay 5f7836183b Adjust the store config for Dropdown to keep selectors in state portion. (https://github.com/woocommerce/woocommerce-blocks/pull/11968) 2023-11-29 18:27:59 +13:00
Sam Seay dea8b734a6 Migrate attribute-filter block to use new interactivity store API (https://github.com/woocommerce/woocommerce-blocks/pull/11911) 2023-11-29 18:27:38 +13:00
Sam Seay 58c6339ac9 Update interactivity price filter block to use latest Interactivity Store API (https://github.com/woocommerce/woocommerce-blocks/pull/11943) 2023-11-29 17:04:35 +13:00
Maikel David Pérez Gómez 92eac565e5
[Grouped products] Product list (#41653)
* When the user selects a grouped product type, we show an additional Products in this group section in the General tab.

* When the user selects a grouped product type, we hide the Pricing and Shipping tabs.

* When empty, the grouped products card has an empty state with an illustration

* When the user clicks Add products, we show a modal

* When the user clicks the search field, we immediately display the list of all existing products. It is sorted alphabetically. Clicking an item closes the search and adds the product to the list.

* Add remove button to the product list

* When the user clicks Add, we close the modal and display the list of added products in the product form

* Clicking the product name will open it in the editing view in a new tab

* Clicking the arrow button will open the product's page in a new tab

* Prevent adding already added products

* If the name or SKU extends beyond this width, we truncate the text

* Add changelog files

* Fix linter errors
2023-11-28 22:21:17 -03:00
Thomas Roberts a652fa18f8 Move the Checkout -> Account tests from puppeteer to Playwright (https://github.com/woocommerce/woocommerce-blocks/pull/11961) 2023-11-28 23:16:25 +04:00
Justin Palmer 18ffb2fac0
Restore missing prefix to fix check 2023-11-28 19:09:26 +01:00
github-actions da46d5fb3b Add changefile(s) from automation for the following project(s): woocommerce 2023-11-28 16:35:48 +00:00
Paulo Arromba 6df0754b2a
Update WooCommerce Blocks to 11.6.1 (#41743)
* Updated woocommerce/woocommerce-blocks to 11.6.1

* Updated content-hash on composer.lock
2023-11-28 14:57:28 +00:00
Thomas Roberts d32be3f47b Migrate cart/checkout tax tests to Playwright (https://github.com/woocommerce/woocommerce-blocks/pull/11954) 2023-11-28 21:00:40 +07:00
Leif Singer f408296b79
Email the site admin when a payment gateway is enabled (#41645) 2023-11-28 14:29:34 +01:00
Leif Singer 2a12fea81d simplify conditional 2023-11-28 13:04:09 +01:00
Leif Singer 7f839980ec add admin email address before removing duplicates 2023-11-28 13:02:49 +01:00
Albert Juhé Lluveras a0715be413
Add several WooCommerce-related commands to the Command Palette (#41605)
* add simple initial integration with Command Palette

* Add WooCommerce commands

* Add e2e tests

* Fixes

* Add changefile(s) from automation for the following project(s): woocommerce

* Avoid using page.waitForLoadState() in Command Palette tests

* Make Settings and Analytics commands dynamic

* Decode entities to make sure characters are displayed correctly in the command palette

* Move decodeEntities() into registerCommandWithTracking()

---------

Co-authored-by: Darren Ethier <darren@roughsmootheng.in>
Co-authored-by: github-actions <github-actions@github.com>
2023-11-28 12:26:30 +01:00
Alba Rincón 0d84dca852 Tweak the product prompt (https://github.com/woocommerce/woocommerce-blocks/pull/11903)
* Tweak the product prompt

To avoid creating products that are things that cannot be sold in stores (forests, people, etc.)

* Return error when images are not provided
2023-11-28 09:06:29 +01:00
Alba Rincón 175554eb97 [Store Customization] Update product slug when updating the title and flush cache (https://github.com/woocommerce/woocommerce-blocks/pull/11952)
* Check permalink and flush cache if not found

* Update the product slug with the new title

* Use wp_update_post to update the product

* Remove unused method
2023-11-28 08:55:19 +01:00
Karol Manijak 6a397d65f9 Remove unused Add to Cart product element (https://github.com/woocommerce/woocommerce-blocks/pull/11948)
* Remove unused Add to Cart product element

* Remove entry about Product Add to Cart product element from MD file
2023-11-28 08:34:12 +01:00
Karol Manijak 2ab440b806 Reorganise Columns controls and fix undefined problem in Product Collection settings (https://github.com/woocommerce/woocommerce-blocks/pull/11937)
* Reorganise Columns controls and fix undefined problem in Product Collection settings

* Remove type condition in hasValue of Columns control

* Adjust the E2E tests locator to new changes
2023-11-28 08:33:31 +01:00
Niels Lange 5f0c4726a8 Investigate E2E CI caching issue (https://github.com/woocommerce/woocommerce-blocks/pull/11874)
* Try env:restart instead of env:start

* Change env:restart to env:start again

* Try env:restart instead of env:start

* Change env:restart to env:start again

* Adjust heading level of cart and checkout template

* Replace button selector with label selector

* Try env:restart instead of env:start

* Change env:restart to env:start again

* Ensure to close welcome guide modal

* Adjust heading level of default template content

* Try env:restart instead of env:start

* Change env:restart to env:start again

* Try env:restart instead of env:start

* Change env:restart to env:start again

* Address existing TS issues

* View template in edit mode

* Keep certain tests skipped

* Fix broken tests after addressing TS issues
2023-11-28 14:16:45 +07:00
Roy Ho 58c130af79 Remove unneeded block type check (https://github.com/woocommerce/woocommerce-blocks/pull/11964) 2023-11-27 13:11:51 -08:00
Tomek Wytrębowicz 19bb2a37a3
Reduce `wc_order_attribution` module API
make `initOrderTracking` and `removeTrackingCookies` methods private,as per YAGNI.
Add some more code comments
2023-11-27 18:59:24 +01:00
Justin Palmer 73dd7819c4
A few naming fixes 2023-11-27 18:59:24 +01:00
Tomek Wytrębowicz c28b0a9282
Move `??` operator from `get_source_values` back to `get_unprefixed_fields`
because `$_POST` may not include all these values.

Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-27 18:59:23 +01:00
Tomek Wytrębowicz 55b3ab1ec5
Update classic checkout selector
Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-27 18:59:23 +01:00
Tomek Wytrębowicz 0f8933e591
Remove unnecesary import
Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-27 18:59:23 +01:00
Tomek Wytrębowicz 59d0275348
Fix PHPCS
Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-27 18:59:23 +01:00
Tomek Wytrębowicz c95b94aa14
fix PHPCS 2023-11-27 18:59:23 +01:00
Tomek Wytrębowicz 6704a6426b
Do the classic checkout OSA bindings only on the classic page
Call `previousInitCheckout` only if there is one.
2023-11-27 18:59:22 +01:00
Tomek Wytrębowicz cb4dd6e592
Blanket Order Source Attribution → Order Attribution for blocks
Propagate chenges from c9c2a05ca5 to the Block-related classes
2023-11-27 18:59:22 +01:00
Justin Palmer 4662cae7b7
Blanket Order Source Attribution → Order Attribution change 2023-11-27 18:59:22 +01:00
Justin Palmer b62bf69f60
Clearer changelog 2023-11-27 18:59:22 +01:00
Justin Palmer 497bc3047d
Fix array assignment spacing 2023-11-27 18:59:22 +01:00
Justin Palmer cfa5728738
Remove Beta notice about auto-enabled feature 2023-11-27 18:59:22 +01:00
Justin Palmer 41421c1644
Include customer order count in order tracks 2023-11-27 18:59:21 +01:00
Justin Palmer 3e905dd6ea
Lowercase device in order tracks for consistency across values 2023-11-27 18:59:21 +01:00
Justin Palmer 4acd06245f
Expand order tracks datapoints 2023-11-27 18:59:21 +01:00
Tomek Wytrębowicz b52964651b
Remove code comments related to AssetsAPI
Addresses https://github.com/woocommerce/woocommerce/pull/41592#discussion_r1402021606
2023-11-27 18:59:21 +01:00
Tomek Wytrębowicz 6afe26df59
Simplify `woocommerce_order_save_attribution_source_data` logic 2023-11-27 18:59:21 +01:00
Tomek Wytrębowicz 709ec75a3c
Remove unrelevant code comment
Addresses https://github.com/woocommerce/woocommerce/pull/41592#discussion_r1402411581
2023-11-27 18:59:20 +01:00
Tomek Wytrębowicz 6de4bd3ec3
Fix PHPCS 2023-11-27 18:59:20 +01:00
Tomek Wytrębowicz 3c1aa076d7
Remove not needed `is_wccom_cookie_terms_available`
Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-27 18:59:20 +01:00
Tomek Wytrębowicz dd66ba0d39
Remove jQuery dependency from the checkout frontend 2023-11-27 18:59:20 +01:00
Tomek Wytrębowicz 58f703211c
Fix translation context and PHPCS 2023-11-27 18:59:20 +01:00
Tomek Wytrębowicz c2b74a6021
Save OSA proerties on Blocks checkout
using the same method we use for the classic checkout.

Co-authored-by: Justin Palmer <228780+layoutd@users.noreply.github.com>
2023-11-27 18:59:20 +01:00
Tomek Wytrębowicz 24b526266b
Prefix and flatten OSA properties for the Blocks checkout 2023-11-27 18:59:19 +01:00
Tomek Wytrębowicz e91d0325ae
Unify OSA script handles
Stick to `wc-` convention instead of `woocommerce-`.
Do not add a superflous `-js` suffix`
2023-11-27 18:59:19 +01:00
Tomek Wytrębowicz 5b16a8abdb
Fix OSA.js dependency ids and checkout extension prefix 2023-11-27 18:59:19 +01:00
Tomek Wytrębowicz 8347e7108c
Move changes from blocks repo PR
https://github.com/woocommerce/woocommerce-blocks/pull/11506
Co-authored-by: Jeremy Pry <jeremy.pry@gmail.com>
2023-11-27 18:59:19 +01:00
Tomek Wytrębowicz 2b5f817169
Move changes from blocks repo PR
https://github.com/woocommerce/woocommerce-blocks/pull/11506
Co-authored-by: Jeremy Pry <jeremy.pry@gmail.com>
2023-11-27 18:59:19 +01:00
Justin Palmer 07312708d1
Include Origin column for non-HPOS orders table 2023-11-27 18:59:19 +01:00
Justin Palmer 79fed9cac9
Don't link orders in customer history by email if customer_id differs 2023-11-27 18:59:18 +01:00
Justin Palmer 175f424101
PHPCS fix 2023-11-27 18:59:18 +01:00
Justin Palmer 418eb7b128
Remove WCCOM attribution source integration 2023-11-27 18:59:18 +01:00
Tomek Wytrębowicz ad1fcbb453
Simplify `.closest` usage in OSA-admin.js 2023-11-27 18:59:18 +01:00
Tomek Wytrębowicz c00acce374
Remove jQuery dependency from sourcebuster-js 2023-11-27 18:59:18 +01:00
Tomek Wytrębowicz 52318b4de7
Use single public namespace for OSA JS 2023-11-27 18:59:17 +01:00
Justin Palmer ceb354e456
Enqueue Sourcebuster script from new location 2023-11-27 18:59:17 +01:00
Justin Palmer 78d42b2e72
Use Woo-forked Sourcebuster-JS package 2023-11-27 18:59:17 +01:00
Dima 84f0deba96
Fixing phpcs errors. 2023-11-27 18:59:17 +01:00
Dima 9d8b93c074
Fixing phpcs errors. 2023-11-27 18:59:17 +01:00
Dima f789cc26b0
Adding few more unit tests plus adjusting tracking controller to be able to test the exact functions set to filters and actions. 2023-11-27 18:59:17 +01:00
Dima b22519d7de
Adding AbstractInterfaceServiceProvider unit test and test supplies. 2023-11-27 18:59:16 +01:00
Justin Palmer 373af383de
Include hide/show text in detail toggle and reverse carets 2023-11-27 18:59:16 +01:00
Justin Palmer 7a91703438
Better details toggle styling and behavior 2023-11-27 18:59:16 +01:00
Justin Palmer 18d328846a
Updated customer history logic (billing email + better totals)
- Uses billing_email if no customer_id is provided
- Accounts for refunds and multiple types of order status
2023-11-27 18:59:16 +01:00
Justin Palmer 9a893c8af4
Clarify customer history tooltip wording a little bit 2023-11-27 18:59:16 +01:00
Justin Palmer 727ebe3e1b
Better details toggle alignment 2023-11-27 18:59:15 +01:00
Justin Palmer 8ed2ead224
Fix title casing in Customer history metabox 2023-11-27 18:59:15 +01:00
Justin Palmer 199158e525
Remove unused import 2023-11-27 18:59:15 +01:00
Justin Palmer 3ceb27ad21
Fix broken details toggle with `e.target`
- instead of `this` (arrow function)
2023-11-27 18:59:15 +01:00
Justin Palmer 49dff0eb9c
Remove customer source data from user admin pages
The source data will still be collected display in a future udpate
2023-11-27 18:59:15 +01:00
Justin Palmer 7fe4825fe7
Add documentation to the modified sourcebusterjs file 2023-11-27 18:59:14 +01:00
Justin Palmer 8253beafe9
Update docs for AbstractServiceProvider and AbstractInterfaceServiceProvider 2023-11-27 18:59:14 +01:00
Justin Palmer 6f911ca91c
Revert "Include sourcebuster as npm package"
Restores the customized version of sourcebuster 1.0.5
This reverts commit 096dc95c1c52d62cfc2f2bd30a2cdd2bbcf7f536.
2023-11-27 18:59:14 +01:00
Justin Palmer 9ad289cea3
Include sourcebuster as npm package 2023-11-27 18:59:14 +01:00
Justin Palmer 7f100ac88a
Clarify nonce verification ignores 2023-11-27 18:59:14 +01:00
Justin Palmer dd629741f5
Use OrderUtil to check for HPOS enabled 2023-11-27 18:59:13 +01:00
Justin Palmer 00022754e9
Remove `$theorder` manipulation 2023-11-27 18:59:13 +01:00
Justin Palmer 7a97054bb3
PHPCS fix 2023-11-27 18:59:13 +01:00
Justin Palmer 2b6d92e786
Remove leftover VersionUtil class 2023-11-27 18:59:13 +01:00
Justin Palmer eb6aee13ed
Escape wc_help_tip output 2023-11-27 18:59:13 +01:00
Justin Palmer 88318c9df2
Remove phpcs disable directive 2023-11-27 18:59:13 +01:00
Justin Palmer 196ba5a7ba
Escape wc_price output better 2023-11-27 18:59:12 +01:00
Justin Palmer c9bea33598
Escape wc_help_tip output 2023-11-27 18:59:12 +01:00
Justin Palmer f64e4a5100
Escape wc_price output 2023-11-27 18:59:12 +01:00
Justin Palmer 7c1d6b6d7c
Only display attribution meta boxes for valid orders 2023-11-27 18:59:12 +01:00
Justin Palmer c4ec613277
Clarify tracking consent and cookie management 2023-11-27 18:59:12 +01:00
Justin Palmer 602d1f2ba5
Clarify callback purpose and function 2023-11-27 18:59:12 +01:00
Justin Palmer f6f7b054e9
Remove PHPCS disable directive 2023-11-27 18:59:11 +01:00
Justin Palmer c095f9e1ce
Remove PHPCS disable directive 2023-11-27 18:59:11 +01:00
Justin Palmer d7a31e9a79
Clarify Order Source Attribution is_legacy flag being true 2023-11-27 18:59:11 +01:00
Justin Palmer d1c5af74c0
Remove extra line in PHPCS config 2023-11-27 18:59:11 +01:00
Justin Palmer 222cb6d776
Fixed test namespace
Co-authored-by: Leif Singer <leif@automattic.com>
2023-11-27 18:59:11 +01:00
Justin Palmer 05e4698af7
Better constant variable name 2023-11-27 18:59:11 +01:00
Justin Palmer cf8add7188
Const instead of let
Co-authored-by: Leif Singer <leif@automattic.com>
2023-11-27 18:59:10 +01:00
Justin Palmer 977863eacf
Remove superfluous comment
Co-authored-by: Leif Singer <leif@automattic.com>
2023-11-27 18:59:10 +01:00
Justin Palmer 23f4094ac0
Remove double newline
Co-authored-by: Leif Singer <leif@automattic.com>
2023-11-27 18:59:10 +01:00
Justin Palmer d60fe00308
Capitalize Tracks in comment
Co-authored-by: Leif Singer <leif@automattic.com>
2023-11-27 18:59:10 +01:00
Justin Palmer 378e4999e5
Clearer comment
Co-authored-by: Leif Singer <leif@automattic.com>
2023-11-27 18:59:10 +01:00
Justin Palmer df2e05e4cf
Re-add "mobiledetect/mobiledetectlib" library 2023-11-27 18:59:10 +01:00
Justin Palmer dfcaa6019d
Fix PHPCS errors in test files 2023-11-27 18:59:09 +01:00
Justin Palmer 527f51414d
Don't disable PHPCS rules 2023-11-27 18:59:09 +01:00
Justin Palmer 10b1af773c
Remove unnecessary PHPCS exclusions 2023-11-27 18:59:09 +01:00
Jeremy Pry cb116ddade
Limit registration during install, and move origin column to admin_init 2023-11-27 18:59:09 +01:00
Jeremy Pry ee93cacdd8
Add docblock to the woocommerce_order_save_attribution_source_data hook 2023-11-27 18:59:09 +01:00
Jeremy Pry ae99921667
Fix typo in class name 2023-11-27 18:59:09 +01:00
Jeremy Pry d6875fac14
Use an action to save the attribution data. 2023-11-27 18:59:08 +01:00
Jeremy Pry 4f305cc9cf
Add public get_*() methods 2023-11-27 18:59:08 +01:00
Jeremy Pry f6e8a586aa
Cleanup @ since tags 2023-11-27 18:59:08 +01:00
Jeremy Pry 2dd3cc6176
Remove period from the end of the feature description 2023-11-27 18:59:08 +01:00
Jeremy Pry de88fd19a7
Fix typos in comments 2023-11-27 18:59:08 +01:00
Jeremy Pry 62d05d9ab8
Make adjustments to JS files
- Use arrow functions
- Consistent use of let or const over var
- Clean up spacing and formatting
2023-11-27 18:59:08 +01:00
Jeremy Pry 3dafdb482d
Return early when there's already an order object. 2023-11-27 18:59:07 +01:00
Jeremy Pry 5effcb7a82
Handle orgin column registration for HPOS compatibility 2023-11-27 18:59:07 +01:00
Jeremy Pry ab92fa13ff
Mark not experimental, and update description 2023-11-27 18:59:07 +01:00
Jeremy Pry 15c7263ba6
PHPCS adjustments for test files 2023-11-27 18:59:07 +01:00
Jeremy Pry 5cba1a762d
Update MobileDetect library
For now, this manually adds the mobile detect library, due to an error that should be fixed by https://github.com/serbanghita/Mobile-Detect/pull/944.
2023-11-27 18:59:07 +01:00
Jeremy Pry eabda2b61e
Fix PHPCS errors and warnings 2023-11-27 18:59:07 +01:00
Jeremy Pry 5c82baef5b
Correct file/class name and PHPCS fixes 2023-11-27 18:59:07 +01:00
Jeremy Pry 7553579032
Use wc_get_template() for the template files 2023-11-27 18:59:06 +01:00
Jeremy Pry 0cb181bd9f
Add is_script_debug_enabled() method to the ScriptDebug trait 2023-11-27 18:59:06 +01:00
Jeremy Pry cbf0da970a
Create VersionUtil class 2023-11-27 18:59:06 +01:00
Jeremy Pry 8997db5f98
Add actual version to the template files 2023-11-27 18:59:06 +01:00
Jeremy Pry aeff5b1b82
Update source value processing to accept an array
This allows more flexibility in where the array of values to process originates, without this method explicitly relying on the $_POST super-global.
2023-11-27 18:59:06 +01:00
Jeremy Pry 228e5534b8
Remove get_source_label() method and add filters 2023-11-27 18:59:06 +01:00
Jeremy Pry 15d7a0ad48
Use Jetpack Constant utility class
This matches with the rest of WooCommerce technique.
2023-11-27 18:59:05 +01:00
Jeremy Pry 735da31595
Refactor device detection to a separate method 2023-11-27 18:59:05 +01:00
Jeremy Pry 2058928229
Use class directly instead of mocked 2023-11-27 18:59:05 +01:00
Jeremy Pry 3cee48143a
Move SourceAttribution test to correct location 2023-11-27 18:59:05 +01:00
Jeremy Pry 67c7f198b4
Make the on_plugins_loaded function protected 2023-11-27 18:59:05 +01:00
Jeremy Pry df0f6a6fd3
Update Consent API test to use closures 2023-11-27 18:59:05 +01:00
Jeremy Pry f8a24b6819
Add file headers to the new templates 2023-11-27 18:59:04 +01:00
Jeremy Pry 67e40fcc68
Mock FeaturesController class for WCCOM test 2023-11-27 18:59:04 +01:00
Jeremy Pry 2ef7df465a
Add tracks using JS 2023-11-27 18:59:04 +01:00
Jeremy Pry edfe2896b4
Add Tracks event with source data 2023-11-27 18:59:04 +01:00
Jeremy Pry b787271c86
Refactor source processing 2023-11-27 18:59:04 +01:00
Jeremy Pry 8e382813c0
Remove experimental feature flag 2023-11-27 18:59:04 +01:00
Jeremy Pry d62bbce217
Add unit tests for Order Source Attribution 2023-11-27 18:59:03 +01:00
Jeremy Pry fa2421758d
Add consent API integration 2023-11-27 18:59:03 +01:00
Jeremy Pry 22c82c485a
Add WCCom tracking controller 2023-11-27 18:59:03 +01:00
Jeremy Pry a21c1cb13a
Create separate service provider for Order Attribution 2023-11-27 18:59:03 +01:00
Jeremy Pry d8d57f3c31
Ensure the Attribution controller is limited by the feature being enabled 2023-11-27 18:59:03 +01:00
Jeremy Pry a2c2c82310
Create method for setting the fields and prefix. 2023-11-27 18:59:03 +01:00
Jeremy Pry 0da5aff8dd
Create ScriptDebug trait 2023-11-27 18:59:02 +01:00
Jeremy Pry 892ef3435a
Add changelog file 2023-11-27 18:59:02 +01:00
Jeremy Pry 95001377b6
Add auto registration using the interface 2023-11-27 18:59:02 +01:00
Jeremy Pry 87b11e3bbb
Include the get_hpos_order_object() method and PHPCS fixes 2023-11-27 18:59:02 +01:00
Jeremy Pry b01737d969
Add the SourceAttributionController class to the service provider 2023-11-27 18:59:02 +01:00
Jeremy Pry 22f1e67d7a
Update get() method to match docblock
This could return an object, or an array of objects.
2023-11-27 18:59:02 +01:00
Jeremy Pry 2c689ee858
Add abstract provider for tagging interfaces 2023-11-27 18:59:01 +01:00
Jeremy Pry f03821904b
Create an interface for classes that need to register hooks 2023-11-27 18:59:01 +01:00
Jeremy Pry fa0c4782a7
Add scripts and styles for order source attribution 2023-11-27 18:59:01 +01:00
Jeremy Pry d9152b01f6
Add initial source attribution files 2023-11-27 18:59:01 +01:00
Jeremy Pry 630f265058
Add "mobiledetect/mobiledetectlib" library 2023-11-27 18:59:01 +01:00
Jeremy Pry ef61216099
Add Customer History metabox 2023-11-27 18:59:01 +01:00
Jeremy Pry 1036b8970d
Add Order Source Attribution feature setting. 2023-11-27 18:59:00 +01:00
Raluca Stan 5578a541d4 Update extensibility doc (https://github.com/woocommerce/woocommerce-blocks/pull/11924)
* Update extensibility doc 

This PR adds a missing link to the Extensibility page for a new doc that was added about the migrated hood.

* Update docs/third-party-developers/extensibility/README.md

Co-authored-by: Tarun Vijwani <tarun.vijwani@automattic.com>

---------

Co-authored-by: Tarun Vijwani <tarun.vijwani@automattic.com>
2023-11-27 18:25:51 +01:00
Leif Singer 5aa6f29b85 fix typo 2023-11-27 16:09:14 +01:00
Leif Singer 5469dd3f01 ensure the WC_Payment_Gateways instance we're testing is isolated from the other unit tests 2023-11-27 16:09:14 +01:00
Leif Singer d64603764a extend test setup 2023-11-27 16:09:14 +01:00
Leif Singer 21ad8d547f move the test to the proper file 2023-11-27 16:09:14 +01:00
Leif Singer 3850a07a2c add a test that ensures the email and log message get generated 2023-11-27 16:09:14 +01:00
Leif Singer 5a3ba9a0cb appease the linter 2023-11-27 16:09:14 +01:00
Leif Singer d638cc44a9 tweak email subject 2023-11-27 16:09:14 +01:00
Leif Singer 488084d7ce use the gateway ID to make gateway_settings_url a direct link to the enabled gateway's settings page 2023-11-27 16:09:14 +01:00
Leif Singer d6f1adb4cf pass the gateway instance into the wc_payment_gateway_enabled_notification_email_addresses hook 2023-11-27 16:09:14 +01:00
Leif Singer ee04b60a83 pass the whole gateway instance into notify_admin_payment_gateway_enabled 2023-11-27 16:09:14 +01:00
Leif Singer e3c2c79389 make on_payment_gateways_initialized private 2023-11-27 16:09:14 +01:00
Leif Singer bbdbb026ea pass WC_Payment_Gateways instance to wc_payment_gateways_initialized hook 2023-11-27 16:09:14 +01:00
Leif Singer 665a6ce721 once more, appease the linter 2023-11-27 16:09:14 +01:00
Leif Singer 86fa398d5a allow adding email addresses to the notification via a filter 2023-11-27 16:09:14 +01:00
Leif Singer e23839294f guard against unset array key 2023-11-27 16:09:14 +01:00
Leif Singer 26b664f29f add logging 2023-11-27 16:09:14 +01:00
Leif Singer 20cd022334 document all the things 2023-11-27 16:09:14 +01:00
Leif Singer 3cd4b5078c appease the linter 2023-11-27 16:09:14 +01:00
Leif Singer 6b12ffb5f5 use AccessiblePrivateMethods, a single callback for both added and updated options, and subscribe to gateway-specific hooks 2023-11-27 16:09:14 +01:00
Leif Singer 7254e99ec8 move things into the WC_Payment_Gateways class 2023-11-27 16:09:14 +01:00
Leif Singer a0304bedef ensure gateway title is set 2023-11-27 16:09:14 +01:00
Leif Singer d1fc46e658 cover both update_option and add_option 2023-11-27 16:09:14 +01:00
Leif Singer 7faf9b9f3b indent assignments correctly 2023-11-27 16:09:14 +01:00
Leif Singer 71ec30268a use proper sprintf for placeholders 2023-11-27 16:09:14 +01:00
Leif Singer 247bf534e3 optimize the checks a bit 2023-11-27 16:09:14 +01:00
Leif Singer 82f1bddaa5 add changelog file 2023-11-27 16:09:14 +01:00
Leif Singer e4c6d9a532 invert the conditional so we can remove the nesting and go for an early return instead 2023-11-27 16:09:14 +01:00
Leif Singer 7bda29426b ensure the value key is set 2023-11-27 16:09:14 +01:00
Leif Singer 3352891794 ensure the option values are arrays 2023-11-27 16:09:14 +01:00
Leif Singer 81e7fce52a appease the linter 2023-11-27 16:09:14 +01:00
Leif Singer 79831e0bbf Email the site admin when a payment gateway is enabled 2023-11-27 16:09:14 +01:00
Mike Jolley 4a13e5faf0 Switch to NoticeBanner component inside Store Notices Block placeholder (https://github.com/woocommerce/woocommerce-blocks/pull/11920) 2023-11-27 13:43:42 +00:00
nigeljamesstevenson cb43ae8bc1 Merge branch 'update/e2e-skip-flaky-test-downloads-revenue-report-as-CSV' of github.com:woocommerce/woocommerce into update/e2e-skip-flaky-test-downloads-revenue-report-as-CSV 2023-11-27 13:36:20 +00:00
nigeljamesstevenson f8928ecc85 skip newly added tests as they appeas to be flaky 2023-11-27 13:35:58 +00:00
Agung Sundoro 7e77a13f16 fix: store notices always shows as an error type woocommerce/woocommerce-blocks#11768 (https://github.com/woocommerce/woocommerce-blocks/pull/11932) 2023-11-27 05:07:18 -08:00
Arsany Benyamine fa1f2896fb replace Stories root Dir to "External Components" (https://github.com/woocommerce/woocommerce-blocks/pull/11910) 2023-11-27 04:14:58 -08:00
github-actions 2af871747e Add changefile(s) from automation for the following project(s): woocommerce 2023-11-27 11:53:24 +00:00
nigeljamesstevenson 2896a4a4bd skip newly added test as appears to be flaky 2023-11-27 11:47:45 +00:00
Alba Rincón 1c325c3ea9 Convert to tsx and replace proptypes by ts definitions (https://github.com/woocommerce/woocommerce-blocks/pull/10471)
* Convert to tsx and replace proptypes by ts definitions

* Fix imports

* Fix noReviewsPlaceholder type

* Fix ts errors

* Use createHigherOrderComponent in withReviews

* Revert hoc change

---------

Co-authored-by: Niels Lange <info@nielslange.de>
2023-11-27 12:08:17 +01:00
Albert Juhé Lluveras 2f7bd83ae2
Fix link to e2e tests documentation from WooCommerce Admin directory (#41631)
* Fix link to e2e tests documentation from WooCommerce Admin directory

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-27 09:53:22 +01:00
Manish Menaria 53944beeb3 [Product Collection] Fix: HTML entity decoding for product names in Hand-Picked Products (https://github.com/woocommerce/woocommerce-blocks/pull/11927)
* Add HTML entity decoding for product names in Hand-Picked Products control

In the Hand-Picked Products control within the product-collection inspector controls, a function for decoding HTML entities in product names has been added.

- A new utility function `decodeHTMLEntities` has been implemented. This function decodes HTML entities in a string, ensuring that special characters are correctly displayed in their human-readable form.
- The `transformTokenIntoProductName` function has been updated to utilize `decodeHTMLEntities`. Now, when a product name is fetched (either directly as a token or via a product ID), the HTML entities within the name are decoded.
- This enhancement ensures that product names containing characters like ampersands or other HTML entities are accurately displayed in the UI.

This change improves the readability and accuracy of product names within the Hand-Picked Products control, enhancing the user experience for store managers using WooCommerce Blocks.

* Update label and hide description

This commit updates the `HandPickedProductsControl` component. Specifically, the user-facing label for product selection has been changed from 'Pick some products' to 'Hand-picked Products'. Additionally, the `__experimentalShowHowTo` property has been added with a `false` value, to hide description. Corresponding changes have been made in the E2E test file `product-collection.block_theme.spec.ts`, where the filter name is updated to match the new label.

* Refactor: Replace custom HTML entity decoder with `@wordpress/html-entities`

Rationale:
- The shift to `@wordpress/html-entities` aligns with standard WordPress practices, ensuring consistency across the platform.
- Enhances maintainability by relying on a well-supported library rather than custom code.
- Simplifies the codebase by removing a redundant utility function.

This change enhances the robustness of our code and aligns with best practices in WordPress development.
2023-11-27 12:27:04 +05:30
Sam Seay 1cd4df5b19 Migrate interactivity stock filter to new store API, add improvements and bugfixes (https://github.com/woocommerce/woocommerce-blocks/pull/11827) 2023-11-27 17:26:01 +13:00
Daniel Dudzic 590263543f Product Gallery Thumbnails: Add support for cropping (https://github.com/woocommerce/woocommerce-blocks/pull/11718)
* Product Gallery Thumbnails: Refactor sizing in the editor and the front end

* Product Gallery Thumbnails: Change default vertical alignment to top and better control the width of the thumbnails

* Product Gallery Thumbnails: Fix thumbnails cropping based on the 'Crop images to fit' setting

* Product Gallery Thumbnails: Revert thumbnails styling from woocommerce/woocommerce-blocks#11665

* Product Gallery Thumbnails: Update the default value of the cropImages setting to false
2023-11-24 23:49:44 +01:00
Daniel Dudzic 38b0001735 Product Gallery Thumbnails: Fix overflow issues and improve responsiveness (https://github.com/woocommerce/woocommerce-blocks/pull/11665)
* Product Gallery Thumbnails: Refactor sizing in the editor and the front end

* Product Gallery Thumbnails: Change default vertical alignment to top and better control the width of the thumbnails

* Product Gallery Thumbnails: Restrict the bottom position thumbnails width based on the total number of thumbnails set

* Product Gallery: Remove hardcoded width for Thumbnails and the Large Image and update the width inside of the Dialog

* Product Gallery Thumbnails: Introduce thumbnails scaling based on the number of thumbnails

* Product Gallery Thumbnails: Fix editor thumbnails scaling

* Product Gallery Thumbnails: Remove unused column gap variable

* Product Gallery Thumbnails: Fix styling for vertical images

* Product Gallery: Remove the unused editor.scss file

* Product Gallery: Fix the placement of the Thumbnails block in the block template

* Product Gallery Dialog: Reset changes to the dialog

* update @wordpress/e2e-test-utils-playwright package

* don't update node version

* remove waitForSiteEditorFinishLoading function

* use visitSiteEditor util

* Product Gallery Thumbnails: Add code comments

* Product Gallery Thumbnails E2E: Fix the test checking the default position of the thumbnails

* Product Gallery E2E: Fix the test checking if the cropping setting works correctly

* Product Gallery Thumbnails: Hide the Thumbnails block if there aren't at least 2 thumbnails to display

---------

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2023-11-24 21:31:02 +01:00
mt8 e88a66eb25 Fix Downloadable Product Permissions: The text '-1' is rendered every time merchants click the 'Grant access' button without entering any product #31678 2023-11-25 03:46:24 +09:00
Alba Rincón c7182d9202 [Store Customization] AI-generated store name (https://github.com/woocommerce/woocommerce-blocks/pull/11878)
* Add new ai/store-title endpoint to update the store title with an AI generated one

* Add StoreTitle schema

* Fix error to response param

* Fix var name and tweak prompt

* Update comment

* Replace it by Ai generated if it's the default title

* Return error if AI failed

* Return false if the title is not updated with an AI one
2023-11-24 14:40:51 +01:00
Alba Rincón b6657403f8
[Store Customization] Update the store title with an AI generated one (#41632)
* Make the call to update the store title with an AI generated one

* Add changelog
2023-11-24 14:40:37 +01:00
github-actions[bot] 853ba527d2
Delete changelog files based on PR 41660 (#41669)
Delete changelog files for 41660

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-11-24 18:14:04 +08:00
rodelgc 597e2ed269
Update WooCommerce Core WP.org product page readme (#41660)
* update readme.txt for Woo Copy update on WP.org product page

* Transform to sub-header texts

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: nigeljamesstevenson <nigeljamesstevenson@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
2023-11-24 17:35:46 +08:00
Karol Manijak ff59efc27f Remove isExperimental flag from product-query module which is not experimental (https://github.com/woocommerce/woocommerce-blocks/pull/10531) 2023-11-24 08:36:30 +01:00
Sam Seay 9168b47f33 Translate the prefixes passed to post-terms in product-meta. (https://github.com/woocommerce/woocommerce-blocks/pull/11811) 2023-11-24 17:33:28 +13:00
Barry Hughes bedb4db309
Add legacy wc_format_postcode tests along with new tests for IE and PT postcodes (#31787) 2023-11-23 11:23:15 -08:00
Maikel David Pérez Gómez 55485012e5
[Grouped products] Inventory tab (#41640)
* The Track inventory toggle is not visible in the Inventory tab for grouped product types

* Add changelog file
2023-11-23 12:16:10 -05:00
Maikel David Pérez Gómez 829ca23326
[Grouped products] Create product-grouped feature flag (#41639)
* Create product-grouped feature flag

* Add support to the product editor to handle grouped product types as well

* Add changelog file
2023-11-23 11:24:51 -05:00
Paulo Arromba f60f10ad59 Update/testing instructions and changelog for 11.6.1 (https://github.com/woocommerce/woocommerce-blocks/pull/11923)
* Updated readme.txt and testing instructions

* Updated testing zip.

* Updated stable version
2023-11-23 15:52:20 +00:00
Fernando Marichal 4a0db06321
Modify notice for legacy local attributes (#41646)
* Modify notice for legacy local attributes

* Rename variable

* Add changelogs

* Rename local_attributes_notice_dismissed_ids
2023-11-23 12:00:17 -03:00
Roy Ho 9aea9ef53b Remove alignment from template part (https://github.com/woocommerce/woocommerce-blocks/pull/11891) 2023-11-23 05:40:17 -08:00
Mike Jolley 48777bb1ef Add missing woocommerce class (https://github.com/woocommerce/woocommerce-blocks/pull/11919) 2023-11-23 12:35:13 +00:00
Albert Juhé Lluveras c422227341 Fix an issue that caused the Order by select in Reviews blocks to always be disabled (https://github.com/woocommerce/woocommerce-blocks/pull/11918) 2023-11-23 12:59:14 +01:00
Albert Juhé Lluveras 8b6d81a7c3 Fix Reviews blocks not being rendered (https://github.com/woocommerce/woocommerce-blocks/pull/11913) 2023-11-23 10:52:06 +00:00
Karol Manijak b5e91ee460 Enable shrink columns option in Product Collection by default (https://github.com/woocommerce/woocommerce-blocks/pull/11821)
* Enable shrink columns option in Product Collection by default

* Improve tests about responsiveness

* Make regex allowing for floating pixels

* Related products should not use sticky and author attribute or have hardcoded queryId

* Bring back properties for Related Products as it's based on Propducts block, not Product Collection

* Enable shrink columns to fit by default in patterns
2023-11-23 10:10:19 +01:00
Alba Rincón 8cb50f1b59 Store Customization > Ensure the price for products is also AI-generated (https://github.com/woocommerce/woocommerce-blocks/pull/11859)
* Generate the product price with AI

* Fine tune the prompt to take into account the store currency

* Improve the price prompt
2023-11-23 09:58:09 +01:00
Luigi Teschio fc349610b0 add delete /pattern endpoint (https://github.com/woocommerce/woocommerce-blocks/pull/11890) 2023-11-23 09:42:06 +01:00
Karol Manijak 41d5a4bda6 Prevent shrinkColumns value when switching the layout type of Product Collection (https://github.com/woocommerce/woocommerce-blocks/pull/11905) 2023-11-23 08:17:35 +01:00
Jonathan Lane 595f99d933
Run daily smoke tests on wp-env (#41560)
* Run daily smoke tests on wp-env

* Add changelog

* Add step to install playwright to e2e tests

* Run k6 containers as e2e

* Get build first for k6

* Tweak for API report

* Change k6 tests back to non-local

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2023-11-23 12:41:27 +08:00
barryhughes e3d1a3c7b9 Convert comments to assertion messages. 2023-11-22 15:14:08 -08:00
barryhughes cd32a5a087 Changelog. 2023-11-22 15:13:06 -08:00
Saggre 74e27e6f26 Remove duplicate tests. 2023-11-22 15:09:37 -08:00
Damián Suárez 7a98a38399 fix eslint issue 2023-11-22 17:06:52 -03:00
Damián Suárez c9a211c6fb move changelog file to the proper place 2023-11-22 16:38:06 -03:00
Damián Suárez de1b1c89cf add tooltip helo to Organization/Attributes title 2023-11-22 16:38:06 -03:00
Damián Suárez 254469ddbe update/product-editor-add-missing-desc 2023-11-22 16:37:52 -03:00
Paulo Arromba 5a66522601
Update WooCommerce Blocks to 11.6.0 (#41641)
* Updated woocommerce/woocommerce-blocks to 11.6.0
2023-11-22 16:45:28 +00:00
And Finally 99d063095f
Marketplace: My Subscriptions feature branch (#40249) 2023-11-22 15:58:30 +00:00
Mike Jolley c8b48ed8d8
Remove "Checkout is not available whilst your cart is empty" notice (#41504)
* Remove "Checkout is not available whilst your cart is empty." notice

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-22 16:56:03 +01:00
Jorge A. Torres 409a256815
Fix TypeError in WC_Discounts->apply_coupons() when being called a second time [redux] (#41602)
* Discounts are not in the format `array( 'string' => 'string' )`, they are in the format `array( 'string' => array( int, int ) );`.

* Remove `ArrayUtil` because `ensure_key_is_array` creates the array and returns `true`.

* Add Changelog manually

* Fix changelog placement.

---------

Co-authored-by: John Rom <john@nimblelight.com>
2023-11-22 15:52:24 +00:00
Paulo Arromba 9a63503008 Update/11.6.0 changelog and testing instructions (https://github.com/woocommerce/woocommerce-blocks/pull/11904)
* Updated changelog and added testing instructions

* Updated changelog.

* Updated versions.

* Updated tested up to

* Updated tested up to

* Uploaded testing zip

* Removed woocommerce/woocommerce-blocks#11287 from testing instructions

* Added testing instructions and changelog for woocommerce/woocommerce-blocks#11858

* Updated testing zip

* Testing instructions for woocommerce/woocommerce-blocks#11862 and woocommerce/woocommerce-blocks#11860

* Updated testing zip

* New testing zip with woocommerce/woocommerce-blocks#11872 🍒

* Updated versions to 11.7.0-dev

* Updated composer.lock
2023-11-22 15:19:17 +00:00
And Finally 6e39f5494a Merge branch 'trunk' into feature/marketplace-subscriptions 2023-11-22 15:10:12 +00:00
And Finally 3b6d53efe5 Removed refresh button spin animation – was going backwards, and isn't consistent with general design approach. 2023-11-22 14:27:22 +00:00
And Finally 9dff04752f Addressing linter errors. 2023-11-22 14:23:51 +00:00
And Finally 5c88fd0490
Marketplace: fix sideways scrolling of the my subscriptions table on Chromium based browsers (#41630) 2023-11-22 13:59:56 +00:00
And Finally 1fc1d83931
Marketplace: update no results page (#41603) 2023-11-22 13:59:17 +00:00
And Finally 5a2d598159 Addressing linter errors. 2023-11-22 13:58:51 +00:00
And Finally 51321ee586
Merge branch 'feature/marketplace-subscriptions' into fix/my-subscriptions-scrolling-chromium 2023-11-22 13:39:23 +00:00
And Finally 3012a41f4e Reduced font weight in "no results" headers, to match the headers elsewhere in the Marketplace. 2023-11-22 13:37:37 +00:00
raicem 4e1ea5184e Marketplace: fix the number of cards in the number of results page
Co-authored-by: andfinally <andfinally@users.noreply.github.com>
2023-11-22 13:37:37 +00:00
raicem e3e3870cd7 Marketplace: fix some issues with the new no-results page
Co-authored-by: andfinally <andfinally@users.noreply.github.com>
2023-11-22 13:37:37 +00:00
raicem 36a4e5fc3c Marketplace: update no results screen for search 2023-11-22 13:37:37 +00:00
And Finally 3f6fd2c273
My Subscriptions: link product icon and product name to Woo.com product page (#41634) 2023-11-22 13:32:13 +00:00
berislav grgičak bfaceac842
Add Woo button to plugins list (#41633)
* Add Woo tab to the plugins screen

* Remove comment

* Update plugins/woocommerce/src/Internal/Admin/Marketplace.php

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Update name

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-22 14:21:22 +01:00
And Finally 7ec9d60d8a Makes product icon and product name in My Subscriptions list link to Woo.com product page. 2023-11-22 13:05:10 +00:00
And Finally 6e124264be Addressing linter errors. 2023-11-22 13:00:20 +00:00
Roy Ho 82583fa3fb Don't register or unregister if block can't be found (https://github.com/woocommerce/woocommerce-blocks/pull/11872) 2023-11-22 12:50:56 +00:00
And Finally c336475d8e Addressing linter errors. 2023-11-22 12:43:49 +00:00
raicem 05d8169ec3 Marketplace: fix issue with sideways scrolling on my subscriptions table 2023-11-22 12:42:31 +03:00
Luigi Teschio 3302b24313 Update @wordpress/e2e-test-utils-playwright package (https://github.com/woocommerce/woocommerce-blocks/pull/11866)
* update @wordpress/e2e-test-utils-playwright package

* don't update node version

* remove waitForSiteEditorFinishLoading function

* use visitSiteEditor util
2023-11-22 09:19:00 +01:00
Jonathan Lane 633bf40f13
Add tests for analytics (orders) (#40504)
* Add tests for analytics (orders)

* Fix for download test

* E2E action scheduler runner (#40687)

* Add utility to trigger processing of pending scheduled actions (E2E).

* Update analytics test to use E2E scheduled action helper.

* Expand notes.

* No changelog needed.

* Further test setup work needed for Process Waiting Actions utility.

* Update download test

* Fix for FTUX tour, locator matching

* Update selectors

* Address review feedback

* Add comment to explain helper plugin

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2023-11-22 15:42:36 +08:00
Cem Ünalan 9a7a7e7f9c
Marketplace: Add Tracks events to My Subscriptions page (#41455)
* Marketplace: add Tracks events for the subscription page

Added events for:
- marketplace_product_installed
- marketplace_product_install_failed
- marketplace_renew_button_clicked
- marketplace_subscribe_button_clicked
- marketplace_product_updated
- marketplace_product_update_failed

* Marketplace: update Tracks properties

We used to reference product slug only. But may change and if the store
is rate limited, that information is missing. This commit switches
using "product_zip_slug" and "product_id".

* Marketplace: add product version info to update and install Tracks events
2023-11-22 09:40:18 +03:00
berislav grgičak 4c19b12c68
Add Marketplace readme (#41600)
* Marketplace readme

* Add structure and development

* Linter fix

* linter

* Tweaks to the In-App Marketplace README.

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-22 07:03:37 +01:00
RJ 2960529283
fix: revert adding envia slug (#41624) 2023-11-21 15:57:53 -08:00
nigeljamesstevenson 8ecb684da2
add: remove email marketing experiment (#41599) 2023-11-21 23:22:40 +00:00
Paul Sealock e701512f80
Merge Shipping Settings Legacy Refresh (#40983) 2023-11-22 12:20:34 +13:00
Jonathan Lane 34acf8cbcb
Improve e2e stability (#41345)
* Clean up created pages and posts

* Move tax tests so that they run last

* Improve locators

* Changelog

* Improve locators

* Improve locator on heading

* Change assertions to look for alert text

* Change assertion to look for text

* Update locators

* Update locator

* Update alternate elements

* Specify first order amount

* Update locator

* Changelog

* Increase reliability of checkout test

* Update a few locators

* Remove .slice()

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2023-11-21 14:26:09 -08:00
Thomas Roberts 2a281dbc74 Update changes after 11.4.9 2023-11-21 16:49:32 +00:00
Damián Suárez abe33ded3d Merge branch 'trunk' into update/product-editor-add-variation-pickup-help 2023-11-21 11:57:30 -03:00
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
Maikel David Pérez Gómez b2c9373b19
[External products] Inventory tab (#41520)
* Hide track stock quantity toogle when the product type is external

* Add changelog file

* Fix php linter errors
2023-11-21 08:42:47 -05: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
Matt Sherman 820d83d40b
Fix return type of ProductFormTemplateInterface::add_group() (#41595) 2023-11-21 07:17:07 -05:00
Damián Suárez 1b3e3295a0 use uncheckedHelp to set the toggle help 2023-11-21 09:04:23 -03:00
Damián Suárez 4ffc4eda55 changelog 2023-11-21 09:04:20 -03:00
Damián Suárez 9ad4615527 add help for Product and Variation block instances 2023-11-21 09:04:20 -03:00
berislav grgičak 6f58b003a5
Marketplace subscriptions mobile fixes (#41597)
* Gradient fixes

* Responsive header
2023-11-21 12:43:06 +01:00
Leif Singer 39a1164d98
Update / tweak a few more links in docs and comments (#41598) 2023-11-21 12:38:09 +01:00
Chris Lilitsas 03937c7ccd
Remove hardcoded colors when using a block theme (#41366)
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
2023-11-21 12:35:12 +01:00
Jorge A. Torres e329ab19bd
HPOS verification tool should not report missing `_completed_date` meta as error (#41547) 2023-11-21 12:20:06 +01:00
Jorge A. Torres f2c700642e
Prevent double escaping of special chars in HPOS search query (#41516) 2023-11-21 12:17:10 +01:00
rjchow fcafacb36f lint 2023-11-21 18:08:00 +07: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
rjchow 4df15fe948 add: remove email marketing experiment 2023-11-21 17:51:37 +07: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
rodelgc eab133cbe5
Update Action Scheduler to 3.7.0 (#41576)
* Update Action Scheduler to 3.7.0

* Update Action Scheduler to 3.7.0
2023-11-21 18:30:35 +08: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
Bero 7a2aaac112 Remove changelogs 2023-11-21 08:35:00 +01:00
berislav grgičak ab400a4128
Unconnected subscription improvements (#41468)
* Don't show a My Subscriptions group if it's empty

* Hide expiry if installed but has no subscription

* Show subscription status labels in a column

* Add changefile(s) from automation for the following project(s): woocommerce

* Show only one badge

* Show installed header if no installed items

* Remove test code

* Show entire installed section

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-21 08:33:06 +01: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
Kyle Nel 53b8933e7c
Merge Marketplace subscriptions changelogs (#41575)
* Merge changelogs into one
* Update plugins/woocommerce/changelog/feature-marketplace-subscriptions

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-21 09:15:29 +02:00
berislav grgičak 48d7490c2a
Marketplace design improvements (#41505)
* Not connected screen fixes

* Table improvements

* Success notice icon

* Use the same layout of columns for both tables

* Popover

* Add changefile(s) from automation for the following project(s): woocommerce

* CSS lint fixes

* Styling tweaks. Changed font-weight of `.woocommerce-marketplace__product-list-title` to 400, to correspond with the correct weight of the titles like "Installed on this store" in the My Subscriptions section.

* Undo refresh move

* Fix subgrid max widths

* Fic status height

* Update collaborate link

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2023-11-21 08:08:26 +01:00
Kyle Nel 5fe2e401f0
Marketplace - tracking enhancements (#41365)
* Add discover products to page view event

* Initial implementation of beacon REST API (WIP)

* Discover page - products viewed

* Product card clicked event (WIP)

This takes data from various sources and sends it based on the different places that product cards could appear.

Data included:
- position
- vendor
- product type
- label - indicates if "promoted" if applicable
- group - the discover page group if applicable
- search_term - the search term if applicable
- category - the product category clicked from

The data is essentially complete. The beacon API needs finalising still though. Also, the vendor name click event will need to be updated with the same data.

* See more button & Category dropdown "more" events

* Marketplace: remove custom Beacon and use "queueRecordEvent"

* Marketplace: reenable product card links

This was disabled temporarily while we tested tracks on click

* Marketplace: Add position to tracks event

Co-authored-by: Kyle Nel <22053773+kdevnel@users.noreply.github.com>

* Marketplace: move Tracks data to a different prop and type

* Marketplace: refactor Tracks calls in product card

---------

Co-authored-by: raicem <unalancem@gmail.com>
Co-authored-by: Cem Ünalan <raicem@users.noreply.github.com>
2023-11-21 09:48:59 +03: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
RJ a32e1a3922
dev: fix wca test helper option search wildcards (#41503)
fix wca test helper option search wildcards
2023-11-21 11:18:45 +08:00
paul sealock 6339f1628a remove unnecessary changelog files 2023-11-21 13:57:27 +13:00
paul sealock 434cbbaa2c Fix linter error 2023-11-21 13:57:27 +13:00
Paul Sealock 92ede6dc76 Shipping Settings: Update Flat Rate edit copy (#41529) 2023-11-21 13:57:27 +13:00
Paul Sealock 7804f3b71b Shipping Settings: Handle Local Pickup default value (#41481)
* set default to zero

* handle no default
2023-11-21 13:57:27 +13:00
paul sealock c4f45e3eaa fix e2e shopper tests 2023-11-21 13:57:27 +13:00
Paul Sealock 45bd173551 Shipping Settings: Fix updates to copy (#41445)
* Update copy

* Remove uppercase from labels

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-21 13:57:27 +13:00
Paul Sealock 1b7035c411 Shipping Settings: Fix broken e2e tests (#41446)
* give settings proper names

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-21 13:57:27 +13:00
Paul Sealock b82b3e452c Shipping Settings: Fix shipping zones tour copy (#41015) 2023-11-21 13:57:26 +13:00
Paul Sealock ff1d69efb1 Shipping Settings: Handle long help tip text (#41035) 2023-11-21 13:57:26 +13:00
Paul Sealock 6021e78cdc Shipping Settings: Handle theme colors (#41054)
* Fix primary btns colors

* go back to var(--wp-admin-theme-color)

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-21 13:57:26 +13:00
github-actions 8329991262 Add changefile(s) from automation for the following project(s): woocommerce 2023-11-21 13:57:26 +13:00
Paul Sealock 050325c296 Shipping Settings: Update help text on add method modal (#40982)
Move description to bottom of modal
2023-11-21 13:57:26 +13:00
Paul Sealock 3ddb46bad7 Shipping Settings: Add currency symbols (#40816) 2023-11-21 13:57:25 +13:00
Paul Sealock 6ee12c8308 Shipping Settings: Update shipping settings copy (#40893) 2023-11-21 13:57:25 +13:00
Paul Sealock 0d23235d0e Shipping Settings: Add classes cost link to Flat rate methods (#40860) 2023-11-21 13:57:24 +13:00
Paul Sealock 6f460e603a Shipping Settings: Remove zone method defaults (#40838) 2023-11-21 13:57:24 +13:00
Paul Sealock 1a0da8a62d Shipping Method Settings: Update modal contents (#40615) 2023-11-21 13:57:23 +13:00
Paul Sealock 3ec81818d1 Shipping Settings: Update table styles (#40724) 2023-11-21 13:57:23 +13:00
Paul Sealock 7822326a98 Shipping Settings: Tweak Post Codes UI styles (#40554)
* Tweak Post code UI styles

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-21 13:57:23 +13:00
Paul Sealock 87934129f6 Shipping Classes: Create add/edit modal functionality (#40421)
* Components: TreeSelectControl - Make sure individuallySelectParent value is preserved (#40301)

* make sure individually selected parent value is preserved

* Add changefile(s) from automation for the following project(s): @woocommerce/components

---------

Co-authored-by: github-actions <github-actions@github.com>

* Add changefile(s) from automation for the following project(s): woocommerce

* fix rebase error

* appease linter

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-21 13:57:23 +13:00
paul sealock b6bd4df17a Use clearOnSelect false 2023-11-21 13:57:23 +13:00
paul sealock 5fd19f53fa Shipping Zone CSS changes 2023-11-21 13:57:23 +13:00
Paul Sealock 016f87d920 Shipping Settings: Add React base Region Picker (#40184) 2023-11-21 13:57:23 +13:00
Matt Sherman e3c92601c8 Changelog 2023-11-20 18:57:30 -05:00
Matt Sherman 86e8036241 Correct return type of add_group() 2023-11-20 18:55:35 -05:00
Leif Singer 2d44b1f94b
Add `store_id` to system_status REST API (#41341) 2023-11-20 19:37:20 +01:00
Fernando Marichal f78cf190c8
Update variations message to include missing downloads section (#41581)
* Update variations message to include missing downloads section

* Add changelog
2023-11-20 13:59:31 -04: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
Nathan Silveira 5bba23ddb1
Fix currency breaking lines when 2 or more characters (#41548)
* Fix currency breaking lines when 2 or more characters

* Add missing changelog
2023-11-20 11:50:20 -03:00
WooCommerce Bot 12b661bb5b Delete changelog files for 41538 2023-11-20 14:10:27 +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
Leif Singer f7b6647016 fix typo 2023-11-20 12:45:29 +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
Leif Singer fdfa10aa36 appease the linter 2023-11-20 12:26:42 +01:00
Leif Singer cd1227be76 ensure we use any existing `store_id` 2023-11-20 12:04:55 +01:00
Leif Singer 8a68d722e8 ensure that `store_id` is returned by the API call to get the SSR 2023-11-20 11:41:20 +01:00
Leif Singer 85814deeb6 update the test that counts the number of fields in the SSR API response 2023-11-20 11:40:40 +01:00
Gan Eng Chin 6fb787e954
Remove Codisto from default free extensions. (#41499) 2023-11-20 14:26:05 +08:00
RJ a619f2be67
added envia's plugin slug to shipping task partner suggestions (#41539)
* added envia's plugin slug to shipping task partner suggestions

* changelog
2023-11-18 10:23:10 +08:00
Moon 9a651da622
Add payment-gateway-suggestions cache unit test (#41412)
* Add payment-gateway-suggestions cache test

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix broeken test

* Fix broeken test

* Fix broeken test

* Lint fix

* Refactor test

* Lint fix

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-17 13:39:11 -08:00
github-actions 0687e86c92 Add changefile(s) from automation for the following project(s): woocommerce 2023-11-17 19:31:18 +00:00
AnnaMag e68b1792d9
Add digital products to the new experiment testing the product editor. (#41469)
* Add digital product task selection to the A/B test for WC 8.4.

* Add changelog

* Enable the product-virtual-downloadable feature.

* Fix linting error

---------

Co-authored-by: Lourens Schep <lourensschep@gmail.com>
2023-11-17 15:05:03 -04:00
Jorge A. Torres 1d00e76fda
Invalidate coupon cache after hold/usage data is modified in datastore via SQL (#41538)
* Invalidate coupon cache after direct SQL queries

* Add changelog

* Add unit test

* Address feedback
2023-11-17 15:25:10 +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
nigeljamesstevenson 00e1a29194
dev/fix no use before define lint violations (#41452) 2023-11-17 12:05:18 +00:00
Chi-Hsuan Huang c768ca0dc6
[CYS] Remove `getLookAndTone` AI request from the business description step (#41497)
* Remove AI requests from the business description step

* Add changelog
2023-11-17 19:40:43 +08:00
Chi-Hsuan Huang d379a3de85
[CYS] The “Preview" on the transitional screen doesn’t represent our custom color palette (#41496)
* Fix the “Preview” on the transnational screen doesn’t represent our custom color palette

* Add changelog

* Fix setCanvasMode
2023-11-17 19:35:52 +08:00
RJ 225e020d50
add: modified cys business info placeholder (#41532) 2023-11-17 19:08:32 +08:00
github-actions[bot] 6b5c98ad17
Delete changelog files based on PR 41535 (#41537)
Delete changelog files for 41535

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-11-17 17:40:37 +08:00
rodelgc d02f6743fd
Cherry-pick #287 into trunk (#41535)
* Add nonce check during process_bulk_action

The webhooks screen already has a nonce field available, so all that's needed here is to verify the nonce when processing a delete action.

Fixes #284

* Add e2e regression test

* Check admin referer on all present/future actions, not just delete

* Add cleanup after e2e test

* Updates to e2e test

* Use better locators (user facing)
* Simplify some assertions
* Better usage of networkidle
* Remove empty catch clauses

* Add changelog

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2023-11-17 16:53:19 +08:00
Ron Rennick b5b364e902 revert stalebot to v8 and single run 2023-11-16 17:24:32 -04:00
Maikel David Pérez Gómez ed0d38c44b
[External products] Product details (#41442)
* Add buy button section

* Enable external product support into the product block editor

* Hide buy button section when product type is not external

* Remove BaseControl from TextControl since it's not required anymore, InputControl takes care of that now

* Add type and suffix support to the product-text-field block

* Add the placeholder to the external url input and remove required constraint to the buy button text

* Set the url icon link type to external

* Fix input border to be red when invalida now that base control is not present twice

* Set the min height to 36px to match others non InputControls components height

* Extends required constrain to also support a custom error message

* Extends the product-text-field validation system

* Add product-text-field documentation

* Add changelog files

* Fix php linter error

* Fix compilation error

* Fix linter errors
2023-11-16 14:11:44 -05:00
rodelgc 89514921f9
Update stable tag to 8.3.0 (#41519)
woorelease: Update stable tag to 8.3.0

Co-authored-by: rodel <rodel@rodels-MacBook-Pro.local>
2023-11-17 03:00:38 +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
Christopher Allford 8fcef3b2d3
Prepared 2.3.0 Beta Tester Release (#41513) 2023-11-16 08:59:42 -08: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
Gan Eng Chin 20ab36ed4c
Merge branch 'trunk' into remove/marketing-codisto 2023-11-16 23:43:31 +08: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
Ron Rennick 6402bf8aa3
use latest commit of stalebot action, tweak configuration accordingly (#41305)
* use latest commit of stalebot action, tweak configuration accordingly

* remove stalebot.js

* use default operations per run

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2023-11-16 09:15:08 -06: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
github-actions 420d219c2c Add changefile(s) from automation for the following project(s): @woocommerce/eslint-plugin, @woocommerce/components, @woocommerce/api, woocommerce 2023-11-16 19:21:30 +08:00
rjchow 5d99b267bf fix: fixed all instances of no-use-before-define lint rule violations 2023-11-16 19:21:30 +08:00
RJ b61b86545a
fix: fixed all instances of translator lint rule violations (#41450)
* fix: fixed all instances of translator lint rule violations

* Add changefile(s) from automation for the following project(s): @woocommerce/eslint-plugin, @woocommerce/components, woocommerce

* fix i18n lint violations in @woo/components

* fix all i18n lint rule violations in @woo/product-editor

* Add changefile(s) from automation for the following project(s): @woocommerce/product-editor, @woocommerce/eslint-plugin, @woocommerce/components, woocommerce

* empty commit to trigger CI

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-16 19:15:11 +08:00
berislav grgičak b3d24ef7d1
Update refresh button to use API (#41397)
* Add refresh to subscription context

* Add refresh button

* Prevent multiple clicks

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix notices

* Refresh notices

* Trigger Build

* Add spacing and fix class name

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-16 11:51:30 +01: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
Vlad Olaru 5b209199a0
Use a transient when computing orders in the last 90 days (#41466) 2023-11-16 10:55:52 +02:00
github-actions 2de28b04d0 Add changefile(s) from automation for the following project(s): woocommerce 2023-11-16 08:38:24 +00:00
Gan Eng Chin 9118823382
Remove Codisto from test. 2023-11-16 16:22:33 +08:00
Gan Eng Chin f1cc9e6a57
Remove Codisto from default free extensions. 2023-11-16 16:21:37 +08:00
Vlad Olaru fb381bd03c
docs: Improve inline docs 2023-11-16 10:11:10 +02:00
Corey McKrill 0a98a249b0
Update CSV export escape characters (#41464) 2023-11-15 14:38:41 -08: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
Matt Sherman f4596deddb
Template API: Server-side logging (#41316) 2023-11-15 11:07:11 -05: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
rodelgc 62877a9d1d
Change plugin name to "Woo Subscriptions" in release and daily testing workflows (#40460)
* Update spec

* Update daily, release workflows

* Conditionally post slack summary

* Add changelog
2023-11-15 23:08:47 +08:00
Vlad Olaru 7a1eed28c5
Add changelog entry 2023-11-15 15:23:45 +02:00
Vlad Olaru a7a0aa9f8d
Refactor has_orders to use a transient and avoid queries as much as possible 2023-11-15 15:19:41 +02:00
Chi-Hsuan Huang 05cfe2fe98
Improve CYS assembler hub performance (#41453)
* Use custome iframe to improve iframe loading performance

* Add loadStyles and loadScripts props

* Fix sidebar pattern rerendering issue

* Add changelog

* Fix prop name

* Fix isScrollable
2023-11-15 21:06:05 +08:00
Leif Singer bf2d7760ff add changelog file 2023-11-15 14:01:54 +01:00
Leif Singer 1a6961095d ensure tab and carriage return are covered by the test 2023-11-15 14:00:30 +01:00
Chi-Hsuan Huang e486d0a7e9
[CYS] Tweak intro page banner style (#41458)
* Tweak cys banner style

* Add changelog
2023-11-15 20:51:23 +08:00
Leif Singer 20f2df8779 update list of CSV characters to prepend with a tick when occurring at the beginning of a cell 2023-11-15 13:43:46 +01: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
berislav grgičak 503dad4b57
Check if wc_admin_register_page exists before loading Marketplace pages (#41395)
* Check if wc_admin_register_page exists before using it

* Add changefile(s) from automation for the following project(s): woocommerce

* Trigger Build

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-15 11:30:30 +01:00
berislav grgičak 495475db13
Marketplace connection deny redirect (#41398)
* Redirect connect deny to correct subscriptions page

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-15 11:30:12 +01:00
Chi-Hsuan Huang 35a10d05c2
[CYS] Fix `getCompletion` API hanging and color choices parsing error (#41424)
* Fix color choices prompt

* Add timeout to getCompletion API calls

* Add changelog

* Fix test
2023-11-15 17:46:20 +08:00
raicem 2a1e4a8874 Merge branch 'trunk' into feature/marketplace-subscriptions 2023-11-15 10:08:22 +03:00
Kyle Nel f22f2fe3cf
Marketplace - Update empty state for installed subscriptions table (#41267)
* Add empty state for installed subscriptions table

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
Co-authored-by: raicem <unalancem@gmail.com>
Co-authored-by: mlaetitia <30905719+mlaetitia@users.noreply.github.com>
2023-11-15 09:06:54 +02:00
berislav grgičak d4bcae78f9
Fix snackbar icon position (#41399)
* Fix snackbar icon position

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove absolute positioning

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-15 07:18:40 +01:00
Moon 5d192d5ed6
CYS - Add AI disclaimer copy (#41414)
* Add AI disclaimer

* Add changefile(s) from automation for the following project(s): woocommerce

* Move .ai-disclaime to inside the .woocommerce-customize-store-banner-content p rule

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2023-11-15 12:39:51 +08: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
Matt Sherman 6698262cb9 Fix duplicate template registration caused by incorrect rebase conflict fix 2023-11-14 21:10:06 -05:00
nigeljamesstevenson d8dc064f62
Prevent possible activation notice due to early initialization of feature settings (#41434) 2023-11-15 01:29:37 +00:00
Chi-Hsuan Huang 3e1ee8e089
[CYS] Preload fonts in preview frame (#41421)
* Preload fonts in preview iframe

* Add changelog
2023-11-15 09:20:56 +08:00
Chi-Hsuan Huang 1c4f91ebd3
[CYS] Add the possibility to remove the logo (#41393)
* Add the possibility to remove the logo

* Add changelog
2023-11-15 09:20:42 +08:00
Matt Sherman b6698d07aa Code docs and function rename 2023-11-14 16:30:48 -05:00
Matt Sherman 494d841c2a Only log template events to file if they have changed 2023-11-14 16:30:44 -05:00
Matt Sherman 6452e10ec5 Decouple logging from implementation 2023-11-14 16:24:49 -05:00
Matt Sherman ece3ba5ca8 Update message for hide condition added to detached block 2023-11-14 16:23:00 -05:00
Matt Sherman 4bc72fcc3e Handle case in logging where container is a normal block 2023-11-14 16:23:00 -05:00
Matt Sherman 7f7b9f5c33 Add logging to hide conditions 2023-11-14 16:23:00 -05:00
Matt Sherman a64e397cd7 Add code docs 2023-11-14 16:23:00 -05:00
Matt Sherman 6e9a5fa04e Update default threshold to WARNING 2023-11-14 16:23:00 -05:00
Matt Sherman 451e73f9f9 Update default threshold to NOTICE 2023-11-14 16:23:00 -05:00
Matt Sherman ce788ac628 Changelog 2023-11-14 16:22:59 -05:00
Matt Sherman 9f5a56234b Changelog 2023-11-14 16:22:59 -05:00
Matt Sherman fd20cb7ed6 Update styling 2023-11-14 16:22:59 -05:00
Matt Sherman d95ad6987e Use option to set the threshold 2023-11-14 16:22:59 -05:00
Matt Sherman 16fb79688e UI changes for updating the block template logging threshold 2023-11-14 16:22:59 -05:00
Matt Sherman e159e7ff4f API for updating the block template logging threshold 2023-11-14 16:22:59 -05:00
Matt Sherman d53966018d Include template events in script sent to client 2023-11-14 16:22:56 -05:00
Corey McKrill aabee87c67
Update "Add to cart" aria-label value so it matches the visible text pattern (#41389)
Fixes #41368
2023-11-14 13:17:12 -08:00
Matt Sherman efe4b45d9a Update logging calls 2023-11-14 16:13:39 -05:00
Matt Sherman 0648b064ba Refactor logging and add template events 2023-11-14 16:13:39 -05:00
Matt Sherman 7b2767aa57
Template API: Only generate templates on WCA routes (#41410) 2023-11-14 15:47:20 -05:00
Žiga Sancin 62d21cc03d
Check if $data['billing_email'] is set (#41098)
* Check if $data['billing_email'] is set

Checks if $data['billing_email'] is set in the create_order function. Fixes #41097

* Add changelog entry

Adds the changelog entry for #41097
2023-11-14 19:18:42 +00: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
Jorge Torres 4ab3d82c6b Add changelog 2023-11-14 16:38:18 +00:00
Jorge Torres 2963731d2d Prevent possible activation error in `FeaturesController` 2023-11-14 16:36:39 +00: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
Nathan Silveira 55766ac140
Template API: Conditional disabling support (#41307)
* Add disable conditions functionality to back-end

* Evaluate _templateBlockDisableConditions in registerWooBlockType

* Add 'disabled' support for number, pricing, and text

* Add disabled support for checkbox

* Add disabled for taxonomy block

* Add changelogs

* Update documentation

* Add unit tests

* Augment attribute with disabled in back-end

* Fix disabled styling

* Remove disabled from toggle since it's being added for all blocks

* Improve CSS for disabled fields

* Only add disabled attribute when it's not added on the block json and refactor

* Allow adding disable conditions in the constructor

* Fix lint issue

* Fix test

* Add disableConditions to dependencies
2023-11-14 13:17:34 -03: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
Joni Erkkilä 48978ff8b2 Added ':' between static translation and dyanmic product name 2023-11-14 17:55:13 +02: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
Sagar Tamang 7ec5a88573
[Enhancement]: Added a new parameter $status_transition to the woocommerce_order_status_$status_transition["to"] hook. (#41051)
* Added a new parameter $status_transition to the woocommerce_order_status_$status_transition["to"] hook.

* Added changelog

* fix - phpcs errors

* Added version to the hook
2023-11-14 12:06:30 +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
github-actions[bot] 8f819f60ae
Delete changelog files based on PR 41409 (#41428)
Delete changelog files for 41409

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2023-11-14 18:30:16 +08:00
jonathansadowski e5cbf82781
Update/wp 6.4 (#41409)
* Update woocommerce.php required WP version for 6.4 release

* Update readme.txt for WP 6.4 release

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2023-11-14 18:10:30 +08: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
Eason efd2ae7e0a
Fix the slides overlapping on the Marketing > Coupon page (#41155)
* Fix the slides overlapping on the Marketing > Coupon page.

* Add changelog
2023-11-14 10:23:08 +08: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
github-actions 52f0067ff1 Add changefile(s) from automation for the following project(s): woocommerce 2023-11-13 23:47:48 +00:00
abelsonlive 1c4314ccf5 no blog_id 2023-11-13 16:26:23 -05:00
abelsonlive ef1d8023ca oops 2023-11-13 15:16:29 -05:00
github-actions d89bb6ef60 Add changefile(s) from automation for the following project(s): woocommerce 2023-11-13 20:15:57 +00:00
abelsonlive 5cd40685cb move to system_status endpoint 2023-11-13 15:14:17 -05:00
Matt Sherman 48f0e14ba4 Changelog 2023-11-13 15:05:03 -05:00
Matt Sherman 4b3ee3c13d Move creation and registration of templates to only WCA admin pages, right before sent to client 2023-11-13 15:03:52 -05:00
Matt Sherman 3dbd06ef1b Remove setting template on productBlockEditorSettings 2023-11-13 14:43:57 -05:00
Maikel David Pérez Gómez fac0669fc8
Hide virtual & downloadable sections when the product type is 'variable' (#41331)
* Show virtual and downloadable features in simple product and variations only

* Add changelog file

* Fix php linter errors
2023-11-13 14:00:24 -05:00
Matt Sherman a8e996a0ff Refactor editor settings to separate function 2023-11-13 13:38:59 -05:00
Matt Sherman 9e292485c3 Refactor and remove unused init code 2023-11-13 13:32:47 -05: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 4e31ee605b Changelog 2023-11-13 14:52:51 +00:00
Mike Jolley 795117f711 Bump version in composer.json 2023-11-13 14:51:49 +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
nigeljamesstevenson 86a0e26f07
Add filter to remove some of the `order-received` page protections (#41347) 2023-11-13 10:14:34 +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
Joni Erkkilä bb9bc8ebee Added changelog 2023-11-12 14:11:46 +02:00
Joni Erkkilä 4e626ec331 Updated add to cart aria-label value so it matches the visible text pattern 2023-11-12 14:01:55 +02:00
Barry Hughes 70154d5476
Reduce risk of accessing a property on a non-object while disabling autosave. 2023-11-10 16:32:41 -08:00
barryhughes 6f5708b396 Changelog. 2023-11-10 15:40:14 -08: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
Corey McKrill 5b9231edce
Fix typographic quotes used in HTML attributes (#41320)
Fixes #41179
2023-11-10 12:21:54 -08:00
Leif Singer be76c3c341
update references to woocommerce.com to now reference woo.com (#41241) 2023-11-10 20:47:58 +01:00
Barry Hughes 8134a9237c
Use consistent sanitization on tax classes (#41220) 2023-11-10 11:40:18 -08:00
Veljko V f51995a470
Add new E2E tests to cover Shopper Cart Block (#40522)
* Add new e2e tests to cover shopper cart block first part

* Add changelog

* Add more tests to cover coupons

* Update coupon tests to include discounts

* Split cart block tests and update tests

* Add E2E tests for cart block shipping

* Add tests for shopper cart block calculating tax

* Remove test.skip

* Add a workaround for filling shipping due to issue found

* Improve welcome modal closure

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2023-11-10 11:14:47 -08:00
Barry Hughes ab10a660e7
Minor tweak to changelog. 2023-11-10 10:59:06 -08: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
Veljko V ffe90ce432
Add new test scenario for mini-cart inclusive tax price (#41064)
* Update mini-cart test to include tax scenario

* Include changelog file

* Move changelog file to the right place

* Update taxing options

* Update calculation for tax price

* Remove only parameter

* Improve closing welcome popup if prompted

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2023-11-10 10:40:04 -08:00
Barry Hughes 9e0fbe8606
PHPCS fix. 2023-11-10 10:38:04 -08:00
Leif Singer 15058e1654 Revert "bump template versions"
This reverts commit 2ec041c9a0.
2023-11-10 19:13:51 +01:00
Leif Singer 09040b134f Revert "bump all edited templates to @version 8.4.0"
This reverts commit c788c8f9fa.
2023-11-10 19:13:06 +01: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
Leif Singer 030d67531f Woocommerce → WooCommerce (when used in prose only) 2023-11-10 16:13:06 +01:00
Leif Singer 5944fdcdff replace developer.woocommerce.com with developer.woo.com 2023-11-10 16:09:27 +01:00
Leif Singer 1e1fec80aa capitalize Woo.com when used in a sentence 2023-11-10 15:49:08 +01:00
Leif Singer c4cddc1eac wp_kses_post instead of esc_html as WC_Helper_Updater::get_updates_count_html returns HTML 2023-11-10 15:49:08 +01:00
Leif Singer 6ef64d5328 add back in woocommerce.com as a soon-to-be legacy check for the plugin URL 2023-11-10 15:49:08 +01:00
Leif Singer 96717cc3dc remove superfluous "here"
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2023-11-10 15:49:08 +01:00
Leif Singer 1c4215fd07 capitalize Woo.com when used in a sentence
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2023-11-10 15:49:08 +01:00
Leif Singer e4cae54e5a capitalize Woo.com when used in a sentence
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2023-11-10 15:49:08 +01:00
Leif Singer 8f901fa0e0 capitalize Woo.com when used in a sentence
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2023-11-10 15:49:08 +01:00
Leif Singer 1d052f2761 capitalize Woo.com when used in a sentence
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2023-11-10 15:49:08 +01:00
Leif Singer c788c8f9fa bump all edited templates to @version 8.4.0 2023-11-10 15:49:08 +01:00
Leif Singer 2ec041c9a0 bump template versions 2023-11-10 15:49:08 +01:00
Leif Singer 682ee2eba7 appease the linter 2023-11-10 15:49:08 +01:00
Leif Singer 0d344bf5d6 skip a test that is waiting for a fix from WooCommerce Blocks 2023-11-10 15:49:08 +01:00
Leif Singer caedd5ce91 fix linter findings in woocommerce 2023-11-10 15:49:08 +01:00
Leif Singer ab94bf8550 fix linter findings in woocommerce-admin 2023-11-10 15:49:08 +01:00
Leif Singer fb4da57966 more linter work 2023-11-10 15:49:08 +01:00
Leif Singer 075a520952 undo changes to test fixtures 2023-11-10 15:49:08 +01:00
Leif Singer 351d7f458b fix typo in test_wc_rest_urlencode_rfc3986 2023-11-10 15:49:08 +01:00
Leif Singer eb5a8a65f8 add changelog files 2023-11-10 15:49:08 +01:00
Leif Singer 9edad5270d appease the linter 2023-11-10 15:49:08 +01:00
Leif Singer 0d7a833056 exclude `woocommerce.com/wp-json` 2023-11-10 15:49:08 +01:00