Commit Graph

65363 Commits

Author SHA1 Message Date
Chi-Hsuan Huang b728f53f29
Fix duplicate spec evaluation in `evaluate_specs()` (#51166)
* 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
2024-09-11 08:13:48 +00:00
Chi-Hsuan Huang 007bd21a35
Clean up purchase task (#51274)
* Remove Purchase task

* Add changelog
2024-09-11 15:39:28 +08:00
Chi-Hsuan Huang 057e118a34
Fix size for coming soon banner login button (#51251)
* Fix coming soon banner login button style

* Add changelog
2024-09-11 13:47:02 +08:00
Tomek Wytrębowicz 065470dea8
Use `get_filtered_ids` consistently in `taxes` and `…/stats` datastores (#51219) 2024-09-10 23:17:10 +02:00
Álvaro Thomas be79bcca84
E2e Tests Order Copying Billing Shipping Address (#50131)
* 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>
2024-09-10 23:13:54 +03:00
Adrian Moldovan d409d6db99
[e2e tests] Don't catch api errors in fixtures (#51265) 2024-09-10 10:32:41 -07:00
jonathansadowski 9c81006156
Update team flux PR review assignments (#51241) 2024-09-10 12:13:24 -05:00
Boro Sitnikovski da7cf716d8
Add chevron after See more to the list header (#51199)
* Add chevron after See more to the list header

* Changelog

* Correct changelog path

* Alphabetically ordered imports :)
2024-09-10 18:28:31 +02:00
Adrian Moldovan 70716d1a6a
[e2e tests] Fix flaky product images test: can update a product gallery (#51263) 2024-09-10 09:16:52 -07:00
louwie17 cf4f76ecfb
Add Storybook GitHub workflow for publishing to GH pages (#51235)
* 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
2024-09-10 12:19:57 -03:00
DAnn2012 b72e07c605
Fix typos (WooCommrece) (#50333)
* 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>
2024-09-10 08:15:36 -07:00
Adrian Moldovan 31a2474c3b
[e2e tests] Fix flaky test create-variable-product-block-editor > can create a variation option and publish the product (#51246) 2024-09-10 14:51:45 +02:00
Vladimir Reznichenko 9fd4b54902
PHPUnit: report slow tests. (#51253)
Enables reporting slow PHPUnit tests as part of testing [progress output.
2024-09-10 12:37:23 +02:00
Herman d53c5a2222
Fix in-app product card descriptions (#51228)
* 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>
2024-09-10 12:55:24 +05:30
Herman 904dfaa2ff
Set in-app product card price meta dynamically (#51170)
* 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>
2024-09-10 06:57:52 +00:00
Herman 3b35e22c99
Update in-app product card clicked Tracks event (#51180)
* 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>
2024-09-10 08:33:12 +02:00
Chi-Hsuan Huang 7dc26a8c66
Clean up 'Profile Wizard' code (#51190)
* Remove plugins/woocommerce-admin/client/profile-wizard

* Clean up styles

* Remove setup wizard hook reference

* Add changelog

* Remove e2e utils related to old setup wizard

* Fix lint

* Add changelog

* Remove unused usage modal
2024-09-10 11:29:14 +08:00
Vedanshu Jain e85869f3a4
Add phone to searchable FTS fields for order addresses. (#51065)
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
2024-09-09 16:20:25 -07:00
Adrian Moldovan 0645a0326d
[k6 tests] Manage K6 version (#51239) 2024-09-09 21:29:09 +02:00
Matthew Reishus a8b42b3ce3
Blocks\Assets\Api: Do not attempt to update script_data transient with the same data (#50962)
* 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>
2024-09-09 16:59:58 +01:00
Vlad Olaru b40c4a95e5
Attach WooPayments incentive ID to wcadmin_tasklist_click Tracks event props (#51105)
* Add WooPayments incentive ID to task additional data

* Attach WooPayments incentive ID to wcadmin_tasklist_click Tracks event

* Add changelog

* Add changelog

* Replace short array syntax

* docs: Update docs
2024-09-09 18:06:43 +03:00
louwie17 0e8d19d43b
Upgrade storybook to version 7 and add pages workflow for GH publishing (#51168)
* 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
2024-09-09 12:06:01 -03:00
David Marín 7f89cd5090
Using new coupon_info metadata, if it exists, to determine the actual coupon id (#48262)
* 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>
2024-09-09 17:00:37 +02:00
Thomas Roberts 72112bd5d4
Update shipping calculator wording and Cart/Checkout order summary title (#51072)
* 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>
2024-09-09 15:19:57 +02:00
DAnn2012 acdf296215
Fix typo (wc-update-functions.php) (#50146)
* Update wc-update-functions.php

* 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-09-09 12:15:19 +00:00
Herman b913931623
Remove title for Extensions and Themes tabs (#51195)
* 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>
2024-09-09 14:08:49 +02:00
Vladimir Reznichenko 8dcb562c39
[dev] PSR-4 naming fixes in tests (part 2) (#51198)
In this PR we address PSR-4 naming-related violations (class FQN vs path mismatches and co) in tests.
2024-09-09 11:26:55 +02:00
louwie17 d185a34145
Fix style conflicts with LYS (#51223)
* Increase specificity for product data view styles to avoid conflicts

* Add changelog
2024-09-09 09:03:43 +00:00
Vladimir Reznichenko 199883a05a
[dev] PSR-4 naming fixes in tests (part 1) (#51194)
In this PR we address PSR-4 naming-related violations (class FQN vs path mismatches and co) in tests.
2024-09-09 10:37:30 +02:00
github-actions[bot] 70ee1c9f3b
Prepare Packages for Release (#51222)
Automated change: Prep @woocommerce/remote-logging --initial-release for release.

Co-authored-by: chihsuan <chihsuan@users.noreply.github.com>
2024-09-09 04:54:09 +00:00
github-actions[bot] 0abaab29fe
Prepare Packages for Release (#51221)
* Automated change: Prep @woocommerce/remote-specs-validation --initial-release for release.

* Update changelog

* Update version

---------

Co-authored-by: chihsuan <chihsuan@users.noreply.github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2024-09-09 12:16:53 +08:00
RJ 86c2358d18
dev: refactor xstate update query params made generic (#51167)
* refactor: make updateQueryParam generic

* changelog
2024-09-09 10:49:40 +08:00
Chi-Hsuan Huang 4f9b851316
[remote-specs-validation] Fix `base_location_state` and `base_location_country` value type (#51169)
Fix base_location_state and base_location_country value type
2024-09-09 10:35:21 +08:00
Jonathan Lane 43cc912bba
Select bank transfer explicitly on customer payment page e2e test (#51210)
Select bank transfer explicitly

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-09-06 20:24:44 +00:00
Adrian Moldovan 36f85ef0c6
[e2e tests] Fix flakiness in page publishing action (#51196) 2024-09-06 11:34:51 -07:00
Veljko V. b71e6e22a8
[e2e] External sites - update /shopper tests, part 1 (#51068)
* 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>
2024-09-06 15:34:45 +02:00
Roy Ho 63243c57a9
[Experimental] Product filters > Attributes loading state in editor (#51151)
* 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>
2024-09-06 05:33:02 -07:00
Ivan Stojadinov a61a2bd29e
[e2e tests] External sites - update /merchant tests, part 4 (#51181)
* 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>
2024-09-06 11:27:45 +02:00
Chi-Hsuan Huang 19661e3317
Refactor Country Specs to use in operator (#51162)
* Refactor Country Specs to use in operator

* Add changelog

* Refactor shipping specs
2024-09-06 15:45:49 +08:00
Ilyas Foo b4f1062783
Update coming soon docs to include more extensibility examples (#51160)
* Update docs

* Small update

* Changelog

* Lint

* Docs manifest

* Add store pages extensibility

* Docs manifest

* Update docs/extension-development/integrating-coming-soon-mode.md

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>

---------

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2024-09-06 14:38:59 +08:00
Ian Yu-Hsun Lin 43ce3c1c4d
[WC Analytics] Add filters for custom orderby query params (#49722)
* 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>
2024-09-06 12:13:03 +08:00
Chi-Hsuan Huang cb2549386a
Only run "woocommerce_admin_shared_settings" filter on admin requests (#51161)
* Only load settings if it's admin

* Add changelog
2024-09-06 11:44:01 +08:00
Chi-Hsuan Huang 0ef7d95aff
Hide site visibility badge when "Launch Your Store" feature is disabled (#51159)
* Fix: put site visibility badge behind the launch your store feature flag

* Add changelog
2024-09-06 10:39:55 +08:00
George Jipa a7b957dbce
Fix `Customers\DataStore::anonymize_customer` use of WC_Order instance as int (#38201) 2024-09-05 21:56:48 +02:00
Adrian Moldovan 61d41adf79
[k6 tests] Fix broken perf tests - updated page titles (#51173) 2024-09-05 10:53:00 -07:00
Boro Sitnikovski d2fb60a5d1
Change label `Browse` to `Extensions` (#51140)
* Change label `Browse` to `Extensions`

* Changelog
2024-09-05 17:11:42 +02:00
Karol Manijak a7231863c0
Product Collection: Trigger `wc-blocks_viewed_product` JS event (#51156)
* Define the event

* Add action sending an event in PC store

* Add directives and context to Product Template li element

* Use on--click directive in ProductImage

* Use on--click directive in Product Title

* Use on--click directive in Product Button

* Add changelog

* Add E2E tests

* Update docs

* Update blocks reference and docs manifest

* Update m,anifest

* Fix mistake in docs

* Regenerate docs manifest

* Fix lint

* Extractb new tests to a separate file
2024-09-05 12:52:35 +02:00
Ivan Stojadinov 5a5b1f0478
[e2e tests] External sites - update /merchant tests, part 3 (#51158)
* Skip `Merchant can view a list of all customers, filter and download`

* Skip `can receive new order email`

* Expand Pressable run with new set of /merchant tests

* Move `should filter by All` into for loop with existing tests

* Wait between two actions with `networkidle`

* Skip two tests on Pressable

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

* Remove `networkidle` and use class `current` for the selected filter

* Fix ESLint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-09-05 11:19:23 +02:00
Ivan Stojadinov ccd5669c21
[e2e tests] External sites - update /merchant tests, part 2 (#51016)
* Handle error for api.delete( coupons/<id> )

* Choose any product that contains "product" in its name

* Expand Pressable test suite

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

* Add missing `throw` error

* Make product name more unique with `Date.now()`

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-09-05 10:56:48 +02:00
RJ dcbc4dc588
dev: update webpack build to dynamiclly fetch wp-admin-scripts (#51133)
* dev: update webpack build to dynamiclly fetch wp-admin-scripts

* Update README.md

* Update README.md
2024-09-05 00:14:32 +00:00