@tanstack/solid-router 1.167.1 → 1.167.2

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 (200) hide show
  1. package/dist/cjs/Asset.cjs +84 -127
  2. package/dist/cjs/Asset.cjs.map +1 -1
  3. package/dist/cjs/CatchBoundary.cjs +50 -68
  4. package/dist/cjs/CatchBoundary.cjs.map +1 -1
  5. package/dist/cjs/ClientOnly.cjs +61 -39
  6. package/dist/cjs/ClientOnly.cjs.map +1 -1
  7. package/dist/cjs/HeadContent.cjs +25 -19
  8. package/dist/cjs/HeadContent.cjs.map +1 -1
  9. package/dist/cjs/HeadContent.dev.cjs +38 -33
  10. package/dist/cjs/HeadContent.dev.cjs.map +1 -1
  11. package/dist/cjs/Match.cjs +330 -398
  12. package/dist/cjs/Match.cjs.map +1 -1
  13. package/dist/cjs/Matches.cjs +109 -151
  14. package/dist/cjs/Matches.cjs.map +1 -1
  15. package/dist/cjs/RouterProvider.cjs +28 -40
  16. package/dist/cjs/RouterProvider.cjs.map +1 -1
  17. package/dist/cjs/SafeFragment.cjs +7 -5
  18. package/dist/cjs/SafeFragment.cjs.map +1 -1
  19. package/dist/cjs/ScriptOnce.cjs +18 -20
  20. package/dist/cjs/ScriptOnce.cjs.map +1 -1
  21. package/dist/cjs/Scripts.cjs +41 -54
  22. package/dist/cjs/Scripts.cjs.map +1 -1
  23. package/dist/cjs/ScrollRestoration.cjs +26 -28
  24. package/dist/cjs/ScrollRestoration.cjs.map +1 -1
  25. package/dist/cjs/Transitioner.cjs +94 -129
  26. package/dist/cjs/Transitioner.cjs.map +1 -1
  27. package/dist/cjs/_virtual/_rolldown/runtime.cjs +23 -0
  28. package/dist/cjs/awaited.cjs +24 -51
  29. package/dist/cjs/awaited.cjs.map +1 -1
  30. package/dist/cjs/fileRoute.cjs +96 -91
  31. package/dist/cjs/fileRoute.cjs.map +1 -1
  32. package/dist/cjs/headContentUtils.cjs +132 -170
  33. package/dist/cjs/headContentUtils.cjs.map +1 -1
  34. package/dist/cjs/index.cjs +245 -176
  35. package/dist/cjs/index.dev.cjs +245 -176
  36. package/dist/cjs/lazyRouteComponent.cjs +48 -54
  37. package/dist/cjs/lazyRouteComponent.cjs.map +1 -1
  38. package/dist/cjs/link.cjs +304 -331
  39. package/dist/cjs/link.cjs.map +1 -1
  40. package/dist/cjs/matchContext.cjs +9 -23
  41. package/dist/cjs/matchContext.cjs.map +1 -1
  42. package/dist/cjs/not-found.cjs +26 -34
  43. package/dist/cjs/not-found.cjs.map +1 -1
  44. package/dist/cjs/renderRouteNotFound.cjs +23 -16
  45. package/dist/cjs/renderRouteNotFound.cjs.map +1 -1
  46. package/dist/cjs/route.cjs +200 -215
  47. package/dist/cjs/route.cjs.map +1 -1
  48. package/dist/cjs/router.cjs +18 -16
  49. package/dist/cjs/router.cjs.map +1 -1
  50. package/dist/cjs/routerContext.cjs +8 -22
  51. package/dist/cjs/routerContext.cjs.map +1 -1
  52. package/dist/cjs/scroll-restoration.cjs +25 -35
  53. package/dist/cjs/scroll-restoration.cjs.map +1 -1
  54. package/dist/cjs/ssr/RouterClient.cjs +31 -42
  55. package/dist/cjs/ssr/RouterClient.cjs.map +1 -1
  56. package/dist/cjs/ssr/RouterServer.cjs +44 -51
  57. package/dist/cjs/ssr/RouterServer.cjs.map +1 -1
  58. package/dist/cjs/ssr/client.cjs +2 -4
  59. package/dist/cjs/ssr/defaultRenderHandler.cjs +12 -16
  60. package/dist/cjs/ssr/defaultRenderHandler.cjs.map +1 -1
  61. package/dist/cjs/ssr/defaultStreamHandler.cjs +13 -18
  62. package/dist/cjs/ssr/defaultStreamHandler.cjs.map +1 -1
  63. package/dist/cjs/ssr/renderRouterToStream.cjs +27 -55
  64. package/dist/cjs/ssr/renderRouterToStream.cjs.map +1 -1
  65. package/dist/cjs/ssr/renderRouterToString.cjs +33 -57
  66. package/dist/cjs/ssr/renderRouterToString.cjs.map +1 -1
  67. package/dist/cjs/ssr/server.cjs +18 -18
  68. package/dist/cjs/useBlocker.cjs +138 -173
  69. package/dist/cjs/useBlocker.cjs.map +1 -1
  70. package/dist/cjs/useBlocker.d.cts +8 -5
  71. package/dist/cjs/useCanGoBack.cjs +6 -5
  72. package/dist/cjs/useCanGoBack.cjs.map +1 -1
  73. package/dist/cjs/useLoaderData.cjs +12 -11
  74. package/dist/cjs/useLoaderData.cjs.map +1 -1
  75. package/dist/cjs/useLoaderDeps.cjs +12 -14
  76. package/dist/cjs/useLoaderDeps.cjs.map +1 -1
  77. package/dist/cjs/useLocation.cjs +6 -7
  78. package/dist/cjs/useLocation.cjs.map +1 -1
  79. package/dist/cjs/useMatch.cjs +27 -49
  80. package/dist/cjs/useMatch.cjs.map +1 -1
  81. package/dist/cjs/useNavigate.cjs +20 -38
  82. package/dist/cjs/useNavigate.cjs.map +1 -1
  83. package/dist/cjs/useParams.cjs +14 -13
  84. package/dist/cjs/useParams.cjs.map +1 -1
  85. package/dist/cjs/useRouteContext.cjs +9 -8
  86. package/dist/cjs/useRouteContext.cjs.map +1 -1
  87. package/dist/cjs/useRouter.cjs +13 -26
  88. package/dist/cjs/useRouter.cjs.map +1 -1
  89. package/dist/cjs/useRouterState.cjs +29 -37
  90. package/dist/cjs/useRouterState.cjs.map +1 -1
  91. package/dist/cjs/useSearch.cjs +13 -12
  92. package/dist/cjs/useSearch.cjs.map +1 -1
  93. package/dist/cjs/utils.cjs +58 -51
  94. package/dist/cjs/utils.cjs.map +1 -1
  95. package/dist/esm/Asset.js +82 -126
  96. package/dist/esm/Asset.js.map +1 -1
  97. package/dist/esm/CatchBoundary.js +46 -50
  98. package/dist/esm/CatchBoundary.js.map +1 -1
  99. package/dist/esm/ClientOnly.js +58 -22
  100. package/dist/esm/ClientOnly.js.map +1 -1
  101. package/dist/esm/HeadContent.dev.js +36 -32
  102. package/dist/esm/HeadContent.dev.js.map +1 -1
  103. package/dist/esm/HeadContent.js +23 -18
  104. package/dist/esm/HeadContent.js.map +1 -1
  105. package/dist/esm/Match.js +322 -378
  106. package/dist/esm/Match.js.map +1 -1
  107. package/dist/esm/Matches.js +102 -135
  108. package/dist/esm/Matches.js.map +1 -1
  109. package/dist/esm/RouterProvider.js +25 -39
  110. package/dist/esm/RouterProvider.js.map +1 -1
  111. package/dist/esm/SafeFragment.js +6 -5
  112. package/dist/esm/SafeFragment.js.map +1 -1
  113. package/dist/esm/ScriptOnce.js +16 -19
  114. package/dist/esm/ScriptOnce.js.map +1 -1
  115. package/dist/esm/Scripts.js +40 -54
  116. package/dist/esm/Scripts.js.map +1 -1
  117. package/dist/esm/ScrollRestoration.js +25 -29
  118. package/dist/esm/ScrollRestoration.js.map +1 -1
  119. package/dist/esm/Transitioner.js +90 -110
  120. package/dist/esm/Transitioner.js.map +1 -1
  121. package/dist/esm/awaited.js +21 -34
  122. package/dist/esm/awaited.js.map +1 -1
  123. package/dist/esm/fileRoute.js +90 -92
  124. package/dist/esm/fileRoute.js.map +1 -1
  125. package/dist/esm/headContentUtils.js +129 -152
  126. package/dist/esm/headContentUtils.js.map +1 -1
  127. package/dist/esm/index.dev.js +15 -115
  128. package/dist/esm/index.js +17 -116
  129. package/dist/esm/lazyRouteComponent.js +47 -54
  130. package/dist/esm/lazyRouteComponent.js.map +1 -1
  131. package/dist/esm/link.js +299 -314
  132. package/dist/esm/link.js.map +1 -1
  133. package/dist/esm/matchContext.js +7 -7
  134. package/dist/esm/matchContext.js.map +1 -1
  135. package/dist/esm/not-found.js +23 -33
  136. package/dist/esm/not-found.js.map +1 -1
  137. package/dist/esm/renderRouteNotFound.js +20 -15
  138. package/dist/esm/renderRouteNotFound.js.map +1 -1
  139. package/dist/esm/route.js +193 -218
  140. package/dist/esm/route.js.map +1 -1
  141. package/dist/esm/router.js +17 -17
  142. package/dist/esm/router.js.map +1 -1
  143. package/dist/esm/routerContext.js +6 -5
  144. package/dist/esm/routerContext.js.map +1 -1
  145. package/dist/esm/scroll-restoration.js +23 -34
  146. package/dist/esm/scroll-restoration.js.map +1 -1
  147. package/dist/esm/ssr/RouterClient.js +29 -41
  148. package/dist/esm/ssr/RouterClient.js.map +1 -1
  149. package/dist/esm/ssr/RouterServer.js +40 -48
  150. package/dist/esm/ssr/RouterServer.js.map +1 -1
  151. package/dist/esm/ssr/client.js +1 -4
  152. package/dist/esm/ssr/defaultRenderHandler.js +11 -15
  153. package/dist/esm/ssr/defaultRenderHandler.js.map +1 -1
  154. package/dist/esm/ssr/defaultStreamHandler.js +12 -17
  155. package/dist/esm/ssr/defaultStreamHandler.js.map +1 -1
  156. package/dist/esm/ssr/renderRouterToStream.js +24 -37
  157. package/dist/esm/ssr/renderRouterToStream.js.map +1 -1
  158. package/dist/esm/ssr/renderRouterToString.js +31 -40
  159. package/dist/esm/ssr/renderRouterToString.js.map +1 -1
  160. package/dist/esm/ssr/server.js +3 -10
  161. package/dist/esm/useBlocker.d.ts +8 -5
  162. package/dist/esm/useBlocker.js +134 -155
  163. package/dist/esm/useBlocker.js.map +1 -1
  164. package/dist/esm/useCanGoBack.js +6 -5
  165. package/dist/esm/useCanGoBack.js.map +1 -1
  166. package/dist/esm/useLoaderData.js +12 -11
  167. package/dist/esm/useLoaderData.js.map +1 -1
  168. package/dist/esm/useLoaderDeps.js +12 -14
  169. package/dist/esm/useLoaderDeps.js.map +1 -1
  170. package/dist/esm/useLocation.js +6 -7
  171. package/dist/esm/useLocation.js.map +1 -1
  172. package/dist/esm/useMatch.js +23 -31
  173. package/dist/esm/useMatch.js.map +1 -1
  174. package/dist/esm/useNavigate.js +18 -22
  175. package/dist/esm/useNavigate.js.map +1 -1
  176. package/dist/esm/useParams.js +14 -13
  177. package/dist/esm/useParams.js.map +1 -1
  178. package/dist/esm/useRouteContext.js +9 -8
  179. package/dist/esm/useRouteContext.js.map +1 -1
  180. package/dist/esm/useRouter.js +9 -8
  181. package/dist/esm/useRouter.js.map +1 -1
  182. package/dist/esm/useRouterState.js +28 -37
  183. package/dist/esm/useRouterState.js.map +1 -1
  184. package/dist/esm/useSearch.js +13 -12
  185. package/dist/esm/useSearch.js.map +1 -1
  186. package/dist/esm/utils.js +56 -35
  187. package/dist/esm/utils.js.map +1 -1
  188. package/dist/source/useBlocker.d.ts +8 -5
  189. package/dist/source/useBlocker.jsx +2 -2
  190. package/dist/source/useBlocker.jsx.map +1 -1
  191. package/package.json +3 -3
  192. package/src/useBlocker.tsx +15 -10
  193. package/dist/cjs/index.cjs.map +0 -1
  194. package/dist/cjs/index.dev.cjs.map +0 -1
  195. package/dist/cjs/ssr/client.cjs.map +0 -1
  196. package/dist/cjs/ssr/server.cjs.map +0 -1
  197. package/dist/esm/index.dev.js.map +0 -1
  198. package/dist/esm/index.js.map +0 -1
  199. package/dist/esm/ssr/client.js.map +0 -1
  200. package/dist/esm/ssr/server.js.map +0 -1
