Commit Graph

65797 Commits

Author SHA1 Message Date
Vladimir Reznichenko e47384d16b
[dev] Monorepo: consolidate ci-workflow (include changelog/md-files validation) (#52398) 2024-11-04 10:01:57 +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
Shani f5d5caa3f0
Docs/tulum docs 1 (#52465)
* Adds two new docs in Extensions and updates three general docs

* Removes LocalWP reference

* Updates manfiest

* Fixes new line linting issue

* Updates manifest.json

---------

Co-authored-by: Shani Banerjee <shanibanerjee@Shanis-MBP.lan>
2024-10-31 09:56:34 -04: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
Naman Malhotra 338e8860bc
Change description for CFE and PRR templates (#52459)
* Change description for CFE and PRR templates
2024-10-30 19:40:24 +07: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
Naman Malhotra e98f2457dc
Apply milestone when the CFE or PRR issue is created (#52406)
Apply milestone when the CFE/PRR issue is created
2024-10-30 14:54:23 +07:00
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
Naman Malhotra 8fd310c133
Improved messaging when CFE or PRR request is rejected (#52377)
Improved messaging for CFE file
2024-10-29 11:14:20 -07: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