react-use/src/util/createRenderProp.ts
2019-04-12 23:18:11 +10:00

14 lines
373 B
TypeScript

const defaultMapPropsToArgs = props => [props];
const createRenderProp = (hook, mapPropsToArgs = defaultMapPropsToArgs) => {
const RenderProp = props => {
const state = hook(...mapPropsToArgs(props));
const { children, render = children } = props;
return render ? render(state) || null : null;
};
return RenderProp;
};
export default createRenderProp;