@tanstack/react-start-client
Version:
Modern and scalable routing for React applications
25 lines (24 loc) • 740 B
JavaScript
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const routerCore = require("@tanstack/router-core");
const reactRouter = require("@tanstack/react-router");
function useServerFn(serverFn) {
const router = reactRouter.useRouter();
return async (...args) => {
try {
const res = await serverFn(...args);
if (routerCore.isRedirect(res)) {
throw res;
}
return res;
} catch (err) {
if (routerCore.isRedirect(err)) {
err.options._fromLocation = router.state.location;
return router.navigate(router.resolveRedirect(err).options);
}
throw err;
}
};
}
exports.useServerFn = useServerFn;
//# sourceMappingURL=useServerFn.cjs.map
;