@@ -1,38 +1,27 @@
1
- import { createComponent } from "solid-js/web";
2
- import { defaultGetScrollRestorationKey, restoreScroll, escapeHtml, storageKey } from "@tanstack/router-core";
3
- import { isServer } from "@tanstack/router-core/isServer";
4
1
  import { useRouter } from "./useRouter.js";
5
2
  import { ScriptOnce } from "./ScriptOnce.js";
3
+ import { defaultGetScrollRestorationKey, escapeHtml, restoreScroll, storageKey } from "@tanstack/router-core";
4
+ import { createComponent } from "solid-js/web";
5
+ import { isServer } from "@tanstack/router-core/isServer";
6
+ //#region src/scroll-restoration.tsx
6
7
  function ScrollRestoration() {
7
- const router = useRouter();
8
- if (!router.isScrollRestoring || !(isServer ?? router.isServer)) {
9
- return null;
10
- }
11
- if (typeof router.options.scrollRestoration === "function") {
12
- const shouldRestore = router.options.scrollRestoration({
13
- location: router.latestLocation
14
- });
15
- if (!shouldRestore) {
16
- return null;
17
- }
18
- }
19
- const getKey = router.options.getScrollRestorationKey || defaultGetScrollRestorationKey;
20
- const userKey = getKey(router.latestLocation);
21
- const resolvedKey = userKey !== defaultGetScrollRestorationKey(router.latestLocation) ? userKey : void 0;
22
- const restoreScrollOptions = {
23
- storageKey,
24
- shouldScrollRestoration: true
25
- };
26
- if (resolvedKey) {
27
- restoreScrollOptions.key = resolvedKey;
28
- }
29
- return createComponent(ScriptOnce, {
30
- get children() {
31
- return `(${restoreScroll.toString()})(${escapeHtml(JSON.stringify(restoreScrollOptions))})`;
32
- }
33
- });
8
+ const router = useRouter();
9
+ if (!router.isScrollRestoring || !(isServer ?? router.isServer)) return null;
10
+ if (typeof router.options.scrollRestoration === "function") {
11
+ if (!router.options.scrollRestoration({ location: router.latestLocation })) return null;
12
+ }
13
+ const userKey = (router.options.getScrollRestorationKey || defaultGetScrollRestorationKey)(router.latestLocation);
14
+ const resolvedKey = userKey !== defaultGetScrollRestorationKey(router.latestLocation) ? userKey : void 0;
15
+ const restoreScrollOptions = {
16
+ storageKey,
17
+ shouldScrollRestoration: true
18
+ };
19
+ if (resolvedKey) restoreScrollOptions.key = resolvedKey;
20
+ return createComponent(ScriptOnce, { get children() {
21
+ return `(${restoreScroll.toString()})(${escapeHtml(JSON.stringify(restoreScrollOptions))})`;
22
+ } });
34
23
  }
