UNPKG

one

Version:

One is a new React Framework that makes Vite serve both native and web.

58 lines 1.84 kB
var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var createRoute_exports = {}; __export(createRoute_exports, { createRoute: () => createRoute, route: () => route }); module.exports = __toCommonJS(createRoute_exports); var import_hooks = require("../hooks.cjs"); function createRoute() { return { useParams: () => (0, import_hooks.useParams)(), useActiveParams: () => (0, import_hooks.useActiveParams)(), /** * Creates a typed loader function for this route. * The loader receives LoaderProps with typed params. * * @example * const route = createRoute<'(site)/docs/[slug]'>() * export const loader = route.createLoader(({ params }) => { * // params is typed as { slug: string } * return { doc: getDoc(params.slug) } * }) */ createLoader: fn => fn }; } const defaults = createRoute(); const getProxy = () => new Proxy({}, { get(target, key) { if (Reflect.has(defaults, key)) { return Reflect.get(defaults, key); } return getProxy(); } }); const postIdRoute = createRoute(); const route = getProxy();