overleaf/services/web/frontend/stories/hooks/use-fetch-mock.tsx
Alf Eaton 910e07ca1c Add types (#8154)
GitOrigin-RevId: 41ee6b6873a01fbfedc41a884b9e3ebee47fc08f
2022-05-30 08:03:45 +00:00

18 lines
403 B
TypeScript

import { useLayoutEffect } from 'react'
import fetchMock from 'fetch-mock'
fetchMock.config.fallbackToNetwork = true
/**
* Run callback to mock fetch routes, call restore() when unmounted
*/
export default function useFetchMock(
callback: (value: typeof fetchMock) => void
) {
useLayoutEffect(() => {
callback(fetchMock)
return () => {
fetchMock.restore()
}
}, [callback])
}