- Reinstated the ability to pass additional props to the
ToolsPanel(36428).
- Fixed spacing between
BaseControlfields and help text within theToolsPanel(36334)
- Updated the
ToolsPanelto useGridinternally to manage panel layout (35621).
- Added support for
step="any"inNumberControlandRangeControl(#34542).
- Removed the separator shown between
ToggleGroupControlitems (#35497). - The
ColorPickercomponent propertyonChangeComplete, a function accepting a color object, was replaced with the propertyonChange, a function accepting a string on (#35220). - The property
disableAlpha, was removed from theColorPickercomponent. Use the new opposite propertyenableAlphainstead (#35220).
- Removed the
fieldsetwrapper from theFontAppearanceControlcomponent (35461). - Refactored the
ToggleGroupControlcomponent's structure and embeddedToggleGroupControlButtondirectly intoToggleGroupControlOption(#35600). - Added support for showing an experimental hint in
CustomSelectControl(#35673).
- The
colorproperty atinycolor2color object passed ononChangeCompleteproperty of theColorPickercomponent was removed. Please use the newonChangeproperty that accepts a string color representation (#35562).
- Removed the deprecated
positionandmenuLabelfrom theDropdownMenucomponent (#34537). - Removed the deprecated
onClickOutsideprop from thePopovercomponent (#34537). - Changed
RangeControlcomponent to not applyshiftStepto inputs from its<input type="range"/>(35020). - Removed
isActionprop fromItem. The component will now rely ononClickto render as abutton(35152).
- Add an experimental
Navigatorcomponents (#34904) as a replacement for the previousNavigationrelated components. - Update the
ColorPickercomponent to the latest design (#35220)
- Fixed rounding of value in
RangeControlcomponent when it loses focus while theSHIFTkey is held. (#35020).
- Deleted the
createComponentutility function (#34929). - Deleted the
useJumpSteputility function (#35561).
- Removed a min-width from the
DropdownMenucomponent, allowing the menu to accommodate thin contents like vertical tools menus (#33995).
- Fixed RTL styles in
Flexcomponent (#33729). - Fixed unit test errors caused by
CSS.supportsbeing called in a non-browser environment (#34572). - Fixed
ToggleGroupControl's backdrop not updating when changing theisAdaptiveWidthproperty (#34595).
- Renamed
PolymorphicComponent*types toWordPressComponent*(#34330).
- Updated the visual styles of the RangeControl component (#33824).
- Add
hideLabelFromVisionprop toRangeControl(#33714).
- Listen to
resizeevents correctly inuseBreakpointIndex. This hook is used inuseResponsiveValueand consequently in theFlexandGridcomponents (#33902)
- Upgraded React components to work with v17.0 (#29118). There are no new features in React v17.0 as explained in the blog post.
isScrollableprop inCardBodydefault value changed fromtruetofalse(#33490)
- Added back
box-sizing: border-boxrule toCardBody,CardHeaderandCardFootercomponents #33511.
- Update the border color used in
CardBody,CardHeader,CardFooter, andCardDividerto a different shade of gray, in order to match the color used in other components (#32566).
isPrimary,isSecondary,isTertiaryandisLinkprops inButtonhave been deprecated. Usevariantinstead (#31713).isElevatedprop inCardhas been deprecated. Useelevationinstead (#32566).
Card,CardBody,CardHeader,CardFooter,CardMedia, andCardDividercomponents have been re-written from the ground up (#32566).
- Drop support for Internet Explorer 11 (#31110). Learn more at https://make.wordpress.org/core/2021/04/22/ie-11-support-phase-out-plan/.
- Increase the minimum Node.js version to v12 matching Long Term Support releases (#31270). Learn more at https://nodejs.org/en/about/releases/.
- The experimental
Textcomponent has been completely re-written and enhanced with truncation support and separate variant, size, and weight props to allow for greater control. The previousvariantprop has been completely removed.
isReversedprop inFlexcomponent has been deprecated. Usedirectioninstead (#31297).
Flex,FlexBlock, andFlexItemcomponents have been re-written from the ground up (#31297).
onChangeprop ofFocalPointPickeris called at the end of drag operations. Previously, it was called repetitively while dragging.
- Supports ref forwarding in
withNoticesandResizableBox. - Adds
onDragprop ofFocalPointPicker.
- Allows focus of the
FocalPointPickerdraggable area and adjustment with arrow keys. This was added in #22531 but was no longer working.
- ComboboxControl: Deburr option labels before filter
- Introduce support for other units and advanced CSS properties on
FontSizePicker. Provided the value passed to theFontSizePickeris a string or one of the size options passed is a string, onChange will start to be called with a string value instead of a number. On WordPress usage, font size options are now automatically converted to strings with the default "px" unit added.
- Add
ToolbarItemcomponent. - Support
labelprop on theToolbarcomponent.
- Deprecate the
Toolbarcomponent when used without thelabelprop.ToolbarGroupshould be used instead.
NumberControlno longer automatically transforms values when renderingvalueinto a<input />HTML element.Dashiconcomponent no longer renders SVGs. If you rely on this component, make sure to load the dashicon font.
- Fix and issue that would cause the
Popovercomponent to throw an error under certain circumstances (#22264).
- The
Guidecomponent no longer supports passing pages as children. Use thepagesprop instead. - The
GuidePagecomponent is deprecated. Use thepagesprop inGuideinstead.
- The
Noticecomponent will speak its message. With this new feature, a developer can control either thespokenMessagespoken message, or thepolitenesspoliteness level of the message. - The
Snackbarcomponent will speak its message. With this new feature, a developer can control either thespokenMessagespoken message, or thepolitenesspoliteness level of the message. - A
Noticeactionsmember can now assignisPrimaryto render a primary button action associated with a notice message.
- Notice will assume a default status of 'info' if none is provided. This resolves an issue where the notice would be assigned a class name
is-undefined. This was previously the effective default by styled appearance and should not be considered a breaking change in that regard.
- Added a new
Guidecomponent which allows developers to easily present a user guide.
is-buttonclassname has been removed from the Button component.- The
is-defaultclassname is not applied automatically anymore. - By default Button components come with a fixed height and hover styles.
- Fixes a regression published in version 8.5.0 that would prevent some build tools from including styles provided in the packages build-styles directory.
isDefaultprop inButtonhas been deprecated. Consider usingisSecondaryinstead.IconButtonhas been deprecated. Use theButtoncomponent instead.
- The bundled
re-resizabledependency has been updated from requiring5.0.1to requiring^6.0.0(#17011).
- Added a new
popoverPropsprop to theDropdowncomponent which allows users of theDropdowncomponent to pass props directly to thePopovercomponent. - Added and documented
hideLabelFromVisionprop toBaseControlused bySelectControl,TextControl, andTextareaControl. - Added a new
popoverPropsprop to theDropdownMenucomponent which allows to pass props directly to the nestedPopovercomponent. - Added a new
togglePropsprop to theDropdownMenucomponent which allows to pass props directly to the nestedIconButtoncomponent. - Added a new
menuPropsprop to theDropdownMenucomponent which allows to pass props directly to the nestedNavigableMenucomponent.
menuLabelprop inDropdownComponenthas been deprecated. Consider usingmenuPropsobject and itsaria-labelproperty instead.positionprop inDropdownComponenthas been deprecated. Consider usingpopoverPropsobject and itspositionproperty instead.
- The
Buttoncomponent will no longer assign default styling (is-defaultclass) when explicitly assigned as primary (theisPrimaryprop). This should resolve potential conflicts affecting a combination ofisPrimary,isDefault, andisLarge/isSmall, where the busy animation would appear with incorrect coloring.
- The
PopovercomponentonClickOutsideprop has been deprecated. UseonFocusOutsideinstead.
- The
Dropdowncomponent has been refactored to focus changes using thePopovercomponent'sonFocusOutsideprop. - The
MenuItemcomponent will now always use anIconButton. This prevents a focus loss when clicking a menu item. - Package no longer depends on external
react-click-outsidelibrary.
- Add new
BlockQuotationblock to the primitives folder to support blockquote in a multiplatform way. #15482. DropdownMenunow supports passing a render prop as children for more advanced customization.
MenuGroupno longer usesNavigableMenuinternally. It needs to be explicitly wrapped withNavigableMenuto bring back the same behavior.
- Added missing documentation for
DropdownMenupropsmenuLabel,position,className.
ServerSideRenderis no longer part of components. It was extracted to an independent package@wordpress/server-side-render.
- Although
DateTimePickerdoes not allow picking the seconds, passed the current seconds as the selected value for seconds when callingonChange. Now it passes zero.
- Added a new
HorizontalRulecomponent. - Added a new
Snackbarcomponent.
- Fixed display of reset button when using RangeControl
allowResetprop. - Fixed minutes field of
DateTimePickermissed '0' before single digit values.
- Added a new
renderproperty toFormFileUploadcomponent. Allowing users of the component to custom the UI for their needs. - Added a new
BaseControl.VisualLabelcomponent. - Added a new
previewprop to thePlaceholdercomponent which allows to display a preview, for example a media preview when the Placeholder is used in media editing contexts. - Added a new
anchorRectprop toPopoverwhich enables a developer to provide a customDOMRectobject at which to position the popover.
- Limit
Base Control Labelto the width of its content.
- Fix
instanceIdprop passed through toButtoncomponent viaMenuItemsproducing React console error. Fixed by removing the unnecessary use ofwithInstanceIdon theMenuItemscomponent #14599
- Make
RangeControlvalidation rely on thecheckValidityprovided by the browsers instead of using our own validation.
- Fix a problem that made
RangeControlnot work as expected with float values.
- Added a new
Animatecomponent.
withFiltershas been optimized to avoid binding hook handlers for each mounted instance of the component, instead using a single centralized hook delegator.withFiltershas been optimized to reuse a single shared component definition for all filtered instances of the component.- Make
RangeControlvalidate min and max properties.
- Resolves a conflict where two instance of Slot would produce an inconsistent or duplicated rendering output.
- Allow years between 0 and 1970 in DateTime component.
Dropdownnow has afocusOnMountprop which is passed directly to the containedPopover.DatePickerhas new propisInvalidDateexposing react-dates'isOutsideRange.DatePickerallowsnullas accepted value forcurrentDateprop to signify no date selection.
Dropdown.refresh()has been removed. The containedPopoveris now automatically refreshed.
- Avoid constantly recomputing the popover position.
- Remove
<DateTimePicker />obsoletelocaleprop (and pass-through to child components) and obsoleteis12Hourprop pass through to<DateTime />#11649
- The
PanelColorcomponent has been removed.
- Adjust a11y roles for MenuItem component, so that aria-checked is used properly, related change in Editor/Components/BlockNavigationList (#11431).
Popovercomponents are now automatically refreshed every 0.5s in order to recalculate their size or position.
Dropdown.refresh()has been deprecated as the containedPopoveris now automatically refreshed.
- Forward
refin thePanelBodycomponent. - Tooltip are no longer removed when Button becomes disabled, it's left to the component rendering the Tooltip.
- Forward
refsupport inTabbableContainerandNavigableMenucomponents.
AccessibleSVGcomponent has been removed. Please useSVGinstead.
- The
Noticecomponent accepts an array of action objects via theactionsprop. Each member object should contain alabeland either aurllink string oronClickcallback function.
- Fix importing
react-datesstylesheet in production.
- Added a new
ColorPickercomponent (#10564). MenuItemnow accepts aninfoprop for including an extended description.
IconButtoncorrectly respects a passedaria-labelprop.
PanelColorhas been deprecated in favor ofwp.editor.PanelColorSettings.
- Added a new
ResizableBoxcomponent.
Draggableas a DOM node drag handler has been removed. Please, useDraggableas a wrap component for your DOM node drag handler.
- Renamed
AccessibleSVGcomponent toSVG.
withAPIDatahas been removed. Please use the Core Data module or@wordpress/api-fetchdirectly instead.Draggableas a DOM node drag handler has been deprecated. Please, useDraggableas a wrap component for your DOM node drag handler.- Change how required built-ins are polyfilled with Babel 7 (#9171). If you're using an environment that has limited or no support for ES2015+ such as lower versions of IE then using core-js or @babel/polyfill will add support for these methods.
withContexthas been removed. Please usewp.element.createContextinstead. See: https://reactjs.org/docs/context.html.
- Added a new
AccessibleSVGcomponent.