@wordpress/interface
Version:
Interface module for WordPress. The package contains shared functionality across the modern JavaScript-based WordPress screens.
30 lines (26 loc) • 564 B
JavaScript
/**
* WordPress dependencies
*/
import { forwardRef } from '@wordpress/element';
/**
* External dependencies
*/
import clsx from 'clsx';
const NavigableRegion = forwardRef(
( { children, className, ariaLabel, as: Tag = 'div', ...props }, ref ) => {
return (
<Tag
ref={ ref }
className={ clsx( 'interface-navigable-region', className ) }
aria-label={ ariaLabel }
role="region"
tabIndex="-1"
{ ...props }
>
{ children }
</Tag>
);
}
);
NavigableRegion.displayName = 'NavigableRegion';
export default NavigableRegion;