are-message
Version:
This is a React global notification message component. It is a standalone implementation of the are-visual message component.
30 lines (29 loc) • 986 B
JavaScript
import { useUnmount } from 'ahooks';
import classNames from 'classnames';
import React, { useRef, useImperativeHandle, forwardRef, useCallback } from 'react';
import { isTruthy } from '../types/types';
var MessageHolder = /*#__PURE__*/forwardRef(function (props, ref) {
var prefixCls = props.prefixCls,
className = props.className,
style = props.style,
children = props.children,
onClose = props.onClose;
var node = useRef(null);
useUnmount(onClose);
useImperativeHandle(ref, function () {
return node.current;
}, []);
var createClassName = useCallback(function (value) {
if (isTruthy(prefixCls)) {
return "".concat(prefixCls, "-").concat(value);
}
return value;
}, [prefixCls]);
return /*#__PURE__*/React.createElement("div", {
className: classNames(createClassName('item-wrap'), className),
style: style,
ref: node
}, children);
});
MessageHolder.displayName = 'MessageHolder';
export default MessageHolder;