* 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
* Add key event handlers
* Track selected item and focus
* Fix selected indexes on up down selection and drop
* Consolidate update item order logic
* Hide horizontal items on drag
* Update naming of ordering persistence
* Announce keyboard events to screen readers
* Consolidate reset method
* Simplify drop index numbers and conditions
* Fix up announcements
* Add tests around new utils
* Fall back for item name in announcement from aria label or alt text
* Update lock file
* Add changelog entry
* Handle PR feedback
* Fix up lock file after rebase
* Update lock file
* Update lock file again
* Update lock file after pnpm7
* Use trunk lock file
* Update lock file with a11y package
* Try new lock file
* Try lock file with pnpm add
* pnpm add from root
* Fix itemToString in SelectControl
* Downgrade a11y to v3.5.0
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
* Use downshift built in methods to handle selection of items
* Fix menu styling
* Fix removal a11y announcement
* Don't show menu without results
* Fix async example a11y
* Add changelog entry
* Deselect item in state on remove
* Fix formatting issues
* Update lock file
* Update lock file after pnpm7
* Skip lib check breaking oclif build in package-release
* Rebase again and fix up lock file
* Skip lib check in monorepo-merge
* Fix the lock
* Ignore lint
Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Jonathan Sadowski <sadowski@automattic.com>
* 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
* Add 2 new GitHub Actions workflows to include COT E2E and API automated tests in CI.
* Fix typo in GitHub Actions workflow name.
* Update new PR COT test workflow to trigger with any PR.
* Update new cot-pr-build-and-e2e-tests.yml GitHub Actions workflow to use the Monorepo Setup Action.
* Updated 'cot-build-and-e2e-tests-daily.yml' to use the new WooCommerce Monorepo action and 'cot-pr-build-and-e2e-tests.yml' to trigger on PRs labeled with the custom order tables tag.
* 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