@tanstack/solid-router 2.0.0-alpha.1 → 2.0.0-alpha.3

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 (207) hide show
  1. package/dist/cjs/Asset.cjs +124 -167
  2. package/dist/cjs/Asset.cjs.map +1 -1
  3. package/dist/cjs/CatchBoundary.cjs +52 -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 +35 -27
  8. package/dist/cjs/HeadContent.cjs.map +1 -1
  9. package/dist/cjs/HeadContent.dev.cjs +48 -41
  10. package/dist/cjs/HeadContent.dev.cjs.map +1 -1
  11. package/dist/cjs/Match.cjs +367 -442
  12. package/dist/cjs/Match.cjs.map +1 -1
  13. package/dist/cjs/Matches.cjs +114 -158
  14. package/dist/cjs/Matches.cjs.map +1 -1
  15. package/dist/cjs/RouterProvider.cjs +29 -41
  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 +20 -22
  20. package/dist/cjs/ScriptOnce.cjs.map +1 -1
  21. package/dist/cjs/Scripts.cjs +43 -58
  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 +91 -124
  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 +31 -53
  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/fileRoute.d.cts +2 -2
  33. package/dist/cjs/headContentUtils.cjs +132 -170
  34. package/dist/cjs/headContentUtils.cjs.map +1 -1
  35. package/dist/cjs/index.cjs +245 -176
  36. package/dist/cjs/index.dev.cjs +245 -176
  37. package/dist/cjs/lazyRouteComponent.cjs +48 -54
  38. package/dist/cjs/lazyRouteComponent.cjs.map +1 -1
  39. package/dist/cjs/link.cjs +310 -345
  40. package/dist/cjs/link.cjs.map +1 -1
  41. package/dist/cjs/matchContext.cjs +9 -23
  42. package/dist/cjs/matchContext.cjs.map +1 -1
  43. package/dist/cjs/not-found.cjs +26 -34
  44. package/dist/cjs/not-found.cjs.map +1 -1
  45. package/dist/cjs/renderRouteNotFound.cjs +23 -16
  46. package/dist/cjs/renderRouteNotFound.cjs.map +1 -1
  47. package/dist/cjs/route.cjs +200 -215
  48. package/dist/cjs/route.cjs.map +1 -1
  49. package/dist/cjs/router.cjs +18 -16
  50. package/dist/cjs/router.cjs.map +1 -1
  51. package/dist/cjs/routerContext.cjs +8 -22
  52. package/dist/cjs/routerContext.cjs.map +1 -1
  53. package/dist/cjs/scroll-restoration.cjs +25 -35
  54. package/dist/cjs/scroll-restoration.cjs.map +1 -1
  55. package/dist/cjs/ssr/RouterClient.cjs +18 -23
  56. package/dist/cjs/ssr/RouterClient.cjs.map +1 -1
  57. package/dist/cjs/ssr/RouterServer.cjs +10 -10
  58. package/dist/cjs/ssr/RouterServer.cjs.map +1 -1
  59. package/dist/cjs/ssr/client.cjs +2 -4
  60. package/dist/cjs/ssr/defaultRenderHandler.cjs +12 -16
  61. package/dist/cjs/ssr/defaultRenderHandler.cjs.map +1 -1
  62. package/dist/cjs/ssr/defaultStreamHandler.cjs +13 -18
  63. package/dist/cjs/ssr/defaultStreamHandler.cjs.map +1 -1
  64. package/dist/cjs/ssr/renderRouterToStream.cjs +26 -54
  65. package/dist/cjs/ssr/renderRouterToStream.cjs.map +1 -1
  66. package/dist/cjs/ssr/renderRouterToString.cjs +33 -57
  67. package/dist/cjs/ssr/renderRouterToString.cjs.map +1 -1
  68. package/dist/cjs/ssr/server.cjs +18 -18
  69. package/dist/cjs/useBlocker.cjs +140 -177
  70. package/dist/cjs/useBlocker.cjs.map +1 -1
  71. package/dist/cjs/useBlocker.d.cts +8 -5
  72. package/dist/cjs/useCanGoBack.cjs +6 -5
  73. package/dist/cjs/useCanGoBack.cjs.map +1 -1
  74. package/dist/cjs/useLoaderData.cjs +12 -11
  75. package/dist/cjs/useLoaderData.cjs.map +1 -1
  76. package/dist/cjs/useLoaderDeps.cjs +12 -14
  77. package/dist/cjs/useLoaderDeps.cjs.map +1 -1
  78. package/dist/cjs/useLocation.cjs +6 -7
  79. package/dist/cjs/useLocation.cjs.map +1 -1
  80. package/dist/cjs/useMatch.cjs +25 -46
  81. package/dist/cjs/useMatch.cjs.map +1 -1
  82. package/dist/cjs/useNavigate.cjs +20 -38
  83. package/dist/cjs/useNavigate.cjs.map +1 -1
  84. package/dist/cjs/useParams.cjs +14 -13
  85. package/dist/cjs/useParams.cjs.map +1 -1
  86. package/dist/cjs/useRouteContext.cjs +9 -8
  87. package/dist/cjs/useRouteContext.cjs.map +1 -1
  88. package/dist/cjs/useRouter.cjs +13 -26
  89. package/dist/cjs/useRouter.cjs.map +1 -1
  90. package/dist/cjs/useRouterState.cjs +40 -43
  91. package/dist/cjs/useRouterState.cjs.map +1 -1
  92. package/dist/cjs/useSearch.cjs +13 -12
  93. package/dist/cjs/useSearch.cjs.map +1 -1
  94. package/dist/cjs/utils.cjs +57 -49
  95. package/dist/cjs/utils.cjs.map +1 -1
  96. package/dist/esm/Asset.js +122 -166
  97. package/dist/esm/Asset.js.map +1 -1
  98. package/dist/esm/CatchBoundary.js +48 -50
  99. package/dist/esm/CatchBoundary.js.map +1 -1
  100. package/dist/esm/ClientOnly.js +58 -22
  101. package/dist/esm/ClientOnly.js.map +1 -1
  102. package/dist/esm/HeadContent.dev.js +46 -40
  103. package/dist/esm/HeadContent.dev.js.map +1 -1
  104. package/dist/esm/HeadContent.js +33 -26
  105. package/dist/esm/HeadContent.js.map +1 -1
  106. package/dist/esm/Match.js +359 -422
  107. package/dist/esm/Match.js.map +1 -1
  108. package/dist/esm/Matches.js +107 -142
  109. package/dist/esm/Matches.js.map +1 -1
  110. package/dist/esm/RouterProvider.js +26 -40
  111. package/dist/esm/RouterProvider.js.map +1 -1
  112. package/dist/esm/SafeFragment.js +6 -5
  113. package/dist/esm/SafeFragment.js.map +1 -1
  114. package/dist/esm/ScriptOnce.js +18 -21
  115. package/dist/esm/ScriptOnce.js.map +1 -1
  116. package/dist/esm/Scripts.js +42 -58
  117. package/dist/esm/Scripts.js.map +1 -1
  118. package/dist/esm/ScrollRestoration.js +25 -29
  119. package/dist/esm/ScrollRestoration.js.map +1 -1
  120. package/dist/esm/Transitioner.js +87 -105
  121. package/dist/esm/Transitioner.js.map +1 -1
  122. package/dist/esm/awaited.js +28 -36
  123. package/dist/esm/awaited.js.map +1 -1
  124. package/dist/esm/fileRoute.d.ts +2 -2
  125. package/dist/esm/fileRoute.js +90 -92
  126. package/dist/esm/fileRoute.js.map +1 -1
  127. package/dist/esm/headContentUtils.js +129 -152
  128. package/dist/esm/headContentUtils.js.map +1 -1
  129. package/dist/esm/index.dev.js +15 -115
  130. package/dist/esm/index.js +17 -116
  131. package/dist/esm/lazyRouteComponent.js +46 -53
  132. package/dist/esm/lazyRouteComponent.js.map +1 -1
  133. package/dist/esm/link.js +306 -329
  134. package/dist/esm/link.js.map +1 -1
  135. package/dist/esm/matchContext.js +7 -7
  136. package/dist/esm/matchContext.js.map +1 -1
  137. package/dist/esm/not-found.js +23 -33
  138. package/dist/esm/not-found.js.map +1 -1
  139. package/dist/esm/renderRouteNotFound.js +20 -15
  140. package/dist/esm/renderRouteNotFound.js.map +1 -1
  141. package/dist/esm/route.js +193 -218
  142. package/dist/esm/route.js.map +1 -1
  143. package/dist/esm/router.js +17 -17
  144. package/dist/esm/router.js.map +1 -1
  145. package/dist/esm/routerContext.js +6 -5
  146. package/dist/esm/routerContext.js.map +1 -1
  147. package/dist/esm/scroll-restoration.js +23 -34
  148. package/dist/esm/scroll-restoration.js.map +1 -1
  149. package/dist/esm/ssr/RouterClient.js +16 -22
  150. package/dist/esm/ssr/RouterClient.js.map +1 -1
  151. package/dist/esm/ssr/RouterServer.js +9 -10
  152. package/dist/esm/ssr/RouterServer.js.map +1 -1
  153. package/dist/esm/ssr/client.js +1 -4
  154. package/dist/esm/ssr/defaultRenderHandler.js +11 -15
  155. package/dist/esm/ssr/defaultRenderHandler.js.map +1 -1
  156. package/dist/esm/ssr/defaultStreamHandler.js +12 -17
  157. package/dist/esm/ssr/defaultStreamHandler.js.map +1 -1
  158. package/dist/esm/ssr/renderRouterToStream.js +23 -36
  159. package/dist/esm/ssr/renderRouterToStream.js.map +1 -1
  160. package/dist/esm/ssr/renderRouterToString.js +31 -40
  161. package/dist/esm/ssr/renderRouterToString.js.map +1 -1
  162. package/dist/esm/ssr/server.js +3 -10
  163. package/dist/esm/useBlocker.d.ts +8 -5
  164. package/dist/esm/useBlocker.js +136 -159
  165. package/dist/esm/useBlocker.js.map +1 -1
  166. package/dist/esm/useCanGoBack.js +6 -5
  167. package/dist/esm/useCanGoBack.js.map +1 -1
  168. package/dist/esm/useLoaderData.js +12 -11
  169. package/dist/esm/useLoaderData.js.map +1 -1
  170. package/dist/esm/useLoaderDeps.js +12 -14
  171. package/dist/esm/useLoaderDeps.js.map +1 -1
  172. package/dist/esm/useLocation.js +6 -7
  173. package/dist/esm/useLocation.js.map +1 -1
  174. package/dist/esm/useMatch.js +21 -28
  175. package/dist/esm/useMatch.js.map +1 -1
  176. package/dist/esm/useNavigate.js +18 -22
  177. package/dist/esm/useNavigate.js.map +1 -1
  178. package/dist/esm/useParams.js +14 -13
  179. package/dist/esm/useParams.js.map +1 -1
  180. package/dist/esm/useRouteContext.js +9 -8
  181. package/dist/esm/useRouteContext.js.map +1 -1
  182. package/dist/esm/useRouter.js +9 -8
  183. package/dist/esm/useRouter.js.map +1 -1
  184. package/dist/esm/useRouterState.js +38 -42
  185. package/dist/esm/useRouterState.js.map +1 -1
  186. package/dist/esm/useSearch.js +13 -12
  187. package/dist/esm/useSearch.js.map +1 -1
  188. package/dist/esm/utils.js +55 -33
  189. package/dist/esm/utils.js.map +1 -1
  190. package/dist/source/fileRoute.d.ts +2 -2
  191. package/dist/source/useBlocker.d.ts +8 -5
  192. package/dist/source/useBlocker.jsx +2 -2
  193. package/dist/source/useBlocker.jsx.map +1 -1
  194. package/dist/source/useRouterState.jsx +7 -0
  195. package/dist/source/useRouterState.jsx.map +1 -1
  196. package/package.json +3 -3
  197. package/src/fileRoute.ts +2 -2
  198. package/src/useBlocker.tsx +15 -10
  199. package/src/useRouterState.tsx +10 -0
  200. package/dist/cjs/index.cjs.map +0 -1
  201. package/dist/cjs/index.dev.cjs.map +0 -1
  202. package/dist/cjs/ssr/client.cjs.map +0 -1
  203. package/dist/cjs/ssr/server.cjs.map +0 -1
  204. package/dist/esm/index.dev.js.map +0 -1
  205. package/dist/esm/index.js.map +0 -1
  206. package/dist/esm/ssr/client.js.map +0 -1
  207. package/dist/esm/ssr/server.js.map +0 -1
