* Remove overlay icon settings from parent block
* Change overlay block icon to generic button icon
* Add logic to remove overlay nav when overlay mode is set to never
* Add logic to add overlay nav when overlay mode is not never
* Add default attributes for overlay nav button
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Use unique icons for each overlay navigation close and open
* Add icon picker for open overlay navigation
* Add trigger type for overlay close navigation
* Add missing settings label
* Fix e2e tests
* Skip a test for overlay-navigation block
* Add e2e tests for overlay button behavior
* Fix linting error
* Skip overlay nav tests
* Fix icon size value not saving
* Revise logic to target explicitly the innerblock of product-filters
* Ensure overlay navigation is of type open-overlay
* Prevent possible race conditions
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add variation to Product Filters Overlay Navigation
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* Move Product Filters Overlay Navigation to correct position
* Hide block when it is outside the Product Filters template part
* Display Navigation block in the frontend
* Show the Product Filters Overlay Navigation on the frontend
* Add logic to hide Product Filters Overlay Navigation block on the frontend
* Hide block on the Overlay template part
* Fix eslint errors
* Update the block variation title
* Remove the `isActive` property from the block variations
* Use Product Filters block context
* Replace enum with const
* Remove unnecessary `StyleAttributesUtils`
* Rename context key
* Move BlockOverlayAttribute to the constants.ts file
* fix BlockOverlayAttribute import
* Fix import error
* Improve code for the shouldHideBlock method
* Remove unnecessary attributes property
* Fix error in ProductFiltersOverlay block
* Add dialog to the Product Filters block
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* Fix interactivity api error
* Prevent block from being hidden on Product Filters template part
* Fix inspector controls when block is hidden
* Add clickable action to the Product Filters Overlay Navigation block
* Fix interactivity directives that were not working for the Overlay
* Fix issue with dialog styles not being correctly applied
* Add the `closeDialog` functionality
* Parse and render blocks for the Product Filters overlay
* Fix padding
* Fix style for Product Filters Overlay navigation block
* Add e2e test
* Add e2e test to Product Filters Overlay template part
* Fix e2e test
* Fix issue causing the trigger button to show even though the overlay mode is set to 'Never"
* Fix issue causing close button to not be displayed in the dialog
* Add e2e tests
* Fix issue that was preventing users from scrolling down the dialog content
* Remove text duplication in e2e tests
* Remove unnecessary imports
* Fix php cs errors
* Fix php cs error
* Revert changes on Product Gallery modal styles
* Fix lint errors
* fix php cs lint errors
* fix php cs error
---------
Co-authored-by: github-actions <github-actions@github.com>
* Revert "[React 18] Use `createRoot().render()` instead of `render()` (#48843)"
This reverts commit 752273e6ce.
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* feat: Add memoization to EvaluateSuggestion class
This commit adds memoization to the `EvaluateSuggestion` class in order to improve performance by caching the results of the `evaluate_specs` method. The memoization is implemented using an associative array called `$memo`, which stores the results of previous evaluations based on the input specifications and logger arguments. The memoization logic checks if the results for a given set of specifications and logger arguments already exist in the `$memo` array, and if so, returns the cached results instead of re-evaluating the specs. This helps to avoid redundant computations and improves the overall efficiency of the `evaluate_specs` method.
* Add changelog
* Only use specs as key
* Move shipping test to correct folder
* Fix tests
* Fix tests
* Fix lint
* Address PR feedback
* Update order edit tests with shipping address tests
Update order edit tests with shipping address tests
* Add changelog
* Refactor new tests
---------
Co-authored-by: Jon Lane <jon.lane@automattic.com>
* Add storybook workflow
* Update version and add trigger for push on trunk
* Add workflow_dispatch for manual trigger also
* Add permissions
* Add trigger for current branch
* Set install to true for monorepo setup
* Add write permissions
* Use hashes for GH action versions and add --quiet for building storybook
* Remove on push trigger for now
* Update README.md
* Update 722.md
* Update 741.md
* Update docs-manifest.json
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
Co-authored-by: Roy Ho <roykho77@gmail.com>
* Add classname to description section for business service card
* Decode HTML entities in product descriptions
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Raja sekar <raja.sekar.manimaran@automattic.com>
* Set product card price currency and suffix dynamically based on endpoint data
* Add changefile(s) from automation for the following project(s): woocommerce
* Remove unnecessary comment
* Update types to match data received from WCCOM after further changes to the API
* Apply suggestions from code review
Allow for future currencies that might switch the symbol/value order
Co-authored-by: Dan Q <dan@danq.me>
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Dan Q <dan@danq.me>
* Add product and group id properties to Tracks data for product card clicks
* Add changefile(s) from automation for the following project(s): woocommerce
* Update product tracksproperty to product_id
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
This PR adds the phone number to the FTS index on the order address table, and adds the migration routines so that we can recreate the index for shops that already have this enabled. Additionally, it also removes support for relevancy operators to make search performant.
Fixes#51213
* Blocks\Assets\Api: Do not attempt to update script_data transient with the same data
* Add changelog
* Update plugins/woocommerce/src/Blocks/Assets/Api.php
Co-authored-by: Albert Juhé Lluveras <aljullu@gmail.com>
* Update plugins/woocommerce/changelog/50962-dont-update-transient-with-same-data
Co-authored-by: Albert Juhé Lluveras <aljullu@gmail.com>
---------
Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
Co-authored-by: Albert Juhé Lluveras <aljullu@gmail.com>
* Updated storybook and renamed stories to use the *.story.js/tsx format
* Renamed stories within product editor and wc admin package
* Include *story files in product editor package
* Add storybook pages workflow
* Remove the 'on' param in storybook-pages
* Add changelogs
* Fix failing tests
* Add dirname for any other webpack configs that rely on the woocommerce-admin one
* Fix React 18 warnings
* Remove unneeded storybook packages from components package
* Remove storybook workflow, to be added as a follow up instead
* Revert @storybook/react back to fix unit tests
* Using new coupon_info metadata to determine the actual coupon id
Changes to make use of the new coupon_info meta data, if it exists, to determine the actually-used coupon.
If coupon_info meta data doesn't exist, I'm also adding an extra filter so, in case there are more than one active coupons with the same name, we filter out the ones that were created after the order.
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
* Update isAddressComplete to allow only specific fields to be checked
* Update tests for isAddressComplete
* Update wording on "enter address" prompt in Cart sidebar
* Update Shipping to Delivery in cart & checkout shipping total
* Only check the city, state, country, & postcode fields in shipping calc
* Update wording in the "Ships to" section of cart/checkout sidebar
* Update shipping calculator button to say delivery
* Update tests to use new strings
* Remove test that was falsely passing anyway
This test checked for presence of a string that wasn't in the codebase. It also doesn't seem like a valid test. Why would we want to remove the button just because default rates are available?
* Add changelog
* Left align text in shipping calculator button
It floats weirdly in the middle with the new text changes
* Update text in tests
* Update wording in unit tests
* Update shipping calculator text in test
* Update shipping text in test
* Update use of shipping in tests
* Skip test with no translation available
* Lint fixes
---------
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
* Remove title for Extensions and Themes tabs
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Dan Q <dan@danq.me>
* Update shopper tests and util to fix external env compatibility
* Update WPCOM config to include shopper tests and skip one from testing
* Update WPCOM config
* Update shopper shop title deletion test to avoid false positives
* Add search and click steps to afterEach
* Update selector in test to pass across all envs
* Update external PW configs for shopper tests
* Improve existing test to use WP API for setup
---------
Co-authored-by: Ivan Stojadinov <ivan.stojadinov@automattic.com>
* Fix no products component prematurely being rendered
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Use useMemo to memoirize component element on re-renders
---------
Co-authored-by: github-actions <github-actions@github.com>
* Skip `WooCommerce woo.com Settings`
* Make `Update` button more unique
* Run entire /merchant folder
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add a filter `woocommerce_report_categories_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_coupons_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_coupons_stats_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_customers_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_downloads_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_downloads_stats_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_orders_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_orders_stats_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_products_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_products_stats_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_revenue_stats_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_stock_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_taxes_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_taxes_stats_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_variations_orderby_params` for custom orderby query params
* Add a filter `woocommerce_report_variations_stats_orderby_params` for custom orderby query params
* Add changelog
* Add a method `apply_custom_orderby_filters()` in analytics GenericController
* Use the shared method to in analytics GenericController to apply custom
orderby enum
* Fix typo, add more comments in analytics custom orderby filter PHPDoc
---------
Co-authored-by: Tomek Wytrębowicz <tomalecpub@gmail.com>