one
Version:
One is a React framework for web, iOS, and Android apps.
1 lines • 1.44 kB
Source Map (JSON)
{"version":3,"file":"createRoute.js","names":[],"sources":["esm/router/createRoute.js"],"sourcesContent":["import { useActiveParams, useParams } from \"../hooks\";\nfunction createRoute() {\n return {\n useParams: () => useParams(),\n useActiveParams: () => useActiveParams(),\n /**\n * Creates a typed loader function for this route.\n * The loader receives LoaderProps with typed params.\n *\n * @example\n * const route = createRoute<'(site)/docs/[slug]'>()\n * export const loader = route.createLoader(({ params }) => {\n * // params is typed as { slug: string }\n * return { doc: getDoc(params.slug) }\n * })\n */\n createLoader: (fn) => fn\n };\n}\nconst defaults = createRoute();\nconst getProxy = () => new Proxy(\n {},\n {\n get(target, key) {\n if (Reflect.has(defaults, key)) {\n return Reflect.get(defaults, key);\n }\n return getProxy();\n }\n }\n);\nconst postIdRoute = createRoute();\nconst route = getProxy();\nexport {\n createRoute,\n route\n};\n//# sourceMappingURL=createRoute.js.map\n"],"mappings":";;;AACA,SAAS,cAAc;CACrB,OAAO;EACL,iBAAiB,UAAU;EAC3B,uBAAuB,gBAAgB;;;;;;;;;;;;EAYvC,eAAe,OAAO;CACxB;AACF;AACA,MAAM,WAAW,YAAY;AAC7B,MAAM,iBAAiB,IAAI,MACzB,CAAC,GACD,EACE,IAAI,QAAQ,KAAK;CACf,IAAI,QAAQ,IAAI,UAAU,GAAG,GAAG;EAC9B,OAAO,QAAQ,IAAI,UAAU,GAAG;CAClC;CACA,OAAO,SAAS;AAClB,EACF,CACF;AACA,MAAM,cAAc,YAAY;AAChC,MAAM,QAAQ,SAAS"}