UNPKG

@wordpress/block-editor

Version:
38 lines (34 loc) 1.14 kB
import { createElement, Fragment } from "@wordpress/element"; /** * WordPress dependencies */ import { __experimentalStyleProvider as StyleProvider, ToolbarGroup } from '@wordpress/components'; /** * Internal dependencies */ import useBlockControlsFill from './hook'; export default function BlockControlsFill({ group = 'default', controls, children, __experimentalShareWithChildBlocks = false }) { const Fill = useBlockControlsFill(group, __experimentalShareWithChildBlocks); if (!Fill) { return null; } const innerMarkup = createElement(Fragment, null, group === 'default' && createElement(ToolbarGroup, { controls: controls }), children); return createElement(StyleProvider, { document: document }, createElement(Fill, null, fillProps => { // `fillProps.forwardedContext` is an array of context provider entries, provided by slot, // that should wrap the fill markup. const { forwardedContext = [] } = fillProps; return forwardedContext.reduce((inner, [Provider, props]) => createElement(Provider, props, inner), innerMarkup); })); } //# sourceMappingURL=fill.js.map