@@ -1,44 +1,50 @@
1
- import { createComponent } from "@solidjs/web";
2
- import { createEffect, createMemo, For } from "solid-js";
3
- import { Asset } from "./Asset.js";
4
1
  import { useHydrated } from "./ClientOnly.js";
2
+ import { Asset } from "./Asset.js";
5
3
  import { useTags } from "./headContentUtils.js";
6
- const DEV_STYLES_ATTR = "data-tanstack-router-dev-styles";
4
+ import { createComponent } from "@solidjs/web";
5
+ import { For, createEffect, createMemo } from "solid-js";
6
+ //#region src/HeadContent.dev.tsx
7
+ var DEV_STYLES_ATTR = "data-tanstack-router-dev-styles";
8
+ /**
9
+ * @description The `HeadContent` component is used to render meta tags, links, and scripts for the current route.
10
+ * When using full document hydration (hydrating from `<html>`), this component should be rendered in the `<body>`
11
+ * to ensure it's part of the reactive tree and updates correctly during client-side navigation.
12
+ * The component uses portals internally to render content into the `<head>` element.
13
+ *
14
+ * Development version: filters out dev styles link after hydration and
15
+ * includes a fallback cleanup effect for hydration mismatch cases.
16
+ */
7
17
  function HeadContent() {
8
- const tags = useTags();
9
- const hydrated = useHydrated();
10
- createEffect(() => [hydrated()], ([hydrated2]) => {
11
- if (hydrated2) {
12
- document.querySelectorAll(`link[${DEV_STYLES_ATTR}]`).forEach((el) => el.remove());
13
- }
14
- });
15
- const filteredTags = createMemo(() => {
16
- if (hydrated()) {
17
- return tags().filter((tag) => !tag.attrs?.[DEV_STYLES_ATTR]);
18
- }
19
- return tags();
20
- });
21
- return createComponent(For, {
22
- get each() {
23
- return filteredTags();
24
- },
25
- children: (tag) => {
26
- const t = tag();
27
- return createComponent(Asset, {
28
- get tag() {
29
- return t.tag;
30
- },
31
- get attrs() {
32
- return t.attrs;
33
- },
34
- get children() {
35
- return t.children;
36
- }
37
- });
38
- }
39
- });
18
+ const tags = useTags();
19
+ const hydrated = useHydrated();
20
+ createEffect(() => [hydrated()], ([hydrated]) => {
21
+ if (hydrated) document.querySelectorAll(`link[${DEV_STYLES_ATTR}]`).forEach((el) => el.remove());
22
+ });
23
+ const filteredTags = createMemo(() => {
24
+ if (hydrated()) return tags().filter((tag) => !tag.attrs?.[DEV_STYLES_ATTR]);
25
+ return tags();
26
+ });
27
+ return createComponent(For, {
28
+ get each() {
29
+ return filteredTags();
30
+ },
31
+ children: (tag) => {
32
+ const t = tag();
33
+ return createComponent(Asset, {
34
+ get tag() {
35
+ return t.tag;
36
+ },
37
+ get attrs() {
38
+ return t.attrs;
39
+ },
40
+ get children() {
41
+ return t.children;
42
+ }
43
+ });
44
+ }
45
+ });
40
46
  }
