{"bugs":{"url":"https://github.com/solidjs/solid-app-router/issues"},"dist":{"shasum":"a298d901672fa13196f8d1abb2c2329e53d9d52a","tarball":"https://registry.npmjs.org/solid-app-router/-/solid-app-router-0.1.0-alpha.2.tgz","fileCount":15,"integrity":"sha512-s7uiyRFrx2EIIubnVyzNVjIDn5rSTCLK+epP6sBM6892T/uqEtVSfMurlKkls6XyadnDtn6+ThOVERQDG5Z3Ew==","signatures":[{"sig":"MEYCIQD8QTMqaBuElAl+Fijhr8wEzIniZmdVo8zKFB75hOiJgQIhAJ4wfs3iBVVksfv0R9QQQD/ODIIhJ3hpguw4z4tzzzBu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8qk3CRA9TVsSAnZWagAAXXkQAI4l0kJvcMt1KXT6SKzx\nSOrjhb/IsLxisHXxZaryOKzleOaW344dWCOQnpV7DwRQxRDz5KlViV12dtWv\nDx6u7/7F232GcSVpsuIMQuta7+0zsI+MAPyvC1XGw6vxA7D18/i4kBD5Wt5G\nzP0eYFJUyWxuOSTj/VVAm+itxAyugIyQ06HGnUlD1pQ5kyhoboJyJqjzra+m\nJkQ31rQW5XYJ/RTXo74FS6lpNJulga8H7hRFb87jA7vX6D3IpmdiI1/I/MnA\nm+mJ/pl7nHfFNvTymScq0rc0/R7Xa8h1ejn0Sns2EFWrOmV069b2T6cqy3ve\nyiXqZV/dclz1PfboEQFcc8Dc4o5fD8DjqlSsB7d8DO/VBR6gOrAYugRdl1b+\nFP75qpWBPxwPshwR9mepcCvK/1FpDQ+QekRoRkr7zQzD6YlkQW4fuD59r/2F\n2ICSGs/1T/pmnQwUDEUCRWIaWg2S3LFr+/GhjR2bjjtAGW+mNj8l1nR+c6Ho\nen6IZU0HxgdDDgcxcayY2xkIUukkLk60HIzWH+SUWBIU6c+M+CjCADm4Fd4f\n5zui4bKhIO8XHxhs9IcAOYXqIqjjwpZ77djNFDkw5tgsfFHpSzGpfbAYZMH3\nQxFsVpLwmj/TpN0b+8qKRJwKq8m+xQRXj6rfISWe68shg5C4ZrLW71ygv34k\nAGij\r\n=23MW\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"solid-jest/preset/browser"},"main":"dist/index.js","name":"solid-app-router","type":"module","types":"dist/index.d.ts","author":{"name":"Ryan Carniato"},"readme":"# Solid App Router\n\n> Solid 1.0 use 0.0.50 or greater\n> Solid 0.x use 0.0.46\n\n## JSX Based\n```jsx\nimport { lazy } from \"solid-js\";\nimport { render } from \"solid-js/web\";\nimport { Router, Routes, Route, Link } from \"solid-app-router\";\n\nconst Users = lazy(() => import(\"/pages/users.js\"));\nconst User = lazy(() => import(\"/pages/users/[id].js\"));\nconst UserHome = lazy(() => import(\"/pages/users/[id]/index.js\"));\nconst UserSettings = lazy(() => import(\"/pages/users/[id]/settings.js\"));\nconst UserNotFound = lazy(() => import(\"/pages/users/[id]/[...all].js\"));\nconst Home = lazy(() => import(\"/pages/index.js\"));\nconst NotFound = lazy(() => import(\"/pages/[...all].js\"));\n\nfunction App() {\n  const Routes = useRoutes(routes);\n  return (\n    <>\n      <h1>Awesome Site</h1>\n      <Link class=\"nav\" href=\"/\">\n        Home\n      </Link>\n      <Link class=\"nav\" href=\"/users\">\n        Users\n      </Link>\n      <Routes>\n        <Route path=\"/users\" element={<Users />} />\n        <Route path=\"/users/:id\" element={<User />}>\n          <Route path=\"/\" element={<UserHome />} />\n          <Route path=\"/settings\" element={<UserSettings />} />\n          <Route path=\"/*all\" element={<UserNotFound />} />\n        </Route>\n        <Route path=\"/\" element={<Home />} />\n        <Route path=\"/*all\" element={<NotFound />} />\n      </Routes>\n    </>\n  );\n}\n\nrender(\n  () => (\n    <Router>\n      <App />\n    </Router>\n  ),\n  document.getElementById(\"app\")\n);\n```\n\n## Config Based\n\nGreat for filesystem based routing:\n\n```jsx\nimport { lazy } from \"solid-js\";\nimport { render } from \"solid-js/web\";\nimport { Router, useRoutes, Link } from \"solid-app-router\";\n\nconst routes = [\n  {\n    path: \"/users\",\n    component: lazy(() => import(\"/pages/users.js\"))\n  },\n  {\n    path: \"/users/:id\",\n    component: lazy(() => import(\"/pages/users/[id].js\")),\n    children: [\n      { path: \"/\", component: lazy(() => import(\"/pages/users/[id]/index.js\")) },\n      { path: \"/settings\", component: lazy(() => import(\"/pages/users/[id]/settings.js\")) },\n      { path: \"/*all\", component: lazy(() => import(\"/pages/users/[id]/[...all].js\")) }\n    ]\n  },\n  {\n    path: \"/\",\n    component: lazy(() => import(\"/pages/index.js\"))\n  },\n  {\n    path: \"/*all\",\n    component: lazy(() => import(\"/pages/[...all].js\"))\n  }\n];\n\nfunction App() {\n  const Routes = useRoutes(routes);\n  return (\n    <>\n      <h1>Awesome Site</h1>\n      <Link class=\"nav\" href=\"/\">\n        Home\n      </Link>\n      <Link class=\"nav\" href=\"/users\">\n        Users\n      </Link>\n      <Routes />\n    </>\n  );\n}\n\nrender(\n  () => (\n    <Router>\n      <App />\n    </Router>\n  ),\n  document.getElementById(\"app\")\n);\n```\n\nTODO: Docs","exports":{".":{"solid":"./dist/index.jsx","default":"./dist/index.js"}},"gitHead":"119e860d07f08b525c4672fe6b35f099bb6f8d11","license":"MIT","scripts":{"test":"jest && npm run test:types","build":"tsc && rollup -c","test:types":"tsc --project tsconfig.test.json","test:watch":"jest --watch","test:coverage":"jest --coverage && npm run test:types","prepublishOnly":"npm run build"},"_npmUser":{"name":"ryansolid","email":"ryansolid@gmail.com"},"homepage":"https://github.com/solidjs/solid-app-router#readme","repository":{"url":"git+https://github.com/solidjs/solid-app-router.git","type":"git"},"_npmVersion":"7.6.0","description":"Config driven router for SolidJS","directories":{},"maintainers":[{"name":"ryansolid","email":"ryansolid@gmail.com"}],"sideEffects":false,"_nodeVersion":"15.11.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rollup":"^2.52.1","solid-js":"^1.0.3","solid-jest":"^0.1.1","typescript":"~4.3.4","@babel/core":"^7.14.6","@types/jest":"^26.0.16","@types/node":"^15.12.4","babel-preset-solid":"^1.0.1","@rollup/plugin-babel":"5.3.0","rollup-plugin-terser":"^7.0.2","@babel/preset-typescript":"^7.14.5","@rollup/plugin-node-resolve":"13.0.0"},"peerDependencies":{"solid-js":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/solid-app-router_0.1.0-alpha.2_1626515767609_0.3415872469983521","host":"s3://npm-registry-packages"},"_id":"solid-app-router@0.1.0-alpha.2","version":"0.1.0-alpha.2"}