function renderColumns()

in packages/rc-components/rc-table/src/renderColumns.tsx [28:48]


function renderColumns<T>(
  WrappedComponent: React.ComponentType<T>
): React.FC<T & { columns: ITableProps['columns'] }> {
  const H: React.FC<T & { columns: ITableProps['columns'] }> = ({
    columns = [],
    ...restProps
  }) => {
    return (
      <WrappedComponent {...(restProps as T)}>
        {columns.map(
          toComponent(
            (restProps as { primaryKey?: ITableProps['primaryKey'] }).primaryKey
          )
        )}
        {restProps.children}
      </WrappedComponent>
    )
  }
  H.displayName = wrapDisplayName(WrappedComponent, 'renderColumns')
  return H
}