Commit Graph

20672 Commits

Author SHA1 Message Date
Yan Sern caf1ee325b
Entrepreneur Signup: Hide site title when entering from Entrepreneur signup flow. (#47581)
* Hide site title when entering from entrepreneur signup.

* Add changelog.
2024-05-20 13:04:13 +02:00
Yan Sern ce42e92a80
Entrepreneur Signup: Hide progress bar when entering Design With AI from Entrepreneur signup flow. (#47574)
* Hide progess bar when entering Design With AI from entrepreneur signup flow.

* Add changelog.
2024-05-20 13:04:06 +02:00
Ilyas Foo 815d23bf09
Add `Cardo` and `Inter` fonts to global styles via theme json filter (#47417)
* Add global style font filter to add Cardo and Inter fonts when not available

* Changelog
2024-05-20 16:44:35 +08:00
Corey McKrill ad6eea6e00
Add an array_sum utility method to enhance PHP 8.3+ compatibility (#47595)
* Add validation for array_sum in Orders v1 controller

* Add an array_sum method to NumberUtil

* Update orders controller to use NumberUtil's array_sum

* Add NumberUtil array_sum to order item classes
2024-05-20 10:10:19 +02:00
Jonathan Lane 4d7a691953
Fix two flaky e2e tests (#47562)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-20 10:50:34 +03:00
Manzur Ahammed 7312f137d4
Display a notice for expired/expiring subscriptions along with a plugin update message. (#47076)
* add subscription expiry message on plugin list

* Update changelog

* fix lint

* refactor code

* update product price meta

* add tracks event for enable autorenew and renew subscription notices in plugin lists

* fix lint error

* check product price is set or not

* check product price is set or not

* added translator comment

* fix typo

---------

Co-authored-by: prahesa.setia <prahesa.kusuma.setia@automattic.com>
2024-05-20 03:06:03 +00:00
Sam Seay 8538ca3498
Make sure JS tests run in blocks when configs change (#47513) 2024-05-19 18:57:55 +12:00
Karol Manijak 96d951930c
Sync package.json and pnpm-lock.yaml (#47575)
* Add changes added automatically by install/postinstall

* Add changelog
2024-05-17 15:44:58 +02:00
Thilina Pituwala 52fef2c0c5
Remove old in-app marketplace pages and redirect to new in-app section (#47276)
* Remove the view file rendering old market-place page.

* Remove the function for rendering old market-place pages and introduce redirects to new in-app market-place.

* Remove unused code related to legacy market-place.

* Add exit after redirect.

* Add changefile(s) from automation for the following project(s): woocommerce

* Redirect to search result page when a search term exists.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-17 20:19:11 +07:00
Dan Q edc22bca24
Add "Shared with you" badge to Extensions > My Subscriptions list as applicable (#46229)
* Add 'shared with you' badge

* Improve spacing where multiple badges span multiple lines

* Decrease font size of badges per new designs

* Include 'Manage on Woo.com' only for non-shared subscriptions

* Made TypeScript happier

* Add 'shared with you' badge

* Improve spacing where multiple badges span multiple lines

* Decrease font size of badges per new designs

* Include 'Manage on Woo.com' only for non-shared subscriptions

* Made TypeScript happier

* Add changefile(s) from automation for the following project(s): woocommerce

* Addressing linter errors.

* Allow unusually-long email addresses of sharers to wrap

* Switch wordWrap for overflowWrap

Modern browesers interpret the former as an alias of the latter, including allowing the use of 'anywhere'. But the current version of https://www.npmjs.com/package/csstype only recognises 'anywhere' as valid for overflowWrap. Switching it prevents compilation errors, still exhibits the correct behavior.

* Prettier linting

* Update plugins/woocommerce/changelog/46229-add-wccom19063-in-app-shared-by-badge

Co-authored-by: And Finally <andfinally@users.noreply.github.com>

* Add changefile(s) from automation for the following project(s): woocommerce

* Use pointer as cursor for status popovers

* Don't focus-within the status badge popover on load (prevents ugly link focus issue)

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: And Finally <andfinally@users.noreply.github.com>
2024-05-17 13:22:50 +01:00
Seghir Nadir 1ae7ca5179
Make checkout sidebar (order summary) sticky on desktop (#47376)
* Make sidebar sticky on desktop

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* limit sidebar sticky to cart only

* add useless new line

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-17 13:13:01 +02:00
Karol Manijak 40b43e8d9c
Prevent collection different than Product Catalog from being filtered (#45820)
* Prevent collection different than Produyct Catalog from being filtered

* Adjust Product Filters tests

* Split taxonomies filter into seperate filter per taxonomy

* Add changelog

* Improve onDeselect function

* Update Product Filter test handlebars so they all use Product Collection that inherits query from template

* Set Product Collection to inherit query from template in PHP unit tests

* Remove unnecessary empty space

* Add changelog

* Update tests

* Fix lint

* Update Product Collection attributes in filter E2E handlebars

* Update the Product Filters testing pages title

* Satisfy TS by returning single React element rather than array of elements

* Revert some incorrect changes

* Cleanup after accidental incorrect merge

* Add template utils to dynamic contents util

* Fix Attribute Filter tests

* Cleanup Attribute tests, refactor and fix types

* Add product filter on top of attirbute filter in handlebars

* Fix lint

* Update Rating filter tests to use Product Archive template instead of post

* Update Rating Filter handlebars

* Update Stock filter tests to use Product Archive template instead of post

* Update Stock Filter handlebars

* Add more granular util to update Produyct Catalog based on handlebar template

* Use Product Catalog util and simplify test scenarios

* Unify handlebar templates

* Fix Product Collection attributes in Product Filter handlebar templates

* Revert temporary timeouts increase

* Remove unused types

* Cleanup types

* Cleanup types

* Lint fix

* Rename updateTemplatesContent to updateTemplateContents to better depict its purpose

* Fix types

* Rename updateProductCatalogContent to updateProductCatalogTemplate to better depict its purpose

* Allow for beforeAll and afterAll in PW tests

* Use beforeAll and afterAll instead of using fixture in active filters test

* Use beforeAll and afterAll instead of using fixture in attribute filters test

* Use beforeAll and afterAll instead of using fixture in price filters test

* Use beforeAll and afterAll instead of using fixture in rating filters test

* Use beforeAll and afterAll instead of using fixture in stock status filters test

* Get rid of updateProductCatalogTemplate util as it's too specific

* Extract some constants

* Remove unused file probably added here by accident

* Adjust Attribute Filter block tests to the new logic

* Merge fix

* Bring back necessary handlebars file

* Merge fix

* Merge fix

* Update beforeAll

* Avoid relying on product collection page object in before all

* Bring back the original order of tests

* Switch Filter by Attribute tests to handlebars

* Fix typo

* Update test to new circumstances

* Fix hooks usage
We no longer use hooks other than `beforeEach` since we're resetting the DB for each test (#46125). Using other hooks was not caught by the linter (on this PR) because I accidentally removed the no-hooks rule in #47228 and restored it just now in #47500. 😅

* Fix the test

* Fix Price filter test

* Update attribute filter tests

* Share the handlebars between tests

* Update price filter tests

* Update rating filter tests

* Update stock filter tests

* Remove unnecessary product collection page object from filter tests

* Fix typo

* Fix Filter by Stock test

* Simplify Attribute filter test by remoiving one filter from page

* Try to wait for element to be visible

* Fix handlebars syntax for filters so it doesnt throw validation errors and warnings

* Wait for filters to be visible for sure before performing further part of test

* Wait for Site Editor canvas loader

* Fix linter error

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
2024-05-17 11:23:56 +02:00
Alba Rincón 5427aa5de8
Replace the default image of the Testimonial single pattern (#47535)
* Replace the default image of the Testimonial single pattern

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-17 11:00:51 +02:00
Vedanshu Jain e19110c564
Fix: Deleting a shop coupon using API returns a 500 error (#47474)
* Fix: Deleting a shop coupon via the API returns a 500 error

* Add unit test for coupon delete.

* Add changelog.

* PHPCS fix.

---------

Co-authored-by: 79mplus Admin <36501099+79mplus-admin@users.noreply.github.com>
2024-05-17 11:25:01 +05:30
Moon 15d146fa84
Fix lint errors with remote spec validator endpoint (#47520)
* Fix lint errors

* Add changefile(s) from automation for the following project(s): woocommerce-beta-tester

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 15:25:59 -07:00
Ron Rennick db50513c42
use valid repository url in blocks package (#46696)
* use valid repository url in blocks package

* add changelog file

---------

Co-authored-by: Ron Rennick <ronald.rennick@automattic.com>
2024-05-16 13:32:41 -07:00
Alexandre Lara 0a5ab942bd
[Experimental] Product Filters Redesign > Clear Button: Fix CSS Not Found error (#47481)
* Fix CSS error on Product Filter Clear Button

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Fix css lint error

* Remove unnecessary css file from Product Filter Clear Button block

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 15:59:06 -03:00
Jonathan Lane ad19ff51a3
Add Buildkite reporting for e2e PR and daily runs (#47558)
* Add Buildkite reporting for e2e PR runs

* Set up Buildkite reporting on daily runs

---------

Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-16 15:31:21 -03:00
Seghir Nadir edb930e04b
Fix a11y issues in Cart/Checkout (#47470)
* return focus on drawer

* adjust notice button color

* adjust cart/checkout input label color

* return focus for shipping form button

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 18:32:22 +02:00
Matt Sherman d6288e2b2e
REST API: Add variation product type to response (#47377)
* Add type to response

* Add type to schema

* Changelog

* Update property count in schema test
2024-05-16 11:13:07 -04:00
Seghir Nadir 4f348eb540
remove the generic incompatible notice from Checkout block. (#47475)
* remove the generic incompatible notice

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 16:52:06 +02:00
Seghir Nadir 9b1e9344e0
Turn Cart change address link to button (#47460)
* Turn Change address link to button

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* fix lint

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 16:51:03 +02:00
Bart Kalisz 90ee3f4ed9
Blocks E2E: Remove obsolete waitForSiteEditorFinishLoading util (#47547) 2024-05-16 16:39:30 +02:00
github-actions[bot] 7e01f4d39c
Delete changelog files based on PR 47514 (#47550)
Delete changelog files for 47514

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-16 16:25:37 +02:00
Seghir Nadir a13013e9a5
Skip serialization for customer meta and be more defensive around loading it. (#47514)
* skip data serialization for customer meta

* keep casting as is

* skip old comment

* Add changefile(s) from automation for the following project(s): woocommerce

* actually leave the comment, it still make sense

* reduce code needed

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 15:24:36 +02:00
Bart Kalisz a7bbdb99a2
Blocks E2E: Wait for Site Editor canvas loader (#47541) 2024-05-16 14:49:32 +02:00
github-actions[bot] 8bf9e966d4
Delete changelog files based on PR 47507 (#47543)
Delete changelog files for 47507

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-16 13:23:44 +02:00
Sam Seay fcc421d550
Update cart/checkout usage of the @wordpress/components Slot Fill (#47105) 2024-05-16 21:46:24 +12:00
Michal Iwanow 5cd46f48ad
Fetch Marketplace promotions - ensure callback is always registered for `woocommerce_marketplace_fetch_promotions` action (#47262)
* Marketplace promotions - ensure action is always there

We started getting errors 'Scheduled action for woocommerce_marketplace_fetch_promotions will not be executed as no callbacks are registered.' on some environments.

In this commit we ensure that WC_Admin_Marketplace_Promotions::fetch_marketplace_promotions() is always added as a calback to our action hook.

* Marketplace promotions - switch from Action Scheduler to transients

We're switching fetching marketplace promotions from using Action Scheduler
every 12 hours, to a 1 day transient. This makes it easier to ensure that
the requests are triggered only for admins, and that they don't impact frontend
users of the stores.

* Changelog

* Clear action from Action Scheduler

Action woocommerce_marketplace_fetch_promotions is no longer used, so we're clearing it when it's triggered.
Since we cannot self-clear the action, we're triggering a new single action when woocommerce_marketplace_fetch_promotions is run.
This new action's sole responsibility is to clear the original action.
2024-05-16 09:56:59 +02:00
Manish Menaria a7a1264fec
Fix input clearing issue in PriceTextField with improved currency parsing (#47354)
* Fix input clearing issue in PriceTextField with improved currency parsing

This commit addresses a usability issue in the PriceTextField component, highlighted by @dinhtungdu, where the input field would clear itself if users omitted a space between the numeric value and the currency symbol when the currency is configured to appear on the right with a space (e.g., "20$" instead of "20 $"). The problem was rooted in the strict parsing logic that did not account for variations in user input related to currency formatting.

The fix involves an enhancement to the numeric parsing function, which now effectively handles various user inputs regardless of space or placement of the currency symbol. The revised parsing logic uses a regular expression to strip out any characters that are not numeric or the designated decimal separator, and then replaces the locale-specific decimal separator with a period for standard numeric conversion. This approach not only fixes the specific issue but also improves the robustness of the component against similar input variations.

* Refactor currency parsing and improve handling in PriceTextField

1. Renaming `formatValueAsCurrency` to `formatNumberAsCurrency` to better
   reflect its functionality.
2. Moving the `convertCurrencyStringToNumber` function outside of the
   PriceTextField component, enhancing readability and reusability.
3. Changing the internal state handling from `newValue` to `inputValue`,
   directly managing the string input and parsing it as needed for further
   processing. This will force input field to re-render.

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Fix: Handle empty string in price conversion to prevent 0 value

This commit fixes an issue where an empty string in the price conversion function resulted in a value of 0. Now, empty strings are properly handled and do not convert to a numerical value.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-16 13:23:47 +05:30
Prahesa Kusuma Setia b669fc8526
Prevent calling wccom when the payload is empty for update check (#47507)
* prevent calling wccom when the payload is empty for update check public and non-public

* add changelog
2024-05-16 13:21:34 +07:00
Manish Menaria 1233fb4745
Fix: handle undefined templateSlug in Product Collection tracking utils (#47504)
* fix: handle undefined templateSlug in Product Collection tracking utils

The modification introduces a check for templateSlug before attempting to access its properties or use it in further logic. This change addresses a bug that manifested when users tried to edit a synchronized Product Collection block, resulting in a JavaScript error because templateSlug could be undefined.

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Update types to better reflect reality

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Karol Manijak <20098064+kmanijak@users.noreply.github.com>
2024-05-16 11:17:52 +05:30
Chi-Hsuan Huang a120b99d7d
Fix coming soon page mobile UI issues (#47491)
* Update styles for WooCommerce coming soon page

- Add min-width to container for better responsiveness
- Adjust padding for smaller screens
- Update font size and text wrapping for banner

* Add changelog

* Improve readability
2024-05-16 12:46:26 +08:00
Chi-Hsuan Huang 9e32aafd38
Disable auto zoom when focusing on input for core profiler (#47400)
* chore: Add viewport meta tag for setup wizard

* Add changelog
2024-05-16 10:45:26 +08:00
Alexandre Lara 7abb996017
[Experimental] Product Filters Redesign: Add the Product Filters block (#47294)
* Add Product Filters block

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Add the blocks template for the Product Filters block

* Dynamically add the highest product count attribute to the block template

* wip: Add E2E tests for the Product Filters block

* Add E2E tests for the Product Filters block

* Add CSS file to Product Filters block

* Fix css error lint

* Fix lint error

* Fix lint errors

* Remove unnecessary styles for the Product Filters block

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 18:09:48 -03:00
Fernando Marichal 8dd87820cf
Disable pre-publish panel (#47430)
* Disable pre-publish panel

* Add changelogs

* Fix e2e tests
2024-05-15 15:52:42 -03:00
Fernando Marichal aa6137128d
Move pricing features to General tab (#47435)
* Move pricing section

* Fix e2e tests

* Fix create-variable-product tests

* Add changelog

* Add changelog in WC
2024-05-15 14:53:27 -03:00
Moon bcd80f4c95
Bump beta tester to 2.3.1 to prep a new release (#47427)
* Bump version to 2.3.1 and add changelog

* Add changefile(s) from automation for the following project(s): woocommerce-beta-tester

* Update readme.txt and clean up old changelog files

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 10:21:54 -07:00
Luigi Teschio 8c6efe072b
Blocks: Fix JS unit tests (#47516)
* Blocks: Fix JS unit tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* trigger CI

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 16:03:11 +00:00
Herman e65481aa27
Marketplace business services: Feature branch (#47303)
* Support for Business Services in in-app marketplace ()

Contains the changes from:

#46530
#46725
#47048
#47135
#47183
#47227
#47352
#47452

* Update plugins/woocommerce-admin/client/marketplace/README.md

Fix documentation punctuation

---------

Co-authored-by: Raja Sekar Manimaran <raja.sekar.manimaran@automattic.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Michal Iwanow <4765119+mcliwanow@users.noreply.github.com>
Co-authored-by: Dan Q <dan@danq.me>
2024-05-15 14:43:06 +02:00
Luigi Teschio 1af8e8a4d4
Blocks: Delete Jest-Puppeteer infrastructure (#46672)
* try db reset in page teardown

* move reset to setup step

* Use wp db cli

* Fix global setup
That part is overriding the logged in user state and wipes out the nonce and rootUrl fields.

* Try importing instead from a generated dump

* Revert "Try importing instead from a generated dump"

This reverts commit 987dc471c9.

* Revert "Revert "Try importing instead from a generated dump""

This reverts commit c8d008cb20.

* Don't bypass visitSiteEditor so that the Welcome Guide is closed

* use createNewPost

* Revert "Revert "Revert "Try importing instead from a generated dump"""

This reverts commit 2684273582.

* [Blocks]: Fix E2E tests (#46344)

* Load local pickup enabled setting as bool not string

* Add changelog

* Remove unused import

* Update plugins/woocommerce-blocks/assets/js/extensions/shipping-methods/pickup-location/utils.ts

Co-authored-by: Niels Lange <info@nielslange.de>

* Use strict equality test

* try now

* try now

* add a new sql file

* remove default.sql

* fix welcome guide tour

* fix E2E tests

* Fix the template revert tests
...where the template is unreachable due to pagination.

* Add changelog entry

* improve logic to closeWelcomeGuideModal

* fix cart checkout tests

* improve flakiness

* improve flakiness

* fix flaky test

* fix company field

* fix E2E test

* fix E2E tests

---------

Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>

* Replace beforeAll w/ beforeEach + remove all after* hooks

* Fix broken hooks

* Activate plugins via requestUtils API

* [Blocks - E2E]: Add `playwright/no-hooks` ESlint rule (#46432)

add ESLint configuration

* Clean up console logs

* Remove obsolete language setup steps

* Remove more unnecessary setup steps

* Remove even more obsolete setup steps

* tmp: add the LYS fix

* Try stabilizing the company field test

* Use canvas param instead of manually entering edit mode

* Remove double site editor redirect

* Revert "Use canvas param instead of manually entering edit mode"

This reverts commit 5e6cc17154.

* Revert "Remove double site editor redirect"

This reverts commit 69a57a82a8.

* Fix flaky products sorting test

* Blocks: Fix ESLint errors (#46595)

fix eslint error

* Fix ESLint errors (#46626)

* Fix ESLint errors

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>

* Blocks: Migrate multiple tests to Playwright

* fix path

* migrate other tests

* add product best sellers E2E tests

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* migrate jest-puppetter E2E tests to Playwright

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* Blocks: Delete Jest-Puppeteer infrastructure

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Remove obsolete waitForLoadState call

* improve E2E tests

* fix E2E tests

* improve E2E tests

* remove old test

* remove not necessary test

* fix number product

* fix E2E test

* fix number of products

* fix product count

* refactor store notice E2E tests

* update string

* fix E2E test

---------

Co-authored-by: Bart Kalisz <bartlomiej.kalisz@gmail.com>
Co-authored-by: Thomas Roberts <thomas.roberts@automattic.com>
Co-authored-by: Thomas Roberts <5656702+opr@users.noreply.github.com>
Co-authored-by: Niels Lange <info@nielslange.de>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 14:22:36 +02:00
Bart Kalisz e765a717d2
Blocks E2E: Restore the no-hooks rule (#47500) 2024-05-15 13:05:52 +02:00
Sam Seay 3ef7a01840
Update blocks JS tests to React 18 (#47383) 2024-05-15 21:33:36 +12:00
Akeda Bagus 02c640480d
Free some in-memory usage when doing HPOS-related batch processing (#47159) 2024-05-15 09:19:56 +00:00
rodelgc 931bfed5c6
Update stable tag to 8.8.3 (#47496)
woorelease: Update stable tag to 8.8.3

Co-authored-by: rodel <rodel@rodels-MacBook-Pro.local>
2024-05-15 16:16:53 +08:00
Manish Menaria 9f5f93cba6
Product Collection: Implement Preview Mode (#46369)
* POC: Preview Mode using HOC

* Add explanation as comments

POC: Implement preview mode for Product Collection block in editor
- Added extensive commentary to clarify the mechanism and usage of the `handlePreviewState` function
- Implemented an internal state within `ProductCollectionContent` to manage preview status and messages, serving as a foundational example of how preview mode can enrich block functionality.
- Showcased the application of `handlePreviewState` by incorporating it as a prop in `BlockEdit`, illustrating the potential for extending the block's capabilities for dynamic and interactive previews.

This POC demonstrates a flexible approach to managing preview states within the editor, paving the way for further development and integration based on feedback and use-case analysis.

* Refactor preview state handling and collection registration

This commit introduces a centralized approach for registering product collection variations and managing their preview states. It abstracts the registration logic into a dedicated function and enhances the flexibility of preview state handling across different collection types.

* Rename file

* Minor improvements

* Don't pass previewState to handlePreviewState

I don't see any good use of it in handlePreviewState. Also, We will be going to call handlePreviewState only once
therefore, it will always have the same value as the initial value of the previewState. If in future, we decide to run it
multiple times then we can pass the previewState as an argument to handlePreviewState.

* Add comment

* Use JS closure to inject handlePreviewState

This commit introduces a refined approach for injecting the `handlePreviewState` function into product collection blocks, utilizing JavaScript closures to streamline the process. This method replaces the previous global registry mechanism, offering a more direct and efficient way to manage preview states.

Advantages of This Approach:
- Utilizing JavaScript closures for injecting `handlePreviewState` simplifies the overall architecture by directly modifying block edit components without relying on an external registry. This method enhances code clarity and reduces the cognitive load for developers.
- The conditional application of `withHandlePreviewState` ensures that the preview state handling logic is only added to blocks that require it, optimizing performance and maintainability.

* Refactor preview state management into custom hook

This commit enhances the organization and readability of the product collection content component by abstracting the preview state management into a custom hook named `usePreviewState`. This change streamlines the component's structure and aligns with React best practices for managing state and side effects.

Key Changes:
- Introduced `usePreviewState`, a custom hook responsible for initializing and managing the preview state (`isPreview` and `previewMessage`) of the product collection block. This hook encapsulates the state logic and its side effects, including the conditional invocation of `handlePreviewState`.
- Modified `ProductCollectionContent` to utilize `usePreviewState` for handling its preview state. This adjustment makes the component cleaner and focuses it more on presentation and behavior rather than state management details.

* Replace useEffect with useLayoutEffect

* Add cleanup function in handlePreviewState function

Based on [this discussion](https://github.com/woocommerce/woocommerce/pull/45703#discussion_r1535323883), I added a cleanup function support for handlePreviewState. `handlePreviewState` can return a function which will be called on cleanup in `useLayoutEffect` hook.

* Fetching random products in Preview mode

* Allow collection to set initial preview state

* Pass location & all attributes to handlePreviewState function

* Handling collection specific query for preview mode

- Consolidated `handlePreviewState` and `initialPreviewState` into a single `preview` prop in `register-product-collection.tsx` and `product-collection-content.tsx` to streamline prop passing and improve the component interface.
- Updated the `queryContextIncludes` in `constants.ts` to include 'previewState'
- Enhanced the `ProductCollection` PHP class to handle preview-specific queries more effectively, introducing a new method `get_preview_query_args` that adjusts query parameters based on the collection being previewed, thereby improving the relevance and accuracy of products displayed in preview mode.

* Always set initialPreviewState on load

* Refine preview state handling

- Renamed `HandlePreviewStateArgs` to `SetPreviewStateArgs` in `featured.tsx` to better reflect its purpose, which is now more focused on setting rather than handling states. The implementation details within `featured.tsx` have also been refined to include async operations and cleanup functions, demonstrating a more sophisticated approach to managing state.

Overall, these updates make the preview state logic more understandable and maintainable.

* Rename "initialState" to "initialPreviewState"

* Fix: Correct merging of newPreviewState into previewState attribute

This commit addresses an issue in the product-collection-content.tsx where the newPreviewState was not properly merged into the existing previewState attribute. Previously, the spread operator was incorrectly applied, leading to potential loss of existing state attributes. By changing the order of operations and correctly spreading the existing attributes before merging the newPreviewState, we ensure that all state attributes are preserved and updated correctly.

* Initial refactor POC code to productionize it

* Move `useSetPreviewState` to Utils

* Implement preview mode for Generic archive templates

Implemented a new useLayoutEffect in `utils.tsx` to dynamically set a preview message in the editor for product collection blocks located in generic archive templates (like Products by Category, Products by Tag, or Products by Attribute).

* Remove preview mode from Featured and On sale collection

* Remove preview query modfication for On Sale collection

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Fix: hide/show preview label based on value of "inherit"

If user change the toggle "Sync with current query", then it should reflect for the preview label as well.
- If the toggle is on, then the preview label should be shown.
- If the toggle is off, then the preview label should be hidden.

* Minor improvements

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Refactor: Simplify SetPreviewState type definition in types.ts

This commit refines the SetPreviewState type definition by eliminating the previously used intermediate interface, SetPreviewStateArgs. The change streamlines the type definition directly within the SetPreviewState type, enhancing readability and reducing redundancy.

* Update import syntax for ElementType in register-product-collection.tsx

This commit updates the import statement for `ElementType` from `@wordpress/element` to use the more modern and concise `import type` syntax. This change does not affect functionality but aligns with TypeScript best practices for importing types, ensuring that type imports are distinguished from regular imports. This helps in clarity and in optimizing the build process by explicitly indicating that `ElementType` is used solely for type checking and not included in the JavaScript runtime.

* Refactor: Update TypeScript usage in Product Collection

This commit introduces several TypeScript refinements across product-collection components:

1. **DEFAULT_ATTRIBUTES** in `constants.ts` now uses `Pick` to explicitly define its shape, ensuring only relevant attributes are included and typed accurately.
2. **ProductCollectionAdvancedInspectorControls** and **ToolbarControls** in the `edit` subdirectory now use `Omit` to exclude the 'preview' property from props, clarifying the intended prop usage and improving type safety.

These changes collectively tighten the type definitions and improve the codebase's adherence to best practices in TypeScript.

* Refactor: Update dependencies of useSetPreviewState hook in utils.tsx

This change enhances the stability and predictability of the hook's behavior, ensuring it updates its internal state accurately when its dependencies change, thus aligning with best practices in React development.

* Refactor preview button CSS and conditional rendering

1. **CSS Refactoring:** Moved the positioning styles of the `.wc-block-product-collection__preview-button` from inline styles in the JSX to the `editor.scss` file. This separation of concerns improves maintainability and readability, aligning the styling responsibilities solely within the CSS file.
2. **Conditional Rendering Logic:** Updated the rendering condition for the preview button. Now, it not only checks if `isPreview` is true but also if the block is currently selected (`props.isSelected`). This prevents the preview button from appearing when the block is not actively selected, reducing visual clutter and enhancing the user experience in the editor.

* Enhance: Update preview button visibility logic in ProductCollectionContent

This commit enhances the visibility logic of the preview button in the `ProductCollectionContent` component:

1. **Added `isSelectedOrInnerBlockSelected`:** Introduced a new `useSelect` hook to determine if the current block or any of its inner blocks are selected. This ensures that the preview button is visible when either the product collection block or any of its inner blocks are selected.
2. **Updated Conditional Rendering:** Adjusted the conditional rendering of the preview button to use the new `isSelectedOrInnerBlockSelected` value, providing a more intuitive user experience by ensuring the preview button remains visible when any relevant block is selected.

* use __private prefix with attribute name

* Add E2E tests for Preview Mode

1. **Template-Specific Tests:** Each template (tag, category, attribute) undergoes a test to ensure the preview button behaves as expected when replacing products with product collections in these contexts.
2. **Visibility Checks:** The tests verify that the preview button is visible when the block or its inner blocks are selected and hidden when the block is not selected. This helps confirm the correct implementation of the preview button visibility logic across different use cases.
3. **Interaction with Inner Blocks:** Additional checks are included to ensure the preview button's visibility toggles appropriately when interacting with inner blocks, reinforcing the dynamic nature of block selection and its effect on UI elements within the editor.

* Add setPreviewState to dependencies

* Add data-test-id to Preview button and update e2e locator

Modifications:
- Added `data-test-id="product-collection-preview-button"` to the Preview button in `product-collection-content.tsx`.
- Updated the corresponding e2e test locator in `product-collection.block_theme.side_effects.spec.ts` to use the new `data-test-id` instead of the class name.

By using `data-test-id`, we ensure that the e2e tests are not affected by changes in the styling or restructuring of the DOM that might alter CSS classes but do not affect functionality.

* Enhance: Localize preview message in useSetPreviewState hook

* Don't show shadow & outline on focus

* Make preview button font same as Admin

* Fix SCSS lint errors

* Add missing await keyword

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-15 13:18:43 +05:30
Michael Pretty e50c8426fb
fix PHP 8 warning in Blocks\Installer\create_pages() callback when oher filters have removed pages (#47094) 2024-05-15 08:45:37 +02:00
Chi-Hsuan Huang d5166dcfed
Fix undefined variable `$exlude_paths` (#47490)
* Fix typo in exclude_paths variable name

* Add changelog
2024-05-15 03:41:53 +00:00
Moon 042766c28c
Do not display smart app banner on the core profiler, LYS, and CYS pages (#47429)
* Do not display smart app banner on the core profiler pages

* Add changefile(s) from automation for the following project(s): woocommerce

* Ignore hook doc errors -- need to re-visit this later

* Document filters with basic info -- using 6.5.0 for since tag. That is the first release after WC Admin was merged to the core

* Update plugins/woocommerce/src/Internal/Admin/Loader.php

Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>

---------

Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Ilyas Foo <foo.ilyas@gmail.com>
2024-05-14 17:41:57 -07:00
Jonathan Lane 6e8a922943
Update stalebot workflow for flaky tests (#47484)
Co-authored-by: Jon Lane <jon.lane@automattic.com>
2024-05-14 16:02:18 -07:00
César Costa f5e45ef376
Update symbol and formatting of the XPF currency (#46960)
* Update XPF currency symbol to XPF

* Change XPF default locale formatting

* Change decimal separator of countries that use XPF to dot

* Add changelog entry

* Update changelog entry

* Fix XPF test data

* Fix some JS linting issues

* Revert "Fix some JS linting issues"

This reverts commit 51abcf4117.

* Fix some JS linting issues
2024-05-15 04:50:55 +07:00
Akeda Bagus b931117f7a
Fix dates dropdown in admin list order page (#47440)
* Fix dates dropdown in admin list order page

The query was missing a filter to order type.

Fixes #47406.

* Fix changelog header
2024-05-14 19:29:45 +00:00
Fernando Marichal 2575d455f7
Fix flaky Attributes and Variations E2E tests (#47471)
* Wait for attributes until request is complete

* Wait for response

* Add changelog
2024-05-14 13:59:34 -04:00
Álvaro Thomas 32d10eacf8
Update stable tag to 8.9.0 (#47482)
woorelease: Update stable tag to 8.9.0
2024-05-14 19:56:10 +02:00
Jorge A. Torres 089be925d9
Add some unit tests to cover changes in PR 46972 (#47098)
* Add unit tests for 's' search parameter in HPOS queries

* Add changelog

* Fix PHPCS issue
2024-05-14 20:34:17 +05:30
Sakri Koskimies 5a8dfac898
Add support for FI and SE postcode validation + Update tests (#45480)
* Add validation for FI, SE postcodes

* Add non-legacy WC_Validation_Test test class

* Add changefile

* Add validation for EE postcode

Co-authored-by: ragulka <illimar.tambek@gmail.com>

* Apply phpcs fixes.

---------

Co-authored-by: ragulka <illimar.tambek@gmail.com>
Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-05-14 20:09:55 +05:30
Luigi Teschio 603184182b
CYS: mutate the original instance of the block array (#47468)
* mutate the original instance of the block array

* Add changefile(s) from automation for the following project(s): woocommerce

* trigger CI

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-14 16:05:09 +02:00
Adrian Moldovan 7b96dfca67
[e2e tests] Remove BuildKite reporter (#47449)
* Remove BuildKite reporter

* Changelog

* Remove BuildKite reporter from api tests
2024-05-14 10:25:17 +01:00
Thomas Roberts 35f07934a4
Remove bold text from selected payment method in Checkout block (#47412) 2024-05-14 02:00:30 -07:00
Jorge A. Torres f241b4dd08
Add support to HPOS CLI tool for handling deleted orders (#46970)
* Add support for removed orders to cleanup tool

* Add changelog
2024-05-14 14:24:15 +05:30
Bart Kalisz 1e1e7dd65d
Blocks E2E: Align ESLint and TS configs with Gutenberg (#47228) 2024-05-14 10:23:17 +02:00
Karol Manijak bf2d622a66
Product Collection: telemetry for filter usage (#46545)
* Create trackInteraction function and pass it to query Insprector Controls

* Add tracking to Attribute filter

* Add tracking to Created filter

* Add tracking to Featured filter

* Add tracking to Handpicked Products filter

* Add tracking to Inherit Query filter

* Add tracking to Keyqord filter

* Add tracking to On Sale filter

* Add tracking to Order By option

* Add tracking to Stock Statusoption

* Add tracking to Price Range filter

* Add tracking to Taxonomies filter

* Fix lint errors

* Add changelog

* Rearrange the logic of recognising the tracks location so it's more reliable
2024-05-14 09:45:33 +02:00
Chi-Hsuan Huang d66c5b8efe
Add UTM tags to all product links in core profiler Free features step (#47397)
* Add UTM tags to all product links for core profiler default free extensions

* Add changelog

* Update mailpoet link
2024-05-14 10:32:51 +08:00
Paul Sealock 208e5633ba
[Launch Your Store] Add e2e tests (#47239)
* LYS spec

* get homescreen check working

* move over to shopper

* basic test

* get first test working

* Store only coming soon mode - logged out

* add logged in ttests

* linter

* Add changefile(s) from automation for the following project(s): woocommerce

* Remove skip from tests

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-14 11:41:35 +12:00
github-actions[bot] d19e90105a
Delete changelog files based on PR 47003 (#47439)
Delete changelog files for 47003

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-14 00:24:24 +01:00
Christopher Allford b8aabe9005
Fixed Taxonomy Term Limit On Product Collection Filters (#47155)
In the interest of avoiding pagination this refactor swaps the current term loading with one that doesn't require a cache of all terms. We've removed the need for the cache by storing the ID and term name together in the token/suggestion list and using a display transformation to hide any unnecessary information.
2024-05-13 16:00:24 -07:00
Roy Ho f5dc46a385
Product Filters: add individual clear button (#47101)
* Product Filters: add individual clear button

* Remove unused style.scss

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

* Simplify searching for the tag

* Convert to use button instead of anchor

* Try using iAPI to show/hide clear button

* Use local context instead of global state

* Fix linting error

* Remove unneeded context

* Update clear button block description

* Fix frontend PHP error

* Add e2e tests for attributes filter clear button

* Add e2e tests for price filter clear button

* Add e2e tests for rating filter clear button

* Add e2e tests for stock status filter clear button

* Address feedback and use built in locators

* Address feedback and replace the use of timeouts

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:19:56 -03:00
Fernando Marichal fdb4069566
Remove not used feature flags (#47150)
* Remove product-virtual-downloadable

* Remove product-variation-management

* Remove product-external-affiliate

* Remove product-grouped

* Remove product-linked

* Remove customer-effort-score-tracks

* Add beta tester changelog

* Add changelogs
2024-05-13 15:05:47 -03:00
Albert Juhé Lluveras 8da8a70839
Update docs about blocks styling to clearly state global styles are the recommended approach (#47269)
* Update docs about blocks styling to clearly state global styles are the recommended approach

* Markdown formatting fixes

* Add changelog file

* Add styling the Product Price block example

* Markdown formatting fixes (II)

* Update plugins/woocommerce-blocks/docs/designers/theming/README.md

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>

* Update plugins/woocommerce-blocks/docs/designers/theming/README.md

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>

---------

Co-authored-by: Patricia Hillebrandt <patriciahillebrandt@gmail.com>
2024-05-13 18:26:50 +02:00
Seghir Nadir ccba86a616
Update additional fields document's TOC and link to it from another document. (#47137)
* update docs

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* fix linting

* update manifest

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:46:46 +00:00
Seghir Nadir b5850bbfc1
Select a shipping rate after they load (#47120)
* select a shipping rate if there are no shipping rates on mount

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

* move code and explain it

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:29:04 +00:00
Seghir Nadir de4180c17a
Make german state field visible but not required (#47319)
* Make german state field visible but not required

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:19:35 +00:00
Bart Kalisz 9a71f3ac5f
Blocks E2E: Remove the DB snapshot on env reset (#47416) 2024-05-13 17:19:15 +02:00
Moon 5183b1bb1b
LYS - Disable the save changes button until changes are made (#47316)
* Disable the save changes button until changes are made

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix broken test

* Test

* Remove test code

* Tmp fix - fix broken test

* Fix incorrect comparison

* Remove test code

* minor refactor -- re-use setting

* Remove use of loadash isequal

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 07:56:51 -07:00
Seghir Nadir b256336176
reset state and postcode if it's not valid for the current country (#47369)
* reset state if it's not valid for the current country

* reset postcode as well

* Add changefile(s) from automation for the following project(s): woocommerce

* update logic so its in Checkout block instead of store api

* fix linting

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 16:46:08 +02:00
Paulo Arromba 98510fe9fd
Add woocommerce_order_received_verify_known_shoppers filter to order confirmation template (#46957)
* Adds filter `woocommerce_order_received_verify_known_shoppers` to allow known shoppers to access the order received page without being logged in in Order Confirmation template

* Added changelog

* Added filter docblock

* Refactored to apply the filter correctly for non-guests only.

* Restored comment.

* Added test

* Added test

* lint

* Change plugin package name

* Update plugin name (apparently slugs are formed from that)

* Added right prefix

* JS linting

* Refactored testing into a test.step()

* typo

* Fixed tests.

* Reverted change done by mistake.

* remove getByRole specificity

* Increase selector specificity specificity

* Change test prefix

* reduce test flakyness

* reduce test flakyness

* reduce test flakyness
2024-05-13 15:28:36 +01:00
Seghir Nadir 76a9e2eb27
Move country to top of form for all countries (#47375)
* Move country to top of form for all countries

* adjust styling

* Add changefile(s) from automation for the following project(s): woocommerce-blocks, woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 16:24:40 +02:00
Sam Seay 2db29164f9
Update to pnpm 9.1 (#47385)
* Update to pnpm 9.1 and fix a mini css bug

* Add changefile(s) from automation for the following project(s): @woocommerce/tracks, @woocommerce/product-editor, @woocommerce/onboarding, @woocommerce/number, @woocommerce/notices, @woocommerce/navigation, @woocommerce/internal-js-tests, @woocommerce/extend-cart-checkout-block, @woocommerce/expression-evaluation, @woocommerce/explat, @woocommerce/experimental, @woocommerce/eslint-plugin, @woocommerce/dependency-extraction-webpack-plugin, @woocommerce/date, @woocommerce/data, @woocommerce/customer-effort-score, @woocommerce/currency, @woocommerce/csv-export, @woocommerce/create-woo-extension, @woocommerce/create-product-editor-block, @woocommerce/components, @woocommerce/api, @woocommerce/ai, @woocommerce/admin-e2e-tests, woocommerce-blocks, woocommerce-beta-tester, woocommerce, woo-ai

* temporarily disable swallowing build output to diagnose issue with perf workflow

* Ignore some type issues that commonly resurface when deps slightly change

* Fix persistent type issues that have recurred many times

* Add more ignores

* Fix lint issue

* Revert change to swallow build error

* Improve access of the config that needs updated build dir.

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 10:57:39 -03:00
Akeda Bagus 5bbbc52c0d
Respect locale setting to format order counts in admin orders list page (#47373)
* Respect locale setting to format order counts in admin orders list page

Fixes #47372

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 14:28:31 +01:00
Bart Kalisz 30756f74e3
Blocks E2E: Refactor configs and workflow (#46409) 2024-05-13 14:58:26 +02:00
Paulo Arromba 4840af874a
Add phone number to my account shipping address. (#47062)
* Added phone number support to Shipping Address and refactor the code.

* Refactored to avoid evaluating extra if on !== billing address form

* Add changefile(s) from automation for the following project(s): woocommerce

* Fixed tests.

* Mock phone number consistency
2024-05-13 12:48:57 +01:00
Brian 69daa61877
Add aria-label to My Account Navigation Item (#43696)
Co-authored-by: Niels Lange <niels.lange@a8c.com>
Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 14:23:19 +03:00
Patricia Hillebrandt 7313127649
CYS > Add a feature flag for full composability and the Pattern Toolkit (#47392)
* Add a feature flag for full composability and the Pattern Toolkit projects.

* Add changefile(s) from automation for the following project(s): woocommerce

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 12:28:20 +02:00
Justin Palmer 7796c13b65
Make method getAttributionData globally accessible (#46965)
* Make method to getAttributionData externally accessible

* Include checks for sjbs availability

* Failsafe for the custom html element if sbjs isn't available

* Changelog
2024-05-13 12:24:32 +02:00
github-actions[bot] b164d19328
Delete changelog files based on PR 47398 (#47405)
Delete changelog files for 47398

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-13 12:09:56 +02:00
Néstor Soriano f61bdd51d5
Fix fatal error when trying to download log files (#47398)
* Fix inverted logif for readable file check in FileExporter::emit_file

* Fix: instance of WP_Error being passed to PageController::handle_list_table_bulk_actions
2024-05-13 11:28:09 +02:00
Ramon Ahnert 49c379c5a7
Fix typo in the Exposing your data in the Store API documentation (#43488)
* Fix basic usage code snippet example in extend-rest-api-add-data.md

* Add changefile(s) from automation for the following project(s): woocommerce-blocks

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 15:20:07 +07:00
Chi-Hsuan Huang b28adc1703
Use a real em dash character (—) in the coming soon site template (#47394)
* Use a real em dash character (—) in the coming soon template

* Add changelog
2024-05-13 15:51:42 +08:00
Prahesa Kusuma Setia db804f4193
Tracks event for WooCommerce.com connect notice (#47003)
* add tracks event in the wc settings connect notice

* add clicked and dismissed tracks event in the marketplace connect notice

* add shown tracks event in the marketplace connect notice

* add changelog

* fix linter error

* Add Tracks event when connect-notice in plugin is shown and clicked

* Add docblock for maybe_enqueue_scripts_for_connect_notice_in_plugins

---------

Co-authored-by: Akeda Bagus <akeda.bagus@automattic.com>
2024-05-13 13:45:43 +07:00
Ilyas Foo c4ca5f87d9
Reenable global styles for coming soon entire site template (#47388)
* Reenable global styles for coming soon pages

* Changelog

* Update fix-lys-reenable-global-styles
2024-05-13 13:38:54 +08:00
Moon 6cf09f30a8
LYS - Use flow layout for the coming soon template (#47335)
* Use flow layout

* Tmp fix - fix broken test

* Add changefile(s) from automation for the following project(s): woocommerce

* Use flex layout

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-13 13:15:47 +08:00
RJ 2898efa648
add: lys badge tracks (#46509) 2024-05-13 07:52:49 +08:00
Cem Ünalan 23773e19f0
Freemium: update marketplace product card label (#45982)
* Freemium: update marketplace product card label

* 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>
2024-05-10 15:00:05 -05:00
github-actions[bot] 821d764b04
Delete changelog files based on PR 47205 (#47367)
Delete changelog files for 47205

Co-authored-by: WooCommerce Bot <no-reply@woocommerce.com>
2024-05-10 17:13:50 +02:00
Matt Allan 6a89723685
Update when PayPal Standard is loaded to further reduce new store using this legacy payment method (#47205)
* Change default PP Standard should_load logic to be more strict when setting to true

* Remove filter allowing stores to enable PayPal Standard programmatically

* Adds new function to check if the store has any PayPal Standard orders

* Upgrade script that disables PayPal Standard on stores that aren't using it.

* Add changelog entries

* Fix extra comma

* PayPal email is defaulted to the admin email which means checking needs_setup() isn't reliable

* Load PayPal standard in unit tests

* Before installing WC, set the Paypal Standard should load to true

* Remove unnecessary ternary when setting default should_load

* On upgrading WC, only check for PayPal Standard live keys to determine if it's setup

* Remove admin notice if PayPal Standard is disabled on ugprade

* Display an admin notice if the store is using the deprecated filter to load PayPal Standard.

* Add docblock comment above the apply filters

* Added checks around the filter and give pref to enabled.

git add .

* Remove the should load filter notice.

* Add comment noting that init class shouldnt be removed.

* Use proper casting for this->enabled before usage.

---------

Co-authored-by: Vedanshu Jain <vedanshu.jain.2012@gmail.com>
2024-05-10 14:04:32 +01:00
Moon d0a8477b51
LYS - Add padding-left to the copy link (#47313)
* Adding padding to the copy link

* Add changefile(s) from automation for the following project(s): woocommerce

* Tmp fix - fix broken test

* Fix lint errors

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 05:02:35 -07:00
Néstor Soriano 772d796ea3
Fixes in the receipts rendering engine (#47300)
* Fix permission check in RestApiControllerBase

Extra arguments were being passed incorrectly to current_user_can,
causing wrong authentication failures in some cases (e.g.
when hitting the endpoints in a wp.com site via Jetpack tunneling).

* Fix get_order_data in ReceiptRenderingEngine

A fatal error was being thrown when one of the products referenced
in the order did no longer exist.
2024-05-10 13:12:54 +02:00
Moon 0873ed47c3
LYS - Update toolbar store link text (#47315)
* Update toolbar store link

"Preview store" when coming soon mode is enabled
"View store" when the site is set to live

* Add changefile(s) from automation for the following project(s): woocommerce

* Fix broken test

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 04:00:41 -07:00
Moon a8cf226987
LYS - Use Woo branded colors for LYS confetti (#47334)
* Update LYS congrats confetti

* Add changefile(s) from automation for the following project(s): woocommerce

* remove temporary fix

---------

Co-authored-by: github-actions <github-actions@github.com>
2024-05-10 04:00:33 -07:00
Naman Malhotra 01069666e6
Fix: Reset password form missing required indicator (#47229)
* Fix: Reset password form missing required indicator

* Added changelog

* Updated templae version

* Address feedback
2024-05-10 10:08:05 +00:00