UNPKG

ra-core

Version:

Core components of react-admin, a frontend Framework for building admin applications on top of REST services, using ES6, React

26 lines (23 loc) 804 B
import { useEffect } from 'react'; import { Middleware } from './useMutationMiddlewares'; import { useSaveContext } from './useSaveContext'; /** * Internal hook that registers a middleware for the save function in the current SaveContext. * @param callback The middleware function. */ export const useRegisterMutationMiddleware = < MutateFunc extends (...args: any[]) => any = (...args: any[]) => any >( callback: Middleware<MutateFunc> ) => { const { registerMutationMiddleware, unregisterMutationMiddleware, } = useSaveContext(); useEffect(() => { registerMutationMiddleware(callback); return () => { unregisterMutationMiddleware(callback); }; }, [callback, registerMutationMiddleware, unregisterMutationMiddleware]); };