* 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>
* 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>
* 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>
* 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
* 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
* 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>
* 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>
* 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>
* 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>
* 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>
* 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
* 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>
* 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
* Add Kliken Meta Ads & Pixel in core profiler recommendation 50% in place of pinterest
* Lint
* Changelog
* Fix using the correct pinterest object
* Lint
* 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>
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
```