Commit Graph

49292 Commits

Author SHA1 Message Date
Joshua T Flowers 59427def84
Add crud data store creator (#33546)
* Add initial get list data store methods

* Add product attributes data store

* Add method to retrieve single item resource

* Update use of endpoint to namespace

* Update resources naming to items to reduce ambiguity

* Use destructured object as argument for creators

* Move data store under the products namespace

* Add some tests around data store method creation

* Add readme for crud data store setup

* Add changelog entry

* Alphabetize method names

* Fix getItems selector resource name

* Remove unused vars
2022-06-22 19:35:02 -04:00
Christopher Allford 7d878c4e47
Expanded Turbo Task Inputs (#33542)
Turbo's globbing syntax for directory wildcards does not find files in the root directory of the search. This commit adds to the inputs so that it will consider the right files.
2022-06-22 15:32:29 -07:00
Chi-Hsuan Huang 3669426bd6
Migrate `@woocommerce/data` user and use-select-with-refresh to TS (#33512)
* Migrate wc.data user and use-select-with-refresh to TS

* Add changelog

* Update interval type

* Add doc comment

* Update use-user-preferences.ts test doc comment
2022-06-22 17:27:18 +08: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
Paul Sealock c617c70d46
Analyzer: Remove check for hook without description (#33528)
Remove check for hook without description
2022-06-22 17:00:33 +12: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
Paul Sealock 189c17cbcf
Changelogger Formatter: Parse previous significance (#33527) 2022-06-22 07:25:08 +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
Chi-Hsuan Huang 473aed8452
Fix "Pull Requests" link in PULL_REQUEST_TEMPLATE.md (#33513) 2022-06-21 08:56:00 +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
Jamel Noel Reid 44d862e10d
Added event trigger for pre-releases (#33200)
* Added event trigger for pre-releases

When a woocommece pre-release occurs, this workflow will trigger a testing event in another repo defined using project secrets.

* Set to only fire on prereleases

* Updated run condition

* Fixed run condition
2022-06-17 15:03:32 -05: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
Paul Sealock bdc4886acc
Analyzer: Surface hook descriptions (#33396) 2022-06-17 11:47:24 +12: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
Paul Sealock b79e54eb09
Update JS packages changelogs (#33412) 2022-06-16 10:06:31 +12: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
Fernando 55eebebeba
Add product deletion via datastore API (#33285)
* Add delete products via data store api

# Conflicts:
#	packages/js/data/src/products/action-types.ts
#	packages/js/data/src/products/actions.ts
#	packages/js/data/src/products/reducer.ts
#	packages/js/data/src/products/selectors.ts

* Add tests

# Conflicts:
#	packages/js/data/src/products/test/reducer.ts

* Set `force = false` by default

* Add changelog

* Fix thrown error

* Remove error

* Remove `DeleteProductType`

# Conflicts:
#	packages/js/data/src/products/actions.ts

* Remove conditional retrun

Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
2022-06-15 09:25:10 -03: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