import { ReactNode } from 'react';
import {
useCreateController,
CreateControllerProps,
CreateControllerResult,
} from './useCreateController';
import { RaRecord } from '../../types';
/**
* Render prop version of the useCreateController hook
*
* @see useCreateController
* @example
*
* const CreateView = () =>
...
* const MyCreate = props => (
*
* {controllerProps => }
*
* );
*/
export const CreateController = <
RecordType extends Omit = any,
MutationOptionsError = Error,
>({
children,
...props
}: {
children: (params: CreateControllerResult) => ReactNode;
} & CreateControllerProps) => {
const controllerProps = useCreateController<
RecordType,
MutationOptionsError
>(props);
return children(controllerProps);
};