Commit Graph

8263 Commits

Author SHA1 Message Date
Paul Sealock d4e19d6c51
Beta Tester: Update composer lock file (#34086)
* Update Beta Tester lock file

* changelog
2022-07-29 09:11:04 +12:00
Moon 15015b9eda
Clean up setup_experiment_1 and setup_experiment_2 experiments (#34084)
* Remove setup_experiment_1 and setup_experiment_2 tests and css

* Remove setup_experiment_1 and 2 from the client code

* Copy over setup_experiment_1 options to the setup tasklist and remove setup_experiment_1 and 2

* Add changelog

* Determine the default component to use by task id

* Update plugins/woocommerce-admin/client/tasks/hooks/useActiveSetupList.ts

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

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2022-07-28 09:16:10 -07:00
Daniyal Ahmed 94cc85be6c
Fix fatal error when bulk editing sale price to empty value in PHP 8 (#34053) 2022-07-28 15:31:46 +02:00
Néstor Soriano 2c8a68315b
Introduce the object cache infrastructure (#33634)
* Introduce the ObjectCache class.

It's an abstract class intended to be used to implement caching for
any kind of object (arrays or PHP objects) using the underlying
WordPress caching or any alternative custom cache engine.

* Add changelog file

* Change the order of parameters in ObjectCache::get

Also change the max expiration value from one day to one month
2022-07-28 08:20:09 -03:00
Vedanshu Jain b4fcbd80a4
Render order edit page (#33638)
* Implement order edit screen rendering.

* Add changelog.

* Use global function instead of harcoded string.

* Use pagecontroller to display order edit form.

* Move HTML out from the translatable string.

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

* Capitalize `Order` for consistency.

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

* Minor realignment.

* phpcs fix .

* Decouple meta boxes from global $post object to support custom order tables.

* Bug fixes - improperly set $order object, and allow passing null.

* Make order item meta work with order object.

* Use `$order` object to minimize diff.

* Refactor $theorder object initialization to a common method.

* Remove check for WC_Order object.

* Move common methods to inside `src` in a dedicated class.

* Fix spacing for code style.

* Renamed method to be more accurate.

* Add proxies for static so they can be mocked.

* Remove PageController import.

* Move helper methods to an internal util class.

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2022-07-28 15:07:34 +05:30
Ilyas Foo a94d6c57ff
Fix shipping zone count transient reset (#34099)
* Delete shipping zone transient on adding shipping zone via smart defaults

* Changelog

* Fix comment
2022-07-28 16:18:08 +08:00
Paul Sealock e05f52b18a
Delete changelog files based on PR 34093 (#34094)
Delete changelog files for 34045
2022-07-28 17:05:27 +12:00
Adrian Duffell 50421efc3f
Fix Tracks event in Review Shipping task (#34045) 2022-07-28 12:21:32 +08:00
Moon dfa8d017f3
Use the default payment suggestions when woocommerce_show_marketplace_suggestions is set to no (#34083)
* Support force_default_suggestions argument

* Use force_default_suggestions

* Support force_default_suggestions argument -- returns the default payment suggestions when both woocommerce_show_marketplace_suggestions and woocommerce_setting_payments_recommendations_hidden options are set to no

* Add changelog
2022-07-27 21:02:24 -07:00
Paul Sealock 7fecfb35a8
Delete changelog files based on PR 34091 (#34092)
Delete changelog files for 34074
2022-07-28 15:20:39 +12:00
Paul Sealock b0b08c5c81
Delete changelog files based on PR 34089 (#34090)
Delete changelog files for 34072
2022-07-28 15:14:08 +12:00
Paul Sealock df35f674d4
Delete changelog files based on PR 34087 (#34088)
Delete changelog files for 34070
2022-07-28 15:09:16 +12:00
Chi-Hsuan Huang bc177ae83a
Fix shipping zone fails to create after installing Jetpack and WCS (#34074)
* Fix shipping zone fails to create after installing jetpack and wcs

* Add changelog
2022-07-28 09:40:56 +08:00
Joshua T Flowers 345b8886e5
Log tracks events after they have been validated (#34030)
* Log events after they have been validated

* Add changelog entry

* Remove old tracks file

* Fix lint errors
2022-07-27 14:01:18 -04:00
Joshua T Flowers 30de9ccb19
Add utils for testing tracks in backend (#34010)
* Add methods to get and clear queued pixel events

* Add utils for getting and asserting events in unit tests

* Add in some assertions around task list completion tracks

* Add changelog entry

* Add comment for test task fixture
2022-07-27 11:51:10 -04:00
Néstor Soriano 6c9254a18b
Fix: product attributes lookup table usage enabled on each upgrade (#34072)
* Stop re-enabling product attributes lookup table usage after each install.

Now the option will be enabled after a WooCommerce install/update
only if the user hadn't explicitly disabled it before.

* Add changelog file
2022-07-27 10:50:43 -03:00
Ilyas Foo aaa20f556b
Fix missing product task add product track via product templates (#34070)
* Add missing track on adding products via product templates

* Changelog
2022-07-27 12:47:18 +08:00
rodelgc 4dce15e706
E2E: Update WSL readme (#34068)
* Update link to setting default Linux distro in WSL

* Add changelog
2022-07-26 12:22:43 -07:00
Jorge A. Torres c97e1067c7
[COT] `query()`: add support for the `customer` query var (#34059)
* Make sure orders are saved with a default status

* Add support for ‘customer’ query var in COT

* Make PHPCS happy in COT datastore tests

* Add tests for ‘customer’ query var

* Add changelog
2022-07-26 15:54:12 +05:30
Paul Sealock 844faf2fa4
Delete changelog files based on PR 34061 (#34062)
Delete changelog files for 34054
2022-07-26 14:38:51 +12:00
Jamel Noel Reid 7e3b3ee94c
Add JSON report output to PW tests (#34057)
* Add PW json report when in CI

* Added wait for flaky test

* Used more robust selectors

* Added changelog
2022-07-25 10:44:11 -07:00
Jorge A. Torres 290b3b2dc0
[COT] Implement `query()` in the COT datastore (#33834)
* Add OrdersTableQuery for querying the COT tables

* First stab at `OrdersTableDataStore::query()` method

* Silence possible PHP warning

* Add docblocks & phpcs fixes

* Introduce OrdersTableMetaQuery

* Add support for meta_query

* Add changelog

* ‘status’ should have the ‘wc-‘ prefix

* PHPCS fixes

* Minor improvements

* Add tests for OrdersTableQuery

* Remove ‘paginate’ query var

* Add support for reading multiple objects at once

* Address feedback

* Prevent `get_order_data_for_ids()` from producing an incorrect query when no IDs are passed

* Make CI happy
2022-07-25 21:06:53 +05:30
Michael P. Pfeiffer 5ddcc40f04
Add WooCommerce default styles for block themes (#33518)
* Add WooCommerce default styles for block themes

* Ensure sale badge remains as is in Twenty Twenty-Two

* Style the mark element in theme colors

* Update product variations dropdowns

* address feedback

* address feedback

* fix store notice position

Co-authored-by: Luigi <gigitux@gmail.com>
2022-07-25 11:06:31 -03:00
Néstor Soriano 0b6de76567
Reduce the amount of terms shown in attributes page (#33962)
The attributes page displays all the terms for all the existing
product attributes, which causes a performance problem in sites
with a lot of attributes and terms.

This commit limits the number of attributes shown to 100 by default,
but it also introduces a woocommerce_max_terms_displayed_in_attributes_page
filter to customize it.
2022-07-25 08:55:08 +02:00
Ilyas Foo e41c8b027d
Fix unusable historical import (#34054)
* Add resolvers to data store

* Changelog
2022-07-25 11:20:40 +08:00
Néstor Soriano 166fecc0c1
Use method_exists instead of throwing in AbstractServiceProvider::reflect_class_or_callable (#33960)
* Use method_exists instead of throwing in reflect_class_or_callable

In AbstractServiceProvider::reflect_class_or_callable we were
detecting whether a 'init' method exists in the class or not via
doing 'new ReflectionMethod' and catching the exception.
This caused problems with XDebug, which is bad enough, but additionally,
throwing an exception when it's not abosultely necessary
is a bad practice in general.

* Add changelog file
2022-07-22 15:31:49 -03:00
Néstor Soriano 7d2a992746
Fix code standards in orders code, and check payment method name instead of title on get order totals (#30468)
* Fix code standards errors in class-wc-meta-box-orrder-data.php

- Sanitize all input
- Escape all output
- Verify nonce on save
- Verify that all required POST parameters are present on save
- Minor fixes (periods at end of comments, function docs, Yodas...)

* Check payment method name, not title, on add_order_item_totals_payment_method_row

* Remove unnecessary nonce verification in "save" for orders.

Also move comment to new line for readability.

* Remove unnecessary nonce check in WC_Meta_Box_Order_Data::save

 The check is already performed in the code that invokes "save".

* Add transaction id to payment method string if URL doesn't exist

* Minor fix

Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
2022-07-22 14:54:51 -03:00
louwie17 383c96f0ca
Update woocommerce admin scripts to align more with turborepo (#33982)
* Update woocommerce admin scripts to align more with monorepo

* Add changelog

* Add dev script back in

* Add install-if-deps-outdated back into build script

* Remove --force from dev script and add WC_ADMIN_PHASE to turbo cache key

* Remove install-if-deps-outdated from build

* Add composer install step to pr unit tests workflow

* Remove old install scripts, that are not needed anymore

* Make sure client changes are part of the cache hit

* Add composer install to code coverage and code sniff as well

* Add composer_no_dev input to install-build workflow

* Add sass dependency to woocommerce/admin/client turbo cache
2022-07-22 08:32:03 -03:00
Paul Sealock f056e041bb
Delete changelog files based on PR 34033 (#34034)
Delete changelog files for 34021
2022-07-22 11:49:05 +12:00
Paul Sealock b9a20edc55
Delete changelog files based on PR 34031 (#34032)
Delete changelog files for 33990
2022-07-22 11:46:37 +12:00
Alba Rincón 7741fd38f1
Update composer.lock after updating to WooCommerce Blocks 8.0.0 (#34021) 2022-07-22 11:37:13 +12:00
Fernando 59c9ef7922
Add validations to `recordEvent` (#33911)
* Add validations to `recordEvent`

* Add changelog

* Use always class constant

* Changed trow exception by console.error

* Add tests to `validate_and_sanitize`

* Created 2 different methods to test `event_validation_and_sanitization`

* Fix tests

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-07-21 16:11:32 -03:00
Chi-Hsuan Huang d09d59186d
Fix free features is still rendered when no recommendation (#33923)
* Fix free features is still rendered when there is no recommendation

* Add changelog

* Update BusinessDetails tab to go to next step if no installable extensions

* Update spinner
2022-07-21 12:57:46 +08:00
Paul Sealock 9620704d42
Delete changelog files based on PR 34008 (#34009)
Delete changelog files for 33934
2022-07-21 12:37:32 +12:00
Lucas Bustamante f1ba1febea
Add detailed logs for e2e setup/teardown (#34004) 2022-07-20 16:34:24 -07:00
Joel Thiessen 7741464a32
Adding additional instructions around product image upload modal (#33660) 2022-07-20 12:14:48 -07:00
Fernando 8b9ec814ec
Product creation experience: add more context about product data (#33755)
* Add product types tooltip

* Add target `_blank`

* Add changelog

* Fix typo

* Add onChange method

* Fixed product type tooltip

* Fix icon style

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-07-20 13:36:01 -03:00
Lucas Bustamante 3f1543c2db
Exclude e2e folder from build (#33934) 2022-07-20 16:17:24 +02:00
Lucas Bustamante 399796aa2d
Retry login on e2e (#33997)
* Retry login on e2e

* Add changelog
2022-07-20 07:46:29 -06:00
Moon f56b1da519
Make sure get_current_screen() is available (#33990)
* Make sure get_current_screen is available

* Add changelog
2022-07-20 03:31:46 -07:00
Chi-Hsuan Huang 9bc4e88b1a
Wrap default payment gateway strings in __() function call (#33987)
* Wrap default payment gateway strings in __() function call

* Add changelog
2022-07-20 16:28:22 +08:00
Kirtan Gajjar 2e735ed5f7
Fix type safety issues in product price (#33926) 2022-07-20 09:10:18 +02:00
Lucas Bustamante 4ffd5992a9
Reduce e2e flakiness in CI (#33979) 2022-07-19 11:28:15 -06:00
Jonathan Lane 26df595313
E2e/playwright test improvements 2 (#33965)
* Set retries to 4 on CI

* Use variable for authentication path storage

* Handle test cleanup in after hook

* Improve conditional

* Clean up global attributes

* Update customer email address

* Changelog file

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2022-07-19 10:04:53 -03:00
Vedanshu Jain df1937d71a
Add framework to write more robust action scheduler based migrations. (#33233)
Add the BatchProcessingController class and the BatchProcessorInterface interface.

Co-authored-by: Nestor Soriano <konamiman@konamiman.com>
2022-07-19 14:42:36 +02:00
Paul Sealock 8d56c31b3e
Delete changelog files based on PR 33967 (#33968)
Delete changelog files for 33956
2022-07-19 12:11:56 +12:00
Chi-Hsuan Huang 282d8daa26
Fix "undefined offset" warning notice on payment settings page (#33956)
* Fix undefined offset notice on payment settings page

* Add changelog
2022-07-18 16:54:02 +08:00
jonathansadowski 1a9a17c1e5
Update stable tag for 6.7.0 release (#33930)
* Update readme.txt

* Add change file
2022-07-15 09:52:27 -05:00
aezazs-multidots 0cbaab737d
Added the border bottom of the modal's header (#33807)
* Added the border bottom of the modal's header

* Created changelog entry

* Changelog entry update
2022-07-15 14:35:34 +08:00
Chi-Hsuan Huang 92df587769
Fix task list overlaps with the Ellipsis menu (#33882)
* Fix task list overlaps with the Ellipsis menu

* Add changelog
2022-07-15 10:26:22 +08:00
Paul Sealock 3575254895
Prepare trunk for version 6.9.0 (#33918) 2022-07-15 14:05:16 +12:00
Lucas Bustamante 2a89de195f
Small typos (#33914)
* Small typos

* Rewording
2022-07-14 14:40:32 -07:00
github-actions[bot] 93817aeeee
Release: Remove 6.8 change files (#33913)
Delete changelog files from 6.8 release

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-07-15 09:34:53 +12:00
Lucas Bustamante 5e4e37932f
Doc improvements for Playwright e2e (#33910)
* Doc improvements for Playwright e2e

* Remove spacing changes

* Undo spacing
2022-07-14 14:18:43 -07:00
Jamel Noel Reid 2da933a946
Configured wp-env to work with Playwright tests (#33850)
* Updated wp-env test port

* Added script to init test env

* Added env helper scripts

* Updated admin email to match wp-env

* Fixed flaky tests

* Updated test readme

* Updated workflow to use wp-env

* Added changelog

* Stored admin email in variable

* Added check for flaky test

* Updated workflow to work with both envs

* Updated README.md

* Updated condition

* Updated changelog

* Fixed workflow

* Fixed workflow

* Fixed workflow

* Restored workflow

* Updated check to be a string
2022-07-14 13:23:41 -07:00
Josh Betz 6f786e61c5
API: System Status: Cache plugins data (#33899)
* API: System Status: Cache plugins data

This is a follow up to https://github.com/woocommerce/woocommerce/pull/32823
where we introduced caching for retrieving theme data. Here we're
cachcing plugin data. Since we have to read from the filesystem and
parse the plugin headers, this can be kind of slow.

We should see an improvement on sites with more than a few plugins and
the improvement could be significant on sites that have many plugins
installed (even if they're not active).
2022-07-14 12:41:17 -05:00
Thilina Pituwala 449af6825f
Add the wp wc com extension list command (#33783)
* add CLI com command class and hook it

* Update php docs and change registered command names for wc com.

* Fix lint issues.

* Retrieve and display extension list and for the connected site.

* Adding the changelog for wc com extension list

* Remove the install command which not implemented in current branch.

* Update example usages for wp wc com extension list command.

* Update changelog.

* Fix the changelog file formatting

Co-authored-by: Rommel Castro <rommelxcastro@gmail.com>
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
2022-07-14 13:18:50 -03:00
louwie17 39470e9f5c
Fix API triggered tracks not firing (#33872)
* Revert back track property changes to WC_tracks class

* Add changelog
2022-07-14 08:30:03 -03:00
Adrian Duffell a7d34b22aa
Remove query for products type in Shipping Task (#33886) 2022-07-14 17:29:40 +08:00
aezazs-multidots 5093710ad4
Proper commenting of a function (#33823)
* Proper commenting of a function

* Created changelog entry

* change changelog entry
2022-07-14 19:58:39 +12:00
Adrian Duffell 4ab95678ab
Randomize the sections in the recommended marketing extensions (#33851) 2022-07-14 13:41:18 +08:00
Chi-Hsuan Huang 9d6bf48964
Setup Wizard: Fix "Save changes" does not work on "Free features" (#33844)
* Fix "Save changes" does not work on "Free features" step

* Add changelog
2022-07-14 13:38:33 +08:00
Moon cca2df58b4
Add a helper function to simplify ExPlat call in PHP (#33871)
* Add a helper function to simplify explat call

* Add changelog
2022-07-13 19:35:18 -07:00
Moon f2b6321b1b
Apply shipping smart defaults when country is US and Jetpack is installed (#33788)
* Enable shipping smart defaults when store country is US and Jetpack is installed

* Add changelog

* Remove redundant check
2022-07-13 19:34:56 -07:00
Niels Lange e09469c13c
Update WooCommerce Blocks package to 8.0.0 (#33736) 2022-07-14 13:58:51 +12:00
RJ 6af3ea5867
fix: typos in shipping settings (#33836) 2022-07-13 23:41:22 +08:00
Rommel Castro 70ea12eb81
add CLI `wc com extension install` command (#33775)
Co-authored-by: Thilina Hasantha <thilina.hasantha@gmail.com>
2022-07-13 10:34:03 +02:00
Chi-Hsuan Huang db8ea51d76
Set shipping feature flags to true (#33819)
* Set smart shipping feature flags to true

* Add changelog
2022-07-13 16:27:05 +08:00
aezazs-multidots a0a242f6a7
Ordering of CSV Columns of Revenue Table (#33818)
* Ordering of Text Columns of Revenue Table

* Created changelog entry
2022-07-13 10:33:42 +08:00
jonathansadowski 9c242bcc4c
Update github action to require valid changelog file (#33772)
* Update github action to equire valid changelog file

* Update github action for changelogger to install depedencies and composer

* Make valid changelog files that were invalid
2022-07-12 16:07:12 -05:00
jonathansadowski 38296db283
Remove change file for #33722 (#33740) 2022-07-12 16:00:04 -05:00
Fernando 94d545c35f
Product creation experience: improve inventory copy (#33754)
* Change copy `Manage stock level (quantity)`

* Change copy `Limit purchases to 1 item per order`

* Improve inventory copy and add tooltip

* Add changelog

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-07-12 15:42:15 -03:00
Moon 18a4b802ed
Consider WC Admin is disabled when analytics feature is disabled in WC Status widget (#33816)
* Consider WC Admin is disabled when analytics feature is disabled

* Add changelog
2022-07-11 21:15:12 -07:00
Moon 7edec113ef
Use transient to cache Shipping::has_shipping_zones() result (#33813)
* Use transient to cache has_shipping_zones

* Add changelog
2022-07-11 21:14:43 -07:00
Sam Seay c702c66a44
Move all woocommerce-beta-tester release config into woorelease (#33799) 2022-07-12 13:36:05 +12:00
Christopher Allford 3c7f3a7190
Remove WooCommerce 6.7 Changelog Files (#33797)
Removed Changelog File
2022-07-11 10:22:49 -07:00
RJ 5bb03d0188
add: partial spotlight for shipping smart defaults tour (#33801)
- added a dynamic floating div to allow tour kit to track just part of the shipping settings table
2022-07-11 17:17:02 +08:00
Rodrigue a3a5168aea
Remove FB extension from Installed marketing extensions list. (#33781) 2022-07-10 12:10:01 -07:00
Jorge A. Torres 96f2cc30a4
[COT] Implement `delete()` in the COT datastore (#33708)
* `add_meta()` should be more flexible

* Add `delete_order_data_from_custom_order_tables()`

* Add private method `trash_order()` to COT datastore for handling order trashing

* First stab at COT datastore `delete()`

* Delete COT data for orders when deleting its associated post

* Add changelog

* Simplify delete logic

* Minor fixes

* Rework `create()` tests

* Add tests for `delete()`

* Remove unnecessary var
2022-07-08 17:15:10 +05:30
Chi-Hsuan Huang 8952dac7c0
Set up i18n-text-domain rule and fix missing text domain (#33780)
* Set allowedTextDomain to only allow woocommmerce text domain

* Set allowedTextDomain to only allow woocommerce text domain

* Fix wrong or missing i18n text domain

* Add changelog

* Add changelog
2022-07-08 18:37:30 +08:00
Jonathan Lane 537c8c44c7
Couple of Playwright fixes for some flaky tests (#33766)
* Updates to simple product test to reduce flakiness

* Remove focus

* Fix to improve flakiness of order refund test

* Added a wait to help page loads test

* Add a couple more waits to refund tests

* Changelog

* Retry key generation during global setup

* Setup checklist has changed, update

* Update to setup task list

* Add wait for setup checklist

* Update locator for install checklist

* Changelogger: Fix PHPCS violations (#33664)

* Deploy header task variant from task list experiment (#33750)

* Deploy task list experiment 1

* Add changelog

* Fix wrong copy in the payment task (#33749)

* Add headingDescription prop to PaymentGatewaySuggestions list

* Fix payment suggestions heading text

* Add changelog

* Fix missing manage button for TikTok (#33731)

* Fix missing manage button for TikTok

* Add changelog

* Packages: Fix postinstall errors on install (#33724)

* Fix additional payment task name (#33727)

* Rename "Set up additional payment providers" task -> "Set up additional payment options"

* Add changelog

* Remove change files for #33704 (#33734)

* Add shipping class data store (#33765)

* Add initial shipping classes data store

* Add types for the product shipping class store

* Filter out undefined items in list for when an item is deleted

* Add changelog

* Add data store README

* Fix onboarding test

* Skipping flaky test

Co-authored-by: Jon Lane <jon.lane@automattic.com>
Co-authored-by: Paul Sealock <psealock@gmail.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
Co-authored-by: jonathansadowski <jonathansadowski@users.noreply.github.com>
Co-authored-by: louwie17 <lourensschep@gmail.com>
2022-07-07 14:13:00 -06:00
jonathansadowski 481d61c525
Remove change files for #33704 (#33734) 2022-07-07 10:46:40 -05:00
Chi-Hsuan Huang 44c3ab8f74
Fix additional payment task name (#33727)
* Rename "Set up additional payment providers" task -> "Set up additional payment options"

* Add changelog
2022-07-07 11:33:30 +08:00
Chi-Hsuan Huang b48042b60b
Fix missing manage button for TikTok (#33731)
* Fix missing manage button for TikTok

* Add changelog
2022-07-07 10:14:19 +08:00
Chi-Hsuan Huang 6e21f2c9b4
Fix wrong copy in the payment task (#33749)
* Add headingDescription prop to PaymentGatewaySuggestions list

* Fix payment suggestions heading text

* Add changelog
2022-07-07 10:13:27 +08:00
Chi-Hsuan Huang 9c3118fdf4
Deploy header task variant from task list experiment (#33750)
* Deploy task list experiment 1

* Add changelog
2022-07-07 10:11:14 +08:00
Paul Sealock 7229b65bc9
Changelogger: Fix PHPCS violations (#33664) 2022-07-07 08:54:48 +12:00
Jonathan Lane 0cebdf5277
Convert e2e tests to Playwright (#33462)
* Final updates for Playwright

* Update config

* Add uuid dependency

* Increase retries to 2

* Update selectors on shipping page

* Use baseURL instead of hard-coded URL for API

* Clarify comment

* Use baseURL instead of hard-coded URL

* Check to see if an order was created before attempting to delete it

* Add changelog

* Turn on Playwright tests in GitHub

* Increase timeout for CI execution

* Update configuration options (minor edit)

* Fix for checkout flaky test

* Parse orderId from URL

* Check for substring

* Streamline email tests

* Remove .only

* Only clear email logs of messages for test

* Get orderId from page element

* Fix for test not waiting for reset

* Add in second wait for Performance section

* Change significance from minor to patch

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2022-07-06 14:28:00 -06:00
louwie17 49859c8f84
Fix product variation tooltip (#33741)
* Make sure the default form value tooltip is initialiazed when adding the first variation

* Update copy of default form value tooltip in variations

* Add changelog

* Fix auto formatting

* Add pointer events: none to tooltip to prevent flickering
2022-07-06 13:54:11 -03:00
Ilyas Foo 8d281241a9
Add tracks for shipping smart defaults (#33748)
* Change review shipping task id to 'review-shipping'

* Add click track for shipping-recommendation task from the settings page

* Changelog

* Add test

* Add more specific test param
2022-07-06 20:00:08 +08:00
Moon 74fd45ec16
Add payment icons right next to the Discover other payments link (#33744)
* Add pyament icons

* Add changelog

* Text and logo changes when wc pay is installed and setup

* Use PaymentSuggestions to query plugins

* Make sure image_72x72 exists

* Remove unused namespaces

* Remove stripe2 image -- no longer needed

* Make sure recommended payment is not already active

* Check plugins field to filter out active plugins
2022-07-06 03:24:01 -07:00
Chi-Hsuan Huang b274831334
Update wcpay suggestion UI in payment task (#33717)
* Add WCPayBanner & WCPayBenefits

* Update payment setting & welcome screen to use components from woo onboarding

* Update wcpay suggestion UI in payment task

* Add changelog

* Add WCPayBannerImageCut image and update wcpay banner style

* Update packages/js/onboarding/src/components/WCPayBanner/WCPayBanner.scss

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

* Set .woocommerce-recommended-payments-banner__image_container display: flex

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2022-07-06 14:20:11 +08:00
Moon 9b175c64d9
Make store location and rates steps clickable (#33661)
* Make store location and rates clickable

* Add changelog

* Make store_location_completed camelCase

* Fix onCompleteStep logic

* Update plugins/woocommerce-admin/client/tasks/fills/shipping/index.js

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

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2022-07-05 19:13:57 -07:00
Moon 7c723583cb
Add tests for react admin translations (#33510)
* Add switch-language endpoint

* Add translation tests for PHP, react client, and component

* Fix component test

* Add Changelog

* Add Changelog
2022-07-05 17:16:15 -07:00
Christopher Allford 0a2588f6c4
Fixed WooCommerce Beta Tester Zip Build (#33728) 2022-07-06 11:28:56 +12:00
Joel Thiessen 57869a2ab7
Fixing activity panel does not appear after navigating to OBW and back (#33722) 2022-07-05 10:02:46 -07:00
Fernando f9f42ce3c2
Rename event prop from `cross-sell` to `cross_sell` (#33704)
* Rename event prop from `cross-sell` to `cross_sell`

* Added validation to `WC_Tracks_Event::validate_and_sanitize`

* Remove extra tab

* Remove `error_log

* Fix WP_Error message

* Add changelog

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-07-05 10:38:29 -03:00
Chi-Hsuan Huang 97f3e2d609
Fix untranslated texts on payment setting page (#33718)
Fix untranslated string in payment setting page
2022-07-05 13:28:31 +08:00
RJ b7ffa1c3d2
Add: Intro tooltips for shipping smart defaults (#33688)
add: intro tooltips for shipping smart defaults

- removed php code for setting 'reviewed' option as it was being set on page load and thus always evaluated to true before the user sees it
- added intro tooltips
2022-07-05 13:02:52 +08:00
Noonan Web Group Limited 538403306c
Update wp-background-process.php to use wp_convert_hr_to_bytes() (#30908)
Update wp-background-process.php to use wp_convert_hr_to_bytes()

Currently the code is typecasting the memory limit to an int. This assumes that the memory limit is in MB, so if you set your memory limit to 4G this will return 4194304 bytes (4.19304 MB.) Instead, we should use the native WordPress function `wp_convert_hr_to_bytes` to handle the conversion into bytes correctly.
2022-07-04 19:23:52 -07:00
Luigi Pulcini 9cecce207a
Add exporter instance parameter to `woocommerce_product_export_row_data` filter (#33390)
Added exporter instance parameter

* added filter docblock and changelog entry
* Tweak changelog, tweak hook version number

Co-authored-by: Luigi Pulcini <luigi@barn2.com>
Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
2022-07-04 19:22:13 -07:00
Chi-Hsuan Huang e471d7ce71
Update store details task action url (#33671)
* Update StoreDetails task action url to navigate to the setting page

* Add changelog

* Update complete logic of StoreDetails task

* Update store details unit tests for new task completion logic
2022-07-05 10:10:36 +08:00
Chi-Hsuan Huang da38571824
Fix wrong link and copy in payment setting page (#33716)
* Fix wrong link and copy in payment setting page

* Add changelog
2022-07-05 10:10:09 +08:00
Chi-Hsuan Huang 20b266743e
Fix wrong link in setup payments screen (#33715)
* Fix wrong link in Set up payments screen

* Add changelog
2022-07-05 09:00:12 +08:00
Luigi Pulcini 63dd5eda6f
Added mechanism to customize data before AJAX requests in `meta-boxes-order.js` (#33563)
Added `triggerHandler` before each ajax request.

* Added namespace to event name
* Linting.

Co-authored-by: Luigi Pulcini <luigi@barn2.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2022-07-04 17:09:13 -07:00
Jorge A. Torres bddb6621ee
[COT] Implement order bulk actions (#33687)
Introduce `Admin\Orders\PageController` to manage admin pages for orders

* Change orders menu registration & initialization to use `Admin\Orders\PageController`
* Implement bulk actions in orders ListTable
* Unnecessary import
* Make PHPCS happy
* Add changelog
* Address feedback
2022-07-04 16:57:01 -07:00
Joel Thiessen 6c13fdf0ce
Making product image meta box more prominent as a default (#33707) 2022-07-04 11:55:18 -07:00
Chi-Hsuan Huang 4707dcbec0
Fix wrong copy in the payments settings for a country that WCPay is not supported (#33665)
* Fix wrong copy in payment recommendations

* Add changelog
2022-07-04 16:58:10 +08:00
Moon 76f9a1fc57
Fix export functionality on Analytic pages (#33709)
* Import correct controls

* Add changelog

* Add changelog
2022-07-04 12:55:39 +08:00
Moon 6a8f124022
Fix Uncaught DOMException on WooCommerce -> Extensions page. (#33711)
* Add .commerce to wrap selector

* Add changelog

* More specific selector

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2022-07-04 12:41:32 +08:00
Ilyas Foo dea22904e0
Fix marketing task completion logic (#33676)
* Add marketing action task on clicking Manage

* Revert marketing completion after installing any marketing plugin

* Changelog
2022-07-01 14:28:45 -07:00
Corey McKrill d15770132b
Revert "Update method for getting Reports API cache version number" (#33706)
This reverts commit bccc80366d.

When we merged this PR, we thought the Woo mobile apps would have enough time to implement some corresponding changes on their side. That turned out not to be the case. Without the ability to force a refresh of the analytics cache, this PR causes the apps to have a greater risk of showing users stale analytics data that they can’t immediately update.
2022-07-01 12:28:30 -07:00
Chi-Hsuan Huang f1ce6ec30c
Update WCPay to include a mention of in-person payments for Canada (#33669)
* Update wcpay to include a mention of in-person payments for Canada

* Add changelog
2022-07-01 13:51:54 +08:00
Moon f8e8b6ff04
Style fix for the print shipping banner close modal (#33587)
* Style fix for the close modal

* Add changelog
2022-06-30 14:05:00 -07:00
Matthew Hodge 6cb6fd02df
Added a filter to set fopen mode for streams that dont support a+ (#33652)
Added a filter to set fopen mode for streams that dont support a+

Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
2022-06-30 10:34:02 -07:00
AnnaMag 3fc11126a4
Include Tracks indicator property for block editor on product update. (#33321)
* Include Tracks property indicating block editor on product update.

* Add changelog

* In a block editor the Update button does not have the selector.

* Remove - from Tracks even property.

* Refine a condition of a non-empty object.

* Incorporate feedback: add callback for rendering the Update button.

* Add recent feedback- jQuery way of handling post render execution.

* Remove `console.log

* Fix `product_update` event recording

* Removed `hasRecordedEvent` and fixed `description validation

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-06-30 11:48:21 +02:00
Chi-Hsuan Huang 41ecb1ed6f
Fix wrong copy in the payments task on the Home Task list (#33663)
* Fix wrong copy in the payments task on the Home Task list

* Add changelog
2022-06-30 15:23:03 +08:00
Ilyas Foo d6ccaa67de
Shipping recommendation task set location step manual navigation (#33667)
* Adds capability for store location step to be manually navigated

* Add test

* Changelog
2022-06-30 14:45:52 +08:00
Chi-Hsuan Huang 2dc3d87e1c
Payment task: fix wrong copy in the accordion link (#33662)
* Fix wrong copy in the accordion link for payment task

* Add changelog
2022-06-30 12:20:23 +08:00
Tam Mullen def11b77d9
Update daily smoke test to add k6 smoke tests (#33658)
* Add k6 test scenario to the daily smoke test action.

* Add blank patch changelog for daily smoke update
2022-06-29 16:01:37 -06:00
Jorge A. Torres a80e0fe203
[COT] Implement create() method in COT datastore (#33341) 2022-06-29 08:54:29 -03:00
Moon feb3ab0581
Update shipping logic when OBW is skipped (#33630)
* Update shipping task fields when shipping smart default feature is enabled.

* Always display the shipping task regardless of having a physical product

* Updated text copy for the fields

* Do not display the step description if it is not the current step

* Added a banner for the shipping printing step

Remove description if the it is not the current step

* Add changelog

* Fix namespace conflict after the rebase

* Re-use wcs banner from the experimental shipping recommendation

* Delete ShippingLabelPrinting -- replaced by wcs banner from experimental-shipping-recommendation

* Add TOS link

* Remove ShippingPrintLabel styles -- no longer needed

* Minor refactor

* Move description set logic to getSteps()

* Use map to override step fields

* Remove unnecessary feature check

* Remove description in the map func

* Render ShipStation banner if plugins includes woocommerce-shipstation-integration
2022-06-29 00:40:42 -07:00
Chi-Hsuan Huang 88a66e6983
Update review shipping options task complete logic (#33650)
* Update review shipping options task complete logic

* Add changelog
2022-06-29 15:34:09 +08:00
Chi-Hsuan Huang 2e167ca088
Fix borken react admin commands (#33649)
* Fix admin build:packages and test:packages

* Add changelog
2022-06-29 13:02:56 +08:00
Ilyas Foo 1daa1c07fe
Add tests for shipping recommendation task (#33633)
* Move redirect function to utils to easily mock

* Add test

* Changelog
2022-06-29 11:24:25 +08:00
Christopher Allford 2e87b32034
Removed WooCommerce 6.7 Changelog Files (#33643)
Removed Changelog Files
2022-06-28 13:22:18 -07:00
jonathansadowski d48a0b2d90
Add helper tool for making sure build, lint, and test are run through Turborepo (#33573)
* Add helper tool for making sure build, lint, and test are run through Turborepo

* Update node version for require-turbo
2022-06-28 13:17:05 -05:00
Roy Ho 98cf4e7160
Add PR numbers to changelog entries on code freeze process (#33627)
* Add PR numbers to changelog entries on code freeze process

* Add markdown links to PR
2022-06-28 11:15:39 -07:00
Joshua T Flowers 0a5b912288
Move tracks _ui and _ut properties out of filtered tracks properties (#33621)
* Move tracks _ui and _ut properties out of filtered tracks properties

* Add tests around tracks properties

* Fix broken variable name

* Add changelog entry
2022-06-28 09:43:17 -04:00
Ilyas Foo b178e8a1f6
Add new flow shipping recommendation task (#33620)
* Plugins component skip button is now optional

* Add link from payment settings page

* Add new experimental shipping task flow

* Changelog

* Update plugins/woocommerce/src/Admin/Features/OnboardingTasks/Tasks/ExperimentalShippingRecommendation.php

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

* Rename all tracks to shipping_recommendation

* Add back skip installer bind

* Pass plugins list to pluginSlugs to be more predictable

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2022-06-28 13:53:03 +08:00
Moon e9006b56df
Add logic to set the default shipping options on homescreen (#33547)
* Add logic to set the default shipping options

* Set the flat rate cost to 15 (temp cost)

* Add changelog

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

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

* Run the changes only if shipping-smart-defaults is enabled

* Assume user is going to sell physical products if obw is skipped or the store details has not been completed

* Make sure store country is set by an actual user by checking the value of woocommerce_store_addres

* Remove flat late logic

* Use woocommerce_store_address. store_address is always empty

Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2022-06-27 20:23:13 -07:00
Chi-Hsuan Huang 5eea5ab072
Fix shipping display logic United Kingdom country code (#33629)
* Fix shipping display logic country code UK -> GB

* Add changelog
2022-06-28 11:15:01 +08:00
Roy Ho 14066bdeae
Add phpcs-changed (#33584)
* Add phpcs-changed

* Put report flag value in quotes

* Use phpcs action workflow instead

* Remove no longer used phpcs script

* Remove phpcs ignore rule

* Use proper name for code sniffer step
2022-06-27 11:46:29 -07:00
Pierre Carrier 10e1e62b8e
class-wc-geolocation.php: hide blog URL from third-party providers (#31941)
* includes/class-wc-geolocation.php: hide URL.
* Add changelog.
* Make phpcs happy.

Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
2022-06-24 17:34:29 -03:00
Dekadinious 2c721c7c88
Fixes issue #33335 (#33431)
* Fixes issue #33335

Check for an empty string instead of an empty variable.

* Update wc-product-functions.php

* Update wc-product-functions.php

* Changelog

* Fix cases when $term is false or empty array

Co-authored-by: Peter Fabian <peter.fabian.github@gmail.com>
2022-06-24 17:48:17 +02:00
RJ d2967e0ee8
Fixed missing wcpay setup task (#33590)
- task fill page was missing for the woocommerce-payments task
2022-06-24 17:06:43 +08:00
RJ 54b72dcae1
Fix: improve woocommerce-admin plugin deactivation notice message (#33592)
* Fix: improve wca deactivation notice message

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

Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>

Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
2022-06-24 17:00:42 +08:00
RJ c9e0cccc19
fix payments banner experiment test (#33589)
test needed to be updated as the component did not call useExperiment directly anymore
2022-06-24 13:06:11 +08:00
Chi-Hsuan Huang 417b694e1e
Fix local site url in woocommerce readme (#33579)
* Fix local wp site url in woocommerce/README.md

* Add changelog
2022-06-24 09:32:27 +08:00
Chi-Hsuan Huang 49b07dd9a8
Update shipping task display logic (#33533)
* Update display shipping task logic

* Add changelog

* Update ReviewShippingOptions.php

* Update ReviewShippingOptions.php

* Update ReviewShippingOptions.php

* Update shipping task display logic

* Add doc comments for can_view

* Update comment

* Update shipping task display logic to prevent showing two task simultaneously
2022-06-23 15:56:19 +08:00
Chi-Hsuan Huang 93c15e9f7d
Switch to ESLint to fix admin lint command (#33577)
* Switch woo admin lint command from wp-script to eslint

* Add changelog
2022-06-23 12:00:28 +08:00
Chi-Hsuan Huang dcbae453f8
Update shipping recommendations display logic (#33529)
* Update shipping recommendations display logic

* Add todo comment

* Add changelog

* Render null for shipping recommendations if store only sells digital products

* Fix onboarding product type

* Update plugins/woocommerce-admin/client/shipping/test/experimental-shipping-recommendations.tsx

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

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2022-06-23 09:54:38 +08:00
nigeljamesstevenson 77a93cc7ad
Update e2e README port number, remove Nx install PreRequisite steps (#33558)
Update e2e README port number, remove Nx install
2022-06-22 19:00:28 -06:00
Ilyas Foo 9c4c3834a7
Fix payments settings banner experiment logic (#33549)
* Delegate payment experiment logic into its own hook and rearrange the checking logic to be before the experiment is called

* Changelog
2022-06-22 16:45:31 +08:00
David Stone c8cb9877a2
Show generic error when trying to process a checkout while offline (#30860)
Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
2022-06-21 17:02:14 -03:00
Paul Sealock a80462d594
Beta Tester: Prep for release (#33463) 2022-06-22 07:26:15 +12:00
Christopher Allford f6e065026e
Fixed Unit Test Suite (#33543)
This commit adds a missing `"test"` command
to the WooCommerce `package.json` file.
2022-06-21 12:11:43 -07:00
Johan de Jong ca524a7266
Add sort method to hide hidden columns in products sortable (#31866)
Co-authored-by: Jorge Torres <jorge@0xbad.com>
2022-06-21 15:26:43 -03:00
Mathias Reker ⚡️ ef8cf9f460
Ordered interfaces (#33488)
Orders the interfaces in an implements or interface extends clause.
2022-06-21 17:42:39 +02:00
David Marín 9095b65d0e
Add $transaction_id to payment_complete hooks (#28930)
Add $transaction_id to payment_complete hooks

Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
2022-06-21 11:21:26 -03:00
Michael P. Pfeiffer 958d083600
Fix broken design of Single Product template in block themes and on-sale badge being partially hidden (#33511)
* Fix broken design of Single Product template in block themes and on sale badge being partially hidden

* Update changelog to mention Twenty Twenty-Two explicitly.

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

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2022-06-21 16:26:40 +05:30
Néstor Soriano 3b089f97dc
[PHP 8.1] Fix code that throws deprecation notices in tests in PHP 8.1 (#31333)
* Fix phpcs errors and warnings

* Fix code that throw deprecation notices in PHP 8.1

The deprecation notices are about:
- Various "passing null to parameter (...) is deprecated"
- Usage of strftime
- Using "false" as if it was an empty array
- Mismatching return type of implemented interfaces,
  that's fixed by adding #[\ReturnTypeWillChange]

* Fix some more code that throw deprecation notices in PHP 8.1

* Small commenting/formatting fixes.

* Add changelog file

* Formatting.

Co-authored-by: Peter Fabian <peter.fabian.github@gmail.com>
2022-06-21 12:16:44 +02:00
Chi-Hsuan Huang e412d5912b
Migrate `@woocommerce/data` item store to TS (#33482)
Migrate item store to TS
2022-06-21 16:46:30 +08:00
Chi-Hsuan Huang 7068c78101
Fix JS lint errors (#33484)
* Fix @woocommerce/data lint errors

* Fix internal-e2e-builds lint error

* Fix lint errors
2022-06-21 16:37:34 +08:00
Chi-Hsuan Huang 8825e06e46
Fix feature flags (#33532) 2022-06-21 15:48:30 +08:00
Chi-Hsuan Huang 420ed1e81f
Add shipping-smart-defaults and shipping-setting-tour feature flags (#33531)
* Add shipping-smart-defaults and shipping-setting-tour feature flags

* Add changelog
2022-06-21 14:24:47 +08:00
Luigi Teschio a53b44f6ef
Update WooCommerce Blocks package to 7.8.3 (#33514) 2022-06-20 16:34:29 -03:00
Brian 820963d450
Adjust DKK Currency Symbol (#33509)
Update Danish currency symbol per CLDR R41.
2022-06-20 10:34:42 -07:00
Kamil cea8aaf53d
Remove legacy image sizes which were planned for removal into 4.6.0 (#32709) 2022-06-20 12:00:33 +02:00
saboanca 5948858476
Add extra hook in email setup_locale and restore_locale functions. (#33254) 2022-06-20 11:40:33 +02:00
Dharmesh Patel 3abb3dfa8e
Added local pickup handling in `get_tax_location()`. (#33330) 2022-06-20 11:29:11 +02:00
Vedanshu Jain 87ccf73da7
Convert null and '' to 0 before verification. (#33453)
During migration $wpdb->prepare would force null and empty values to be zero for %f placeholder. This was causing verification logic to fail, which is being addressed in this commit.

The alternative was to insert null values without running them via $wpdb->prepare, but that seemed less safer than converting to zero because it would have to done manually since $wpdb->prepare wouldn't support it.
2022-06-20 09:43:10 +02:00
Christopher Allford 71456382c4
Add Client Components Documentation To WooCommerce Core (#33507)
This commit adds documentation for WooCommerce's client component commands. This should make it easier to know what commands to run to work in these components.
2022-06-17 15:32:29 -07:00
Christopher Allford c0b76f70cc
Rename @woocommerce/admin-library (#33460)
This commit changes it to woocommerce/client/admin. This is an invalid NPM package name and an invalid Composer package name. This will prevent conflicts but also identify it as a component of Core.
2022-06-17 13:28:34 -07:00
Christopher Allford dc2c3449b2
Prepare `trunk` For WooCommerce 6.8 (#33506)
This bumps the version of WooCommerce to 6.8 and removes all of the changelog files from WooCommerce 6.7.
2022-06-17 13:05:31 -07:00
Chi-Hsuan Huang 244387f5d8
Add playwright e2e README.md (#33470)
* Add playwright e2e README.md

* jest -> Playwright

* Add changelog
2022-06-17 09:50:54 -07:00
Moon 8bed87d91e
Fix Admin performance with a large # of zipcodes (#33422)
* Uses WC_Data_Store directly to count the shipping zones to avoid any unncessary query to the D.B

* Add changelog
2022-06-16 13:52:30 -07:00
Moon dc70bdfae4
Remove two-col task list experiments (#33426)
* Remove two-col task list experiments

* Add changelog
2022-06-16 13:51:46 -07:00
jonathansadowski 626a409e83
Release automation: generate changelog during code freeze (#33046)
* Update code freeze script to generate changelog PRs

* Add changelog file

Co-authored-by: jonathan <jonathan@jonathans-MacBook-Pro.local>
2022-06-16 14:44:07 -05:00
Christopher Allford 5175a6820b
Rename woocommerce-legacy-assets (#33461)
In line with the fact that it's a component of WooCommerce rather than a standalone package, `woocommerce-legacy-assets` has been renamed `woocommerce/client/legacy`.
2022-06-16 11:53:48 -07:00
Heba Fareed 0893217227
Fix $item->product condition in coupons validation (#28754)
Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
2022-06-16 11:44:12 -03:00
Jorge A. Torres 6627fdb5ed
[redux] Coerce variable type of form field argument 'class' in woocommerce_form_field() (#33454)
Co-authored-by: hahn208 <208hahn@gmail.com>
2022-06-16 10:35:22 -03:00
RJ a78670bfec
Updated @automattic/tour-kit to 1.1.1 which has live resize functionality (#33452) 2022-06-16 15:49:03 +08:00
Chi-Hsuan Huang ea194237a3
Fix product tour TypeError when reading innerHTML (#33448)
* Fix product tour TypeError when reading innerHTML

* Add changelog
2022-06-16 14:02:28 +08:00
Ilyas Foo ced9207a5d
Remove obselete experiment calls (#33449)
* Remove woocommerce_test_experiment

* Remove woocommerce_tasklist_progression
2022-06-16 13:06:08 +08:00
Christopher Allford 6d0fc0d6ac
Expand Repository Development Documentation (#33423)
This commit reworks some of the documentation in the monorepo to better represent how to get started and develop projects in it.
2022-06-15 21:55:25 -07:00
AnnaMag 65cd33bee8
Settings: fix Tracks event when enabling/disabling advanced features settings. (#33305)
* Trigger the hook that record the track events
once the option settings are updated:navigation and analytics. Tracks do not include yes/no properties, so we record the latter as _disabled.

* Changelog

* Prevent reloading of page immediately after feature updates

* Remove feature specific code in tracks class

Co-authored-by: Joshua Flowers <joshuatf@gmail.com>
2022-06-15 14:58:49 -05:00
Corey McKrill bccc80366d
Update method for getting Reports API cache version number (#33353)
* Changes the frequency at which the Reports API cache can be invalidated via the cache version number to be at most once every 10 minutes, instead of with every change to the store.
* Changes the TTL of Reports API cache entries so that they expire after an hour instead of after a week.

The goal of these changes is to increase the chance that a request to the Reports API for store stats will result in a cache hit, thus avoiding expensive, slow queries. The reason for lowering the TTL is so that if multiple store changes are made within the new 10-minute frequency window, the cache data will only be stale for up to an hour. With #33325 users will be able to refresh entries in the cache manually if they think something is stale.

Closes #33315
2022-06-15 11:40:05 -07:00
Jorge A. Torres f0b9adc7ae
Make sure payment gateway title is a string before sanitizing (#33434)
Make sure payment gateway title is a string before sanitizing.

* Add changelog
* Drop type-hint in `validate_safe_text_field()`
* Update plugins/woocommerce/includes/abstracts/abstract-wc-settings-api.php

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2022-06-15 10:49:11 -07:00
Joshua T Flowers 35a4d1ca32
Clean up unused remote inbox notifications option (#33373)
* Clean up unused remote inbox notifications option

* Add changelog entry

* Add comments to existing action hooks
2022-06-15 08:03:36 -04:00
Jorge A. Torres 4b63f34841
[COT] Implement metadata CRUD and `update()` method in COT datastore (#33026)
* Add `OrdersTableDataStoreMeta` to handle metadata for orders

* Add `OrdersTableDataStoreHelper` with various helper functions used in the COT datastore

* Pass some helper classes as args to the COT datastore

* Use `OrdersTableDataStoreMeta` for meta in COT datastore

* Minor fixes to columns definition in COT datastore

* First pass at update() in the COT datastore

* PHPCS fixes

* Remove duplicate `read_meta` calls.

* Register `OrdersTableDataStore` earlier to make container happy

* Do not hardcode table metadata in `OrdersTableDataStoreMeta`

* Correctly format decimals for storing in the db

* read() shouldn’t success on non-existing orders

* Rework persisting to db in OrdersTableDataStore

* Correctly handle some props in OrdersTableDataStore

* Add changelog

* Add missing TODOs

* Remove unused variables

* No need to query db before deleting meta in `OrdersTableDataStoreMeta`

* Simplify OrdersTableDataStoreMeta::update_meta()

* Explicitly enumerate columns in OrdersTableDataStoreMeta::get_metadata_by_id()

* Make COT metadata implementation more generic

* Do not use property_exists() to determine existence of meta value

* Move some methods over to DatabaseUtil and get rid of COT datastore helper

* Rename `CustomDataStoreMeta` to `CustomMetaDataStore`

* Make PHPCS happy

* Add unit test.

* Correct arg passed to persist_order_to_db()

* Remove comment

* Split conditional on multiple lines

Co-authored-by: vedanshujain <vedanshu.jain.2012@gmail.com>
2022-06-15 14:09:41 +05:30
Ilyas Foo 090822eabf
Update product task experiment names (#33428)
* Update product task experiment names

* Changelog

* Fix lint
2022-06-15 16:34:24 +08:00
Niels Lange c33d7cc632
Correct CLIRunner translations (#33247)
* Correct CLIRunner translations

* Adjust placeholder formats and translator comments

* Add changelog.

Co-authored-by: vedanshujain <vedanshu.jain.2012@gmail.com>
2022-06-15 12:54:39 +05:30
Chi-Hsuan Huang aac85ac301
Turn on experimental-product-tour feature flag (#33413)
* Turn on experimental-product-tour feature flag

* Add changelog
2022-06-15 09:50:37 +08:00
Corey McKrill 12cbb87e80
Add cache refreshing/debugging mechanisms to Report API endpoints (#33325)
Adds a new collection parameter to all Reports API endpoints that utilize caching, `force_cache_refresh`, which will cause the current request to bypass the cache, re-run the queries for the requested data, and overwrite the previous cache entry with the new results.

Note that this doesn't invalidate the entire cache, only the entry for the particular set of collection parameters and values specified in the request.

This also adds a way to include debugging information related to the cache in the API response. Modeled after the way the Query Monitor plugin adds such information, you can get this by including an `_envelope` parameter in your API request. The debugging info includes whether the cache has been disabled via filter (`should_use_cache`), whether the `force_cache_refresh` parameter was used, whether the returned data was a `cache_hit` or not, and an array of the query parameters that were actually used to create the cache key.

Closes #33221
2022-06-14 14:24:31 -07:00
Paul Sealock dc2977cea3
Merge pull request #33329 from woocommerce/add/admin-tester
Add WooCommerce Admin Test Helper
2022-06-15 07:31:21 +12:00
jonathansadowski 4ec3bef590
Update the changelog.txt and the stable tag in readme.txt for 6.6.0 (#33419) 2022-06-14 14:14:27 -05:00
Joel Thiessen 183ac65c82
Adding context property to tasklist tracks event, introducing LayoutContext (#33287) 2022-06-14 11:31:50 -07:00
Daniel Morell 143d86490d
Generalize photoswipe button event target (#27804)
* Generalize photoswipe button event target

Co-authored-by: Jorge A. Torres <jorge.torres@automattic.com>
2022-06-14 15:05:43 -03:00
jonathansadowski 277fd78bca
Sync payment gateway titles fix (#33418)
* Introduce a 'safe_text' field that allows a reduced subset of HTML tags.

* Escape on input as well as output; generalize sanitization function.

* Set reasonable default rules.

* Guard against invalid callbacks (escaping/sanitizing) functions.

* Update plugins/woocommerce/src/Internal/Utilities/HtmlSanitizer.php

Co-authored-by: Peter Fabian <peter.fabian.github@gmail.com>

* Allow alt (accessibility) for img tags; allow class attributes for img and span tags.

* Allow class attr for p tags.

* Use safe_text for payment gateway titles.

* Make HtmlSanitizer available through Utils service provider.

* Update settings code to pull HtmlSanitizer as a service and to use the new sanitize() method.

* Remove `style` from list of allowed attributes.

Allowing arbitrary CSS rules through style could undo the intent of this change, since that would allow a range of positioning and sizing changes to be effected.

* Remove unusued import.

* If no (KSES) rules are specifed, then strip all tags (this is a safer default strategy).

* For better safety, only apply pre-processor callbacks; remove responsibility for trimming of strings.

Applying callbacks to a string after it ahs passed through wp_kses() could (potentially) undo the work done by that function, and result in unexpected tags in the sanitizer's output.

Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
Co-authored-by: Peter Fabian <peter.fabian.github@gmail.com>
2022-06-14 12:31:27 -05:00
Luigi Teschio 84ecebdad2
Update WooCommerce Blocks package to 7.8.0 (#33338)
* Update WooCommerce Blocks package to 7.8.1

Co-authored-by: Albert Juhé Lluveras <contact@albertjuhe.com>
2022-06-14 11:24:41 -03:00
Ilyas Foo 27041efdc5
Add event tracking product page spotlight tour (#33400)
* Update WooStep to have name in meta

* Add useProductStepChange hook and use it to detect form value changes in product tourkit, added tracking for tour view, tour dismiss, tour complete, and step complete

* Add tour view, tour dismiss, tour completion track to old product walkthrough

* Changelog

* Fix test

* Add listener to publish button for product spotlight tour

* Add track for old walkthrough publish button
2022-06-14 16:19:32 +08:00
Chi-Hsuan Huang 94367ca559
Migrate `@woocommerce/data` onboarding store to TS (#33401)
* Migrate onboarding data store to TS

* Update deprecated-tasks.tsx type annotations

* Fix onboarding resolvers
2022-06-14 10:23:40 +08:00
Chi-Hsuan Huang 257e558530
Update product template descriptions (#33397)
* Update product template descriptions

* Add changelog
2022-06-14 10:22:57 +08:00
Chi-Hsuan Huang 8fb9664b7a
Fix product tour spotlight location (#33395) 2022-06-14 10:22:43 +08:00
Vedanshu Jain 3fd9ee99aa
Fix typos COT verification messages. (#33207)
* Fix typos in migration error messages.
2022-06-13 16:08:57 -03:00
mrleemon 22721e6a28
Fix typos in CLIRunner.php (#33231)
Fix typos in CLIRunner.php

Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
2022-06-13 11:30:24 -07:00
Adrian Duffell 1e03b68598
Update onboarding email marketing checkbox default to false (#33292) 2022-06-13 09:55:57 +08:00
Paul Sealock 0efd480581 merge conflicts 2022-06-13 12:47:00 +12:00
Paul Sealock b166d45986
WooCommerce Plugin: Update Webpack to 5.x (#33354) 2022-06-13 09:09:23 +12:00