diff --git a/packages/block-editor/src/components/block-list/block-wrapper.js b/packages/block-editor/src/components/block-list/block-wrapper.js index 4aef321a0bf20..dc837ff8f9b8f 100644 --- a/packages/block-editor/src/components/block-list/block-wrapper.js +++ b/packages/block-editor/src/components/block-list/block-wrapper.js @@ -19,6 +19,7 @@ import { ENTER, BACKSPACE, DELETE } from '@wordpress/keycodes'; import { __, sprintf } from '@wordpress/i18n'; import { useSelect, useDispatch } from '@wordpress/data'; import deprecated from '@wordpress/deprecated'; +import { __unstableGetBlockProps as getBlockProps } from '@wordpress/blocks'; /** * Internal dependencies @@ -286,6 +287,13 @@ export function useBlockWrapperProps( props = {}, { __unstableIsHtml } = {} ) { }; } +/** + * Call within a save function to get the props for the block wrapper. + * + * @param {Object} props Optional. Props to pass to the element. + */ +useBlockWrapperProps.save = getBlockProps; + const BlockComponent = forwardRef( ( { children, tagName: TagName = 'div', ...props }, ref ) => { deprecated( 'wp.blockEditor.__experimentalBlock', { diff --git a/packages/block-editor/src/components/block-list/block-wrapper.native.js b/packages/block-editor/src/components/block-list/block-wrapper.native.js index 10aea4bb9edd7..55c3bff51f66b 100644 --- a/packages/block-editor/src/components/block-list/block-wrapper.native.js +++ b/packages/block-editor/src/components/block-list/block-wrapper.native.js @@ -1,3 +1,8 @@ +/** + * WordPress dependencies + */ +import { __unstableGetBlockProps as getBlockProps } from '@wordpress/blocks'; + /** * Internal dependencies */ @@ -7,6 +12,8 @@ export function useBlockWrapperProps( props = {} ) { return props; } +useBlockWrapperProps.save = getBlockProps; + const ExtendedBlockComponent = ELEMENTS.reduce( ( acc, element ) => { acc[ element ] = element; return acc; diff --git a/packages/block-library/src/audio/save.js b/packages/block-library/src/audio/save.js index f88eb0bba52e0..15faa71d8536b 100644 --- a/packages/block-library/src/audio/save.js +++ b/packages/block-library/src/audio/save.js @@ -1,14 +1,17 @@ /** * WordPress dependencies */ -import { RichText } from '@wordpress/block-editor'; +import { + RichText, + __experimentalUseBlockWrapperProps as useBlockWrapperProps, +} from '@wordpress/block-editor'; export default function save( { attributes } ) { const { autoplay, caption, loop, preload, src } = attributes; return ( src && ( -
+