@wordpress/interface
Version:
Interface module for WordPress. The package contains shared functionality across the modern JavaScript-based WordPress screens.
37 lines (31 loc) • 654 B
JavaScript
/**
* External dependencies
*/
import clsx from 'clsx';
/**
* WordPress dependencies
*/
import { Slot, Fill } from '@wordpress/components';
function PinnedItems( { scope, ...props } ) {
return <Fill name={ `PinnedItems/${ scope }` } { ...props } />;
}
function PinnedItemsSlot( { scope, className, ...props } ) {
return (
<Slot name={ `PinnedItems/${ scope }` } { ...props }>
{ ( fills ) =>
fills?.length > 0 && (
<div
className={ clsx(
className,
'interface-pinned-items'
) }
>
{ fills }
</div>
)
}
</Slot>
);
}
PinnedItems.Slot = PinnedItemsSlot;
export default PinnedItems;