@bleedingdev/modern-js-renderer-solid 0.0.0-stage → 3.9.3-ultramodern.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. package/dist/esm/actions.js +282 -0
  2. package/dist/esm/application-router.js +30 -0
  3. package/dist/esm/client.js +49 -0
  4. package/dist/esm/entry-application.js +60 -0
  5. package/dist/esm/entry-client.js +24 -0
  6. package/dist/esm/federation-context.js +25 -0
  7. package/dist/esm/federation-ssr.js +92 -0
  8. package/dist/esm/federation.js +87 -0
  9. package/dist/esm/i18n/I18nProvider.js +33 -0
  10. package/dist/esm/i18n/LocalizedLink.js +52 -0
  11. package/dist/esm/i18n/context.js +3 -0
  12. package/dist/esm/i18n/index.js +8 -0
  13. package/dist/esm/i18n/languageSync.js +50 -0
  14. package/dist/esm/i18n/types.js +0 -0
  15. package/dist/esm/i18n/useI18n.js +74 -0
  16. package/dist/esm/index.js +58 -0
  17. package/dist/esm/manifest.js +150 -0
  18. package/dist/esm/route-completion.js +151 -0
  19. package/dist/esm/route-data-error.js +108 -0
  20. package/dist/esm/router-binding/Asset.js +202 -0
  21. package/dist/esm/router-binding/CatchBoundary.js +94 -0
  22. package/dist/esm/router-binding/ClientOnly.js +26 -0
  23. package/dist/esm/router-binding/HeadContent.js +8 -0
  24. package/dist/esm/router-binding/LICENSE +21 -0
  25. package/dist/esm/router-binding/Match.js +319 -0
  26. package/dist/esm/router-binding/Matches.js +124 -0
  27. package/dist/esm/router-binding/PROVENANCE.json +94 -0
  28. package/dist/esm/router-binding/RouterProvider.js +52 -0
  29. package/dist/esm/router-binding/SafeFragment.js +5 -0
  30. package/dist/esm/router-binding/ScriptOnce.js +15 -0
  31. package/dist/esm/router-binding/Scripts.js +30 -0
  32. package/dist/esm/router-binding/ScrollRestoration.js +16 -0
  33. package/dist/esm/router-binding/Transitioner.js +109 -0
  34. package/dist/esm/router-binding/awaited.js +48 -0
  35. package/dist/esm/router-binding/fileRoute.js +83 -0
  36. package/dist/esm/router-binding/flightData.js +23 -0
  37. package/dist/esm/router-binding/headContentUtils.js +168 -0
  38. package/dist/esm/router-binding/history.js +0 -0
  39. package/dist/esm/router-binding/index.js +35 -0
  40. package/dist/esm/router-binding/lazyRouteComponent.js +30 -0
  41. package/dist/esm/router-binding/link.js +387 -0
  42. package/dist/esm/router-binding/matchContext.js +7 -0
  43. package/dist/esm/router-binding/nonRouteComponentContext.js +13 -0
  44. package/dist/esm/router-binding/not-found.js +35 -0
  45. package/dist/esm/router-binding/publicMatchData.js +447 -0
  46. package/dist/esm/router-binding/registryTransfer.js +223 -0
  47. package/dist/esm/router-binding/renderRouteNotFound.js +23 -0
  48. package/dist/esm/router-binding/route.js +143 -0
  49. package/dist/esm/router-binding/router.js +14 -0
  50. package/dist/esm/router-binding/routerContext.js +3 -0
  51. package/dist/esm/router-binding/routerOptions.js +0 -0
  52. package/dist/esm/router-binding/routerStores.js +50 -0
  53. package/dist/esm/router-binding/scroll-restoration.js +13 -0
  54. package/dist/esm/router-binding/typePrimitives.js +0 -0
  55. package/dist/esm/router-binding/useBlocker.js +152 -0
  56. package/dist/esm/router-binding/useCanGoBack.js +7 -0
  57. package/dist/esm/router-binding/useLoaderData.js +8 -0
  58. package/dist/esm/router-binding/useLoaderDeps.js +8 -0
  59. package/dist/esm/router-binding/useLocation.js +14 -0
  60. package/dist/esm/router-binding/useMatch.js +28 -0
  61. package/dist/esm/router-binding/useNavigate.js +25 -0
  62. package/dist/esm/router-binding/useParams.js +11 -0
  63. package/dist/esm/router-binding/useRouteContext.js +8 -0
  64. package/dist/esm/router-binding/useRouter.js +10 -0
  65. package/dist/esm/router-binding/useRouterState.js +19 -0
  66. package/dist/esm/router-binding/useSearch.js +11 -0
  67. package/dist/esm/router-binding/utils.js +23 -0
  68. package/dist/esm/router.js +187 -0
  69. package/dist/esm-node/actions.js +263 -0
  70. package/dist/esm-node/application-router.js +30 -0
  71. package/dist/esm-node/client.js +49 -0
  72. package/dist/esm-node/entry-application.js +110 -0
  73. package/dist/esm-node/entry-client.js +24 -0
  74. package/dist/esm-node/entry-server.js +47 -0
  75. package/dist/esm-node/federation-context.js +25 -0
  76. package/dist/esm-node/federation-ssr.js +92 -0
  77. package/dist/esm-node/federation.js +87 -0
  78. package/dist/esm-node/i18n/I18nProvider.js +42 -0
  79. package/dist/esm-node/i18n/LocalizedLink.js +88 -0
  80. package/dist/esm-node/i18n/context.js +3 -0
  81. package/dist/esm-node/i18n/index.js +8 -0
  82. package/dist/esm-node/i18n/languageSync.js +50 -0
  83. package/dist/esm-node/i18n/types.js +1 -0
  84. package/dist/esm-node/i18n/useI18n.js +74 -0
  85. package/dist/esm-node/index.js +58 -0
  86. package/dist/esm-node/manifest.js +150 -0
  87. package/dist/esm-node/native-promise-serialization.js +113 -0
  88. package/dist/esm-node/plugin/compiler.js +209 -0
  89. package/dist/esm-node/plugin/create.js +236 -0
  90. package/dist/esm-node/plugin/index.js +70 -0
  91. package/dist/esm-node/plugin/profile.js +51 -0
  92. package/dist/esm-node/route-completion.js +161 -0
  93. package/dist/esm-node/route-data-error.js +108 -0
  94. package/dist/esm-node/router-binding/Asset.js +172 -0
  95. package/dist/esm-node/router-binding/CatchBoundary.js +136 -0
  96. package/dist/esm-node/router-binding/ClientOnly.js +46 -0
  97. package/dist/esm-node/router-binding/HeadContent.js +8 -0
  98. package/dist/esm-node/router-binding/LICENSE +21 -0
  99. package/dist/esm-node/router-binding/Match.js +660 -0
  100. package/dist/esm-node/router-binding/Matches.js +161 -0
  101. package/dist/esm-node/router-binding/PROVENANCE.json +94 -0
  102. package/dist/esm-node/router-binding/RouterProvider.js +88 -0
  103. package/dist/esm-node/router-binding/SafeFragment.js +5 -0
  104. package/dist/esm-node/router-binding/ScriptOnce.js +16 -0
  105. package/dist/esm-node/router-binding/Scripts.js +49 -0
  106. package/dist/esm-node/router-binding/ScrollRestoration.js +16 -0
  107. package/dist/esm-node/router-binding/Transitioner.js +109 -0
  108. package/dist/esm-node/router-binding/awaited.js +75 -0
  109. package/dist/esm-node/router-binding/fileRoute.js +83 -0
  110. package/dist/esm-node/router-binding/flightData.js +23 -0
  111. package/dist/esm-node/router-binding/headContentUtils.js +168 -0
  112. package/dist/esm-node/router-binding/history.js +1 -0
  113. package/dist/esm-node/router-binding/index.js +35 -0
  114. package/dist/esm-node/router-binding/lazyRouteComponent.js +30 -0
  115. package/dist/esm-node/router-binding/link.js +399 -0
  116. package/dist/esm-node/router-binding/matchContext.js +7 -0
  117. package/dist/esm-node/router-binding/nonRouteComponentContext.js +22 -0
  118. package/dist/esm-node/router-binding/not-found.js +49 -0
  119. package/dist/esm-node/router-binding/publicMatchData.js +447 -0
  120. package/dist/esm-node/router-binding/registryTransfer.js +223 -0
  121. package/dist/esm-node/router-binding/renderRouteNotFound.js +22 -0
  122. package/dist/esm-node/router-binding/route.js +162 -0
  123. package/dist/esm-node/router-binding/router.js +14 -0
  124. package/dist/esm-node/router-binding/routerContext.js +3 -0
  125. package/dist/esm-node/router-binding/routerOptions.js +1 -0
  126. package/dist/esm-node/router-binding/routerStores.js +50 -0
  127. package/dist/esm-node/router-binding/scroll-restoration.js +12 -0
  128. package/dist/esm-node/router-binding/typePrimitives.js +1 -0
  129. package/dist/esm-node/router-binding/useBlocker.js +152 -0
  130. package/dist/esm-node/router-binding/useCanGoBack.js +7 -0
  131. package/dist/esm-node/router-binding/useLoaderData.js +8 -0
  132. package/dist/esm-node/router-binding/useLoaderDeps.js +8 -0
  133. package/dist/esm-node/router-binding/useLocation.js +14 -0
  134. package/dist/esm-node/router-binding/useMatch.js +28 -0
  135. package/dist/esm-node/router-binding/useNavigate.js +25 -0
  136. package/dist/esm-node/router-binding/useParams.js +11 -0
  137. package/dist/esm-node/router-binding/useRouteContext.js +8 -0
  138. package/dist/esm-node/router-binding/useRouter.js +10 -0
  139. package/dist/esm-node/router-binding/useRouterState.js +19 -0
  140. package/dist/esm-node/router-binding/useSearch.js +11 -0
  141. package/dist/esm-node/router-binding/utils.js +23 -0
  142. package/dist/esm-node/router.js +187 -0
  143. package/dist/esm-node/server.js +396 -0
  144. package/dist/types/actions.d.ts +45 -0
  145. package/dist/types/application-router.d.ts +5 -0
  146. package/dist/types/client.d.ts +23 -0
  147. package/dist/types/entry-application.d.ts +10 -0
  148. package/dist/types/entry-client.d.ts +5 -0
  149. package/dist/types/entry-server.d.ts +5 -0
  150. package/dist/types/federation-context.d.ts +16 -0
  151. package/dist/types/federation-ssr.d.ts +19 -0
  152. package/dist/types/federation.d.ts +30 -0
  153. package/dist/types/i18n/I18nProvider.d.ts +21 -0
  154. package/dist/types/i18n/LocalizedLink.d.ts +15 -0
  155. package/dist/types/i18n/context.d.ts +11 -0
  156. package/dist/types/i18n/index.d.ts +9 -0
  157. package/dist/types/i18n/languageSync.d.ts +31 -0
  158. package/dist/types/i18n/types.d.ts +33 -0
  159. package/dist/types/i18n/useI18n.d.ts +24 -0
  160. package/dist/types/index.d.ts +41 -0
  161. package/dist/types/manifest.d.ts +55 -0
  162. package/dist/types/native-promise-serialization.d.ts +9 -0
  163. package/dist/types/plugin/compiler.d.ts +6 -0
  164. package/dist/types/plugin/create.d.ts +21 -0
  165. package/dist/types/plugin/index.d.ts +3 -0
  166. package/dist/types/plugin/lazy-modules.d.cts +15 -0
  167. package/dist/types/plugin/preserve-import-loader.d.cts +3 -0
  168. package/dist/types/plugin/profile.d.ts +2 -0
  169. package/dist/types/plugin/solid-loader.d.cts +2 -0
  170. package/dist/types/plugin/svg-component-template.d.cts +6 -0
  171. package/dist/types/route-completion.d.ts +21 -0
  172. package/dist/types/route-data-error.d.ts +17 -0
  173. package/dist/types/router-binding/Asset.d.ts +3 -0
  174. package/dist/types/router-binding/CatchBoundary.d.ts +13 -0
  175. package/dist/types/router-binding/ClientOnly.d.ts +31 -0
  176. package/dist/types/router-binding/HeadContent.d.ts +13 -0
  177. package/dist/types/router-binding/Match.d.ts +6 -0
  178. package/dist/types/router-binding/Matches.d.ts +26 -0
  179. package/dist/types/router-binding/RouterProvider.d.ts +11 -0
  180. package/dist/types/router-binding/SafeFragment.d.ts +2 -0
  181. package/dist/types/router-binding/ScriptOnce.d.ts +6 -0
  182. package/dist/types/router-binding/Scripts.d.ts +2 -0
  183. package/dist/types/router-binding/ScrollRestoration.d.ts +14 -0
  184. package/dist/types/router-binding/Transitioner.d.ts +2 -0
  185. package/dist/types/router-binding/awaited.d.ts +11 -0
  186. package/dist/types/router-binding/fileRoute.d.ts +54 -0
  187. package/dist/types/router-binding/flightData.d.ts +38 -0
  188. package/dist/types/router-binding/headContentUtils.d.ts +15 -0
  189. package/dist/types/router-binding/history.d.ts +8 -0
  190. package/dist/types/router-binding/index.d.ts +46 -0
  191. package/dist/types/router-binding/lazyRouteComponent.d.ts +2 -0
  192. package/dist/types/router-binding/link.d.ts +43 -0
  193. package/dist/types/router-binding/matchContext.d.ts +7 -0
  194. package/dist/types/router-binding/nonRouteComponentContext.d.ts +5 -0
  195. package/dist/types/router-binding/not-found.d.ts +11 -0
  196. package/dist/types/router-binding/publicMatchData.d.ts +19 -0
  197. package/dist/types/router-binding/registryTransfer.d.ts +49 -0
  198. package/dist/types/router-binding/renderRouteNotFound.d.ts +11 -0
  199. package/dist/types/router-binding/route.d.ts +105 -0
  200. package/dist/types/router-binding/router.d.ts +70 -0
  201. package/dist/types/router-binding/routerContext.d.ts +3 -0
  202. package/dist/types/router-binding/routerOptions.d.ts +6 -0
  203. package/dist/types/router-binding/routerStores.d.ts +2 -0
  204. package/dist/types/router-binding/scroll-restoration.d.ts +2 -0
  205. package/dist/types/router-binding/typePrimitives.d.ts +10 -0
  206. package/dist/types/router-binding/useBlocker.d.ts +70 -0
  207. package/dist/types/router-binding/useCanGoBack.d.ts +2 -0
  208. package/dist/types/router-binding/useLoaderData.d.ts +8 -0
  209. package/dist/types/router-binding/useLoaderDeps.d.ts +8 -0
  210. package/dist/types/router-binding/useLocation.d.ts +7 -0
  211. package/dist/types/router-binding/useMatch.d.ts +10 -0
  212. package/dist/types/router-binding/useNavigate.d.ts +5 -0
  213. package/dist/types/router-binding/useParams.d.ts +9 -0
  214. package/dist/types/router-binding/useRouteContext.d.ts +4 -0
  215. package/dist/types/router-binding/useRouter.d.ts +4 -0
  216. package/dist/types/router-binding/useRouterState.d.ts +8 -0
  217. package/dist/types/router-binding/useSearch.d.ts +9 -0
  218. package/dist/types/router-binding/utils.d.ts +25 -0
  219. package/dist/types/router.d.ts +31 -0
  220. package/dist/types/server.d.ts +47 -0
  221. package/package.json +130 -4
  222. package/src/actions.tsx +441 -0
  223. package/src/application-router.tsx +47 -0
  224. package/src/client.ts +106 -0
  225. package/src/entry-application.tsx +73 -0
  226. package/src/entry-client.tsx +49 -0
  227. package/src/entry-server.tsx +85 -0
  228. package/src/federation-context.ts +47 -0
  229. package/src/federation-ssr.ts +136 -0
  230. package/src/federation.tsx +197 -0
  231. package/src/i18n/I18nProvider.tsx +54 -0
  232. package/src/i18n/LocalizedLink.tsx +83 -0
  233. package/src/i18n/context.ts +13 -0
  234. package/src/i18n/index.ts +31 -0
  235. package/src/i18n/languageSync.ts +113 -0
  236. package/src/i18n/types.ts +35 -0
  237. package/src/i18n/useI18n.ts +121 -0
  238. package/src/index.ts +41 -0
  239. package/src/manifest.ts +337 -0
  240. package/src/native-promise-serialization.ts +167 -0
  241. package/src/plugin/compiler.ts +320 -0
  242. package/src/plugin/create.ts +271 -0
  243. package/src/plugin/index.ts +69 -0
  244. package/src/plugin/lazy-modules.cjs +146 -0
  245. package/src/plugin/preserve-import-loader.cjs +46 -0
  246. package/src/plugin/profile.ts +42 -0
  247. package/src/plugin/solid-loader.cjs +83 -0
  248. package/src/plugin/svg-component-template.cjs +19 -0
  249. package/src/route-completion.tsx +226 -0
  250. package/src/route-data-error.ts +175 -0
  251. package/src/router-binding/Asset.tsx +284 -0
  252. package/src/router-binding/CatchBoundary.tsx +130 -0
  253. package/src/router-binding/ClientOnly.tsx +76 -0
  254. package/src/router-binding/HeadContent.tsx +23 -0
  255. package/src/router-binding/LICENSE +21 -0
  256. package/src/router-binding/Match.tsx +397 -0
  257. package/src/router-binding/Matches.tsx +242 -0
  258. package/src/router-binding/PROVENANCE.json +94 -0
  259. package/src/router-binding/RouterProvider.tsx +128 -0
  260. package/src/router-binding/SafeFragment.tsx +5 -0
  261. package/src/router-binding/ScriptOnce.tsx +23 -0
  262. package/src/router-binding/Scripts.tsx +44 -0
  263. package/src/router-binding/ScrollRestoration.tsx +49 -0
  264. package/src/router-binding/Transitioner.tsx +177 -0
  265. package/src/router-binding/awaited.tsx +71 -0
  266. package/src/router-binding/fileRoute.ts +268 -0
  267. package/src/router-binding/flightData.ts +90 -0
  268. package/src/router-binding/headContentUtils.tsx +292 -0
  269. package/src/router-binding/history.ts +9 -0
  270. package/src/router-binding/index.tsx +315 -0
  271. package/src/router-binding/lazyRouteComponent.tsx +70 -0
  272. package/src/router-binding/link.tsx +865 -0
  273. package/src/router-binding/matchContext.tsx +15 -0
  274. package/src/router-binding/nonRouteComponentContext.tsx +23 -0
  275. package/src/router-binding/not-found.tsx +65 -0
  276. package/src/router-binding/publicMatchData.ts +674 -0
  277. package/src/router-binding/registryTransfer.ts +400 -0
  278. package/src/router-binding/renderRouteNotFound.tsx +53 -0
  279. package/src/router-binding/route.tsx +665 -0
  280. package/src/router-binding/router.ts +123 -0
  281. package/src/router-binding/routerContext.tsx +6 -0
  282. package/src/router-binding/routerOptions.ts +26 -0
  283. package/src/router-binding/routerStores.ts +85 -0
  284. package/src/router-binding/scroll-restoration.tsx +15 -0
  285. package/src/router-binding/typePrimitives.ts +74 -0
  286. package/src/router-binding/useBlocker.tsx +359 -0
  287. package/src/router-binding/useCanGoBack.ts +9 -0
  288. package/src/router-binding/useLoaderData.tsx +51 -0
  289. package/src/router-binding/useLoaderDeps.tsx +46 -0
  290. package/src/router-binding/useLocation.tsx +43 -0
  291. package/src/router-binding/useMatch.tsx +111 -0
  292. package/src/router-binding/useNavigate.tsx +45 -0
  293. package/src/router-binding/useParams.tsx +70 -0
  294. package/src/router-binding/useRouteContext.ts +30 -0
  295. package/src/router-binding/useRouter.tsx +17 -0
  296. package/src/router-binding/useRouterState.tsx +50 -0
  297. package/src/router-binding/useSearch.tsx +70 -0
  298. package/src/router-binding/utils.ts +59 -0
  299. package/src/router.ts +376 -0
  300. package/src/server.ts +645 -0
  301. package/README.md +0 -3
