* Allow registering custom collections with various context references
Implemented the registration of product collections with different context references using the `usesReference` property. These custom collections are now registered with specific contexts such as product, cart, order, and archive.
This enhancement allows for more tailored previews and functionality based on the specific context in which the product collection is used.
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Support multiple references for usesReference
* docs: update documentation to include `usesReference`
Enhanced the `register-product-collection` documentation to include details about the new `usesReference` property. This property allows collections to specify required references, enhancing their contextual relevance and preview capabilities.
- Added `usesReference` description to the collection fields section.
- Included examples demonstrating the usage of `usesReference` with single and multiple references.
- Clarified the behavior when required references are unavailable on the editor side but available on the frontend.
This documentation update provides third-party developers with the necessary information to utilize the `usesReference` property effectively in their custom product collections.
* test: add e2e tests for `usesReference`
Added end-to-end tests to verify the functionality of the `usesReference` property in product collections. These tests ensure that the appropriate preview labels are displayed.
- Created multiple custom product collections with different `usesReference` values: `product`, `cart`, `order`, `archive`, and combinations of these.
- Verified that collections show the correct preview label when the required reference is present.
- Ensured that the preview label is not shown in irrelevant contexts, such as posts or product catalog templates.
This addition enhances test coverage and ensures the robustness of the `usesReference` feature.
* Fixed issue with preview label showing in Specific Product and Archive templates.
* Handle cases when termId or productId is 0
This also improves the readability of the code by using better variable names.
* Make PC use postId context so location can be recognised correctly (#50152)
* Fix TS errors
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
* CYS - Document possible Intro pages
* Update README.md
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint errors
* Move images to the repo
---------
Co-authored-by: github-actions <github-actions@github.com>
* Text adjustments on shipping zones settings page
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix line error and escape output
---------
Co-authored-by: github-actions <github-actions@github.com>
In this PR we re-grouping PHPUnit jobs and introducing sharding based on two test suites - legacy and main, in order to reduce per-PR CI flow duration and release workers earlier.
* Update class-wc-rest-wccom-site-ssr-controller.php
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* express checkout buttons have a min-width of 240px
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Fix linting issue
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update the `show_on_front` setting to `posts`.
This is needed for the CYS flow to work properly
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* feat: add `aria-required` attributes to WC form fields
* Add changefile(s) from automation for the following project(s): woocommerce
* added tests for radio fields
* WIP
* WIP
* yoda, space
* Update functions.php
* WIP
* WIP
* Add changefile(s) from automation for the following project(s): woocommerce
* Add changefile(s) from automation for the following project(s): woocommerce
* Update plugins/woocommerce/tests/legacy/unit-tests/templates/functions.php
Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
* fix checkbox required attribute, add tests
* lint
* Add changefile(s) from automation for the following project(s): woocommerce
* importing changes from Thomas' branch, aria-hidden on abbr
* Add changefile(s) from automation for the following project(s): woocommerce
* added hidden also on JS changes
* template number change
* forgot to commit these changes
* porting of changes from selectWoo repository
* undo unwanted changes
* Update checkout e2e to stop looking for * in field labels
* removed aria-hidden to abbr, to avoid regressions across multiple repos
* lint
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Alex Florisca <alex.florisca@automattic.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
* CYS: Fix opt-in flow fonts
* Add changefile(s) from automation for the following project(s): woocommerce
* add E2E test
* fix e2e test
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Fix opt-in flow patterns
* clean up not necessary state
* Add changefile(s) from automation for the following project(s): woocommerce
* show spinner
* improve e2e test
* fix e2e test
* fix lint error
---------
Co-authored-by: github-actions <github-actions@github.com>
* Modify Product Filters Overlay template part
* Add changefile(s) from automation for the following project(s): woocommerce
* Add E2E tests for the Product Filters Overlay template part
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add login username in reset password links
* Add changefile(s) from automation for the following project(s): woocommerce
* Move login param as final query param
* Bump template versions to 9.3.0
* `phpcs:ignore` should be specific
* `phpcs:ignore` should be specific
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Recognize custom category templates as archive ones
* Disable the preview label if termId is recognized
* Fetch the product category template ID
* Prepare util to properly parse product taxonomies
* Utilise the taxonomies util and update the query accordingly
* Add tests
* Update tests to be more specific
* Improve selectors in E2E test
* Add changelog
* Update selectors
* Fix the order of expected products
* Remove unneceessery entries from array that are covered by another entries
* Rename the variable to beytter depict its purpose
* WIP
* Add changefile(s) from automation for the following project(s): woocommerce
* Add missing code in before all
* Fix lint
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add validation and empty value to select components
* address feedback
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* remove console log
* Update plugins/woocommerce-blocks/docs/third-party-developers/extensibility/checkout-block/additional-checkout-fields.md
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Update plugins/woocommerce-blocks/docs/third-party-developers/extensibility/checkout-block/additional-checkout-fields.md
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* remove test
* Fix tests
* also move select to parent
* fix tests
* add empty enum to schema
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Fix#49982Fixes#49982
* Add changefile(s) from automation for the following project(s): woocommerce-beta-tester
---------
Co-authored-by: Vladimir Reznichenko <kalessil@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
* `wc_get_account_endpoint_url` should handle nonces for logout endpoint
* Handle logout without redirect, unless a nonce is missing.
* `wc_logout_url` should not use the account page endpoint because that does not support custom redirects
* Handle navigation nonces
* changelog
* Bump versions
---------
Co-authored-by: Seghir Nadir <nadir.seghir@gmail.com>
* Added a whitelist of sections to render an alternative output in the WC_Settings_Payment_Gateways_React class.
* Renamed constant and updated its contents to only include 'offline'
* Added a branch in the `output()` method to output an appropriate div with an id if the current section is in the whitelist.
* Added "experimental" prefix to payment settings div ID.
* Replicated the render for the offline section similar to the main payments settings.
* Added a new settings-payments-offline screen to the WooCommerce admin plugin.
* Implemented new offline settings page component.
* Removed the ErrorBoundary components from the SettingsPaymentsMainWrapper and SettingsPaymentsOfflineWrapper.
* Added a new SettingsPaymentsOfflineWrapper component and its corresponding SCSS styles.
* Implemented the WooCommerce Payments section in the settings page.
* Removed WooCommerce Payments settings logic and replaced with a placeholder.
* Added a placeholder for the offline payments screen.
* Added 'main' to the REACTIFY_RENDER_SECTIONS array and refactored the output method to improve readability and maintainability.
* Renamed `render_gateway_section` method to `render_classic_gateway_settings_page` in the `class-wc-settings-payment-gateways-react.php` file.
* Added a filter for the REACTIFY_RENDER_SECTIONS so that plugins can modify this list.
* Added inline documentation for the filter in the `get_reactify_render_sections` method.
* changelog
* Matched the CSS styles for the WooCommerce Payments section to the offline section.
* Removed unnecessary Card component and placeholder text from WooCommerce Payments settings.
* Linted the `class-wc-settings-payment-gateways-react.php` file, addressing the reported linting issues.
* Refactored the payment settings UI to use React components and lazy loading.
* lint
* Nit: Removed unnecessary comment and moved a small code
* Update name to experimental
* Fix save button missing from section pages
* Fix saving sections
---------
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
* Update my-account-orders.js
* Add changefile(s) from automation for the following project(s): woocommerce
* Add changefile(s) from automation for the following project(s): woocommerce
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Tam Mullen <tam.mullen@automattic.com>
* WIP
* Add e2e tests for the full composability
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint errors
* Enable the full composability flag for want more patterns banner
---------
Co-authored-by: github-actions <github-actions@github.com>
* Use createRoot().render() instead of render()
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Replace `unmountComponentAtNode()` with `createRoot().unmount()`
* Adjust JS unit tests
* Remove obsolete import
* Remove “ReactDOM.render is no longer supported” check
* Update pnpm-lock.yaml
* Migrate JS unit test to React 18
* Revert "Update pnpm-lock.yaml"
This reverts commit 18bfc967aa.
* Migrate JS unit test to React 18
* Migrate JS unit test to React 18
* Minor refactor
* Unskip previously skipped tests
* Fix JS unit test error related to root.unmount()
* Remove obsolete dependency
* Fix failing blocks e2e test
* Fix failing core e2e tests
* Optimise memoisation to prevent “Maximum update depth exceeded” error.
* Fix Filters JS tests in #48796 (#49973)
* Run cleanup in Rating Filter JS tests
* Run cleanup and wait user interactions in Stock Status Filter JS tests
* Rename constant
* Simplify conditional statement
* Introduce TS type
* Address lint error
* Rename TS type
* Optimise multiple TS types
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
* Add new payments settings class, add new settings-payments module and a demo main component
* Minor edits
* Changelog
* Lint
* Lint php
* Use createRoot
* Hide payment recommendations when feature flag is enabled
* Moved logic
* Prep trunk for 9.3 cycle with version bump to 9.3.0-dev
* Add comment explaining why no changelog is needed.
---------
Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>
* Create add_to_cart_success_message method in WC_Product_Simple class
* Add data-success_message attribute to remove item button in cart
* Add data-success_message to Add to cart button
* Make screen readers announce mini cart updates
* Add changelog file related to #37597#37598
* Add translator comment to remove button data-success_message attribute
* Add docblock to woocommerce_product_add_to_cart_success_message filter
* Bump mini-cart template version
* Refresh mini cart live region by removing it from the DOM
* Add mini cart live region to DOM beforehand
* Remove aria-relevant attribute before adding new content to live region
* Add a delay before updating live region
* Bump mini-cart template version from 9.1.0 to 9.2.0
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
* Bump version of woocommerce_product_add_to_cart_success_message filter
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
* Add description to the $text param on woocommerce_product_add_to_cart_success_message filter
* Refactor logic in the add_to_cart_success_message function
---------
Co-authored-by: Paulo Arromba <17236129+wavvves@users.noreply.github.com>
* Ensure wccomHelper data is only added on In-App Marketplace pages
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix linting
- Looking for GET requests for admin users, so no nonce available to check
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Skip PTK is down test on WordPress 6.5
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add helper function to clear track events
* Add additional test cases for product_add_publish track event
* Add changelog
* Add empty save use case
* Address lint issues
* add: new inspector controls
* update: cleanup the edit component
* chore: remove unused old inspector component
* tweak: add formatting to help text
as Jarek said:
> Here’s the copy. Please mind the formatting.
* add: default attribute id that closest to 30
* update: pass the whole attribute object
* update: use default attribute term in Product Filters template
* add: style settings
* add: sorting and show empty behavior in the editor preview
* tweak: use hideEmpty to align with existing settings
* chore: changelog
* test: add basic e2e tests
* chore: restore previous default value
* add: attribute help text and border support
* chore: lint
* fix: add missing context
* Add Product Filters template part
* Improve Product Filters template part description
* Hide Product Filters block from the inserter
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* Add E2E tests
* Fix lint error
* Fix lint error
* add: register variation for unmodified template part
We should move this to abstract class later.
* Fix lint error
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
* CYS - Revert the button copy customize the TT4 theme
* Add changefile(s) from automation for the following project(s): woocommerce
* CYS - Add banner for block themes
* Add banner for block themes
* Fix tests
* Fix tests
* Fix intro banners
* Add modal to the use store designer
* Fix tests
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint errors
* use sendEvent instead of redirect
* fix lint error
* fix logic on ai flow
* fix build
* improve check
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
* WIP
* Add empty option for state as well
* Add client-side validation to country select inputs
* Add validation messages for state.
* Clean up redundant destructuring.
* Fix up the validation logic, fix bug where empty select was shown in some cases.
* Remove unused import
* Use import aliases instead of large relative paths
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Fix a typo
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* use SelectOption type
* Also handle when address changes, because we shouldnt validate state when there is an address change
* adjust validation to handle any address change, not just country. translate field validations and use lowercase
* add a lowercase label for the country select as well
* Fix an issue where scroll to would not scroll to invalid select
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Add address title to edit/add buttons on my account
* Add chengelog file
* Bump my-address template version
* Use placeholder in the edit/add address translation
* Replace sprintf with printf
* enhancement: making tooltips message be selected based on order status. passes order object in woocommerce_get_order_status_labels filter for more personalized tooltips.
* Add changefile(s) from automation for the following project(s): woocommerce
* fix: change incorrect keys of order status in order_status array
* remove duplicate changelog file
* fix: linting issues
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Adrian Duffell <9312929+adrianduffell@users.noreply.github.com>
* Remove strong tags from patterns
* Add changefile(s) from automation for the following project(s): woocommerce
* remove bold header
---------
Co-authored-by: Luigi Teschio <gigitux@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
* Add the customer account block to control the spacing
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Ensure that Customizer redirect is always enabled when a classic theme is enabled
* CYS: Ensure that the button in the Intro page redirects to the Customizer when a classic theme is enabled
* clean up logic
* add site preview
* mark CYS as complete when user saves customizer changes
* improve comment
* fix unit test
* fix unit test
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add syncWithFilters attribute to Product Collection
* Add SycnWithFilters Inspector Control to PC
* Minor import adjustments
* Move the controls to Inherit as they share the same labels
* Rename the attirbute to filterable
* Hide control for collections
* Consume the filterable
* Consume filterable attribute so it enables the filtering
* Bring back file format
* Bring back filterable
* Move filterable from attribute to query
* Improve checks
* Fix incorrent function name
* Add changelog
* Set the default filterable value on insert
* Update test selector
* Add E2E tests to #49627 (#49715)
* Remove unnecessary call to create new post
* Fix "Use page context" control tests
* Fix post ↔ template collection sync test
* Fix non-thenable linter errors
* Extend the "Use page context" default setting test
* Add test for filtering in non-archive context
* Add test for combining editor and front-end filters
* Fix lint
* Update plugins/woocommerce-blocks/assets/js/blocks/product-collection/edit/inspector-controls/inherit-query-control.tsx
Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
* Improve query properties access
* Rename inherit-query-control to use-page-context-control to better depict its purpose
* Lint fix
---------
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Manish Menaria <the.manish.menaria@gmail.com>
* Fix undefined array key "name" warning in ComingSoonRequestHandler.php when font name is not set
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Schedule fetching patterns only one an hour
* Add changefile(s) from automation for the following project(s): woocommerce
* Add notice
* Fix lint error
* Update copy
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add tracking for enable auto renew link.
* Add UTM parameters to in-app enable auto-renew notice.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add tracking for new event.
* Correct the naming convention for tracking event.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Prevent new order hook if moving or creating order status into a non-triggering status (drafts&failed refunded etc) when using CPT for orders.
* Removed rogue error_log()
* Lint
* Prevent new order hook if moving or creating order status into a non-triggering status (drafts&failed refunded etc) when using HPOS for orders.
* Added changelog
* Fixed wrong if simplification
* Unit tests for update methods
* Renamed var
* Renamed vars to snake_case.
* Introduced remove_status_prefix() utility function.
* Added default 'new' status to an Order that doesn't exist yet in the database for the update method in HPOS
* Added default 'new' status to an Order that doesn't exist yet in the database for the update method in CPT
* Linting.
* Missing class import.
* Added a new test for updating new processing Orders.
* Linting.
* Tests fix.
* Tests fix.
* Removed statuses from triggering the new order hook.
* tweak
* Test tweak
* Test tweak
* Test tweak
* Test tweak
* Test tweak
* Tweak to rule out db querying failure.
* Revert "Fix terms counts in wcadmin_product_add_publish Tracks event (#48194)"
This reverts commit 7d5b3a81a2.
* Add changelog
* Add comment back in to fix linter
* CYS: Hide shuffle button when only one pattern is available
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: fix selected header/footer pattern
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Fix tip block syntax in register-product-collection.md
* 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>
* CYS: Remove margin last pattern preview
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
Fixes issue where expired and expiring notice displayed incorrectly
Consider connected (to the current site) product when checking expired
and expiring notice.
* Cache site subscriptions instead of just site_id
* Add helper method get_installed_subscriptions
* Bail out of installed subscriptions are empty
* Return early for invalid site ID
* fix(core-profiler): set default for props to avoid crashes. Fixes#49512
This fix solves an issue where if some of the onboarding profile properties from the context are undefined, it will prevent the user from proceeding with the core profiler.
Related issue #49512 has a description of the issue.
* Add changefile(s) from automation for the following project(s): woocommerce
* feat(core-profiler): improve onboarding profile assignment logic
This commit improves the logic for assigning the onboarding profile in the core profiler. It now checks if the output of the event is an object before assigning it to the context. If the output is not an object, it keeps the existing context. This prevents crashes and allows the user to proceed with the core profiler.
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
This PR introduces some type checking around the value of options involved in batch processing, particularly the one controlling which processors are enqueued.
* Add changelog
* Make BatchProcessingController's handling of internal options more robust
* Remove queue if invalid
* Implement suggestion
* Update Fiverr LP link to add proper tracking string (per internal request).
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Rename Google Listings and Ads with Google for WooCommerce
* Revert change regarding changelog
* Add changelogs
* Add changefile(s) from automation for the following project(s): @woocommerce/data, packages/php/remote-specs-validation, woocommerce
* Lint
* Lint
* Lint
* Rename Google Listings and Ads with Google for WooCommerce
* Lint
* Lint
* Tweak updated tests
* Add changefile(s) from automation for the following project(s): @woocommerce/data, packages/php/remote-specs-validation, woocommerce
* Lint
* Fix flaky tests
---------
Co-authored-by: github-actions <github-actions@github.com>
* Render an aria-label for the initial mini cart html
* Add changelog
* add changelog
* delete duplicate changelog entry
* Add changefile(s) from automation for the following project(s): woocommerce
* Delete plugins/woocommerce/changelog/48329-fix-42289-mini-cart-aira-label
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Fix border width pattern preview
* Add changefile(s) from automation for the following project(s): woocommerce
* format CSS
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add missing script handle dependency
* Only register/unregister blocks if product page is being mounted/unmounted
* Set hasResolved to the product object
* Create new refresh action for product when generating variations
* Add changelog
* Revert changes around product update
* Field height and label text size adjustments
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Kepe initial height of child element
---------
Co-authored-by: github-actions <github-actions@github.com>
* Split logged in/logged out views in my account rendering
* Redirect to edit account when using lost password when logged in
* changelog
* logout before running test
* esc_url_raw
* CYS: Fix tooltip overlap with pattern
* Add changefile(s) from automation for the following project(s): woocommerce
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Remove not necessary placeholder on homepage sidebar
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Spacing adjustments for coupon code
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Fix button background on Featured Category Cover image
* Add changefile(s) from automation for the following project(s): woocommerce
* improve logic to handle multiple patterns
* improve implementation
* fix color on WordPress 6.5
* remove not used import£
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: show logo when the header is updated
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Fix typo.
* Update UTM parameters of the PU renewal link on settings page and in-app my subscriptions tab.
* Update the UTM parameters of the PU renewal link on plugins page.
* Update link with UTM params when multiple subscriptions are expiring.
* Fix campaign name.
* Add UTM params to WC Settings PU renewal links.
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix campaign name.
---------
Co-authored-by: github-actions <github-actions@github.com>
In this PR, we are consolidating babel-loader caching and adding Jest caching, improving build/testing times locally and in CI. The improvement comes from cache covering transpile steps in the mentioned processes.
* Inherit the color of the star
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
---------
Co-authored-by: github-actions <github-actions@github.com>
* add utm params for add payment method notice
* extract missing payment method notice data to different function
* rename utm params
* Add changefile(s) from automation for the following project(s): woocommerce
* fix lint issue
---------
Co-authored-by: github-actions <github-actions@github.com>
* Move icons to @woocommerce/icons package
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add overlay settings
* Tweak icon size slider
* Add overlay template part link
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* Fix scss linting
* Fix php linting
* Remove preview
* Rename setting props to be more clear
* Remove unused import
* Update plugins/woocommerce-blocks/assets/js/blocks/product-filters/editor.scss
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
* Update plugins/woocommerce-blocks/assets/js/blocks/product-filters/edit.tsx
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
* Update plugins/woocommerce-blocks/assets/js/blocks/product-filters/types.ts
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
* Update plugins/woocommerce-blocks/assets/js/blocks/product-filters/edit.tsx
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
* Move experimental controls to last of list
* Improve typescript code
* Remove unneeded constructor code
* Extract icons into own component
* Moved overlay template part link to the bottom
* Add apply button
* Hide overlay settings when in always mode
* Remove overlay template part from list and put into general area
* Update api version to 3
* Update plugins/woocommerce-blocks/assets/js/icons/library/filter.tsx
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
* Update plugins/woocommerce-blocks/assets/js/icons/library/filter-three-lines.tsx
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
* Fix overlay button link style and clickable
* Remove edit overlay link from never mode
* Add e2e tests for the filters overlay settings
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Tung Du <dinhtungdu@gmail.com>
Co-authored-by: Alexandre Lara <allexandrelara@gmail.com>
* Include date/status in order number column for use on smaller screens
* Rework responsiveness of order list a bit
* Add changelog
* Adjust related E2E tests
---------
Co-authored-by: Naman Malhotra <naman03malhotra@gmail.com>
* CYS: show default TT4 fonts pair
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Fix no block placeholder style
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS - Fix the column spacing for the "Four Image Grid Content Left" pattern
* Add changefile(s) from automation for the following project(s): woocommerce
* Remove the dash in the testimonials single name
* Add spacing to the testimonial 3 col patterns
* Add spacers to pattern titles
* Remove symbol before customer names
* Fix chessboard spacing
---------
Co-authored-by: github-actions <github-actions@github.com>
* Replace the customer account line logo
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Update changelog from PR that added new field to product lookup table
* Update db_version variable and use it to prevent adding global_unique_id when the lookup table was not yet updated
* Add woocommerce_schema_version to get_default_option_permissions
* Add changelog
* Remove schema version from default_option_permissions
* CYS: fix drag to resize bar
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add some robots.txt rules
WooCommerce creates some subdirectories within the
WordPress uploads directory. This adds some rules
to the robots.txt file generated by WordPress that
tells bots not to index these subdirectories.
---------
Co-authored-by: Néstor Soriano <konamiman@konamiman.com>
* Prevent individual filters from being able to drag outside of parent wrapper
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
---------
Co-authored-by: github-actions <github-actions@github.com>
Fixes#26875
* Add aria label to edit/delete shipping buttons
* Add aria label to edit/delete product item buttons
* Make edit/delete order items accessible via keyboard
* Add changelog file ralated to the fix of #26875 issue
* Init tiptip when adding shipping
* Remove unnecessary white space
* Add tooltips to buttons on the fee line
* Replace em unit with px
* Fix a bug where woocommerce removes the current-menu-item class from a menu item (e.g. taxonomy) because its id matches with page_for_posts option
* Add changefile(s) from automation for the following project(s): woocommerce
* Add changefile(s) from automation for the following project(s): woocommerce
* Apply suggestions from code review
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
* Update edit address button style
* Add input prop to the ValidatedTextInputHandle type
* Add optional isEditing prop to the AddressFormProps
* Convert edit address link to button
* Focus first input after opening the address form
* Pass along the editing prop to children components in the shipping address block
* Add changelog file
* Clear timeout used to delay the focus on the first input
* Adjust checkout toggler buttons for dark themes
* Get first address field by id
* CYS: Fix E2E tests on WordPress 6.6
* try now
* fix test
* try now
* fix tests
* run e2e tes against WordPress 6.5
* Add changefile(s) from automation for the following project(s): woocommerce
* restore changes
* fix test
* run against WordPress 6.6
* restore changes
---------
Co-authored-by: github-actions <github-actions@github.com>
* Make the patterns content translatable
* Add changefile(s) from automation for the following project(s): woocommerce
* Remove json parsing
* Move dictionary to a class
* Fix lint errors
---------
Co-authored-by: github-actions <github-actions@github.com>
* Bring back Product Filters pattern
* Add changelog
* Fix lint
* Move docblock to the top
---------
Co-authored-by: Vladimir Reznichenko <kalessil@gmail.com>
* CYS: Track move up/move down pattern
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: fix arrow welcome tour
* Add changefile(s) from automation for the following project(s): woocommerce
* use hex color
* format file
---------
Co-authored-by: github-actions <github-actions@github.com>
* Prepare for WP 6.6 by updated tested / required versions.
* Add changefile(s) from automation for the following project(s): woocommerce
* Prepare for WP 6.6 by updated tested / required versions.
---------
Co-authored-by: github-actions <github-actions@github.com>
* Fix regression of #48180
* Add changefile(s) from automation for the following project(s): woocommerce-blocks
* Fix one more bug in the dropdown styling (#49585)
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Sam Seay <samueljseay@gmail.com>
* Add reminder comment about the stability of the woo pattern domain
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add tool to force the coming soon landing pages to display on the front-end
* Add changelog
* Revert line change
* Add doc comments and remove unnecessary check
* Invalidate caches
* Fix tools invalid json errors
* Set default value
* Call wc_beta_tester_override_coming_soon_options out of init
* Hide username checkbox if using block checkout
* Hide correct field and fix render if first field is hidden
* Changelog
* Use array filter to prevent empty array item lingering
* Add tracking for patterns
* Fix type
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint error
* Add missing import
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: not enable PTK features on WordPress 6.5
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Improve order patterns
* Add changefile(s) from automation for the following project(s): woocommerce
* fix order
* improve documentation
---------
Co-authored-by: github-actions <github-actions@github.com>
* CYS: Enable PTK feature flag
* Add changefile(s) from automation for the following project(s): woocommerce
* Add changefile(s) from automation for the following project(s): woocommerce
* enable CYS on dev env
* skip homepage test
---------
Co-authored-by: github-actions <github-actions@github.com>
* Disable the Full Composability for CYS AI flows
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Remove the block hooks feature gate by getting and setting a the wc_hooked_blocks_version option and assigning versions to each hooked block
* Update apply_filters comment
* Add action for users switching themes that don't have an option set
* Update condition for current_theme_supports usage
* Update comment
* Unit tests
* Change unit test file name
* Update hooks for option update
* Changelog
* Add database tests for wc_hooked_blocks_version actions
* Update option name from wc_hooked_blocks_version to woocommerce_hooked_blocks_version
* Update option name in function comments
* Fix linting
* Update comment typo
* Add strict types to new files
* Update tests
* Move unit tests for block hooks
* Set option to "no" for sites that dont have an approved block theme
* Return early if WC option already exists
* Reorder conditions for performance reasons
* Change incorrect to lower
* Fix typo
* Remove unncessary false check and add additional unit tests
* Update comment
* Put product filters overlay template part behind feature flag
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add validation message and fix rendering when account is required
* Adjust validation so we can change the label in messages with custom callback
* Add and style password meter
* Add validation feedback and zxcvbn support
* changelog
* Accessibility fixes
* Update lock file
* Fix initial state in safari
* Announce strength as you type
* Use React.ReactElement
* update lock file
* Update lock
* Downgrade local pnpm and recreate lock
* Feedback should only be shown when `showError` is true, not `hasError`
* Feedback should default to null
* Add margin to the reminder bar close button
* Add changelog
* Add left and right padding to the reminder bar instead of margin-right to close button
---------
Co-authored-by: Cvetan Cvetanov <cvetan.cvetanov@automattic.com>
* CYS: fix filename
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add site title to account checkbox
* Add customer_password support to Store API
* Hide password nag if defining own password
* Add woocommerce_registration_generate_password option to block assets
* Change login prompt to just "log in"
* Add default styling to password inputs
* Reset line height for checkbox inputs
* Add customer password to store
* Add password field to contact information block
* Handle customer password in checkout processor
* Styling for new elements
* Update tests so they match new create account label
* Update log in link in tests
* Add e2e tests for password field
* Add validation message and fix rendering when account is required
* Changelog
* Add missing api to tests
* Remove console log
* rerender checkout
* Update log in link in test
* Adjust validation so we can change the label in messages with custom callback
* Use queryByText in test
* Make sure password generation is on in tests
* Create password if provided password is empty
* Skip "Place order" button translation test
* Revert "Skip "Place order" button translation test"
This reverts commit 7aed6137e88cdb3577f74f6f0c05258b531ed534.
* Update plugins/woocommerce-blocks/assets/js/blocks/checkout/inner-blocks/checkout-contact-information-block/block.tsx
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Update plugins/woocommerce-blocks/assets/js/data/checkout/reducers.ts
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Comment empty condition
* Update CSS classnames
* Return null in CreateAccountUI if nothing to display
* Linting: Return return param
* Document $password param
---------
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
* Better docs and minor refactoring for the EvaluationLogger
* Add support for logger args to EvaluateSuggestion methods
* Provide evaluation logger args to EvaluateSuggestion methods
* Improve docs and use short array syntax
* Log when spec rule is not an object
* Sanitize logger arguments for sanity
* Don't use short array syntax because of linter
* Lint fixes
* Add changelog
* docs: Spacing and alignment
* refact: Sanitize only the suggestion tile
* Add filter for rule evaluator logging enabled
* test: Add tests for suggestion evaluation logging
* test: Replace deprecated withConsecutive
* Simplify logic
* test: Cleanup
* test: Add rule logging tests for shipping partnerships
* Lint fixes
* Lint fixes
* Update the customer icon for the line style
* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce
* Import Circle and Path and fix attribute case
---------
Co-authored-by: github-actions <github-actions@github.com>
* Fixed overflow when formatting price for Store API responses
* Added explanation comment.
* Added changelog.
* Linting.
* Ensure wc_format_decimal doesn't return decimal points and trims .00
* Update comment.
* Removed unnecessary rounding modes.
* Updated comment.
* Updated comment.
* Updated comment.
* Updated Unit Tests.
* Lint.
* Fix tests.
* Re-add rounding modes.
* Prevented a fatal if an array is supplied to the method. This was the old behaviour, although it will produce erroneous prices, but before we let this throw a fatal we need to warn devs and track usage.
* Added doing_it_wrong() for unexpected types for $value arg.
* Early return, removed translation, renamed unit test method.
* Added expect notice to unit test.
* Add further tests to rounding modes.
* Renamed $mock_formatter. This is not a mock.
* Fixed tests and added provider for types.
* Linting.
* Check if parent product exists in LookupDataStore::create_data_for_variation
If it doesn't exist it will thrown an exception, which will be
catched by the caller an a proper log entry will be written.
Previously a fatal error would be thrown.
* Add changelog file
Fixes#33730
* Fix flaky waiting for response in logo picker e2e test
* Add changelog
* Remove wait for response header
* Wait for success message
* Relogic logo picker e2e test
* Docs: Updates to the Logging doc
This tweaks the wording in a few places and adds
a new suggestion under the "Customizing" header
about changing the directory where log files are
stored.
* Update docs manifest
* Export pre-formatted SITE_CURRENCY object from settings
* Fallback to SITE_CURRENCY
* Changelog
* Fix typedef
* Update mocks
* Inject site currency into cart preview data
* Update test
* Add currency formatting to preview data
* Mock currency in tests
* More currency mocking
* Update the full composability layout to match designs
* Add changefile(s) from automation for the following project(s): woocommerce
* Fix lint errors
* Remove unnecessary important
* Update colors
* Fix empty logo color
---------
Co-authored-by: github-actions <github-actions@github.com>
* Improve the conditions to check if the customize store task should be marked as completed
Before we were relying in a json string to check if the global styles were the default,
but that string had a hardcoded version. Since the version has changed this was failing.
We are now checking that the global style json only has two keys: version and
isGlobalStylesUserThemeJSON, regardless of their values.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* Add support for WPCOM site
* Add support for WPCOM site
* Change the default Pressable site
* Change the default Pressable site
* Add .env.enc for WPCOM site
* Add .env.enc for WPCOM site #2
* Add changefile(s) from automation for the following project(s): woocommerce
* Update changelog
* Add changefile(s) from automation for the following project(s): woocommerce
* Update changelog
---------
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Adrian Moldovan <3854374+adimoldovan@users.noreply.github.com>
* PluginUtil: Add method to get active valid plugins
When getting a list of active plugins directly from the options table,
you can run into an error if you try to then access one of the plugin
files if it doesn't actually exist. WP Core has a method that verifies
that the files exist before returning the list. But it's marked as a
"private" method, which means it could change and break backcompat.
That seems very unlikely, though, so we're using the method (it was
already in use actually), but putting in some safeguards so we can
detect if a backcompat issue arises.
Fixes#48132
* Modify to accommodate multisite
* woocommerce_removed_coupon event should recalculate totals automatically
* Remove early calculation from cart routes
* get_cart_for_response ensures late calculation if needed
* Remove calculation when removing coupons
* Calc totals already does shipping
* Remove calc on checkout route
* Update cart controller to load session if needed and introduce new helper methods
* Changelog
* Improve mu-compatibility of `WC_Customer_Data_Store::get_last_order()`.
* Use the blog prefix as a suffix rather than a prefix (readability).
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
* Extract site-specific user meta handlers into their own set of reusable methods.
* Make the customer data store's get_order_count and get_total_spent methods network-aware.
* Support deletion of site-specific user meta.
* Update cache invalidation (make multisite-aware) for money spent, order count, and last order.
* Further fixes for mu-aware order and spend caching.
* Add migration to remove unneeded/unused user meta data.
* Revert change to handling of `paying_customer` user meta (out-of-scope for this fix).
* Be stricter when obtaining current blog prefix.
* Add missing `@since` tag to historic filter hook.
Archaeology: https://github.com/woocommerce/woocommerce/compare/4.9.0...4.9.1#diff-8dcda80485fb4b7bc3cb9544ecf4b73aa78dc448bc574b1e56271ee8b56e7189R330
* Ensure the 'last order ID' references an order that actually belongs to the current customer.
* Fix docblock.
* Add additional test to describe safeguards around fetching a customer order.
* Unset `$last_order_id` if the order is not of type `WC_Order`
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
* Merge 9.1.0 update functions list.
* Logging best practices (do not translate).
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
* Logging best practices (do not translate).
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
---------
Co-authored-by: barryhughes <3594411+barryhughes@users.noreply.github.com>
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
* Wrap order note saving with wc_sanitize_textarea
* Add changelog
* Change note output to wp_kses with no allowed HTML
* Add totalsMock for order confirmation test
* Add Totals test
* Add classic checkout test to ensure notes are cleaned
* Change wp_kses_post to wp_kses for all order note usage
* wp_kses the order note before editing too
---------
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
The old code was retrieving all the existing download entries from
the database and then counting them locally. Now a SQL COUNT query
is used instead.
---------
Co-authored-by: Naman Malhotra <naman03malhotra@gmail.com>
* Fix typo (index.tsx)
"Congratuations" -> "Congratulations"
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: Paul Sealock <psealock@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
* Update wc_update_product_lookup_tables_column function
* Rename error message
* Create 'form-flex-box' class and increase icon size
* Persist global_unique_id for main product and variations
* Add global unique id field to main product
* Add global unique id field to variations
* Add changelog
* Update error message
* Add `rel="noreferrer"` to external link
This is a precautionary security measure to to prevent the new page
from accessing the original page’s `window` object.
See pb22l9-304-p2 (internal link) for additional context.
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>
* move checkout docs with front matter to main folder
* add manifest
* add core changelog
* Remove emojis, unsupported links and table of contents
* pr comments
* update folder name and remove toc
* title fix
---------
Co-authored-by: Jacklyn Biggin <hi@jacklyn.dev>
* Fix order_count consistency between stats and reports
* Add changefile(s) from automation for the following project(s): woocommerce
---------
Co-authored-by: github-actions <github-actions@github.com>