Commit Graph

22300 Commits

Author SHA1 Message Date
Paul Sealock 5ba9d8027d
[Settings] Add layout areas and styles (#52501) 2024-11-07 10:47:44 +13:00
Luigi Teschio ed4670243b
Add To Cart With Options - Stepper layout: implement feature under feature flag (#52573)
* Add To Cart With Options - Stepper layout: implement feature under feature flag

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

* fix E2E tests

* fix E2E test

* fix E2E test

* use setFeatureFlag across e2e test suite

* use the right feature flag

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-11-06 20:56:13 +01:00
Albert Juhé Lluveras 94d6c7a9ec
CYS: stop using __experimental_get_template_for_link() function (#52623)
* Remove unnecessary React Fragments

* CYS: Migrate from __experimentalGetTemplateForLink() to getDefaultTemplateId()

* Add changelog file

* Remove changes that cleaned up AI flow logic

* Linting
2024-11-06 18:57:14 +01:00
Karol Manijak ca7fe4e576
Patterns: Remove "Product Hero 2 Column 2 Row" from Patterns Dictionary (#52624)
* Remove broken pattern from PatternsDictionanry

* Add changelog
2024-11-06 18:07:27 +01:00
Mike Jolley 7eabbe4ecd
Consistent payment and shipping options empty states (#52192)
* Remove inspector notice

* Replace placeholder with generic version

* Implement new placeholder

* Fix shipping method count so it excludes rows which do not link to installed payment method

* changelog

* Set default so tests pass

* unused vars

* unused import

* Remove return type and fix import warnings
2024-11-06 12:50:50 +00:00
Mike Jolley 71f28210f6
Cart Block: Refactor shipping totals. Separate cart and checkout logic. More clearly distinguish between Collection and Delivery (#52546)
* Refactor shipping totals section

From https://github.com/woocommerce/woocommerce/pull/52313/files

* style

* changelog

* More specific imports
2024-11-06 12:29:15 +00:00
Adrian Moldovan 08dbc3b7de
[e2e tests] Remove check for http reponse when visiting the editor (#52577) 2024-11-06 11:22:18 +00:00
Damián Suárez a1af0608b7
Fix visual issue in the Display Style of the Product Categories List block (#52609)
* export ProductCategoriesEdit default component

* disable importing experimental TS warnings

* set ToggleGroupControl instance like a block

* changelog
2024-11-06 09:25:30 +00:00
Corey McKrill de369bd09d
Add card last 4 to order totals payment method row (#52474)
* Add card last 4 to order totals payment method row

* Add changelog file

* Only append when last4 actually contains a string

---------

Co-authored-by: Alba Rincón <albarin@users.noreply.github.com>
2024-11-06 09:29:22 +01:00
Albert Juhé Lluveras b887f9b51e
Update CYS class names to avoid conflicts with future updates of Gutenberg or WordPress (#52426)
* Create files with Gutenberg CSS code

* Prefix .edit-site class names with .woocommerce

* Add changelog file

* Fixes and linting

* Minor CSS fixes after merging Gutenberg stylesheets
2024-11-06 08:55:58 +01:00
Sam Seay fb7dfa2792
[Experimental] Allow disabling product descriptions in the order summary. (#52503) 2024-11-06 17:47:54 +13:00
Tung Du 4223bf28d8
[Experimental] Remove filter overlay blocks (#52599) 2024-11-06 11:32:33 +07:00
Tung Du 7c7895ade9
[Experimental] Rating filter: fix block focus and visibility (#52579) 2024-11-06 10:53:39 +07:00
Chi-Hsuan Huang f55759b892
Optimize `test_import_sample_products` unit test performance (#52523)
* Enhance onboarding tasks tests with fake image

* Remove @runTestsInSeparateProcesses

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

* Add doc

* Fix tests

* Remove echo

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-11-06 09:02:20 +08:00
Adrian Moldovan dbcd5f826e
[e2e tests] Update locator for block's font weight combobox - fix mini-cart tests for WP6.7 (#52581) 2024-11-06 00:29:21 +00:00
Alba Rincón a39445d691
Show the payment method as text if there's no `brand` or `last4` digits are present (#52578)
* Show the payment method as text if there's no brand or last4 digits

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-11-05 16:08:47 -08:00
Moon 58a59a04b9
Remove legacy coupon note (#52475)
* Remove CouponPageMoved note

* Stop displaying the legacy coupon menu for the newer versions

* Revert back should_display_legacy_menu logic change -- no need as we are not displaying the menu anymore

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-11-05 11:09:11 -08:00
And Finally 94c03c22c9
Run promotions WP Cron event twice daily (#51950)
* Changed cron event schedule to twice daily for greater freshness.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Herman <KokkieH@users.noreply.github.com>
2024-11-05 17:33:27 +00:00
Paulo Arromba 7fa8a8a5f0
Added wc_sanitize_phone_number() to remove invalid characters. (#52476)
* Added wc_sanitize_phone_number() to remove invalid characters.

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

* Added wc_sanitize_phone_number() to remove invalid characters.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-11-05 16:49:04 +00:00
Damián Suárez 6d74a1576f
[Experimental] Price Slider block: add colors panel (#52507)
* add color block attributes

* add constant to define the color attributes

* centralize Color type

* define color types

* use UpperCase for Edit component

* render colors panel. save color values in attrs

* add a doc about colors validation

* save CSS vars and classes in the block markup

* pick and apply colors to the styles

* update markup with block colors

* firx eslint issue

* changelog

* reset all colors properly

* 80 cols

* set Color type peroperties like optional

* apply color to slider background
2024-11-05 10:49:42 +00:00
Luigi Teschio 7ee8864a33
Add to Cart Form - Stepper Layout: Ensure Compliance with min, max, and step HTML Attributes (#52487)
* Add to Cart Form: Ensure Compliance with min, max, and step HTML Attributes

* add comment

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

* improve fallback value

* remove only

* add aria-label

* remove extra space

* Update plugins/woocommerce/changelog/52487-fix-add-to-cart-form-interactivity-api

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

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

* improve variable naming

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

* Merge branch 'trunk' of github.com:woocommerce/woocommerce into fix/add-to-cart-form-interactivity-api

* improve code style

* improve E2E tests

* improve fallback value

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2024-11-05 10:03:01 +01:00
Chi-Hsuan Huang 6dceb37611
Fix core profiler dropdown not closing when the arrow down icon is clicked (#52526)
* Disable pointer events for active select controls to allow dropdown closure by clicking the component

* Add changelog
2024-11-05 16:25:35 +08:00
Luigi Teschio b15b04620a
Add To Cart Form - Stepper Layout: remove flex (#52481)
* Add To Cart Form - Stepper Layout: remove flex

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-11-05 09:06:23 +01:00
Adrian Moldovan 85489b84d3
[e2e tests] Remove iterations for "Color palette should be applied" test (#52544) 2024-11-05 08:34:47 +01:00
Manish Menaria 21934d471b
Fix: Product collection inspector control showing empty section (#52543)
* Fix: Product collection inspector control showing empty section

Previously, the inspector controls were always rendering a PanelBody element even
when the collection type wasn't hand-picked, resulting in an empty section being
displayed. This change moves the PanelBody inside the conditional rendering so
it only appears when hand-picked products are being used.

Also adds missing placeholder text to the Hand-Picked products control to improve
user experience.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-11-05 12:59:17 +05:30
Wesley Rosa a5b95bacf1
Using order status constants in unit tests (#51920)
* Introducing order status constants

* Replacing static calls

* Using order status constants in unit tests

* Additional comment blocks

* Updating PHP docs

* Updating PHP docs

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

* Fix lint issues

* Fix lint issues

* Fix lint issues

* Removing unnecessary order statuses group constants + more documentation

* Including the 'new' status (legacy)

* Merge branch 'dev/introducing-order-status-constants' of https://github.com/woocommerce/woocommerce into dev/introducing-order-status-constants

* Moving statuses to a new enum class

* Fix CS issues

* Fix lint issues

* Minor doc improvement

* Changing namespace to make it less granular

* Adding missing documentation for existing filters

* Update plugins/woocommerce/src/Enums/OrderStatus.php

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

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

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

* Update plugins/woocommerce/src/Enums/OrderStatus.php

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

* Making the order status class final

* Adding missing filter comments

* Moving conditional filter back to if statement

* Merge branch 'dev/introducing-order-status-constants' of https://github.com/woocommerce/woocommerce into dev/introducing-order-status-constants

* Adding 'since' annotation to fix lint errors

* Adding 'since' annotation to fix lint errors

* Updating implementation with base branch

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

* Replacing full namespace with class import

* Fix classes still using the old constant format

* Revert use of draft order status

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
Co-authored-by: Vladimir Reznichenko <kalessil@gmail.com>
2024-11-05 08:23:12 +01:00
Chi-Hsuan Huang 4c03ba8b60
Add coming soon newsletter feature flag (#52529)
* Add coming soon newsletter feature flag

* Add changelog

* Rename feature flag -> coming-soon-newsletter-template
2024-11-05 05:37:00 +00:00
Tung Du 22070a79ed
[Experimental] Expose filter params through block context (#52492) 2024-11-05 10:35:54 +07:00
RJ cb0d1b5020
fix: added noreferrer to printful link (#52524) 2024-11-05 11:13:20 +08:00
github-actions[bot] 243dde4e8a
Delete changelog files based on PR 52557 (#52563)
Delete changelog files for 52557

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-11-04 17:06:54 -08:00
Damián Suárez ed2f002f42
Remove duplicate TS definition for currency code (#52545)
* remove duplicate TS definition for currency code

* changelog
2024-11-04 16:59:10 -08:00
Barry Hughes d843637ce0
Do not listen to changes made through the Options API before init. (#52557)
* Do not listen to changes made through the Options API before init.

This specifically relates to the Features Controller, which currently loads a list of feature definitions (and that involves translating strings, which is not recommended before init). Since we do not expect features to be enabled/disabled this early, this should be a reasonable adjustment.

* Update plugins/woocommerce/src/Internal/Features/FeaturesController.php

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-11-04 16:51:45 -08:00
Emmanuel Ferdman e22c5baf8a
Update broken links (#52495)
* Update broken links

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* Update broken links

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* fix markdown errors

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* add changelog

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* Add manifest file

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

---------

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2024-11-04 21:59:50 +00:00
github-actions[bot] 9b4f3a1eb3
Delete changelog files based on PR 52431 (#52542)
Delete changelog files for 52431

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2024-11-04 12:07:46 -08:00
Damián Suárez 5238d13632
Fix typo in useSetWraperVisibility function name (#52115)
* fix type in useSetWraperVisibility function name

* changelog
2024-11-04 19:21:34 +00:00
github-actions[bot] 8716143a77
Delete changelog files based on PR 52432 (#52539)
Delete changelog files for 52432

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-11-04 10:36:10 -08:00
Karol Manijak f5d9b3adaa
Hide AbstractProductGrid blocks from inserter (soft-deprecation) (#52209)
* Hide product grid blocks from inserter

* Expose collections in the inserter

* Arrange collections imports alphabetically and registering by usage

* Add new keywords to collections

* Update tests

* Update block references

* Add changelog

* Update docs manifest

* Fix typo in collection name in test

* MAke adjsutments and cleanup of collections keywords

* Add one more keyword

* Hide Related Products from inserter

* Replace legacy Related Products with collection when transforming classic template into block one

* Replace legacy Related Products with collection in blockified Single Product Template

* Update block references and doc manifest

* Update block references

* Update tests to reflect new collection names

* Bring back pnpm-lock to original state

* Update Related Products E2E tests

* Fix the last Related Products test

* Add default queryId to Related Products pattern

* Regenerate block references and docs manifest
2024-11-04 18:57:51 +01:00
Karol Manijak a38a2052cb
[WordPress 6.7] Fix image aspect ratio in product grid blocks (#52431)
* Override user agent styling in Chrome

* Add changelog

* Change the approach

* Change the approach one more time
2024-11-04 11:38:46 +01:00
Damián Suárez be21e4ce21
Add color helpers for the Product Filters block (#52506)
* move utils.ts to utils/index.ts

* introduce color utils

* changelog

* update changelog desc
2024-11-02 10:48:13 +00:00
Thomas Roberts 32f3e08657
If local pickup text is not set, save an empty string to allow fallback to work (#51580) 2024-11-01 21:32:52 +00:00
Roy Ho 877342cd6d
[Experimental] Product filters/active block new structure (#52268)
* Update product filters active block to new structure

* Build active chips items

* Add changelog

* Remove unneeded line-height

* Fix linting

* Fix e2e tests

* Refactor removeText

* Clean up

* Add clear button even without group

* Fix stock status name in e2e test

* Remove heading block

* Remove unused i18n module

* Remove period

* Add clear button variation description

* Fix typo

* Rename active chips to removable chips

* Extract data items from removable chips to make it reusable

* Fix e2e tests

* Add frontend script loading to null

* Don't render the block if no active filters

* Disable clear button by default

* Clean up

* Hide with iAPI

* Fix linting and e2e

* fix: add hidden tag serverside

---------

Co-authored-by: Tung Du <dinhtungdu@gmail.com>
2024-11-01 05:44:46 -07:00
Karol Manijak 2d836d8088
Update E2E tests to work with WP 6.7 RC2 (#52447)
* Use WP 6.7 RC2 for Blocks env

* Update edited template heading selector

* Change selector in revertTemplate util due to issue in GB (WP 6.7)

* Update edited template heading selector in another suite

* Use page instead of editor.canvas to access components-popover

* Add changelog

* Update editor heading selector

* Update editor heading selector
2024-11-01 11:58:24 +01:00
Damián Suárez c0ae9b4a29
Rating Filter: first iteration of Minimum Rating feature (#52484)
* clean obsolete atttribute types

* check properly when showing no product Notice

* add new minRating attribute

* add first implementation of Minimum Rating panel

* introduce setCountVisibility internal helper

* add title to stars label

* rename vars. Simplify getting ratings data

* simplify checking rating_counts prop

* clean jsdoc block

* simpligy creating ratingOptions collection

* sort() > reverse()

* filter rating by minimum rating attr

* tidy process to render rating options

* changelog

* use Flex to layout the labels

* fix changelog typo

* import type explicitely
2024-11-01 10:45:07 +00:00
Adrian Moldovan b10c4d0988
[e2e tests] Remove update-woocommerce spec (#52493) 2024-11-01 12:35:15 +02:00
Mik 4b4e16454c
Track first and last 20 orders to Weekly Tracker Snapshot (#52074)
* Fetch order snapshot for HPOS

* Fetch order snapshot for legacy order storage

* Include snapshot generation time

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

* Fix linter error

* Add unit test for order snapshot data

* Add unit test for snapshot generation time

* Fix phpcs error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-11-01 08:09:10 +00:00
Tung Du 8bd4f9ea34
Experimental: Product Filters Overlay overhaul (#52279) 2024-11-01 12:16:59 +07:00
Paul Sealock 148e3b9295
[Settings] Add JSON object to power React view (#52472) 2024-11-01 17:32:22 +13:00
Chi-Hsuan Huang 59c323655c
Optimize Coming Soon badge performance with early exits (#52477)
* Optimize Coming Soon badge performance with early exits

Improves performance by preventing unnecessary code execution for non-admin users:
- Add early exit in setup_hooks() for non-admin users
- Move hook registration to init to ensure WordPress is loaded
- Prevent badge-related actions from being registered for non-privileged users

This change reduces unnecessary code execution and improves overall
performance by isolating the Coming Soon badge functionality to only
run for authenticated admin users.

* Add changelog

* Fix permission check
2024-11-01 11:48:07 +08:00
Sam Seay a24502fe23
Add separator to "Place order" button and use the block style variations API (#52017) 2024-11-01 05:49:23 +13:00
Sam Seay 601e14a253
Checkout: Collapsible Order Summary in mobile view (#52253) 2024-11-01 05:48:54 +13:00
Wesley Rosa f6ee6de76c
Introducing order status constants (#51919)
* Introducing order status constants

* Replacing static calls

* Additional comment blocks

* Updating PHP docs

* Updating PHP docs

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

* Fix lint issues

* Fix lint issues

* Fix lint issues

* Removing unnecessary order statuses group constants + more documentation

* Including the 'new' status (legacy)

* Merge branch 'dev/introducing-order-status-constants' of https://github.com/woocommerce/woocommerce into dev/introducing-order-status-constants

* Moving statuses to a new enum class

* Fix CS issues

* Fix lint issues

* Minor doc improvement

* Changing namespace to make it less granular

* Adding missing documentation for existing filters

* Update plugins/woocommerce/src/Enums/OrderStatus.php

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

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

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

* Update plugins/woocommerce/src/Enums/OrderStatus.php

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>

* Making the order status class final

* Adding missing filter comments

* Moving conditional filter back to if statement

* Merge branch 'dev/introducing-order-status-constants' of https://github.com/woocommerce/woocommerce into dev/introducing-order-status-constants

* Adding 'since' annotation to fix lint errors

* Adding 'since' annotation to fix lint errors

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
Co-authored-by: Vladimir Reznichenko <kalessil@gmail.com>
2024-10-31 13:57:47 +01:00
Manish Menaria 928d523a35
Product Collection: Add "Rating, low to high" and "Rating, high to low" sorting options (#52372)
* Product Collection: Add "Rating, low to high" and "Rating, high to low" sorting options

This commit adds a new sorting option to the Product Collection block that allows
sorting products by rating from low to high. The existing "Top Rated" option has
also been renamed to "Rating, high to low" for consistency.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-31 17:49:27 +05:30
Damián Suárez 90b8770257
Introduce file to define Product Collection types. Improve types handling. (#52458)
* introduce file to define collection data types

* do not define `results` always like an array

* update passing types to useCollection intances

* allow to set the useCollectionData response type

* reuse RatingValues type

* tidy collection types in status filter

* clean types defined in type-defs pck

* change changelog type

* update attribute filter

* move Collection Data types to product-collection folder

* update WCStoreV1ProductsCollectionProps path

* improve defining the results type for the collection

* update path to import product collection types

* fix path to import RatingValues type
2024-10-31 09:30:40 +00:00
louwie17 ebb300c1e7
Fix storybook wireit commands conflict (#52438)
* Update storybook wireit commands to avoid project wildcard

* Update regex for storybook build command

* Add changelog
2024-10-31 06:12:51 -03:00
Damián Suárez fa6eec988b
[Experimental] Rating Filter: clean code about dropdown mode (#52451)
* remove dropdown mode from InspectorControls

* clean dropdown code from Edit component

* clean block attributes and types

* changelog

* remove unused imported components

* remove unused PreviewDropdown component
2024-10-31 08:04:38 +00:00
Oliver Juhas 21c5a3d806
Adding `$default_path` parameter to `woocommerce_locate_template` filter (#52169)
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
2024-10-31 08:59:18 +01:00
Damián Suárez 20d210421d
Rating Filter: introduce RatingStars component (#52468)
* introduce RatingStars component

* changelog

* remove aweful inline style

* set gap zero
2024-10-31 07:33:44 +00:00
Chi-Hsuan Huang 0963fa5738
Fix JS translations broken when plugin folder name is not "woocommece" (#52448)
* Fix plugin domain handling in Translations class

* Remove unused import

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

* Fix translations

* Fix plugin file path

* Add changelog

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-31 10:01:45 +08:00
github-actions[bot] f9c8f8efdf
Delete changelog files based on PR 51739 (#52034)
Delete changelog files for 51739

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-10-30 16:31:38 -07:00
github-actions[bot] c9738ff207
Delete changelog files based on PR 51499 (#52036)
Delete changelog files for 51499

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-10-30 16:31:24 -07:00
github-actions[bot] 4c311261de
Delete changelog files based on PR 52405 (#52471)
Delete changelog files for 52405

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-10-30 16:26:12 -07:00
Dmytro 11188e7827
Adding Facebook extension recommendation. (#52405)
* Adding Facebook extension recommendation.

* Adding 'built by woocommerce' tag.

* Adding changelog file.

* Update plugins/woocommerce/src/Admin/Features/MarketingRecommendations/DefaultMarketingRecommendations.php

Removing 'built by WooCommerce' tag

Co-authored-by: Justin P <228780+layoutd@users.noreply.github.com>

---------

Co-authored-by: Dima <9010963+message-dimke@users.noreply.github.com>
Co-authored-by: Justin P <228780+layoutd@users.noreply.github.com>
2024-10-30 15:09:24 -07:00
Ján Mikláš 0e4d4c676e
Update email preview to show processing order email (#52415)
* Move email preview rendering into separate class

* Allow setting WC_Email $object

This is needed so in an email preview, we can set order to be rendered in an email

* Render "Processing order" with dummy order in email preview

* Always show shipping address in email preview

* Allow fetching dummy email preview product

* Add changelog

* Add unit test for EmailPreview

* Clean up filters after rendering email preview

* Improve duplicate filter comment

* Replace __return_true with a function to prevent accidental filter removal
2024-10-30 19:48:21 +03:00
Alba Rincón c8beb771f1
Add support for `email` query parameter in `OrderActionsRestController` (#52454)
Co-authored-by: github-actions <github-actions@github.com>
2024-10-30 17:31:44 +01:00
Alba Rincón 5078b45da2
Fix empty last4 rendering (#52399)
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
2024-10-30 17:13:16 +01:00
Mike Jolley e35c326b8c
Cart Block: Reduce prop drilling in shipping calculator by introducing context (#52380)
* Avoiding shipping calculator prop drilling with context

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

* useCallback for update functions

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-30 13:06:07 +00:00
Manish Menaria ac9dbb2a2f
Fix: Product Collection block inside Single Product block was not rendering correctly on frontend. (#52299)
* Fix Product Collection rendering inside Single Product block

This commit addresses issue #51352 where the Product Collection block
inside a Single Product block was not rendering correctly on the frontend.
Specifically, the first product in the collection was being replaced by
the product selected in the parent Single Product block.

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

* Fix issue for core/post-template block too

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-30 17:43:54 +05:30
Mike Jolley c218a82b14
Delayed account creation: Prevent duplicate after saving content (#52456)
* Register block hooks on the PHP side

* changelog

* substitute name

* indenting
2024-10-30 12:08:51 +00:00
Karol Manijak 1f03f64e4e
[WordPress 6.7] Make sure Product Image Gallery renders placeholder in Editor (#52432)
* Render placeholder of Product Image Gallery every time

* Add changelog

* Fix lint
2024-10-30 11:22:39 +01:00
Manish Menaria 4b66e42e18
Product Collection: Add "Random" sorting option (#52322)
* Add random sorting option to Product Collection block

This commit introduces a new 'Random' sorting option to the Product Collection block. The changes include:
1. Adding a new option for random sorting in the frontend UI (order-by-control.tsx).
2. Updating the backend to support the new random sorting option (ProductCollection.php).

These changes allow users to display products in a random order, enhancing the flexibility of product presentations in WooCommerce stores.

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

* Add PHP unit tests for random sorting option

* Remove "asc" suffix from random sorting option

The "asc/desc" order is not needed for random sorting. This commit:
- Changes `random/asc` to just `random` in sorting options
- Updates code to handle sorting options without order suffix
- Adds fallback to 'asc' order when no order is specified

* Fix: "order" shouldn't be present in REST API params

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-30 15:11:21 +05:30
Tung Du 5936da3b79
[Experimental] Attribute Filter: Respect Show Empty settings (#52208) 2024-10-30 12:41:45 +07:00
Chi-Hsuan Huang c4fa094d1b
Enhance remote logging data privacy (#52321)
* Refactor RemoteLogger to improve backtrace handling and sanitize sensitive data

* Add changelog

* Fix remote logger

* Refactor RemoteLoggerTest to improve error handling and sanitize sensitive data

* Address PR feedback

- Add a filter so that we can add more arbitrary sanitisation
- Update phone number sanitisation
- Add credit card sanitisation

Fix remote logger

* Fix lint

* Fix sanitize file path in error context

* Redact API keys

* Fix tests
2024-10-30 10:35:24 +08:00
Paulo Arromba 378172a63f
Renamed Local Pickup options on mock data. (#51716)
* Removed Los Angeles local pickup option from mock data.

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

* Updated js test

* Reverted js test

* Updated mockup pickup locations

* Updated mockup pickup locations

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-30 01:12:54 +00:00
Paul Sealock 5d1a7499ce
[Settings] Add fresh page, script, and package (#52391) 2024-10-30 14:05:13 +13:00
Néstor Soriano 9ac48232a9
Add the Cost of Goods Sold related code and REST APIs for the orders and order items (#52067)
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2024-10-29 17:22:21 +01:00
Corey McKrill c9ad98c952
Orders: Add method for obtaining payment info for use in emails and printed receipts (#52173) 2024-10-29 16:34:14 +01:00
Alex Florisca 8fa2797a6f
Check for valid session object before calling get_customer_id in Cart Route (#52410)
* Check for valid session object before calling get_customer_id in Cart Route

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

* Harden get_cart_token function to make sure the cart is loaded before we access the session

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-29 14:54:26 +00:00
Joshua T Flowers 8716d97996
Lower opacity for payments section to work across light and dark backgrounds (#52241)
* Lower opacity for payments section to work across light and dark backgrounds

* Add changelog entry
2024-10-29 10:03:04 -04:00
Mike Jolley e5ca2eb011
Checkout: Add loading placeholder and payment method toggle (#52044)
* Create loading state for payment methods on block checkout

* Tidy and type fix checkPaymentMethodsCanPay

* Disable place order button before payments are Initialized

* Toggle and loading state

* changelog

* Reduce scope of change in check payment methods

* saved methods are hidden when empty
2024-10-29 11:45:40 +00:00
Karol Manijak 8d81b632f2
Fix selector in shopper test (#52328)
* Simplify the test and fix it so it works with and without iframe canvas

* Add changelog
2024-10-29 09:59:59 +01:00
Alba Rincón 42b4c1f25d
Add the new `/orders/{id}/actions` endpoint (#52050)
* Add new /orders/{id}/details endpoint first version

* Add tests for the OrderDetailsRestController

* Fix lint errors and service provider

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

* Update note to mention it was created via a REST API request

* Document the original actions and reference them from the endpoint

* Refactor the endpoint to be `/actions`

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

* Add back loading payment gateway and shipping classes

* Refactor endpoint to be `actions/send_order_details`

* Address feedback: improve error message and note

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-10-29 09:38:11 +01:00
Vladimir Reznichenko df47723e1e
[dev] CI: install core composer dependencies synchronously in CI-environment. (#52395) 2024-10-29 09:16:11 +01:00
Damián Suárez 9b47acb2e1
[Experimental] Refact Rating filter block for the new Product Filters block structure (#52152)
* update Rating experimental filter title

* allow to insert the filter block

* fix ancestor block name

* remove showFilterButton from attribute types

* udpate icon

* add rating to the initial filters template

* clean rating filter utils

* minor styling code enhancement

* tidy

* remove isEditor const

* import type explicitely

* rename block to CheckboxListEdit

* set defautl style for Rating block

* rename block to RatingFilterEdit

* undestructuring attributes object

* compose rating block by using template

* use InitialDisabled instead of Disabled

* set block instance name

* set display style properly

* do not rename checkbox list block instance

* passing context to CheckboxList block, server-side

* import type explicitely

* process rating data in server-side

* handle activate/deactivate rating filters

* support clean rating filters in the frontend

* remove temporarely action to handle dropdown

* changelog

* remove Dropdown mode for now

* use custom Notice component

* do not import unused libs

* rename method to get_rating_items

* declar selected_ratings_query as mixed

* sort rating stars by value descending

* udpate changelog message

* linting

* remove unused vars

* set selected_ratings_query like an array

* set get_rating_items $select param as an array

* set explicitely Attributes type

* remove unneeded InitialDisabled component

* remove useSetWraperVisibility hook usage

* sort rating straight via SQL
props to @dinhtungdu https://github.com/woocommerce/woocommerce/pull/52152/files#r1818839577

* remove local state to show no products notice
2024-10-29 08:00:04 +00:00
Boro Sitnikovski f0beaa9885
Use the correct `getAdminSetting` call for fetching `siteUrl` (#52376)
* Use the correct `getAdminSetting` call for fetching `siteUrl`

* Lint
2024-10-29 08:54:18 +02:00
Ilyas Foo 262631e344
Add Kliken to default OBW extension list (#52295)
* Add Kliken Meta Ads & Pixel in core profiler recommendation 50% in place of pinterest

* Lint

* Changelog

* Fix using the correct pinterest object

* Lint
2024-10-29 11:56:07 +08:00
Chi-Hsuan Huang 169e9936cb
Fix Mobile App Task Not Marked Complete After Dismiss Action (#52370)
* Fix mobile app task is not marked as complete after clicking the dismiss button

* Add changelog
2024-10-29 11:55:57 +08:00
RJ f9264fb79e
fix: refactored core profiler plugins page and added error screen (#52301) 2024-10-29 11:48:59 +08:00
Paul Sealock 027b91f220
[Navigation] Gracefully handle deprecation of classes (#52248) 2024-10-29 10:46:24 +13:00
David Remer 2c77be6444
Wrong error message in CSV importer (#51966)
* Test that sku skipping works

#46505

* Switch SKU and ID error detection

If we find an product with the same SKU we overwrite the imported product id with the existing one. When we check for the existing ID first, we would get now a match although the imported ID did not match. Therefore we first check if the SKU is already present before checking for the ID

#46505

* Add doc

* Add changelog

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

* Remove unneeded changelog entry pulled in during rebase.

* Remove mistakenly pushed debug code.

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2024-10-28 11:55:08 -07:00
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