35
- export {
36
- ScrollRestoration
37
- };
38
- //# sourceMappingURL=scroll-restoration.js.map
24
+ //#endregion
25
+ export { ScrollRestoration };
26
+
27
+ //# sourceMappingURL=scroll-restoration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scroll-restoration.js","sources":["../../src/scroll-restoration.tsx"],"sourcesContent":["import {\n defaultGetScrollRestorationKey,\n escapeHtml,\n restoreScroll,\n storageKey,\n} from '@tanstack/router-core'\nimport { isServer } from '@tanstack/router-core/isServer'\nimport { useRouter } from './useRouter'\nimport { ScriptOnce } from './ScriptOnce'\n\nexport function ScrollRestoration() {\n const router = useRouter()\n if (!router.isScrollRestoring || !(isServer ?? router.isServer)) {\n return null\n }\n if (typeof router.options.scrollRestoration === 'function') {\n const shouldRestore = router.options.scrollRestoration({\n location: router.latestLocation,\n })\n if (!shouldRestore) {\n return null\n }\n }\n const getKey =\n router.options.getScrollRestorationKey || defaultGetScrollRestorationKey\n const userKey = getKey(router.latestLocation)\n const resolvedKey =\n userKey !== defaultGetScrollRestorationKey(router.latestLocation)\n ? userKey\n : undefined\n\n const restoreScrollOptions: Parameters<typeof restoreScroll>[0] = {\n storageKey,\n shouldScrollRestoration: true,\n }\n if (resolvedKey) {\n restoreScrollOptions.key = resolvedKey\n }\n\n return (\n <ScriptOnce\n children={`(${restoreScroll.toString()})(${escapeHtml(JSON.stringify(restoreScrollOptions))})`}\n />\n )\n}\n"],"names":["ScrollRestoration","router","useRouter","isScrollRestoring","isServer","options","scrollRestoration","shouldRestore","location","latestLocation","getKey","getScrollRestorationKey","defaultGetScrollRestorationKey","userKey","resolvedKey","undefined","restoreScrollOptions","storageKey","shouldScrollRestoration","key","_$createComponent","ScriptOnce","children","restoreScroll","toString","escapeHtml","JSON","stringify"],"mappings":";;;;;AAUO,SAASA,oBAAoB;AAClC,QAAMC,SAASC,UAAAA;AACf,MAAI,CAACD,OAAOE,qBAAqB,EAAEC,YAAYH,OAAOG,WAAW;AAC/D,WAAO;AAAA,EACT;AACA,MAAI,OAAOH,OAAOI,QAAQC,sBAAsB,YAAY;AAC1D,UAAMC,gBAAgBN,OAAOI,QAAQC,kBAAkB;AAAA,MACrDE,UAAUP,OAAOQ;AAAAA,IAAAA,CAClB;AACD,QAAI,CAACF,eAAe;AAClB,aAAO;AAAA,IACT;AAAA,EACF;AACA,QAAMG,SACJT,OAAOI,QAAQM,2BAA2BC;AAC5C,QAAMC,UAAUH,OAAOT,OAAOQ,cAAc;AAC5C,QAAMK,cACJD,YAAYD,+BAA+BX,OAAOQ,cAAc,IAC5DI,UACAE;AAEN,QAAMC,uBAA4D;AAAA,IAChEC;AAAAA,IACAC,yBAAyB;AAAA,EAAA;AAE3B,MAAIJ,aAAa;AACfE,yBAAqBG,MAAML;AAAAA,EAC7B;AAEA,SAAAM,gBACGC,YAAU;AAAA,IAAA,IACTC,WAAQ;AAAA,aAAE,IAAIC,cAAcC,SAAAA,CAAU,KAAKC,WAAWC,KAAKC,UAAUX,oBAAoB,CAAC,CAAC;AAAA,IAAG;AAAA,EAAA,CAAA;AAGpG;"}
1
+ {"version":3,"file":"scroll-restoration.js","names":["defaultGetScrollRestorationKey","escapeHtml","restoreScroll","storageKey","isServer","useRouter","ScriptOnce","ScrollRestoration","router","isScrollRestoring","options","scrollRestoration","shouldRestore","location","latestLocation","getKey","getScrollRestorationKey","userKey","resolvedKey","undefined","restoreScrollOptions","Parameters","shouldScrollRestoration","key","_$createComponent","children","toString","JSON","stringify"],"sources":["../../src/scroll-restoration.tsx"],"sourcesContent":["import {\n defaultGetScrollRestorationKey,\n escapeHtml,\n restoreScroll,\n storageKey,\n} from '@tanstack/router-core'\nimport { isServer } from '@tanstack/router-core/isServer'\nimport { useRouter } from './useRouter'\nimport { ScriptOnce } from './ScriptOnce'\n\nexport function ScrollRestoration() {\n const router = useRouter()\n if (!router.isScrollRestoring || !(isServer ?? router.isServer)) {\n return null\n }\n if (typeof router.options.scrollRestoration === 'function') {\n const shouldRestore = router.options.scrollRestoration({\n location: router.latestLocation,\n })\n if (!shouldRestore) {\n return null\n }\n }\n const getKey =\n router.options.getScrollRestorationKey || defaultGetScrollRestorationKey\n const userKey = getKey(router.latestLocation)\n const resolvedKey =\n userKey !== defaultGetScrollRestorationKey(router.latestLocation)\n ? userKey\n : undefined\n\n const restoreScrollOptions: Parameters<typeof restoreScroll>[0] = {\n storageKey,\n shouldScrollRestoration: true,\n }\n if (resolvedKey) {\n restoreScrollOptions.key = resolvedKey\n }\n\n return (\n <ScriptOnce\n children={`(${restoreScroll.toString()})(${escapeHtml(JSON.stringify(restoreScrollOptions))})`}\n />\n )\n}\n"],"mappings":";;;;;;AAUA,SAAgBO,oBAAoB;CAClC,MAAMC,SAASH,WAAW;AAC1B,KAAI,CAACG,OAAOC,qBAAqB,EAAEL,YAAYI,OAAOJ,UACpD,QAAO;AAET,KAAI,OAAOI,OAAOE,QAAQC,sBAAsB;MAI1C,CAHkBH,OAAOE,QAAQC,kBAAkB,EACrDE,UAAUL,OAAOM,gBAClB,CAAC,CAEA,QAAO;;CAKX,MAAMG,WADJT,OAAOE,QAAQM,2BAA2BhB,gCACrBQ,OAAOM,eAAe;CAC7C,MAAMI,cACJD,YAAYjB,+BAA+BQ,OAAOM,eAAe,GAC7DG,UACAE,KAAAA;CAEN,MAAMC,uBAA4D;EAChEjB;EACAmB,yBAAyB;EAC1B;AACD,KAAIJ,YACFE,sBAAqBG,MAAML;AAG7B,QAAAM,gBACGlB,YAAU,EAAA,IACTmB,WAAQ;AAAA,SAAE,IAAIvB,cAAcwB,UAAU,CAAA,IAAKzB,WAAW0B,KAAKC,UAAUR,qBAAqB,CAAC,CAAA;IAAG,CAAA"}
@@ -1,45 +1,33 @@
1
- import { createComponent, memo } from "solid-js/web";
2
- import { hydrate } from "@tanstack/router-core/ssr/client";
3
1
  import { Await } from "../awaited.js";
4
- import { HeadContent } from "../HeadContent.js";
5
2
  import { RouterProvider } from "../RouterProvider.js";
6
- let hydrationPromise;
7
- const Dummy = (props) => memo(() => props.children);
3
+ import { HeadContent } from "../HeadContent.js";
4
+ import { createComponent, memo } from "solid-js/web";
5
+ import { hydrate } from "@tanstack/router-core/ssr/client";
6
+ //#region src/ssr/RouterClient.tsx
7
+ var hydrationPromise;
8
+ var Dummy = (props) => memo(() => props.children);
8
9
  function RouterClient(props) {
9
- if (!hydrationPromise) {
10
- if (!props.router.state.matches.length) {
11
- hydrationPromise = hydrate(props.router);
12
- } else {
13
- hydrationPromise = Promise.resolve();
14
- }
15
- }
16
- return createComponent(Await, {
17
- promise: hydrationPromise,
18
- children: () => createComponent(Dummy, {
19
- get children() {
20
- return createComponent(Dummy, {
21
- get children() {
22
- return createComponent(RouterProvider, {
23
- get router() {
24
- return props.router;
25
- },
26
- InnerWrap: (props2) => createComponent(Dummy, {
27
- get children() {
28
- return [createComponent(Dummy, {
29
- get children() {
30
- return [createComponent(HeadContent, {}), memo(() => props2.children)];
31
- }
32
- }), createComponent(Dummy, {})];
33
- }
34
- })
35
- });
36
- }
37
- });
38
- }
39
- })
40
- });
10
+ if (!hydrationPromise) if (!props.router.state.matches.length) hydrationPromise = hydrate(props.router);
11
+ else hydrationPromise = Promise.resolve();
12
+ return createComponent(Await, {
13
+ promise: hydrationPromise,
14
+ children: () => createComponent(Dummy, { get children() {
15
+ return createComponent(Dummy, { get children() {
16
+ return createComponent(RouterProvider, {
17
+ get router() {
18
+ return props.router;
19
+ },
20
+ InnerWrap: (props) => createComponent(Dummy, { get children() {
21
+ return [createComponent(Dummy, { get children() {
22
+ return [createComponent(HeadContent, {}), memo(() => props.children)];
23
+ } }), createComponent(Dummy, {})];
24
+ } })
25
+ });
26
+ } });
27
+ } })
28
+ });
41
29
  }