41
- export {
42
- HeadContent
43
- };
44
- //# sourceMappingURL=HeadContent.dev.js.map
47
+ //#endregion
48
+ export { HeadContent };
49
+
50
+ //# sourceMappingURL=HeadContent.dev.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeadContent.dev.js","sources":["../../src/HeadContent.dev.tsx"],"sourcesContent":["import { For, createEffect, createMemo } from 'solid-js'\nimport { Asset } from './Asset'\nimport { useHydrated } from './ClientOnly'\nimport { useTags } from './headContentUtils'\n\nconst DEV_STYLES_ATTR = 'data-tanstack-router-dev-styles'\n\n/**\n * @description The `HeadContent` component is used to render meta tags, links, and scripts for the current route.\n * When using full document hydration (hydrating from `<html>`), this component should be rendered in the `<body>`\n * to ensure it's part of the reactive tree and updates correctly during client-side navigation.\n * The component uses portals internally to render content into the `<head>` element.\n *\n * Development version: filters out dev styles link after hydration and\n * includes a fallback cleanup effect for hydration mismatch cases.\n */\nexport function HeadContent() {\n const tags = useTags()\n const hydrated = useHydrated()\n\n // Fallback cleanup for hydration mismatch cases\n // Runs when hydration completes to remove any orphaned dev styles links from DOM\n createEffect(\n () => [hydrated()] as const,\n ([hydrated]) => {\n if (hydrated) {\n document\n .querySelectorAll(`link[${DEV_STYLES_ATTR}]`)\n .forEach((el) => el.remove())\n }\n },\n )\n\n // Filter out dev styles after hydration\n const filteredTags = createMemo(() => {\n if (hydrated()) {\n return tags().filter((tag) => !tag.attrs?.[DEV_STYLES_ATTR])\n }\n return tags()\n })\n\n return (\n <For each={filteredTags()}>\n {(tag) => {\n const t = tag() as any\n return <Asset tag={t.tag} attrs={t.attrs} children={t.children} />\n }}\n </For>\n )\n}\n"],"names":["DEV_STYLES_ATTR","HeadContent","tags","useTags","hydrated","useHydrated","createEffect","document","querySelectorAll","forEach","el","remove","filteredTags","createMemo","filter","tag","attrs","_$createComponent","For","each","children","t","Asset"],"mappings":";;;;;AAKA,MAAMA,kBAAkB;AAWjB,SAASC,cAAc;AAC5B,QAAMC,OAAOC,QAAAA;AACb,QAAMC,WAAWC,YAAAA;AAIjBC,eACE,MAAM,CAACF,SAAAA,CAAU,GACjB,CAAC,CAACA,SAAQ,MAAM;AACd,QAAIA,WAAU;AACZG,eACGC,iBAAiB,QAAQR,eAAe,GAAG,EAC3CS,QAASC,CAAAA,OAAOA,GAAGC,OAAAA,CAAQ;AAAA,IAChC;AAAA,EACF,CACF;AAGA,QAAMC,eAAeC,WAAW,MAAM;AACpC,QAAIT,YAAY;AACd,aAAOF,KAAAA,EAAOY,OAAQC,CAAAA,QAAQ,CAACA,IAAIC,QAAQhB,eAAe,CAAC;AAAA,IAC7D;AACA,WAAOE,KAAAA;AAAAA,EACT,CAAC;AAED,SAAAe,gBACGC,KAAG;AAAA,IAAA,IAACC,OAAI;AAAA,aAAEP,aAAAA;AAAAA,IAAc;AAAA,IAAAQ,UACrBL,CAAAA,QAAQ;AACR,YAAMM,IAAIN,IAAAA;AACV,aAAAE,gBAAQK,OAAK;AAAA,QAAA,IAACP,MAAG;AAAA,iBAAEM,EAAEN;AAAAA,QAAG;AAAA,QAAA,IAAEC,QAAK;AAAA,iBAAEK,EAAEL;AAAAA,QAAK;AAAA,QAAA,IAAEI,WAAQ;AAAA,iBAAEC,EAAED;AAAAA,QAAQ;AAAA,MAAA,CAAA;AAAA,IAChE;AAAA,EAAA,CAAC;AAGP;"}
1
+ {"version":3,"file":"HeadContent.dev.js","names":["For","createEffect","createMemo","Asset","useHydrated","useTags","DEV_STYLES_ATTR","HeadContent","tags","hydrated","const","document","querySelectorAll","forEach","el","remove","filteredTags","filter","tag","attrs","_$createComponent","each","children","t"],"sources":["../../src/HeadContent.dev.tsx"],"sourcesContent":["import { For, createEffect, createMemo } from 'solid-js'\nimport { Asset } from './Asset'\nimport { useHydrated } from './ClientOnly'\nimport { useTags } from './headContentUtils'\n\nconst DEV_STYLES_ATTR = 'data-tanstack-router-dev-styles'\n\n/**\n * @description The `HeadContent` component is used to render meta tags, links, and scripts for the current route.\n * When using full document hydration (hydrating from `<html>`), this component should be rendered in the `<body>`\n * to ensure it's part of the reactive tree and updates correctly during client-side navigation.\n * The component uses portals internally to render content into the `<head>` element.\n *\n * Development version: filters out dev styles link after hydration and\n * includes a fallback cleanup effect for hydration mismatch cases.\n */\nexport function HeadContent() {\n const tags = useTags()\n const hydrated = useHydrated()\n\n // Fallback cleanup for hydration mismatch cases\n // Runs when hydration completes to remove any orphaned dev styles links from DOM\n createEffect(\n () => [hydrated()] as const,\n ([hydrated]) => {\n if (hydrated) {\n document\n .querySelectorAll(`link[${DEV_STYLES_ATTR}]`)\n .forEach((el) => el.remove())\n }\n },\n )\n\n // Filter out dev styles after hydration\n const filteredTags = createMemo(() => {\n if (hydrated()) {\n return tags().filter((tag) => !tag.attrs?.[DEV_STYLES_ATTR])\n }\n return tags()\n })\n\n return (\n <For each={filteredTags()}>\n {(tag) => {\n const t = tag() as any\n return <Asset tag={t.tag} attrs={t.attrs} children={t.children} />\n }}\n </For>\n )\n}\n"],"mappings":";;;;;;AAKA,IAAMM,kBAAkB;;;;;;;;;;AAWxB,SAAgBC,cAAc;CAC5B,MAAMC,OAAOH,SAAS;CACtB,MAAMI,WAAWL,aAAa;AAI9BH,oBACQ,CAACQ,UAAU,CAAC,GACjB,CAACA,cAAc;AACd,MAAIA,SACFE,UACGC,iBAAiB,QAAQN,gBAAe,GAAI,CAC5CO,SAASC,OAAOA,GAAGC,QAAQ,CAAC;GAGpC;CAGD,MAAMC,eAAed,iBAAiB;AACpC,MAAIO,UAAU,CACZ,QAAOD,MAAM,CAACS,QAAQC,QAAQ,CAACA,IAAIC,QAAQb,iBAAiB;AAE9D,SAAOE,MAAM;GACb;AAEF,QAAAY,gBACGpB,KAAG;EAAA,IAACqB,OAAI;AAAA,UAAEL,cAAc;;EAAAM,WACrBJ,QAAQ;GACR,MAAMK,IAAIL,KAAK;AACf,UAAAE,gBAAQjB,OAAK;IAAA,IAACe,MAAG;AAAA,YAAEK,EAAEL;;IAAG,IAAEC,QAAK;AAAA,YAAEI,EAAEJ;;IAAK,IAAEG,WAAQ;AAAA,YAAEC,EAAED;;IAAQ,CAAA;;EAC/D,CAAA"}
@@ -1,30 +1,37 @@
1
- import { createComponent } from "@solidjs/web";
2
- import { For } from "solid-js";
3
1
  import { Asset } from "./Asset.js";
