Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 1x 2x 2x 2x 1x 1x | import {cloneElement, forwardRef} from 'react'
import PropTypes from 'prop-types'
import useMergeRefs from '@s-ui/react-hooks/lib/useMergeRefs'
import {getChildrenAsReactNode} from './config.js'
const PopoverExtendChildren = forwardRef((props, forwardedRef) => {
const childrenOnly = getChildrenAsReactNode(props.children)
const {ref} = childrenOnly
return cloneElement(childrenOnly, {
ref: useMergeRefs(forwardedRef, ref)
})
})
PopoverExtendChildren.displayName = 'PopoverExtendChildren'
PopoverExtendChildren.propTypes = {
children: PropTypes.element.isRequired
}
export default PopoverExtendChildren
|