function renderChildren()

in packages/rc-components/rc-confirm/src/Confirm.tsx [36:50]


function renderChildren(children: React.ReactNode, showDialog: () => void) {
  if (React.isValidElement(children)) {
    return <children.type {...children.props} onClick={showDialog} />
  }
  if (Array.isArray(children)) {
    return React.Children.map(children, (elem) => {
      if (React.isValidElement(elem))
        return <elem.type {...elem.props} onClick={showDialog} />
      return elem
    })
  }
  if (typeof children === 'function') {
    return children(showDialog)
  }
}