42
- export {
43
- RouterClient
44
- };
45
- //# sourceMappingURL=RouterClient.js.map
30
+ //#endregion
31
+ export { RouterClient };
32
+
33
+ //# sourceMappingURL=RouterClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RouterClient.js","sources":["../../../src/ssr/RouterClient.tsx"],"sourcesContent":["import { hydrate } from '@tanstack/router-core/ssr/client'\nimport { Await } from '../awaited'\nimport { HeadContent } from '../HeadContent'\nimport { RouterProvider } from '../RouterProvider'\nimport type { AnyRouter } from '@tanstack/router-core'\nimport type { JSXElement } from 'solid-js'\n\nlet hydrationPromise: Promise<void | Array<Array<void>>> | undefined\n\nconst Dummy = (props: { children?: JSXElement }) => <>{props.children}</>\n\nexport function RouterClient(props: { router: AnyRouter }) {\n if (!hydrationPromise) {\n if (!props.router.state.matches.length) {\n hydrationPromise = hydrate(props.router)\n } else {\n hydrationPromise = Promise.resolve()\n }\n }\n return (\n <Await\n promise={hydrationPromise}\n children={() => (\n <Dummy>\n <Dummy>\n <RouterProvider\n router={props.router}\n InnerWrap={(props) => (\n <Dummy>\n <Dummy>\n <HeadContent />\n {props.children}\n </Dummy>\n <Dummy />\n </Dummy>\n )}\n />\n </Dummy>\n </Dummy>\n )}\n />\n )\n}\n"],"names":["hydrationPromise","Dummy","props","_$memo","children","RouterClient","router","state","matches","length","hydrate","Promise","resolve","_$createComponent","Await","promise","RouterProvider","InnerWrap","HeadContent"],"mappings":";;;;;AAOA,IAAIA;AAEJ,MAAMC,QAAQA,CAACC,UAAgCC,KAAA,MAAQD,MAAME,QAAQ;AAE9D,SAASC,aAAaH,OAA8B;AACzD,MAAI,CAACF,kBAAkB;AACrB,QAAI,CAACE,MAAMI,OAAOC,MAAMC,QAAQC,QAAQ;AACtCT,yBAAmBU,QAAQR,MAAMI,MAAM;AAAA,IACzC,OAAO;AACLN,yBAAmBW,QAAQC,QAAAA;AAAAA,IAC7B;AAAA,EACF;AACA,SAAAC,gBACGC,OAAK;AAAA,IACJC,SAASf;AAAAA,IACTI,UAAUA,MAAAS,gBACPZ,OAAK;AAAA,MAAA,IAAAG,WAAA;AAAA,eAAAS,gBACHZ,OAAK;AAAA,UAAA,IAAAG,WAAA;AAAA,mBAAAS,gBACHG,gBAAc;AAAA,cAAA,IACbV,SAAM;AAAA,uBAAEJ,MAAMI;AAAAA,cAAM;AAAA,cACpBW,WAAYf,CAAAA,WAAKW,gBACdZ,OAAK;AAAA,gBAAA,IAAAG,WAAA;AAAA,yBAAA,CAAAS,gBACHZ,OAAK;AAAA,oBAAA,IAAAG,WAAA;AAAA,6BAAA,CAAAS,gBACHK,aAAW,CAAA,CAAA,GAAAf,KAAA,MACXD,OAAME,QAAQ,CAAA;AAAA,oBAAA;AAAA,kBAAA,CAAA,GAAAS,gBAEhBZ,OAAK,CAAA,CAAA,CAAA;AAAA,gBAAA;AAAA,cAAA,CAAA;AAAA,YAAA,CAET;AAAA,UAAA;AAAA,QAAA,CAAA;AAAA,MAAA;AAAA,IAAA,CAAA;AAAA,EAAA,CAIR;AAGP;"}
1
+ {"version":3,"file":"RouterClient.js","names":["hydrate","Await","HeadContent","RouterProvider","AnyRouter","JSXElement","hydrationPromise","Promise","Array","Dummy","props","children","_$memo","RouterClient","router","state","matches","length","resolve","_$createComponent","promise","InnerWrap"],"sources":["../../../src/ssr/RouterClient.tsx"],"sourcesContent":["import { hydrate } from '@tanstack/router-core/ssr/client'\nimport { Await } from '../awaited'\nimport { HeadContent } from '../HeadContent'\nimport { RouterProvider } from '../RouterProvider'\nimport type { AnyRouter } from '@tanstack/router-core'\nimport type { JSXElement } from 'solid-js'\n\nlet hydrationPromise: Promise<void | Array<Array<void>>> | undefined\n\nconst Dummy = (props: { children?: JSXElement }) => <>{props.children}</>\n\nexport function RouterClient(props: { router: AnyRouter }) {\n if (!hydrationPromise) {\n if (!props.router.state.matches.length) {\n hydrationPromise = hydrate(props.router)\n } else {\n hydrationPromise = Promise.resolve()\n }\n }\n return (\n <Await\n promise={hydrationPromise}\n children={() => (\n <Dummy>\n <Dummy>\n <RouterProvider\n router={props.router}\n InnerWrap={(props) => (\n <Dummy>\n <Dummy>\n <HeadContent />\n {props.children}\n </Dummy>\n <Dummy />\n </Dummy>\n )}\n />\n </Dummy>\n </Dummy>\n )}\n />\n )\n}\n"],"mappings":";;;;;;AAOA,IAAIM;AAEJ,IAAMG,SAASC,UAAgCE,WAAQF,MAAMC,SAAY;AAEzE,SAAgBE,aAAaH,OAA8B;AACzD,KAAI,CAACJ,iBACH,KAAI,CAACI,MAAMI,OAAOC,MAAMC,QAAQC,OAC9BX,oBAAmBN,QAAQU,MAAMI,OAAO;KAExCR,oBAAmBC,QAAQW,SAAS;AAGxC,QAAAC,gBACGlB,OAAK;EACJmB,SAASd;EACTK,gBAAUQ,gBACPV,OAAK,EAAA,IAAAE,WAAA;AAAA,UAAAQ,gBACHV,OAAK,EAAA,IAAAE,WAAA;AAAA,WAAAQ,gBACHhB,gBAAc;KAAA,IACbW,SAAM;AAAA,aAAEJ,MAAMI;;KACdO,YAAYX,UAAKS,gBACdV,OAAK,EAAA,IAAAE,WAAA;AAAA,aAAA,CAAAQ,gBACHV,OAAK,EAAA,IAAAE,WAAA;AAAA,cAAA,CAAAQ,gBACHjB,aAAW,EAAA,CAAA,EAAAU,WACXF,MAAMC,SAAQ,CAAA;SAAA,CAAA,EAAAQ,gBAEhBV,OAAK,EAAA,CAAA,CAAA;QAAA,CAAA;KAET,CAAA;MAAA,CAAA;KAAA,CAAA;EAIR,CAAA"}
@@ -1,56 +1,48 @@
1
- import { createComponent, NoHydration, ssr, template, insert, Hydration, useAssets } from "solid-js/web";
2
- import { MetaProvider } from "@solidjs/meta";
1
+ import { RouterProvider } from "../RouterProvider.js";
3
2
  import { Asset } from "../Asset.js";
4
3
  import { useTags } from "../headContentUtils.js";
5
- import { RouterProvider } from "../RouterProvider.js";
6
4
  import { Scripts } from "../Scripts.js";
5
+ import { Hydration, NoHydration, createComponent, insert, ssr, template, useAssets } from "solid-js/web";
6
+ import { MetaProvider } from "@solidjs/meta";
7
+ //#region src/ssr/RouterServer.tsx
7
8
  var _tmpl$ = /* @__PURE__ */ template(`<html><head></head><body>`);
8
9
  function ServerHeadContent() {
9
- const tags = useTags();
10
- useAssets(() => {
11
- return createComponent(MetaProvider, {
12
- get children() {
13
- return tags().map((tag) => createComponent(Asset, tag));
14
- }
15
- });
16
- });
17
- return null;
10
+ const tags = useTags();
11
+ useAssets(() => {
12
+ return createComponent(MetaProvider, { get children() {
13
+ return tags().map((tag) => createComponent(Asset, tag));
14
+ } });
15
+ });
16
+ return null;
18
17
  }
19
- const docType = ssr("<!DOCTYPE html>");
18
+ var docType = ssr("<!DOCTYPE html>");
20
19
  function RouterServer(props) {
21
- return createComponent(NoHydration, {
22
- get children() {
23
- return [docType, (() => {
24
- var _el$ = _tmpl$(), _el$3 = _el$.firstChild;
25
- insert(_el$3, createComponent(Hydration, {
26
- get children() {
27
- return createComponent(RouterProvider, {
28
- get router() {
29
- return props.router;
30
- },
31
- InnerWrap: (props2) => createComponent(NoHydration, {
32
- get children() {
33
- return createComponent(MetaProvider, {
34
- get children() {
35
- return [createComponent(ServerHeadContent, {}), createComponent(Hydration, {
36
- get children() {
37
- return props2.children;
38
- }
39
- }), createComponent(Scripts, {})];
40
- }
41
- });
42
- }
43
- })
44
- });
45
- }
46
- }));
47
- return _el$;
48
- })()];
49
- }
50
- });
20
+ return createComponent(NoHydration, { get children() {
21
+ return [docType, (() => {
22
+ var _el$ = _tmpl$(), _el$3 = _el$.firstChild;
23
+ insert(_el$3, createComponent(Hydration, { get children() {
24
+ return createComponent(RouterProvider, {
25
+ get router() {
26
+ return props.router;
27
+ },
28
+ InnerWrap: (props) => createComponent(NoHydration, { get children() {
29
+ return createComponent(MetaProvider, { get children() {
30
+ return [
31
+ createComponent(ServerHeadContent, {}),
32
+ createComponent(Hydration, { get children() {
33
+ return props.children;
34
+ } }),
35
+ createComponent(Scripts, {})
36
+ ];
37
+ } });
38
+ } })
39
+ });
40
+ } }));
41
+ return _el$;
42
+ })()];
43
+ } });
51
44
  }
