@tanstack/solid-router
Version:
Modern and scalable routing for Solid applications
30 lines (29 loc) • 914 B
JavaScript
import { routerContext } from "./routerContext.js";
import { SafeFragment } from "./SafeFragment.js";
import { Matches } from "./Matches.js";
import { createComponent, mergeProps } from "solid-js/web";
//#region src/RouterProvider.tsx
function RouterContextProvider({ router, children, ...rest }) {
router.update({
...router.options,
...rest,
context: {
...router.options.context,
...rest.context
}
});
return createComponent(router.options.Wrap || SafeFragment, { get children() {
return createComponent(routerContext.Provider, {
value: router,
get children() {
return children();
}
});
} });
}
function RouterProvider({ router, ...rest }) {
return createComponent(RouterContextProvider, mergeProps({ router }, rest, { children: () => createComponent(Matches, {}) }));
}
//#endregion
export { RouterContextProvider, RouterProvider };
//# sourceMappingURL=RouterProvider.js.map