Commit Graph

22261 Commits

Author SHA1 Message Date
Barry Hughes b7ecd5e294
Cherry-pick PR#52055 (remove changelog) (#52346)
Remove changelog (this fix was cherry-picked back to 9.4).
2024-10-28 09:52:33 -07:00
Miguel Pérez Pellicer aec23fdb0e
Restore total_formatted column in exported reports (#52174)
* Restore total_formatted column

* Add changelog
2024-10-28 10:27:08 -06:00
Gabriel Manussakis ee66739f29
[Accessibility] Add focus ring to close notice banner button (#52079) 2024-10-28 16:04:21 +00:00
Boro Sitnikovski 1f0dc7a37f
Add a `is_string` check to the params iterator (#52361)
This works fine:

```
curl -u bor0:asdf -X OPTIONS "localhost:8080/wp-json/wc/store/v1/products?_unstable_tax_asdf_operator=1" | jq
```

However, this causes a fatal error `PHP Fatal error:  Uncaught TypeError: str_starts_with(): Argument #1 ($haystack) must be of type string, int given`:

```
curl -u bor0:asdf -X OPTIONS "localhost:8080/wp-json/wc/store/v1/products?1=2" | jq
```
2024-10-28 15:38:09 +01:00
Fernando Marichal 0b56f7e30a
Record `Cancel` and `Close` events on modal to change collection type (#52314)
* Add Cancel and Close events to PC

* Add changelog
2024-10-28 11:31:19 -03:00
Albert Juhé Lluveras 250a9bc451
CYS: Prevent '0' to appear next to the Logo section (#52371)
* CYS: Prevent '0' to appear next to the Logo section

* Add changelog file
2024-10-28 14:33:15 +01:00
Maikel Perez aa5e764db9
CYS > Accessibility: update the contrast for the social icons on Large Footer Pattern (#52344)
* Fix the social links icon color from footer-large pattern to automatically pick the icon color from the site theme styles

* Add changelog file
2024-10-28 10:16:43 -03:00
Boro Sitnikovski aed63a9797
Remove double changelog entry which causes CI to fail (#52379) 2024-10-28 08:46:29 -03:00
Mike Jolley d27129b155
Checkout: Make return to cart button text editable (#52262)
* Make return to cart button text editable

* Changelog
2024-10-28 11:03:14 +00:00
Ally 953388ef4c
Include global_unique_id in product import mapper (#52240)
* Add global_unique_id to importer controller

* Add changelog for gtin import mapper

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-28 06:54:10 -03:00
Karol Manijak b610c9d740
Add tracking to collection replacement (#52266)
* Implement new tracks in PC block

* Add changelog

* Record from what to what collection is replaced
2024-10-28 10:42:34 +01:00
Naman Malhotra bcbd08816b
PRR flow (#52160)
* init

* comment tweak

* changelog

* use gihub recommended method

* removed content write permission

* change in how to extract PR number

* change in how to extract PR number

* change in how to extract PR number

* regex change

* regex change

* template updates

* updated comments

* set global permission to empty and moved it within each job

* refactored code, created a needs step

* add condition to prep

* added acknowdegement section

* added github comment

* Moved variables to env

* PRR template

* PRR template changes

* Added changes to cfe notifications

* minor changes

* Added slack message sanitization

* PRR cherry-pick flow

* add cherry pick to frozen release label

* bug fix

* use js instead of shell

* use js instead of shell

* template updates

* frozen release as output

* added some comments

* pr base change

* pr base change

* descp change

* copy changes

* Added checkboxes conformation

* added ack section

* fixed bug

* fixed bug

* fixed bug

* typo

* bug fix

* bug fix

* added logic for github comment

* bug fix

* GH PR comment

* GH PR comment for CFE flow

* GH PR comment for CFE flow

* changelog

* In complechangelog step - extract version from branch

* add validation for manual version input

* log the version user entered

* log the version user entered

* rebased changes

* Code refactor

* bug fixes and formatting

* code refactor

* bug fixes

* template updates and using context object instead of parsing

* bug fixes

* renamed file

* moved vars to env
2024-10-28 16:34:10 +07:00
Ján Mikláš eb7aa1132c
Add experimental feature for email improvements (#52232)
* Add experimental feature for email improvements (#52212)

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-28 09:42:03 +01:00
Naman Malhotra 36f2990170
CFE - added strict check for PR and release number extracted from issue body (#52002)
* Init

* comment tweak

* changelog

* use gihub recommended method

* removed content write permission

* change in how to extract PR number

* regex change

* template updates

* updated comments

* set global permission to empty and moved it within each job

* refactored code, created a needs step

* add condition to prep

* added acknowdegement section

* added github comment

* Moved variables to env

* review changes
2024-10-28 14:31:41 +07:00
Karol Manijak 7c477fe9dc
Product Collection: add "Products" suffix to couple of collections (#52325)
* Add "Products" suffix to some collections name as they're being exposed in the inserter and had confusing names without Product Collection context

* Add changelog

* Update E2E tests
2024-10-28 08:26:01 +01:00
Sam Seay 623cb35976
Adjust copy and show the address in the updated warning message. (#51760) 2024-10-28 18:00:06 +13:00
Chi-Hsuan Huang 5eaecdf383
Prevent synchronous WCCOM API calls in admin pages (#52281)
* Remove Internal/Admin/Onboarding/OnboardingThemes.php

* Only init WCPayPromotion for payment setting page

* Use cached specs

* Add changelog

* Update onboarding.php

* Move isWooPayEligible settings to init

* Fix $is_payments_task check

* Update is_woopay_eligible

* Fix isWooPayEligible logic
2024-10-28 11:46:03 +08:00
RJ 05c3bacac3
fix: removed siteground cache buster (#52365) 2024-10-28 11:44:39 +08:00
Chi-Hsuan Huang ed795b0faf
Fix "Coming soon" bar styles are missing in several themes (#52290)
* Refactor coming soon banner styles and enqueueing

This commit refactors the styles for the coming soon banner in the WooCommerce plugin. The changes include:
- Moving the styles from the `woocommerce.scss` file to a new `coming-soon.scss` file.
- Updating the styles for the `#coming-soon-footer-banner` element.
- Adding a new class `.coming-soon-footer-banner__content` for the content inside the banner.
- Updating the styles for the dismiss button.

Additionally, the commit modifies the `ComingSoonRequestHandler.php` file to enqueue the new `coming-soon.css` file when the coming soon feature is enabled.

These changes improve the organization and maintainability of the code related to the coming soon banner and ensure that the correct styles are applied.

* Add changelog

* Fix styles

* Remove empty line

* Update check orders
2024-10-28 11:01:43 +08:00
Barry Hughes 292144b5be
Update readme.txt, fix WP CLI link. (#52351) 2024-10-25 14:32:01 -07:00
Tung Du d35ea9764c
[Experimental] Update Price Filter block to the new structure and add the Price Slider block (#51660) 2024-10-25 23:04:04 +07:00
github-actions[bot] 624955f7e6
Delete changelog files based on PR 52199 (#52341)
Delete changelog files for 52199

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-10-25 08:42:44 -07:00
Barry Hughes 12f18dc4f5
Early translation mitigation (#52199)
* Improve handling (WP 6.7+) when translations are inadvertently loaded early.

* Changelog.
2024-10-25 08:26:09 -07:00
Gabriel Manussakis 1fde6a54de
[Accessibility] Make coupon code errors announced by screen readers (#52040)
* Remove withInstanceId HOC from TotalsCoupon

* Pass instanceId prop to TotalsCoupon component

* Add changelog file

* Remove withInstanceId import

* Update coupon tests
2024-10-25 15:40:26 +01:00
Manish Menaria 4ca6696f12
Product Collection: Add "order" reference to Upsells and Cross-sells (#52258)
* Add order reference to Upsells and Cross-sells

- Added 'order' to usesReference in cross-sells and upsells
- Updated LinkedProductControl for order context
- Enhanced ProductCollection to handle order references

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

* Add PHP code for Cross-sells collection

* Fix formatting

* Add E2E tests

1. In the Cart Template, it checks that "From products in the cart" is
   selected by default for the "My Custom Collection - Cart Context".

2. In the Order Confirmation Template, it verifies that "From products
   in the order" is chosen by default for the "My Custom Collection -
   Order Context".

* Add 'block' scope to cross-sells collection

* Extract and use reference type constants

This commit extracts the REFERENCE_TYPE_CART and REFERENCE_TYPE_ORDER
constants to the top of the file and updates their usage throughout
the code, including in the getFromCurrentProductRadioLabel function.

* Align variable naming for product references in Product Collection

This commit updates the ProductCollection class to ensure consistency in
variable naming for product references across different collection types,
particularly aligning with the naming convention used in Upsells.

* Add "hadOrderReference" to conditional label display

Key changes:
- Removed `isUsesReferenceIncludesCart` parameter from `getFromCurrentProductRadioLabel`
- Introduced `hasCartReference` and `hasOrderReference` parameters for consistency
- Updated conditional logic to check for both cart and order references
- Adjusted the function call in `LinkedProductControl` to pass both new parameters

* Fallback to 0 for orderId in get_product_ids_from_order calls

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-25 14:56:39 +05:30
Veljko V. cd2edff752
Update e2e tests to be compatible with WP 6.7 (#52304)
* Updated e2e tests to be compatible with WP 6.7

* Add changelog
2024-10-24 10:40:11 -07:00
Maikel Perez f5701ab537
[CYS on core] Ensure the URL for the transitional page is correct whenever accessing it for the very first time (#52271)
* Ensure the URL for the transitional page is correct whenever accessing it for the very first time after completing the CYS flow

* Add changelog file
2024-10-24 14:18:47 -03:00
Alexandre Lara a39958a4a7
[Experimental] Product Filters Redesign > Status filter block: Rename Stock Status Filter to Status Filter (#52076)
* Rename Stock Status Filter to Status Filter

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

* Fix e2e test error

* fix php lint error

* Fix php lint errors

* fix php lint errors

* Update variable name to match the new block name

* Update block name

* Rename variables to match new block name

* fix import error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-24 14:16:54 -03:00
Fernando Marichal c3381a02a6
Fix Upsells and Cross-Sells selection changes depending on block position (#52235)
* Try a fix for 52235

* Add changelog

* Verify product_collection inside is_related_products_block

* Fix lint

* Fix tests

* Add default to $block

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2024-10-24 10:17:38 -03:00
Seghir Nadir b84067c9f0
add delayed account creation to WC_Tracker snapshot (#52214)
* add delayed account creation to WC_Tracker snapshot

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-24 14:40:26 +02:00
Seghir Nadir af56d3f19d
Use method title or gateway title in Checkout compatiblity notice (#52070)
* Use method title or gateway title in Checkout compatiblity notice

* use better conditions

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-24 14:38:00 +02:00
Tung Du b53163e219
Add experimental-blocks flag to live branches userscript (#52285) 2024-10-24 13:41:04 +02:00
Nikita 7030b646f9
[Translations]: Fixed a bug with translations of "Privacy Policy" and "Terms and conditions (#52218)
Co-authored-by: Nikita Koida <nikita.koido@intexsoft.by>
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
2024-10-24 12:54:26 +02:00
Albert Juhé Lluveras 05f70533bc
Fix block theming doc links (#52230)
* Fix block theming doc links

* Add changelog file

* Update manifest
2024-10-24 12:19:59 +02:00
Oleksandr Zhyian 840ad69e22
Add support for SalePrice in JSON-LD schema for structured data (#52105)
* feat: add support for SalePrice in JSON-LD schema for structured data

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

* fix: phpcs issues

* feat: add SalePrice property to variable products on sale

* feat: use sale end date of lowest-priced variation for validThrough in schema

* refactor: simplify code

* fix: ensure that only sale prices are considered for the SalePrice property in variable products on sale

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-24 12:18:42 +02:00
Viktor Szépe 9bfb75d6a3
Fix return type of WP_Background_Process::dispatch (#50054) 2024-10-24 08:45:09 +02:00
Gabriel Manussakis f3c66456d4
[Accessibility] Add focus indicator to select and text inputs on Cart/Checkout block pages (#52010)
* Add outline if select and text inputs are focused

* Add changelog file

---------

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
2024-10-24 08:44:41 +02:00
Tung Du 115619bcde
Fix: use correct wrapper class for product grids (#50697) 2024-10-24 08:44:17 +02:00
Tung Du 7bd713c5ed
Experimental: Prevent diffing error using key for each router region of Chips and Checkbox List (#52210) 2024-10-24 08:44:03 +02:00
Albert Juhé Lluveras 8de9cd3b36
CYS: Remove unnecessary 'as' prop from SiteHub component (#52260)
* CYS: Remove unnecessary 'as' prop from SiteHub component

* Add changelog file
2024-10-23 19:06:45 +02:00
Luigi Teschio 3b48d14f3c
Add To Cart Form: hide stepper when product is sold individually (#52193)
* Add To Cart Form: hide stepper when product is sold individually

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

* improve naming

* add comment

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-23 14:00:16 -03:00
Mike Jolley 084297a1a9
Cart Data Store: Use createReduxStore and fix type warnings (#52219)
* Use createReduxStore instead of deprecated registerStore

* Move thunks to correct file

* Fix type definitions

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

* changelog

* reduce diff size

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

* Remove todo

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-23 17:15:41 +01:00
Joshua T Flowers 91eeb179e5
Set a fixed color to Select2 dropdown options (#52244)
* Set a fixed color to select2 dropdown options

* Add changelog entry
2024-10-23 11:48:23 -04:00
Thomas Roberts 6eb9d6a83d
Fix product count display on mini cart first render (#52124)
Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
2024-10-23 15:50:13 +01:00
Moon 42c7d33dbb
Track skip guided setup click (#47194)
* add: tracks for skip guided setup

* moved recordSkipGuided setup to skip guided setup step

* lint

* moved it further

---------

Co-authored-by: rjchow <me@rjchow.com>
2024-10-23 22:19:51 +08:00
Vladimir Reznichenko 21d14759b3
[dev] Monorepo: minor build speed improvement (tsconfig consolidation) (#52191)
In this PR, we consolidate TypeScript config files (using the 'include' setting) and JS test directory naming. The goal is to reduce the number of processed files during different build steps.
2024-10-23 13:48:36 +02:00
Luigi Teschio 1e8b6d6b76
Avoid duplicate custom classnames (#51910)
* Avoid duplicate custom classnames

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-23 12:52:28 +02:00
Mike Jolley a6d09c9133
Checkout: Fix default customer location and geolocation so only allowed countries get selected (#51885)
* Refactor wc_get_customer_default_location to ensure only valid countries are selected

* changelog

* MIssing doc block

* Updates tests

* Update test

* stripos usage

* Use isset for country check
2024-10-23 11:33:28 +01:00
Vladimir Reznichenko ed7d8c8505
[dev] CI: reduce number of wp-env startup crashes (take 2) (#52254)
To reduce wp-env startup crashes in CI, bump the ut's version to the latest and downgrade the MariaDB version used under the hood to 11.2. Related to https://github.com/WordPress/gutenberg/issues/62242, since it's addressed, we are good to remove the patch.
2024-10-23 11:13:20 +02:00
Ilyas Foo 983326c6d6
Improve stability of core profiler extensions e2e tests (#52252)
* Change e2e test to use plugin slugs instead

* Changelog

* Add data-slug in plugin screen, set remote variant for more predicability, change to use plugin slugs

* Update code to be clearer
2024-10-23 17:09:09 +08:00
Manish Menaria 6ca412f1ec
Add "Manual (menu order)" sorting option to Product Collection block (#52221)
* Add "Manual (menu order)" sorting option to Product Collection block

This change allows store owners to use their custom product order
(set in the WooCommerce admin panel) within the Product Collection block,
providing more flexibility in product listing.

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

* Change order from DESC to ASC

* Add test for menu_order sorting in ProductCollection

This commit adds a new test case to verify the functionality of menu_order
sorting in the ProductCollection block. The test ensures that when the
'orderBy' attribute is set to 'menu_order' and the 'order' is set to 'asc',
the resulting merged query correctly includes these sorting parameters.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-23 13:39:15 +05:30
Karol Manijak 2793669edf
Hide All Products from inserter (soft-deprecation) (#52207)
* Add 'all products' keyword to Product Collection

* Hide All Products from inserter

* Add changelog

* Update test

* Update E2E tests

* Update E2E

* Fix the test by replacing All products with Product Collection
2024-10-23 09:32:42 +02:00
Jason Kytros 24403c244e
[WC Tracker]: Track brands count (#52056)
* [WC Tracker]: Track brands count

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

* Handle case where the product_brand taxonomy doesn't exist.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-23 09:39:49 +03:00
Manish Menaria dc8fdcfb9a
Product Collection: Fix "Products to show" inspector control not showing as expected on Cart template (#52186)
* Fix: Upsells collection not showing correct products on frontend

This commit addresses an issue where the Upsells collection wasn't displaying the correct products on the frontend. The problem was caused by a variable name mismatch in the condition checking for empty product references.

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

* Rename product_references variable for consistency

* Add support for linked products in cart context

This commit extends the LinkedProductControl component to support
linked products in the cart context. It introduces the following changes:
- Add a check for cart location alongside product location
- Introduce a dynamic label for the radio control option, which changes
  based on whether the context is a product or cart
- Refactor the logic to determine when to show the radio control and
  which option should be selected by default

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

* Refactor LinkedProductControl for improved clarity and flexibility

- Extract getFromCurrentProductRadioLabel function for better reusability
- Improve conditional logic for showing linked product control
- Enhance readability by using more descriptive variable names
- Simplify showLinkedProductControl calculation

* Refactor: Add constants for reference types in LinkedProductControl

* Rename variables in LinkedProductControl for clarity

- 'isUsesReferenceIncludesProduct' to 'hasProductReference'
- 'isUsesReferenceIncludesCart' to 'hasCartReference'

* Remove unused import

* Revert changes in ProductCollection.php

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-23 11:44:42 +05:30
Chi-Hsuan Huang 86dc2c8c1c
Change cache control to max-age=60 for coming soon pages (#52200)
* Update cache control header to 60s for coming soon pages

* Add changelog
2024-10-23 11:49:28 +08:00
Chi-Hsuan Huang 8f8a9a4bac
Fix OBW continue button overlaps with checkbox in mobile screens (#52205)
* Fix OBW continue button overlap with checkbox in mobile screens

* Add changelog

* Clean css
2024-10-23 11:32:22 +08:00
Luigi Teschio 733f025414
Stock Filter: Update block to the new structure (#51714)
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-10-23 10:13:17 +07:00
RJ c0ba0a99e0
fix: storybook product editor webpack path (#51996)
* fix: storybook product editor webpack path

* Add changefile(s) from automation for the following project(s): woocommerce, woocommerce/client/admin

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-23 03:04:20 +00:00
Chi-Hsuan Huang 154689eb44
Fix RTL CSS on the installation wizard (#52206)
* Fix RTL CSS on the installation wizard

* Add changelog

---------

Co-authored-by: Hamid Reza Yazdani <yazdaniwp@gmail.com>
2024-10-23 09:25:43 +08:00
Chi-Hsuan Huang a71c52789f
Fix mobile app modal UI (#52201)
* Fix mobile app modal UI

* Add changelog

* Fix mobile style
2024-10-23 08:38:33 +08:00
Chi-Hsuan Huang 6e0c754f64
Fix "Finish setup" icon remains if tasks are disabled without being completed (#52204)
* Fix "Finish setup" icon remains if tasks are disabled without being completed

* Add changelog

* Remove console
2024-10-23 08:34:48 +08:00
Chi-Hsuan Huang b69ba253f4
Fix LYS Whats Next actions (#52182)
* Fix LYS Whats Next Actions and Add Unit Tests

* Add changelog

* Fix marketing task and lint

* Fix tests
2024-10-23 08:33:03 +08:00
Gabriel Manussakis 88c2f97ba4
[Accessibility] Adjust color sales badge color contrast (#52080)
* Adjust color contrast of sales badge on TT1 theme

* Adjust color contrast of sales badge on TT4 theme

* Add changelog file
2024-10-22 15:09:31 +01:00
Luigi Teschio eea27c681d
Fix `Add To Cart form` layout in the post editor (#51662)
* fix Add To Cart form layout on post editor

* improve code

* fix conflict after merge

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-22 15:23:49 +02:00
Maikel Perez 8e2e666c17
CYS: remove GO_BACK_TO_HOME state (#52042)
* CYS: Remove GO_BACK_TO_HOME state from the Transitional screen

* Add changelog file

* Fix unit tests

* Redirect to the admin home page instead of the site home page
2024-10-22 10:05:05 -03:00
Mike Jolley 44fe60214a
Store API: Fix case sensitive coupon email validation (#52187)
* Force billing email lowercase in store API validation routine

* Changelog

* Update plugins/woocommerce/changelog/fix-50329-store-api-email-restrictions-case

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

---------

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
2024-10-22 13:17:05 +01:00
Gabriel Manussakis bc446587aa
[Accessibility] Associate the shipping calculator button to its form in Cart page (#52126)
* Associate shipping calculator button to its form in classic Cart

* Associate shipping calculator button to its form in block Cart

* Add changelog file

* Bump shipping-calculator template version
2024-10-22 13:03:47 +01:00
Manish Menaria e28b0aa9ea
Product Collection: Support registering product collection that isn't displayed in Collection Chooser (#52057)
* Filter product collection variations by 'block' scope

This commit updates the product collection feature to only show variations
with the 'block' scope in the collection chooser. To achieve this:

1. Added 'block' to the scope array for various product collection variations
   (best-sellers, featured, hand-picked, new arrivals, on-sale, related,
   top-rated, and upsells).
2. Modified the collection chooser logic to filter variations based on the
   'block' scope.

* Product Collection: Hide collection chooser toolbar for non-block scoped collections

This commit modifies the ToolbarControls component in the Product Collection block to conditionally render the CollectionChooserToolbar. The toolbar is now only displayed for collections with a scope that includes 'block'.

* Add scope property to product collections in E2E tests

This commit adds the 'scope' property to all registered product collections
in the E2E test plugin. The 'scope' is set to ['block'] for each collection.

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

* Rename isShowCollectionChooserToolbar to showCollectionChooserToolbar
for better readability.

* Add documentation and refactor for product collection scope

This commit introduces the following changes:

1. Update documentation to explain the `scope` argument for product collections
2. Refactor Collection Chooser and toolbar controls to handle default scope
3. Remove explicit `scope` from test collections to align with default behavior

* Add E2E tests for Product Collection scope argument

This commit adds E2E tests to verify the behavior of Product Collections
registered with different scopes. It includes:
- Tests for collections with 'inserter' and 'block' scopes
- Verification of visibility in Collection Chooser
- Checks for 'Choose collection' button visibility

* Generate manifest file

* Generate manifest file

* docs: Remove unsupported emojis from product collection documentation

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-22 14:02:32 +05:30
Ames Plant c5faf64bfa
[Accessibility] Add screen reader text to the gallery trigger link and update it to a… (#50493)
* Add screen reader text to the gallery trigger link and update it to a button

* Fix linting error for line too long

* Fix linting double arrow alignment

* Update version

* Linting spacing fix

* Add a mixin for the product gallery trigger

* Move product gallery trigger to mixin and add a cursor state

* Remove unnecessary mixin import

* Add focus style to gallery trigger on TT1 theme

* Update gallery trigger mixin

* Update product gallery trigger markup

* Update changelog text

---------

Co-authored-by: Gabriel Manussakis <gabrielmanussakis@gmail.com>
Co-authored-by: Gabriel Manussakis <9420947+Manussakis@users.noreply.github.com>
2024-10-22 10:17:04 +02:00
Manish Menaria 0d9d06cd46
Fix: Upsells collection not showing correct products on frontend (#51730)
* Fix: Upsells collection not showing correct products on frontend

This commit addresses an issue where the Upsells collection wasn't displaying the correct products on the frontend. The problem was caused by a variable name mismatch in the condition checking for empty product references.

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

* Rename product_references variable for consistency

* Update variable name

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
2024-10-22 12:56:06 +05:30
Manish Menaria e6d0a906fb
Product Collection: Hide preview label when specific product is selected (#52150)
* Hide preview label when a specific product is selected

This commit modifies the Product Collection block to hide the preview
label when a specific product is selected by the user. It addresses the
issue where the preview label was still showing even when a product
reference was available.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-22 12:54:16 +05:30
Alba Rincón 25cc4630be
Adapt receipt to take into account order status (#51853)
This PR adds a new Payment status field to the order receipts.

* Adapt receipt to take into account failed orders

* Add missing param

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

* Add a new section to show the order status

* Remove unused css

* Replace order status by payment status, possible values are only failed or success

* Change logic to use order failed instead of order paid
2024-10-21 15:38:16 -07:00
louwie17 cd3d957bec
Update/storybook commands to use wireit (#51701)
* Integrated wireit to storybook

* Attempt at integrating wireit

* Update wireit dependencies for storybook package

* Add changelog

* Remove unneeded --if-present and regex in pnpm command

* Remove unneeded dependency for storybook build command

* Add missing dependency in blocks storybook build script
2024-10-21 20:14:55 +00:00
Barry Hughes 92063b0817
Revert #51598 (#52166)
* Revert changes made to (HPOS) order editor meta box hooks (original change: PR#51598).

* Restore method param (was inadvertently stripped).

* Provide further explanation re types supplied via `add_meta_boxes`.

* Changelog.
2024-10-21 10:17:05 -07:00
Francesco aeade9d9ac
fix: dark theme support for "change address" cart button (#51878)
* fix: dark theme support for "change address" cart button

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-21 16:06:17 +01:00
Fernando Marichal 2a89e91b58
Product Collection: Add Cross-Sells collection (#52068)
* Add cross-sells

* Fix block title

* Rename product_reference

* Add unit tests

* Add changelog

* Fix lint
2024-10-21 11:25:27 -03:00
Maikel Perez 3c2180f296
[CYS - Core] Unit Test: Add test for the util function to install fonts on the JS side (#52172)
* Remove duplicated fonts.ts file

* Add unit tests to check the getFontFamiliesAndFontFaceToInstall function

* Add changelog file
2024-10-21 09:47:45 -03:00
Francesco 1686b2c14b
fix: ValidatedTextInput attribute (#51971)
* fix: ValidatedTextInput  attribute

* lint in muh belly

* TDD

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

* undo props change

* custom error message prop

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-21 11:00:11 +01:00
Mike Jolley a882acc7e3
Fix notices caused by legacy fee dynamic properties (#52063)
* Define legacy fee dynamic properties

* changelog
2024-10-21 09:20:05 +01:00
Herman 5b3289264f
Do not show product card footer for Business Services products (#52118)
* Do not show product card footer for Business Services products

* Add changefile(s) from automation for the following project(s): woocommerce, woocommerce/client/admin

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-21 08:48:35 +02:00
Jason Kytros 782a3c7508
Run `wc_update_950_add_brands_enabled_option` on WC 9.5 update (#52051)
* Run `wc_update_950_add_brands_enabled_option` on WC 9.5 update

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

* Update wc-update-functions.php

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-21 09:15:31 +03:00
Chi-Hsuan Huang 9c5e7beb71
Remove options to re-enable setup task list after completion (#52146)
* Remove re-eanble setup tasklist option

* Add changelog

* Remove re-eanble setup tasklist option from settings when setup task has previously completed

* Use is_complete check instead
2024-10-21 12:05:18 +08:00
Chi-Hsuan Huang ebc486103c
Prepare 2.5.0 Beta Tester Release (#52181)
* Update changelog.txt

* Bump version

* Update composer.lock
2024-10-21 11:47:18 +08:00
Chi-Hsuan Huang 04ce5182a0
Fix ExtendStore Task Not Marked as Completed Upon Navigating Back to Home (#52127)
* Invalidate the task list completion when a task is clicked

* Add changelog

* Fix test
2024-10-20 23:41:30 +00:00
Chi-Hsuan Huang b5501426b4
Add tool to reset "Launch your store" and coming soon mode changes (#52149)
* Add tool to reset "Launch your store" and coming soon mode changes

* Update docs

* Update docs

* Address PR feedback
2024-10-21 07:22:16 +08:00
Gabriel Manussakis 3c076b5187
[Accessibility] Improve checkout error messages (#49094)
* Improve required info for screen readers on checkout fields

* Add style to inline error message on checkout fields

* Add id attribute to terms error

* Improve accessibility of checkout errors messages

* Prevent screen readers from reading the asterisk on checkout fields

* Revert spacing change

* Revert spacing change

* Add changelog file

* Decrease line length

* Lowercase the required term

* Fix query methods in checkout tests

* Add space before required text for screen readers

* Fix query of shipping fields on legacy checkout tests

* Remove asterisk from field name on legacy checkout test

* Remove invalid character in Phone and Email fields on legacy checkout test

* Add asterisk to get phone and email by label on legacy checkout test

* Fix field labels for legacy checkout tests

* Fix php lint errors

* Add required tem to the Government ID input on tests

* Revert changes on required fields label

* Create checkout-inline-error-message mixin

* Replace SCSS variable with a CSS one

* Add checkout inline error message to T17

* Add checkout inline error message to T19

* Add checkout inline error message to TT

* Add checkout inline error message to TT1

* Add checkout inline error message to TT2

* Add checkout inline error message to TT3

* Include notice banner block in the notice selectors

* Add inline documentation to role attribute removal

---------

Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
2024-10-18 18:00:46 +02:00
Joshua T Flowers 67fb81095f
Cache block asset resource hints (#51874)
* Cache block asset resource hints

* Combine resource hints under single cache transient

* Add AssetController tests

* Add changelog entry

* Skip cache use in development mode

* Fix up lint errors

* Revert init method back to protected and ignore linting

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

---------

Co-authored-by: Mike Jolley <mike.jolley@me.com>
2024-10-18 07:37:08 -04:00
Albert Juhé Lluveras 7125986053
Add sizes attribute to Product gallery thumbnail images to better load the appropriate resolution (#52073)
* Add sizes attribute to Product gallery thumbnail images to better load the appropriate resolution

* Add changelog file
2024-10-18 10:56:46 +02:00
Manish Menaria b4605c75e5
Fix: Multiple issues related to MySQL having ANSI_QUOTES enabled in Product Filters (#51316)
* Fix: Use prepared statements for stock status filtering

This commit addresses an issue where the "Filter by stock" block fails when used with MySQL that has ANSI_QUOTES enabled. The problem was caused
by the use of double quotes in the SQL query.

Key changes:
1. Replace direct string concatenation with wpdb->prepare()
2. Use placeholders for stock status values in the IN clause
3. Validate stock statuses against known options before querying

This fix ensures compatibility with different MySQL configurations and improves
the overall security of the query by preventing SQL injection vulnerabilities.

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

* Fix lint errors

* Fix lint issue

* Fix: Use single quotes for attribute taxonomy names in SQL query

- Addresses issue with Filter by Attribute block failing with ANSI_QUOTES enabled
- Prevents "Unknown column" errors for attribute names in SQL queries

* Fix: Use single quotes for SQL IN clauses

This commit addresses an issue where the Filter by Stock block fails when
the database has ANSI_QUOTES enabled. The problem was caused by the use of
double quotes in SQL IN clauses, which are treated as identifiers when
ANSI_QUOTES is enabled.

The fix involves replacing double quotes with single quotes in the following files:
1. plugins/woocommerce/src/Blocks/QueryFilters.php
2. plugins/woocommerce/src/StoreApi/Utilities/ProductQuery.php

This change ensures compatibility with databases that have ANSI_QUOTES
enabled, while maintaining the existing functionality for other configurations.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-18 09:46:32 +05:30
Chi-Hsuan Huang 8ad73e6b11
Remove "banner" layout option from inbox note (#52088)
* Remove deprecated "banner" layout option

* Add changelog

* Remove banner layout from test and beta tester

* Add changelog

* Add changelog
2024-10-18 03:24:34 +00:00
Alba Rincón 9937242035
Add new email for notifying customers when an order fails (#51778)
* Add new email for notifying customers when an order fails

* Remove references to the order completed template and bump versions

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

* Fix lint

* Improve default subject and heading

* Remove the additional content message

* Update copy for both emails
2024-10-17 17:11:45 -07:00
Chi-Hsuan Huang c9ab2d67af
Update core profiler redirect to jetpack screen logic (#52095)
* Update core profiler redirect to jetpack screen logic

* Add changelog

* Only redirect when jetpack is selected
2024-10-18 05:34:12 +08:00
Chi-Hsuan Huang 9e83d0cd6a
Hide platform selector text cursor (#52093)
* Hide text cursor for platform selector

* Add changelog
2024-10-18 05:34:00 +08:00
github-actions[bot] 2f97ab7338
Delete changelog files based on PR 51735 (#52122)
Delete changelog files for 51735

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-10-17 09:33:41 -07:00
Veljko V. 6eb01a2e35
Update editor util method to make it compatible with Gutenberg new labeling Block Inserter (#52107)
* Update string for Block Inserter

* Add changelog

* Update util method and add comment
2024-10-17 17:10:59 +01:00
Mike Jolley 3c830d6f3f
Add/cart link in checkout header 44837 (#51948)
* Cart Link Block WIP

* Add pattern for header

* changelog

* We added a header so update test

* Add wc-blocks-header-pattern class

* render_woocommerce_template_part was missing wrappers

* Add missing class

* Update plugins/woocommerce/src/Blocks/BlockTypes/CartLink.php

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>

* Update plugins/woocommerce/src/Blocks/BlockTypes/CartLink.php

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>

* Update plugins/woocommerce/src/Blocks/BlockTypes/CartLink.php

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>

* Further SVG compression

* Remove unnecessary area handling

* Shared icon with mini cart

* Global style support

---------

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2024-10-17 16:50:12 +01:00
Albert Juhé Lluveras 9f26128dc2
Fix fatal when OrdersTableMetaQuery::generate_where_for_clause_value() didn't return a string (#52065) 2024-10-17 08:54:46 +02:00
Chi-Hsuan Huang 47db965730
Update makepot-audit include path: Replace 'client' with 'assets (#52096)
* Update composer.json to include 'assets' folder and exclude client in makepot-audit command

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-17 14:03:37 +08:00
Pascal Birchler 9689a80fa4
Prevent early translation loading (#52055) 2024-10-17 11:04:36 +07:00
Roy Ho bd838d824a
[Experimental] Product filters/remove template parts (#52041)
* Remove product filters template part

* Remove product filters overlay template part

* Update e2e tests

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

* Fix linting

* Remove unused template part class and remove overlay navigation

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-16 14:02:25 -07:00
RJ 660eeec5cd
fix: i18n shipping region settings placeholder text (#52016) 2024-10-16 20:53:19 +08:00
Chi-Hsuan Huang 0eb9f36746
Update the `.distignore` file to exclude the ./client/admin folder from zip (#52052)
* Update .distignore file to exclude ./client/admin folder from zip

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

* Update .distignore

* Exclude /client/admin/ folder from zip in .distignore

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-16 20:46:35 +08:00
Joshua T Flowers cdfcd94358
Limit loading product block editor to admin pages and rest requests (#51954)
* Limit loading product block editor to admin pages and rest requests

* Add changelog entry
2024-10-16 06:57:06 -04:00
Karol Manijak 40a9656f7b
Product Collection: Fix JS error when client-side nav is disabled (#52039)
* Prevent accessing unexisting context in Product Collection

* Add changelog

* Remove unnecessary OR

* Change the approach to cleaner one

* Improve the condition
2024-10-16 12:03:29 +02:00
Vladimir Reznichenko e148229edb
[dev] Monorepo: consolidate syncpack config, regroup react and testing deps around react version (#52022) 2024-10-16 09:55:36 +02:00
Ilyas Foo 3237def0ef
Fix products base incorrectly matching pages with the same prefix (#52028)
* Fix product base incorrectly flagging as store pages on pages with same prefix

* Changelog

* Remove unused code

* Lint

* Lint

* Slightly moved some codes, improved comments, added extensive examples
2024-10-16 12:30:54 +08:00
Ilyas Foo e49009b9a9
Fix core profiler extensions page from selecting activated plugins (#52029)
* Add check to disallow selecting activated plugins

* Changelog
2024-10-16 11:00:36 +08:00
Maikel Perez 63fdf72645
New Product Editor: For Grouped Products, the pricing fields are displaying even though they shouldn't (#51987)
* Disable pricing fields when the product type is grouped

* Add changelog file

* Fix php linter error
2024-10-15 09:42:04 -03:00
nigeljamesstevenson 68819839d2
Delete plugins/woocommerce/changelog/51912-fix-rest-api-fatal 2024-10-15 13:19:28 +01:00
Mayisha c5ada6a753
Create HPOS tables if they do not exist when enabling compatibility mode (#51973)
* create HPOS tables if do not exist when enabling compat mode

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

* remove undefined variable from log

* add newline

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-15 10:18:19 +02:00
Brian bca41d4c18
Check for empty value in get_order_id_by_order_key() (#40254)
* check for empty order key

* reverse flow

* Update class-wc-order-data-store-cpt.php

* tabs to spaces

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

* spaces to tabs

* fix lint issue - 477 | ERROR | Whitespace found at end of line

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

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-10-15 06:32:53 +00:00
Vladimir Reznichenko ebeefdd315
[dev] Monorepo: relax webpack TypeScript errors (turn into warnings) (#51993)
In this PR, we introduce and integrate a new webpack plugin, which hooks into `fork-ts-checker-webpack-plugin` and turns the specified TypeScript error codes into warnings to enable React 18 migration.
2024-10-15 08:21:56 +02:00
Sam Seay be85cd3dcb
Improve Twenty Twenty-Five theme compatibility for cart and checkout (#51725) 2024-10-15 16:47:20 +13:00
Luigi Teschio 0951f5fe1b
Fix `Error: Failed opening required '.../wp-content/plugins/woocommerce/src/StoreApi/Schemas/V1/AI/ProductsSchema.php` fatal error (#51912)
* Revert "CYS - Move the `private/patterns` endpoint to woocommerce admin API (#50400)"

This reverts commit 091141218e.

* Revert "CYS - Move the `ai/products` endpoint to woocommerce admin API (#50396)"

This reverts commit ae6f7837b2.

* fix endpoint

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

* fix e2e test

* add declare strict type declaration

* Add strict_types to Products route class file

* Remove old TODO comment

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2024-10-14 11:07:38 +02:00
Ames Plant 65efc7398f
[Accessibility] Announce to screen readers when the variations have been cleared (#50183)
Co-authored-by: amesplant <95257231+amesplant-dmv@users.noreply.github.com>
Co-authored-by: Darin Kotter <darin.kotter@gmail.com>
Co-authored-by: Gabriel Manussakis <gabrielmanussakis@gmail.com>
Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Gabriel Manussakis <9420947+Manussakis@users.noreply.github.com>
2024-10-14 14:58:14 +13:00
Sam Seay 12d9486d31
Checkout: validate empty cart state before placing an order. (#51810) 2024-10-14 14:05:35 +13:00
Tomek Wytrębowicz e0e68866a4
Fix Analytics Dashboard rendering for malformed preferences (#51947) 2024-10-11 19:08:09 +02:00
Ron Rennick a16f11ad6e
Merge React Admin (#49647)
* moved files

* changed paths

* changelogs

* added eslintignore for admin subfolder as it has its own eslint command

---------

Co-authored-by: rjchow <me@rjchow.com>
2024-10-11 11:31:11 +08:00
Daniel Mallory 6f73f67630
Update broken docs links (#51967)
* Update broken docs links.

* Add changelog
2024-10-10 17:37:27 +01:00
Ricardo Metring 0107d1edad
Add to Cart with Options: Add Stepper option (#48876)
* Add To Cart Form: Improve the default style and add the Stepper style

* fix height button when no variation is selected

* not allow the user to set 0 as value of the input

* format css

* fix padding

* format css

* fix CSS

* unset margin to align with the button

* Fix quantity stepper layout

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

* improve layout editor side

* remove not necessary changelog

* improve escaping

* fix webpack configuration

* add E2E tests

---------

Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-10-10 16:36:49 +02:00
And Finally 485f00f97b
Fix media queries for iOS Simulator in in-app marketplace (#51979)
* Replace `@media (width <= $breakpoint-medium)` queries with `@media screen and (max-width: $breakpoint-medium)`. iOS Simulator doesn't seem to support the previous query syntax.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-10 09:37:47 +01:00
Alfredo Sumaran 6a5a4f14d1
Improve HPOS checkbox description for better understanding (#51962)
* Improve HPOS checkbox description for better understanding

* Update description

* Add changelog entry
2024-10-09 10:08:05 -05:00
Vlad Olaru 1aeb7486d5
Update WooPayments Payments task install and/or activate behavior (#51956)
* Ignore payment gateway suggestion ID variation part

When searching for the current gateway ID we will ignore the
part after :.

* Use a connect link when no WCPay account connected

This allows us more control over where to direct the user.

* Use the individual payment gateway enablement flow for WCPay

* Add changelog

* Add changelog

* Fix lint errors

* Prevent recalling installAndActivate when autoinstalling

If we have installAndActivate as a dependency, when isRequesting becomes false
it will cause a second, needless installAndActivate call and we end up with two
snackbar notices about plugins being installed and/or activated.

* Replace deprecated Button props

* Make the plugins installed&activated notice message more informative

* Fix object check

* Add changelog

* Remove WooPayments task item fill and use standard task item

* refact: Separate get suggestion

* Provide WCPay task action from PHP

* Don't point directly to WCPay pages, use connect links instead

* Remove WCPay action URL logic from the main Payments task

If WooPayments is supported, the dedicated task will superseed
the default payments task. There is no need to have special action
URLs.

* Lint fixes

* Use a WCPay connect link to defer to the client logic

* Fix WCPay task link when incentive is available

* Lint fixes
2024-10-09 17:09:46 +03:00
Jonathan Lane 5110f71382
Update block checkout tests and product creation tests for WP 6.7 compatibility (#51965)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-10-09 07:17:47 +03:00
Adrian Moldovan cb77b90622
[e2e tests] Fix broken gloabal-teardown with WP 6.7-beta1 (#51958) 2024-10-08 19:21:26 +03:00
Joshua T Flowers ee9074c8a9
Cache block pattern data (#51802)
* Cache block pattern data to optimize pattern registration

* Add tests around block pattern registration

* Test cached block pattern registration

* Add tests around invalid cached data

* Remove unused mock package

* Add changelog entry

* Fix up linting issues

* Bump transient time up to one month
2024-10-07 22:33:57 -04:00
Naman Malhotra 9d2ab83b8a
New CFE flow (#51182)
* Create changelog during build step

* removed changelog generation during code freeze step

* lint fixes

* modified monorepo messaging

* Added changelog

* added workflow dispatch

* version override

* renamed file

* New CFE workflow (#51207)

* New CFE workflow

* added slack notifications

* lint fixes

* continue workflow only if the label is present

* Bump to github scripts v7

* Moved notification to core releases daily channel

* New CFE workflow notifications (#51466)

* New CFE workflow notifications

* added notification for woo release slack channel

* add woo core daily slack channel

* remove github debug

* change notification channel to Woo core releases

* New CFE workflow GitHub template (#51468)

* New CFE github template

* review changes

* review changes
2024-10-08 03:41:03 +07:00
Jonathan Lane 33f494673a
Implement WC reset during e2e setup on external environments (#51720)
* Re-implement changes from branch

* Add changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-10-07 22:18:52 +03:00
Jonathan Lane 82620000d4
Update locators for QIT compatibility (#51945) 2024-10-07 14:14:09 -05:00
Mike Jolley 6604e6bad2
Delayed Account Creation Test Coverage (#51852)
* Sample test

* Jest tests

* Fix spinner

* Add e2e test to check registration works

* Classes were renamed

* wc-block-order-confirmation--create-account-button remove double hyphen

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

* woocommerce-blocks-test-enable-experimental-features

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-07 11:12:37 +01:00
Roy Ho 701d9341dd
Skip flaky tests for now (#51889)
* Skip flaky tests for now

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-06 11:56:23 -05:00
Roy Ho 7542487156
Product Collection: Remove best selling filter option (#51865)
* Remove best selling filter option

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

* Add tiebreak fallback in case total_sales is 0 which prevents random order

* Remove test_merging_order_by_popularity_queries as it is not needed

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-06 11:53:27 -05:00
Michal Iwanow 72ab844855
Fix clearing search input in In-App Marketplace (#51916)
* Fix clearing search input in In-App Marketplace

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-06 10:13:56 -05:00
Narendra Sishodiya 37903778fb
Replace Congratulations view Buttons with Links (#51654)
* ../woocommerce-admin/client/customize-store/transitional/index.tsx

* Delete plugins/woocommerce/bin/composer/phpcs/composer.lock

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

* Delete plugins/woocommerce/bin/composer/phpunit/composer.lock

* Delete plugins/woocommerce/composer.lock

* Reverted the changes

* Reverted the changes

* Reverted the changes

* Reverted the changes

* Reverted the changes

* Reverted the changes

* Reverted the changes

* Implemented Suggested Changes

* Implemented Suggested Changes

* IMplemented the Suggestions

* Removed navigateOrParent as it is not needed.

* Updated test case in  index.test.tsx

* Revert the change

* Implemented suggestions

* Update transitional.spec.js

* Update transitional.spec.js

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
Co-authored-by: root <root@LAPTOP-I3Q9TGEL>
2024-10-04 17:10:24 +02:00
Néstor Soriano cbf98a0912
Add the Cost of Goods Sold related code and REST APIs for the product class (#51675)
* Fix a bug in FeaturesController.

The UI for a non-legacy feature was showing up greyed out
("UI disabled") when the setting that controls the feature
was off ("feature disabled").

* Add the CostOfGoodsSoldController class.

* Add COGS related properties/methods to the product and variation classes.
Also update the data stores appropriately.

COGS values will be stored in a "_cogs_total_value" product meta key,
but only when the value is not zero.

For variations, a flag indicating if the COGS value overrides
the parent value will be stored in a "_cogs_value_overrides_parent"
product meta key, but only when the value is true (stored as "yes").

* Add filters to customize the COGS related data as it gets loaded or saved.

* Add COGS related functionality to the REST API
(get/create/modify products and variations endpoints).
2024-10-04 11:57:52 +02:00
Néstor Soriano ddfa425062
Modify product import file check to use the WP filesystem API (#51540)
* Modify product import file check to use the WP filesystem API.

Otherwise it doesn't work on environments that don't have
a direct filesystem like e.g. WordPress VIP.

* Add the FilesystemUtil::get_wp_filesystem_method_or_direct method
2024-10-04 08:50:54 +02:00
Roy Ho 7c48112d4a
Fix product collection flaky sales filter option (#51897)
* Fix product collection flaky sales filter option

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-03 17:10:45 -07:00
Amin Abdolrezapoor ee4f1aad3d
Fix wrong type passed to `add_meta_boxes` action (#51598)
* Fix wrong type passed to `add_meta_boxes` action

* revert changed parameter of `do_meta_boxes` to `WP_Post` object

* Add `woocommerce_order_editor_add_meta_boxes` in order editor

* Move changelog entry to correct directory
2024-10-03 09:53:46 -07:00
Boro Sitnikovski d3765b43c0
Add BFCM promo (#51739)
* Populate `window.wcMarketplace` for Marketing > Coupons

* TEST CODE: Add promotions dummy data to the endpoint for now

See [this comment](https://github.com/Automattic/woocommerce.com/issues/21783#issuecomment-2376471712) as to how we plan to manage this through WCCOM

* Initial implementation of the `<PromoCard>` component

This commit does the following:

- Implement the `PromoCard` component
- Refactor the existing `Promotions` component
    - Extract types
    - Add support for conditional rendering based on `pathname`
    - Accept optional parameter `promoCardOnly`
- Renders `PromoCard` wherever needed, as requested in the project thread.

Some remaining TODOs:

1. Dismiss functionality
2. Tracking
3. Figma design adjustments
    - CSS styling (Flexbox in Marketplace, etc.)
    - Percent image, wherever needed
    - Background image
4. BWC testing (e.g. ensuring that "Get more for your money" banner still works)

* Make sure that WCCOM also returns path so that earlier versions of in-app marketplace don't break (path undefined error)

* Update T&C link

After https://github.com/Automattic/woocommerce.com/issues/21840

* Implement promo banner dismissal logic and tracks

* Styling the WooCommerce > Extensions version of the promo component.

- Tweaked data on `class-wc-admin-assets.php` to pass `style` and `icon` attributes for that promo.
- Moved promo on this page from the marketplace `Header` component to the `Content`, above the Sales Banner notices.
- Deleted `percent.svg` and moved its content into a React component.
- CSS tweaks for this style of promo.
- Changes to elements of `PromoCard` component to allow the layout for this style.

* Fixed some TypeScript issues.

- Added guard condition in case `promotion.id` is undefined.
- Returning null if it isn't - but below `useState` hook, so we conform to rules of hooks.
- Setting default value for `promotion.cta_label` to satisfy TypeScript, which expects a node.

Style tweaks to `.promo-cta`. Vertical centering of text, hover colour, margins.

* Remove unnecessary unique identifier for each promo, and use a smarter way (URIs) to gather the visibility data

* Lint

* Revert test code

* Changelog

* Better code comments

* Changed `promoCardOnly` attribute of `Promotions` to `format`, to allow for more types in future.

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

Co-authored-by: Boro Sitnikovski <buritomath@gmail.com>

* Styling promo cards at different breakpoints.
Moved homescreen promo to after store management links.

* Added condition to merge array of promos with the main `$promotions` array.

* Added `useEffect` so we only record Track event for view of promotion once.
Changed Tracks prefix to the shorter `marketplace_promo_`.

* Added Tracks events for both formats of promotions, `promo-card`, and the original `notice`.

* Merging two style blocks.

* Passing `format` to `recordEvent` instead of hard-coding it.

* Addressing linter errors.

* Moved operation merging promos into the main array into a separate method for greater clarity.

* Moved Promotions component on WooCommerce > Home to below task list.

* Styling tweaks.
Increased schedule of `woocommerce_marketplace_cron_fetch_promotions` cron job to twice daily.
Added guard conditions in `Promotions` in case `window.wcMarketplace.promotions` isn't defined or isn't an array.

* Reduced SVG size to 72px.

* Fixing linter error.

* Style tweaks. Using WP components colour vars for CTA and dismiss links.

* Fixing linter error.

* Reverting change to `schedule_cron_event`, as this method will not be present if only this branch is cherry-picked.

---------

Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2024-10-03 15:36:06 +01:00
Adrian Moldovan 2276fded32
[ci-jobs] Add support for beta and RC WordPress versions (#51814) 2024-10-03 11:28:47 +03:00
Karol Manijak 7d9dc8b08d
Remove Product Collection wrapping div (#51733)
* Remove Product Collection wrpping div

* Add changelog

---------

Co-authored-by: Christopher Allford <6451942+ObliviousHarmony@users.noreply.github.com>
2024-10-03 08:05:04 +02:00
Ivan Stojadinov 24a2e43bd4
[e2e] External - Consolidate `playwright.config.js` for WPCOM (#51857)
* Merge all listed /merchant files

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-02 23:15:28 +02:00
Alba Rincón 5c57da5e82
Add a retry mechanism to obtain the lock for inserting products through the API (#51735)
* Add a retry mechanism to the query to obtain the lock for inserting products in the API

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

* Log errors after failed attempts and delay 10ms for each attempt

* Fix lint

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-02 09:06:40 -07:00
Albert Juhé Lluveras ecfafb50b6
Add Products by Brand template label (#51846)
* Add Products by Brand user-friendly title to the New template popup

* Add changelog file

* Update WC_Brands class version
2024-10-02 16:24:45 +02:00
Maikel Perez 4d7d049477
CYS: Investigate multiple requests being made to the patterns endpoint (#51819)
* Notify wc/admin/options store changes after the data is saved in the server and not before

* Add changelog file

* Remove the subscription to the OPTIONS_STORE_NAME since its trigered many times, using useSelect instead

* Add changelog file
2024-10-02 11:08:49 -03:00
github-actions[bot] 9be9fd9707
Delete changelog files based on PR 51664 (#51850)
Delete changelog files for 51664

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-10-02 06:44:59 -07:00
Roy Ho 31c675f93d
Add order by sales filter option to product collection (#51790)
* Add order by sales filter option to product collection

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-02 06:16:16 -07:00
Nathan Silveira 682f3fbe76
Add Notice generic block for the new product editor (#51740)
* Add Notice generic block for the new product editor

* Create reusable block for Notices

* Add changelog

* Fix wrong generic type
2024-10-02 10:10:57 -03:00
Tung Du f50620039e
Fix: React error in filter blocks due to duplicated renders (#51840) 2024-10-02 19:20:10 +07:00
Roy Ho 64df8a22c5
Replace __experimentalGetGlobalBlocksByName with stable getBlocksByName (#51773)
* Replace __experimentalGetGlobalBlocksByName with stable getBlocksByName

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-02 05:19:42 -07:00