Commit Graph

8545 Commits

Author SHA1 Message Date
nigeljamesstevenson 613be5a990
add/a2p data api-core-tests (#35347)
* add data api-core-tests

* add newline to see if this resolves changelog issue

* add newline to see if this resolves changelog issue
2022-10-31 13:23:10 -06:00
jonathansadowski edb59aef4d
Update/blocks 8.7.5 (#35428)
* Update blocks to 8.7.5

* Add changelog file
2022-10-31 14:22:15 -05:00
Paul Sealock 19f0410bc1
PHPCS: Lint only changes (#35407)
Add `sirbrillig/phpcs-changed` to run PHPCS only on changes, not entire files
2022-11-01 07:53:01 +13:00
Néstor Soriano 11e22063ca
Exclude inactive plugins from the incompatible plugins view (#35333)
* Changes in the plugin-feature compatibility warnings:

- Show only active plugins in the "Incompatible with..." plugins view
- Show an empty page when the view is loaded and no Incompatible
  plugins are active (instead of listing all the existing plugins)

* Add changelog file
2022-10-31 17:11:06 +05:30
Vedanshu Jain 6c551b0cd6
Also support syncing for HPOS with stats table. (#35118)
* Also support syncing for HPOS with stats table.

* Add changelog.

* Fixup.

* More fixup.

* test commit by disabling importing admin test orders.

* Update get_items to work with HPOS.

* Modify tests to assert against invalid result.

* test commit for ci.

* Remove seperate test as its quite slow.

* Applied coding standards.

* Coding standards, part 2.
2022-10-31 14:33:18 +05:30
Vedanshu Jain 2c5d3d2acc
Check order type is set before returning to prevent notice. (#35349)
* Check order type is set before returning to prevent notice.

* Applied code standards.

* Remove type declaration since its not consistent with CPT datastore.

* Switch to a yoda condition (satisfy required linting check).

Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
2022-10-31 14:26:28 +05:30
github-actions[bot] fa1ecf6e8b
Delete changelog files based on PR 35371 (#35400)
Delete changelog files for 35371

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-28 16:39:54 -05:00
louwie17 8740a8a970
Update shipping label banner add meta boxes function (#35212)
* Add check to see if we are on a shop_order page.

* Update deprecated function call

* Add changelog

* Fix yoda condition
2022-10-28 17:08:13 -03:00
github-actions[bot] 3123f82b7e
Delete changelog files based on PR 35306 (#35391)
Delete changelog files for 35306

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-28 11:04:50 -07:00
louwie17 6b6a33282a
Add product description title in old product editor (#35154)
* Add product description title to classic product editor

* Remove bottom margin as its already added by the parent element

* Add changelog

* Update css and name, also fix some lint errors

* Fix spacing
2022-10-28 14:18:10 -03:00
Barry Hughes d9f6ecaa87
Guard against cases where `get_current_screen()` is undefined. (#35371)
This may happen if code invokes the `all_plugins` filter during non-admin requests, for example.
2022-10-28 09:31:35 -07:00
Jorge A. Torres aaef7f7a65
[HPOS] Allow line breaks in order notes (admin-side) (#35366)
Allow line breaks in order notes (admin-side).

* Fix code violations
2022-10-28 09:28:32 -07:00
Peter Fabian 0f204dbb57
TT3 compatibility (#35306) 2022-10-28 18:01:40 +02:00
Vedanshu Jain ec9ef7458e
Remove address indexes from list of internal keys. (#35192)
* Override filter_meta_data method, since it should be a no-op anyway.

* Add changelog.

* Not include address indexes from filtered data.

* Applied coding standards.
2022-10-27 11:36:50 -07:00
louwie17 04d6e8849c
Add name to select control popover slots (#35353)
* Add name to SelectControlMenuSlot

* Add changelogs

* Update changelog

* Fix typo in changelog
2022-10-27 12:52:29 -03:00
Jamel Noel Reid bfe0e958b8
Revert setting up permalinks in PW global setup (#35337)
* Revert permalinks setup

* Add changelog

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2022-10-26 12:36:44 -07:00
Jonathan Lane c72122ab5d
Skip flakey settings API test. (#35338)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2022-10-26 13:07:57 -06:00
Joshua T Flowers 89961fe067
Add summary field to new product experience (#35201)
* Add summary to new product page experience

* Add changelog entry
2022-10-26 11:20:11 -07:00
Alejandro López Ariza 4cb9bc45c4
Updated COT plugin used to set up the local environment with COT enabled. (#34990)
* Updated COT plugin used to set up the local environment with COT enabled.

* Enable HPOS in the e2e environment using env var (#35057)

* Updated COT plugin used to set up the local environment with COT enabled.

* Used env var to enable HPOS

* Disable HPOS for performance tests

* Updated permissions

* Set ENABLE_HPOS to 1

Co-authored-by: Alex López <alex.lopez@automattic.com>

Co-authored-by: Jamel Noel Reid <MrJnrman@users.noreply.github.com>
2022-10-26 09:29:41 -07:00
jonathansadowski afe3b4af01
Fix line endings in change file from 34292 (#35334)
* Fix line endings in change file from 34292

* Correctly update change file
2022-10-26 11:14:38 -05:00
nigeljamesstevenson 3d15a401b1
Add/a2 p create settings crud api core tests (#35253)
* api-core-tests settings tests

* api-core-tests settings tests

* api-core-tests settings tests

* update settings test to ensure concurrent tests do not fail
2022-10-26 08:24:57 -06:00
Ilja Zaglov 332204723b
Cat dashboard loading time (#34292)
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
2022-10-26 10:12:42 +02:00
Dharmesh Patel c6c2828f60
Fixed "Unsupported operand types" error. (#34327) 2022-10-26 10:12:06 +02:00
Alexandre Faustino c4564372f6
Uniform order customer search and display code (#35244)
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
2022-10-26 10:10:56 +02:00
Maikel David Pérez Gómez 47439ec241
Fix the display of letter descenders in the shipping class dropdown menu (#35258)
* Fix the display of letter descenders in the shipping class dropdown menu

* Add comment suggestions
2022-10-25 17:28:37 -03:00
Maikel David Pérez Gómez 78f659b702
Increase the spacing between the shipping box illustration and the dimensions fields (#35259) 2022-10-25 17:17:30 -03:00
Maikel David Pérez Gómez c1e5098ff2
Change the product info section title to Product Details (#35255)
* Change the product info section title to Product Details

* Add comment suggestions
2022-10-25 16:49:48 -03:00
Maikel David Pérez Gómez 1bca35c360
Improve the communication around required and optional (#35266)
* Improve the communication around required and optional

* Add comments suggestions
2022-10-25 16:49:02 -03:00
Peter Fabian 4cde06e151
Update states.php -> added Senegal Regions (#35199)
* Update states.php -> added Senegal Regions

* Update to CLDR.

* Changelog.

Co-authored-by: Papa Amadou Korka Sow <32936698+Sowgenius@users.noreply.github.com>
2022-10-25 10:51:34 -07:00
Greg ec40d85de9
Update Playwright API Core Tests readme (#35303)
* Update api core tests readme

* Added changelog

* Minor spacing tweak
2022-10-25 10:42:39 -06:00
nigeljamesstevenson a7264fa6d7
add webhooks api-core-tests (#35292) 2022-10-25 08:23:49 -06:00
Maikel David Pérez Gómez 69e52c2fa0
Remove some placeholder values (#35267) 2022-10-25 10:17:43 -03:00
Greg 43eeb0c997
Add an NPM script to run the Playwright API Core Tests (#35283)
* Added script for running Playwright API Core Tests

* Added changelog
2022-10-25 11:07:13 +01:00
Md Mehedi Hasan a5e3215f23
Fix: Typo Mistake (#35111)
* Fix: Typo Mistake

* changelog added

Co-authored-by: HeyMehedi <mehedi.sovware@gmail.com>
2022-10-25 14:38:39 +13:00
rodelgc 39b472be7a
Set paths for `allure-results`, `test-results.json`, and save state files to be inside their respective E2E or API folders (#35206)
* Set paths to e2e-pw

* Delete and untrack storage state files

* Add changelog

* Checkout updated version of smoke test daily workflow

* Allow setting allure output paths to e2e-pw folder using environment variables

* Set allure output paths to be inside api-core-tests/api-test-report folder

* Remove unnecessary TODO comment
2022-10-24 16:53:46 -07:00
Jamel Noel Reid ed23996808
Update permalink structure using Playwright global setup (#35282)
Setup permalink in global-setup.js
2022-10-24 16:24:28 -07:00
Joshua T Flowers 2aa4ce0d9f
Disable product inventory toggle when inventory management is disabled (#35059)
* Disable product inventory toggle when inventory management is disabled

* Export conditional wrapper as experimental component

* Conditionally show the tooltip

* Add comment explaining the tooltip overlay

* Add components changelog entry

* Display tooltip on hover any portion of toggle or label

* Add changelog entry

* Fix scss lint error

* Center tooltip over label and toggle

* Fix up input props after rebase

* Add wrapper around field to maintain block item formatting
2022-10-24 09:08:27 -07:00
nigeljamesstevenson 87942e776c
add payment gateway api-core-tests (#35279) 2022-10-24 08:26:18 -06:00
Maikel David Pérez Gómez 64ee20ff0f
Show a dismissible snackbar if the server responds an error (#35160)
* Show a dismissible snackbar if the server responds an error

* Removed the default value New shipping class from the Name field and replaced it with a placeholder: e.g. Fragile products

* Only used the category's name when the user creates a new shipping class for the first time

* Fix linter errors

* Update grammar error

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Add empty initial values to form field to prevent controlled/uncontrolled react error

* Tune error handling

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
2022-10-22 10:47:17 -03:00
Tam Mullen 0c5f93bb39
k6: add baseline scenario and additional account requests (#35252)
Add additional my account k6 requests and updated test scenarios
2022-10-21 22:58:36 +01:00
Jonathan Lane a94eecc910
Playwright 1.27.1 (#35106)
* Update Playwright to 1.27.1

* Add changelog

* Try adding retry action to github actions workflow

* Revert "Try adding retry action to github actions workflow"

This reverts commit 6196a5dd21.

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2022-10-21 15:16:00 -06:00
github-actions[bot] da2c81b8b1
Delete changelog files based on PR 35257 (#35261)
Delete changelog files for 35257

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-21 12:47:24 -05:00
Thomas Roberts a32966a2da
Update WooCommerce Blocks package to 8.7.4 (#35257) 2022-10-21 12:45:10 -05:00
nigeljamesstevenson 569043ecda
add api-core-tests for system status (#35254)
* add api-core-tests for system status

* add api-core-tests for system status

* add system status api-core-tests

* add system status api-core-tests formatting updates
2022-10-21 11:32:55 -06:00
rodelgc 64320a2c5c
Migrate Daily smoke tests to Playwright (#35114)
* Checkout updated files

* Checkout more files

* Remove invalid php-version input

* Add changelog

* Update pnpm-lock.yaml

* Re-add accidentally deleted filter value

* Remove unnecessary TODO comment
2022-10-21 09:07:53 -07:00
louwie17 ccae9ac72f
Revert change that auto collapses the short description field (#35213) 2022-10-21 12:34:27 -03:00
Joshua T Flowers 28f8e7f996
Enhance getInputProps to allow passing of non-overridden props (#35034)
* Allow additional props to be passed to the Form getInputProps method

* Remove getTextControlProps

* Pass additional shared props through getInputProps in shipping

* Simplify checkbox props

* Unwrap currency props

* Use onBlur event to sanitize prices

* Add changelog entry

* Add option to get checkbox props to form context helpers

* Update checkbox tracks handler naming and typing

* Fix up usage of getInputProps

* Add helper sanitize method

* Use sanitize helper method for product input fields

* Fix inventory input props after rebase

* Fix shipping typo

* Fix up form types after rebase

* Align all checkboxes on product page

* Rename new checkbox helper to getCheckboxControlProps

* Add helper method to get select control props

* Add data changelog entry

* Check for product name length on blur

* Add initial value for name to prevent uncontrolled value

* Add initial value for sku
2022-10-21 07:03:49 -07:00
github-actions[bot] be6c26b671
Delete changelog files based on PR 35125 (#35246)
Delete changelog files for 35125

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-21 08:42:49 -05:00
Néstor Soriano fa20d434f3
[COT/HPOS] Fix trashing/untrashing of orders (#35125)
* Fix trashing/untrashing orders when using COT:

- Trashing wasn't changing the update date on the orders table record.
- Trashing wasn't applying trash on the corresponding post.
- Untrashing wasn't actually deleting _wp_trash_meta_status in metadata.

* Fix: maybe_sync_order was syncing even with identical update dates.

* PHPCS is happy now.

* WP_DIE when attempting to load a trashed order in Admin
(same behavior as when using the posts table)

* Add changelog file

* Revert change in order records date comparison

Data comparison is needed too when the dates are equal, since data in the metadata table could have been modified as well.

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

* Fix handling of order status and trash meta when untrashing.

Untrashing an order was setting it to the default status of "pending"
instead of the previous status. This is what was happening:

1. Order is trashed, order meta table gets the value (e.g.) "on-hold"
   for the _wp_trash_meta_status key
2. Post is trashed, post meta table gets "wc-on-hold"
3. Order is re-read, but then so is posts, and the order meta value is
   updated to "wc-on-hold"
4. On untrash the previous order status from order meta table is
   prefixed with "wc-", thus it becomes "wc-wc-on-hold", which is not
   a valid status
5. Not having a valid status, the order is restored as the default
   status of "pending payment"

To fix this, the previous status is stored in order meta table
with "wc-", and it doesn't get prefixed on untrash.

Also, wp_untrash_post is called on order untrash, otherwise the
trash metadata keeps dangling and being synced back and forth.

* Add unit tetst for the trash-untrash cycle

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2022-10-21 15:18:54 +05:30
Peter Fabian 97773025c0
Improve unit test install script for db connection over socket (#35152) 2022-10-21 11:31:01 +02:00
Miguel Gasca c20f58e16a
Fix 'Invalid payment method' error upon double click 'Delete' #30862 (#30884)
* Fix 'Invalid payment method' error upon double click 'Delete' #30862

An 'Invalid payment method' error shows when a user double clicks the
'Delete' button in the 'Add Payment method screen'. Every time the user clicks
the button, there is a GET request to delete the payment method. First request is
handled correctly, but subsequent requests throw an error, because the payment
method cannot be found since it was already deleted.

This adds an event handler to disable the button on the first
click.

* Add changelog entry
2022-10-21 12:26:46 +05:30
Joshua T Flowers 3a2a22905b
Add manual stock management section to product management experience (#35047)
* Add manual stock management section to product management experience

* Add changelog entry

* Add default value for stock status

* Fix up lint issues

* Handle PR feedback
2022-10-20 14:14:54 -07:00
Maikel David Pérez Gómez 114be56f63
Move product action buttons to header menu (#35214)
* Move product action buttons to header menu

* Fix unit tests

* Add comment suggestions
2022-10-20 17:15:44 -03:00
Thomas Roberts d0278f4801
Update WooCommerce Blocks package to 8.7.3 (#35219)
* Update WooCommerce Blocks package to 8.7.3

* Updated composer.lock

Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
2022-10-20 14:34:59 -05:00
github-actions[bot] c50f69e229
Delete changelog files based on PR 35087 (#35230)
Delete changelog files for 35087

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-20 13:23:11 -05:00
github-actions[bot] 17cf0055b5
Delete changelog files based on PR 35207 (#35228)
Delete changelog files for 35207

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-20 13:19:39 -05:00
github-actions[bot] 23072411f3
Delete changelog files based on PR 35121 (#35226)
Delete changelog files for 35121

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-20 13:16:11 -05:00
github-actions[bot] 4831292bb5
Delete changelog files based on PR 35176 (#35224)
Delete changelog files for 35176

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-20 13:12:54 -05:00
github-actions[bot] dda264cc6d
Delete changelog files based on PR 35198 (#35222)
Delete changelog files for 35198

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-20 13:10:10 -05:00
Barry Hughes c2be5a6253
Add untrash order hook (COT/HPOS). (#35087) 2022-10-20 13:23:29 -03:00
Peter Fabian bf61c6bf19
Added default additional content to 'woocommerce_email_additional_content_' filter (#35195)
* Added default additional content to 'woocommerce_email_additional_content_' . $this->id filter

* Changelog.

Co-authored-by: Mattia Lerda <mattia.lerda@delitestudio.com>
2022-10-20 10:08:53 -03:00
Néstor Soriano cc0c4ef447
Improve the warnings about incompatibilites between plugins and features (#35198)
* Use AccessiblePrivateMethods in DataSynchronizer.

Also fix some code styling stuff.

* Introduce the woocommerce_feature_description_tip filter.

...and use it to display a warning for the COT feature
if there are orders pending sync.

* Display the plugin-feature incompatibility warning in all admin pages.

...except in the plugins list when we are already showing the
"You are viewing plugins with incompatibilities" page.

Also change the styling from warning to error.

* Add changelog file

* Revert accidental change.

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2022-10-20 15:34:37 +05:30
Vedanshu Jain 8848e4aa47
Check before getting order classname to see if it exists. (#35207) 2022-10-20 14:47:58 +05:30
Vedanshu Jain 80cbb9dcdc
Use correct datastore when backfilling orders. (#35176)
* Use correct datastore when backfilling orders.

* Fix some unit tests and simplify calls.
2022-10-20 13:22:22 +05:30
louwie17 5f2c656e6b
Add/34331 add attributes modal (#34999)
* Add initial add attribute modal

* Add async select control component and add attribute terms

* Make use of AsyncSelectControl for attributes

* Rearranged the add attribute form to make removing easier

* Make sure add button is disabled if fields are empty

* Remove the use of AsyncSelectControl for now

* Add disabled option and fix merge conflict

* Add attribute modal tests

* Remove unused trigger drag

* Add popover slot

* Small update to select control and fix multi selection in term field

* Add tests for attribute and attribute term fields

* Add changelogs

* Small fix after merge conflict

* Fix some styling and issue with select control when clearing item

* Fix lint error

* Fix up some styling issues after rebase

* Fix formatting, some styling issues, and address some PR feedback

* And confirmation dialog for closing the modal.
2022-10-19 16:28:29 -03:00
Vedanshu Jain 5b6ddf0b88
Update biling and shipping address indexes. (#35121)
* Update biling and shipping address indexes.

* Add changelog.

* Code standard fixes.

* Add unit test for search after update.

* PHPCS fixes.
2022-10-19 16:21:42 +05:30
Jonathan Lane a2076f59a5
Update PR template to provide guidance for testing (#34597)
* Update PR template to provide guidance for testing

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2022-10-19 14:00:09 +08:00
Joshua T Flowers c72e00d85c
Add Tooltip component and remove EnrichedLabel (#35024)
* Add experimental tooltip component

* Add tooltip stories

* Update EnrichedLabel component

* Remove EnrichedLabel

* Add changelog entries

* Fix up linting issues

* Handle PR feedback
2022-10-18 16:08:49 -07:00
nigeljamesstevenson bb42e7892a
api-core-tests add product reviews crud tests (#35163) 2022-10-18 16:33:11 -06:00
Maikel David Pérez Gómez c79af1acc5
Replace the trash can icon in the attribute list (#35133) 2022-10-18 16:05:01 -03:00
Maikel David Pérez Gómez a0b27a4966
Select the current new added shipping class (#35123)
* Select the current new added shipping class

* Extracting constants into the right file

* Add unit tests

* Use setValue instead onChange to select the shipping class of the product
2022-10-18 15:40:56 -03:00
Moon 4775defb1f
Update WooCommerce beta tester README (#35090)
* Update readme

* Add changelog

* Add Installation section

* Fix typo

* Update WC Admin Test Helper dev commands

* Move back Development section to README.md
2022-10-18 09:22:51 -07:00
Joshua T Flowers 3c6681054a
Add product management description (#34961)
* Add label prop to rich text editor

* Create feature class and enqueue styles

* Add description editor and parsing

* Fix up incorrect context for product data

* Add styling to rich text editors in product form

* Fix editor initialization on new product

* Add changelog entries

* Use trunk lock file

* Add component changelog entry

* Update lock file

* Register block store provider in tests

* Fix up phpcs errors in product feature file
2022-10-18 08:55:31 -07:00
Paulo Arromba 00368924df
Update WooCommerce Blocks package to 8.7.2 (#35101)
* Update WooCommerce Blocks package to 8.7.2

Co-authored-by: Niels Lange <info@nielslange.de>
2022-10-18 10:36:05 +01:00
Moon 13a5ba2f1d
Optimize query usage in the Onboarding tasks (#35065)
* Optimize is_complete() method

* Replaed WC_Product_Query with wp_count_posts, which has more optimized query

* Optimize TaskList::is_complete -- return early when false instead of running through all the tasks

* Cache is_complete() method for the tasks with db query

* Add changelog
2022-10-17 11:23:55 -07:00
jonathansadowski 8747ea2995
Remove latest stable version from README (#35056)
* Remove latest stable version from README

* Add change file
2022-10-14 15:22:27 -05:00
Moon 0f58f2efbd
Fix JS errors when the OBW business step is accessed directly via URL (#35045)
* Set default value for product types

* Add changelog
2022-10-14 11:43:36 -07:00
louwie17 c55c91d7e0
Add category field dropdown field (#34400)
* Add initial category field component with new typeahead

Move search logic to useCategorySearch hook

Add initial add new category logic

Add parent category field to add new category modal

Adding some debug changes

Update category control to make use of internal selectItem function of select control

Add changelogs

Update pagesize back to 100

Add placeholder

Empty placeholder

Fix input and icon sizes

Fix input underline

Add max height and scroll to category dropdown

Add sorting of category items

Auto open parents when traversing up the tree using arrow keys

Add several comments

Add some initial unit tests for the category field component

Add tests for useCategorySearch hook and fixed minor bug

Update styling and autoselect parent if child is selected

Fix styling issues for the select control dropdown inside a modal

Fix issue with creating new category with parent

Add function comment and fixed border styling

Prune out create new category logic

Fix minor css issue with border

Revert some of the select control changes and make use of the custom type

Fix up some styling changes

* Fix type conflict

* Revert change in state reducer

* Add cursor pointer

* Fix styling errors

* Fix broken category tests

* Fix merge conflict
2022-10-14 09:05:39 -03:00
Sam Seay 9b9abd1eae
Replace outdated readme examples of using pnpm (#35064) 2022-10-14 16:14:45 +13:00
github-actions[bot] 4055797bf0
Release: Remove 7.1 change files (#35080)
Delete changelog files from 7.1 release

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2022-10-13 13:57:26 -05:00
Kirtan Gajjar a5814f1bc7
Make qty input box visible when min_qty = max_qty (#34282)
Make the quantity input visible, even if the min and max allowed values are identical.

* Add changelog

* Update plugins/woocommerce/changelog/fix-GH-34280

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

* Update plugins/woocommerce/templates/global/quantity-input.php

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

* Fix `@since` tag

* Use a single readonly input (when quanity cannot be changed) instead of two inputs (hidden and disabled).

* Introduce consistent formatting when a product is sold individually and when the min/max is identical.

* Update `@version` tags to 7.1.0.

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2022-10-13 09:48:08 -07:00
Bartosz Budzanowski cfe8f76be9
Add order origin tracking. (#35069)
Track order origins ( _created_via )

* Add changelog.

* Fix formatting.

* Use one-liner array.

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

* Add missing whitespace.

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

* Fix foreach format.

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

* No trailing spaces in description.

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

* Don't use hardcoded table prefix.

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

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2022-10-13 08:59:24 -07:00
Vedanshu Jain 21419e4a2c
Fix missing changelog. (#35072) 2022-10-13 18:39:51 +05:30
Peter Fabian 638af2f04e
[HPOS] Improve plugin matching for compatibility check (#35070) 2022-10-13 14:42:53 +02:00
Vedanshu Jain 4ccbcc1b2e
Set correct timezone when backfilling data. (#35033)
* Set correct timezone when backfilling data.

* Add changelog.

* Apply code standards.

* Address further flakiness and more comprehensive test.

* More fixes for timezone backfil.

* Remove unnecessary comments.

* Revert test change since we are not changing systems timezone.

* Minor alignment fix.

* Minor language fix.

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

Co-authored-by: Peter Fabian <peter.fabian.github@gmail.com>
2022-10-13 17:48:24 +05:30
Vedanshu Jain 0a9434605e
Also read from posts when reading from COT to check for direct write (#34465)
* Add and use ON_DUPLICATE_KEY update function to perform update/insert without additional query.

* Fix typo

* Add more tests for save related functions.

* Update post directly to update correct post_modified value.

If we use wp's update_post function, then it will set the post-modified date to current time(). This is not desirable when backfilling order data where we want post data to be exactly the same as orders.

* Add changelog.

* Add support to sync from posts table when reading order table.

When sync is enabled, we also read from posts table when an order is read from COT. Mismatch in this case implies a direct write and therefore we update the COT record with data from posts. This provides an additional layer of backwards compatibility.

* Add more tests for different tables.

* Modify sync logic to account for metadata that has been changed.

* Fetch post only when data sync is enabled.

* Made test case comparison more strict to prevent flakiness.

* WIP

* WIP

* Added protections and code standard fixes.

* WIP

* Change order data store internal key to props for better representation.

* Add changelog

* Add legacy datastore prop for WC_Data object to support COT.

* Also support passing in `get_stock_reduced` method.

* Add internal meta keys to order table data store.

* Add tests for CPT datastore for orders.

* Change return type to prevent implicit type conversion.

* Use correct conversion.

* Revert "Use correct conversion."

This reverts commit 97ead11f71.

* Add conversions to test as needed.

* Add internal keys for order table data store for consistency.

* Apply code standards.

* Merge conflict fixes.

* Add more tests.

* Add more fixes and unit test for sync logic.

* Remove $save param for consistency with parent class.

Earlier, we added the $save parameter for performance reason, but now that we are storing the props in the WC_Order object, this isn't needed anymore (as the object can hold the updated props).

* Return bool instead of string as described.

* Fix test by transforming bool values before confirming.

* Fix test by not needing to converting to string, since we now bool value.

* Store internal props as bool instead of string.

* Remove unused method.

* Only select props for refunds that are actually needed.

* Store bool as yes/no to maintain compatibility with how were storing prev.

* Fix unit test to extpect yes.

* Add tests and set special metadata migrated from data store correctly.

* Add tests for legacy prop get/set in ordertabledatastore.

* Update email class to use data store method instead of get_meta.

* Update exisiting tests to account for changes in legacy prop setting.

* Read from CPT store directly, and cache the pending value.

* Fixup in unit test.

* Add test for refund creation.

* Add test for refund creation.

* Remove strict WC_Order typecasting.

* Address code standard voilation.

* Call correct parent method for updating meta.

* Use WC_Absract instead of WC_Order to provide more compatibility.

* Record order ids we are syncing for to prevent any infinite loop.

* Add test for fixing infinite loop with read on sync.

* Address PR feedback.

* Fix formatting.

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

* Fix formatting.

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

* Use correct type hints.

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

* Fix formatting.

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

* Yoda, use.

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

* Remove space between minus and numeral for readability.

* Fix ut, and use assertTrue instead of native for consistency.

* Port a fix for edit date save.

Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
2022-10-13 17:13:37 +05:30
Joel Thiessen 315e163b29
Only show five inbox messages and add "Show more" button (#35003)
* Basic paging functionality

* Adding changelog

* Inserting placeholder at end of list, working dismissal

* Fixing issues with dismissed notes not updating UI

* Fixing odd display when removing last note

* Renaming page variable

* Adding tracks event

* Addressing issues caused by .map within useSelect, and getting rid of hash

* Fixing nested ternary linting issue

* Removing console logs

* Updating test
2022-10-13 08:36:02 -03:00
Paulo Arromba 1c0925a905
Update WooCommerce Blocks package to 8.7.1 (#35040)
* Update WooCommerce Blocks package to 8.7.0

* Update WooCommerce Blocks package to 8.7.1
2022-10-13 12:21:20 +02:00
Jorge A. Torres 3e3b413d17
Some improvements to plugin feature incompatibility UI (#35063)
Co-authored-by: Nestor Soriano <konamiman@konamiman.com>
2022-10-13 12:06:57 +02:00
Vedanshu Jain b6439c6ed1
Implement missing refund tax methods for HPOS (#34805)
Co-authored-by: Nestor Soriano <konamiman@konamiman.com>
2022-10-13 10:57:22 +02:00
RJ 1991347234
fix: handle error loading and error states for magic link button (#35068) 2022-10-13 16:12:40 +08:00
Jorge A. Torres d2dd772ede
Fix admin settings checkbox disabled (#35067)
* Fix ‘disabled’ state for admin settings

* Add changelog
2022-10-13 11:51:30 +05:30
Ismael Martín Alabarce 3d1f8c36e0
Update WCPay promo requirements and ensure dismiss (#35030)
* Ensure Payments menu is dismissed after choosing no

Now it gets also dismissed on modal close

* Add a new requirement

Check if the store has another payment gateway installed to be eligible for the promotion.

* Add changelog entry

* Fix not using strict comparison for in_array

* Update is_another_payment_gateway_installed

To use a static list instead of PaymentGatewaySuggestions
2022-10-13 08:14:01 +02:00
RJ edbb3ea793
Fix: mismatching jetpack user should not see mobile app task list item (#35052)
* fix: mismatched user shouldn't see task item to get mobile app
2022-10-13 10:27:42 +08:00
Joshua T Flowers 8fbdbaf354
Add product page inventory quantity management (#34984)
* Add manage stock section to product inventory section

* Fix up h4 styles in form sections

* Check if stock management is enabled in store settings

* Fix up more styles in form

* Extract inventory validation and add new validation rules

* Add changelog entry

* Add changelog entry

* Remove sku related validation
2022-10-12 14:30:02 -07:00
Joshua T Flowers 0ca3f6d589
Add product management SKU (#34978)
* Add product inventory section and sku control

* Add validation and errors

* Add changelog entry

* Add dependencies comment block

* Call input props onBlur for product name field

* Remove slug validation

* Watch product name value change in inventory section

* Fix up usePrevious hook TS

* Revert watching changes by previous touched status
2022-10-12 13:11:05 -07:00
Fernando Marichal 98162b9d42
Images Product management MVP 1.0 (#34769)
* Add image section

# Conflicts:
#	plugins/woocommerce-admin/client/products/add-product-page.tsx

* Add `keepSpaceWhenDragging` to sortable

# Conflicts:
#	packages/js/components/src/sortable/sortable-item.tsx
#	packages/js/components/src/sortable/sortable.tsx

# Conflicts:
#	packages/js/components/src/sortable/sortable.tsx

* Export ImageGalleryItem

* Add props to `image-gallery`

# Conflicts:
#	packages/js/components/src/image-gallery/image-gallery-item.tsx
#	packages/js/components/src/image-gallery/image-gallery.tsx

* Changed `media-uploader` label

* Add changelogs

* Fix image-gallery and sortable components

# Conflicts:
#	packages/js/components/src/sortable/sortable-item.tsx
#	packages/js/components/src/sortable/sortable.tsx

# Conflicts:
#	packages/js/components/src/image-gallery/image-gallery.tsx
#	packages/js/components/src/sortable/sortable.tsx

* Set gallery min-height

* Add onOrderChange

* Show images section edit-product

# Conflicts:
#	plugins/woocommerce-admin/client/products/edit-product-page.tsx

# Conflicts:
#	plugins/woocommerce-admin/client/products/edit-product-page.tsx

# Conflicts:
#	plugins/woocommerce-admin/client/products/edit-product-page.tsx

* Fix styles

* Fix styles

* Fix image alt

* Fix TS any

* Add prop `onDragOver`

# Conflicts:
#	packages/js/components/src/image-gallery/image-gallery.tsx

* Fix styles

* Fix padding

* Fix image area min-height

* Fix subtitle copy

* Fix image margin

* Change `draggedImageId`

* Fix `setDraggedImageId` reset

* Rename `isRemoveZoneVisible`

* Add `CardBody` and remove redundant `setValue`

* Fix card styles

* Remove `getUniqueImages`

* Use url as a key when there is no image id

* Fix `orderedImages`

* Add hover to gallery images

* Fix gallery arrows and set cover problems

* Altering blur handler to prevent toolbar closure on media modal

* Fix toolbar drag and drop

* Add replace fn

* Restoring modal class for blur function

* Fix storybook

* Ensuring onBlur doesn't happen while dragging, resolving issue in Firefox

* Adding expected event object to drag callbacks

* Fix image size

* Fix lint

* Another fix lint

* Update plugins/woocommerce-admin/client/products/sections/images-section.tsx

Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>

* Fix `draggedImageId` default value

* Fix toolbar icon style

* Rename consts

* Update pnpm-lock.yaml

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
Co-authored-by: Joel <dygerati@gmail.com>
Co-authored-by: Joshua T Flowers <joshuatf@gmail.com>
2022-10-12 15:16:22 -03:00
Barry Hughes 1d187b70ca
[HPOS/COT] Ensure date_creation_gmt is correctly populated with a GMT datetime (#34875)
* (HPOS/COT) Ensure date_creation_gmt is correctly populated with a datetime in GMT timezone.

* Update the way we test the value of the persisted order creation date.
2022-10-12 20:10:28 +02:00
Néstor Soriano edc1c6c98a
Add handling for plugin-feature incompatibilities (#34879)
* Extend FeaturesController to handle WooCommerce-aware plugins

The methods that return compatibility info now have an extra
'uncertain' part with information regarding plugins that are
WooCommerce-aware but haven't declared compatibility.

* Add a warning about incompatible plugins in the features page.

Includes a link to the list of incompatible plugins.

* Add handling of incompatible plugins in the plugins page.

Plugins that are incompatible with at least one enabled feature
will show a warning in the WooCommerce plugins page, and will
have their "Activate" link disabled.

* - Hook on 'views_plugins' to display two views in plugins page,
  "All" and "Incompatible with feature X"

- Exclude the legacy Analytics features from the feature and plugins
  activation restrictions

- Allow disabling a feature from the settings pages if it's enabled
  and is incompatible with at least one plugin (it won't be possible
  to re-enable it once the settings page reloads)

* Fix FeaturesController::declare_compatibility not working in Windows
(which uses \ instead of / as directory separator)

* - Add two methods to bypass the feature/plugin activation protection.

- Fix: the incompatible plugins count in the feature settings page
  now only counts active plugins.

* Add changelog file

* Fix unit tests

* - Rename "custom orders table" feature to "high performance order tables"

- Add an extra parameter to FeaturesController::get_compatible_plugins_for_feature
  to retrieve all matching plugins or only active plugins.

* Minor wording fixes

* Address PR feedback.

* Allow enabling plugins when WP_DEBUG is true.

* Return if plugin_status is not set.

* Dont change the Activate button.

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2022-10-12 11:08:46 -03:00
Oleksandr Aratovskyi a9dbb6d64e
Change copy of the payments welcome modal (#35031)
* Change copy in Payments Welcome modal

* Change copy in Payments Welcome modal
2022-10-12 16:18:13 +03:00