* Methods for fetching and caching product feature restrictions.
* DTO for passing product feature rule set to the plugin.
* Main class for handling product feature restriction logic.
* Remove unconnected WCCOM site related restrictions.
* Start with minimalist rule
If `\WC_Product_Usage::get_rules_for_product( 27147 )` returns null it
means no rule set to apply for product with ID 27147. Otherwise, it
returns `\WC_Product_Usage_Rule_Set`.
* Remove unused constant
* Remove underscore prefix on the method name; it's discouraged by the linter
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Akeda Bagus <akeda.bagus@automattic.com>
* Add aria label to the Clear variation options link
* Make the matching variations alert a live region
* Bump add-to-cart variable template version
* Add changelog file
* Add docblock comment to woocommerce_reset_variations_link filter
* Revert changes for Clear variations button
* Make unavailable product combination message a live region
* Improve no matching variation message for screen readers
* Align variables declaration
* Bump template version
* Add role alert to the parent of the no matching message
* Add empty alt text for pesudo-element content
---------
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
* Update wc-template-functions.php
* Add changefile(s) from automation for the following project(s): woocommerce
* Update plugins/woocommerce/includes/wc-template-functions.php
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Naman Malhotra <naman03malhotra@gmail.com>
* Add GTIN in structured data
* Changelog
* Add changefile(s) from automation for the following project(s): woocommerce
* Delete plugins/woocommerce/changelog/50087-tweak-add-gtin-ld-json
* Add changefile(s) from automation for the following project(s): woocommerce
* Lint
* Delete plugins/woocommerce/changelog/50087-tweak-add-gtin-ld-json
---------
Co-authored-by: github-actions <github-actions@github.com>
* Render total blocks before fields on checkout
* Reverse checkout total blocks position on desktop
* Add changelog file
* Add conditional styles to reverse checkout blocks order
---------
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
* CYS - Move the ai/store-title endpoint to woocommerce admin api
* Add middleware and callback
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint error
* CYS - Move the ai/business-description endpoint to woocommerce admin API
* CYS - Move the ai/store-info endpoint to woocommerce admin API
* Update endpoint
* CYS - Move the ai/images endpoint to woocommerce admin API
* CYS - Move the `ai/patterns` endpoint to woocommerce admin API
* Add changefile(s) from automation for the following project(s): woocommerce-beta-tester, woocommerce
* Fix duplicated entries
* Use AI endpoint base class
* Remove unnecessary change
* Add strict types
* Remove unnecessary return type
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update 1140.md
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Update 1140.md
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
* CYS - Move the ai/store-title endpoint to woocommerce admin api
* Add middleware and callback
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint error
* CYS - Move the ai/business-description endpoint to woocommerce admin API
* CYS - Move the ai/store-info endpoint to woocommerce admin API
* Update endpoint
* Add changefile(s) from automation for the following project(s): woocommerce
* CYS - Move the ai/images endpoint to woocommerce admin API
* Add changefile(s) from automation for the following project(s): woocommerce
* Use constant and normalize site title values
* Add base AI Endpoint class
* Fix lint error
* Use the endpoint base class
* Revert change
* Add changefile(s) from automation for the following project(s): woocommerce
* Use ai endpoint class
* Add strict types
* Fix lint error
* Add strict type
* Fix lint and use ai endpoint base
* Fix lint
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS - Move the ai/store-title endpoint to woocommerce admin api
* Add middleware and callback
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint error
* CYS - Move the ai/business-description endpoint to woocommerce admin API
* CYS - Move the ai/store-info endpoint to woocommerce admin API
* Update endpoint
* Add changefile(s) from automation for the following project(s): woocommerce
* Use constant and normalize site title values
* Add base AI Endpoint class
* Fix lint error
* Use the endpoint base class
* Revert change
* Add changefile(s) from automation for the following project(s): woocommerce
* Use ai endpoint class
* Add strict types
* Fix lint error
* Add strict type
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS - Move the ai/store-title endpoint to woocommerce admin api
* Add middleware and callback
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint error
* CYS - Move the ai/business-description endpoint to woocommerce admin API
* Use constant and normalize site title values
* Add base AI Endpoint class
* Fix lint error
* Use the endpoint base class
* Revert change
* Add changefile(s) from automation for the following project(s): woocommerce
* Add strict types
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add new default spec function
* Changelog
* Add a new method to get cached or default
* Add test
* Update comment
* Revert comment
* Update docblock
* Lint
* Typo
* Set specs to default when marketplace suggestion is disabled
* Update tests
* Track product and tax rates importer view triggered from WP importer screen
* Add changefile(s) from automation for the following project(s): woocommerce
* Use $this for the callback
* Make sure id exist
* Do not track if we are in a specific import screen
* Ignore phpcs warning -- we are not using the value
---------
Co-authored-by: github-actions <github-actions@github.com>
* feat: Update TaskLists.php to improve performance and fix bugs
The code changes in TaskLists.php optimize the performance by reducing unnecessary checks and improve the functionality by fixing bugs related to the "setup tasks remaining" feature.
* Update tests
* Add changelog
* Fix lint
* Update TaskLists.php to fix completed tasks array initialization
* Update Fiver Logo Maker LP link per request.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Rename woocommerce_is_store_page to woocommerce_is_extension_store_page
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Revert "Add new buttonAttributes API to style express checkout buttons coherently (#47899)"
This reverts commit 006fbc6714.
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* Update changelog
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* add email type to email field in Checkout block
* Add changefile(s) from automation for the following project(s): woocommerce
* fix changelog
---------
Co-authored-by: github-actions <github-actions@github.com>
* Fix inline documentation typos in woocommerce-blocks
* Add changelog file
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* Remove original changelog
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Mike Jolley <mike.jolley@me.com>
* Remove common query string variables which affect cart contents
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add busy state
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Missing global $wp
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove colon in product data meta box checkboxes
* Changelog
* Fix CSS for checkbox
* Update margin so the distance between checkbox and label is 8px, and distance between items are 32px
* Move checkbox to the left, added has-checkbox class, minor adjustments to margins
* Minor adjustment
* REST: Update product stock when removing line item from order
This ensures that the REST endpoint behaves the same as the UI when
updating an order to remove a line item.
Fixes#49651
* Add changefile(s) from automation for the following project(s): woocommerce
* phpcs cleanup
* Add unit tests
* phpcs cleanup
* Update plugins/woocommerce/changelog/50606-fix-49651-rest-remove-line-item-stock
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Add changefile(s) from automation for the following project(s): woocommerce
* Add void return type to new method
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Add variation to Product Filters Overlay Navigation
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* Move Product Filters Overlay Navigation to correct position
* Hide block when it is outside the Product Filters template part
* Display Navigation block in the frontend
* Show the Product Filters Overlay Navigation on the frontend
* Add logic to hide Product Filters Overlay Navigation block on the frontend
* Hide block on the Overlay template part
* Fix eslint errors
* Update the block variation title
* Remove the `isActive` property from the block variations
* Use Product Filters block context
* Replace enum with const
* Remove unnecessary `StyleAttributesUtils`
* Rename context key
* Move BlockOverlayAttribute to the constants.ts file
* fix BlockOverlayAttribute import
* Fix import error
* Improve code for the shouldHideBlock method
* Remove unnecessary attributes property
* Fix error in ProductFiltersOverlay block
* Prevent block from being hidden on Product Filters template part
* Fix inspector controls when block is hidden
* Remove unnecessary import
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add aria-current to the current link in My Account side nav
* Update current page check for dashboard, orders, and payment methods
* Fix PHP linting errors
* Update function for getting current aria for account menu
* Bump template version
* Create a helper function to test current item in the account menu
* Fix liniting errors
---------
Co-authored-by: amesplant <95257231+amesplant-dmv@users.noreply.github.com>
* Update logic to allow new accounts to set their password
* Changelog
* phpcs ignores
* Doc block update
* Remove redirect if lost-password accessed by logged in user
* Remove restriction on lost password page
* Fix `Product meta` console error
* Add changefile(s) from automation for the following project(s): woocommerce
* Not use Atomic class
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: avoid to enqueue jetpack scripts
* Add changefile(s) from automation for the following project(s): woocommerce
* remove not necessary import
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add context to type
* Clean up notifyerrors helpers
* Notify and clear top level cart errors
* changelog
* Make extensionCartUpdate surface the errors
* No automatic clearing of notice
* Handle generic errors only, add docs
* Rename param
* Fix linting in readme
* Update toc
* test coverage
* Unused import
* We're only dealing with arrays of errors so simplify logic
* Make hover status style like active
* Add changelog file
* Update changelog message
Co-authored-by: Albert Juhé Lluveras <aljullu@gmail.com>
---------
Co-authored-by: Albert Juhé Lluveras <aljullu@gmail.com>
* Make some methods agnostic of which fallback template is used
* Get rid of the template_is_eligible_for_fallback() util
* Get rid of the template_is_eligible_for_fallback() util (II)
* Add changelog
* Get rid of the template_is_eligible_for_fallback() util (III)
* Add back 'template_is_eligible_for_fallback' method
* Fix issue after rebase
* Remove some more instances of hard-coded templates from the template hierarchy code
* Update comments
* Remove unused template_is_eligible_for_fallback() function
* Add extra explanatory comment
* Pass default value to get_option
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Avoid registering block in the wrong context
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Fix Product meta translations
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint error
* Remove AddToCartForm from the list of blocks to not register in posts
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Expose buttonAttributes to the express payment methods
* Add size and label attributes to the express checkout area
* Remove defaultHeight
* default button Label
* Remove the button label attribute
* Remove px from height
* Change large button height to 55px
* Load express checkout block with attributes
* Add toggle and borderRadius controls and remove getting border radius from the theme
* Remove extra border radius text
* Only pass buttonAttributes if toggled on
* Move express payment block attribute logic into a Provider
* Tidy up editor grid and parse attributes into context on frontend
* Add px to border-radius input
* Express payment methods not selectable
* Add a test
* lint fixes
* default button height is 48 not 4
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Update docs
* Add tests for express payment methods
* Center images within the express payment area in the editor
* Apply the buttonAttributes to the li container in the editor regardless of showButtonStyles
* Fix style issue
* fix linting
* fix lint again
* Update manifest
* Update docs manifest
* Resize images in editor
* lint fix
---------
Co-authored-by: github-actions <github-actions@github.com>
* Avoid registering block in the wrong context
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Fix Product meta translations
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint error
---------
Co-authored-by: github-actions <github-actions@github.com>
* Avoid registering block in the wrong context
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
---------
Co-authored-by: github-actions <github-actions@github.com>
* Format json
* Get title and description from the registered block
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Add empty array dep
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add lost password e2e tests
* Add changefile(s) from automation for the following project(s): woocommerce
* Update lost password e2e test
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add woocommerce_coming_soon option for all sites
* Set default option
* Add changelog
* Update `woocommerce_coming_soon` option to use `update_option` instead of `add_option`
* Cache order year_months in options for performance.
* Modify to prevent unnecessary option changed.
Add unit tests.
* Add the strict type directive.
* Use exact check to use more cache instances.
* Add clean state test.
* Add namespace.
* Namespace fixes.
* Add virtual product to fixtures
* Add test to check virtual products can be ordered
* Add test to check orders cannot be placed with invalid payment method
* Add test to ensure orders can't be placed with out of stock items
* Add test to ensure orders can't be placed with unowned coupons
* Add test to ensure orders can't be placed coupons exceeding usage limit
* Add test to ensure that orders can be placed with coupons.
* Add changelog
* Clean up coupon management
* use correct WC case
---------
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
* Dispatch JS event about PC being rendered
* Revert format changes
* Write the callback
* Add functions descriptions
* Add changelog
* Remove empty line
* Add tests
* Rename test cases
* Replace waiting for page load with more reliable expect.poll
* Remove leftover step
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
* Fix typo in function name
* Add collection name to default Product Collection block
* Expect collection name in the event
* Expose the collection name through IAPI context
* Send the collection name with the event
* Trigger event also on page change
* Remove unused CUSTOM collection type
* Provide documentation
* Update TOC
* Update tests that verify the event payload
* Improve E2E tests further
* Don't add a Product Catalog collection type to default collection
* Avoid repeating the same piece of code by extracting some function on tag processor
* Rename function to better depict its purpose
* Move the documentation to the right place
* Remove the unused variable
* Add example to dom-events doc
* Update documentation
* Update docs manifest
* Attach default collection name
* Add the default collection context in PHP so it covers all the cases
* Prevent exposing product catalog collection name in event
* Update docs
* Update test
---------
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>