diff --git a/packages/block-editor/src/components/global-styles/border-panel.js b/packages/block-editor/src/components/global-styles/border-panel.js index aea8e67f5b5944..e4c349024dae5e 100644 --- a/packages/block-editor/src/components/global-styles/border-panel.js +++ b/packages/block-editor/src/components/global-styles/border-panel.js @@ -256,6 +256,7 @@ export default function BorderPanel( { { return ( & { + Pick< BorderControlProps, 'showClearButton' | 'enableStyle' | 'size' > & { /** * A callback function invoked when any border value is changed. The value * received may be a "flat" border object, one that has properties defining diff --git a/packages/components/src/border-control/border-control-dropdown/component.tsx b/packages/components/src/border-control/border-control-dropdown/component.tsx index 707497ae2993c0..3be8e37efa9c48 100644 --- a/packages/components/src/border-control/border-control-dropdown/component.tsx +++ b/packages/components/src/border-control/border-control-dropdown/component.tsx @@ -7,6 +7,7 @@ import type { CSSProperties } from 'react'; * WordPress dependencies */ import { __, sprintf } from '@wordpress/i18n'; +import deprecated from '@wordpress/deprecated'; /** * Internal dependencies @@ -152,17 +153,27 @@ const BorderControlDropdown = ( indicatorClassName, indicatorWrapperClassName, isStyleSettable, + showClearButton, onReset, onColorChange, onStyleChange, popoverContentClassName, popoverControlsClassName, resetButtonClassName, + clearButtonClassName, size, __unstablePopoverProps, ...otherProps } = useBorderControlDropdown( props ); + if ( showClearButton === undefined ) { + deprecated( `Clear button styles for wp.components.BorderBoxControl`, { + since: '6.8', + version: '7.1', + hint: 'Set the `showClearButton` prop to true to start opting into the new styles, which will become the default in a future version.', + } ); + } + const { color, style } = border || {}; const colorObject = getColorObject( color, colors ); @@ -224,8 +235,23 @@ const BorderControlDropdown = ( /> ) } + { showClearButton && ( +
+ +
+ ) } - { showResetButton && ( + { ! showClearButton && showResetButton && (