@wordpress/components
Version:
UI components for WordPress.
63 lines (58 loc) • 1.37 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import { createElement } from "@wordpress/element";
/**
* External dependencies
*/
import { noop } from 'lodash';
import classnames from 'classnames';
/**
* WordPress dependencies
*/
import { forwardRef } from '@wordpress/element';
/**
* Internal dependencies
*/
import Label from './label';
import { useResizeLabel, POSITIONS } from './utils';
import { Root } from './styles/resize-tooltip.styles';
function ResizeTooltip({
axis,
className,
fadeTimeout = 180,
isVisible = true,
labelRef,
onResize = noop,
position = POSITIONS.bottom,
showPx = true,
zIndex = 1000,
...props
}, ref) {
const {
label,
resizeListener
} = useResizeLabel({
axis,
fadeTimeout,
onResize,
showPx,
position
});
if (!isVisible) return null;
const classes = classnames('components-resize-tooltip', className);
return createElement(Root, _extends({
"aria-hidden": "true",
className: classes,
ref: ref
}, props), resizeListener, createElement(Label, {
"aria-hidden": props['aria-hidden'],
fadeTimeout: fadeTimeout,
isVisible: isVisible,
label: label,
position: position,
ref: labelRef,
zIndex: zIndex
}));
}
const ForwardedComponent = forwardRef(ResizeTooltip);
export default ForwardedComponent;
//# sourceMappingURL=index.js.map