4
2
  import { useTags } from "./headContentUtils.js";
3
+ import { createComponent } from "@solidjs/web";
4
+ import { For } from "solid-js";
5
+ //#region src/HeadContent.tsx
6
+ /**
7
+ * @description The `HeadContent` component is used to render meta tags, links, and scripts for the current route.
8
+ * When using full document hydration (hydrating from `<html>`), this component should be rendered in the `<body>`
9
+ * to ensure it's part of the reactive tree and updates correctly during client-side navigation.
10
+ * The component uses portals internally to render content into the `<head>` element.
11
+ */
5
12
  function HeadContent() {
6
- const tags = useTags();
7
- return createComponent(For, {
8
- get each() {
9
- return tags();
10
- },
11
- children: (tag) => {
12
- const t = tag();
13
- return createComponent(Asset, {
14
- get tag() {
15
- return t.tag;
16
- },
17
- get attrs() {
18
- return t.attrs;
19
- },
20
- get children() {
21
- return t.children;
22
- }
23
- });
24
- }
25
- });
13
+ const tags = useTags();
14
+ return createComponent(For, {
15
+ get each() {
16
+ return tags();
17
+ },
18
+ children: (tag) => {
19
+ const t = tag();
20
+ return createComponent(Asset, {
21
+ get tag() {
22
+ return t.tag;
23
+ },
24
+ get attrs() {
25
+ return t.attrs;
26
+ },
27
+ get children() {
28
+ return t.children;
29
+ }
30
+ });
31
+ }
32
+ });
26
33
  }