52
- export {
53
- RouterServer,
54
- ServerHeadContent
55
- };
56
- //# sourceMappingURL=RouterServer.js.map
45
+ //#endregion
46
+ export { RouterServer };
47
+
48
+ //# sourceMappingURL=RouterServer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RouterServer.js","sources":["../../../src/ssr/RouterServer.tsx"],"sourcesContent":["import {\n Hydration,\n HydrationScript,\n NoHydration,\n ssr,\n useAssets,\n} from 'solid-js/web'\nimport { MetaProvider } from '@solidjs/meta'\nimport { Asset } from '../Asset'\nimport { useTags } from '../headContentUtils'\nimport { RouterProvider } from '../RouterProvider'\nimport { Scripts } from '../Scripts'\nimport type { AnyRouter } from '@tanstack/router-core'\n\nexport function ServerHeadContent() {\n const tags = useTags()\n useAssets(() => {\n return (\n <MetaProvider>\n {tags().map((tag) => (\n <Asset {...tag} />\n ))}\n </MetaProvider>\n )\n })\n return null\n}\n\nconst docType = ssr('<!DOCTYPE html>')\n\nexport function RouterServer<TRouter extends AnyRouter>(props: {\n router: TRouter\n}) {\n return (\n <NoHydration>\n {docType as any}\n <html>\n <head>\n <HydrationScript />\n </head>\n <body>\n <Hydration>\n <RouterProvider\n router={props.router}\n InnerWrap={(props) => (\n <NoHydration>\n <MetaProvider>\n <ServerHeadContent />\n <Hydration>{props.children}</Hydration>\n <Scripts />\n </MetaProvider>\n </NoHydration>\n )}\n />\n </Hydration>\n </body>\n </html>\n </NoHydration>\n )\n}\n"],"names":["ServerHeadContent","tags","useTags","useAssets","_$createComponent","MetaProvider","children","map","tag","Asset","docType","ssr","RouterServer","props","NoHydration","_el$","_tmpl$","_el$3","firstChild","_$insert","Hydration","RouterProvider","router","InnerWrap","Scripts"],"mappings":";;;;;;;AAcO,SAASA,oBAAoB;AAClC,QAAMC,OAAOC,QAAAA;AACbC,YAAU,MAAM;AACd,WAAAC,gBACGC,cAAY;AAAA,MAAA,IAAAC,WAAA;AAAA,eACVL,OAAOM,IAAKC,SAAGJ,gBACbK,OAAUD,GAAG,CACf;AAAA,MAAC;AAAA,IAAA,CAAA;AAAA,EAGR,CAAC;AACD,SAAO;AACT;AAEA,MAAME,UAAUC,IAAI,iBAAiB;AAE9B,SAASC,aAAwCC,OAErD;AACD,SAAAT,gBACGU,aAAW;AAAA,IAAA,IAAAR,WAAA;AAAA,aAAA,CACTI,UAAc,MAAA;AAAA,YAAAK,OAAAC,OAAAA,GAAAC,QAAAF,KAAAG;AAAAC,eAAAF,OAAAb,gBAMVgB,WAAS;AAAA,UAAA,IAAAd,WAAA;AAAA,mBAAAF,gBACPiB,gBAAc;AAAA,cAAA,IACbC,SAAM;AAAA,uBAAET,MAAMS;AAAAA,cAAM;AAAA,cACpBC,WAAYV,CAAAA,WAAKT,gBACdU,aAAW;AAAA,gBAAA,IAAAR,WAAA;AAAA,yBAAAF,gBACTC,cAAY;AAAA,oBAAA,IAAAC,WAAA;AAAA,6BAAA,CAAAF,gBACVJ,mBAAiB,CAAA,CAAA,GAAAI,gBACjBgB,WAAS;AAAA,wBAAA,IAAAd,WAAA;AAAA,iCAAEO,OAAMP;AAAAA,wBAAQ;AAAA,sBAAA,CAAA,GAAAF,gBACzBoB,SAAO,CAAA,CAAA,CAAA;AAAA,oBAAA;AAAA,kBAAA,CAAA;AAAA,gBAAA;AAAA,cAAA,CAAA;AAAA,YAAA,CAGb;AAAA,UAAA;AAAA,QAAA,CAAA,CAAA;AAAA,eAAAT;AAAAA,MAAA,IAAA;AAAA,IAAA;AAAA,EAAA,CAAA;AAOf;"}
1
+ {"version":3,"file":"RouterServer.js","names":["Hydration","HydrationScript","NoHydration","ssr","useAssets","MetaProvider","Asset","useTags","RouterProvider","Scripts","AnyRouter","ServerHeadContent","tags","_$createComponent","children","map","tag","docType","RouterServer","props","router","TRouter","_el$","_tmpl$","_el$3","firstChild","_$insert","InnerWrap"],"sources":["../../../src/ssr/RouterServer.tsx"],"sourcesContent":["import {\n Hydration,\n HydrationScript,\n NoHydration,\n ssr,\n useAssets,\n} from 'solid-js/web'\nimport { MetaProvider } from '@solidjs/meta'\nimport { Asset } from '../Asset'\nimport { useTags } from '../headContentUtils'\nimport { RouterProvider } from '../RouterProvider'\nimport { Scripts } from '../Scripts'\nimport type { AnyRouter } from '@tanstack/router-core'\n\nexport function ServerHeadContent() {\n const tags = useTags()\n useAssets(() => {\n return (\n <MetaProvider>\n {tags().map((tag) => (\n <Asset {...tag} />\n ))}\n </MetaProvider>\n )\n })\n return null\n}\n\nconst docType = ssr('<!DOCTYPE html>')\n\nexport function RouterServer<TRouter extends AnyRouter>(props: {\n router: TRouter\n}) {\n return (\n <NoHydration>\n {docType as any}\n <html>\n <head>\n <HydrationScript />\n </head>\n <body>\n <Hydration>\n <RouterProvider\n router={props.router}\n InnerWrap={(props) => (\n <NoHydration>\n <MetaProvider>\n <ServerHeadContent />\n <Hydration>{props.children}</Hydration>\n <Scripts />\n </MetaProvider>\n </NoHydration>\n )}\n />\n </Hydration>\n </body>\n </html>\n </NoHydration>\n )\n}\n"],"mappings":";;;;;;;;AAcA,SAAgBW,oBAAoB;CAClC,MAAMC,OAAOL,SAAS;AACtBH,iBAAgB;AACd,SAAAS,gBACGR,cAAY,EAAA,IAAAS,WAAA;AAAA,UACVF,MAAM,CAACG,KAAKC,QAAGH,gBACbP,OAAUU,IACZ,CAAC;KAAA,CAAA;GAGN;AACF,QAAO;;AAGT,IAAMC,UAAUd,IAAI,kBAAkB;AAEtC,SAAgBe,aAAwCC,OAErD;AACD,QAAAN,gBACGX,aAAW,EAAA,IAAAY,WAAA;AAAA,SAAA,CACTG,gBAAc;GAAA,IAAAK,OAAAC,QAAA,EAAAC,QAAAF,KAAAG;AAAAC,UAAAF,OAAAX,gBAMVb,WAAS,EAAA,IAAAc,WAAA;AAAA,WAAAD,gBACPL,gBAAc;KAAA,IACbY,SAAM;AAAA,aAAED,MAAMC;;KACdO,YAAYR,UAAKN,gBACdX,aAAW,EAAA,IAAAY,WAAA;AAAA,aAAAD,gBACTR,cAAY,EAAA,IAAAS,WAAA;AAAA,cAAA;QAAAD,gBACVF,mBAAiB,EAAA,CAAA;QAAAE,gBACjBb,WAAS,EAAA,IAAAc,WAAA;AAAA,gBAAEK,MAAML;WAAQ,CAAA;QAAAD,gBACzBJ,SAAO,EAAA,CAAA;QAAA;SAAA,CAAA;QAAA,CAAA;KAGb,CAAA;MAAA,CAAA,CAAA;AAAA,UAAAa;MAAA,CAAA;IAAA,CAAA"}
@@ -1,5 +1,2 @@
1
1
  import { RouterClient } from "./RouterClient.js";
2
- export {
3
- RouterClient
4
- };
5
- //# sourceMappingURL=client.js.map
2
+ export { RouterClient };
@@ -1,18 +1,14 @@
1
- import { createComponent } from "solid-js/web";
2
- import { defineHandlerCallback } from "@tanstack/router-core/ssr/server";
3
1
  import { RouterServer } from "./RouterServer.js";
4
2
  import { renderRouterToString } from "./renderRouterToString.js";