@@ -0,0 +1,23 @@
1
+ import { createComponent } from "@solidjs/web";
2
+ import { renderInNonRouteComponentContext } from "./nonRouteComponentContext.js";
3
+ import { DefaultGlobalNotFound } from "./not-found.js";
4
+ function renderRouteNotFound(router, route, data) {
5
+ if ("production" !== process.env.NODE_ENV) {
6
+ if (!route.options.notFoundComponent) {
7
+ if (router.options.defaultNotFoundComponent) {
8
+ const DefaultNotFoundComponent = router.options.defaultNotFoundComponent;
9
+ return renderInNonRouteComponentContext(()=>createComponent(DefaultNotFoundComponent, data), "notFoundComponent");
10
+ }
11
+ console.warn(`Warning: A notFoundError was encountered on the route with ID "${route.id}", but a notFoundComponent option was not configured, nor was a router level defaultNotFoundComponent configured. Consider configuring at least one of these to avoid TanStack Router's overly generic defaultNotFoundComponent (<p>Not Found</p>)`);
12
+ return createComponent(DefaultGlobalNotFound, {});
13
+ }
14
+ const NotFoundComponent = route.options.notFoundComponent;
15
+ return renderInNonRouteComponentContext(()=>createComponent(NotFoundComponent, data), "notFoundComponent");
16
+ }
17
+ if (!route.options.notFoundComponent) {
18
+ if (router.options.defaultNotFoundComponent) return createComponent(router.options.defaultNotFoundComponent, data);
19
+ return createComponent(DefaultGlobalNotFound, {});
20
+ }
21
+ return createComponent(route.options.notFoundComponent, data);
22
+ }
23
+ export { renderRouteNotFound };
@@ -0,0 +1,143 @@
1
+ import { createComponent, mergeProps } from "@solidjs/web";
2
+ import { BaseRootRoute, BaseRoute, BaseRouteApi, notFound } from "@tanstack/router-core";
3
+ import { Link } from "./link.js";
4
+ import { useLoaderData } from "./useLoaderData.js";
5
+ import { useLoaderDeps } from "./useLoaderDeps.js";
6
+ import { useMatch } from "./useMatch.js";
7
+ import { useNavigate } from "./useNavigate.js";
8
+ import { useParams } from "./useParams.js";
9
+ import { useRouteContext } from "./useRouteContext.js";
10
+ import { useRouter } from "./useRouter.js";
11
+ import { useSearch } from "./useSearch.js";
12
+ function getRouteApi(id) {
13
+ return new RouteApi({
14
+ id
15
+ });
16
+ }
17
+ class RouteApi extends BaseRouteApi {
18
+ constructor({ id }){
19
+ super({
20
+ id
21
+ }), this.useMatch = (opts)=>useMatch({
22
+ select: opts?.select,
23
+ from: this.id
24
+ }), this.useRouteContext = (opts)=>useRouteContext({
25
+ ...opts,
26
+ from: this.id
27
+ }), this.useSearch = (opts)=>useSearch({
28
+ select: opts?.select,
29
+ from: this.id
30
+ }), this.useParams = (opts)=>useParams({
31
+ select: opts?.select,
32
+ from: this.id
33
+ }), this.useLoaderDeps = (opts)=>useLoaderDeps({
34
+ ...opts,
35
+ from: this.id,
36
+ strict: false
37
+ }), this.useLoaderData = (opts)=>useLoaderData({
38
+ ...opts,
39
+ from: this.id,
40
+ strict: false
41
+ }), this.useNavigate = ()=>{
42
+ const router = useRouter();
43
+ return useNavigate({
44
+ from: router.routesById[this.id].fullPath
45
+ });
46
+ }, this.notFound = (opts)=>notFound({
47
+ routeId: this.id,
48
+ ...opts
49
+ }), this.Link = (props)=>{
50
+ const router = useRouter();
51
+ const fullPath = router.routesById[this.id].fullPath;
52
+ return createComponent(Link, mergeProps({
53
+ from: fullPath
54
+ }, props));
55
+ };
56
+ }
57
+ }
58
+ class Route extends BaseRoute {
59
+ constructor(options){
60
+ super(options), this.useMatch = (opts)=>useMatch({
61
+ select: opts?.select,
62
+ from: this.id
63
+ }), this.useRouteContext = (opts)=>useRouteContext({
64
+ ...opts,
65
+ from: this.id
66
+ }), this.useSearch = (opts)=>useSearch({
67
+ select: opts?.select,
68
+ from: this.id
69
+ }), this.useParams = (opts)=>useParams({
70
+ select: opts?.select,
71
+ from: this.id
72
+ }), this.useLoaderDeps = (opts)=>useLoaderDeps({
73
+ ...opts,
74
+ from: this.id
75
+ }), this.useLoaderData = (opts)=>useLoaderData({
76
+ ...opts,
77
+ from: this.id
78
+ }), this.useNavigate = ()=>useNavigate({
79
+ from: this.fullPath
80
+ }), this.Link = (props)=>{
81
+ const _self$ = this;
82
+ return createComponent(Link, mergeProps({
83
+ get from () {
84
+ return _self$.fullPath;
85
+ }
86
+ }, props));
87
+ };
88
+ }
89
+ }
90
+ function createRoute(options) {
91
+ return new Route(options);
92
+ }
93
+ function createRootRouteWithContext() {
94
+ return (options)=>createRootRoute(options);
95
+ }
96
+ const rootRouteWithContext = createRootRouteWithContext;
97
+ class RootRoute extends BaseRootRoute {
98
+ constructor(options){
99
+ super(options), this.useMatch = (opts)=>useMatch({
100
+ select: opts?.select,
101
+ from: this.id
102
+ }), this.useRouteContext = (opts)=>useRouteContext({
103
+ ...opts,
104
+ from: this.id
105
+ }), this.useSearch = (opts)=>useSearch({
106
+ select: opts?.select,
107
+ from: this.id
108
+ }), this.useParams = (opts)=>useParams({
109
+ select: opts?.select,
110
+ from: this.id
111
+ }), this.useLoaderDeps = (opts)=>useLoaderDeps({
112
+ ...opts,
113
+ from: this.id
114
+ }), this.useLoaderData = (opts)=>useLoaderData({
115
+ ...opts,
116
+ from: this.id
117
+ }), this.useNavigate = ()=>useNavigate({
118
+ from: this.fullPath
119
+ }), this.Link = (props)=>{
120
+ const _self$2 = this;
121
+ return createComponent(Link, mergeProps({
122
+ get from () {
123
+ return _self$2.fullPath;
124
+ }
125
+ }, props));
126
+ };
127
+ }
128
+ }
129
+ function createRouteMask(opts) {
130
+ return opts;
131
+ }
132
+ class NotFoundRoute extends Route {
133
+ constructor(options){
134
+ super({
135
+ ...options,
136
+ id: "404"
137
+ });
138
+ }
139
+ }
140
+ function createRootRoute(options) {
141
+ return new RootRoute(options);
142
+ }
143
+ export { NotFoundRoute, RootRoute, Route, RouteApi, createRootRoute, createRootRouteWithContext, createRoute, createRouteMask, getRouteApi, rootRouteWithContext };
@@ -0,0 +1,14 @@
1
+ import { RouterCore } from "@tanstack/router-core";
2
+ import { isServer } from "@tanstack/router-core/isServer";
3
+ import { assertNativeSerializationOptions, installPublicContextPublication, primeRouterFromRegistry } from "./registryTransfer.js";
4
+ import { getStoreFactory } from "./routerStores.js";
5
+ const createRouter = (options)=>new Router(options);
6
+ class Router extends RouterCore {
7
+ constructor(options){
8
+ assertNativeSerializationOptions(options);
9
+ super(options, getStoreFactory);
10
+ installPublicContextPublication(this);
11
+ if (!(isServer ?? this.isServer)) primeRouterFromRegistry(this);
12
+ }
13
+ }
14
+ export { Router, createRouter };
@@ -0,0 +1,3 @@
1
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
2
+ const routerContext = __rspack_external_solid_js_0ac0db99.createContext(null);
3
+ export { routerContext };
File without changes
@@ -0,0 +1,50 @@
1
+ import { createNonReactiveMutableStore, createNonReactiveReadonlyStore } from "@tanstack/router-core";
2
+ import { isServer } from "@tanstack/router-core/isServer";
3
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
4
+ const getStoreFactory = (opts)=>{
5
+ if (isServer ?? opts.isServer) return {
6
+ createMutableStore: createNonReactiveMutableStore,
7
+ createReadonlyStore: createNonReactiveReadonlyStore,
8
+ batch: (fn)=>fn()
9
+ };
10
+ let writeEpoch = 0;
11
+ function createSolidMutableStore(initialValue) {
12
+ const [signal, setSignal] = __rspack_external_solid_js_0ac0db99.createSignal(initialValue);
13
+ let current = initialValue;
14
+ let dirty = false;
15
+ return {
16
+ get: ()=>{
17
+ const settled = signal();
18
+ if (dirty && settled === current) dirty = false;
19
+ return dirty ? current : settled;
20
+ },
21
+ set: (next)=>{
22
+ current = "function" == typeof next ? next(current) : next;
23
+ dirty = true;
24
+ writeEpoch++;
25
+ setSignal(()=>current);
26
+ }
27
+ };
28
+ }
29
+ function createSolidReadonlyStore(read) {
30
+ const memo = __rspack_external_solid_js_0ac0db99.createRoot(()=>__rspack_external_solid_js_0ac0db99.createMemo(read));
31
+ let cache;
32
+ let cachedAt = -1;
33
+ return {
34
+ get: ()=>{
35
+ memo();
36
+ if (cachedAt !== writeEpoch) {
37
+ cache = __rspack_external_solid_js_0ac0db99.untrack(read);
38
+ cachedAt = writeEpoch;
39
+ }
40
+ return cache;
41
+ }
42
+ };
43
+ }
44
+ return {
45
+ createMutableStore: createSolidMutableStore,
46
+ createReadonlyStore: createSolidReadonlyStore,
47
+ batch: (fn)=>fn()
48
+ };
49
+ };
50
+ export { getStoreFactory };
@@ -0,0 +1,13 @@
1
+ import { createComponent } from "@solidjs/web";
2
+ import { getScrollRestorationScriptForRouter } from "@tanstack/router-core/scroll-restoration-script";
3
+ import { ScriptOnce } from "./ScriptOnce.js";
4
+ import { useRouter } from "./useRouter.js";
5
+ function ScrollRestoration() {
6
+ const router = useRouter();
7
+ const script = getScrollRestorationScriptForRouter(router);
8
+ if (!script) return null;
9
+ return createComponent(ScriptOnce, {
10
+ children: script
11
+ });
12
+ }
13
+ export { ScrollRestoration };
File without changes
@@ -0,0 +1,152 @@
1
+ import { memo } from "@solidjs/web";
2
+ import { useRouter } from "./useRouter.js";
3
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
4
+ function _resolveBlockerOpts(opts, condition) {
5
+ if (void 0 === opts) return {
6
+ shouldBlockFn: ()=>true,
7
+ withResolver: false
8
+ };
9
+ if ("shouldBlockFn" in opts) return opts;
10
+ if ("function" == typeof opts) {
11
+ const shouldBlock = Boolean(condition ?? true);
12
+ const _customBlockerFn = async ()=>{
13
+ if (shouldBlock) return await opts();
14
+ return false;
15
+ };
16
+ return {
17
+ shouldBlockFn: _customBlockerFn,
18
+ enableBeforeUnload: shouldBlock,
19
+ withResolver: false
20
+ };
21
+ }
22
+ const shouldBlock = __rspack_external_solid_js_0ac0db99.createMemo(()=>Boolean(opts.condition ?? true));
23
+ const _customBlockerFn = async ()=>{
24
+ if (shouldBlock() && void 0 !== opts.blockerFn) return await opts.blockerFn();
25
+ return shouldBlock();
26
+ };
27
+ return {
28
+ get shouldBlockFn () {
29
+ return _customBlockerFn;
30
+ },
31
+ get enableBeforeUnload () {
32
+ return shouldBlock();
33
+ },
34
+ get withResolver () {
35
+ return void 0 === opts.blockerFn;
36
+ }
37
+ };
38
+ }
39
+ function useBlocker(opts, condition) {
40
+ const props = __rspack_external_solid_js_0ac0db99.merge({
41
+ enableBeforeUnload: true,
42
+ disabled: false,
43
+ withResolver: false
44
+ }, _resolveBlockerOpts(opts, condition));
45
+ const router = useRouter();
46
+ const [resolver, setResolver] = __rspack_external_solid_js_0ac0db99.createSignal({
47
+ status: "idle",
48
+ current: void 0,
49
+ next: void 0,
50
+ action: void 0,
51
+ proceed: void 0,
52
+ reset: void 0
53
+ });
54
+ let disposeBlock;
55
+ __rspack_external_solid_js_0ac0db99.createEffect(()=>props.disabled, (disabled)=>{
56
+ disposeBlock?.();
57
+ disposeBlock = void 0;
58
+ if (disabled) return;
59
+ const blockerFnComposed = async (blockerFnArgs)=>{
60
+ function getLocation(location) {
61
+ const parsedLocation = router.parseLocation(location);
62
+ const [, rawParams, foundRoute] = router.getMatchedRoutes(parsedLocation.pathname);
63
+ if (void 0 === foundRoute) return {
64
+ routeId: "__notFound__",
65
+ fullPath: parsedLocation.pathname,
66
+ pathname: parsedLocation.pathname,
67
+ params: rawParams,
68
+ search: parsedLocation.search
69
+ };
70
+ return {
71
+ routeId: foundRoute.id,
72
+ fullPath: foundRoute.fullPath,
73
+ pathname: parsedLocation.pathname,
74
+ params: rawParams,
75
+ search: parsedLocation.search
76
+ };
77
+ }
78
+ const current = getLocation(blockerFnArgs.currentLocation);
79
+ const next = getLocation(blockerFnArgs.nextLocation);
80
+ if ("__notFound__" === current.routeId && "__notFound__" !== next.routeId) return false;
81
+ const shouldBlock = await props.shouldBlockFn({
82
+ action: blockerFnArgs.action,
83
+ current,
84
+ next
85
+ });
86
+ if (!props.withResolver) return shouldBlock;
87
+ if (!shouldBlock) return false;
88
+ const promise = new Promise((resolve)=>{
89
+ setResolver({
90
+ status: "blocked",
91
+ current,
92
+ next,
93
+ action: blockerFnArgs.action,
94
+ proceed: ()=>resolve(false),
95
+ reset: ()=>resolve(true)
96
+ });
97
+ });
98
+ const canNavigateAsync = await promise;
99
+ setResolver({
100
+ status: "idle",
101
+ current: void 0,
102
+ next: void 0,
103
+ action: void 0,
104
+ proceed: void 0,
105
+ reset: void 0
106
+ });
107
+ return canNavigateAsync;
108
+ };
109
+ disposeBlock = router.history.block({
110
+ blockerFn: blockerFnComposed,
111
+ enableBeforeUnload: props.enableBeforeUnload
112
+ });
113
+ });
114
+ __rspack_external_solid_js_0ac0db99.onSettled(()=>()=>{
115
+ disposeBlock?.();
116
+ disposeBlock = void 0;
117
+ });
118
+ return resolver;
119
+ }
120
+ const _resolvePromptBlockerArgs = (props)=>{
121
+ if ("shouldBlockFn" in props) return props;
122
+ const shouldBlock = __rspack_external_solid_js_0ac0db99.createMemo(()=>Boolean(props.condition ?? true));
123
+ const _customBlockerFn = async ()=>{
124
+ if (shouldBlock() && void 0 !== props.blockerFn) return await props.blockerFn();
125
+ return shouldBlock;
126
+ };
127
+ return {
128
+ shouldBlockFn: _customBlockerFn,
129
+ get enableBeforeUnload () {
130
+ return shouldBlock();
131
+ },
132
+ get withResolver () {
133
+ return void 0 === props.blockerFn;
134
+ }
135
+ };
136
+ };
137
+ const useBlocker_Block = function(opts) {
138
+ const propsWithChildren = {
139
+ get children () {
140
+ return opts.children;
141
+ }
142
+ };
143
+ const args = _resolvePromptBlockerArgs(opts);
144
+ const resolver = useBlocker(args);
145
+ const children = __rspack_external_solid_js_0ac0db99.createMemo(()=>{
146
+ const child = propsWithChildren.children;
147
+ if (resolver && "function" == typeof child) return child(resolver());
148
+ return child;
149
+ });
150
+ return memo(children);
151
+ };
152
+ export { useBlocker, useBlocker_Block as Block };
@@ -0,0 +1,7 @@
1
+ import { useRouter } from "./useRouter.js";
2
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
3
+ function useCanGoBack() {
4
+ const router = useRouter();
5
+ return __rspack_external_solid_js_0ac0db99.createMemo(()=>0 !== router.stores.location.get().state.__TSR_index);
6
+ }
7
+ export { useCanGoBack };
@@ -0,0 +1,8 @@
1
+ import { useMatch } from "./useMatch.js";
2
+ function useLoaderData(opts) {
3
+ return useMatch({
4
+ ...opts,
5
+ select: (match)=>opts.select ? opts.select(match.loaderData) : match.loaderData
6
+ });
7
+ }
8
+ export { useLoaderData };
@@ -0,0 +1,8 @@
1
+ import { useMatch } from "./useMatch.js";
2
+ function useLoaderDeps(opts) {
3
+ return useMatch({
4
+ ...opts,
5
+ select: (match)=>opts.select ? opts.select(match.loaderDeps) : match.loaderDeps
6
+ });
7
+ }
8
+ export { useLoaderDeps };
@@ -0,0 +1,14 @@
1
+ import { replaceEqualDeep } from "@tanstack/router-core";
2
+ import { useRouter } from "./useRouter.js";
3
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
4
+ function useLocation(opts) {
5
+ const router = useRouter();
6
+ if (!opts?.select) return ()=>router.stores.location.get();
7
+ const select = opts.select;
8
+ return __rspack_external_solid_js_0ac0db99.createMemo((prev)=>{
9
+ const res = select(router.stores.location.get());
10
+ if (void 0 === prev) return res;
11
+ return replaceEqualDeep(prev, res);
12
+ });
13
+ }
14
+ export { useLocation };
@@ -0,0 +1,28 @@
1
+ import { invariant, replaceEqualDeep } from "@tanstack/router-core";
2
+ import { nearestMatchContext } from "./matchContext.js";
3
+ import { useRouter } from "./useRouter.js";
4
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
5
+ function useMatch(opts) {
6
+ const router = useRouter();
7
+ const contextMatch = __rspack_external_solid_js_0ac0db99.useContext(nearestMatchContext);
8
+ const nearestMatch = opts.from ? void 0 : contextMatch;
9
+ const match = ()=>{
10
+ if (opts.from) return router.stores.getMatchStore(opts.from).get();
11
+ return nearestMatch?.[1]();
12
+ };
13
+ __rspack_external_solid_js_0ac0db99.createEffect(match, (selectedMatch)=>{
14
+ if (void 0 !== selectedMatch) return;
15
+ if (opts.shouldThrow ?? true) {
16
+ if ("production" !== process.env.NODE_ENV) throw new Error(`Invariant failed: Could not find ${opts.from ? `an active match from "${opts.from}"` : "a nearest match!"}`);
17
+ invariant();
18
+ }
19
+ });
20
+ return __rspack_external_solid_js_0ac0db99.createMemo((prev)=>{
21
+ const selectedMatch = match();
22
+ if (void 0 === selectedMatch) return;
23
+ const res = opts.select ? opts.select(selectedMatch) : selectedMatch;
24
+ if (void 0 === prev) return res;
25
+ return replaceEqualDeep(prev, res);
26
+ });
27
+ }
28
+ export { useMatch };
@@ -0,0 +1,25 @@
1
+ import { useRouter } from "./useRouter.js";
2
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
3
+ function useNavigate(_defaultOpts) {
4
+ const router = useRouter();
5
+ const navigate = (options)=>{
6
+ const from = options.from ?? _defaultOpts?.from;
7
+ return router.navigate({
8
+ ...options,
9
+ ...void 0 === from ? {} : {
10
+ from
11
+ }
12
+ });
13
+ };
14
+ return navigate;
15
+ }
16
+ function Navigate(props) {
17
+ const { navigate } = useRouter();
18
+ __rspack_external_solid_js_0ac0db99.onSettled(()=>{
19
+ navigate({
20
+ ...props
21
+ });
22
+ });
23
+ return null;
24
+ }
25
+ export { Navigate, useNavigate };
@@ -0,0 +1,11 @@
1
+ import { useMatch } from "./useMatch.js";
2
+ function useParams(opts) {
3
+ return useMatch({
4
+ ...opts,
5
+ select: (match)=>{
6
+ const params = false === opts.strict ? match.params : match._strictParams;
7
+ return opts.select ? opts.select(params) : params;
8
+ }
9
+ });
10
+ }
11
+ export { useParams };
@@ -0,0 +1,8 @@
1
+ import { useMatch } from "./useMatch.js";
2
+ function useRouteContext(opts) {
3
+ return useMatch({
4
+ ...opts,
5
+ select: (match)=>opts.select ? opts.select(match.context) : match.context
6
+ });
7
+ }
8
+ export { useRouteContext };
@@ -0,0 +1,10 @@
1
+ import { routerContext } from "./routerContext.js";
2
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
3
+ function useRouter(opts) {
4
+ const value = __rspack_external_solid_js_0ac0db99.useContext(routerContext);
5
+ if ("production" !== process.env.NODE_ENV) {
6
+ if ((opts?.warn ?? true) && !value) console.warn("Warning: useRouter must be used inside a <RouterProvider> component!");
7
+ }
8
+ return value;
9
+ }
10
+ export { useRouter };
@@ -0,0 +1,19 @@
1
+ import { replaceEqualDeep } from "@tanstack/router-core";
2
+ import { useRouter } from "./useRouter.js";
3
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
4
+ function useRouterState(opts) {
5
+ const contextRouter = useRouter({
6
+ warn: opts?.router === void 0
7
+ });
8
+ const router = opts?.router || contextRouter;
9
+ if (!opts?.select) return ()=>router.stores.__store.get();
10
+ const select = opts.select;
11
+ return __rspack_external_solid_js_0ac0db99.createMemo((prev)=>{
12
+ const res = select(router.stores.__store.get());
13
+ if (void 0 === prev) return res;
14
+ return replaceEqualDeep(prev, res);
15
+ }, {
16
+ transparent: true
17
+ });
18
+ }
19
+ export { useRouterState };
@@ -0,0 +1,11 @@
1
+ import { useMatch } from "./useMatch.js";
2
+ function useSearch(opts) {
3
+ return useMatch({
4
+ ...opts,
5
+ select: (match)=>{
6
+ const search = match.search;
7
+ return opts.select ? opts.select(search) : search;
8
+ }
9
+ });
10
+ }
11
+ export { useSearch };
@@ -0,0 +1,23 @@
1
+ import * as __rspack_external_solid_js_0ac0db99 from "solid-js";
2
+ function useIntersectionObserver(ref, callback, disabled) {
3
+ const isIntersectionObserverAvailable = "function" == typeof IntersectionObserver;
4
+ let observerRef = null;
5
+ __rspack_external_solid_js_0ac0db99.createEffect(()=>[
6
+ ref(),
7
+ disabled()
8
+ ], ([r, isDisabled])=>{
9
+ if (isDisabled || !r || !isIntersectionObserverAvailable) return ()=>callback();
10
+ observerRef = new IntersectionObserver((entries)=>{
11
+ callback(entries.pop());
12
+ }, {
13
+ rootMargin: "100px"
14
+ });
15
+ observerRef.observe(r);
16
+ return ()=>{
17
+ observerRef?.disconnect();
18
+ callback();
19
+ };
20
+ });
21
+ return ()=>observerRef;
22
+ }
23
+ export { useIntersectionObserver };