27
- export {
28
- HeadContent
29
- };
30
- //# sourceMappingURL=HeadContent.js.map
34
+ //#endregion
35
+ export { HeadContent };
36
+
37
+ //# sourceMappingURL=HeadContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeadContent.js","sources":["../../src/HeadContent.tsx"],"sourcesContent":["import { For } from 'solid-js'\nimport { Asset } from './Asset'\nimport { useTags } from './headContentUtils'\n\n/**\n * @description The `HeadContent` component is used to render meta tags, links, and scripts for the current route.\n * When using full document hydration (hydrating from `<html>`), this component should be rendered in the `<body>`\n * to ensure it's part of the reactive tree and updates correctly during client-side navigation.\n * The component uses portals internally to render content into the `<head>` element.\n */\nexport function HeadContent() {\n const tags = useTags()\n\n return (\n <For each={tags()}>\n {(tag) => {\n const t = tag() as any\n return <Asset tag={t.tag} attrs={t.attrs} children={t.children} />\n }}\n </For>\n )\n}\n"],"names":["HeadContent","tags","useTags","_$createComponent","For","each","children","tag","t","Asset","attrs"],"mappings":";;;;AAUO,SAASA,cAAc;AAC5B,QAAMC,OAAOC,QAAAA;AAEb,SAAAC,gBACGC,KAAG;AAAA,IAAA,IAACC,OAAI;AAAA,aAAEJ,KAAAA;AAAAA,IAAM;AAAA,IAAAK,UACbC,CAAAA,QAAQ;AACR,YAAMC,IAAID,IAAAA;AACV,aAAAJ,gBAAQM,OAAK;AAAA,QAAA,IAACF,MAAG;AAAA,iBAAEC,EAAED;AAAAA,QAAG;AAAA,QAAA,IAAEG,QAAK;AAAA,iBAAEF,EAAEE;AAAAA,QAAK;AAAA,QAAA,IAAEJ,WAAQ;AAAA,iBAAEE,EAAEF;AAAAA,QAAQ;AAAA,MAAA,CAAA;AAAA,IAChE;AAAA,EAAA,CAAC;AAGP;"}
1
+ {"version":3,"file":"HeadContent.js","names":["For","Asset","useTags","HeadContent","tags","_$createComponent","each","children","tag","t","attrs"],"sources":["../../src/HeadContent.tsx"],"sourcesContent":["import { For } from 'solid-js'\nimport { Asset } from './Asset'\nimport { useTags } from './headContentUtils'\n\n/**\n * @description The `HeadContent` component is used to render meta tags, links, and scripts for the current route.\n * When using full document hydration (hydrating from `<html>`), this component should be rendered in the `<body>`\n * to ensure it's part of the reactive tree and updates correctly during client-side navigation.\n * The component uses portals internally to render content into the `<head>` element.\n */\nexport function HeadContent() {\n const tags = useTags()\n\n return (\n <For each={tags()}>\n {(tag) => {\n const t = tag() as any\n return <Asset tag={t.tag} attrs={t.attrs} children={t.children} />\n }}\n </For>\n )\n}\n"],"mappings":";;;;;;;;;;;AAUA,SAAgBG,cAAc;CAC5B,MAAMC,OAAOF,SAAS;AAEtB,QAAAG,gBACGL,KAAG;EAAA,IAACM,OAAI;AAAA,UAAEF,MAAM;;EAAAG,WACbC,QAAQ;GACR,MAAMC,IAAID,KAAK;AACf,UAAAH,gBAAQJ,OAAK;IAAA,IAACO,MAAG;AAAA,YAAEC,EAAED;;IAAG,IAAEE,QAAK;AAAA,YAAED,EAAEC;;IAAK,IAAEH,WAAQ;AAAA,YAAEE,EAAEF;;IAAQ,CAAA;;EAC/D,CAAA"}