Commit d94ed70c000 for woocommerce
commit d94ed70c000feeb73952b1322df8d8ca435179cd
Author: louwie17 <lourensschep@gmail.com>
Date: Tue Oct 13 12:25:48 2026 +0200
Use Tooltip placement prop in SummaryNumber and MenuItem (#69750)
* Use Tooltip placement prop in SummaryNumber and MenuItem
The `position` prop on wp.components Tooltip is deprecated since WordPress 6.4
and logs a console warning on every render. `placement="top"` is the
equivalent of `position="top center"`.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SBRDpQSiH8zmJPj1NGPTqv
* Reword changelog entry for merchants
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SBRDpQSiH8zmJPj1NGPTqv
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
diff --git a/packages/js/components/changelog/fix-summary-number-tooltip-placement b/packages/js/components/changelog/fix-summary-number-tooltip-placement
new file mode 100644
index 00000000000..874df3e25d9
--- /dev/null
+++ b/packages/js/components/changelog/fix-summary-number-tooltip-placement
@@ -0,0 +1,4 @@
+Significance: patch
+Type: fix
+
+Stop tooltip deprecation warnings in the browser console on Analytics report summaries and select menus.
diff --git a/packages/js/components/src/experimental-select-control/menu-item.tsx b/packages/js/components/src/experimental-select-control/menu-item.tsx
index a1900d59df0..29b73db17d1 100644
--- a/packages/js/components/src/experimental-select-control/menu-item.tsx
+++ b/packages/js/components/src/experimental-select-control/menu-item.tsx
@@ -50,7 +50,7 @@ export const MenuItem = < ItemType, >( {
if ( tooltipText ) {
return (
- <Tooltip text={ tooltipText } position="top center">
+ <Tooltip text={ tooltipText } placement="top">
{ renderListItem() }
</Tooltip>
);
diff --git a/packages/js/components/src/summary/number.js b/packages/js/components/src/summary/number.js
index dd61d19b916..4fbac71a3a7 100644
--- a/packages/js/components/src/summary/number.js
+++ b/packages/js/components/src/summary/number.js
@@ -116,10 +116,7 @@ const SummaryNumber = ( {
{ label }
</Text>
{ labelTooltipText && (
- <Tooltip
- text={ labelTooltipText }
- position="top center"
- >
+ <Tooltip text={ labelTooltipText } placement="top">
<div className="woocommerce-summary__info-tooltip">
<Icon
width={ 20 }
@@ -146,7 +143,7 @@ const SummaryNumber = ( {
? `${ prevLabel } ${ prevValue }`
: __( 'N/A', 'woocommerce' )
}
- position="top center"
+ placement="top"
>
<div
className="woocommerce-summary__item-delta"
diff --git a/packages/js/components/src/summary/test/number.js b/packages/js/components/src/summary/test/number.js
new file mode 100644
index 00000000000..bfc7d729960
--- /dev/null
+++ b/packages/js/components/src/summary/test/number.js
@@ -0,0 +1,38 @@
+/**
+ * External dependencies
+ */
+import { render } from '@testing-library/react';
+import { createElement } from '@wordpress/element';
+
+/**
+ * Internal dependencies
+ */
+import SummaryNumber from '../number';
+
+describe( 'SummaryNumber', () => {
+ test( 'does not trigger the Tooltip `position` deprecation', () => {
+ const warn = jest
+ .spyOn( console, 'warn' )
+ .mockImplementation( () => {} );
+
+ render(
+ <SummaryNumber
+ label="Total sales"
+ labelTooltipText="Sales after refunds"
+ value="$100"
+ prevLabel="Previous period:"
+ prevValue="$50"
+ delta={ 100 }
+ href="#"
+ />
+ );
+
+ expect( warn ).not.toHaveBeenCalledWith(
+ expect.stringContaining(
+ '`position` prop in wp.components.tooltip'
+ )
+ );
+
+ warn.mockRestore();
+ } );
+} );