Commit Graph

21391 Commits

Author SHA1 Message Date
netzkollektiv c76438906b
clarify the `name` property needs to match between JS and PHP (#48219)
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-06-13 05:57:36 -07:00
Damián Suárez 6328ffdfb2
Product Form Template: populate the template selector control with the PFTs (#48327)
* switch setting templates order

* pull product_form from the entity store

* fix typo

* set post excerpt with template description

* update the description for the Simple template

* rename type for product form post

* introduce isProductFormTemplateEnabled() helper

* render the PFTs into the templates selector

* changelog

* tscripting

* remopve dropdown

* re-write changelog files

* change and rename isProductFormTemplateSystemEnabled

* remove unused component

* try change the template version name
2024-06-13 13:55:07 +01:00
Alba Rincón 7352c7270a
[CYS - Full Composability]: Fix active/inactive patterns for each assembler section (#48458)
* Add inert to header and footer on the homepage

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

* Refactor to pass query as a param to the hook

* Add an observer to enable/disable patterns depending on the assembler section

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

* Rename observer

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-13 14:42:54 +02:00
Corey McKrill 403ff183e0
REST API: Check if stock should be adjusted when updating order line items (#47784)
* Check for stock adjustment during REST order update request

* Add changelog file
2024-06-13 12:58:24 +01:00
Mike Jolley 9cd84a44cb
Fix `WC_Settings_API` textarea validation method (#48432)
* Remove custom `wp_kses` rules in favour of default `wp_kses_post` function

Custom sanitization/validation is no longer needed—we can just inherit wp_kses_post like other field types.

wp_kses was originally implemented for a ShareThis integration a5aa58b135 but this is no longer present in WooCommerce.

iFrame usage is not encouraged in these settings fields so with this change they will be filtered out. Developers who would like to allow iFrames can add a custom `sanitize_callback` function when registering settings fields.

* Apply kses on gateway description unless extended by a plugin

* Code standards + esc in touched abstract payment gateway class

* Changelog

* Use esc_url for icon URL

* Add missing hook docs in payment method class

* Add since documentation

* Skip description if empty

* Run KSES early so we know if the description has content.
2024-06-13 10:16:03 +01:00
Luigi Teschio e044ea9120
CYS: apply white color to the heading elements in the core/cover block (#48447)
* CYS: apply color to the heading elements in the core/cover block

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

* fix color

* add E2E test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-13 08:48:06 +00:00
Karol Manijak 1f4a86c7f1
Hide Product Summary (Product Elements) from Single Product block (#48253)
* Hide Product Summary (Product Elements) from Single Product block

* Add changelog

* Update comment
2024-06-13 09:58:06 +02:00
Karol Manijak d49db0486e
Update Compatibility Layer docs (#48456)
* Update compatibility layer docs to mention Product Collection

* Add changelog

* Update plugins/woocommerce-blocks/docs/internal-developers/blockified-templates/compatibility-layer.md

Improve my English

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

---------

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2024-06-13 09:57:51 +02:00
Alba Rincón 1f9b130357
[CYS - Full Composability]: When the user is in the "Design your homepage" menu, hovering over the header or footer will should not make them highlighted (#48358)
* Add inert to header and footer on the homepage

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

* Refactor to pass query as a param to the hook

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-13 09:37:34 +02:00
Chi-Hsuan Huang 4112c97d13
Handle core profiler get countries error (#48317)
* Handle core profiler get countries error

* Update style

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

* Update button and code style

* Address feedback

* Fix lint

* Record skip step track and rename event

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-13 12:42:30 +08:00
Chi-Hsuan Huang ab1789afd2
Remove onboarding welcome modals (#48346) 2024-06-13 10:39:21 +08:00
Niels Lange 6a0a9be504
Revert #47083 (#48423)
* Revert #47083

* Revert e2e test
2024-06-13 00:23:23 +02:00
Adrian Moldovan 1f534d0280
[e2e tests] Update the report configuration for core e2e tests and add a new workflow call for report publishing (#48424)
* Add a call to a new report workflow in woocommerce-test-reports repo

* Test change to trigger tests

* Update report title

* Test change to trigger tests

* Check REPORT_TITLE

* Add quotes on all arguments

* Update reporting configuration to all core e2e jobs

* Add changelog

* Use GITHUB_HEAD_REF for pull_request

* Set REPORT_TITLE for workflow dispatch

* Updated trigger from daily-e2e to daily-checks
2024-06-12 13:38:37 -07:00
Veljko V 08e44d0c4c
Fix flaky e2e test and update login util (#48446) 2024-06-12 13:35:36 -07:00
Adrian Moldovan bc34fce4e9
Update @wordpress/env to 9.7.0 in blocks library (#48443) 2024-06-12 17:34:44 +00:00
Corey McKrill 4b40a3170c
Logging: Handle multibyte characters and slashes in context data (#48341)
The json_encode function encodes multibyte characters literally by
default, which makes them unreadable in the log files. This change
ensures those characters remain intact, rather than encoded. It also
adds better handling for characters that get escaped with slashes.

Fixes #44743
2024-06-12 10:14:55 -07:00
Veljko V ed310fede4
Fix flaky assembler homepage e2e test (#48356)
* Fix flaky assembler homepage test

* Add changelog

* Increase waiting time for the assembler loading

* Remove beforeEach and add function to all tests
2024-06-12 10:09:41 -07:00
Veljko V 2899a5da94
Fix flaky activate-and-setup/core-profiler.spec.js e2e test (#48430)
* Fix flaky store owner core profiler e2e test

* Remove focused test
2024-06-12 13:32:27 -03:00
Albert Juhé Lluveras fe611abc7e
Clean up theming sections in WooCommerce blocks docs (#48420)
* Clean up theming sections in WooCommerce blocks docs

* Add changelog file

* Change intro text

* Fix TOC
2024-06-12 16:29:42 +02:00
Karol Manijak c378a698ce
Hide Products (Beta) from inserter (#48204)
* Hide Products (Beta) from inserter

* Add changelog

* Update E2E test replacing Products with Product Collection block

* Add step to choose collection in E2E test

* Change fill PW method to pressSequentially so the inserter shows blocks

* Update changelog entry
2024-06-12 15:45:27 +02:00
Karol Manijak 635524b481
Replace Products (Beta) with Product Collection in product archive templates (#48112)
* Replace Products (Beta) with Product Collection block in blockified template

* Add necessary attributes that influences the look of blocks

* Replace Products (Beta) with Product Collection block in product search results

* Replace Products (Beta) with Product Collection block in products by attribute

* Replace Products (Beta) with Product Collection block in products by category

* Replace Products (Beta) with Product Collection block in products by tag

* Replace Products (Beta) with Product Collection when transforming from classic product archive

* Change the no results content in blockified search results template

* Replace Products (Beta) with Product Collection block in product search results

* Add product search in no results content of blockified product search result

* Add ts-ignore before createBlocksFromInnerBlocksTemplate imports

* Add changelog

* Remove step of replacing Products (Beta) with Product Collection in compatibility layer tests

* Remove step of replacing Products (Beta) with Product Collection in Product Collection tests

* Fix lint

* Update E2E tests of Product Collection

* Adjust Products (Beta) E2E tests

* Add Product Collection focus step in E2E tests

* Improve the way PC block is focused

* Further tests adjustments and new tests comparing classic template with Product Collection

* Bring back the click on body

* Include tips from reviewer

* Enter edit mode, step that I accidentally removde

* Bring the E2E test flow with updating product catalog

* Change the way of removing focus from PC block in tests

* Fix lint

* Improve the layout of search in No Results

* Use previous patterns in Product Search No Results to preserve translations

* Add Search button label in product search form pattern

* Fix lint

* Improve comment explanation

* Extract No Results content to separate pattern in order to make the content translatable

* Lint fix

* Add missing footer to the blockified Products by Tag template

* Exclude woocommerce/patterns from phpcs rules that dont apply there

* Make PC block responsive by default in product archive templates

* Fix typo

* Fix typo

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2024-06-12 15:45:09 +02:00
Oleksandr Aratovskyi 5a4835ea39
Improve consistency of Manage button for different WooPayments KYC states (#48212)
* Small refactoring

* Override the CTA text and behaviour in gateway settings for the WooPayments plugin

* Address lint issues

* Add changelog

* Fix bug introduced during refactoring

* Fix lint error

---------

Co-authored-by: oaratovskyi <oleksandr.aratovskyi@automattic.com>
2024-06-12 16:22:43 +03:00
Damián Suárez c85fe30dd2
WooCommerce: fixes the checks when migrating the product form template (#48386)
* fixes the checks when migrating the template

* changelog

* minor jsdoc enhancement

* yoda condition
2024-06-12 12:36:21 +01:00
Luigi Teschio 2c754bb667
CYS: Fix CSS header (#48389)
* CYS: fix css header

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-12 11:38:10 +02:00
Luigi Teschio 5c6c9923a5
CYS: hide popover when the mouse pointer leaves the site preview and then back. (#48394)
* CYS: hide popover when the mouse pointer leaves the site preview and then back

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-12 09:18:06 +00:00
Barry Hughes f9afd4d7bc
Fix interpolation syntax introduced in #47311. (#48337) 2024-06-12 10:07:24 +02:00
Albert Juhé Lluveras 54854f16cf
Document template parts used by the Classic Template block (#48183)
* Document template parts used by the Classic Template block

* Add changelog file

* More changes

* Change image

* More changes (II)

* Update plugins/woocommerce-blocks/docs/internal-developers/templates/README.md

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>

* Update plugins/woocommerce-blocks/docs/internal-developers/templates/classic-template.md

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>

* Make image smaller and centered

* Change PHP template parts section format

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2024-06-12 09:36:55 +02:00
Ilyas Foo 7f657cca53
Add test for `wcpay_connect_account_clicked` track (#48347)
* Refactor Connect Account Page test, add wcpay_connect_account_clicked track test

* Changelog
2024-06-12 14:39:21 +08:00
RJ 8e186cd27b
fix: core profiler already connected to jetpack (#48345)
* fix: core profiler already connected to jetpack
2024-06-12 13:24:45 +08:00
Jonathan Lane e5e51a41b8
Update Playwright to 1.44.1 from 1.41.1 (#48291)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-06-11 21:52:48 +03:00
Néstor Soriano e64f7b31bc
Make coupon metadata read robust against wrongly stored product related metadata (#48362)
Coupon metadata keys `product_ids` and `excluded_product_ids` are stored by WooCommerce as a comma-saparated list of values, but apparently some plugins mistakenly re-store these as serialized arrays. This pull request changes the database metadata read code so that it supports both comma-separated lists and serialized arrays.

Fixes #40569
2024-06-11 11:23:28 -07:00
Corey McKrill dc5ad32fb7
Logging: Ensure filtered log messages don't persist across multiple log handlers (#48336)
Log messages can be modified via the `woocommerce_logger_log_message`
filter hook on a per-handler basis, but if the message is modified for
the first handler, the subsequent handlers were receiving the modified
message instead of the original. This simply ensures each handler
receives the original message instead.

Fixes #47126
2024-06-11 10:33:02 -07:00
Adrian Moldovan a7f634d5ef
[blocks e2e] Move Blocks e2e into ci.yml (#48224) 2024-06-11 19:57:23 +03:00
Luigi Teschio af2946aa34
CYS: Refactor routing approach (#48312)
* CYS: Refactor routing approach

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

* remove focus logic

* remove routekey prop

* pass onNavigateBackClick callback as prop

* create dedicated CSS class

* lint css

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-11 15:26:04 +02:00
Damián Suárez 4921018e5a
Product Block Editor: disable the `product-editor-template-system` flag even for the dev-env (#48378)
* disable `product-editor-template-system` as default

* changelog
2024-06-11 14:22:06 +01:00
Adrian Moldovan 665d45ba38
[e2e tests] Disable task list reminder bar in analytics-data spec - fixed flaky tests (#48357)
* Disable task list reminder bar

* Remove unused product fixture

* Disable tour via the api
2024-06-11 13:55:38 +02:00
rodelgc deb15d201e
Sync #319 with trunk (#48348)
* Use DOM API to create Order Attribution inputs

* Add changelog entry

* Delete unnecessary changelog

---------

Co-authored-by: Tomek Wytrębowicz <tomalecpub@gmail.com>
2024-06-11 16:40:35 +08:00
Chi-Hsuan Huang f1badbfb4b
Add global ErrorBoundary component for handling errors in react admin (#48250)
* feat: Add ErrorBoundary component for handling errors in WooCommerce admin client

* Add changelog

* Add tests for error-boundary

* Update plugins/woocommerce-admin/client/error-boundary/index.tsx

Co-authored-by: RJ <27843274+rjchow@users.noreply.github.com>

* Wrap text in __()

* Address feedback

* Fix tests

* Improve mobile view

* Update button

---------

Co-authored-by: RJ <27843274+rjchow@users.noreply.github.com>
2024-06-11 16:14:44 +08:00
Albert Juhé Lluveras 545e48e05a
Expand block templates documentation (#48247)
* Expand block templates documentation

* Add changelog file

* New manifest

* Minor changes

* Add Page: Coming soon template
2024-06-11 10:04:48 +02:00
github-actions[bot] 0139bd1b2b
Delete changelog files based on PR 48201 (#48332)
Delete changelog files for 48201

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-06-11 14:41:08 +08:00
Chi-Hsuan Huang bca269de3a
Reduce redundant LYS option API Calls (#48303)
* Update useLaunchYourStore hook to accept enabled parameter and only enable it in homescreen

* Add changelog

* Fix type

* Change isHomescreen function to variable
2024-06-11 13:28:05 +08:00
Néstor Soriano eb71b8ba25
Add CLI tools for the product attributes lookup table (#47311)
* Add the ProductAttributesLookup\CLIRunner class

* Fix the restoring of the lookup table usage option

* Improve the progress bar of the regeneration command

* Add changelog file

* Fix existing unit tests

* Add linter exception for TODO comment

* Fix example in CLI runner

* Fix: get_lookup_table_info was returning data as strings.

* Show count of lookup table rows after the "regenerate" command finishes.

* Improve error message
2024-06-10 11:26:47 -07:00
Adrian Moldovan 1533afdca3
[e2e tests] Fix e2e test results path and report name (#48320)
* Fix the report name sent to woocommerce-test-reports workflow

* Add test type

* Test change

* Remove test type

* Merge artifacts to keep allure-results

* Overwrite artifacts if one already exists with the same name

* Test changes to trigger tests

* Fix allure-results and .state paths

* Filter tests for faster feedback

* Debug artifacts content

* Use name instead of pattern

* Use name instead of pattern

* Don't use an intermediate path

* Use artifact name and path instead of only pattern

* Use artifact name and path instead of only pattern

* Use artifact name and path instead of only pattern

* Remove testMatch filter to run all tests

* Revert test change

* Add changelog
2024-06-10 11:21:46 -07:00
Nathan Silveira b5992b3c9c
Run possibly_add_template_id function in woocommerce_rest_prepare_product_variation_object hook (#48325)
* Add template ID for variations

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

* Update 48325-fix-prepare-variation-boejct

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

* Update 48325-fix-prepare-variation-boejct

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-10 14:40:14 -03:00
Damián Suárez 114a0e547e
PFT: update CPT product_form posts when plugin updates (#48265)
* edit the CPT post when plugin updates

* minor jsdoc improvement

* changelog
2024-06-10 16:53:14 +01:00
Ilyas Foo 0d461fa6e7
Add unit tests for some tracks in product editor (#48245)
* Add tests for ProductPage

* Add tests for ProductVariationPage

* Add test for product_tab_click event

* Add test for product_editor_feedback_bar_turnoff_editor_click event

* Add test for product_dropdown_option_click event

* Add test for product_add_view track

* Changelogs

* Changelog

* Lint

* Add product_edit_view test and falsey test

* Fix test name
2024-06-10 23:05:20 +08:00
Niels Lange 1167b54a3d
Display return to cart link on mobile devices (#48103)
* Display return to cart link on mobile devices

* Add changelog entry
2024-06-10 16:25:47 +02:00
Gerhard Potgieter 5b06493a5c
Fix tax table ajax save (#48201)
* Ensure onsubmit event that triggers ajax save on tax table is bind to the correct button
Unblock the button busy state after saving

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

* Update changelog

* Update changelog entry

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: André Kallehauge <3846700+kallehauge@users.noreply.github.com>
2024-06-10 15:45:35 +02:00
Karol Manijak 9b3879f7cf
Add "(Experimental)" suffix to experimental blocks (#48071)
* Add (Experimental) suffix to experimental blocks

* Add comments reminding to update feature flags doc

* Update feature flag doc

* Add changelog

* Provide links to all feature flags

* Add JS flag for Product Filter: Rating (Experimental)

* Bring back linting in PHP file

* Update block references

* Update variation names

* Update tests

* Update test

* Add notification that block is not available in inserter to block references doc

* Add missing feature flag

* Remove information about block not being exposed in inserter from block references

* Update block references
2024-06-10 15:12:10 +02:00
Alba Rincón 1fdba93d9f
Add a step to install patterns when during the CYS flow (#48274)
* Add a step to install patterns when during the CYS flow

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

* Add feature flag to the install patterns function

* Fix changelog

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-10 15:00:33 +02:00
Alba Rincón 9d114c6d2d
[CYS - Full Composability] Select the next block after deleting the selected one (#48316)
* Select the next block after deleting one

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

* Fix lint error

* Check if next block client is defined

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-10 14:33:32 +02:00
Jonathan Lane ccbb811d7d
Update order URLs for HPOS in e2e tests (#46397)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-06-10 12:35:28 +03:00
Bart Kalisz d3142a8941
Move archive product title update logic outside BlockTemplatesController (#48255)
Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2024-06-10 11:26:15 +02:00
79mplus Admin acec2f6903
Scroll to view the templates section on the status page. (#48125) 2024-06-10 10:20:43 +02:00
Chi-Hsuan Huang 04ffcd1ab0
Remove unused `woocommerce_task_list_prompt_shown` option (#48304)
* Remove unused woocommerce_task_list_prompt_shown option

* Add changelog

* Fix lint
2024-06-10 07:46:42 +00:00
Chi-Hsuan Huang 7cc360fa09
Fix untranslated strings on CYS and marketplace (#48127)
* Fix untranslated "Give feedback" text

* Add is_free property to theme API and fix untranslated price texts

* Fix prices

* Add changelog

* Capitalize Free

* Remove default price value
2024-06-10 07:30:46 +00:00
Maikel Perez 3d0b9993be
Product template not updating in the UI when it is changed (#48288)
* Fix Product template not updating in the UI when it is changed

* Add changelog file
2024-06-07 20:00:15 +00:00
Nathan Silveira 442adcc395
Determine _product_template_id from WP filter (#47762)
* Remove template matching from front-end

* Create 'woocommerce_rest_get_product' filter to allow extensions to change the product when it's fetched through the REST API

* Stop defaulting to 'standard-product-template' product template and handle defaults only in getLayoutTemplateId function

* Use created hook to determine and persist the product template ID when it's not defined.

Also introduce 'match_fn' in ProductTemplate to allow extensions to provide robust ways of matching the template

* Add changelog

* Fix tests

* Remove outdated tests

* Fix issue in filter because $product can be false and move API change to v3

* Add comments to continue statements

* Small refactor

* Only send layout template id to useLayoutTemplate after product is loaded

* Revert front-end changes

* Remove match_fn and create filter to allow extensions to determine the product template id

* Avoid loading layout template before product is loaded

* Create woocommerce_product_editor_determine_product_template filter and use it

* Update changelogs and remove unused code

* Remove _product_template_id for products that were created with the new product editor.

* Use only id to find productTemplate

* Turn hook into experimental

* Remove deprecated tests

* Rename filter

* Add more typings to useEntityRecord

* Use hasResolved boolean to check whether product has been resolved

* Add changelog

* Add 'variation' to ProductType

* Don't default to the standard-product-template for variations

* Update changelog

* Accept null in getLayoutTemplateId

* Fix edit variable product test

* Rename hook

* Revert changed logic to avoid regressions

* Increment useProductTemplate logic

* Default to standard-product-template instead of undefined when no matches

* Re-import Features class

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-06-07 19:48:20 +00:00
Corey McKrill 7c2b171b36
Ensure attribute slugs are properly handled in the Products REST API controller (#48198)
* Ensure attribute slugs are properly sanitized when setting

* Update approach to avoid breaking functionality in WP Admin UI

* Add changelog file

* Add unit test
2024-06-07 14:14:46 -05:00
Veljko V 31e8b6cc6b
Fix flaky filling product price in merchant/products/block-editor/create-variable-product-block-editor.spec.js (#48276)
* Fix flaky filling product price

* Add changelog
2024-06-07 09:18:27 -07:00
Tom Cafferkey 5bc915e811
Product Gallery: Prevent block from being registered on the post editor (#48228)
* Prevent ProductGallery block from being registered on the post or page editor

* Add product gallery to widget blacklist

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

* Update changelog

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-07 13:51:04 +00:00
Damián Suárez b019aa2700
PFT: introduce controller and initialize it (#48221)
* introduce super super base  product form template

* introduce ProductFormsController controller

* initialize PFT (product form template)

* changelog

* do not use clas prop to store controller

* show temporarely the Product Form CPT in the UI

* migrate also when plugin is installed

* eslinting

* minor code refactoring

* check $hook_extra param is defined

* introduce $product_form_templates private prop

* eslinting

* bump simple template version

* rename class method

* pick the action when plugin action
2024-06-07 14:37:21 +01:00
rodelgc 40c7cc1db6
Delete changelog files for 48231 (#48279) 2024-06-07 21:26:32 +08:00
Thomas Roberts 89bcbc7915
Apply lint fixes to payment method integration documentation (#48226) 2024-06-07 04:26:09 -07:00
github-actions[bot] 6b44e366f1
Delete changelog files based on PR 48235 (#48259)
Delete changelog files for 48235

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-06-07 19:11:46 +08:00
Alba Rincón bff253d6dc
CYS Patterns: exclude testimonial patterns using jetpack (#48233)
* CYS Patters: exclude testimonial patterns using jetpack

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-07 11:45:09 +02:00
Alba Rincón 3a28c8ce7b
CYS > Ensure that after installing fonts or patterns the user lands back in the same CYS section (#48227)
* Fix crash when currentTemplate is null

* Redirect to the proper section after installing fonts or patterns

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-07 11:38:46 +02:00
Karol Manijak 5151546159
Update test adding blocks (#48211)
* Simplify the list of blocks to test and order them alphabetically

* Add missing blocks in test checking if they can be inserted

* Remove Coming Soon that's not available yet

* Add changelog

* Improve specificity of the Reviews by Product test

* Get better selector for Reviews by Product placeholder

* Exclude Product Gallery (Beta) - not intended to be used in post

* Fix alphabetical order
2024-06-07 10:04:15 +02:00
Hsing-yu Flowers 9032c9d954
Add error class to checkout endpoint response (#47489)
* Add error class to checkout endpoint response

* Check if previous exist before using it

* Remove assigned empty array to the additional data

* Create initial additional data state

* Fix exception not escaped linting error

* Get Exception class when WP_DEBUG is defined and true

* Add hook docblock comment

* Add phpcs disable missing since comment

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-07 13:20:33 +05:30
Jorge A. Torres 7f75aa7487
Add `original_post_status` to HPOS order edit screen (#48196)
* Include "original_post_status" with prefixed order status on HPOS edit screen

* Add changelog

* Fix PHPCS issue
2024-06-07 13:19:05 +05:30
Ilyas Foo 60ca86e31c
Add unit tests for 4 wcadmin tracks (#47876)
* Add unit test for pageview on non-embedded layout component

* Add tracks test for payments welcome page

* Add test for task completion track

* Update completion track to use get_json instead for more accurate coverage

* Changelog

* Lint

* Add test for tasklist item click

* Change test name
2024-06-07 15:14:26 +08:00
RJ 52e2e9f864
dev: core profiler xstate v5 migration (#48135)
* updated core profiler to xstate v5
2024-06-07 15:06:40 +08:00
Adrian Duffell 2583289197
Enable Launch Your Store feature flag in 9.1 (#48244)
* Revert "Disable Launch Your Store feature flag in 9.0 (#48231)"

This reverts commit 76d2b205e5.

* Re-add the previous changelog

* Update version number in db update

* Add changelog
2024-06-07 13:49:55 +08:00
Jonathan Lane 8efb1d3c3d
Add a skipped tests custom reporter for e2e tests (#48195)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-06-06 23:48:20 +03:00
Matt Sherman 17b73ad463
Product Editor: Move variation pricing fields to General tab (#48155) 2024-06-06 16:44:27 -04:00
Adrian Duffell 76d2b205e5
Disable Launch Your Store feature flag in 9.0 (#48231)
* update: lys feature flag off (#46852)

* Revert db update

---------

Co-authored-by: RJ <27843274+rjchow@users.noreply.github.com>
2024-06-06 13:11:31 -07:00
Adrian Moldovan 8fc6970b90
[ci] Merge test jobs into a single generic job (#48175) 2024-06-06 21:50:52 +03:00
Fernando Marichal 15b9805704
Revert customer-effort-score-tracks feature flag removal (#48235)
* Revert "Remove customer-effort-score-tracks"

This reverts commit 079d1fc6b6.

* Add  changelog
2024-06-06 15:27:10 -03:00
Veljko V afdd6e1cd5
Improve editor util for inserting blocks via shortcut in e2e test suite (#48225)
* Improve inserting blocks via shortcut and update relevant tests

* Add changelog

* Update util function

* Switch fill to pressing to avoid flakiness
2024-06-06 09:04:26 -07:00
Tom Cafferkey 794562dd39
Product Rating: Hide rating stars and counter from the inserter (#48229)
* Hide rating stars and counter from the inserter

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-06 16:01:53 +00:00
Veljko V 469dede5b1
Fix flaky merchant product attribute e2e test (#48230)
* Fix flaky merchant product attribute e2e test

* Add changelog
2024-06-06 08:56:27 -07:00
Calvin Rodrigues 562e791978
Fix minicart icon cursor on hover in site navbar (#46996)
* Fix minicart icon cursor on hover in site navbar

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-06 16:54:48 +02:00
Luigi Teschio 5e6c7e1e67
CYS: Fix Loading Screen E2E flaky test (#48214)
* CYS: Fix Loading Screen E2E flaky test

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-06 15:40:20 +02:00
github-actions[bot] 9b179cf498
Delete changelog files based on PR 48163 (#48218)
Delete changelog files for 48163

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-06-06 18:44:42 +08:00
Jorge A. Torres f35a7945a4
Make `BatchProcessingController` a bit more robust (#48078)
Adds a "retry" mechanism to our batch processing system and also logging for failures.
2024-06-06 12:43:21 +02:00
Barry Hughes 5911304fd7
Remove the potential for product attribute updates to unintentionally reset various values to their defaults. (#48120) 2024-06-06 12:37:36 +02:00
Luigi Teschio 621800d583
CYS: Fix crash homepage (#48205)
* CYS: Fix crash homepage

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

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-06 09:30:37 +00:00
Joey Kudish 506dac269e
Replace truthy check with isset when setting default checkout field value (#48031)
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
2024-06-06 01:55:34 -07:00
Alba Rincón d2046b1573
Update copy for the CYS intro tour (#48202)
* Update copy for the CYS intro tour

* Add changelog
2024-06-06 09:29:26 +02:00
Luigi Teschio 84c12e1501
CYS: Add the Delete button to the Block Toolbar (#48143)
* CYS: Show popover when the user clicks on the pattern

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

* fix errors

* add documentation

* fix calculation

* improve performance

* remove not necessary else branch

* restore pnpm-lock

* improve function naming

* fix label

* improve logic

* remove dispatch

* remove console.log

* fix setLogoBlockIds

* CYS - BlockToolbar: Add Delete button

* fix import

* no show toolbar

* fix build

* not allow click on no blocks placeholder

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

* remove not necessary comment

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-06 09:25:07 +02:00
Moon d86a90ba9e
Only accept return_url when do_update_woocommerce is present (#48163)
* Accept return_url only when do_update_woocommerce exist

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

* Update 48163-fix-db-update-redirect-issue

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

* Update plugins/woocommerce/changelog/48163-fix-db-update-redirect-issue

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

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

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2024-06-06 14:50:43 +08:00
Manzur Ahammed 22309f0484
Render notice about payment method (#47141)
* fetch notice from woocom for connected store

* show payment mehtod notice on setting page

* Combine missing payment method and expiring notice

* Shorter TTL for notices transient

---------

Co-authored-by: Akeda Bagus <akeda.bagus@automattic.com>
2024-06-06 10:23:03 +07:00
Chi-Hsuan Huang 391ab0f81a
Optimize text wrapping prevent orphans (#48131) 2024-06-06 09:42:06 +08:00
Vedanshu Jain 9b8b79e755
Add DISTINCT to query in `wc_customer_bought_product` for smaller response. (#48139)
* Add distinct for smaller response from DB.

* Add changelog.
2024-06-05 16:35:21 -05:00
Damián Suárez 4acb036cfd
PFT: create a new `product_form` CPT (#48073)
* register product_form CPT

* changelog

* change icon

* register `product_form` only when flag is enabled

* doc `woocommerce_register_post_type_product_form`

* eslinting
2024-06-05 21:10:10 +01:00
Adrian Moldovan 7fb40ffc0b
[testing workflows] Migrate release checks to ci.yml (#48113)
* Deprecate pr-smoke-test.yml

* Add configs for each environment

* Add scripts

* Add arguments to playwright command

* Update pnpm scripts and existing e2e projects

* Fix shellcheck warning

* Update test env start for Gutenberg stable run

* Add changelog

* Remove unused var

* Set the USE_WP_ENV var

* Configure daily e2e jobs

* Rename some steps

* Add release checks jobs and deprecate  smoke-test-release.yml

* Deprecate  smoke-test-release.yml

* Add tests-release-checks.yml to trigger ci.yml on push to tags

* Add the pull_request trigger to test the workflow

* Remove the pull_request trigger to test the workflow

* Add the pull_request trigger to test the workflow

* Add the tag input in ci.yml

* Remove import and use core reference

* Only build if build-plugin is true

* Use release-artifact instead

* Split setup-monorepo step

* Use tag: 'nightly' to test

* Use inputs.tag directly in the wp-env setup step

* Add script to override the wp-env config

* Run the env config script in ci

* Set the artifact name

* Fix workflow syntax

* Add changelog

* Validate RELEASE_TAG and ARTIFACT_NAME

* Use real ref type and name

* Use real ref type and name

* Use real ref type and name

* Use github context instead

* Test with 9.0.0-beta.2

* Add push to tags trigger directly in ci.yml

* Configure one job to run with nightly-checks

* Remove empty lines

* Format events array one element per line

* Format events array one element per line
2024-06-05 13:02:54 -03:00
Alba Rincón 88cbceb6fa
[CYS] Update the intro page (#46916)
* Change the modal condition to check if the theme is a block theme

* Only switch to TT4 if the theme is not a block theme

* Remove unnecessary code

* Add new Intro cards when the theme is customized

* Redirect to the customizer if the active theme is a classic one

* Update the "Start designing" link depending on the type of theme

* Fix lint errors

* Fix more lint errors

* Fix tests

* Remove only

* Add tests for the customize button

* Update copy

* Fix lint errors

* Try to fix tests

* Fix tests

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

* Remove commented out css code

* Fix tests

* Remove unused

* Add margin to the cards

* Change active theme has mods by customize task completed

* Add events to the new intro page

* Fix color palette tests

* Remove unused 'fetchActiveThemeHasMods' function

This fixes the "select( 'core' ).getCurrentThemeGlobalStylesRevisions() is deprecated since version 6.5.0" warning

* Revert allowing any block theme in the assembler

* Prevent other block themes to go to the assembler

* Fix linting errors, restore test

* Remove only from test

Co-authored-by: Luigi Teschio <gigitux@gmail.com>

* Fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2024-06-05 16:54:29 +02:00
Manish Menaria 307d893549
WooCommerce Blocks: Added a GitHub Action to create issues for flaky E2E tests (#47758)
* Add flaky test reporting and issue creation for Blocks

This commit introduces the functionality for identifying and reporting flaky tests within our CI workflow.
- The reporter captures flaky test results and saves them to `flaky-tests` directory.
- If a test fails initially but passes upon retries, it is marked as flaky and a corresponding report is generated.
- The workflow creates GitHub issues for flaky tests, aiding in better visibility and tracking of these intermittent issues.

1. **Workflow Changes**:
   - **Archive flaky test reports**: Adds a step to archive flaky test reports generated during the test runs.
   - **Merge flaky test reports**: Introduces a new step to merge all flaky test reports from different shards.
   - **Create GitHub issues for flaky tests**: Implements a job that uses the `@wordpress/report-flaky-tests` package to create GitHub issues for detected flaky tests when a PR is not in draft state and flaky test reports are present.

2. **New Flaky Test Reporter**:
   - Adds `flaky-tests-reporter.ts` that defines a custom Playwright reporter for identifying and recording flaky tests.

3. **Playwright Configuration**:
   - Updates `playwright.config.ts` to include the new flaky tests reporter in the list of reporters when running in CI.

4. **Demo Tests**:
   - Adds `demo.spec.ts` containing sample tests to validate the flaky test reporting functionality.

Implementing this feature will help us track and address flaky tests more efficiently, ensuring more stable and reliable test suites.

* Remove draft condition for testing

* 'Merge failures artifacts' job shouldn't touch flaky test artifacts

* Try fixing if condition

* Add required permissions

* Let's try providing all the permissions

* Let's try providing all the permissions

* Create flaky tests issues when PR is merged with trunk

* Update if condition

* Run action for specific paths only

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

* Remove Demo file

* Remove Demo file

* Use commit hash to use exact version of the script

* Replace label with team: Kirigami & Origami

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-05 19:49:28 +05:30
Alba Rincón 7a3cbcded3
CYS > Patterns Migration: Ensure a message is displayed if the user did not allow fetching patterns via API and/or they are unavailable (#48095)
* Add the `Want more patterns` opt in message when tracking is not allowed

* Add notice for offline user

* Add new internal endpoint to fetch patterns

* Introduce a new step in the state machine to synchronously fetch patterns in the flow

* Remove unnecessary initialization

* Add new endpoint to check the patterns PTK availability

* Add `isPTKPatternsAPIAvailable` to context

* Add patterns opt in tracking message to homepage section

* Add tests

* Fix linting errors

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

* Fix typo

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-05 15:09:35 +02:00
Luigi Teschio 50b29d20f7
[Experimental] [CYS - Full Composability]: Add tooltip when user clicks on pattern (#47583)
* CYS: Show popover when the user clicks on the pattern

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

* fix errors

* add documentation

* fix calculation

* improve performance

* remove not necessary else branch

* restore pnpm-lock

* improve function naming

* fix label

* improve logic

* remove dispatch

* remove console.log

* fix setLogoBlockIds

* fix build

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-05 12:27:35 +00:00
Veljko V 1f736a0a22
Fix flaky e2e publishing created pages and posts (#48162) 2024-06-05 12:26:44 +03:00
Albert Juhé Lluveras f9281ae895
Only load 'productCount' and 'experimentalBlocksEnabled' settings in admin (#48152)
* Only load 'productCount' setting in admin

* Only load 'experimentalBlocksEnabled' setting in admin

* Add changelog file

* Update WcBlocksConfig types
2024-06-05 11:20:35 +02:00
Tom Cafferkey 5fbfe25f58
FlexSlider: Trigger custom manual event (#48137)
* Check watchedEvent is part of the allowed eventTypes

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

* Trigger custom event

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-05 10:00:14 +01:00
Sam Seay 2d4295469d
Remove all usage of WOOCOMMERCE_BLOCKS_PHASE and introduce BUNDLE_EXPERIMENTAL_BLOCKS (#47807) 2024-06-05 20:14:16 +12:00
Damián Suárez 6fed682db8
WooCommerce: introduce `product-editor-template-system` feature flag (#48136)
* register product-editor-template-system flag

* changelog
2024-06-04 18:49:31 +01:00
Jorge A. Torres db815b628e
Add CLI tool to toggle HPOS compatibility mode (#48117)
* Add changelog

* Add CLI tools to enable/disable compat mode

* Appease linter

* Rename command
2024-06-04 10:19:54 -07:00
Ivan Stojadinov dd5c69b46b
Update stable tag to 8.9.2 (#48160)
woorelease: Update stable tag to 8.9.2
2024-06-04 19:01:31 +02:00
Vedanshu Jain 67d0348cbe
Move the tracker init under defensive check (#48056)
* Move the tracker init under defensive check to prevent accidental miuse in future.

* Add changelog.
2024-06-04 11:35:12 -05:00
Albert Juhé Lluveras 4ce5b6274f
Add 'template_name' labels to Product post type and Product Category and Product Tag taxonomies (#48106)
* Add 'template_name' labels to Product post type and Product Category and Product Tag taxonomies

* Add changelog file

* Remove Single Product template name
2024-06-04 16:16:32 +02:00
github-actions[bot] 7dbb910c29
Delete changelog files based on PR 48109 (#48145)
Delete changelog files for 48109

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-06-04 22:07:38 +08:00
Luigi Teschio 2698eabcbf
CYS: Ensure that toolbar appears only when the homepage sidebar is open (#48115)
* CYS: Ensure that toolbar appears only when the homepage sidebar is open

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

* CYS: Ensure that toolbar appears only when the homepage sidebar is open

* use usequery hook instead of navigation API

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-04 14:11:10 +02:00
Vlad Olaru 54a2466f32
Fix WooPayments incentives allowed promo notes logic (#48105)
* Fix WCPay incentive allowed promo notes logic

The WCPay promo notes need to be added to the allowed
list regardless if WCPay is installed and active.
We will respect marketplace suggestions and promo
dismissal settings.

* Added changelog entry
2024-06-04 13:34:11 +03:00
Karol Manijak 7d3309dc6c
Related Products: hide unusable options from Inspector Controls (#47845)
* Hide unusable options from Related Products block

* Add changelog

* Fix the dscription of Single Product template compatibility layer tests

* Add E2E test

* Replace editorUtils with editor in E2E tests

* Fix typo

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Fix typo

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
2024-06-04 11:51:27 +02:00
Albert Juhé Lluveras 017b01acf7
Minor improvements to BlockTemplatesController instantiation (#48107)
* Fix wrong comment in BlockTemplatesController class docs

* Remove unused function parameters

* Code style

* Add changelog file
2024-06-04 09:23:23 +02:00
Sam Seay 8696a2f17c
Fix an e2e test that was merged incorrectly in #47526 (#48122) 2024-06-04 18:14:31 +12:00
Ilyas Foo c53e0282a3
Fix missing "discover more" url in LYS tour (#48109)
* Add URL to discover more link

* Changelog
2024-06-04 10:33:39 +08:00
Adrian Moldovan 9b251ce318
[testing workflows] Add test environments and deprecate the daily e2e workflow (#48101)
* Deprecate pr-smoke-test.yml

* Add configs for each environment

* Add scripts

* Add arguments to playwright command

* Update pnpm scripts and existing e2e projects

* Fix shellcheck warning

* Update test env start for Gutenberg stable run

* Add changelog

* Remove unused var

* Set the USE_WP_ENV var

* Configure daily e2e jobs

* Rename some steps
2024-06-03 14:12:45 -07:00
Jonathan Lane 2a912b50ae
Test to initiate connection to WooCommerce.com (#48028)
Test to connect to wc.com

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-06-03 13:25:07 -07:00
Alexandre Lara b702fb1288
[Experimental] Product Filters Redesign: Hide individual filter blocks from the Block Inserter (#47526)
* Hide individual filter blocks from the inserter

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

* Adjust E2E tests to check for hidden filters

* Fix file conflict

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: roykho <roykho77@gmail.com>
2024-06-03 12:26:21 -07:00
Lucio Giannotta 45cbc41f65
Move registration of block categories on the server side (#47836)
Previously, we registered block categories on the client-side, leading to them not
being available until client initialization. This meant, for example, that hooking
external blocks to our categories would result in a warning.

With this change, we register the categories server-side, and only update them
on the client-side to attach the SVG icon. This is the recommended approach
in the Gutenberg docs, to make sure we use the SVG primitive, which affords some
accessibility features.
2024-06-03 20:34:41 +02:00
Thomas Roberts b0db3aeab4
Update payment method integration links for improved a11y and not to point to WC Blocks repo (#47936) 2024-06-03 11:29:11 -07:00
Thomas Roberts bb92392d9f
Apply spacing improvements to the Checkout block (#47565) 2024-06-03 11:18:42 -07:00
Adrian Moldovan d4a4590ed6
[php tests] Skip test_order_updated_webhook_delivered_once (#48064) 2024-06-03 10:04:18 -07:00
Veljko V 3d3945652e
Fix flakiness in e2e checkout block and launch your store tests (#48016)
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-06-03 17:08:10 +03:00
Roy Ho f7ef2ca91b
Add a higher priority z-index to coming soon banner (#48082)
* Add a higher priority z-index to coming soon banner

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-03 06:05:54 -07:00
Niels Lange 93214eeb2b
[Enhancement]: Block-based checkout input fields style updates (#46362)
* Adjust border and box-shadow color for textual inputs

* WIP: Style checkboxes

* Vertically center checkmark

* Adjust focus outline width

* Adjust selected checkbox background in light mode

* Adjust background color of selected radio button

* Add chevron icon to dropdown fields

* Add changelog

* Fix CSS lint issues

* Adjust outline width

* Revert checkbox styles

* Adjust input field height and label size

* Revert box-shadow styles

* Add spacing between coupon title and coupon code

* Simplify onFocus and onBlur

* Fix outline width when focusing combobox

* Ensure chevron points down after selecting value

* Adjust outline color of focused delivery option

* POC: Use currentColor for focus states
2024-06-03 18:46:08 +07:00
github-actions[bot] 9fb0aacc25
Delete changelog files based on PR 48077 (#48093)
Delete changelog files for 48077

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-06-03 16:31:27 +08:00
Bart Kalisz 44efb7ffac
Blocks E2E: Use layout-based selectors in Thumbnails block tests (#47904)
* Use layout-based selectors in Thumbnails block tests

* improve test readability

* add changelog entry
2024-06-03 10:26:27 +02:00
Seghir Nadir b4efa72b07
Revert "Add phone number to my account shipping address. (#47062)" (#48077)
* Revert "Add phone number to my account shipping address. (#47062)"

This reverts commit 4840af874a.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-06-03 09:11:02 +02:00
Adrian Moldovan d2bde1368a
Tweak the changes configuration for e2e and api tests (#48067) 2024-05-31 07:49:49 -07:00
Roy Ho b85e1aa402
Use correct AND expression (#48011)
* Use correct AND expression

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-31 05:23:57 -07:00
Barry Hughes 9403cc46ba
Do not update the `last_access` field of API keys unnecessarily. #47912) 2024-05-31 12:44:01 +02:00
github-actions[bot] c44af56029
Delete changelog files based on PR 47994 (#48043)
Delete changelog files for 47994

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-31 16:51:34 +08:00
github-actions[bot] be89612237
Delete changelog files based on PR 47004 (#48041)
Delete changelog files for 47004

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-31 16:36:47 +08:00
Luigi Teschio 0712c6037b
Add To Cart Form: Improve the default style and add the `Stepper` style (#47664)
* Add To Cart Form: Improve the default style and add the Stepper style

* fix height button when no variation is selected

* not allow the user to set 0 as value of the input

* format css

* fix padding

* format css

* fix CSS

* unset margin to align with the button
2024-05-31 10:25:04 +02:00
github-actions[bot] 2b319684e2
Delete changelog files based on PR 47798 (#47982)
Delete changelog files for 47798

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-31 16:20:35 +08:00
Chi-Hsuan Huang 8cbf2356ff
Update LYS survey completion track prop names (#47985)
* Update survey completion track in Congrats component

* Add changelog

* Update prop name

* Fix survey score
2024-05-31 15:06:45 +08:00
Chi-Hsuan Huang c49960df74
Fix coming soon footer banner doesn't display properly on tablet and mobile (#47980)
* Fix coming soon footer banner doesn't display properly on tablet and mobile

* Add changelog

* Fix test

* Revert button text change

* Revert test change
2024-05-31 15:05:59 +08:00
github-actions[bot] 239d33d70e
Delete changelog files based on PR 47871 (#47946)
Delete changelog files for 47871

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-31 15:03:19 +08:00
Karol Manijak fe30778293
Increase product excerpt default length in Single Product template and block (#47651)
* Increase the length of Product Summary block (core/post-excerpt variation)

* Add changelog

* Bring back the Product Summary variation to original length

* Increase the Product Summary length to max 100 words in Single Product template and block

* Increase the Product Summary length to max 100 words in Single Product block

* Update tests

* Change the attribute type froms tring to niumber as expected
2024-05-31 08:19:06 +02:00
Patricia Hillebrandt 5dd7713346
[Performance]: Replace `classnames` usage with `clsx` (#47760)
* Replace classnames with clsx within woocommerce-blocks.

* Undo unnecessary change to getClassnames const.

* Replace classnames with clsx within woocommerce-admin.

* Add changelog.

* Update the pnpm lock file

* Address lint.

* Address lint errors for the block-library.
2024-05-31 05:49:36 +02:00
Chi-Hsuan Huang 38dbde4ba8
Clean up tasklist progression headercard experiment (#47983)
* Clean up tasklist progression headercard experiment

* Add changelog
2024-05-31 11:45:12 +08:00
Manzur Ahammed a7ade5d2dc
Show notice for expired and expiring subscriptions in settings and in-app extensions page (#47004)
* show notice on WC core about subs expired

* add notice in wc core my subscription page

* dismiss subscription notice

* add rest api for dismiss subscription notioce

* dismiss notice permanently

* code refactor

* fix issue in expired subs

* not showing expiring subs notice if expired sub notice render

not showing expiring subs notice if expired sub notice render

* fix lint

* added changelog

* update comment

* fix js lint

* update response

* added new endpoint for notice

* update the endpoint URL

* update the endpoint URL

* show notice after one month

* add css class for refactor

* fix lint

* Add missing callback after the merge

* check plugin is installed on current site

* add comments, and fix missing price

* fix lint

* remove unnecessary duplicate asset load

* fix notice so that it only trigger dismiss API on notices close

* localize the renew product price

* track events in the wc settings page

* Use the correct field product_regular_price instead of product_price

* Add missing period in the notice message

* add nonce to the dismiss notice API

* extract dismiss notice API call to different code

* extract expired and expiring component to 1 component

* add track events for tsx components

* fix nonce checking

* fix lint

* fix lint

* enrich the button and hyperlink url to contains the product_id of expiring / expired subscription

* fix lint

* fix lint

---------

Co-authored-by: Akeda Bagus <akeda.bagus@automattic.com>
Co-authored-by: prahesa.setia <prahesa.kusuma.setia@automattic.com>
2024-05-31 08:34:36 +07:00
Moon 04a5e67d88
LYS - Delete WooPay test orders on launch (#47832)
* Add woopayments/test-orders-count endpoint

* Load test order count

* Call deleteTestOrders

* Remove test code

* Use wc_get_orders to retrive test orders

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

* typecast deleteTestOrders

* Type removeTestOrders input

* Remove woopayment activation check -- do not need as we are using wc_get_orders

* Add tests for test order count and delete endpoints

* Delete test class

* Add tests for test order count and delete endpoints

* Lint fixes

* Lint fixes

* Lint fixes

* Remove unused import

* Fix timing issue with counting test orders

* Add hasWooPayments guard

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: rjchow <me@rjchow.com>
2024-05-30 16:19:30 -07:00
Barry Hughes 3bf01a50d3
Fix the permissions check for customer downloads REST API endpoints. (#47854)
Ensures the customer ID is actually retrieved during a permissions check.

Fixes #27109
2024-05-30 16:04:20 -07:00
Manish Menaria 4bee1547b7
Fix: "On Sale" collection isn't displaying on Editor side (#47994)
* Fix the issue

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

* Add E2E test to cover this regression

* Fix: On sale collection should be visible after refresh in Post

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-30 21:55:49 +05:30
github-actions[bot] 8519e621e4
Delete changelog files based on PR 47987 (#48006)
Delete changelog files for 47987

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-30 23:08:13 +08:00
github-actions[bot] c90b1af1b3
Delete changelog files based on PR 47938 (#48004)
Delete changelog files for 47938

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-30 22:58:56 +08:00
Jorge A. Torres 9766816b80
Handle `screen-reader-text` on e-mails (#47738)
* Add changelog

* Remove 'screen-reader-text' elements from e-mails using XPath

* Undo screen-reader-text removal via XPath

* Add screen-reader-text CSS to e-mail styles

* Remove screen-reader-text from e-mail CSS template

* Introduce "must use" styles for e-mails

* Document filter
2024-05-30 14:16:00 +00:00
Patricia Hillebrandt 1d593e3d89
Update pnpm lock file with react 18 (#47993)
* Update the pnpm lock file

* add changelog
2024-05-30 13:24:39 +02:00
Damián Suárez ac6fe9f933
Product Block Editor: populate shipping class slug automatically (#47896)
* extend shipping_classses with '/suggest-slug' endpoint

* generate slug automatically

* changelog

* jsdoc

* polish setting and pulling the slug

* replace checkbox by button

* reword slug inout label with "Slug"

* add slug help

* use prefix input property

* isPrimary is deprecated. Use "variant" instead

* fixing typo. props to @mdperez86
2024-05-30 12:05:34 +01:00
louwie17 b0a1787304
Revert some changes around class loading (#47987)
* Revert some changes around class loading

* Add changelog
2024-05-30 07:22:59 -03:00
Albert Juhé Lluveras 712ffa3381
Add zoom and flex slider functionatility gallery images for variable products with missing Product Image (#47714)
* Add zoom functionatility to Single Product gallery images when main Product Image is missing

* Alternative approach

* Add changelog file

* Still add placeholder class for extra backwards compatibility

* Bump template version

* Remove unnecessary class name change

* Fix wrong type
2024-05-30 10:41:05 +02:00
Néstor Soriano c6424c09d1
Make the plugin autoinstall process more robust (#47798)
* Fix PluginInstaller::install_plugin_core so it works on Windows

* Wrap the autoinstall of the Legacy REST API plugin in try-catch block
and log any exception thrown

* Make sure that the wc_installing transient is deleted even if install fails
2024-05-30 09:01:47 +02:00
Ilyas Foo c9752f1eaf
Fix analytics chart previous year data when date range includes 29 Feb (#45874)
* Temp commit

* Clean up unused codes and streamline logic

* More cleanups and add comment

* Better naming and fix logic

* Rename and comment

* Changelog

* Changelog

* Lint

* Moved leap year utils to date package, added tests

* Moved functions to utils, add tests

* Add more test

* Fix changelog
2024-05-30 12:54:00 +08:00
Ilyas Foo 98b32b5ecc
Fix getPreviousDate default behaviour to compare previous year (#47951)
* Add default compare previous_year and add tests

* Changelogs
2024-05-30 11:31:10 +08:00
Paul Sealock a39ca21df5
[LYS] Add woocommerce_coming_soon_exclude hook (#47787) 2024-05-30 10:58:14 +12:00
Toby Herbert 0f21660277
Prevent the possibility of unpublished coupons from being available (#47739)
* Clean up the cache when a coupon is updated

When the coupon’s status transitions from publish to future, the ‘coupon_id_from_code’ cache entry needs to be deleted otherwise the coupon will remain available for use.

* Remove coupon cache entries when not published

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

---------

Co-authored-by: Toby Herbert <tobyherbert@nialtoservices.co.uk>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-29 17:31:02 -05:00
Jonathan Lane 2f4c9ecf57
Update pnpm lock file with react 18 (#47973)
* Update pnpm-lock file with new react

* Changelog

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-29 17:03:48 -03:00
Moon 8cdd549038
Use LYS API endpoint for woocommerce_admin_launch_your_store_survey_completed option (#47915)
* Add status-completed endpoint

* Use new status-completed endpoint

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

* Revert back unwanted changes

* Cache /wc-admin/launch-your-store/survey-completed call

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-29 11:14:20 -07:00
louwie17 494e65f77b
Fix tracking files being loaded on the front end (#47938)
* Only init WC Site Tracking if in admin or a rest request

* Add changelog

* Refactor tracks logic

* Create helper function store store api requests and make use of this

* Move conditionals back to woocommerce class

* Remove use of is_rest_api_request within is_store_api_request

* Fix lint errors

* Add check to see if WC_Tracks exist

* Also include tracking in CLI

* Make use of wc_admin_record_tracks_event instead of WC_Tracks directly
2024-05-29 14:06:42 -03:00
Jorge A. Torres e0455f86ed
Add `woocommerce_order_note_deleted` hook (redux) (#47916)
* Add `woocommerce_order_note_deleted` hook for a successful order note delete

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

Co-authored-by: Jorge A. Torres <jorge@0xbad.com>

* Include `order_id` in order note object

* Introduce `woocommerce_order_note_deleted` hook

* Appease linter

* Adjust unit test

* Add changelog

---------

Co-authored-by: EVOKE <evoke.lektrique@gmail.com>
2024-05-29 09:42:48 -07:00
Sam Seay 82f5b84a80
Remove isFeaturePlugin and flag code from FeatureGating class (#47866) 2024-05-30 02:50:09 +12:00
Fernando Marichal 88970a72a9
Fix product tracks when importing (#47857)
* Fix product tracks when importing

* Add changelog

* Fix lint

* Fix lint

* Fix source value
2024-05-29 10:54:07 -03:00
Manish Menaria bb3f38a3d8
Fix: Product Collection block does not display when editing template/post (#47871)
* Fix issue where Product Collection wasn't showing anything

- Moved queryId logic to a new `useQueryId` custom hook to encapsulate the logic.
- Simplified attribute setting in `useEffect` by using a default attributes value.
- Utilized `fastDeepEqual` to check for attribute equality

These changes fix the issue where the Product Collection block did not display properly in the template editor, ensuring consistent rendering of products.

* Add comment

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

* Remove leftover comment

* Add e2e tests for Product Collection block visibility after refresh

Added end-to-end tests to verify the visibility of the Product Collection block after page refresh in both Product Archive and Post contexts.

- Added tests to ensure the Product Collection block remains visible after refreshing the template or post editor.
- Updated existing tests to use `BLOCK_LABELS` for better readability and maintainability.

* Improve E2E tests

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-29 16:35:36 +05:30
Jonathan Lane 938c7d97dc
Fix flaky core profiler e2e test (#47917)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-29 13:27:55 +03:00
Alba Rincón 02fdd916d3
[CYS] Patterns Migration: Performance - ensure the initial request to fetch patterns from the PTK is async (#47551)
* Add PatternsToolkit class to fetch patterns from PTK

* Pass the new PatternsToolkit class to the BlockPatterns constructor

* Extract the pattern registration code to the 'register_block_pattern' function

* Extract the file patterns registration to `register_block_patterns_from_files`

* Registers patterns from ptk

* Add ids of excluded patterns (because they have jetpack deps)

* Add PTK client tests

* Filter out patterns with post_type diff than "wp_block"

* Add missing excluded pattern

* Add error log and improve error messages from the PTK client

* Extract function to register patterns to PatternRegistry class

* Extract function to register patterns from PTK

* Rename PatternsToolkitClient to PTKClient

* Extract AI related code to the AIPatterns class

* Rename test to match class name

* Add missing package dep in BlockPatterns

* Cache and register PTK patterns

* Add feature flag

* Fix linting errors

* Add tests for the PatternRegistry

* Add tests for the PTKPatternsStore

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

* Check pattern ID exists to filter

* Check title is set when registering the pattern

* Remove unnecessary code from test

* Add more patterns to the excluded list

* Add actions to reset the patterns transient on plugin deactivation and tracking option updates

* Schedule fetching pattern async when updating or activating the plugin and on allowing tracking

* Fetch patterns always async

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

* Only schedule the fetch_patterns actions if it's not pending

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

* Remove unnecessary import

* Fix tests

* Return empty array instead of error

* Fix imports and comments

* Remove unused function

* Fix lint errors

* Fix log

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-29 11:46:56 +02:00
Naman Malhotra bbeaac4892
Accessibility enhancement for the whole shop accounts section (#47144)
* Script to test Unique product sku

* Accessibility enhancement for the whole shop accounts section

* self Review changes

* added jQuery for compat - TBD

* self Review changes

* Added changelog

* Updated templae version

* Updated templae version

* Self review - Fix failing e2e

* review changes

* review changes

* review changes

* review changes

* review changes

* Added comment for more context about setTimeout
2024-05-28 16:11:19 -05:00
Jorge A. Torres 2c6a6bf1c4
Honor blank "additional content" in e-mails (vs using default text) (#47809)
* Add changelog

* Only include default 'additional content' in e-mails when it hasn't been configured

* Remove (now) unnecessary code from new order e-mail

* Simplify logic in `get_additional_content()`
2024-05-28 13:11:52 -07:00
Barry Hughes 8f7a9ced04
Add action `woocommerce_rest_delete_shipping_zone_method` (#47862)
Add action `woocommerce_rest_delete_shipping_zone_method` and remove inappropriate product review action.
2024-05-28 14:14:22 -05:00
Veljko V 0fdc4ddd7c
Fix skipped e2e tests Merchant product block editor create variable & flaky Marketing Overview (#47859)
* Improve test and unskip tests

* Add changelog

* Update tests

* Get rid of intro popup

* Update marketing overview test

* Add closing tour popup
2024-05-28 11:27:08 -07:00
Corey McKrill 3f38877a70
REST API: Update schema for rate_id property (#47779)
This changes the item schemas for Orders and Order Refunds API
endpoints to correctly specify that the rate_id property in a tax_line
object is an integer, not a string.

Fixes #32037
2024-05-28 11:13:52 -07:00
Maikel Perez 189476fcdf
Fix accessibility issues when using the keyboard to navigate/select tabs in the new product editor (#47860)
* Focus tab shows focus style

* Tabbing when inside the tabs takes you to the first focusable element inside the current tab's tab panel

* Users can press the left and right arrow keys to move between tabs

* When a tab is focused and the Home key is pressed the first tab in the list should be focused. When the End key is pressed the last tab should be focused

* Add changelog file

* Fix e2e tests

* Add changelog file

* Get last tab by index

* Fix linter errors
2024-05-28 17:44:21 +00:00
Bart Kalisz df7bb8d7b9
Blocks E2E: Clean up eslint comments after rules update (#47875) 2024-05-28 15:44:06 +00:00
github-actions[bot] b67ffdecad
Delete changelog files based on PR 47867 (#47903)
Delete changelog files for 47867

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-28 23:14:42 +08:00
Bart Kalisz c5e1639dc8
Blocks E2E: Streamline the usage of WP CLI (#47869) 2024-05-28 17:09:28 +02:00
github-actions[bot] 552195ee2e
Delete changelog files based on PR 47838 (#47898)
Delete changelog files for 47838

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-28 22:00:33 +08:00
github-actions[bot] e51dd0bb66
Delete changelog files based on PR 47589 (#47894)
Delete changelog files for 47589

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-28 21:40:38 +08:00
Alba Rincón 9075bf19a7
[CYS] Patterns Migration: Update the registration of patterns within WooCommerce, ensuring they are fetched from the relevant PTK categories (#47306)
* Add PatternsToolkit class to fetch patterns from PTK

* Pass the new PatternsToolkit class to the BlockPatterns constructor

* Extract the pattern registration code to the 'register_block_pattern' function

* Extract the file patterns registration to `register_block_patterns_from_files`

* Registers patterns from ptk

* Add ids of excluded patterns (because they have jetpack deps)

* Add PTK client tests

* Filter out patterns with post_type diff than "wp_block"

* Add missing excluded pattern

* Add error log and improve error messages from the PTK client

* Extract function to register patterns to PatternRegistry class

* Extract function to register patterns from PTK

* Rename PatternsToolkitClient to PTKClient

* Extract AI related code to the AIPatterns class

* Rename test to match class name

* Add missing package dep in BlockPatterns

* Cache and register PTK patterns

* Add feature flag

* Fix linting errors

* Add tests for the PatternRegistry

* Add tests for the PTKPatternsStore

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

* Check pattern ID exists to filter

* Check title is set when registering the pattern

* Remove unnecessary code from test

* Add more patterns to the excluded list

* Add actions to reset the patterns transient on plugin deactivation and tracking option updates

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-28 14:42:53 +02:00
github-actions[bot] 7e643ff409
Delete changelog files based on PR 46857 (#47879)
Delete changelog files for 46857

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-28 20:15:27 +08:00
github-actions[bot] e639607d65
Delete changelog files based on PR 47749 (#47874)
Delete changelog files for 47749

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-28 19:43:29 +08:00
github-actions[bot] d0c7d75763
Release: Remove 9.0 change files (#47741)
Delete changelog files from 9.0 release

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-28 19:34:27 +08:00
github-actions[bot] e343069708
Prep trunk for 9.1 cycle (#47740)
Prep trunk for 9.1 cycle with version bump to 9.1.0-dev

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-28 19:34:10 +08:00
Niels Lange dec873926d
Partially revert #45767 (#47867)
* Partially revert #45767

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

* Add test for description on checkout order summary block

* Add another test back in for order summary description

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
2024-05-28 18:25:34 +07:00
Luigi Teschio 72d7a8b929
[CYS Full Composability] Ensure that the assembler doesn't crash when the feature flag is enabled, but the site doesn't have the latest version of Gutenberg. (#47546)
* CYS: allow to the user to move the pattern

* add feature flag

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

* CYS: Add shuffle button

* CYS - add shuffle feature

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

* use WooCommerce feature flag approach

* fix lint error

* Highlight the pattern when the user hovers it

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

* CYS - Assembler: improve feature flag check

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

* improve logic

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-28 08:40:16 +00:00
Luigi Teschio 8c1173c94b
Highlight main block at hover (#47415)
* CYS: allow to the user to move the pattern

* add feature flag

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

* CYS: Add shuffle button

* CYS - add shuffle feature

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

* use WooCommerce feature flag approach

* fix lint error

* Highlight the pattern when the user hovers it

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-28 08:16:25 +00:00
Luigi Teschio abbcb94709
CYS - add shuffle feature (#47356)
* CYS: allow to the user to move the pattern

* add feature flag

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

* CYS: Add shuffle button

* CYS - add shuffle feature

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

* use WooCommerce feature flag approach

* fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-28 07:32:26 +00:00
Luigi Teschio f12d6e4726
CYS: allow to the user to move the pattern (#47322)
* CYS: allow to the user to move the pattern

* add feature flag

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

* use WooCommerce feature flag approach

* hide scrollbar on the body

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-28 08:55:14 +02:00
Paul Sealock 1c11d5a693
[LYS] Add Homescreen and Settings e2e tests (#47341) 2024-05-28 16:19:06 +12:00
Fernando Marichal 721da06b28
Fix some issues in performance tests (#47735)
* Close tour when it is open

* Use different matrix

* Fix performance include

* Add changelog

* Fix lint

* Add metrics to editor tests
2024-05-27 16:11:49 -03:00
Maikel Perez fccff3e562
Add product id to product_edit_view track in classic product edit screen (#47853)
* Add product id to product_edit_view track in classic product edit screen

* Add changelog file
2024-05-27 14:42:15 -03:00
Albert Juhé Lluveras fae960c7bf
Fix typo in some tests and comments: 'blockbased' > 'block-based' (#47851)
* Fix typo in some tests and comments: 'blockbased' > 'block-based'

* Add changelog file

* Add JSDocs types

* Replace 'block based' with 'block-based' in stock-reservation.md
2024-05-27 19:21:10 +02:00
Bart Kalisz 460d73eee0
Blocks E2E: Streamline E2E utils implementation (#47660) 2024-05-27 14:54:06 +00:00
Ilyas Foo 012f0d3418
Fix redundant confetti on LYS task congrats page (#47838)
* Add useRef to ensure confetti is only trigerred once

* Changelog
2024-05-27 21:01:40 +08:00
Luigi Teschio 977f8289af
Remove checkstyle.xml file (#47844)
* Remove checkstyle.xml file

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-27 12:16:52 +00:00
Barry Hughes 86c3f28c12
Defensive check to reduce error/warning noise when regenerating images. (#47785)
* Defensive check to reduce error/warning noise when regenerating images.

* Coding standards, remove trailing whitespace.
2024-05-27 10:35:08 +00:00
Atanas Penchev 02a0bba3f4
Slide animations always use CSS3 transitions instead of .animate() (#46564)
* Slide animations always use CSS3 transitions instead of .animate()

* Update plugins/woocommerce/client/legacy/js/flexslider/jquery.flexslider.js

Fix typo

Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>

* Changelog

* Newline

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

* Delete manual changelog

---------

Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-27 11:25:23 +02:00
Albert Juhé Lluveras ee656e1f0f
Fix two products being added to cart when Geolocate (with page caching support) was enabled and AJAX add to cart buttons disabled (#47761)
* Fix an issue that caused two products to be added to cart when Geolocate (with page caching support) was enabled and AJAX add to cart buttons disabled

* Add e2e test

* Add changelog file

* Move test to its own file

* Fix wrong default value in test reset
2024-05-27 09:54:22 +02:00
Karol Manijak 92fec889f7
Specify Product Price ancestor and simplify Product Elements ancestors (#47802)
* Extend product elements sharedConfig ancestor with Product Collection and Products (Beta)

* Utilise sharedConfig ancestor in Image block

* Utilise sharedConfig ancestor in Price block

* Utilise sharedConfig ancestor in Rating block

* Utilise sharedConfig ancestor in Sale Badge block

* Utilise sharedConfig ancestor in SKU block

* Utilise sharedConfig ancestor in Stock Indicator block

* Add changelog

* Bring back original ancestors for Summary and Title blocks

* Remove Product Price from a test as it's no longer available in global context
2024-05-27 09:15:32 +02:00
Chi-Hsuan Huang c70a09a57e
Fix core profiler extension installation track to use plugin track key for extension name (#47786)
* Update plugin installation error logger to use plugin track key for extension name

* Add changelog
2024-05-27 11:51:45 +08:00
Maikel Perez 55aafb9fc6
Remove the new old experience (#47814)
* Remove ProductTitle component

* Remove ProductSettings component

* Remove ProductMoreMenu component

* Remove ProductFormHeader component

* Remove ProductVariationFormHeader component

* Remove ProductFormFooter component

* Remove ProductFormLayout component

* Remove ProductForm component

* Remove ProductTourContainer component

* Remove AddProductPage component

* Remove ProductVariationForm component

* Remove EditProductPage component

* Remove ProductFormTab component

* Remove SingleImageField component

* Remove ProductVariationDetailsSection component

* Remove ProductVariationsSection component

* Remove DetailsSectionFills component

* Remove ImagesSectionFills component

* Remove ShippingSectionFills component

* Remove AttributesSectionFills component

* Remove PricingSectionFills component

* Remove InventorySectionFills component

* Remove product-form-fills file

* Remove product-form-variation-fills file

* Remove product-form-api-fills file

* Remove ClassicEditorIcon component

* Remove HiddenIcon component

* Remove VisibleIcon component

* Remove drag-and-drop.svg file

* Remove ProductSectionLayout component

* Remove products/constants.tsx file

* Remove new-product-management-experience feature flag

* Fix linter errors

* Add changelog files
2024-05-24 18:00:22 +00:00
Maikel Perez 4ddfd43864
Enhancement editor loading speed (#47425)
* Lazy load the PluginArea and the ModalEditor

* Remove repeated product request when editing a specific product

* Fix linter errors

* Add changelog files

* Fix linter errors

* Refactor the block editor to remove some extra rerenders

* Defer the publish button processing

* Defer the tab content render 500ms to reduce the total blocking time

* Fix linter errors

* Fix unit test and tabs unexpected rerender

* Fix linter errors

* Reduce the defered time to 300ms

* Fix get product url when the product has been duplicated since the new copy does not have permalink

* Fix the invalid unregistration of wc-admin-more-menu in the product page

* Fix compilation errors
2024-05-24 08:39:53 -04:00
Sam Seay 756bb8ccfa
Allow experimental blocks to be enabled WC Admin Features as part of removing WC_BLOCKS_PHASE (#47701) 2024-05-25 00:13:24 +12:00
79mplus Admin 4d44a6e891
Fixed shipping flat price change to free shipping when shipping cost represented using decimal separators and thousands separators (#46857)
* Fixed shipping flat price change to free shipping when shipping cost represented using decimal separators and thousands separators

* added the changelog file

---------

Co-authored-by: Saiful Islam <anandacsebd@gmail.com>
2024-05-24 13:59:56 +02:00
Paulo Arromba 86bc377977
Deprecated WC_Cart->is_coupon_emails_allowed in favour of static DiscountsUtil::is_coupon_emails_allowed (#47589)
* Deprecated WC_Cart->is_coupon_emails_allowed in favour of WC_Discounts->is_coupon_emails_allowed

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

* Created new DiscountsUtil class and moved is_coupon_emails_allowed()

* Refactored tests.

* Updated internal WC_Cart::is_coupon_emails_allowed calls and added a doing it wrong warning for 3rd party tracking.

* Linting.

* Refactored and added new asserts to DiscountsUtilTest.

* Linting.

* Linting and updated test.

* Added translation to wc_doing_it_wrong() as sugested.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2024-05-24 10:40:56 +01:00
Eason 11cb0dcf8f
Fix the issue that the React-powered admin routing page added after initialization could not be displayed (#47696)
* Fix the issue that the React-powered admin routing page added after initialization could not be displayed.

* Delay showing admin `NoMatch` to reduce the chance of flashing error message when route page is added after initialization.

* Add JS tests for the `NoMatch` page in the admin.

* Add changelog
2024-05-24 17:17:19 +08:00
Jonathan Lane 363757cbf1
Un-skip store search and core profiler tests (#47772)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-24 11:48:15 +03:00
Vishnu Gopal 7ca056051e
Fix activation limit for single license subscriptions on woocommerce.com (#47643)
* Fix activation limit for single license subscriptions on woocommerce.com

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

* Update plugins/woocommerce/includes/admin/helper/class-wc-helper.php

Add some defensive coding.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2024-05-23 20:24:10 -07:00
Chi-Hsuan Huang 433a0e19b2
Update coming soon banner text to use translation function (#47742)
* Update coming soon banner text to use translation function

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-24 02:51:07 +00:00
Jorge A. Torres 36fa4f82ed
Address responsiveness issues with order list table in admin (#47684)
Improve (HPOS) order admin list's responsiveness.
2024-05-23 13:24:03 -07:00
Veljko V d9bcf83bf0
Fix E2E shopper mini cart test (#47756)
Fix mini cart e2e test
2024-05-23 11:49:44 -07:00
Adrian Moldovan 48a2fccef0
[e2e tests] Configure snapshotPathTemplate (#47773) 2024-05-23 11:42:55 -07:00
Alexandre Lara 5d645d94e6
Product Gallery block: Fix error on revisiting template without reloading the page (#47636)
* Detect template ID from URL

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

* Add E2E test to check if block is displayed after revisiting Single Product template

* Fix E2E tests

* Fix E2E tests

* Fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-23 13:39:31 -03:00
Adrian Moldovan 835625c329
Fix reporting step for daily e2e runs (#47764)
* Add condition on github.event_name for lint jobs

* Update a file to trigger a lint job

* Update condition to run only on pull_request

* Revert test change

* Always run the Slack notification step

* Add pull_request test trigger

* Update report step

* Remove branch filter

* Try with push event and branch filter

* Pass secrets to ci.yml

* Update testIgnore pattern for Gutenberg project

* Add changelog

* Remove the test push trigger

* One more test run

* Removed push test trigger
2024-05-23 09:12:10 -07:00
Karol Manijak c318bf50f8
Fix incompability of Query Pagination block with Product Collection (#47749)
* Amend Query Pagination parent OR ancestor array and include product collection

* Rename the function and amend comment

* Add changelog

* Remove some leftovers

* Tets if it's possible to insert multiple Pagination blocks in Product Collection

* Add awaits to expects

* Update plugins/woocommerce-blocks/assets/js/blocks/product-collection/utils.tsx

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>

* Add comment explaining the condition

---------

Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
2024-05-23 13:01:57 +02:00
Seghir Nadir 34f8c65f53
only make order summary sticky when it's not longer than view (#47680)
* only sticky summary when it's not longer than view

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

* fix tests

* correctly check for height

* switch how to get top

* remove from editor

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-22 22:09:50 +00:00
Adrian Duffell 501272c51b
Add a catch-all return to LYS hub after user exits essential task (#47606)
* Add redirect to LYS on homescreen when lysTaskOpen is present

* Typos

* Fix lint issues

* Fix lint issues

* Add changelog

* Fix lint issues

* Fix lint issues

* Use isDashboardShown in effect

This required adding a check to ensure query is not an empty object

* Imporve the jankiness by moving catch-all logic to layout

* use an effect to set the session value to no

* lint

* lint

* Fix tests

* Try preventing redirects from WP menu click

* Revert "Try preventing redirects from WP menu click"

This reverts commit 8ef6dcf4dd.
2024-05-22 22:05:01 +00:00
Seghir Nadir 6c136e4e1a
normalize IDs for form fields in Checkout (#47650)
* normalize IDs for form fields and fix types

* update docs as well

* update rest of docs

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

* fix linting for document

* also align classnames

* revert to correct classname

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-22 22:54:03 +02:00
Fernando Marichal 0dc86cea9a
Fix width of the button to set the variation prices (#47682)
* Fix set variations price button width

* Add changelog

* Fix rebase deletion
2024-05-22 17:15:33 -03:00
Thomas Roberts e6bd07d465
Loop through each package to check if the chosen rate for it is valid (#47716)
* Loop through each package to check if the chosen rate for it is valid

* Add changelog
2024-05-22 21:55:31 +02:00
Veljko V b32b7049c7
Fix flaky E2E admin marketing and loading screen tests (#47665)
* Fix flaky admin marketing test

* Fix flaky loading screen test
2024-05-22 11:06:52 -07:00
Adrian Moldovan 13ab9007f6
[testing workflows] Add workflow_call trigger in CI workflow - support daily and other types of runs (#47612)
* Add workflow_call event

* Add tests-daily-run.yml

* Remove workflow version

* Update input value

* Remove secrets from caller workflow

* Rename job

* Check context

* Check context

* Check workflow_call inputs

* Override github.event_name with inputs.trigger

* Fix input name

* Add config for daily e2e tests with Gutenberg

* Update env commands for Gutenberg run

* Add disableHpos env variable in ci-utils

* Revert the trigger to push

* Revert the env variable setting in ci-jobs

* Revert the env variable setting in ci-jobs

* Rebuild utils

* Update test env start command

* Define the Gutenberg Playwright project

* Use path relative to workspace root

* Update events for test projects

* Update events for test projects

* Add changelogs

* Remove the e2e tests with Gutenberg tests from daily runs

* Set the schedule and workflow_dispatch triggers

* Add --project default flag to only run the default tests in CI

* Renamed snapshots to match the new Playwright project name
2024-05-22 11:04:44 -07:00
Seghir Nadir d2ac6ff953
Correctly attribute focus back when opening the mini cart several times (#47683)
* allow focusedOnMount element to be reset

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-22 17:03:22 +02:00
Ilyas Foo 8140a1d9c7
Fix payment task track only shown gateways (#47713)
* Fix to track only shown payment options

* Remove offline gateways and changelog
2024-05-22 22:36:12 +08:00
Thomas Roberts b7643b9b7a
Change Checkout form step numbering so it can only be toggled for all blocks, not individually per-step (#47479) 2024-05-22 07:03:48 -07:00
Thomas Roberts 845bdae5bd
Prevent Additional Checkout Fields values being shown on shortcode order confirmation (#47333) 2024-05-22 06:07:16 -07:00
Adrian Duffell da57287c56
Fix broken db update button on homescreen (#47608)
* Add handling of return url

* Use base admin URL and redirect to current page

* Update plugins/woocommerce/includes/admin/notes/class-wc-notes-run-db-update.php

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

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

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

* Changelog

---------

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2024-05-22 20:09:47 +08:00
Justin Palmer 544c843b67
Add order attribution GA4 UTM parameters (#47639) 2024-05-22 13:59:50 +02:00
Chi-Hsuan Huang ee6f69a14e
Wrap private link exclusion logic in `woocommerce_private_link` option check (#47690) 2024-05-22 19:15:37 +08:00
Karol Manijak f55e25b009
Filter by Attribute: fix potential reading property of undefined error (#47699)
* Fix reading from undefined error in attribute-filter

* Add changelog
2024-05-22 11:57:53 +02:00
Ilyas Foo 04c8941099
Add global coming soon property tracks (#47644)
* Use woocommerce_tracks_event_properties filter to append coming_soon property to tracks

* Changelog

* Remove feature check

* Remove unnecessary line
2024-05-22 17:56:31 +08:00
Chi-Hsuan Huang 90432c612e
Fix "Live Branches" item not shown in the WooCommerce menu (#47691)
* Fix live branch menu not show up

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-22 09:56:23 +00:00
Karol Manijak 313ab0eb74
Rename classic template blocks to avoid confusion (#44931)
* Rename  blocks to  to distinguish them from new blocks

* Add changelog

* Change the naming convention to XYZ (Classic)

* Update classic templates descriptions

* Fix package.json lint error
2024-05-22 10:53:43 +02:00
Vedanshu Jain 38bf02b9d3
Add support for insert_or_update and use it for concurrency. (#47610) 2024-05-22 14:19:14 +05:30
Barry Hughes bbff627d2f
Reduce number of plugin readme tags, to avoid warnings. (#47688) 2024-05-22 14:14:48 +05:30
Yan Sern 169baa2929
Entrepreneur Signup: Add Skip button to Design With AI steps. (#47667)
* Add Skip button to Design With AI steps.

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

* Use window.location.href to redirect instead.

* fix css linter errors

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
2024-05-22 08:40:31 +00:00
Paul Sealock 01bfab0527
[LYS] - Make sure LYS options are available for WooPayments (#47685)
* add viz options on wcpay screens

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

* cleanup

* lint

* wp_unslash lint errors

* disable

* linter

* more linting

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-22 16:16:35 +08:00
Chi-Hsuan Huang fb2b79f502
Fix wrong LYS site icon size (#47689)
* Fix LYS site icon size

* Add changelog
2024-05-22 16:04:15 +08:00
Ilyas Foo 7794a7ac24
Add `is-busy` animation to save changes button in settings (#47626)
* Add save button loading animation

* Changelog

* Lint

* Fix loading for shipping button

* Fix Safari UI bug

* Revert "Fix Safari UI bug"

This reverts commit 3ac72422d1.
2024-05-22 14:50:48 +08:00
Adrian Moldovan cf6e01d0d6
[ci-jobs] Add disableHpos test environment variable (#47619)
* Add disableHpos test env variable

* Update events for HPOS disabled tests

* Add pull_request event to test the env

* Remove the pull_request event

* Add changelog

* Make the disableHpos var a boolean

* Also set the env in ci.yml

* Remove console log statement

* Print woocommerce_custom_orders_table_enabled

* Run test setup script again to check output

* Capture env setup output and print it

* Get woocommerce_custom_orders_table_enabled value in test env script

* Get more details on HPOS setting

* Remove the DISABLE_HPOS logic from test env setup script

* Use DISABLE_HPOS instead of ENABLE_HPOS everywhere

* Turn off no-console and jest/no-standalone-expect eslint rules for api core tests

* Test API tests with HPOS disabled

* Fix eslint error

* Clean up debug statements

* Remove pull_request test trigger
2024-05-21 18:33:43 -03:00
Adrian Moldovan 3edf17bf22
[testing workflows] Move PHP tests with WP nighly back into ci.yml (#47568)
* Move the PHP WP: nightly tests back into ci.yml

* Add changelog
2024-05-21 18:23:38 -03:00
Maikel Perez 4c0399991a
Replace copy: List Price to Regular Price (#47658)
* Replace copy: List Price to Regular Price

* Add changelog files

* Fix md-docs linter errors and update the manifest
2024-05-21 16:28:01 -04:00
Fernando Marichal c4e1cebe84
Add Playwright performance tests to Product editor (#47590)
* Add product editor tests

* Fix post editor lint

* Add changelog

* Fix lint error

* Fix Typing test

* Add log to resultsFiles

* Fix comment

* Remove PerfUtils
2024-05-21 17:24:40 -03:00
Moon 363d761eae
Run wc_update_900_add_launch_your_store_tour_option on WC 9.0 update (#47634)
* Run wc_update_900_add_launch_your_store_tour_option on WC 9.0 update

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

* Use add_option

* Lint fixes

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-21 12:15:33 -07:00
nigeljamesstevenson 660138df8e
Update stable tag to 8.9.1 (#47681)
woorelease: Update stable tag to 8.9.1
2024-05-21 18:07:53 +01:00
Yan Sern 9a1f987381
Entrepreneur Signup: Simplify final step in CYS when entering from Entrepreneur signup flow. (#47578)
* Simplify final step in CYS when entering from Entrepreneur Signup.

* Add changelog.

* Update plugins/woocommerce-admin/client/customize-store/transitional/index.tsx

Co-authored-by: Ivan Ottinger <ivan.ottinger@automattic.com>

* Show My Home button as primary button only on Entrepreneur flow.

* Use 	'customize_your_store_entrepreneur_home_click' tracks event instead.

---------

Co-authored-by: Ivan Ottinger <ivan.ottinger@automattic.com>
2024-05-21 13:56:26 +00:00
RJ 2b69d28ecb
add: return to lys from cys (#47654)
* add: return to lys from cys

* types

* lint

* lint

* fixed task id
2024-05-21 21:45:38 +08:00
Alba Rincón 1d0ec79d43
Use the term attribute sort order for the "Filter by attribute" block (#47616)
* Use the term attribute sort order for the "Filter by attribute" block

* Allow `id` and `name_num` orderby values

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-21 15:44:08 +02:00
Jorge A. Torres 7c4ce70916
Various improvements to HPOS settings (#47370)
* Properly format order counts

* Remove superfluous tooltip

* Add "is-error" class for admin settings

* Remove unused option in DataSynchronizer

* Use non-persistent group "counts" for caching count of orders pending sync

* Drop redundant method from COT controller

* Standardize usage of <strong> in COT settings

* Drop unused import

* Allow manual sync to be stopped

* Reword messages in HPOS screen

* Make PHPCS happy

* Add changelog

* Fix unit test

* Fully deprecated DataSynchronier::get_sync_status()

* Extract translatable string to prevent duplication
2024-05-21 08:35:22 -05:00
louwie17 9213073782
Update explat experiment update (#47647)
* Update experiment name

* Add changelog
2024-05-21 10:05:09 -03:00
Jorge A. Torres 58730d0698
Fix positioning of search filter in orders admin (#47640)
* Fix orders search filter position in admin

* Add changelog
2024-05-21 16:09:56 +05:30
Niels Lange 5168a21920
Block-based checkout - Update address fields display logic (#47160)
* Add “Address line 2” toggle

* Allow apartment field to be required

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

* Rename “Apartment, suite, etc.” to “Address line 2”

* Remove unused dependency

* Add key to fragment

* Simplify keys

* Address failing e2e tests

* Change “Optional (Recommended)” to “Optional”

* Toggle address line 2 visibility in editor

* Add e2e tests

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

* Update e2e tests

* Update e2e tests

* Ensure the address 2 field stays open when the seller empties it

* Optimise hasAddress2FieldValue

* Move address 2 filed related functionality into separate component

* Rmove + sign from address 2 field links

* WIP: Introduce AddressField component

* Update AddressFields component

* Refactor AddressFields and Address2Field components

* Fix CSS lint error

* Fix JS lint error

* Fix failing e2e tests

* Fix typo in e2e tests

* Improve e2e selector

* Fix core e2e tests

* Use address line 2 label for the link text

* Lazy initialise the “isFieldVisible” state

* Remove obsolete code

* Add inline comments for clarity

* Fix JS lint error

* Improve e2e tests

* Revert "Remove obsolete code"

This reverts commit 027d6adc89.

* Adjust visibility toggle

* Delete obsolete changelog file

* Add inline comment

* Fix TS error

* Remove obsolete parts

* Solve TS warning

* Remove obsolete “fieldsRef”

* Remove obsolete “setHasFieldBeenModified”

* Address various TS warnings

* Fix link styling issue on mobile

* Fix JS lint error

* Refactor and simplify address components

* Optimise Address2Field component

* Improve inline docs

* Move ‘+’ from CSS to i18n

* Rename rest of values and pass correct onChange

* force component to remount

* remove unsed useEffect

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Nadir Seghir <nadir.seghir@gmail.com>
2024-05-21 15:48:24 +07:00
Néstor Soriano f64aec8cc6
Remove the Legacy REST API from WooCommerce core (#40627)
* Replace the Legacy REST API with a stub that always returns an error.

If the Legacy REST API plugin is installed, it will "take over"
the stub and the API will be available again without noticeable
changes in behavior.

* Move the get_endpoint_data method to WooCommerce core

This method was part of the legacy REST API package but is actually
being used to query endpoints of the new REST API, so it actually
belongs to WooCommerce core.

It has been placed in a new src/Utilities/RestApiUtil class.
The existing src/Internal/RestApiUtil class has been renamed
ro RestApiParameterUtil to avoid confussion.

* Move the register_wp_admin_settings to WooCommerce core.

This method was part of the legacy REST API package but it's needed
for certain endpoints of the current REST API, for example
settings/general/woocommerce_specific_allowed_countries

* Adjust unit tests for the removal of the legacy REST API.

Basically, some tests no longer make sense so they are removed.

* Adjust webhooks for the removal of the legacy REST API.

If a webhook is configured to compose its payload using the
legacy REST API format, and the separate legacy REST API plugin
is not installed, an exception will be thrown. This will cause
the scheduled action that does the webhook delivery to fail.

* Add warning in the webhooks settings page.

The warning will show if the legacy REST API is not available
and there's at least one plugin that is configured to be delivered
using legacy payloads. Each hook will have an exclamation symbol
next to its name in the table.

Additionally, inside the webhook edition page the legacy payload
option will display "NOT AVAILABLE" instead of "deprecated"
when the legacy REST API is not available.

* Add support for queries containing the "wc-api" variable.

These queries will return a 400 error by default, but
"woocommerce_api_request" and "woocommerce_api_(query)" actions
are available for custom processing.

* Enable the woocommerce_api_enabled option if the Legacy API plugin
is installed and the option is disabled.

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

* Mark get_woocommerce_api_url function as deprecated

* Mark $api property in WooCommerce class as deprecated

* Replace call to wc()->api->get_endpoint_data in Checkout class

Replace it with just wc()->cart, which is what the invoked
endpoint was doing in the end.

* Use get_endpoint_data to get the data from /wc/store/v1/cart

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-05-21 08:39:03 +02:00
Karol Manijak 929564da82
Product Collection: remove Beta label (#47572)
* Remove Beta label from Product Collection

* Remove unnecessary dependency in Product Collection page object

* Add changelog

* Udpate block references
2024-05-21 08:36:40 +02:00
Ilyas Foo 7c1802fefa
Update coming soon pages to use cardo and inter fonts via editor (#47613)
* Add type safety, update coming soon entire site changes for fonts

* Add conditional font to support TT24 and other themes

* Revert unnecessary change

* Changelog

* Lint
2024-05-21 13:35:12 +08:00
Manish Menaria 3a3a386e34
Fix: Product Collection block should respects 'Out of stock visibility' setting (#47537)
* Fix: Ensure Product Collection Block Respects "Hide Out of Stock Items" Setting

- Added logic to include the "Out of stock visibility" setting in the Product Collection block.
- Modified `ProductTemplateEdit` component to use the `getDefaultStockStatuses` function.
- Ensured that out-of-stock products are hidden in the Product Collection block when the "Hide out of stock items from the catalog" option is enabled.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-21 10:50:05 +05:30
Ilyas Foo 4374617d43
Fix warnings when using Storefront or non-FSE themes (#47631)
* Fix warnings from undefined

* Changelog

* Revert the fse check since it disables the fonts from working in coming soon pages
2024-05-21 11:43:25 +08:00
Justin Palmer 8541afa418
Add filter to apply Base64 encoding to order attribution cookies (#47597)
* Add filter to set Sourcebuster JS base64 configuration value

* Use Sourcebuster v1.2.0

* Changelog

* Reduce line length for linter
2024-05-21 01:56:14 +02:00
Andrew Dawes 42cb91ae3c
Fix PHP DocBlock for WC_CLI_Runner (#47599)
* Fix PHP DocBlock for WC_CLI_Runner

Fixes #47598

* Update plugins/woocommerce/changelog/fix-fix-php-docblock-for-wc-cli-runner-register-route-commands-47598

* Update plugins/woocommerce/includes/cli/class-wc-cli-runner.php

Fix phpdoc linting errors 🙄

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-05-20 15:45:02 -07:00
Paulo Arromba a9aa14e254
Remove check for logged in user on the order received page for displaying billing/shipping addresses (#47477)
* Remove check for logged in user on the order received page, enabling guest users with a valid link to visualize the order shipping/billing addresses.

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

* Update comment

* Bumped template version

* fix linting

* ignore hook for the whole file

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Nadir Seghir <nadir.seghir@gmail.com>
2024-05-20 20:38:53 +01:00
Niels Lange 622f2d3805
Remove title from checkout page (#47529)
* Remove title Checkout page templates

* Fix checkout header site title padding

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

* Fix failing e2e tests

* Fix failing e2e test

* Fix failing e2e test

* Substitute frameLocator in e2e tests

* Fix failing e2e tests

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-21 01:56:32 +07:00
Seghir Nadir c5208f7822
Only validate fields present in Store API schema (#47633)
* skip fields not present in schema

* remove from sanitize as well

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-20 19:30:13 +02:00
Thomas Roberts e87eb4e3ea
Use default state ordering in the Checkout block instead of sorting alphabetically (#46656)
* Remove deep sort of states

* Add changelog
2024-05-20 19:17:36 +02:00
Thomas Roberts d7ca80d6c8
Make shipping total in Cart/Checkout block order summaries show FREE if shipping price is 0 (#47553)
* Make shipping total show FREE if price is 0

* Make free text uppercase in order summary

* Add test to check free/paid shipping displays as free or shows price

* Add changelog

* Update E2E test to make sure shipping is selected correctly

* Update shipping cost e2e tests

* Further fixes to e2e tests
2024-05-20 18:42:54 +02:00
Seghir Nadir b938331d87
Correctly build up dynamic translation paths on Windows (#47625)
* correctly build up the hash on windows

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-20 17:31:45 +02:00
Adrian Duffell 8cbc799067
Update Core Profiler Industries (#47605)
* Update indistries list order

* Add arts and crafts

* Add sports and recreation

* Tweak size of dropdown to allow 9 items

* Add small screen size height restriction

* Add changelogs

* Update documentation

* Fix lint issues
2024-05-20 23:10:53 +08:00
github-actions[bot] cdc38bc4cc
Delete changelog files based on PR 47563 (#47621)
Delete changelog files for 47563

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-20 16:28:19 +02:00
Yan Sern 645b052376
Entrepreneur Signup: Show WordPress logo when entering Design With AI from Entrepreneur signup flow. (#47576)
* Show WordPress logo when entering Design With AI from Enterpreneur signup flow.

* Update logo on Assembler Hub.

* Really need to force it.

* Add changelog.

* Newline.

* Newline.

* Fix rebase error.

* Fix double import.

* Remove !important.
2024-05-20 15:43:24 +02:00
Barry Hughes 660b2bcb6d
If the Legacy REST API plugin is auto-installed once, do not auto-install a second time. (#47563)
* If the Legacy REST API plugin is auto-installed once, do not auto-install a second time.

* Remove unused private constant (PluginInstaller records the info we need in a sitewide option).

* Introduce the woocommerce_history_of_autoinstalled_plugins option

This option holds the same data as woocommerce_autoinstalled_plugins,
the difference is that the data in this new option is never deleted.
It's also never updated, it just holds the information of the
first autoinstall for each plugin.

* Add a migration to create woocommerce_history_of_autoinstalled_plugins

* More robust check of previous autoinstall of the plugin

* Change migration to run in 8.9.1 instead of 9.0.0

---------

Co-authored-by: Nestor Soriano <konamiman@konamiman.com>
2024-05-20 18:59:03 +05:30
Yan Sern caf1ee325b
Entrepreneur Signup: Hide site title when entering from Entrepreneur signup flow. (#47581)
* Hide site title when entering from entrepreneur signup.

* Add changelog.
2024-05-20 13:04:13 +02:00
Yan Sern ce42e92a80
Entrepreneur Signup: Hide progress bar when entering Design With AI from Entrepreneur signup flow. (#47574)
* Hide progess bar when entering Design With AI from entrepreneur signup flow.

* Add changelog.
2024-05-20 13:04:06 +02:00
Ilyas Foo 815d23bf09
Add `Cardo` and `Inter` fonts to global styles via theme json filter (#47417)
* Add global style font filter to add Cardo and Inter fonts when not available

* Changelog
2024-05-20 16:44:35 +08:00
Corey McKrill ad6eea6e00
Add an array_sum utility method to enhance PHP 8.3+ compatibility (#47595)
* Add validation for array_sum in Orders v1 controller

* Add an array_sum method to NumberUtil

* Update orders controller to use NumberUtil's array_sum

* Add NumberUtil array_sum to order item classes
2024-05-20 10:10:19 +02:00
Jonathan Lane 4d7a691953
Fix two flaky e2e tests (#47562)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-20 10:50:34 +03:00
Manzur Ahammed 7312f137d4
Display a notice for expired/expiring subscriptions along with a plugin update message. (#47076)
* add subscription expiry message on plugin list

* Update changelog

* fix lint

* refactor code

* update product price meta

* add tracks event for enable autorenew and renew subscription notices in plugin lists

* fix lint error

* check product price is set or not

* check product price is set or not

* added translator comment

* fix typo

---------

Co-authored-by: prahesa.setia <prahesa.kusuma.setia@automattic.com>
2024-05-20 03:06:03 +00:00
Sam Seay 8538ca3498
Make sure JS tests run in blocks when configs change (#47513) 2024-05-19 18:57:55 +12:00
Karol Manijak 96d951930c
Sync package.json and pnpm-lock.yaml (#47575)
* Add changes added automatically by install/postinstall

* Add changelog
2024-05-17 15:44:58 +02:00
Thilina Pituwala 52fef2c0c5
Remove old in-app marketplace pages and redirect to new in-app section (#47276)
* Remove the view file rendering old market-place page.

* Remove the function for rendering old market-place pages and introduce redirects to new in-app market-place.

* Remove unused code related to legacy market-place.

* Add exit after redirect.

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

* Redirect to search result page when a search term exists.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-17 20:19:11 +07:00
Dan Q edc22bca24
Add "Shared with you" badge to Extensions > My Subscriptions list as applicable (#46229)
* Add 'shared with you' badge

* Improve spacing where multiple badges span multiple lines

* Decrease font size of badges per new designs

* Include 'Manage on Woo.com' only for non-shared subscriptions

* Made TypeScript happier

* Add 'shared with you' badge

* Improve spacing where multiple badges span multiple lines

* Decrease font size of badges per new designs

* Include 'Manage on Woo.com' only for non-shared subscriptions

* Made TypeScript happier

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

* Addressing linter errors.

* Allow unusually-long email addresses of sharers to wrap

* Switch wordWrap for overflowWrap

Modern browesers interpret the former as an alias of the latter, including allowing the use of 'anywhere'. But the current version of https://www.npmjs.com/package/csstype only recognises 'anywhere' as valid for overflowWrap. Switching it prevents compilation errors, still exhibits the correct behavior.

* Prettier linting

* Update plugins/woocommerce/changelog/46229-add-wccom19063-in-app-shared-by-badge

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

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

* Use pointer as cursor for status popovers

* Don't focus-within the status badge popover on load (prevents ugly link focus issue)

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2024-05-17 13:22:50 +01:00
Seghir Nadir 1ae7ca5179
Make checkout sidebar (order summary) sticky on desktop (#47376)
* Make sidebar sticky on desktop

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

* limit sidebar sticky to cart only

* add useless new line

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-17 13:13:01 +02:00
Karol Manijak 40b43e8d9c
Prevent collection different than Product Catalog from being filtered (#45820)
* Prevent collection different than Produyct Catalog from being filtered

* Adjust Product Filters tests

* Split taxonomies filter into seperate filter per taxonomy

* Add changelog

* Improve onDeselect function

* Update Product Filter test handlebars so they all use Product Collection that inherits query from template

* Set Product Collection to inherit query from template in PHP unit tests

* Remove unnecessary empty space

* Add changelog

* Update tests

* Fix lint

* Update Product Collection attributes in filter E2E handlebars

* Update the Product Filters testing pages title

* Satisfy TS by returning single React element rather than array of elements

* Revert some incorrect changes

* Cleanup after accidental incorrect merge

* Add template utils to dynamic contents util

* Fix Attribute Filter tests

* Cleanup Attribute tests, refactor and fix types

* Add product filter on top of attirbute filter in handlebars

* Fix lint

* Update Rating filter tests to use Product Archive template instead of post

* Update Rating Filter handlebars

* Update Stock filter tests to use Product Archive template instead of post

* Update Stock Filter handlebars

* Add more granular util to update Produyct Catalog based on handlebar template

* Use Product Catalog util and simplify test scenarios

* Unify handlebar templates

* Fix Product Collection attributes in Product Filter handlebar templates

* Revert temporary timeouts increase

* Remove unused types

* Cleanup types

* Cleanup types

* Lint fix

* Rename updateTemplatesContent to updateTemplateContents to better depict its purpose

* Fix types

* Rename updateProductCatalogContent to updateProductCatalogTemplate to better depict its purpose

* Allow for beforeAll and afterAll in PW tests

* Use beforeAll and afterAll instead of using fixture in active filters test

* Use beforeAll and afterAll instead of using fixture in attribute filters test

* Use beforeAll and afterAll instead of using fixture in price filters test

* Use beforeAll and afterAll instead of using fixture in rating filters test

* Use beforeAll and afterAll instead of using fixture in stock status filters test

* Get rid of updateProductCatalogTemplate util as it's too specific

* Extract some constants

* Remove unused file probably added here by accident

* Adjust Attribute Filter block tests to the new logic

* Merge fix

* Bring back necessary handlebars file

* Merge fix

* Merge fix

* Update beforeAll

* Avoid relying on product collection page object in before all

* Bring back the original order of tests

* Switch Filter by Attribute tests to handlebars

* Fix typo

* Update test to new circumstances

* Fix hooks usage
We no longer use hooks other than `beforeEach` since we're resetting the DB for each test (#46125). Using other hooks was not caught by the linter (on this PR) because I accidentally removed the no-hooks rule in #47228 and restored it just now in #47500. 😅

* Fix the test

* Fix Price filter test

* Update attribute filter tests

* Share the handlebars between tests

* Update price filter tests

* Update rating filter tests

* Update stock filter tests

* Remove unnecessary product collection page object from filter tests

* Fix typo

* Fix Filter by Stock test

* Simplify Attribute filter test by remoiving one filter from page

* Try to wait for element to be visible

* Fix handlebars syntax for filters so it doesnt throw validation errors and warnings

* Wait for filters to be visible for sure before performing further part of test

* Wait for Site Editor canvas loader

* Fix linter error

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
2024-05-17 11:23:56 +02:00
Alba Rincón 5427aa5de8
Replace the default image of the Testimonial single pattern (#47535)
* Replace the default image of the Testimonial single pattern

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-17 11:00:51 +02:00
Vedanshu Jain e19110c564
Fix: Deleting a shop coupon using API returns a 500 error (#47474)
* Fix: Deleting a shop coupon via the API returns a 500 error

* Add unit test for coupon delete.

* Add changelog.

* PHPCS fix.

---------

Co-authored-by: 79mplus Admin <36501099+79mplus-admin@users.noreply.github.com>
2024-05-17 11:25:01 +05:30
Moon 15d146fa84
Fix lint errors with remote spec validator endpoint (#47520)
* Fix lint errors

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 15:25:59 -07:00
Ron Rennick db50513c42
use valid repository url in blocks package (#46696)
* use valid repository url in blocks package

* add changelog file

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-05-16 13:32:41 -07:00
Alexandre Lara 0a5ab942bd
[Experimental] Product Filters Redesign > Clear Button: Fix CSS Not Found error (#47481)
* Fix CSS error on Product Filter Clear Button

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

* Fix css lint error

* Remove unnecessary css file from Product Filter Clear Button block

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 15:59:06 -03:00
Jonathan Lane ad19ff51a3
Add Buildkite reporting for e2e PR and daily runs (#47558)
* Add Buildkite reporting for e2e PR runs

* Set up Buildkite reporting on daily runs

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-16 15:31:21 -03:00
Seghir Nadir edb930e04b
Fix a11y issues in Cart/Checkout (#47470)
* return focus on drawer

* adjust notice button color

* adjust cart/checkout input label color

* return focus for shipping form button

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 18:32:22 +02:00
Matt Sherman d6288e2b2e
REST API: Add variation product type to response (#47377)
* Add type to response

* Add type to schema

* Changelog

* Update property count in schema test
2024-05-16 11:13:07 -04:00
Seghir Nadir 4f348eb540
remove the generic incompatible notice from Checkout block. (#47475)
* remove the generic incompatible notice

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 16:52:06 +02:00
Seghir Nadir 9b1e9344e0
Turn Cart change address link to button (#47460)
* Turn Change address link to button

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

* fix lint

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 16:51:03 +02:00
Bart Kalisz 90ee3f4ed9
Blocks E2E: Remove obsolete waitForSiteEditorFinishLoading util (#47547) 2024-05-16 16:39:30 +02:00
github-actions[bot] 7e01f4d39c
Delete changelog files based on PR 47514 (#47550)
Delete changelog files for 47514

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-16 16:25:37 +02:00
Seghir Nadir a13013e9a5
Skip serialization for customer meta and be more defensive around loading it. (#47514)
* skip data serialization for customer meta

* keep casting as is

* skip old comment

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

* actually leave the comment, it still make sense

* reduce code needed

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 15:24:36 +02:00
Bart Kalisz a7bbdb99a2
Blocks E2E: Wait for Site Editor canvas loader (#47541) 2024-05-16 14:49:32 +02:00
github-actions[bot] 8bf9e966d4
Delete changelog files based on PR 47507 (#47543)
Delete changelog files for 47507

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-16 13:23:44 +02:00
Sam Seay fcc421d550
Update cart/checkout usage of the @wordpress/components Slot Fill (#47105) 2024-05-16 21:46:24 +12:00
Michal Iwanow 5cd46f48ad
Fetch Marketplace promotions - ensure callback is always registered for `woocommerce_marketplace_fetch_promotions` action (#47262)
* Marketplace promotions - ensure action is always there

We started getting errors 'Scheduled action for woocommerce_marketplace_fetch_promotions will not be executed as no callbacks are registered.' on some environments.

In this commit we ensure that WC_Admin_Marketplace_Promotions::fetch_marketplace_promotions() is always added as a calback to our action hook.

* Marketplace promotions - switch from Action Scheduler to transients

We're switching fetching marketplace promotions from using Action Scheduler
every 12 hours, to a 1 day transient. This makes it easier to ensure that
the requests are triggered only for admins, and that they don't impact frontend
users of the stores.

* Changelog

* Clear action from Action Scheduler

Action woocommerce_marketplace_fetch_promotions is no longer used, so we're clearing it when it's triggered.
Since we cannot self-clear the action, we're triggering a new single action when woocommerce_marketplace_fetch_promotions is run.
This new action's sole responsibility is to clear the original action.
2024-05-16 09:56:59 +02:00
Manish Menaria a7a1264fec
Fix input clearing issue in PriceTextField with improved currency parsing (#47354)
* Fix input clearing issue in PriceTextField with improved currency parsing

This commit addresses a usability issue in the PriceTextField component, highlighted by @dinhtungdu, where the input field would clear itself if users omitted a space between the numeric value and the currency symbol when the currency is configured to appear on the right with a space (e.g., "20$" instead of "20 $"). The problem was rooted in the strict parsing logic that did not account for variations in user input related to currency formatting.

The fix involves an enhancement to the numeric parsing function, which now effectively handles various user inputs regardless of space or placement of the currency symbol. The revised parsing logic uses a regular expression to strip out any characters that are not numeric or the designated decimal separator, and then replaces the locale-specific decimal separator with a period for standard numeric conversion. This approach not only fixes the specific issue but also improves the robustness of the component against similar input variations.

* Refactor currency parsing and improve handling in PriceTextField

1. Renaming `formatValueAsCurrency` to `formatNumberAsCurrency` to better
   reflect its functionality.
2. Moving the `convertCurrencyStringToNumber` function outside of the
   PriceTextField component, enhancing readability and reusability.
3. Changing the internal state handling from `newValue` to `inputValue`,
   directly managing the string input and parsing it as needed for further
   processing. This will force input field to re-render.

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

* Fix: Handle empty string in price conversion to prevent 0 value

This commit fixes an issue where an empty string in the price conversion function resulted in a value of 0. Now, empty strings are properly handled and do not convert to a numerical value.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 13:23:47 +05:30
Prahesa Kusuma Setia b669fc8526
Prevent calling wccom when the payload is empty for update check (#47507)
* prevent calling wccom when the payload is empty for update check public and non-public

* add changelog
2024-05-16 13:21:34 +07:00
Manish Menaria 1233fb4745
Fix: handle undefined templateSlug in Product Collection tracking utils (#47504)
* fix: handle undefined templateSlug in Product Collection tracking utils

The modification introduces a check for templateSlug before attempting to access its properties or use it in further logic. This change addresses a bug that manifested when users tried to edit a synchronized Product Collection block, resulting in a JavaScript error because templateSlug could be undefined.

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

* Update types to better reflect reality

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
2024-05-16 11:17:52 +05:30
Chi-Hsuan Huang a120b99d7d
Fix coming soon page mobile UI issues (#47491)
* Update styles for WooCommerce coming soon page

- Add min-width to container for better responsiveness
- Adjust padding for smaller screens
- Update font size and text wrapping for banner

* Add changelog

* Improve readability
2024-05-16 12:46:26 +08:00
Chi-Hsuan Huang 9e32aafd38
Disable auto zoom when focusing on input for core profiler (#47400)
* chore: Add viewport meta tag for setup wizard

* Add changelog
2024-05-16 10:45:26 +08:00
Alexandre Lara 7abb996017
[Experimental] Product Filters Redesign: Add the Product Filters block (#47294)
* Add Product Filters block

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

* Add the blocks template for the Product Filters block

* Dynamically add the highest product count attribute to the block template

* wip: Add E2E tests for the Product Filters block

* Add E2E tests for the Product Filters block

* Add CSS file to Product Filters block

* Fix css error lint

* Fix lint error

* Fix lint errors

* Remove unnecessary styles for the Product Filters block

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 18:09:48 -03:00
Fernando Marichal 8dd87820cf
Disable pre-publish panel (#47430)
* Disable pre-publish panel

* Add changelogs

* Fix e2e tests
2024-05-15 15:52:42 -03:00
Fernando Marichal aa6137128d
Move pricing features to General tab (#47435)
* Move pricing section

* Fix e2e tests

* Fix create-variable-product tests

* Add changelog

* Add changelog in WC
2024-05-15 14:53:27 -03:00
Moon bcd80f4c95
Bump beta tester to 2.3.1 to prep a new release (#47427)
* Bump version to 2.3.1 and add changelog

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

* Update readme.txt and clean up old changelog files

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 10:21:54 -07:00
Luigi Teschio 8c6efe072b
Blocks: Fix JS unit tests (#47516)
* Blocks: Fix JS unit tests

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

* trigger CI

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 16:03:11 +00:00
Herman e65481aa27
Marketplace business services: Feature branch (#47303)
* Support for Business Services in in-app marketplace ()

Contains the changes from:

#46530
#46725
#47048
#47135
#47183
#47227
#47352
#47452

* Update plugins/woocommerce-admin/client/marketplace/README.md

Fix documentation punctuation

---------

Co-authored-by: Raja Sekar Manimaran <raja.sekar.manimaran@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Michal Iwanow <4765119+mcliwanow@users.noreply.github.com>
Co-authored-by: Dan Q <dan@danq.me>
2024-05-15 14:43:06 +02:00
Luigi Teschio 1af8e8a4d4
Blocks: Delete Jest-Puppeteer infrastructure (#46672)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* Try stabilizing the company field test

* Use canvas param instead of manually entering edit mode

* Remove double site editor redirect

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* Fix ESLint errors (#46626)

* Fix ESLint errors

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

---------

Co-authored-by: github-actions <github-actions@github.com>

* Blocks: Migrate multiple tests to Playwright

* fix path

* migrate other tests

* add product best sellers E2E tests

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

* migrate jest-puppetter E2E tests to Playwright

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

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

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

* Blocks: Delete Jest-Puppeteer infrastructure

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

* Remove obsolete waitForLoadState call

* improve E2E tests

* fix E2E tests

* improve E2E tests

* remove old test

* remove not necessary test

* fix number product

* fix E2E test

* fix number of products

* fix product count

* refactor store notice E2E tests

* update string

* fix E2E test

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 14:22:36 +02:00
Bart Kalisz e765a717d2
Blocks E2E: Restore the no-hooks rule (#47500) 2024-05-15 13:05:52 +02:00
Sam Seay 3ef7a01840
Update blocks JS tests to React 18 (#47383) 2024-05-15 21:33:36 +12:00
Akeda Bagus 02c640480d
Free some in-memory usage when doing HPOS-related batch processing (#47159) 2024-05-15 09:19:56 +00:00
rodelgc 931bfed5c6
Update stable tag to 8.8.3 (#47496)
woorelease: Update stable tag to 8.8.3

Co-authored-by: rodel <rodel@rodels-MacBook-Pro.local>
2024-05-15 16:16:53 +08:00
Manish Menaria 9f5f93cba6
Product Collection: Implement Preview Mode (#46369)
* POC: Preview Mode using HOC

* Add explanation as comments

POC: Implement preview mode for Product Collection block in editor
- Added extensive commentary to clarify the mechanism and usage of the `handlePreviewState` function
- Implemented an internal state within `ProductCollectionContent` to manage preview status and messages, serving as a foundational example of how preview mode can enrich block functionality.
- Showcased the application of `handlePreviewState` by incorporating it as a prop in `BlockEdit`, illustrating the potential for extending the block's capabilities for dynamic and interactive previews.

This POC demonstrates a flexible approach to managing preview states within the editor, paving the way for further development and integration based on feedback and use-case analysis.

* Refactor preview state handling and collection registration

This commit introduces a centralized approach for registering product collection variations and managing their preview states. It abstracts the registration logic into a dedicated function and enhances the flexibility of preview state handling across different collection types.

* Rename file

* Minor improvements

* Don't pass previewState to handlePreviewState

I don't see any good use of it in handlePreviewState. Also, We will be going to call handlePreviewState only once
therefore, it will always have the same value as the initial value of the previewState. If in future, we decide to run it
multiple times then we can pass the previewState as an argument to handlePreviewState.

* Add comment

* Use JS closure to inject handlePreviewState

This commit introduces a refined approach for injecting the `handlePreviewState` function into product collection blocks, utilizing JavaScript closures to streamline the process. This method replaces the previous global registry mechanism, offering a more direct and efficient way to manage preview states.

Advantages of This Approach:
- Utilizing JavaScript closures for injecting `handlePreviewState` simplifies the overall architecture by directly modifying block edit components without relying on an external registry. This method enhances code clarity and reduces the cognitive load for developers.
- The conditional application of `withHandlePreviewState` ensures that the preview state handling logic is only added to blocks that require it, optimizing performance and maintainability.

* Refactor preview state management into custom hook

This commit enhances the organization and readability of the product collection content component by abstracting the preview state management into a custom hook named `usePreviewState`. This change streamlines the component's structure and aligns with React best practices for managing state and side effects.

Key Changes:
- Introduced `usePreviewState`, a custom hook responsible for initializing and managing the preview state (`isPreview` and `previewMessage`) of the product collection block. This hook encapsulates the state logic and its side effects, including the conditional invocation of `handlePreviewState`.
- Modified `ProductCollectionContent` to utilize `usePreviewState` for handling its preview state. This adjustment makes the component cleaner and focuses it more on presentation and behavior rather than state management details.

* Replace useEffect with useLayoutEffect

* Add cleanup function in handlePreviewState function

Based on [this discussion](https://github.com/woocommerce/woocommerce/pull/45703#discussion_r1535323883), I added a cleanup function support for handlePreviewState. `handlePreviewState` can return a function which will be called on cleanup in `useLayoutEffect` hook.

* Fetching random products in Preview mode

* Allow collection to set initial preview state

* Pass location & all attributes to handlePreviewState function

* Handling collection specific query for preview mode

- Consolidated `handlePreviewState` and `initialPreviewState` into a single `preview` prop in `register-product-collection.tsx` and `product-collection-content.tsx` to streamline prop passing and improve the component interface.
- Updated the `queryContextIncludes` in `constants.ts` to include 'previewState'
- Enhanced the `ProductCollection` PHP class to handle preview-specific queries more effectively, introducing a new method `get_preview_query_args` that adjusts query parameters based on the collection being previewed, thereby improving the relevance and accuracy of products displayed in preview mode.

* Always set initialPreviewState on load

* Refine preview state handling

- Renamed `HandlePreviewStateArgs` to `SetPreviewStateArgs` in `featured.tsx` to better reflect its purpose, which is now more focused on setting rather than handling states. The implementation details within `featured.tsx` have also been refined to include async operations and cleanup functions, demonstrating a more sophisticated approach to managing state.

Overall, these updates make the preview state logic more understandable and maintainable.

* Rename "initialState" to "initialPreviewState"

* Fix: Correct merging of newPreviewState into previewState attribute

This commit addresses an issue in the product-collection-content.tsx where the newPreviewState was not properly merged into the existing previewState attribute. Previously, the spread operator was incorrectly applied, leading to potential loss of existing state attributes. By changing the order of operations and correctly spreading the existing attributes before merging the newPreviewState, we ensure that all state attributes are preserved and updated correctly.

* Initial refactor POC code to productionize it

* Move `useSetPreviewState` to Utils

* Implement preview mode for Generic archive templates

Implemented a new useLayoutEffect in `utils.tsx` to dynamically set a preview message in the editor for product collection blocks located in generic archive templates (like Products by Category, Products by Tag, or Products by Attribute).

* Remove preview mode from Featured and On sale collection

* Remove preview query modfication for On Sale collection

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

* Fix: hide/show preview label based on value of "inherit"

If user change the toggle "Sync with current query", then it should reflect for the preview label as well.
- If the toggle is on, then the preview label should be shown.
- If the toggle is off, then the preview label should be hidden.

* Minor improvements

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

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

* Refactor: Simplify SetPreviewState type definition in types.ts

This commit refines the SetPreviewState type definition by eliminating the previously used intermediate interface, SetPreviewStateArgs. The change streamlines the type definition directly within the SetPreviewState type, enhancing readability and reducing redundancy.

* Update import syntax for ElementType in register-product-collection.tsx

This commit updates the import statement for `ElementType` from `@wordpress/element` to use the more modern and concise `import type` syntax. This change does not affect functionality but aligns with TypeScript best practices for importing types, ensuring that type imports are distinguished from regular imports. This helps in clarity and in optimizing the build process by explicitly indicating that `ElementType` is used solely for type checking and not included in the JavaScript runtime.

* Refactor: Update TypeScript usage in Product Collection

This commit introduces several TypeScript refinements across product-collection components:

1. **DEFAULT_ATTRIBUTES** in `constants.ts` now uses `Pick` to explicitly define its shape, ensuring only relevant attributes are included and typed accurately.
2. **ProductCollectionAdvancedInspectorControls** and **ToolbarControls** in the `edit` subdirectory now use `Omit` to exclude the 'preview' property from props, clarifying the intended prop usage and improving type safety.

These changes collectively tighten the type definitions and improve the codebase's adherence to best practices in TypeScript.

* Refactor: Update dependencies of useSetPreviewState hook in utils.tsx

This change enhances the stability and predictability of the hook's behavior, ensuring it updates its internal state accurately when its dependencies change, thus aligning with best practices in React development.

* Refactor preview button CSS and conditional rendering

1. **CSS Refactoring:** Moved the positioning styles of the `.wc-block-product-collection__preview-button` from inline styles in the JSX to the `editor.scss` file. This separation of concerns improves maintainability and readability, aligning the styling responsibilities solely within the CSS file.
2. **Conditional Rendering Logic:** Updated the rendering condition for the preview button. Now, it not only checks if `isPreview` is true but also if the block is currently selected (`props.isSelected`). This prevents the preview button from appearing when the block is not actively selected, reducing visual clutter and enhancing the user experience in the editor.

* Enhance: Update preview button visibility logic in ProductCollectionContent

This commit enhances the visibility logic of the preview button in the `ProductCollectionContent` component:

1. **Added `isSelectedOrInnerBlockSelected`:** Introduced a new `useSelect` hook to determine if the current block or any of its inner blocks are selected. This ensures that the preview button is visible when either the product collection block or any of its inner blocks are selected.
2. **Updated Conditional Rendering:** Adjusted the conditional rendering of the preview button to use the new `isSelectedOrInnerBlockSelected` value, providing a more intuitive user experience by ensuring the preview button remains visible when any relevant block is selected.

* use __private prefix with attribute name

* Add E2E tests for Preview Mode

1. **Template-Specific Tests:** Each template (tag, category, attribute) undergoes a test to ensure the preview button behaves as expected when replacing products with product collections in these contexts.
2. **Visibility Checks:** The tests verify that the preview button is visible when the block or its inner blocks are selected and hidden when the block is not selected. This helps confirm the correct implementation of the preview button visibility logic across different use cases.
3. **Interaction with Inner Blocks:** Additional checks are included to ensure the preview button's visibility toggles appropriately when interacting with inner blocks, reinforcing the dynamic nature of block selection and its effect on UI elements within the editor.

* Add setPreviewState to dependencies

* Add data-test-id to Preview button and update e2e locator

Modifications:
- Added `data-test-id="product-collection-preview-button"` to the Preview button in `product-collection-content.tsx`.
- Updated the corresponding e2e test locator in `product-collection.block_theme.side_effects.spec.ts` to use the new `data-test-id` instead of the class name.

By using `data-test-id`, we ensure that the e2e tests are not affected by changes in the styling or restructuring of the DOM that might alter CSS classes but do not affect functionality.

* Enhance: Localize preview message in useSetPreviewState hook

* Don't show shadow & outline on focus

* Make preview button font same as Admin

* Fix SCSS lint errors

* Add missing await keyword

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 13:18:43 +05:30
Michael Pretty e50c8426fb
fix PHP 8 warning in Blocks\Installer\create_pages() callback when oher filters have removed pages (#47094) 2024-05-15 08:45:37 +02:00
Chi-Hsuan Huang d5166dcfed
Fix undefined variable `$exlude_paths` (#47490)
* Fix typo in exclude_paths variable name

* Add changelog
2024-05-15 03:41:53 +00:00
Moon 042766c28c
Do not display smart app banner on the core profiler, LYS, and CYS pages (#47429)
* Do not display smart app banner on the core profiler pages

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

* Ignore hook doc errors -- need to re-visit this later

* Document filters with basic info -- using 6.5.0 for since tag. That is the first release after WC Admin was merged to the core

* Update plugins/woocommerce/src/Internal/Admin/Loader.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2024-05-14 17:41:57 -07:00
Jonathan Lane 6e8a922943
Update stalebot workflow for flaky tests (#47484)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-14 16:02:18 -07:00
César Costa f5e45ef376
Update symbol and formatting of the XPF currency (#46960)
* Update XPF currency symbol to XPF

* Change XPF default locale formatting

* Change decimal separator of countries that use XPF to dot

* Add changelog entry

* Update changelog entry

* Fix XPF test data

* Fix some JS linting issues

* Revert "Fix some JS linting issues"

This reverts commit 51abcf4117.

* Fix some JS linting issues
2024-05-15 04:50:55 +07:00
Akeda Bagus b931117f7a
Fix dates dropdown in admin list order page (#47440)
* Fix dates dropdown in admin list order page

The query was missing a filter to order type.

Fixes #47406.

* Fix changelog header
2024-05-14 19:29:45 +00:00
Fernando Marichal 2575d455f7
Fix flaky Attributes and Variations E2E tests (#47471)
* Wait for attributes until request is complete

* Wait for response

* Add changelog
2024-05-14 13:59:34 -04:00
Álvaro Thomas 32d10eacf8
Update stable tag to 8.9.0 (#47482)
woorelease: Update stable tag to 8.9.0
2024-05-14 19:56:10 +02:00
Jorge A. Torres 089be925d9
Add some unit tests to cover changes in PR 46972 (#47098)
* Add unit tests for 's' search parameter in HPOS queries

* Add changelog

* Fix PHPCS issue
2024-05-14 20:34:17 +05:30
Sakri Koskimies 5a8dfac898
Add support for FI and SE postcode validation + Update tests (#45480)
* Add validation for FI, SE postcodes

* Add non-legacy WC_Validation_Test test class

* Add changefile

* Add validation for EE postcode

Co-authored-by: ragulka <illimar.tambek@gmail.com>

* Apply phpcs fixes.

---------

Co-authored-by: ragulka <illimar.tambek@gmail.com>
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-05-14 20:09:55 +05:30
Luigi Teschio 603184182b
CYS: mutate the original instance of the block array (#47468)
* mutate the original instance of the block array

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

* trigger CI

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-14 16:05:09 +02:00
Adrian Moldovan 7b96dfca67
[e2e tests] Remove BuildKite reporter (#47449)
* Remove BuildKite reporter

* Changelog

* Remove BuildKite reporter from api tests
2024-05-14 10:25:17 +01:00
Thomas Roberts 35f07934a4
Remove bold text from selected payment method in Checkout block (#47412) 2024-05-14 02:00:30 -07:00
Jorge A. Torres f241b4dd08
Add support to HPOS CLI tool for handling deleted orders (#46970)
* Add support for removed orders to cleanup tool

* Add changelog
2024-05-14 14:24:15 +05:30
Bart Kalisz 1e1e7dd65d
Blocks E2E: Align ESLint and TS configs with Gutenberg (#47228) 2024-05-14 10:23:17 +02:00
Karol Manijak bf2d622a66
Product Collection: telemetry for filter usage (#46545)
* Create trackInteraction function and pass it to query Insprector Controls

* Add tracking to Attribute filter

* Add tracking to Created filter

* Add tracking to Featured filter

* Add tracking to Handpicked Products filter

* Add tracking to Inherit Query filter

* Add tracking to Keyqord filter

* Add tracking to On Sale filter

* Add tracking to Order By option

* Add tracking to Stock Statusoption

* Add tracking to Price Range filter

* Add tracking to Taxonomies filter

* Fix lint errors

* Add changelog

* Rearrange the logic of recognising the tracks location so it's more reliable
2024-05-14 09:45:33 +02:00
Chi-Hsuan Huang d66c5b8efe
Add UTM tags to all product links in core profiler Free features step (#47397)
* Add UTM tags to all product links for core profiler default free extensions

* Add changelog

* Update mailpoet link
2024-05-14 10:32:51 +08:00
Paul Sealock 208e5633ba
[Launch Your Store] Add e2e tests (#47239)
* LYS spec

* get homescreen check working

* move over to shopper

* basic test

* get first test working

* Store only coming soon mode - logged out

* add logged in ttests

* linter

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

* Remove skip from tests

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-14 11:41:35 +12:00
github-actions[bot] d19e90105a
Delete changelog files based on PR 47003 (#47439)
Delete changelog files for 47003

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-14 00:24:24 +01:00
Christopher Allford b8aabe9005
Fixed Taxonomy Term Limit On Product Collection Filters (#47155)
In the interest of avoiding pagination this refactor swaps the current term loading with one that doesn't require a cache of all terms. We've removed the need for the cache by storing the ID and term name together in the token/suggestion list and using a display transformation to hide any unnecessary information.
2024-05-13 16:00:24 -07:00
Roy Ho f5dc46a385
Product Filters: add individual clear button (#47101)
* Product Filters: add individual clear button

* Remove unused style.scss

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

* Simplify searching for the tag

* Convert to use button instead of anchor

* Try using iAPI to show/hide clear button

* Use local context instead of global state

* Fix linting error

* Remove unneeded context

* Update clear button block description

* Fix frontend PHP error

* Add e2e tests for attributes filter clear button

* Add e2e tests for price filter clear button

* Add e2e tests for rating filter clear button

* Add e2e tests for stock status filter clear button

* Address feedback and use built in locators

* Address feedback and replace the use of timeouts

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:19:56 -03:00
Fernando Marichal fdb4069566
Remove not used feature flags (#47150)
* Remove product-virtual-downloadable

* Remove product-variation-management

* Remove product-external-affiliate

* Remove product-grouped

* Remove product-linked

* Remove customer-effort-score-tracks

* Add beta tester changelog

* Add changelogs
2024-05-13 15:05:47 -03:00
Albert Juhé Lluveras 8da8a70839
Update docs about blocks styling to clearly state global styles are the recommended approach (#47269)
* Update docs about blocks styling to clearly state global styles are the recommended approach

* Markdown formatting fixes

* Add changelog file

* Add styling the Product Price block example

* Markdown formatting fixes (II)

* Update plugins/woocommerce-blocks/docs/designers/theming/README.md

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>

* Update plugins/woocommerce-blocks/docs/designers/theming/README.md

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2024-05-13 18:26:50 +02:00
Seghir Nadir ccba86a616
Update additional fields document's TOC and link to it from another document. (#47137)
* update docs

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

* fix linting

* update manifest

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:46:46 +00:00
Seghir Nadir b5850bbfc1
Select a shipping rate after they load (#47120)
* select a shipping rate if there are no shipping rates on mount

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

* move code and explain it

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:29:04 +00:00
Seghir Nadir de4180c17a
Make german state field visible but not required (#47319)
* Make german state field visible but not required

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:19:35 +00:00
Bart Kalisz 9a71f3ac5f
Blocks E2E: Remove the DB snapshot on env reset (#47416) 2024-05-13 17:19:15 +02:00
Moon 5183b1bb1b
LYS - Disable the save changes button until changes are made (#47316)
* Disable the save changes button until changes are made

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

* Fix broken test

* Test

* Remove test code

* Tmp fix - fix broken test

* Fix incorrect comparison

* Remove test code

* minor refactor -- re-use setting

* Remove use of loadash isequal

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 07:56:51 -07:00
Seghir Nadir b256336176
reset state and postcode if it's not valid for the current country (#47369)
* reset state if it's not valid for the current country

* reset postcode as well

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

* update logic so its in Checkout block instead of store api

* fix linting

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 16:46:08 +02:00
Paulo Arromba 98510fe9fd
Add woocommerce_order_received_verify_known_shoppers filter to order confirmation template (#46957)
* Adds filter `woocommerce_order_received_verify_known_shoppers` to allow known shoppers to access the order received page without being logged in in Order Confirmation template

* Added changelog

* Added filter docblock

* Refactored to apply the filter correctly for non-guests only.

* Restored comment.

* Added test

* Added test

* lint

* Change plugin package name

* Update plugin name (apparently slugs are formed from that)

* Added right prefix

* JS linting

* Refactored testing into a test.step()

* typo

* Fixed tests.

* Reverted change done by mistake.

* remove getByRole specificity

* Increase selector specificity specificity

* Change test prefix

* reduce test flakyness

* reduce test flakyness

* reduce test flakyness
2024-05-13 15:28:36 +01:00
Seghir Nadir 76a9e2eb27
Move country to top of form for all countries (#47375)
* Move country to top of form for all countries

* adjust styling

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 16:24:40 +02:00
Sam Seay 2db29164f9
Update to pnpm 9.1 (#47385)
* Update to pnpm 9.1 and fix a mini css bug

* Add changefile(s) from automation for the following project(s): @woocommerce/tracks, @woocommerce/product-editor, @woocommerce/onboarding, @woocommerce/number, @woocommerce/notices, @woocommerce/navigation, @woocommerce/internal-js-tests, @woocommerce/extend-cart-checkout-block, @woocommerce/expression-evaluation, @woocommerce/explat, @woocommerce/experimental, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/date, @woocommerce/data, @woocommerce/customer-effort-score, @woocommerce/currency, @woocommerce/csv-export, @woocommerce/create-woo-extension, @woocommerce/create-product-editor-block, @woocommerce/components, @woocommerce/api, @woocommerce/ai, @woocommerce/admin-e2e-tests, woocommerce-blocks, woocommerce-beta-tester, woocommerce, woo-ai

* temporarily disable swallowing build output to diagnose issue with perf workflow

* Ignore some type issues that commonly resurface when deps slightly change

* Fix persistent type issues that have recurred many times

* Add more ignores

* Fix lint issue

* Revert change to swallow build error

* Improve access of the config that needs updated build dir.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 10:57:39 -03:00
Akeda Bagus 5bbbc52c0d
Respect locale setting to format order counts in admin orders list page (#47373)
* Respect locale setting to format order counts in admin orders list page

Fixes #47372

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 14:28:31 +01:00
Bart Kalisz 30756f74e3
Blocks E2E: Refactor configs and workflow (#46409) 2024-05-13 14:58:26 +02:00
Paulo Arromba 4840af874a
Add phone number to my account shipping address. (#47062)
* Added phone number support to Shipping Address and refactor the code.

* Refactored to avoid evaluating extra if on !== billing address form

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

* Fixed tests.

* Mock phone number consistency
2024-05-13 12:48:57 +01:00
Brian 69daa61877
Add aria-label to My Account Navigation Item (#43696)
Co-authored-by: Niels Lange <niels.lange@a8c.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 14:23:19 +03:00
Patricia Hillebrandt 7313127649
CYS > Add a feature flag for full composability and the Pattern Toolkit (#47392)
* Add a feature flag for full composability and the Pattern Toolkit projects.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 12:28:20 +02:00
Justin Palmer 7796c13b65
Make method getAttributionData globally accessible (#46965)
* Make method to getAttributionData externally accessible

* Include checks for sjbs availability

* Failsafe for the custom html element if sbjs isn't available

* Changelog
2024-05-13 12:24:32 +02:00
github-actions[bot] b164d19328
Delete changelog files based on PR 47398 (#47405)
Delete changelog files for 47398

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-13 12:09:56 +02:00
Néstor Soriano f61bdd51d5
Fix fatal error when trying to download log files (#47398)
* Fix inverted logif for readable file check in FileExporter::emit_file

* Fix: instance of WP_Error being passed to PageController::handle_list_table_bulk_actions
2024-05-13 11:28:09 +02:00
Ramon Ahnert 49c379c5a7
Fix typo in the Exposing your data in the Store API documentation (#43488)
* Fix basic usage code snippet example in extend-rest-api-add-data.md

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:20:07 +07:00
Chi-Hsuan Huang b28adc1703
Use a real em dash character (—) in the coming soon site template (#47394)
* Use a real em dash character (—) in the coming soon template

* Add changelog
2024-05-13 15:51:42 +08:00
Prahesa Kusuma Setia db804f4193
Tracks event for WooCommerce.com connect notice (#47003)
* add tracks event in the wc settings connect notice

* add clicked and dismissed tracks event in the marketplace connect notice

* add shown tracks event in the marketplace connect notice

* add changelog

* fix linter error

* Add Tracks event when connect-notice in plugin is shown and clicked

* Add docblock for maybe_enqueue_scripts_for_connect_notice_in_plugins

---------

Co-authored-by: Akeda Bagus <akeda.bagus@automattic.com>
2024-05-13 13:45:43 +07:00
Ilyas Foo c4ca5f87d9
Reenable global styles for coming soon entire site template (#47388)
* Reenable global styles for coming soon pages

* Changelog

* Update fix-lys-reenable-global-styles
2024-05-13 13:38:54 +08:00
Moon 6cf09f30a8
LYS - Use flow layout for the coming soon template (#47335)
* Use flow layout

* Tmp fix - fix broken test

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

* Use flex layout

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 13:15:47 +08:00
RJ 2898efa648
add: lys badge tracks (#46509) 2024-05-13 07:52:49 +08:00
Cem Ünalan 23773e19f0
Freemium: update marketplace product card label (#45982)
* Freemium: update marketplace product card label

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

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 15:00:05 -05:00
github-actions[bot] 821d764b04
Delete changelog files based on PR 47205 (#47367)
Delete changelog files for 47205

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-10 17:13:50 +02:00
Matt Allan 6a89723685
Update when PayPal Standard is loaded to further reduce new store using this legacy payment method (#47205)
* Change default PP Standard should_load logic to be more strict when setting to true

* Remove filter allowing stores to enable PayPal Standard programmatically

* Adds new function to check if the store has any PayPal Standard orders

* Upgrade script that disables PayPal Standard on stores that aren't using it.

* Add changelog entries

* Fix extra comma

* PayPal email is defaulted to the admin email which means checking needs_setup() isn't reliable

* Load PayPal standard in unit tests

* Before installing WC, set the Paypal Standard should load to true

* Remove unnecessary ternary when setting default should_load

* On upgrading WC, only check for PayPal Standard live keys to determine if it's setup

* Remove admin notice if PayPal Standard is disabled on ugprade

* Display an admin notice if the store is using the deprecated filter to load PayPal Standard.

* Add docblock comment above the apply filters

* Added checks around the filter and give pref to enabled.

git add .

* Remove the should load filter notice.

* Add comment noting that init class shouldnt be removed.

* Use proper casting for this->enabled before usage.

---------

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-05-10 14:04:32 +01:00
Moon d0a8477b51
LYS - Add padding-left to the copy link (#47313)
* Adding padding to the copy link

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

* Tmp fix - fix broken test

* Fix lint errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 05:02:35 -07:00
Néstor Soriano 772d796ea3
Fixes in the receipts rendering engine (#47300)
* Fix permission check in RestApiControllerBase

Extra arguments were being passed incorrectly to current_user_can,
causing wrong authentication failures in some cases (e.g.
when hitting the endpoints in a wp.com site via Jetpack tunneling).

* Fix get_order_data in ReceiptRenderingEngine

A fatal error was being thrown when one of the products referenced
in the order did no longer exist.
2024-05-10 13:12:54 +02:00
Moon 0873ed47c3
LYS - Update toolbar store link text (#47315)
* Update toolbar store link

"Preview store" when coming soon mode is enabled
"View store" when the site is set to live

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

* Fix broken test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 04:00:41 -07:00
Moon a8cf226987
LYS - Use Woo branded colors for LYS confetti (#47334)
* Update LYS congrats confetti

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

* remove temporary fix

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 04:00:33 -07:00
Naman Malhotra 01069666e6
Fix: Reset password form missing required indicator (#47229)
* Fix: Reset password form missing required indicator

* Added changelog

* Updated templae version

* Address feedback
2024-05-10 10:08:05 +00:00
Moon 7556b7bffc
LYS - Remove admin toolbar button hover background (#47314)
* Remove hover background

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

* Tmp fix - fix broken test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 02:16:54 -07:00
Jonathan Lane c78292e6cc
Add API test for refunds endpoint (#47340)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-10 11:56:53 +03:00
Jonathan Lane 396c29d3ec
Install and set up BuildKite test analytics (#47202)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
2024-05-10 11:47:23 +03:00
Néstor Soriano b7d32ffa30
Add hooks to customize the order receipt generation (#46224)
Also:

- Move CSS to a separate template
- Access receipt data through a $data array in the template
  (don't extract the variables anymore)
2024-05-10 09:26:27 +02:00
Luigi Teschio 8954785c96
CYS: not run font picker tests on WordPress 6.4 (#47182)
* CYS: not run font picker tests on WordPress 6.4

* improve how the test is skipped

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 10:26:56 +08:00
Chi-Hsuan Huang 66c57693c1
Fix RIN Display Logic for Banner Alert Notifications (#47167)
* Fix RIN Display Logic for Banner Alert Notifications

* Add tests

* Add changelog

* Update test

* Add test

* chore: fix unactioned note status check in EvaluateAndGetStatus.php
2024-05-10 09:58:09 +08:00
Moon 14018bec62
Replace Options API usage with LaunchYourStore endpoint for LYS (#47252)
* Replace Options.php usage with LaunchYourStore controller

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

* Catch error, but ignore it

* Tmp fix - fix broken test

* Lint fixes

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-09 15:59:36 -07:00
Moon 7360928502
Use wp_plugin_dependencies_slug in PluginVersionRuleProcessor (#47235)
* Use wp_plugin_dependencies_slug

* Fix incorrect function name

* Remove unnessary content-type header

* Add doc block for wp_plugin_dependencies_slug filter

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

* Tmp fix - fix broken test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-09 15:30:12 -07:00
Corey McKrill 576db0933c
REST API: Add missing line item schemas to refunds endpoint (#47254)
* REST API: Add missing line item schemas to refunds endpoint

In #28241, `fee_lines`, `shipping_lines`, and `tax_lines` properties
were all added to the refund data object sent by v2 and v3 of the
REST API. However, the schema was never updated, so the characteristics
of those properties have not been very discoverable. This simply
copies the relevant schema data from the orders endpoint over to the
refunds endpoint.

Towards #43444

* phpcs cleanup
2024-05-09 21:59:30 +00:00
Corey McKrill 35908b8ee3
Update `WC_Admin_Tests_API_Plugins` to use different plugins for testing (#47337)
Updates the tests in WC_Admin_Tests_API_Plugins to use plugins other than `facebook-for-woocommerce` to hopefully be more reliable in the future.
2024-05-09 13:03:59 -07:00
Adrian Moldovan 5591b25367
[ci-jobs] Add the optional property for jobs (#47261) 2024-05-09 12:22:44 +03:00
Jonathan Lane 18e83a2467
🧪 Fix for a couple of failing e2e tests (#47253)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-09 11:33:26 +03:00
Chi-Hsuan Huang f2cf6b56aa
Update @automattic/tour-kit to 1.1.3 and @automattic/components to 2.1.1 (#47129)
* Use @automattic/tour-kit@1.1.3

* Update onPreviousStep and onNextStep callback

* Add changelog

* Add changelog

* Update @automattic/components

* Update package.json

* Fix pnpm-lock.yaml

* Update changelog

* Add changelog

* Enable autoScroll for shipping tour
2024-05-09 08:56:08 +08:00
Jorge A. Torres 875d1a7f8e
Override `get_edit_post_link()` URL for HPOS placeholder posts (#47149)
Rewrites edit post links for HPOS placeholder posts so they go to the actual HPOS orders.

Fixes #45806
2024-05-08 14:08:56 -07:00
github-actions[bot] a06bf69976
Delete changelog files based on PR 47171 (#47282)
Delete changelog files for 47171

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-08 17:39:00 +02:00
Adrian Moldovan 082719b0fd
[e2e tests] Disable broken product editor tests (#47268)
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-08 09:33:27 -05:00
Albert Juhé Lluveras 8b47443a1c
Remove unnecessary links to an ephemeral site (#47270)
* Remove unnecessary links to an ephemeral site

* Add changelog file

* Disable markdown lint in some lines
2024-05-08 15:24:25 +02:00
Luigi Teschio 5cdc7fcd43
CYS: fix color picker E2E test (#47274)
Co-authored-by: github-actions <github-actions@github.com>
2024-05-08 16:08:22 +03:00
Niels Lange e7aff9428f
[Enhancement]: Block-based checkout - Pickup section updates (#47173)
* Change “Pickup options” to “Pickup locations”

* Always show pickup location and truncate pickup details

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

* Adjust spacing between pickup details and more link

* Hide pickup details of unselected pickup location

* Adjust line height of truncated text

* Show “Read more/less” instead of “more/less”

* Ensure both lines are equally filled with text

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-08 17:58:09 +07:00
Bart Kalisz 3ad9ebf52a
Blocks E2E: Fix flaky Product Collection tests (#47211) 2024-05-08 11:26:52 +02:00
Niels Lange 99bed6d7ba
Display price in place order button (#47083)
* WIP: Display price in place order button

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

* Fix JS lint error

* Update e2e tests

* Display default place order button including placeholder in page editor

* Update plugins/woocommerce-blocks/assets/js/blocks/checkout/inner-blocks/checkout-actions-block/constants.tsx

Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>

* Optimise i18n using sprintf

* Wrap cart totals in “useSelect”

* Temporary skip failing e2e test

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
2024-05-08 16:18:48 +07:00
Bart Kalisz c464afc7ad
Blocks E2E: Remove discouraged waitForTimeout from tests (#47214) 2024-05-08 10:14:24 +02:00
Bart Kalisz 2936c4eac8
Blocks E2E: Fix flaky block insertion tests (#47213) 2024-05-08 10:13:30 +02:00
Luigi Teschio 2296e45d33
CYS - Core: Invert the color of the button block inside the cover block when the active style variation is New - Neutral (#47220)
* CYS - Core: fix cover button

* fix type

* fix build

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

* update color in the homepage preview

* move comment

* fix switch style variation

* add comment

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-08 09:36:45 +02:00
Alba Rincón 7a7b513771
[CYS] Fix the triggered event when starting the "no AI" flow (#47181)
* Fix event when starting the no AI flow

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-08 08:52:33 +02:00
Niels Lange b6d9b3a013
Fix broken checkout address forms layout (#47131)
* Fix broken checkout address forms layout

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-08 10:30:12 +07:00
Scott 94ed6a943f
Fix coupon usage limits on failed trashed orders (#47125)
This addresses coupon usage limits for failed & trashed orders by ensuring that coupon usage is decremented when a transaction fails or an order is trashed.

Fixes #31245

* Added tests to check coupon usage count on failed & trashed orders

Signed-off-by: Scott Fleming <scott@noblwheels.com>

* Add filter woocommerce_update_coupon_usage_invalid_statuses, wc_update_coupon_usage_counts actions -> failed/trashed

Signed-off-by: Scott Fleming <scott@noblwheels.com>

* document woocommerce_update_coupon_usage_invalid_statuses filter

Signed-off-by: Scott Fleming <scott@noblwheels.com>

* formatting

Signed-off-by: Scott Fleming <scott@noblwheels.com>

* Add changelog file

Signed-off-by: Scott Fleming <scott@noblwheels.com>

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

Appease the code style linter

* Update plugins/woocommerce/tests/php/includes/wc-order-functions-test.php

Appease the code style linter

---------

Signed-off-by: Scott Fleming <scott@noblwheels.com>
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-05-07 10:45:38 -07:00
Ron Rennick 15f087da06
Update community PR assignment list for vortex (#47225)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-05-07 10:16:37 -07:00
Justin Palmer f401a98301
Stamp the order attribution HTML element (only once) on a wider set of checkout form actions (#46834)
* Inject the fields (only once) on a large set of checkout form actions

* Changelog

* Better doc format

* Add _once to the new method to clarify functionality

* Filter to modify the default list of actions
2024-05-07 15:54:32 +02:00
Maikel Perez 40486a0151
Remove duplicate code lines in css (#47122)
* Remove duplicate css code from any woo scss file

* Add changelog files
2024-05-07 08:35:25 -04:00
Jonathan Lane 1671523cc0
Remove upload plugin test from Slack reporting on daily (#47067)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-07 14:40:12 +03:00
Tom Cafferkey f040e3acf7
Customer Account: Don't hook block unless filter is available. (#47171)
* Check WP version before adding Customer Account hooked block due to usage of hooked_block_{} filter

* Changelog

* Replace global  with get_bloginfo('version') for getting WP version
2024-05-07 09:46:22 +01:00
Ilyas Foo 82795a220b
Remove `noindex` meta from coming soon pages (#47178)
* Remove noindex robot call for coming soon page

* Changelog
2024-05-07 10:01:45 +08:00
Chi-Hsuan Huang e8af1c2ce4
Display `Import Product` task item text and header copies when merchant indicates they are already selling (#47164)
* Update product task header texts

* Update product task item item text

* Add changelog
2024-05-07 09:28:48 +08:00
Maikel Perez b7e30ea5b3
Prevent non used blocks to be registered in the product editor page (#47066)
* Create a hook to filter the woocommerce blocks that can be registered.
This will decrease the server execution time, the amount of css and javascript downloaded.
In the case of the product editor the woocommerce blocks are non needed or required, so it's not necesary to register them all.

* Add changelog file

* Fix php linter errors
2024-05-06 14:29:26 -04:00
kkmuffme 6c3ace8a5d
Logging: prevent file logger from writing only an empty line to a file (#47091)
* Fix https://github.com/woocommerce/woocommerce/issues/47090

* Update plugins/woocommerce/src/Internal/Admin/Logging/FileV2/File.php

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

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

* Update plugins/woocommerce/src/Internal/Admin/Logging/FileV2/File.php

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

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-05-06 10:25:43 -07:00
Kathy dd6295bdb6
Catch NotFoundException before `woocommerce_get_batch_processor` (#46975)
* use container's has() method instead of try/catch block to define processor instance.

* Add changelog file

---------

Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
2024-05-07 00:09:06 +07:00
Maikel Perez 5916bacebd
Tax reports not showing correct totals (#46248)
* Get the tax_rate from the woocommerce_order_itemmeta table and country, state and priority from woocommerce_order_items

* Add changelog file

* Fix the resulting items when searching by specific tax rates

* Add some comments to clarify the fix

* Fix php linter errors

* Show modified tax rates and tax names as well as the deleted ones to better show the total calculations

* Fix php tests

* fix Lint issue

* update tests

* Fix some tests

* Add teardown

* Remove tests that were not relevant anymore

* Update teardown function

* Fix linter errors

* Update comment typos

Co-authored-by: Matt Sherman <matt.sherman@automattic.com>

---------

Co-authored-by: Damián Suárez <rdsuarez@gmail.com>
Co-authored-by: Lourens Schep <lourensschep@gmail.com>
Co-authored-by: Matt Sherman <matt.sherman@automattic.com>
2024-05-06 12:44:37 -04:00
Albert Juhé Lluveras 249f83ab8b
Replace div element with main in block templates (#47119)
* Replace div element with main in block templates

* Add changelog file
2024-05-06 16:14:16 +02:00
github-actions[bot] 8005781387
Delete changelog files based on PR 47005 (#47177)
Delete changelog files for 47005

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-06 13:26:48 +02:00
Albert Juhé Lluveras f2bb11ffc3
Update block templates documentation (#47110)
* Update block templates documentation

* Add changelog file

* Linting

* Replace 'the' with 'a' to improve understandability
2024-05-06 11:06:40 +02:00
Sam Seay a8be4f3330
Checkout: fix a bug where the local pickup / shipping buttons are rendered incorrectly in the editor (#47157) 2024-05-06 20:57:52 +12:00
Luigi Teschio 2d87573a76
Product Reviews: not use useBlockProps twice (#47136)
* Product Reviews: not use useBlockProps twice

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-06 10:13:53 +02:00
Ilyas Foo 067879263e
Fix GLA site verification with coming soon mode (#47140)
* Set homepage to return 200, add robots hook to ensure no indexing on coming soon pages

* Changelog

* Remove use of 503 status for coming soon
2024-05-06 12:09:32 +08:00
ianlv 6ff0463f24
chore: remove repetitive words (#47158)
* chore: remove repetitive words

Signed-off-by: ianlv <sunlvyun@outlook.com>

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

---------

Signed-off-by: ianlv <sunlvyun@outlook.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-06 03:43:39 +00:00
79mplus Admin d2e94e9da6
Add manual_update parameter to v3/orders/<id> endpoint (#46900)
* added a new parameter manual_update when updating order through WC REST API

* added the new parameter to the item schema

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

* Update unit test

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-05-03 17:35:29 -07:00
Corey McKrill 78a21956bb
REST API: Add standalone wc/v3/refunds endpoint (#46895)
* REST API: Add endpoint to get refunds directly

This makes it possible to request a list of refunds that are untethered
from their associated orders, with options to specify a date range
and/or a sort order.

Fixes #27568

* Add changelog file

* phpcs cleanup

* Add unit test

* More phpcs cleanup

* Add parent_id to response object

* Appease phpcs
2024-05-03 16:26:04 -07:00
Nathan Silveira 08508dfecc
Add 'placeholder' attribute to taxonomy block and add 'placeholder' a… (#46938)
* Add 'placeholder' attribute to taxonomy block and add 'placeholder' attribute to category field in Simple Product Template

* Only show placeholder when nothing is selected

* Remove suffix from function parameters

* Add changelog for component

* fix unit tests
2024-05-03 15:26:08 -03:00
Albert Juhé Lluveras 2adde79286
Update the version number of some methods in AbstractTemplateCompatibility (#47118)
* Update the version number of some methods in AbstractTemplateCompatibility

* Add changelog file
2024-05-03 13:14:18 +02:00
Luigi Teschio 420207a1d7
Migrate Jest Puppeteer E2E tests to Playwright (#46671)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* Try stabilizing the company field test

* Use canvas param instead of manually entering edit mode

* Remove double site editor redirect

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* Fix ESLint errors (#46626)

* Fix ESLint errors

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

---------

Co-authored-by: github-actions <github-actions@github.com>

* Blocks: Migrate multiple tests to Playwright

* fix path

* migrate other tests

* add product best sellers E2E tests

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

* migrate jest-puppetter E2E tests to Playwright

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

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

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

* Remove obsolete waitForLoadState call

* improve E2E tests

* fix E2E tests

* improve E2E tests

* remove old test

* remove not necessary test

* fix number product

* fix E2E test

* fix number of products

* fix product count

* refactor store notice E2E tests

* update string

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-03 13:02:37 +02:00
Vishnu Gopal d81f49a046
Fix plugin registration on woocommerce.com for active plugins (#46780) 2024-05-03 17:43:39 +07:00
Albert Juhé Lluveras b0ab7ba213
Fix Merchant → Mini Cart in FSE editor can only be inserted once test (#47134)
* Fix Merchant → Mini Cart in FSE editor can only be inserted once test

* Add changelog file
2024-05-03 11:58:53 +02:00
Luigi Teschio e750b0ff3a
Product Details: not use `useBlockProps` twice (#46785)
* Product Details: not use  twice

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-03 10:21:06 +02:00
Sam Seay 3a5721c0d8
Replace @wordpress/components Button, Radio, RadioGroup with Ariakit Button (#45974) 2024-05-03 15:28:39 +12:00
Ilyas Foo 24348366b4
Fix missing shipping recommendation task (#47117)
* Add secret tasklist to exception for hidden list in tasklist API

* Changelog

* Lint
2024-05-03 11:06:33 +08:00
Khokan Sardar 51c629dee4
Fix extra /wp-admin from action url link for ticket 46993 (#47010)
* Fix extra /wp-admin from action url link for ticket 46993

* Fix extra /wp-admin from task LaunchYourStore get action url

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-03 10:46:57 +08:00
Naman Malhotra 1ba1e91a7e
HPOS - Made the query for retrieving meta keys more performant (#46985)
* Modified query for fetching meta key, making it more perfomant

* added changelog

* Improved query when include_private is true

* Address review feedback

* Address review feedback
2024-05-02 16:24:10 +01:00
Niels Lange 6066c082b0
Relocate helper (child) themes (#47080)
* Relocate helper (child) themes

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

* Correct wrong template slugs

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-02 21:23:52 +07:00
nigeljamesstevenson 296c0cfb23
Update to display full woocommerce version on status page rather than a shortened milestone style version (#46906)
* update to display actual woocommerce version on status page

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-02 14:44:21 +01:00
Moon f5d386f093
Remove wc_update_890_add_launch_your_store_tour_option (#47005)
* Remove wc_update_890_add_launch_your_store_tour_option

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-02 06:33:32 -07:00
Naman Malhotra 2b4b8be4e6
Improved readability and better UX for GitHub bug reports, by optimizing the format of the SSR (#47088)
* Improved readability and better UX for GitHub bug reports, by optimising the format of the SSR

* Added changelog
2024-05-02 18:26:37 +07:00
Gan Eng Chin 48f479fd67
Rename and sort filter options in "Add a filter" in Analytics (#46955)
* Rename filter options in Orders Analytics.

* Sort filter options in labels in Orders Analytics.

* Change filter labels to singular.

* Wider label column to accommodate label change.

* Rename filter options in Variations Analytics.

* Change filter options to Attribute, Category and Product in Variations Analytics.

* Revert "Change filter options to Attribute, Category and Product in Variations Analytics."

This reverts commit b3ca5d5807.

* Change "Add a Filter" to "Add a filter".

* Add changelog.

* Add changelog.

* Refactor getAvailableFilterKeys and getAvailableFilters into one function.

* Add code comment and remove unneeded code.

* Code refactor getAvailableFilters.

This is done by starting from allFilterKeys, and filtering with allowMultiple or not yet active.

With this, we don't need to have `inactiveFilterKeys` and "Ensure filters that allow multiples are always present."

* Fix tests and lint issues.

* Simplify code with Object.entries.
2024-05-02 18:34:17 +08:00
Chi-Hsuan Huang 36b3712860
[Launch Your Store] Remove "Powered by WooCommerce" footer (#47075)
* Remove unnecessary powered by WooCommerce link

* Add changelog
2024-05-02 16:52:06 +08:00
Luigi Teschio bbcc73ebeb
Migrate Jest Puppeteer E2E tests to Playwright (#46644)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* Try stabilizing the company field test

* Use canvas param instead of manually entering edit mode

* Remove double site editor redirect

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* Fix ESLint errors (#46626)

* Fix ESLint errors

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

---------

Co-authored-by: github-actions <github-actions@github.com>

* Blocks: Migrate multiple tests to Playwright

* fix path

* migrate other tests

* add product best sellers E2E tests

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

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

* Remove obsolete waitForLoadState call

* improve E2E tests

* fix E2E tests

* fix E2E test

* remove not necessary changelog

* improve E2E tests

* remove not necessary folder

* fix test

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-02 10:36:51 +02:00
Chi-Hsuan Huang 75bb52c310
Fix core profiler email field overlapping with continue button in mobile screen (#47077)
* Fix core profiler email field is not positioned correctly in mobile screens

* Add changelog
2024-05-02 16:09:58 +08:00
Chi-Hsuan Huang 1e2133e78c
[Launch Your Store] Fix failed to load coming-soon resources (#47073)
* Fix failed to load coming soon css/js

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

* Update plugins/woocommerce/src/Blocks/BlockTypes/ComingSoon.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2024-05-02 14:41:36 +08:00
Adrian Moldovan de91a0881d
[ci-jobs] Add support for github event and include HPOS disabled e2e tests in ci (#46922)
* Update env setup script to disable hpos

* Use DISABLE_HPOS instead of ENABLE_HPOS

* Log HPOS state

* Configure project for core e2e with HPOS disabled

* Add event argument for ci-jobs util

* Add event option for test jobs

* Add support for github events

* Add changelog

* Configure HPOS tests to run on pull_request

* Fix utils tests for undefined commandVars

* Added some tests for the event configuration

* Revert event for HPOS e2e to push

* Use matrix name in artifact name to avoid duplication

* Test with pull_request event

* Use job-index for unique artifacts names

* Revert event for HPOS e2e to push

* Add api tests for HPOS disabled

* Use unique artifact name for api tests

* Revert event for HPOS disabled api tests to push

* Rebuild monorepo utils to fix a merge conflict

* Updated wording
2024-05-01 10:36:24 -07:00
github-actions[bot] 8aed7ccecf
Delete changelog files based on PR 46935 (#47082)
Delete changelog files for 46935

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-01 11:19:39 +01:00
Vedanshu Jain 302da40214
Add index on SKU filed in wc_product_meta_lookup table. (#47051) 2024-05-01 11:18:46 +01:00
Moon 95a32efb2a
Return with home URL when permalink structure is empty (#46664)
* Return with home URL when permalink structure is empty

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

* Always includes home url

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-30 08:41:15 -07:00
Niels Lange 1d93ba0b6a
Block-based checkout - Shipping section changes (#46083)
* Refactor shipping sections

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

* Refactor various files and adjust e2e tests

* Display expected styles for “Ship” and “Pickup” in the page editor

* Use exact selector

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-30 19:59:03 +07:00
Ilyas Foo 35c50ebdb4
Try wrapping entire coming soon page under cover block to fix layout issue (#46914)
* Refactor to wrap everything under cover block

* Changelog

* Cleanup and fix classic theme

* Wrap center with stack for ease of adding elements nearby

* Update styles

* Fix dynamic background color

* Style clean up
2024-04-30 16:56:59 +08:00
Chi-Hsuan Huang fbef56fb4d
Add filter to convert WooCommerce slug for plugin dependencies (#46707)
* Add filter to convert WooCommerce slug for plugin dependencies

* Add changelog

* Add @since tag
2024-04-30 01:46:03 +00:00
Alexis Urien 3451c51cbf
Remove unused code introduced in 2014 but that looks never been used (#46843)
* Remove unused code introduced in 2014 but that has never been used

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

---------

Co-authored-by: Alexis Urien <alexis@smiile.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-04-29 19:55:29 +01:00
Adrian Moldovan e36baab4fe
[e2e tests] Disable woocommerce_coming_soon during test environment setup (#47024)
* Disable woocommerce_coming_soon in test env setup

* Disable woocommerce_coming_soon in test env setup

* Add changelog
2024-04-29 10:27:18 -07:00
Adrian Moldovan 9ff383e703
[e2e tests] Don't exit if the consumer token is not cleared in teardown (#47020)
* Assert for consumer token being cleared, but don't exit

* Add changelog
2024-04-29 10:24:29 -07:00
Álvaro Thomas 15c3135720
Update stable tag to 8.8.3 (#47033)
woorelease: Update stable tag to 8.8.3
2024-04-29 18:04:01 +02:00
Néstor Soriano fbb39807ac
Prevent product from being saved prematurely when updated via REST API (#46674)
* Prevent product being saved prematurely when updated via REST API

This includes the wc_product_attach_featured_image function
getting a new argument, $save_product, defaulting to true.

* Add changelog file
2024-04-29 13:54:54 +01:00
github-actions[bot] 664147a216
Delete changelog files based on PR 46972 (#47017)
Delete changelog files for 46972

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-04-29 13:56:17 +02:00
Patricia Hillebrandt 30054a25c0
CYS > Ensure get_patterns_ai_data_post is triggered only if AI enabled and improve performance (#46999)
* Ensure the get_patterns_ai_data_post method is triggered exclusively whenever AI is enabled. Udate the get_patterns_ai_data_post method to rely on get_posts instead of new WP_Query for fetching the results. Enable autoload for the 'woocommerce_blocks_allow_ai_connection' option to improve performance, since it is invoked in pretty much all page loads.

* Enable autoload for the 'woocommerce_blocks_allow_ai_connection' option to improve performance, since it is invoked in pretty much all page loads.

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

* address lint error.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-29 13:29:15 +02:00
Michael Pretty 1725ed2075
Use delete query format suppored by wpdb::get_table_from_query() in Abstract_WC_Order_Data_Store_CPT::delete_items() (#46692)
* Use delete query format suppored by wpdb::get_table_from_query() in Abstract_WC_Order_Data_Store_CPT::delete_items()

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

* Add unit test for deleting orders.

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-04-29 10:08:30 +00:00
Jorge A. Torres 9becfc8c46
Do not urldecode search terms in HPOS searches (#46972)
* Fix HPOS searches involving terms similar to URL-encoded characters

* Make sure search filters are non null
2024-04-29 11:32:53 +02:00
Sam Seay 05f14d9465
Fix incorrectly used aria-describedby in add to cart button of variable product (#46897) 2024-04-29 21:31:34 +12:00
Alba Rincón 79c5359a49
[CYS] Fix error when repeating the prompt on consecutives runs (#46872)
* Fix error when the repeating the prompt

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-29 10:24:48 +02:00
Sam Seay 75b7775e1b
Update Webpack in blocks to latest version (#46711) 2024-04-29 15:50:47 +12:00
Sam Seay 1e225f701f
Add aria label to the customer account block link (#46899) 2024-04-29 13:35:47 +12:00
dependabot[bot] f9a7ff04f0
Bump fast-xml-parser from 4.2.4 to 4.2.5 (#41982)
* Bump fast-xml-parser from 4.2.4 to 4.2.5

Bumps [fast-xml-parser](https://github.com/NaturalIntelligence/fast-xml-parser) from 4.2.4 to 4.2.5.
- [Release notes](https://github.com/NaturalIntelligence/fast-xml-parser/releases)
- [Changelog](https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/NaturalIntelligence/fast-xml-parser/compare/v4.2.4...v4.2.5)

---
updated-dependencies:
- dependency-name: fast-xml-parser
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

* Add changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-26 15:25:30 -07:00
Adrian Moldovan fb9613e92c
[e2e tests] Fix the cleanup of created test pages and move to fixtures (#46944)
* Added testPage fixture and testPgeTitle fixture option

* Update create-cart-block.spec.js to use testPage fixture

* Add changelog

* Update create-checkout-block.spec.js to use testPage fixture

* Update create-page.spec.js to use testPage fixture

* Update create-woocommerce-blocks.spec.js to use testPage fixture

* Update create-woocommerce-patterns.spec.js to use testPage fixture

* Update cart-block.spec.js to use testPage fixture

* Update cart-block-calculate-shipping.spec.js to use testPage fixture

* Update cart-block-coupons.spec.js to use testPage fixture

* Update checkout.spec.js to use some utils

* Update checkout-block-coupons.spec.js to use testPage fixture

* Use cart utils in checkout-create-account.spec.js

* Use cart utils in checkout-login.spec.js

* Use cart utils in order-email-receiving.spec.js

* Update shop-products-filter-by-price.spec.js to use testPage fixture

* Add helpers.js

* Move the page title random name generator in the base fixture to ensure uniqueness

* Remove eslint exceptions

* Use api fixture
2024-04-26 14:50:35 -07:00
Vedanshu Jain 94e438f524
Add experimental support for FTS indexes in HPOS. (#46130)
* Added key for sku

* Add experimental support for FTS indexes in HPOS. Additionally, revert existing HPOS search queries to use post like structure.

* Add unit tests

* Escape the error messages as per new phpcs rules.

* Fix query with index + added test.

* remove uninteded change.

* Unit test fixes.

* Remove unit test since the commit command breaks other tests.

Use message API instead of notices with defensive checks.
2024-04-26 17:25:03 +01:00
dependabot[bot] 3d8e20c62c
Bump octokit from 2.1.0 to 3.1.2 (#42891)
* Bump octokit from 2.1.0 to 3.1.2

Bumps [octokit](https://github.com/octokit/octokit.js) from 2.1.0 to 3.1.2.
- [Release notes](https://github.com/octokit/octokit.js/releases)
- [Commits](https://github.com/octokit/octokit.js/compare/v2.1.0...v3.1.2)

---
updated-dependencies:
- dependency-name: octokit
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Rename env variable

* Add changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-26 10:52:25 -03:00
Luigi Teschio ded320df95
[Blocks] Migrate stock filter to playwright (#46580)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* Try stabilizing the company field test

* Use canvas param instead of manually entering edit mode

* Blocks: Migrate stock filter to playwright

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

* Remove double site editor redirect

* remove not necessary file

* fix test

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* improve E2E tests

* fix test

* Fix ESLint errors (#46626)

* Fix ESLint errors

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

---------

Co-authored-by: github-actions <github-actions@github.com>

* address feedback

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-04-26 15:14:54 +02:00
Luigi Teschio 45a4817772
[Blocks] Migrate Attribute filter E2E tests to playwright (#46591)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* Try stabilizing the company field test

* Use canvas param instead of manually entering edit mode

* Remove double site editor redirect

* Blocks: Migrate attribute filter E2E tests to playwright

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

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* update path

* Fix ESLint errors (#46626)

* Fix ESLint errors

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

---------

Co-authored-by: github-actions <github-actions@github.com>

* address feedback

* fix visitSiteEditor

* fix description

* remove not necessary changelog

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-04-26 14:35:03 +02:00
Luigi Teschio 24c2832e4f
[Blocks] Migrate rating filter to playwright (#46583)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* Try stabilizing the company field test

* Use canvas param instead of manually entering edit mode

* Remove double site editor redirect

* Blocks: Migrate rating filter to playwright

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

* remove not necessary changelog

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* improve tests

* use visitSiteEditor util

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* use locator.fill

* Fix ESLint errors (#46626)

* Fix ESLint errors

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

---------

Co-authored-by: github-actions <github-actions@github.com>

* address feedback

* remove not necessary changelog

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-04-26 12:53:07 +02:00
Luigi Teschio 417baee8ef
[Blocks] Migrate Price filter tests to Playwright (#46576)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* [Blocks]: Migrate Price Filter tests to Playwright

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

* improve description

* Try stabilizing the company field test

* use Product Collection

* Use canvas param instead of manually entering edit mode

* remove blockData

* Remove double site editor redirect

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* update test

* add missing import

* Fix ESLint errors (#46626)

* Fix ESLint errors

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

---------

Co-authored-by: github-actions <github-actions@github.com>

* improve E2E tests

* remove not necessary changelog

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-04-26 12:07:00 +02:00
Bart Kalisz 5f7cc39330
Block E2E: Eliminate side effects through improved test isolation (#46125) 2024-04-26 11:39:11 +02:00
Corey McKrill 42902ef96d
Logging: Ensure the woocommerce_format_log_entry filter hook still has access to the log source value (#46851)
* Logging: keep full context in woocommerce_format_log_entry filter hook

The source value gets removed from the context array before it is
converted to JSON and output as part of the log entry. However, this
means that the source value is not available when the
woocommerce_format_log_entry filter hook fires, so plugins can't easily
determine where the log entry came from. This simply ensures that the
source value is still available to the filter hook, even though it's not
included in the JSON.
2024-04-26 09:12:50 +02:00
Paul Sealock d5d25d3bfe
[LYS] Comin soon block - Refactor and hide Styles block on Store Only (#46854) 2024-04-26 16:43:08 +12:00
Darren Ethier ed430bdd72
Block Hooks: Revert opening up hooked blocks to all block themes (#46935)
* Revert opening up hooked blocks to all block themes.

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

* Add version to @since tag in fn comment.

Missing @since version throwing a CI check error:

`A "@since" tag was found but no version declared.`

Adding `8.4.0`, as this was the version referenced before the revert.

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Daniel W. Robert <danielwrobert@gmail.com>
2024-04-25 22:33:05 -04:00
Paul Sealock 86eee17c20
[LYS] Convert status chip files to typescript (#46898) 2024-04-26 11:07:56 +12:00
Adrian Moldovan dd8aa94db9
[e2e tests] Fix more e2e tests with Gutenberg active (#46861)
* Add publish page util

* Update create-woocommerce-patterns.spec.js to use canvas

* Update create-woocommerce-blocks.spec.js to use the publishPage util

* Fix check for pattern

* Add changelog

* Update cart-block-calculate-shipping.spec.js to use canvas

* Add utility for adding a product to cart and only waiting for the relevant request instead of networkidle

* Update cart-block-coupons.spec.js to use canvas and new utils

* Update shopper/cart-block.spec.js to use canvas and new utils

* Update shopper/cart-calculate-shipping.spec.js to use new utils

* Update shopper/cart-checkout-block-calculate-tax.spec.js to use canvas and new utils.

* Use uuid instead of Date.now()

* Update shopper/cart-checkout-calculate-tax.spec.js to use new utils

* Suppress testing-library/await-async-utils eslint rule

* Add currency for a more strict text based locator

* Don't wait for networkidle

* Don't wait for networkidle in cart-checkout-restricted-coupons.spec.js

* Don't wait for networkidle in cart-redirection.spec.js

* Fix cart.spec.js

* Fix checkout-block-coupons.spec.js

* Fix checkout-block.spec.js

* Fix shop-products-filter-by-price.spec.js

* Add gutenberg to wp-env config

* Dirty fix for multiple coupons test

* Remove Gutenberg from wp-env
2024-04-25 13:19:21 -07:00
Alexander Minza ac7bcdbab3
Add filter hook wc_product_pre_has_unique_sku (#46763)
Adds the `wc_product_pre_has_unique_sku` filter hook to allow SKU uniqueness to be determined externally in order to avoid an expensive query.

Fixes #46759
Fixes #31720

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-04-25 10:41:33 -07:00
github-actions[bot] f7cad9c4be
Prep trunk for 9.0 cycle (#46893)
Prep trunk for 9.0 cycle with version bump to 9.0.0-dev

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-04-25 18:34:18 +02:00
github-actions[bot] 26a9972ebc
Release: Remove 8.9 change files (#46894)
Delete changelog files from 8.9 release

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-04-25 18:33:07 +02:00
Jorge A. Torres 7e763e64ec
Add support for 'customer' field to REST orders controller (v2/v3) (#46878)
* Properly handle 'customer' field in REST API when HPOS is active

* Remove code from v3 orders controller that was moved to v2 controller
2024-04-25 16:56:55 +02:00
Vlad Olaru 8a0ed2dd0b
Revert "Upgrade the WooPayments surfaces to the new designs" (#46915)
Revert "Upgrade the WooPayments surfaces to the new designs (#46873)"

This reverts commit 24808a0a8b.
2024-04-25 16:24:05 +03:00
Roy Ho d6a48ecaf5
Add autogeneration of block list reference documentation (#46479)
* Add autogeneration of block list reference documentation

* Fix typo

* Revert this change

* Fix typo

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

* Add blanklines to surrounding markdown headings

* Generate blocks references markdown

* Add space to header markdown

* Add ancestor information

* Use native Object.keys instead of lodash

* Remove the use of fast-glob

* Revert pnpm lock file changes

* Update plugins/woocommerce-blocks/bin/gen-block-list-doc.js

Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>

* Update doc title

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
2024-04-25 06:03:41 -07:00
Damián Suárez a0aa4724df
Tidy and update product attribute TypeScript types (#46907)
* rename ProductAttribute with ProductProductAttribute

* introduce ProductAttribute to define actions

* update importing attribute types

* fix select item type

* export ProductAttribute TS type

* update attribute-input-field component

* changelog

* update jsdoc block

* update test
2024-04-25 07:30:02 -04:00
RJ 7d07f0c502
revert: feature flag off (#46853)
revert LYS feature flag off for post-8.9
2024-04-25 18:44:14 +10:00
Fernando Marichal cacac06cef
Add help text under "Include downloads" toggle (#46752)
* Add help text under downloads toggle

* Add changelog
2024-04-25 05:30:17 -03:00
Alex Florisca 7dc8dd63ba
Update Order Summary Design (#45767)
* Add border around order summary on cart & checkout

* Group subtotal, discount, fees, taxes and shiping block

* Move the coupon form in order summary

* Move the coupon form in order summary

* Manage state externally in Panel component and refactor Coupon form to use the Panel component

* Remove descriptions from order summary items

* increase font weight of order summary title

* Tidy up design for desktop and add separator back in for blocks on checkout order summary

* Remove border around order summary on mobile

* Revert "Move the coupon form in order summary"

This reverts commit 4a8044cdcf.

* Change heading styles for cart

* Change font weight to 500 of order summary heading on checkout block

* Remove padding and border between order summary totals items

* Refactor css for cart & checkout totals to work in the editor

* Adjust cart totals heading in the editor

* Last adjustment to checkout totals style to work in editor

* Add changelog

* Change the cursor to pointer for the panel component

* remove unused short and full description from OrderSummaryItem

* Fix failing e2e tests

* Fix lint issues

* Vertically align order summary title in the editor

* Fix e2e tests

* Fix linting issues

* Fix unit tests

* Remove changes from woocommerce.php

* Fix checkout block test

* fix eslint errors in checkout block test

---------

Co-authored-by: Niels Lange <info@nielslange.de>
2024-04-25 12:03:31 +07:00
Corey McKrill d8486e579c
Logging: Add more robust method of filesystem initialization to handle configuration edge cases (#45914)
* Add FilesystemUtil class and unit tests

* Update logger to use FilesystemUtil

* phpcs cleanup

* Add changelog file

* Extract credentials gathering into a separate method

* Add notice when filesystem init fails

* Simplify getting filesystem credentials

* Tweak messaging in Settings when filesystem is not direct

* Remove unnecessary conditional in file deletion method

* Refactor test_clear

* Restore test_clear to its previous state

* Prevent MaxMind unit tests from polluting the state of WP_Filesystem
2024-04-24 12:18:31 -07:00
Vlad Olaru 24808a0a8b
Upgrade the WooPayments surfaces to the new designs (#46873)
* Import colors.native scss variables

* Add changelog

* Refactor WCPay banner and cleanup

We introduce a new WCPayConnectCard onboarding component and
remove/cleanup all other WCPay surface components.

This component uses the new design, updated payment methods icons
and WCPay logo.

* Add changelog

* Upgrade the WCPay payments settings banner

* test: Fix WCPay payments settings banner tests

* Update the WCPay welcome page to use the WCPayConnectCard component

* Update the Payments task page to use the WCPayConnectCard component

* Fix copy for payments settings methods CTA buttons label

* Add changelog

* Further cleanup of no-longer-used WCPay surfaces

* Consolidate onboarding component icons for single sources

* Minor cleanup

* test: Fix WCPay payments settings banner test

* test: Fix payments tasks page tests
2024-04-24 21:41:40 +03:00
Seghir Nadir 2054353f91
Add hooks when reading and writing additional fields (#46870)
* add new filters for reading and writing fields

* rename functions

* add test for action

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

* update docs

* fix typo in test and linting issues

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-24 17:38:15 +02:00
Albert Juhé Lluveras 738bbb0078
Move logic to hide Template selector in Shop page into Product Catalog class and add e2e test (#46405)
* Move logic to hide Template selector in Shop page into Product Catalog class

* Add changelog file

* Update plugins/woocommerce-blocks/tests/e2e/tests/templates/shop-page.block_theme.spec.ts

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Update plugins/woocommerce-blocks/tests/e2e/tests/templates/shop-page.block_theme.spec.ts

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Fix linting

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
2024-04-24 15:57:02 +02:00
Seghir Nadir 0f621c8977
get settings in correct format for Local Pickup (#46799)
* get settings in correct format

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

* expand test to also account for frontend

* remove added test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-24 15:22:36 +02:00
Albert Juhé Lluveras c59dcbe925
Create update_template_data util and formatting improvements (#46408)
* Create update_template_data util

* Fix comment typo

* Formatting

* Remove unnecessary use of BlockTemplateUtils

* Add changelog file

* Create update_template_data util (II)
2024-04-24 14:57:18 +02:00
Jorge A. Torres 573fe6e612
Fix order counts in status widget for sites with Redis object cache (#46860)
* Use non-persisent 'counts' group for order count cache

* Add changelog

* Apply suggestion
2024-04-24 10:30:31 +00:00
Matt Sherman 955786affc
Product Editor: Add ability to check if product editor made REST request (#46741)
* Add apiFetch middleware to add X-Wc-Product-Editor header to all requests from product editor

* Use productEditorHeaderApiFetchMiddleware

* Update name of header

* Utility function to check header

* Changelog

* Changelog
2024-04-24 06:24:09 -04:00
Ilyas Foo 27e4b07074
Wrap LYS templates and patterns under feature flag (#46856)
* Add feature flag for site editor templates and patterns for coming soon

* Changelog

* Lint

* Fix classic themes
2024-04-24 17:44:35 +08:00
Néstor Soriano 70f49bb389
Add a warning text about the incompatibility of the legacy REST API and HPOS (#46841)
* Add warnings about the incompatibility of the legacy REST API and HPOS:

- A static text in the features settings page, in the HPOS section,
  if the legacy REST API is active.
- A dismissable admin notice that is created at install/update time
  only if both HPOS and the legacy REST API is active
  (it's removed automatically when one of the two ceases to be active)

This covers both the legacy REST API being active in core and the
legacy REST API plugin being installed and active.

* Add changelog file

* - Remove the admin notice (will be added by the Legacy API plugin)
- Add the woocommerce_legacy_api_and_hpos_incompatibility_warning_text filter

* Fix misplaced line feed
2024-04-24 14:59:02 +05:30
Alba Rincón e20641341d
[CYS] Fix AI generated site title comparison (#46819)
* Fix AI generated site titles comparisons

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

* Fix lint errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-24 10:49:20 +02:00
Jonathan Lane a6fe8ef3ff
Fix flaky e2e tests (#46845)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-24 11:26:16 +03:00
Alba Rincón 5bc0a2c8b1
[CYS] Fix logo position after saving on the assembler (#46833)
* Fix logo position after saving on the assembler

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

* Fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-24 09:34:09 +02:00
RJ a0701f6ea5
fix: removed live explat test (#46818) 2024-04-24 16:51:49 +10:00
Fernando Marichal eab9d115d4
Enable "Custom Fields" feature flag for by default (#46832)
* Enable "product-custom-fields"

* Add changelog
2024-04-24 03:12:06 -03:00
RJ b3e7c62914
update: lys feature flag off (#46852) 2024-04-24 02:22:38 +00:00
Adrian Moldovan d57ff87cb3
[e2e tests] Fix blocks tests failing with Gutenberg active (#46842)
* Fix plugin slug for reporting

* Comment out setting of woocommerce_coming_soon

* Add canvas utility

* Update create-cart-block.spec.js to use canvas instead of page

* Update create-checkout-block.spec.js to use canvas instead of page

* Extract common editor actions into editor utils

* Add changelog

* Update post and page creation tests to use canvas

* Update create-woocommerce-blocks.spec.js to use canvas

* Activate Gutenberg to test changes

* Remove plugins listing from env setup script

* Fix eslint errors

* Remove redundant env setup script call

* Install Gutenberg for test in CI

* Test with Gutenberg

* Remove Gutenberg

* Fix block editor variable product test

* Revert "Fix block editor variable product test"

This reverts commit cd004530a7.

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-23 13:38:19 -07:00
Luigi Teschio bc18547e81
CYS - AI flow: Replace recordEvent with trackEvent (#46823)
* replace recordEvent with trackEvent

* fix type

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

* Add tracking event

* fix implementation

* fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-23 19:38:06 +02:00
Luigi Teschio cce1e224ad
CYS - AI flow: keep persisted query param when redirecting (#46820)
* CYS - set flowType when the state machine is instantiated

* remove not necessary code

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

* fix action

* improve logic

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

* CYS - AI Flow: hide X button on the entrepreneur flow

* CYS - AI flow: keep persisted query param when redirect

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-23 15:52:29 +00:00
Thilina Pituwala dae1c963da
Remove red badge on extensions menu when the site is not connected (#46807)
* Allow having two different in-app connect messages based on WooCommerce.com Update Manager installation status.

* Revert to older message.

* Update connect message icon.

* Prevent showing the red badge when site is not connected.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-23 15:38:11 +00:00
Seghir Nadir 742cbbda9d
Graduate Additional Fields to stable and rename it. (#46805)
* graduate woocommerce_blocks_register_checkout_field

* graduate filters

* Migrate Additional to Order and Other

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

* fix markdown lint

* update tests to use old value

* fix lint issue

* pass field options by reference

* update test helpers

* update tests to use latest api

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-23 16:47:32 +02:00
Seghir Nadir 0f4e675fb5
Correctly serialize data in additional fields API (#46762)
* fix data sanitization on session

* add changelog
2024-04-23 15:34:31 +02:00
Bart Kalisz 190c972332
Blocks: Isolate performance tests from e2e tests (#46773)
* Isolate (cart) performance tests from e2e tests

* Add changelog entry
2024-04-23 13:11:46 +02:00
Seghir Nadir fc31f0c77d
Be less aggressive on selected shipping rate logic for Checkout block (#46719)
* be less aggressive on selected shipping rate logic

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-23 13:03:46 +02:00
Luigi Teschio 25fae0cc27
CYS - AI Flow: hide X button on the entrepreneur flow (#46800)
* CYS - set flowType when the state machine is instantiated

* remove not necessary code

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

* fix action

* improve logic

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

* CYS - AI Flow: hide X button on the entrepreneur flow

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-23 10:27:32 +00:00
Néstor Soriano 37beab9364
Allow enbling HPOS when the only incompatible plugin is the Legacy REST API one (#46634) 2024-04-23 12:19:29 +02:00
Sam Seay 97595ce95d
Fix crashes in mini-cart by externalizing the wc types package. (#46814) 2024-04-23 20:18:37 +12:00
Luigi Teschio 2ae56b2de2
CYS - set flowType when the state machine is instantiated (#46528)
* CYS - set flowType when the state machine is instantiated

* remove not necessary code

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

* fix action

* improve logic

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

* remove not necessary guards

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-23 10:12:35 +02:00
Paul Sealock b9a1b67991
[LYS] Reapply styles from 46619 (#46813)
* copy styles over from 46619

* Fix header padding

* login/out

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

* typo

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-23 19:26:35 +12:00
Paul Sealock 89c330f03e
[Launch Your Store] Use Block to handle template styles (#46751) 2024-04-23 16:07:56 +12:00
Adrian Moldovan a33078ba6b
[performance metrics] Use engines.pnpm version when setting up the environment (#46787) 2024-04-22 12:34:28 -05:00
Jorge A. Torres 05fed19271
Move all HPOS CLI tools to the "hpos" namespace (#46766)
* Deprecate CLI tools in the “cot” namespace

* PHPCS fixes

* Add changelog

* Restore a few args for backwards compatibility
2024-04-22 14:24:40 +01:00
Gan Eng Chin 3ac3a497ba
Change "Origin" column name to "Attribution" in Orders Analytics (#46760)
* Change "Origin" column name to "Attribution" in Analytics.

* Rename "Origin" column to "Attribution" in Orders Analytics report download.

* Add changelog.
2024-04-22 21:20:30 +08:00
Gan Eng Chin c595717d16
Fix "Add a filter" UI issue in Analytics (#46750)
* Fix UI for add filter popover in Analytics.

* Make character casing consistent for filters.

* Add changelog.

* Add changelog.

* Change filter label to sentence case.
2024-04-22 21:15:22 +08:00
Alba Rincón efbce912c5
[CYS] Remove `Save` button from inside the different sections (#46526)
* Remove save button, rename done button and fix tests

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

* Fix error

* Fix lint errors

* Fix more lint errors

* Fix done button tests

* Add missing awaits

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-22 14:26:57 +02:00
Ilyas Foo ecb48cc0fb
Replace LYS coming soon override to use template include filter and handle 404 gracefully (#46667)
* Hide woo breadcrumb

* Update coming soon entire site style

* Update style

* Fix wp group block

* Change coming soon template to use template_include instead

* Changelog

* Change to add_filter

* Proper handling for non-FSE themes

* Update comments

---------

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2024-04-22 17:54:48 +08:00
Chi-Hsuan Huang b9ea5bacd8
Fix back from CYS via LYS goes to Home, not LYS (#46665)
* Add goBack action to customize-store

* Add changelog

* Add __experimentLocationStack to history

* Update customize-store goBack action

* Rename __experimentalLocationStack
2024-04-22 21:26:32 +12:00
kkmuffme 118932d2ee
Skip loading of webhooks if webhooks disabled (#46057)
* Skip loading of webhooks if webhooks disabled

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

* PHP CS fix.

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-04-22 14:24:56 +05:30
Kyle Barrow d612e893ff
Prevent fatal error on the Status page when the log directory contains an unreadable directory (#46709)
Add flag to RecursiveIteratorIterator to prevent fatal error on Woocommerce Status page when system tmp folder includes unreadable directories
2024-04-22 10:52:48 +02:00
Jorge A. Torres 24a9b8c771
Remove HPOS entries from Tracker and WC status that are no longer in use (#46239)
* Remove unused HPOS props from WC_Tracker and status screen

* Add changelog

* Fix tests
2024-04-22 12:49:07 +05:30
Barry Hughes 99be7b960b
Adjust labelling of refund line items in refund emails and order summaries. (#45455) 2024-04-22 12:45:43 +05:30
Mayisha de3bc938d2
Fix breadcrumb back icon color to follow the admin theme color (#40106)
* prevent breadcrump back icon from being converted to an image

* add changelog file
2024-04-22 12:31:00 +05:30
Mayisha 2f29ef8a5a
Replace pink with WooCommerce purple in reports and ratings (#40243)
* replace pink with wc purple in reports page

* use wc purple in product rating in the dashboard widget

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

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

* use better contrast

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-04-22 12:30:25 +05:30
RJ fd52f18f6b
Move LYS coming soon initialization to core profiler flow (#46708)
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2024-04-22 14:49:59 +08:00
Bart Kalisz 007a4238c3
Blocks E2E: Provide correct expected translation (#46756) 2024-04-20 13:23:55 +02:00
Adrian Duffell 073d0eb59d
LYS copy updates (#46668)
* lys blurb

* Add constants for docs

* Store mode copy

* Private link copy

* Coming soon message

* Bug fix
2024-04-20 00:02:53 +00:00
Leif Singer d1be68b88c
Update @woo.com email addresses to @woocommerce.com (#46387)
* update @woo.com email addresses

* update %40woo.com email address

* add changelog file

* update docs manifest
2024-04-19 21:11:01 +00:00
Nathan Silveira ea96bea77e
Highlighting text in the product's description of the new product editor is not visible inside editor (#46728)
* Enqueue global presets css while loading the new product editor

* Change from gutenberg to wp prefix
2024-04-19 13:47:13 -03:00
Fernando Marichal d21b03588a
Add E2E tests to cover Publish dropdown options (#46658)
* Add e2e tests for publish options

* Add changelog

* Create different tests for options

* Update plugins/woocommerce/tests/e2e-pw/tests/merchant/products/block-editor/product-edit-block-editor.spec.js

Co-authored-by: louwie17 <lourensschep@gmail.com>

---------

Co-authored-by: louwie17 <lourensschep@gmail.com>
2024-04-19 10:46:32 -03:00
Justin Palmer 2d71790b72
Avoid JS errors if Sourcebuster library isn't loaded (#46723)
* Don't initialize or handle data if SBJS isn't loaded
2024-04-19 12:24:10 +02:00
Panos (Panagiotis Synetos) afc471d0ed
[LYS] Fix deprecation error with lowercase $user->id (#46747)
👌 Use uppercase $user->ID and some text updates
2024-04-19 13:17:14 +03:00
Chi-Hsuan Huang b575fd580e
Apply styles to Coming soon entire store regardless of theme (#46619)
* Hide woo breadcrumb

* Add deregistration of unnecessary styles for the coming soon page in ComingSoonRequestHandler.php

* Update coming soon entire site style

* Add fonts

* Add changelog

* Update style

* Fix wp group block
2024-04-19 08:00:49 +00:00
EngHell 05a728ff03
performance: checks fo $this->data_synchronizer->data_sync_is_enabled… (#46616)
* performance: checks fo $this->data_synchronizer->data_sync_is_enabled() before executing $this->data_synchronizer->get_sync_status()

* Update plugins/woocommerce/src/Internal/Utilities/COTMigrationUtil.php

Fix code style issues

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

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-04-18 15:59:18 -07:00
Gan Eng Chin 48f2a4c5ad
Display "Origin" column in Orders table in Orders Analytics (#46424)
* Display channel column in Orders Analytics UI.

* Set $data to false to not use cache.

For development purpose.

* Get channel info from order meta and put into extended_info.

* Set channel in order item level.

* Replace channel with get_origin_label in extended_info.

* Remove unnneeded channel in orders_data.

* Display origin instead of channel in table.

* Fix lint errors.

* Query order meta table based on HPOS.

* Remove code for development purpose.

* Add changelog.

* Fix code comment.

* Guard against null values.

`_wc_order_attribution_utm_source` can be null when the order is created via web admin.

* Set default origin label to "Unknown".

This default is the same as found in `output_origin_column` function in plugins/woocommerce/src/Internal/Orders/OrderAttributionController.php.

* Support server side report download.

This is needed when there are more than 25 records in the Orders Analytics report.

* Fix failed test.

* Fix lint error.

* Simplify code.

We loop through $orders_data instead of $order_attributions data. This is because $order_attributions may not have attributions data for some orders.

By looping through $orders_data, it would automatically cater for "Unknown" data from get_origin_label function call, and we don't need to specify "Unknown" as default value for origin.

* Change "channel" to "attribution" object in controller.

This is because we need more than one piece of information, so we need it to be an object with properties like `origin`, `device` etc.

Co-authored-by: Kader Ibrahim S <kader.ibrahim.s@a8c.com>

* Change `origin` string to `attribution` array in Orders DataStore.

Co-authored-by: Kader Ibrahim S <kader.ibrahim.s@a8c.com>

* Change origin string to attribution object.

* Fix indexing after changing from origin string to attribution object.

* Change from origin string to attribution object in table.js.

* Simplify code.

To make code shorter and easier to read, instead of long horizontal code.

* Fix lint errors.

* Fix failed test.

* Fix lint error.

* Fix retrieving origin in CSV export.

* Use $wpdb->postmeta; cosmetic change.

Co-authored-by: Kader Ibrahim S <kader.ibrahim.s@a8c.com>

* Cosmetic change.

Co-authored-by: Kader Ibrahim S <kader.ibrahim.s@a8c.com>

* Sanitize order IDs by using absint.

Co-authored-by: Kader Ibrahim S <kader.ibrahim.s@a8c.com>

---------

Co-authored-by: Kader Ibrahim S <kader.ibrahim.s@a8c.com>
2024-04-18 16:16:26 +00:00
Leif Singer 2d837ac687
Fix: update REST API v3 reports/orders/totals endpoint to be compatible with HPOS (#46715)
* add a failing test for order totals with HPOS enabled but sync disabled

* fix comment

* ensure the wc/v3/reports/orders/totals endpoint is compatible with HPOS

* add changelog file

* address linter issues
2024-04-18 15:49:19 +00:00
Seghir Nadir af53de9aaa
Fix E2E search string for Cart block shipping tests (#46720)
* Fix E2E search string for Cart block shipping tests

* add changelog

* update to uppercase

* fix test

* fix test one last time

* fix lint
2024-04-18 17:13:49 +02:00
Raluca Stan f165667632
Prevent checkout blocks breakage for stores using similar number separators (#46241)
* Add a safety check for the numbers with the same value for the separators

This case breaks the library we are using for number formatting. This is not documented on their end and can't be fixed by passing a different configuration.
We are fixing it on our end by overwriting the thousand separator.
This change will only surface in the checkout blocks, at they are the only blocks doing formatting via React (the products blocks use php).
This will not apply to the order confirmation.
This change is preventing a fatal error thrown by the library and allowing users to see the content of the cart.
It's an edge case, because it happens only why people have the same values for the separators, which is an non-standard way to format.

* Add unit tests and changelog

* Add a safety check for the numbers with the same value for the separators

This case breaks the library we are using for number formatting. This is not documented on their end and can't be fixed by passing a different configuration.
We are fixing it on our end by overwriting the thousand separator.
This change will only surface in the checkout blocks, at they are the only blocks doing formatting via React (the products blocks use php).
This will not apply to the order confirmation.
This change is preventing a fatal error thrown by the library and allowing users to see the content of the cart.
It's an edge case, because it happens only why people have the same values for the separators, which is an non-standard way to format.

* Add unit tests and changelog

* Improve tests

* "Improve tests"
2024-04-18 15:17:30 +03:00
Chi-Hsuan Huang ea27c1f364
[LYS] Regenerate share key on the fly (#46662)
* Add logic to regenerate the share key if it's not set in LaunchYourStore.php

* Add changelog

* Use add_option directly
2024-04-18 19:39:23 +12:00
Nathan Silveira 5e7962af67
Fix pages not being scrollable on variations on the new product editor (#46700) 2024-04-18 04:16:31 -03:00
Chi-Hsuan Huang da5272497d
Fix LYS success page shown but Task not crossed off (#46663)
* Add useDispatch hook and ONBOARDING_STORE_NAME import in Congrats.tsx

* Add changelog
2024-04-18 10:29:07 +12:00
Ilyas Foo d2c4490c92
Fix deprecated error message for LYS in PHP 8.1 environment (#46661)
* Fix deprecated error with strlen when using PHP 8.1

* Changelog
2024-04-18 05:45:13 +08:00
Thomas Roberts 9e0fab4ebc
Reset shipping rate font size to match other elements (#46345) 2024-04-17 13:54:43 -07:00
nigeljamesstevenson f10cc1af4e
Update stable tag to 8.8.2 (#46698)
woorelease: Update stable tag to 8.8.2
2024-04-17 18:03:08 +01:00
Fernando Marichal fd521fb338
Convert the downloable checkbox into a toggle (#46693)
* Convert downloable checkbox into a toggle

* Add changelog
2024-04-17 13:53:53 -03:00
Bart Kalisz 8da0396b34
Blocks E2E: Fix basic role-based tests (#46684) 2024-04-17 18:50:37 +02:00
Jonathan Lane 87ac3d2c85
Add stalebot for flaky e2e test reporter (#46585)
* Add flaky test reporter for flaky e2e test reporter

* Add to stalebot workflow instead

* Update stale action to 9 for node 20

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-17 11:03:12 -03:00
Ron Rennick f51d6fe652
fix js lint filename pattern matching (#46605)
Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-04-17 16:55:52 +03:00
Jonathan Lane 9888ee7f4b
Updated deprecated gh-script action to node 20 variant (#46673)
* Updated deprecated gh-script action to node 20 variant

* Minor change in e2e test to trigger CI

* Revert e2e test change

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-04-17 12:31:16 +01:00
Gan Eng Chin 6e78a1c6ca
Remove unneeded empty "Unknown" code handling in Order Attribution (#46654)
* Remove empty "Unknown" handling.

This is because `get_origin_label` would return "Unknown" by default, and therefore empty($origin) would not be true.

If someone use a wc_order_attribution_origin_formatted_source filter to return '' as the formatted source, we should respect it anyway and we should not override it with "Unknown".

* Add changelog.
2024-04-17 19:28:09 +08:00
Prahesa Kusuma Setia 1fddbb1001
Add notice to connect to woocommerce.com in wc settings and marketplace (#45536)
* add a woo.com connect notice in the plugin list for unconnected store

* add an extra notice string for store that runs outdated woo plugins

* add connect page hyoerlink to the plugin notice

* add changelog

* add comment for maybe_show_connect_notice_in_plugin_list()

* fix linter error

* use installed local woo plugin as the counter of extra notices

* only show woo connect notice in the woocommerce settings page

* add woocom connect notice component

* add woocom connect notice component to the content component

* add extra notice in the woocom connect notice component based on the local woo plugins count

* persist dismissal of woo connect notice in the wc admin settings page

* update changelog

* use update-check-public for unconnected stores

* use information from update-check-public API to determine notice show logic

* re-show dismissed connect woocom notice after 1 month

* add re-show notice logic for react admin page of woo connect notice

* fix identation

* differentiate local storage key for notice dismissal

* move woo connect notice script to different file

* rename to connectnotice

* fix linter issue

* fix linter issue

* update woo.com to woocommerce.com

* update woo.com to woocommerce.com in comment

* capitalize the WooCommerce.com

Co-authored-by: Leif Singer <leif@automattic.com>

* capitalize WooCommerce.com

---------

Co-authored-by: Leif Singer <leif@automattic.com>
2024-04-17 10:13:24 +00:00
louwie17 c0424210ab
Add safety check for rare fatal case with subscription note (#46472)
* Add safety check for rare fatal case

* Change to is_object check
2024-04-17 07:05:34 -03:00