Files
video-gen/video-gen-admin/node_modules/@rc-component/dropdown/es/Overlay.js
T
2026-05-25 17:08:18 +08:00

25 lines
844 B
JavaScript

import { composeRef, getNodeRef, supportRef } from "@rc-component/util/es/ref";
import React, { forwardRef, useMemo } from 'react';
const Overlay = /*#__PURE__*/forwardRef((props, ref) => {
const {
overlay,
arrow,
prefixCls
} = props;
const overlayNode = useMemo(() => {
let overlayElement;
if (typeof overlay === 'function') {
overlayElement = overlay();
} else {
overlayElement = overlay;
}
return overlayElement;
}, [overlay]);
const composedRef = composeRef(ref, getNodeRef(overlayNode));
return /*#__PURE__*/React.createElement(React.Fragment, null, arrow && /*#__PURE__*/React.createElement("div", {
className: `${prefixCls}-arrow`
}), /*#__PURE__*/React.cloneElement(overlayNode, {
ref: supportRef(overlayNode) ? composedRef : undefined
}));
});
export default Overlay;