UNPKG

@tanstack/react-start

Version:

Modern and scalable routing for React applications

23 lines (22 loc) 623 B
import * as React from "react"; import { isRedirect, useRouter } from "@tanstack/react-router"; //#region src/useServerFn.ts function useServerFn(serverFn) { const router = useRouter(); return React.useCallback(async (...args) => { try { const res = await serverFn(...args); if (isRedirect(res)) throw res; return res; } catch (err) { if (isRedirect(err)) { err.options._fromLocation = router.state.location; return router.navigate(router.resolveRedirect(err).options); } throw err; } }, [router, serverFn]); } //#endregion export { useServerFn }; //# sourceMappingURL=useServerFn.js.map