@tanstack/react-router
Version:
Modern and scalable routing for React applications
49 lines (48 loc) • 2.18 kB
JavaScript
const require_runtime = require("./_virtual/_rolldown/runtime.cjs");
const require_CatchBoundary = require("./CatchBoundary.cjs");
const require_useRouter = require("./useRouter.cjs");
let _tanstack_router_core = require("@tanstack/router-core");
let react = require("react");
react = require_runtime.__toESM(react);
let react_jsx_runtime = require("react/jsx-runtime");
let _tanstack_react_store = require("@tanstack/react-store");
let _tanstack_router_core_isServer = require("@tanstack/router-core/isServer");
//#region src/not-found.tsx
function CatchNotFound(props) {
const router = require_useRouter.useRouter();
if (_tanstack_router_core_isServer.isServer ?? router.isServer) {
const resetKey = `not-found-${router.stores.location.state.pathname}-${router.stores.status.state}`;
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_CatchBoundary.CatchBoundary, {
getResetKey: () => resetKey,
onCatch: (error, errorInfo) => {
if ((0, _tanstack_router_core.isNotFound)(error)) props.onCatch?.(error, errorInfo);
else throw error;
},
errorComponent: ({ error }) => {
if ((0, _tanstack_router_core.isNotFound)(error)) return props.fallback?.(error);
else throw error;
},
children: props.children
});
}
const resetKey = `not-found-${(0, _tanstack_react_store.useStore)(router.stores.location, (location) => location.pathname)}-${(0, _tanstack_react_store.useStore)(router.stores.status, (status) => status)}`;
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_CatchBoundary.CatchBoundary, {
getResetKey: () => resetKey,
onCatch: (error, errorInfo) => {
if ((0, _tanstack_router_core.isNotFound)(error)) props.onCatch?.(error, errorInfo);
else throw error;
},
errorComponent: ({ error }) => {
if ((0, _tanstack_router_core.isNotFound)(error)) return props.fallback?.(error);
else throw error;
},
children: props.children
});
}
function DefaultGlobalNotFound() {
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", { children: "Not Found" });
}
//#endregion
exports.CatchNotFound = CatchNotFound;
exports.DefaultGlobalNotFound = DefaultGlobalNotFound;
//# sourceMappingURL=not-found.cjs.map