Commit Graph

63687 Commits

Author SHA1 Message Date
Remi Corson 7c7ed0d7c4
Use WC built-in Action Scheduler to fetch in-app promotions (#45628)
* Use WC built-in ActionScheduler

* Calling `WC_Admin_Marketplace_Promotions::init` immediately from `WC_Admin` constructor. `WC_Admin` is only instantiated in an admin request. If we init marketplace promotions from `woocommerce_init`, we'll be too late to add the callback for the scheduled action that fetches promotion data.

* Changed transient life to 12 hours to match frequency of ActionScheduler action.

* Changelog.

* Updated `fetch_marketplace_promotions` to replace the transient every time it runs. This allows more frequent changes.

* Added filter to allow promotions to be suppressed.

* Fix indentation

* More indentation fix

* Clearing scheduled action if `woocommerce_marketplace_suppress_promotions` filter returns "true".

* Running `clear_scheduled_event` on `init`.

* WP_CLI check

* We were including and instantiating `WC_Admin_Marketplace_Promotions` from the `WC_Admin` constructor. But `WC_Admin` is only instantiated during `is_admin` requests. We also need to respond to cron requests. So we're now including the class from `class-woocommerce.php` if the context is admin or cron, and instantiating it on `init`. This fixes the error in Scheduled Action `action failed via WP Cron: Scheduled action for woocommerce_marketplace_fetch_promotions will not be executed as no callbacks are registered.`

* Linter errors.

* Enhance append_bubble() method

* introduce SCHEDULED_ACTION_INTERVAL

* Make linter happier

* Linter errors.

---------

Co-authored-by: Remi Corson <1649788+corsonr@users.noreply.github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2024-03-20 15:00:41 +01:00
Adrian Moldovan 13ac9141a1
[e2e tests] Stabilize product quick delete test (#45636) 2024-03-20 10:59:48 -03:00
Karol Manijak a6500aa572
Prevent warning if there was no post ID available in some product elements (#45675)
* Prevent warning if there was no post ID available in some product elements

* Add changelog
2024-03-20 14:49:02 +01:00
Luigi Teschio 55cd1982dc
CYS: Fix Header/Footer template parts disappear (#45735)
* CYS: Fix Header/Footer template parts disappear

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

* show pattern list only when the site editor is ready

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-20 13:28:56 +00:00
nigeljamesstevenson 767528215b
Update Action Scheduler to 3.7.3 (#45739)
* Update Action Scheduler to 3.7.3

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-20 13:27:02 +00:00
Jorge A. Torres 4ce5bb55b4
Prevent possible type error during `WC_Install::create_options()` (#45730)
* Prevent possible type error during `WC_Install::create_options()

* Add changelog

* document the `woocommerce_get_sections_' . $this->id` filter

---------

Co-authored-by: Leif Singer <git@singer.sh>
2024-03-20 13:12:37 +00:00
Roy Ho 3ef4fc88a5
Rating filter: fix misaligned count (#45674)
* Rating filter: fix misaligned count

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-20 05:24:47 -07:00
Niels Lange fa49848cf9
Fix broken CSS classes and update JS unit snapshots (#45732)
* Fix broken CSS classes and update JS unit snapshots

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-20 17:42:05 +07:00
Erik Golinelli 49b92070cc
Removes the star icon font (#31670)
* removes the star font
The WooCommerce font can hold many other icons there isn't the reason to load a font for a single icon

* updates custom templates stylesheets

* adds woff2 font format to themes customized stylesheets

* fix the star font size diff

* removes WooCommerce.eot and SVG file that are no longer needed and updates the template style in order to import from font.scss

* Optimized font import
Unifies the import of fonts by extending it to the twenty-twenty-three theme

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

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

* Svg font minification (WooCommerce.svg)

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

* "star" font phasing out
The font family 'star' was replaced in all files. However, it continues to remain physically in the repo but not in the style files

* Removes the `.eot` font file since nowdays it's completely useless

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-20 11:28:27 +01:00
Paulo Arromba 0a3cf74c06
Validate and present custom error for not in allowed emails coupons (#43872)
* Removed deprecated WC_COUPON::is_valid() method usage from CartController.php

* Reverted wrongly changed line.

* Added validate_coupon_allowed_emails() to WC_Discounts

* Added soft validation for allowed emails coupons, with custom notice via WC_Coupon::add_coupon_message()

* Fixed log warning

* Refactored add_coupon_message()

* Prevent duplicate coupon notices.

* Changed coupon soft validation notice type.

* Tweaks

* Run coupon soft validations only on cart validation.

* Reverted soft validation, and added email information for coupon validation

* Removed unused coupon message

* PHP lint fixes.

* Added changelog.

* PHP lint fix

* Updated allowed coupon validation error message

* Updated PW tests

* Updated PW tests

* Updated email restricted coupon message.

* Small change for readability.

* Different error messages for shortcode cart and shortcode checkout

* Simplified CartApplyCoupon::get_post_route_response()

* Revert "Simplified CartApplyCoupon::get_post_route_response()"

This reverts commit 43f185b59a.

* Expose additional error data in error API response

* Simplified AbstractCartRoute::get_route_error_response()

* Linting

* Restored comment deleted by mistake.

* Introduced API context based coupon errors

* Fixed Doc Block

* Linting

* Reverted deprecated method removal

* Reverted deprecated method removal

* WIP

* Display context based errors on cart and checkout for allowed emails coupons.

* Small code fixes.

* Removed coupon_error_code from api response.

* Tweaks and used 'details' on the API response

* Fixed indent.

* Set coupon errors using the validation store rather than local state

* Revert import to original state.

* Updated tests.

* Updated tests.

* Simplified comments

* Added testing for Cart page

* Lint fixes

---------

Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
2024-03-20 10:19:06 +00:00
Alba Rincón 211d39d453
[CYS] Go to the assembler when the cys task is completed (#45713)
* Show modal when the task is completed

* Go to the assembler when the theme was already customized

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

* Fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-20 10:51:33 +01:00
Simran Vijwani 28f79b4ebe
Fix is_read value in Admin notes (#43096)
* Add is_read property to note data

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

* Remove unnecessary type casting

* Fix boolean typecasting in DataStore and Note classes

* Restoring the original `isset( $note_row->is_read )` condition. I believe it's there for notes without this property.

* WC_Admin_Tests_Notes_Data_Store::test_read to account for return type of `get_is_snoozable`.

---------

Co-authored-by: Simran <simran.kaur@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2024-03-20 09:37:44 +00:00
Néstor Soriano 1adeaf225c
Install the Legacy REST API plugin on WooCommerce upgrade if needed (#45570)
The plugin is installed and activated if it's not installed already
and either the Legacy REST API is installed in the site
or there's at least one webhook that uses the Legacy REST API
code for the payload (disabled webhooks also count).

Also the WC_Admin_Notices::remove_notices method is added.

---------

Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
2024-03-20 10:24:46 +01:00
Walther Lalk 3c15ced8fd
Proof of Concept for allowing product tour to be extensible (#45617)
* Add the ability to extend/modify the steps in the product tour

* Remove unused import

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

* Add data validation

* Correct import order

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-20 09:22:21 +00:00
Alba Rincón 7b22412508
[CYS] Transitional page: fix margins and make the 3rd question not required (#45709)
* Fix margins and make the 3rd question not required

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-20 09:46:38 +01:00
Paul Sealock 1849d94c52
Payment Gateways: Update Airwallex png (#45694)
* Update Airwallex png

* Update Airwallex png

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

* resize

* 144px

* remove old

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2024-03-20 13:35:21 +08:00
Paul Sealock 27a473ec8b
Launch your store: Address status issues and filesystem (#45688)
* Conditionally show status on homescreen

* get lys link in status

* refactor launch-store folders

* remove unused function

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

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2024-03-20 11:26:17 +08:00
Patricia Hillebrandt fda79df11b
[CYS on Core] Remove the Feature Flag from the Customize Your Store flow on Core (#44824)
* Disable the feature flag from the CYS.

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

* Fix unrelated failing e2e test for the 'Get paid' page

* Revert "Fix unrelated failing e2e test for the 'Get paid' page"

This reverts commit d388fce212.

* Fix potential flaky test

* Revert "Fix potential flaky test"

This reverts commit 77fa2813f2.

* Temporarily remove the Can visit the WooPayments Connect page instead of setup task for supported countries test

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: elazzabi <ahmed.el.azzabi@automattic.com>
2024-03-19 20:48:23 +00:00
Mahesh Bohara 6ce72a25ba
Add loading state functionality to Schedule button in the calendar (#45645)
* Add loading state functionality to Schedule button in the calendar

* Add changelog

* Updated changelog file
2024-03-19 14:45:27 -04:00
Lee Willis b88821f685
Introduce handleConfirm. Export handlePrompt & handleConfirm from product-editor (#44226)
* Introduce handleConfirm. Export handlePrompt, and handleConfirm from product-editor

* Change as requested

* Add changelog

* Fix onCancel behaviour

* Fix lint error

---------

Co-authored-by: Lee Willis <lee@ademti-software.co.uk>
Co-authored-by: Matt Sherman <matt@jam123.com>
2024-03-19 14:11:14 -04:00
Dan Q b0ea77326f
Add styling to marketplace to identify sponsored products (#45684)
* Pass 'Sponsored' detail down to product cards from API

* Style a "Sponsored" label

* Stripe on top of sponsored products

* Add 'blob' next to sponsored listings

* Fix indentation bug

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

* Update plugins/woocommerce-admin/client/marketplace/components/product-card/product-card.tsx

Co-authored-by: Remi Corson <remicorson@gmail.com>

* Update plugins/woocommerce-admin/client/marketplace/components/product-card/product-card.tsx

Co-authored-by: Remi Corson <remicorson@gmail.com>

* Update plugins/woocommerce-admin/client/marketplace/components/product-card/product-card.tsx

Co-authored-by: Remi Corson <remicorson@gmail.com>

* Apply suggestions from code review

Co-authored-by: Remi Corson <remicorson@gmail.com>

* Add missing close parenthesis following linter changes

* Make linter happier about hex colors (still needs variablising)

* Fix margins around vendor name

* Fixed height of product stripe

* Linting

* Moved color to variable and calculated alpha using Sass functions

* Update plugins/woocommerce-admin/client/marketplace/components/product-card/product-card.scss

* Update plugins/woocommerce-admin/client/marketplace/stylesheets/_variables.scss

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Remi Corson <remicorson@gmail.com>
2024-03-19 18:10:34 +00:00
Fernando Marichal 99853c19bf
Fix double scroll bar in pre-publish panel (#45671)
* Fix double scroll bar

# Conflicts:
#	packages/js/product-editor/src/components/prepublish-panel/style.scss

* Add changelog

* Add comment to styles
2024-03-19 15:06:30 -03:00
github-actions[bot] a461a86ee0
Update changelog.txt from release 8.7.0 (#45715)
Prep trunk post release 8.7.0

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-03-19 17:47:55 +00:00
nigeljamesstevenson f4c4aa3567
Update stable tag to 8.7.0 (#45719)
woorelease: Update stable tag to 8.7.0
2024-03-19 17:32:03 +00:00
Patricia Hillebrandt 61236dab0d
[CYS on Core] Ensure the "Didn’t find a theme you like" text is displayed exclusively at the bottom of the themes card (#45706)
* Ensure the 'Didn’t find a theme you like' text is displayed exclusively at the bottom of the themes card

* Limit the display of the CYS design banner to the Themes screen.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-19 17:57:24 +01:00
Patricia Hillebrandt 2fc83cbe85
[CYS on Core] Add the sample product badge before the product name to mark placeholder products. (#45691)
* Add the sample badge to dummy products on the main products list.

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-19 16:51:38 +00:00
jonathansadowski 8631fb5d48
Prepare for WP 6.5 by updated tested / required versions. (#45633) 2024-03-19 11:47:51 -05:00
Fernando Marichal 298ed3c680
Fix section title styles in the pre-publish panel on WP 6.5 (#45689)
* Fix section title

* Add changelog
2024-03-19 13:21:29 -03:00
Maikel Perez c2f33b2f5b
Replace the Draft tag with a Scheduled tag in the product header (#45685)
* Show Scheduled product header tag when the product is been scheduled

* Fix the pre publish modal header message when to say scheduled when the product has a date in the future

* Add changelog file
2024-03-19 16:20:19 +00:00
Maikel Perez 617b49464e
Hidden tag inconsistency (#45679)
* Header tag Hidden now is aligned with the Visibility: Hidden from the pre publish modal

* Add changelog file
2024-03-19 16:16:34 +00:00
Fernando Marichal 506a8b0086
Fix publish dropdown visibility in new product after hiding pre-publish modal (#45682)
* Publish dropdown visible after hidding panel

* Add changelog

* Rename prop
2024-03-19 13:15:33 -03:00
Ilyas Foo 5485665727
Refactor remote specs structure and naming (#45547)
* Deprecate DataSourcePoller

* Deprecate and move all rule processors and transformers

* Lint

* More deprecation

* Remove extra line

* Update deprecated class to not produce too many messages by limiting to unique messages

* Changelog

* Update all dependency uses, move TransformerService and TransformerInterface to Transformers package

* More dependency update

* Changelog

* Fix wrong file reference

* Lint markdown

* Lint markdown

* Add unsaved file

* Delete unused file and more lint

* More lint

* Ugh ignore faulty lint rule

* Rename variables for lint
2024-03-19 22:15:05 +08:00
github-actions[bot] 7214a1ffee
Delete changelog files based on PR 45490 (#45621)
Delete changelog files for 45490

Co-authored-by: WooCommerce Bot <no-reply@woo.com>
2024-03-19 12:53:45 +00:00
Alba Rincón f2a8c7fe36
[CYS] Update the woo.com themes link to include the back url (#45661)
* Update the woo.com theme link to include the back url

* Encode url to avoid losing the path param

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

* Fix lint error

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-19 11:52:55 +01:00
Luigi Teschio 1d1f7ddc3b
[CYS]: Fix event transitional page (#45678)
fix event transitional page
2024-03-19 10:34:36 +00:00
Fernando Marichal f6738e4431
Fix organization tab e2e tests (#45692) 2024-03-19 11:57:17 +02:00
Karol Manijak 6cb52c00c0
Product Collection: add e2e tests with all product elements included (#45623)
* Prepare test cases

* Shorten out the test description

* Add first test in a post with dummy expect

* Verify all content is displayed

* Add the test in Product Archive and Home Page

* Add changelog

* Add tag to Beanie product

* Switch to Beanie which is on sale to verify on sale badge

* Add comments to explain the expects

* Adjust the expected content

* Switch to lower case in expect

* Switch from woocommerce/product-summary to core/post-excerpt

* Adjust products.sh

* Improve method waiting for products to show so it;'s deterministic

* Refresh locators in template

* Remove unnecessary check

* Eslint disable: expects are extracted to function so disable eslint compaining there's no expect

* Adjust other test after amending products setup

* Change the verify happening in a wrong place

* Tests adjustments

* Revert Blog Home template before performing a test

* Fix other tests
2024-03-19 08:59:58 +01:00
Roy Ho 72f5db9b6d
Change checkbox label to be inline-flex to limit the width to the content (#45603)
* Change checkbox label to be inline-flex to limit the width to the content

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

* Fix changelog entry

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

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

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-18 13:05:49 -07:00
Maikel Perez dea68ee3e3
Handle taxes not being enabled and customized tax classes (#45531)
* Create and register the woocommerce/product-select-field block

* Replace the tax class radio group block by woocommerce/product-select-field block

* Hide tax fields when taxes are disabled

* Hide tax fields when taxes are disabled in product variations

* Add changelog files

* Fix linter errors
2024-03-18 18:09:03 +00:00
Fernando Marichal ee044a7b50
Remove the "Always show pre-publish checks" from pre-publish panel (#45672)
* Remove "always show prepublish panel"

* Add changelog
2024-03-18 14:00:21 -04:00
Gan Eng Chin 718fe762fa
Add formatting for Cost and Sales numbers in Campaigns card in Marketing page (#44917)
* Return formatted cost and sales price for MarketingCampaigns.

* Display formatted cost and sales number in Campaigns card.

* Use price formatting.

* Format decimal places based on currency.

* Add changelog.

* Fix type issue is useCampaigns.test.ts.

* Use wp_strip_all_tags to respect currency symbol positioning settings.

Without wp_strip_all_tags, the result contains <bdi> element, and it causes browser to show the currency symbol in unexpected unwanted position.

* Fix PHP linting issue.

* Fix tests in useCampaigns.test.ts.

* Use html_entity_decode to remove dangerouslySetInnerHTML usage.

* Remove unneeded code formatting in Campaigns.tsx.

* Add explanation comment for `get_formatted_price`.

* Fix PHP lint error.

* Use map instead of filter to get price format.

* Add code comment.

* Get currency info based on user locale or default locale.

* Use locales in locale-info.php instead of currency-info.php.

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>

* Code formatting and fix code comment.

* Fix lint errors.

---------

Co-authored-by: Bartosz Budzanowski <bartosz.budzanowski@automattic.com>
2024-03-19 01:56:08 +08:00
Luigi Teschio f9c0d406ae
CYS - Core: install font when user clicks opt-in (#45580)
* CYS - Core: install font when user clicks opt-in

* remove debugger

* CYS - Core: fix wp-admin page visible when click on start designing

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

* use sendEvent instead of redirect

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

* not show wp-admin after the click on the dialog button

* use sendEventToIntroMachine

* fix font installation

* fix eslint error

* fix install font phase when the iframe is not loaded

* remove not necessary async

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-18 16:49:41 +01:00
Fernando Marichal d69ceaa0a1
Add e2e tests for Organization tab (#45532)
* Add e2e tests for Organization tab

* Add changelog

* Unfy test
2024-03-18 12:44:45 -03:00
Fernando Marichal 9a2006b7e9
Add tests for variable product (#44818)
* Add toggleProductVariationTour

* Add tests

* Remove commented line

* Add changelog

* Change waitFor

* Add click to field

* Remove toggleProductVariationTour

* Set SKU

* * Add function to disable the variable product block tour

* Isolate variation tests

---------

Co-authored-by: Adrian Moldovan <adim.moldovan@gmail.com>
2024-03-18 11:58:45 -03:00
Maikel Perez 979a3c7b62
Remove 'List price' and 'Sale price' fields from the General tab (#45495)
* Remove 'List price' and 'Sale price' fields from the General tab

* Add changelog file

* Fix e2e tests
2024-03-18 11:54:39 -03:00
Albert Juhé Lluveras d8c23c4e3a
Fix block templates not being rendered in extension taxonomies (#44850)
* Fix block templates not rendering in some circumstances

* Add changelog file

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
2024-03-18 13:03:18 +01:00
Paul Sealock 12c1a6d206
Launch Your Store: Add status dropdown functionality (#45606)
* Add basic wp dropdown component

* use getAdminLink

* Add styling based on state

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

* update store page only text

* Add better 'for now' comment

* translate links

* remove private repo link from comment

* lint

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-18 17:43:02 +08:00
Chi-Hsuan Huang 63a0d5e57c
Add generic function to determine if URL is a store page (#45299)
* Add is_store_page helper function

* Add changelog

* Update doc

* Update doc

* Revert unneed changes

* Fix test

* Fix lint

* Fix typo

* Add woocommerce_store_pages filter
2024-03-18 16:29:13 +08:00
Alba Rincón 5e8bf7dbd6
[CYS on Core] Align the badge component in the themes intro screen (#45626)
* Use theme color to style the theme badge component

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

* Fix linting errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-03-18 09:17:40 +01:00
Thomas Roberts dd4babfdf8
Ensure address field is in address schema before sanitizing/validating it (#45394)
* Ensure field is on schema before sanitizing/validating against it

* Sanitize the key as a text field if we don't know what it is

* Add changelog

* Revert "Sanitize the key as a text field if we don't know what it is"

This reverts commit 9f5071051c.

* Revert "Ensure field is on schema before sanitizing/validating against it"

This reverts commit 109fbe766c.

* Omit unknown items in sanization

* add test doc block

---------

Co-authored-by: Nadir Seghir <nadir.seghir@gmail.com>
2024-03-18 15:00:10 +07:00