* Initial commit
* Implement APMs toggle button
- Add valid links to each APM
- Add valid link to the marketplace
* Implement APMs toggle button
- Add valid links to each APM
- Add valid link to the marketplace
* Refactor the code to be more explicit
* Delete the apm on toggle off if it's local state
* Implement FAQ simple block
- Style a notice about APM is enabled
- Add noreferrer and target=_blank to external links
* Add todo comments
* FAQ simple styling fix (improve padding)
* Fixes after inner review
* Add changelog item
* Address PR review comments
* Remove Affirm as it's not in the store
* Style fixes, proper internationalization and put valid link
* Styling fixes, translators comment, rename ApmsProps component to ApmListProps
* Two more styling fixes
* Styling fix
* Styling fix
* Remove text-decoration: none to match the design
* Fix failing by initializing properties.
1. wc_core_dir was earlier being initialized in by WC_Admin bootstrap file, after the monorepo merge, this is no longer needed and can be replaced by WC_ABSPATH directly. (Since WooCommerce core is not being mounted in a different folder).
2. $user was usually unintialized, but it still worked since when passing null it will autoset to 1. This is modified to either not handle this explicitly, and/or not pass any value when default is fine.
* Add changelog.
* Disable action buttons when product form is invalid
* Move to trash action should be enabled when editing a product even when the form is invalid
* Hide Move to trash action button in the Add new product page
* Hide product link when the name field has any error
* Disable Publish options menu button when all menu items are disabled
* Test menu items by text instead of index
Enable support for the Preview Modal within the COT/HPOS admin list table.
* Add `@since` to dobclock
* Update wc-orders JS script to work with COT
* Move order preview template to `Internal\Admin\Orders\ListTable`
* Add changelog
* Fix: init_theorder_object throwing an error
The error was thrown due to the return type of the method being
WC_Order (but can also be "false" or other type of object)
* Add changelog file
* Skip Store owner can go through setup Task List test
* Added changelog
* Explicitly change currency in before hooks to resolve dependency
* Update assertion for product import test
* Set currency on product import test
Co-authored-by: Jon Lane <jon.lane@automattic.com>
* Change the e2e selector for unchecking all business features
* Update e2e uncheck business features in test setup
* Add theme selection to before hook for shipping task
* Remove marketing transient on upgrade to 7.0
The recommended marketing extensions are stored in a transient (`wc_marketing_recommended_plugins`). When WooCommerce is upgraded, we need to remove that cached data from the transient so it can be repopulated using the new API.
Co-authored-by: Nima <nima.karimi@automattic.com>
* Remove -- -- from scripts that fixed issue in pnpm 6, fix a couple TS issues in sep packages
* Minor fixes to analyzer scripts and doco based on pnpm 7
* Add dompurify types to data package to avoid TS errors
* Remove pnpx in favor of pnpm exec
* Modify the code analyzer to respect pnpm version if present.
* Update instructions for running recursive lint, add comments to explain
* Add filter woocommerce_cart_item_is_purchasable when getting cart item in session
* Add changelog.
* Do not migrate orders in auto-draft.
* Add $product to filters for convinience.
* Add changelog.
* Revert "Do not migrate orders in auto-draft."
This reverts commit 614586d0c4.
* Also add product param in new filter.
* fix docblocks.
* more docblock fixes
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
This trait allows to mark private and protected methods as externally
accessible. There are also utility add_action and add_filter methods
that mark the method as accessible and use it as callback in one
single step.
Additionally, all the classes that were hooking to private methods using an
anonymous function in the 'src' directory are changed to use the new
AccessiblePrivateMethods trait instead, thus they can be unhooked now.
Introduces two new collection params for v2 and v3 orders and products REST API endpoints. These params allow for limiting which meta keys are included in the meta_data property of the API responses.
Fixes#34243
For email notifications to store owners about new orders, adds messaging with deep links to open the orders directly from the Woo mobile app when the new order meets certain criteria. If the store owner has not yet used the Woo mobile app, instead provides a link to download the app.
Fixes#34544
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
* Only run remote inbox notification once onboarding has been skipped or completed
* Add callback for add_option for profiler as well
* Add changelog
* Add extra condition to check if store address or country has actually been set
* Update rule to check if default location is set, if so return false
* Revert initial changes and update changelog description
* Added tests and updated logic a bit
* Add comment for long condition
Redirect legacy/CPT admin order URLs when Custom Order Tables are enabled.
* Add utility method to generate a link to the orders screen
* Add `PostsRedirectionController` to handle redirection from CPT-based URLs to new ones
* Use the redirections controller inside the orders screen PageController
* Add changelog
* Add check for COT enabled before enabling redirection controller
* Add support for trashing orders
* Update changelog
* Take into account ‘shop_orderplacehold’ when redirecting
* Correctly handle bulk actions
* Update k6 tests to remove linting errors, replace custom metrics with tags, and add ability to run against COT
* Added changelog
* Updated readme for new k6 perf config variables & removal of custom metrics
* Updated k6 tag names
* Collapse the short description module by default
* Add a descriptive tooltip to description and short description editors
Product description editor shows a tip text that clarify the purpose of the editor
Product short description meta box title shows a tip text that clarify the purpose of the editor
* Add changelog file
* Add translatable text to short and description of the product
* Remove the FK from the download log table.
It's unnecessary and forces InnoDB engine.
* Delete also related download logs.
To replicate the FK behaviour.
* ON DELETE CASCADE in PHP
* Changelog.
* Bump the version when this will be included.
* Fixed missing select in subquery.
* Fix copypasta error.
* Remove accidentally added file.
* DRYing.
* Bracketing.
* Slight refactor to make it easier to read.
* Remove the FK from the download log table.
It's unnecessary and forces InnoDB engine.
* Delete also related download logs.
To replicate the FK behaviour.
* ON DELETE CASCADE in PHP
* Changelog.
* Bump the version when this will be included.
* Fixed missing select in subquery.
* Fix copypasta error.
* Remove accidentally added file.
* DRYing.
* Bracketing.
* Slight refactor to make it easier to read.
Co-authored-by: Nestor Soriano <konamiman@konamiman.com>
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.
* Added protections and code standard fixes.
* Use wp_update_post so that hooks fire as usual.
* Add and use ON_DUPLICATE_KEY update function to perform update/insert without additional query.
* Fix typo
* Add more tests for save related functions.
This updates Turborepo and adjusts the output caching for `woocommerce/client/legacy` and `woocommerce/client/admin`. The result is that build outputs in `plugins/woocommerce/assets` should be stored correctly.
* Update get_product_data to send request with a locale query param for translation
* Add changelog
* Fix lint
* Update PRODUCT_DATA_TRANSIENT format for translations
* Validate that tinymce exists before using it.
If wp is not configured to use blocks and the tinymce was changed by a different editor then the error happends because tinymce is required. Applaying a validation that makes sure tinymce exists before using it solves the problem. But this introduces a new problem, the description property will be send with value 'No' when event 'product_update' will be fired.
* Add changelog file
* Check if tinymce.get( 'content' ) is not falsy before calling getContent()
* Update `jest-puppeteer@5.0.4` (from `4.4.0`)
to be albe to run with jest 28.
* Update `jest` and `ts-jest@^27` (from `25`),
to match `e2e-environment` needs.
* Update api-core-tests' `jest@^27` (from `25`),
to unify the used version across the stack.
* Update e2e-env's `jest@^27` & co. (from `25`),
to unify the used version across the stack.
* Update e2e-env's `@jest/test-sequencer@^27` (from `25`),
to unify the used version across the stack.
* Update admin-e2e-tests' `@jest/globals@^27` (from `26`),
to unify the used version across the stack.
* Update woocommerce's `jest@^27.5.1` (from `25`),
to unify the used version across the stack.
* Replace `mocked` from `ts-jest` to the one from `jest`,
Update `@types/jest@27.4.1` from `27.0.2`.
Try to fix broken tsc build.
* Update `e2e-core-tests`' `@jest/globals@^27.5.1`
from `^26.4.2`.
* Remove changelog entry for bumpin jest in `api-core-tests`
It was already covered in `trunk`.
Addresses https://github.com/woocommerce/woocommerce/pull/34322#discussion_r956019567
* Updated package-lock.yaml
* Updated timeout
* Added changelogs
Co-authored-by: jamelreid <jnoelreid@gmail.com>
* Update Guernsey state field to non-required
Resolves woocommerce#32876 by making GG state field entry non-required.
* Update Guernsey state field with correct label
Based on https://en.wikipedia.org/wiki/Guernsey#:~:text=Guernsey%20(%2Fˈ%C9%A1ɜ%CB%90rn,Guernsey%2C%20a%20British%20Crown%20Dependency.&text=It%20is%20the%20second%20largest,west%20of%20the%20Cotentin%20Peninsula it looks like the state equivalent for GG is to "Parish" so rather than hiding the field entirely, it makes more sense to make it optional, and add the correct label.
* Added changelog.
Co-authored-by: Rynaldo <89896100+rynaldos@users.noreply.github.com>
* implement coupon held methods.
* Add changelog file.
* Used `delete_meta_data` of WC_Coupon and cleared meta cache after adding coupon held meta.
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
* Add styles for the progress header
* Add changelog
* Fix invalid header error from the changelog -- this file is not related to this repo, but I am still fixing it since it is not passing the gitflow job
* Refactor NewSalesRecord to have get_note method
* Refactor OrderMilestones to have get_note method
* Add unit tests for notes
* Fix wrong content data return type
* Add changelog