5
- const defaultRenderHandler = defineHandlerCallback(({
6
- router,
7
- responseHeaders
8
- }) => renderRouterToString({
9
- router,
10
- responseHeaders,
11
- children: () => createComponent(RouterServer, {
12
- router
13
- })
3
+ import { createComponent } from "solid-js/web";
4
+ import { defineHandlerCallback } from "@tanstack/router-core/ssr/server";
5
+ //#region src/ssr/defaultRenderHandler.tsx
6
+ var defaultRenderHandler = defineHandlerCallback(({ router, responseHeaders }) => renderRouterToString({
7
+ router,
8
+ responseHeaders,
9
+ children: () => createComponent(RouterServer, { router })
14
10
  }));
15
- export {
16
- defaultRenderHandler
17
- };
18
- //# sourceMappingURL=defaultRenderHandler.js.map
11
+ //#endregion
12
+ export { defaultRenderHandler };
13
+
14
+ //# sourceMappingURL=defaultRenderHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultRenderHandler.js","sources":["../../../src/ssr/defaultRenderHandler.tsx"],"sourcesContent":["import { defineHandlerCallback } from '@tanstack/router-core/ssr/server'\nimport { RouterServer } from './RouterServer'\nimport { renderRouterToString } from './renderRouterToString'\n\nexport const defaultRenderHandler = defineHandlerCallback(\n ({ router, responseHeaders }) =>\n renderRouterToString({\n router,\n responseHeaders,\n children: () => <RouterServer router={router} />,\n }),\n)\n"],"names":["defaultRenderHandler","defineHandlerCallback","router","responseHeaders","renderRouterToString","children","_$createComponent","RouterServer"],"mappings":";;;;AAIO,MAAMA,uBAAuBC,sBAClC,CAAC;AAAA,EAAEC;AAAAA,EAAQC;AAAgB,MACzBC,qBAAqB;AAAA,EACnBF;AAAAA,EACAC;AAAAA,EACAE,UAAUA,MAAAC,gBAAOC,cAAY;AAAA,IAACL;AAAAA,EAAAA,CAAc;AAC9C,CAAC,CACL;"}
1
+ {"version":3,"file":"defaultRenderHandler.js","names":["defineHandlerCallback","RouterServer","renderRouterToString","defaultRenderHandler","router","responseHeaders","children","_$createComponent"],"sources":["../../../src/ssr/defaultRenderHandler.tsx"],"sourcesContent":["import { defineHandlerCallback } from '@tanstack/router-core/ssr/server'\nimport { RouterServer } from './RouterServer'\nimport { renderRouterToString } from './renderRouterToString'\n\nexport const defaultRenderHandler = defineHandlerCallback(\n ({ router, responseHeaders }) =>\n renderRouterToString({\n router,\n responseHeaders,\n children: () => <RouterServer router={router} />,\n }),\n)\n"],"mappings":";;;;;AAIA,IAAaG,uBAAuBH,uBACjC,EAAEI,QAAQC,sBACTH,qBAAqB;CACnBE;CACAC;CACAC,gBAAUC,gBAAON,cAAY,EAASG,QAAM,CAAA;CAC7C,CACL,CAAC"}
@@ -1,20 +1,15 @@
1
- import { createComponent } from "solid-js/web";
2
- import { defineHandlerCallback } from "@tanstack/router-core/ssr/server";
3
1
  import { RouterServer } from "./RouterServer.js";
4
2
  import { renderRouterToStream } from "./renderRouterToStream.js";
5
- const defaultStreamHandler = defineHandlerCallback(({
6
- request,
7
- router,
8
- responseHeaders
9
- }) => renderRouterToStream({
10
- request,
11
- router,
12
- responseHeaders,
13
- children: () => createComponent(RouterServer, {
14
- router
15
- })
3
+ import { createComponent } from "solid-js/web";
4
+ import { defineHandlerCallback } from "@tanstack/router-core/ssr/server";
5
+ //#region src/ssr/defaultStreamHandler.tsx
6
+ var defaultStreamHandler = defineHandlerCallback(({ request, router, responseHeaders }) => renderRouterToStream({
7
+ request,
8
+ router,
9
+ responseHeaders,
10
+ children: () => createComponent(RouterServer, { router })
16
11
  }));
17
- export {
18
- defaultStreamHandler
19
- };
20
- //# sourceMappingURL=defaultStreamHandler.js.map
12
+ //#endregion
13
+ export { defaultStreamHandler };
14
+
15
+ //# sourceMappingURL=defaultStreamHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultStreamHandler.js","sources":["../../../src/ssr/defaultStreamHandler.tsx"],"sourcesContent":["import { defineHandlerCallback } from '@tanstack/router-core/ssr/server'\nimport { RouterServer } from './RouterServer'\nimport { renderRouterToStream } from './renderRouterToStream'\n\nexport const defaultStreamHandler = defineHandlerCallback(\n ({ request, router, responseHeaders }) =>\n renderRouterToStream({\n request,\n router,\n responseHeaders,\n children: () => <RouterServer router={router} />,\n }),\n)\n"],"names":["defaultStreamHandler","defineHandlerCallback","request","router","responseHeaders","renderRouterToStream","children","_$createComponent","RouterServer"],"mappings":";;;;AAIO,MAAMA,uBAAuBC,sBAClC,CAAC;AAAA,EAAEC;AAAAA,EAASC;AAAAA,EAAQC;AAAgB,MAClCC,qBAAqB;AAAA,EACnBH;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAE,UAAUA,MAAAC,gBAAOC,cAAY;AAAA,IAACL;AAAAA,EAAAA,CAAc;AAC9C,CAAC,CACL;"}
1
+ {"version":3,"file":"defaultStreamHandler.js","names":["defineHandlerCallback","RouterServer","renderRouterToStream","defaultStreamHandler","request","router","responseHeaders","children","_$createComponent"],"sources":["../../../src/ssr/defaultStreamHandler.tsx"],"sourcesContent":["import { defineHandlerCallback } from '@tanstack/router-core/ssr/server'\nimport { RouterServer } from './RouterServer'\nimport { renderRouterToStream } from './renderRouterToStream'\n\nexport const defaultStreamHandler = defineHandlerCallback(\n ({ request, router, responseHeaders }) =>\n renderRouterToStream({\n request,\n router,\n responseHeaders,\n children: () => <RouterServer router={router} />,\n }),\n)\n"],"mappings":";;;;;AAIA,IAAaG,uBAAuBH,uBACjC,EAAEI,SAASC,QAAQC,sBAClBJ,qBAAqB;CACnBE;CACAC;CACAC;CACAC,gBAAUC,gBAAOP,cAAY,EAASI,QAAM,CAAA;CAC7C,CACL,CAAC"}
@@ -1,41 +1,28 @@
1
+ import { makeSsrSerovalPlugin } from "@tanstack/router-core";
1
2
  import * as Solid from "solid-js/web";
2
3
  import { memo } from "solid-js/web";
3
- import { isbot } from "isbot";
4
4
  import { transformReadableStreamWithRouter } from "@tanstack/router-core/ssr/server";
5
- import { makeSsrSerovalPlugin } from "@tanstack/router-core";
6
- const renderRouterToStream = async ({
7
- request,
8
- router,
9
- responseHeaders,
10
- children
11
- }) => {
12
- const {
13
- writable,
14
- readable
15
- } = new TransformStream();
16
- const docType = Solid.ssr("<!DOCTYPE html>");
17
- const serializationAdapters = router.options?.serializationAdapters || router.options.ssr?.serializationAdapters;
18
- const serovalPlugins = serializationAdapters?.map((adapter) => {
19
- const plugin = makeSsrSerovalPlugin(adapter, {
20
- didRun: false
21
- });
22
- return plugin;
23
- });
24
- const stream = Solid.renderToStream(() => [docType, memo(children)], {
25
- nonce: router.options.ssr?.nonce,
26
- plugins: serovalPlugins
27
- });
28
- if (isbot(request.headers.get("User-Agent"))) {
29
- await stream;
30
- }
31
- stream.pipeTo(writable);
32
- const responseStream = transformReadableStreamWithRouter(router, readable);
33
- return new Response(responseStream, {
34
- status: router.state.statusCode,
35
- headers: responseHeaders
36
- });
37
- };
38
- export {
39
- renderRouterToStream
5
+ import { isbot } from "isbot";
6
+ //#region src/ssr/renderRouterToStream.tsx
7
+ var renderRouterToStream = async ({ request, router, responseHeaders, children }) => {
8
+ const { writable, readable } = new TransformStream();
9
+ const docType = Solid.ssr("<!DOCTYPE html>");
10
+ const serovalPlugins = (router.options?.serializationAdapters || router.options.ssr?.serializationAdapters)?.map((adapter) => {
11
+ return makeSsrSerovalPlugin(adapter, { didRun: false });
12
+ });
13
+ const stream = Solid.renderToStream(() => [docType, memo(children)], {
14
+ nonce: router.options.ssr?.nonce,
15
+ plugins: serovalPlugins
16
+ });
17
+ if (isbot(request.headers.get("User-Agent"))) await stream;
18
+ stream.pipeTo(writable);
19
+ const responseStream = transformReadableStreamWithRouter(router, readable);
20
+ return new Response(responseStream, {
21
+ status: router.state.statusCode,
22
+ headers: responseHeaders
23
+ });
40
24
  };
41
- //# sourceMappingURL=renderRouterToStream.js.map
25
+ //#endregion
26
+ export { renderRouterToStream };
27
+
28
+ //# sourceMappingURL=renderRouterToStream.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderRouterToStream.js","sources":["../../../src/ssr/renderRouterToStream.tsx"],"sourcesContent":["import * as Solid from 'solid-js/web'\nimport { isbot } from 'isbot'\nimport { transformReadableStreamWithRouter } from '@tanstack/router-core/ssr/server'\nimport { makeSsrSerovalPlugin } from '@tanstack/router-core'\nimport type { JSXElement } from 'solid-js'\nimport type { ReadableStream } from 'node:stream/web'\nimport type { AnyRouter } from '@tanstack/router-core'\n\nexport const renderRouterToStream = async ({\n request,\n router,\n responseHeaders,\n children,\n}: {\n request: Request\n router: AnyRouter\n responseHeaders: Headers\n children: () => JSXElement\n}) => {\n const { writable, readable } = new TransformStream()\n\n const docType = Solid.ssr('<!DOCTYPE html>')\n\n const serializationAdapters =\n (router.options as any)?.serializationAdapters ||\n (router.options.ssr as any)?.serializationAdapters\n const serovalPlugins = serializationAdapters?.map((adapter: any) => {\n const plugin = makeSsrSerovalPlugin(adapter, { didRun: false })\n return plugin\n })\n\n const stream = Solid.renderToStream(\n () => (\n <>\n {docType}\n {children()}\n </>\n ),\n {\n nonce: router.options.ssr?.nonce,\n plugins: serovalPlugins,\n } as any,\n )\n\n if (isbot(request.headers.get('User-Agent'))) {\n await stream\n }\n stream.pipeTo(writable)\n\n const responseStream = transformReadableStreamWithRouter(\n router,\n readable as unknown as ReadableStream,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n}\n"],"names":["renderRouterToStream","request","router","responseHeaders","children","writable","readable","TransformStream","docType","Solid","ssr","serializationAdapters","options","serovalPlugins","map","adapter","plugin","makeSsrSerovalPlugin","didRun","stream","renderToStream","_$memo","nonce","plugins","isbot","headers","get","pipeTo","responseStream","transformReadableStreamWithRouter","Response","status","state","statusCode"],"mappings":";;;;;AAQO,MAAMA,uBAAuB,OAAO;AAAA,EACzCC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAMF,MAAM;AACJ,QAAM;AAAA,IAAEC;AAAAA,IAAUC;AAAAA,EAAAA,IAAa,IAAIC,gBAAAA;AAEnC,QAAMC,UAAUC,MAAMC,IAAI,iBAAiB;AAE3C,QAAMC,wBACHT,OAAOU,SAAiBD,yBACxBT,OAAOU,QAAQF,KAAaC;AAC/B,QAAME,iBAAiBF,uBAAuBG,IAAI,CAACC,YAAiB;AAClE,UAAMC,SAASC,qBAAqBF,SAAS;AAAA,MAAEG,QAAQ;AAAA,IAAA,CAAO;AAC9D,WAAOF;AAAAA,EACT,CAAC;AAED,QAAMG,SAASV,MAAMW,eACnB,MAAA,CAEKZ,SAAOa,KACPjB,QAAQ,IAGb;AAAA,IACEkB,OAAOpB,OAAOU,QAAQF,KAAKY;AAAAA,IAC3BC,SAASV;AAAAA,EAAAA,CAEb;AAEA,MAAIW,MAAMvB,QAAQwB,QAAQC,IAAI,YAAY,CAAC,GAAG;AAC5C,UAAMP;AAAAA,EACR;AACAA,SAAOQ,OAAOtB,QAAQ;AAEtB,QAAMuB,iBAAiBC,kCACrB3B,QACAI,QACF;AACA,SAAO,IAAIwB,SAASF,gBAAuB;AAAA,IACzCG,QAAQ7B,OAAO8B,MAAMC;AAAAA,IACrBR,SAAStB;AAAAA,EAAAA,CACV;AACH;"}
1
+ {"version":3,"file":"renderRouterToStream.js","names":["Solid","isbot","transformReadableStreamWithRouter","makeSsrSerovalPlugin","JSXElement","ReadableStream","AnyRouter","renderRouterToStream","request","router","responseHeaders","children","Request","Headers","writable","readable","TransformStream","docType","ssr","serializationAdapters","options","serovalPlugins","map","adapter","plugin","didRun","stream","renderToStream","_$memo","nonce","plugins","headers","get","pipeTo","responseStream","Response","status","state","statusCode"],"sources":["../../../src/ssr/renderRouterToStream.tsx"],"sourcesContent":["import * as Solid from 'solid-js/web'\nimport { isbot } from 'isbot'\nimport { transformReadableStreamWithRouter } from '@tanstack/router-core/ssr/server'\nimport { makeSsrSerovalPlugin } from '@tanstack/router-core'\nimport type { JSXElement } from 'solid-js'\nimport type { ReadableStream } from 'node:stream/web'\nimport type { AnyRouter } from '@tanstack/router-core'\n\nexport const renderRouterToStream = async ({\n request,\n router,\n responseHeaders,\n children,\n}: {\n request: Request\n router: AnyRouter\n responseHeaders: Headers\n children: () => JSXElement\n}) => {\n const { writable, readable } = new TransformStream()\n\n const docType = Solid.ssr('<!DOCTYPE html>')\n\n const serializationAdapters =\n (router.options as any)?.serializationAdapters ||\n (router.options.ssr as any)?.serializationAdapters\n const serovalPlugins = serializationAdapters?.map((adapter: any) => {\n const plugin = makeSsrSerovalPlugin(adapter, { didRun: false })\n return plugin\n })\n\n const stream = Solid.renderToStream(\n () => (\n <>\n {docType}\n {children()}\n </>\n ),\n {\n nonce: router.options.ssr?.nonce,\n plugins: serovalPlugins,\n } as any,\n )\n\n if (isbot(request.headers.get('User-Agent'))) {\n await stream\n }\n stream.pipeTo(writable)\n\n const responseStream = transformReadableStreamWithRouter(\n router,\n readable as unknown as ReadableStream,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n}\n"],"mappings":";;;;;;AAQA,IAAaO,uBAAuB,OAAO,EACzCC,SACAC,QACAC,iBACAC,eAMI;CACJ,MAAM,EAAEG,UAAUC,aAAa,IAAIC,iBAAiB;CAEpD,MAAMC,UAAUjB,MAAMkB,IAAI,kBAAkB;CAK5C,MAAMG,kBAFHZ,OAAOW,SAAiBD,yBACxBV,OAAOW,QAAQF,KAAaC,wBACeG,KAAKC,YAAiB;AAElE,SADepB,qBAAqBoB,SAAS,EAAEE,QAAQ,OAAO,CAAC;GAE/D;CAEF,MAAMC,SAAS1B,MAAM2B,qBACnB,CAEKV,SAAOW,KACPjB,SAAQ,CAEZ,EACD;EACEkB,OAAOpB,OAAOW,QAAQF,KAAKW;EAC3BC,SAAST;EACV,CACF;AAED,KAAIpB,MAAMO,QAAQuB,QAAQC,IAAI,aAAa,CAAC,CAC1C,OAAMN;AAERA,QAAOO,OAAOnB,SAAS;CAEvB,MAAMoB,iBAAiBhC,kCACrBO,QACAM,SACD;AACD,QAAO,IAAIoB,SAASD,gBAAuB;EACzCE,QAAQ3B,OAAO4B,MAAMC;EACrBP,SAASrB;EACV,CAAC"}
@@ -1,42 +1,33 @@
1
- import * as Solid from "solid-js/web";
2
1
  import { makeSsrSerovalPlugin } from "@tanstack/router-core";
3
- const renderRouterToString = async ({
4
- router,
5
- responseHeaders,
6
- children
7
- }) => {
8
- try {
9
- const serializationAdapters = router.options?.serializationAdapters || router.options.ssr?.serializationAdapters;
10
- const serovalPlugins = serializationAdapters?.map((adapter) => {
11
- const plugin = makeSsrSerovalPlugin(adapter, {
12
- didRun: false
13
- });
14
- return plugin;
15
- });
16
- let html = Solid.renderToString(children, {
17
- nonce: router.options.ssr?.nonce,
18
- plugins: serovalPlugins
19
- });
20
- router.serverSsr.setRenderFinished();
21
- const injectedHtml = router.serverSsr.takeBufferedHtml();
22
- if (injectedHtml) {
23
- html = html.replace(`</body>`, () => `${injectedHtml}</body>`);
24
- }
25
- return new Response(`<!DOCTYPE html>${html}`, {
26
- status: router.state.statusCode,
27
- headers: responseHeaders
28
- });
29
- } catch (error) {
30
- console.error("Render to string error:", error);
31
- return new Response("Internal Server Error", {
32
- status: 500,
33
- headers: responseHeaders
34
- });
35
- } finally {
36
- router.serverSsr?.cleanup();
37
- }
38
- };
39
- export {
40
- renderRouterToString
2
+ import * as Solid from "solid-js/web";
3
+ //#region src/ssr/renderRouterToString.tsx
4
+ var renderRouterToString = async ({ router, responseHeaders, children }) => {
5
+ try {
6
+ const serovalPlugins = (router.options?.serializationAdapters || router.options.ssr?.serializationAdapters)?.map((adapter) => {
7
+ return makeSsrSerovalPlugin(adapter, { didRun: false });
8
+ });
9
+ let html = Solid.renderToString(children, {
10
+ nonce: router.options.ssr?.nonce,
11
+ plugins: serovalPlugins
12
+ });
13
+ router.serverSsr.setRenderFinished();
14
+ const injectedHtml = router.serverSsr.takeBufferedHtml();
15
+ if (injectedHtml) html = html.replace(`</body>`, () => `${injectedHtml}</body>`);
16
+ return new Response(`<!DOCTYPE html>${html}`, {
17
+ status: router.state.statusCode,
18
+ headers: responseHeaders
19
+ });
20
+ } catch (error) {
21
+ console.error("Render to string error:", error);
22
+ return new Response("Internal Server Error", {
23
+ status: 500,
24
+ headers: responseHeaders
25
+ });
26
+ } finally {
27
+ router.serverSsr?.cleanup();
28
+ }
41
29
  };
42
- //# sourceMappingURL=renderRouterToString.js.map
30
+ //#endregion
31
+ export { renderRouterToString };
32
+
33
+ //# sourceMappingURL=renderRouterToString.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderRouterToString.js","sources":["../../../src/ssr/renderRouterToString.tsx"],"sourcesContent":["import * as Solid from 'solid-js/web'\nimport { makeSsrSerovalPlugin } from '@tanstack/router-core'\nimport type { AnyRouter } from '@tanstack/router-core'\nimport type { JSXElement } from 'solid-js'\n\nexport const renderRouterToString = async ({\n router,\n responseHeaders,\n children,\n}: {\n router: AnyRouter\n responseHeaders: Headers\n children: () => JSXElement\n}) => {\n try {\n const serializationAdapters =\n (router.options as any)?.serializationAdapters ||\n (router.options.ssr as any)?.serializationAdapters\n const serovalPlugins = serializationAdapters?.map((adapter: any) => {\n const plugin = makeSsrSerovalPlugin(adapter, { didRun: false })\n return plugin\n })\n\n let html = Solid.renderToString(children, {\n nonce: router.options.ssr?.nonce,\n plugins: serovalPlugins,\n } as any)\n router.serverSsr!.setRenderFinished()\n\n const injectedHtml = router.serverSsr!.takeBufferedHtml()\n if (injectedHtml) {\n html = html.replace(`</body>`, () => `${injectedHtml}</body>`)\n }\n return new Response(`<!DOCTYPE html>${html}`, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n } catch (error) {\n console.error('Render to string error:', error)\n return new Response('Internal Server Error', {\n status: 500,\n headers: responseHeaders,\n })\n } finally {\n router.serverSsr?.cleanup()\n }\n}\n"],"names":["renderRouterToString","router","responseHeaders","children","serializationAdapters","options","ssr","serovalPlugins","map","adapter","plugin","makeSsrSerovalPlugin","didRun","html","Solid","renderToString","nonce","plugins","serverSsr","setRenderFinished","injectedHtml","takeBufferedHtml","replace","Response","status","state","statusCode","headers","error","console","cleanup"],"mappings":";;AAKO,MAAMA,uBAAuB,OAAO;AAAA,EACzCC;AAAAA,EACAC;AAAAA,EACAC;AAKF,MAAM;AACJ,MAAI;AACF,UAAMC,wBACHH,OAAOI,SAAiBD,yBACxBH,OAAOI,QAAQC,KAAaF;AAC/B,UAAMG,iBAAiBH,uBAAuBI,IAAI,CAACC,YAAiB;AAClE,YAAMC,SAASC,qBAAqBF,SAAS;AAAA,QAAEG,QAAQ;AAAA,MAAA,CAAO;AAC9D,aAAOF;AAAAA,IACT,CAAC;AAED,QAAIG,OAAOC,MAAMC,eAAeZ,UAAU;AAAA,MACxCa,OAAOf,OAAOI,QAAQC,KAAKU;AAAAA,MAC3BC,SAASV;AAAAA,IAAAA,CACH;AACRN,WAAOiB,UAAWC,kBAAAA;AAElB,UAAMC,eAAenB,OAAOiB,UAAWG,iBAAAA;AACvC,QAAID,cAAc;AAChBP,aAAOA,KAAKS,QAAQ,WAAW,MAAM,GAAGF,YAAY,SAAS;AAAA,IAC/D;AACA,WAAO,IAAIG,SAAS,kBAAkBV,IAAI,IAAI;AAAA,MAC5CW,QAAQvB,OAAOwB,MAAMC;AAAAA,MACrBC,SAASzB;AAAAA,IAAAA,CACV;AAAA,EACH,SAAS0B,OAAO;AACdC,YAAQD,MAAM,2BAA2BA,KAAK;AAC9C,WAAO,IAAIL,SAAS,yBAAyB;AAAA,MAC3CC,QAAQ;AAAA,MACRG,SAASzB;AAAAA,IAAAA,CACV;AAAA,EACH,UAAA;AACED,WAAOiB,WAAWY,QAAAA;AAAAA,EACpB;AACF;"}
1
+ {"version":3,"file":"renderRouterToString.js","names":["Solid","makeSsrSerovalPlugin","AnyRouter","JSXElement","renderRouterToString","router","responseHeaders","children","Headers","serializationAdapters","options","ssr","serovalPlugins","map","adapter","plugin","didRun","html","renderToString","nonce","plugins","serverSsr","setRenderFinished","injectedHtml","takeBufferedHtml","replace","Response","status","state","statusCode","headers","error","console","cleanup"],"sources":["../../../src/ssr/renderRouterToString.tsx"],"sourcesContent":["import * as Solid from 'solid-js/web'\nimport { makeSsrSerovalPlugin } from '@tanstack/router-core'\nimport type { AnyRouter } from '@tanstack/router-core'\nimport type { JSXElement } from 'solid-js'\n\nexport const renderRouterToString = async ({\n router,\n responseHeaders,\n children,\n}: {\n router: AnyRouter\n responseHeaders: Headers\n children: () => JSXElement\n}) => {\n try {\n const serializationAdapters =\n (router.options as any)?.serializationAdapters ||\n (router.options.ssr as any)?.serializationAdapters\n const serovalPlugins = serializationAdapters?.map((adapter: any) => {\n const plugin = makeSsrSerovalPlugin(adapter, { didRun: false })\n return plugin\n })\n\n let html = Solid.renderToString(children, {\n nonce: router.options.ssr?.nonce,\n plugins: serovalPlugins,\n } as any)\n router.serverSsr!.setRenderFinished()\n\n const injectedHtml = router.serverSsr!.takeBufferedHtml()\n if (injectedHtml) {\n html = html.replace(`</body>`, () => `${injectedHtml}</body>`)\n }\n return new Response(`<!DOCTYPE html>${html}`, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n } catch (error) {\n console.error('Render to string error:', error)\n return new Response('Internal Server Error', {\n status: 500,\n headers: responseHeaders,\n })\n } finally {\n router.serverSsr?.cleanup()\n }\n}\n"],"mappings":";;;AAKA,IAAaI,uBAAuB,OAAO,EACzCC,QACAC,iBACAC,eAKI;AACJ,KAAI;EAIF,MAAMK,kBAFHP,OAAOK,SAAiBD,yBACxBJ,OAAOK,QAAQC,KAAaF,wBACeI,KAAKC,YAAiB;AAElE,UADeb,qBAAqBa,SAAS,EAAEE,QAAQ,OAAO,CAAC;IAE/D;EAEF,IAAIC,OAAOjB,MAAMkB,eAAeX,UAAU;GACxCY,OAAOd,OAAOK,QAAQC,KAAKQ;GAC3BC,SAASR;GACV,CAAQ;AACTP,SAAOgB,UAAWC,mBAAmB;EAErC,MAAMC,eAAelB,OAAOgB,UAAWG,kBAAkB;AACzD,MAAID,aACFN,QAAOA,KAAKQ,QAAQ,iBAAiB,GAAGF,aAAY,SAAU;AAEhE,SAAO,IAAIG,SAAS,kBAAkBT,QAAQ;GAC5CU,QAAQtB,OAAOuB,MAAMC;GACrBC,SAASxB;GACV,CAAC;UACKyB,OAAO;AACdC,UAAQD,MAAM,2BAA2BA,MAAM;AAC/C,SAAO,IAAIL,SAAS,yBAAyB;GAC3CC,QAAQ;GACRG,SAASxB;GACV,CAAC;WACM;AACRD,SAAOgB,WAAWY,SAAS"}
@@ -1,14 +1,7 @@
1
1
  import { RouterServer } from "./RouterServer.js";
2
+ import { renderRouterToString } from "./renderRouterToString.js";
2
3
  import { defaultRenderHandler } from "./defaultRenderHandler.js";
3
- import { defaultStreamHandler } from "./defaultStreamHandler.js";
4
4
  import { renderRouterToStream } from "./renderRouterToStream.js";
5
- import { renderRouterToString } from "./renderRouterToString.js";
5
+ import { defaultStreamHandler } from "./defaultStreamHandler.js";
6
6
  export * from "@tanstack/router-core/ssr/server";
7
- export {
8
- RouterServer,
9
- defaultRenderHandler,
10
- defaultStreamHandler,
11
- renderRouterToStream,
12
- renderRouterToString
13
- };
14
- //# sourceMappingURL=server.js.map
7
+ export { RouterServer, defaultRenderHandler, defaultStreamHandler, renderRouterToStream, renderRouterToString };
@@ -51,11 +51,14 @@ export declare function useBlocker(blockerFnOrOpts?: LegacyBlockerOpts): Solid.A
51
51
  * @deprecated Use the UseBlockerOpts object syntax instead
52
52
  */
53
53
  export declare function useBlocker(blockerFn?: LegacyBlockerFn, condition?: boolean | any): Solid.Accessor<BlockerResolver>;
54
- export declare function Block<TRouter extends AnyRouter = RegisteredRouter, TWithResolver extends boolean = boolean>(opts: PromptProps<TRouter, TWithResolver>): SolidNode;
55
- /**
56
- * @deprecated Use the UseBlockerOpts property instead
57
- */
58
- export declare function Block(opts: LegacyPromptProps): SolidNode;
54
+ interface BlockComponent {
55
+ <TRouter extends AnyRouter = RegisteredRouter, TWithResolver extends boolean = boolean>(opts: PromptProps<TRouter, TWithResolver>): SolidNode;
56
+ /**
57
+ * @deprecated Use the UseBlockerOpts property instead
58
+ */
59
+ (opts: LegacyPromptProps): SolidNode;
60
+ }
61
+ export declare const Block: BlockComponent;
59
62
  type LegacyPromptProps = {
60
63
  blockerFn?: LegacyBlockerFn;
61
64
  condition?: boolean | any;