polen 0.10.0-next.14 → 0.10.0-next.4

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 (525) hide show
  1. package/README.md +1 -2
  2. package/build/api/builder/builder.js +1 -1
  3. package/build/api/builder/builder.js.map +1 -1
  4. package/build/api/config/load.js +6 -6
  5. package/build/api/config/load.js.map +1 -1
  6. package/build/api/config-resolver/resolve.js +2 -2
  7. package/build/api/config-resolver/resolve.js.map +1 -1
  8. package/build/api/schema/data-sources/schema-directory/schema-directory.js +1 -1
  9. package/build/api/schema/data-sources/schema-directory/schema-directory.js.map +1 -1
  10. package/build/api/vite/plugins/branding/index.js +4 -4
  11. package/build/api/vite/plugins/branding/index.js.map +1 -1
  12. package/build/api/vite/plugins/build.d.ts.map +1 -1
  13. package/build/api/vite/plugins/build.js +4 -12
  14. package/build/api/vite/plugins/build.js.map +1 -1
  15. package/build/api/vite/plugins/core.d.ts +2 -2
  16. package/build/api/vite/plugins/core.d.ts.map +1 -1
  17. package/build/api/vite/plugins/core.js +13 -13
  18. package/build/api/vite/plugins/core.js.map +1 -1
  19. package/build/api/vite/plugins/pages.d.ts +14 -8
  20. package/build/api/vite/plugins/pages.d.ts.map +1 -1
  21. package/build/api/vite/plugins/pages.js +185 -111
  22. package/build/api/vite/plugins/pages.js.map +1 -1
  23. package/build/api/vite/plugins/serve.d.ts.map +1 -1
  24. package/build/api/vite/plugins/serve.js +12 -52
  25. package/build/api/vite/plugins/serve.js.map +1 -1
  26. package/build/cli/_/self-contained-mode.js +5 -5
  27. package/build/cli/_/self-contained-mode.js.map +1 -1
  28. package/build/lib/demos/config-schema.d.ts +20 -20
  29. package/build/lib/file-router/diagnostic-reporter.js +2 -2
  30. package/build/lib/file-router/diagnostic-reporter.js.map +1 -1
  31. package/build/lib/file-router/file-router.d.ts +2 -0
  32. package/build/lib/file-router/file-router.d.ts.map +1 -1
  33. package/build/lib/file-router/file-router.js +2 -0
  34. package/build/lib/file-router/file-router.js.map +1 -1
  35. package/build/lib/file-router/route.d.ts +0 -2
  36. package/build/lib/file-router/route.d.ts.map +1 -1
  37. package/build/lib/file-router/route.js.map +1 -1
  38. package/build/lib/file-router/scan-tree.d.ts +20 -0
  39. package/build/lib/file-router/scan-tree.d.ts.map +1 -0
  40. package/build/lib/file-router/scan-tree.js +158 -0
  41. package/build/lib/file-router/scan-tree.js.map +1 -0
  42. package/build/lib/file-router/scan.d.ts.map +1 -1
  43. package/build/lib/file-router/scan.js +13 -22
  44. package/build/lib/file-router/scan.js.map +1 -1
  45. package/build/lib/file-router/sidebar/index.d.ts +3 -0
  46. package/build/lib/file-router/sidebar/index.d.ts.map +1 -0
  47. package/build/lib/file-router/sidebar/index.js +4 -0
  48. package/build/lib/file-router/sidebar/index.js.map +1 -0
  49. package/build/lib/file-router/sidebar/sidebar-tree.d.ts +9 -0
  50. package/build/lib/file-router/sidebar/sidebar-tree.d.ts.map +1 -0
  51. package/build/lib/file-router/sidebar/sidebar-tree.js +85 -0
  52. package/build/lib/file-router/sidebar/sidebar-tree.js.map +1 -0
  53. package/build/lib/file-router/sidebar/types.d.ts +17 -0
  54. package/build/lib/file-router/sidebar/types.d.ts.map +1 -0
  55. package/build/lib/file-router/sidebar/types.js.map +1 -0
  56. package/build/lib/github-actions/runner.js +2 -2
  57. package/build/lib/github-actions/runner.js.map +1 -1
  58. package/build/lib/github-actions/schemas/context.d.ts +2 -2
  59. package/build/lib/kit-temp.d.ts +0 -103
  60. package/build/lib/kit-temp.d.ts.map +1 -1
  61. package/build/lib/kit-temp.js +3 -239
  62. package/build/lib/kit-temp.js.map +1 -1
  63. package/build/lib/tree/index.d.ts +3 -0
  64. package/build/lib/tree/index.d.ts.map +1 -0
  65. package/build/lib/tree/index.js +2 -0
  66. package/build/lib/tree/index.js.map +1 -0
  67. package/build/lib/tree/tree.d.ts +62 -0
  68. package/build/lib/tree/tree.d.ts.map +1 -0
  69. package/build/lib/tree/tree.js +134 -0
  70. package/build/lib/tree/tree.js.map +1 -0
  71. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.d.ts +8 -1
  72. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.d.ts.map +1 -1
  73. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.js +53 -48
  74. package/build/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.js.map +1 -1
  75. package/build/package-paths.js +3 -3
  76. package/build/package-paths.js.map +1 -1
  77. package/build/sandbox.js +2 -17
  78. package/build/sandbox.js.map +1 -1
  79. package/build/singletons/debug.d.ts +1 -1
  80. package/build/singletons/debug.d.ts.map +1 -1
  81. package/build/singletons/debug.js +1 -1
  82. package/build/singletons/debug.js.map +1 -1
  83. package/build/template/components/ArgumentAnnotation.jsx +16 -0
  84. package/build/template/components/ArgumentAnnotation.jsx.map +1 -0
  85. package/build/template/components/ArgumentList.jsx +16 -0
  86. package/build/template/components/ArgumentList.jsx.map +1 -0
  87. package/build/template/components/ArgumentListAnnotation.jsx +23 -0
  88. package/build/template/components/ArgumentListAnnotation.jsx.map +1 -0
  89. package/build/template/components/Changelog.jsx +68 -0
  90. package/build/template/components/Changelog.jsx.map +1 -0
  91. package/build/template/components/{CodeBlock.js → CodeBlock.jsx} +5 -4
  92. package/build/template/components/{CodeBlock.js.map → CodeBlock.jsx.map} +1 -1
  93. package/build/template/components/DeprecationReason.jsx +10 -0
  94. package/build/template/components/DeprecationReason.jsx.map +1 -0
  95. package/build/template/components/Description.jsx +10 -0
  96. package/build/template/components/Description.jsx.map +1 -0
  97. package/build/template/components/Field.jsx +22 -0
  98. package/build/template/components/Field.jsx.map +1 -0
  99. package/build/template/components/{FieldList.js → FieldList.jsx} +5 -4
  100. package/build/template/components/FieldList.jsx.map +1 -0
  101. package/build/template/components/{FieldListSection.js → FieldListSection.jsx} +6 -4
  102. package/build/template/components/FieldListSection.jsx.map +1 -0
  103. package/build/template/components/Link.d.ts +2 -2
  104. package/build/template/components/Link.d.ts.map +1 -1
  105. package/build/template/components/{Link.js → Link.jsx} +9 -17
  106. package/build/template/components/Link.jsx.map +1 -0
  107. package/build/template/components/Logo.jsx +29 -0
  108. package/build/template/components/Logo.jsx.map +1 -0
  109. package/build/template/components/{Markdown.js → Markdown.jsx} +2 -3
  110. package/build/template/components/Markdown.jsx.map +1 -0
  111. package/build/template/components/MissingSchema.d.ts +1 -1
  112. package/build/template/components/MissingSchema.d.ts.map +1 -1
  113. package/build/template/components/MissingSchema.jsx +4 -0
  114. package/build/template/components/MissingSchema.jsx.map +1 -0
  115. package/build/template/components/NamedType.jsx +17 -0
  116. package/build/template/components/NamedType.jsx.map +1 -0
  117. package/build/template/components/{RadixLink.js → RadixLink.jsx} +1 -1
  118. package/build/template/components/RadixLink.jsx.map +1 -0
  119. package/build/template/components/Texts/{MinorHeading.js → MinorHeading.jsx} +3 -4
  120. package/build/template/components/Texts/MinorHeading.jsx.map +1 -0
  121. package/build/template/components/Texts/texts.js +1 -1
  122. package/build/template/components/Texts/texts.js.map +1 -1
  123. package/build/template/components/{TypeAnnotation.js → TypeAnnotation.jsx} +18 -8
  124. package/build/template/components/TypeAnnotation.jsx.map +1 -0
  125. package/build/template/components/TypeFieldsLinkList.jsx +17 -0
  126. package/build/template/components/TypeFieldsLinkList.jsx.map +1 -0
  127. package/build/template/components/TypeIndex.jsx +27 -0
  128. package/build/template/components/TypeIndex.jsx.map +1 -0
  129. package/build/template/components/graphql/graphql.d.ts +2 -2
  130. package/build/template/components/graphql/graphql.jsx +3 -0
  131. package/build/template/components/graphql/graphql.jsx.map +1 -0
  132. package/build/template/components/graphql/index.d.ts +1 -1
  133. package/build/template/components/graphql/index.js +1 -1
  134. package/build/template/components/graphql/index.js.map +1 -1
  135. package/build/template/components/graphql/{type-kind-icon.js → type-kind-icon.jsx} +2 -3
  136. package/build/template/components/graphql/type-kind-icon.jsx.map +1 -0
  137. package/build/template/components/graphql/type-link.jsx +16 -0
  138. package/build/template/components/graphql/type-link.jsx.map +1 -0
  139. package/build/template/components/sidebar/Sidebar.d.ts +3 -3
  140. package/build/template/components/sidebar/Sidebar.d.ts.map +1 -1
  141. package/build/template/components/sidebar/Sidebar.jsx +15 -0
  142. package/build/template/components/sidebar/Sidebar.jsx.map +1 -0
  143. package/build/template/components/sidebar/SidebarItem.d.ts +3 -3
  144. package/build/template/components/sidebar/SidebarItem.d.ts.map +1 -1
  145. package/build/template/components/sidebar/{SidebarItem.js → SidebarItem.jsx} +35 -18
  146. package/build/template/components/sidebar/SidebarItem.jsx.map +1 -0
  147. package/build/template/components/sidebar/ToggleButton.d.ts +1 -1
  148. package/build/template/components/sidebar/ToggleButton.d.ts.map +1 -1
  149. package/build/template/components/sidebar/ToggleButton.jsx +6 -0
  150. package/build/template/components/sidebar/ToggleButton.jsx.map +1 -0
  151. package/build/template/entry.client.d.ts +0 -1
  152. package/build/template/entry.client.d.ts.map +1 -1
  153. package/build/template/{entry.client.js → entry.client.jsx} +9 -5
  154. package/build/template/entry.client.jsx.map +1 -0
  155. package/build/template/routes/changelog.d.ts +1 -1
  156. package/build/template/routes/{changelog.js → changelog.jsx} +4 -5
  157. package/build/template/routes/changelog.jsx.map +1 -0
  158. package/build/template/routes/{index.js → index.jsx} +2 -3
  159. package/build/template/routes/index.jsx.map +1 -0
  160. package/build/template/routes/reference.$type.$field.d.ts +1 -1
  161. package/build/template/routes/{reference.$type.$field.js → reference.$type.$field.jsx} +5 -6
  162. package/build/template/routes/reference.$type.$field.jsx.map +1 -0
  163. package/build/template/routes/reference.$type.d.ts +1 -1
  164. package/build/template/routes/{reference.$type.js → reference.$type.jsx} +5 -6
  165. package/build/template/routes/reference.$type.jsx.map +1 -0
  166. package/build/template/routes/reference.d.ts +2 -2
  167. package/build/template/routes/reference.d.ts.map +1 -1
  168. package/build/template/routes/{reference.js → reference.jsx} +12 -7
  169. package/build/template/routes/reference.jsx.map +1 -0
  170. package/build/template/routes/root.d.ts +2 -2
  171. package/build/template/routes/root.d.ts.map +1 -1
  172. package/build/template/routes/root.jsx +188 -0
  173. package/build/template/routes/root.jsx.map +1 -0
  174. package/build/template/routes.jsx +5 -0
  175. package/build/template/routes.jsx.map +1 -0
  176. package/build/template/server/app.d.ts +1 -8
  177. package/build/template/server/app.d.ts.map +1 -1
  178. package/build/template/server/app.js +21 -21
  179. package/build/template/server/app.js.map +1 -1
  180. package/build/template/server/main.js +1 -2
  181. package/build/template/server/main.js.map +1 -1
  182. package/build/template/server/render-page.d.ts +3 -0
  183. package/build/template/server/render-page.d.ts.map +1 -0
  184. package/build/template/server/{create-page-html-response.js → render-page.jsx} +17 -11
  185. package/build/template/server/render-page.jsx.map +1 -0
  186. package/build/template/server/ssg/generate.d.ts.map +1 -1
  187. package/build/template/server/ssg/generate.js +34 -33
  188. package/build/template/server/ssg/generate.js.map +1 -1
  189. package/build/template/server/ssg/get-route-paths.js +1 -1
  190. package/build/template/server/ssg/get-route-paths.js.map +1 -1
  191. package/build/template/server/view.js +1 -1
  192. package/build/template/server/view.js.map +1 -1
  193. package/package.json +9 -66
  194. package/src/api/config/load.ts +5 -5
  195. package/src/api/config-resolver/resolve.ts +2 -2
  196. package/src/api/schema/data-sources/schema-directory/schema-directory.ts +1 -1
  197. package/src/api/singletons/markdown/markdown.test.ts +1 -1
  198. package/src/api/vite/plugins/branding/index.ts +4 -4
  199. package/src/api/vite/plugins/build.ts +89 -97
  200. package/src/api/vite/plugins/core.ts +16 -18
  201. package/src/api/vite/plugins/pages.ts +209 -135
  202. package/src/api/vite/plugins/serve.ts +14 -67
  203. package/src/cli/_/self-contained-mode.ts +5 -5
  204. package/src/lib/deployment/$$.ts +1 -1
  205. package/src/lib/deployment/$.test.ts +3 -3
  206. package/src/lib/deployment/$.ts +1 -1
  207. package/src/lib/file-router/diagnostic-reporter.ts +2 -2
  208. package/src/lib/file-router/file-router.ts +2 -0
  209. package/src/lib/file-router/linter.test.ts +0 -2
  210. package/src/lib/file-router/route.ts +0 -2
  211. package/src/lib/file-router/scan-tree.test.ts +189 -0
  212. package/src/lib/file-router/scan-tree.ts +205 -0
  213. package/src/lib/file-router/scan.ts +14 -26
  214. package/src/lib/file-router/sidebar/index.ts +3 -0
  215. package/src/lib/file-router/sidebar/sidebar-tree.test.ts +123 -0
  216. package/src/lib/file-router/sidebar/sidebar-tree.ts +110 -0
  217. package/src/lib/file-router/sidebar/types.ts +19 -0
  218. package/src/lib/kit-temp.test.ts +7 -19
  219. package/src/lib/kit-temp.ts +5 -307
  220. package/src/lib/task/$.test.ts +3 -3
  221. package/src/lib/tree/index.ts +2 -0
  222. package/src/lib/tree/tree.test.ts +117 -0
  223. package/src/lib/tree/tree.ts +183 -0
  224. package/src/lib/version-history/index.test.ts +4 -12
  225. package/src/lib/vite-plugin-reactive-data/vite-plugin-reactive-data.ts +58 -52
  226. package/src/package-paths.ts +3 -3
  227. package/src/sandbox.ts +1 -20
  228. package/src/singletons/debug.ts +1 -1
  229. package/src/template/components/ArgumentAnnotation.tsx +1 -1
  230. package/src/template/components/ArgumentList.tsx +1 -1
  231. package/src/template/components/ArgumentListAnnotation.tsx +2 -2
  232. package/src/template/components/DeprecationReason.tsx +1 -1
  233. package/src/template/components/Description.tsx +1 -1
  234. package/src/template/components/Field.tsx +4 -4
  235. package/src/template/components/FieldList.tsx +1 -1
  236. package/src/template/components/FieldListSection.tsx +1 -1
  237. package/src/template/components/Link.tsx +14 -22
  238. package/src/template/components/NamedType.tsx +2 -2
  239. package/src/template/components/TypeAnnotation.tsx +1 -1
  240. package/src/template/components/TypeFieldsLinkList.tsx +1 -1
  241. package/src/template/components/TypeIndex.tsx +1 -1
  242. package/src/template/components/graphql/graphql.tsx +2 -2
  243. package/src/template/components/graphql/index.ts +1 -1
  244. package/src/template/components/graphql/type-link.tsx +2 -2
  245. package/src/template/components/sidebar/Sidebar.tsx +2 -2
  246. package/src/template/components/sidebar/SidebarItem.tsx +14 -14
  247. package/src/template/entry.client.tsx +5 -2
  248. package/src/template/routes/changelog.tsx +1 -1
  249. package/src/template/routes/reference.$type.$field.tsx +3 -3
  250. package/src/template/routes/reference.$type.tsx +3 -3
  251. package/src/template/routes/reference.tsx +10 -6
  252. package/src/template/routes/root.tsx +108 -112
  253. package/src/template/routes.tsx +1 -1
  254. package/src/template/server/app.ts +23 -33
  255. package/src/template/server/main.ts +1 -2
  256. package/src/template/server/{create-page-html-response.ts → render-page.tsx} +16 -19
  257. package/src/template/server/ssg/generate.ts +72 -68
  258. package/src/template/server/ssg/get-route-paths.ts +1 -1
  259. package/src/template/server/view.ts +1 -1
  260. package/src/template/styles/code-block.css +0 -32
  261. package/build/api/content/$$.d.ts +0 -7
  262. package/build/api/content/$$.d.ts.map +0 -1
  263. package/build/api/content/$$.js +0 -7
  264. package/build/api/content/$$.js.map +0 -1
  265. package/build/api/content/$.d.ts +0 -2
  266. package/build/api/content/$.d.ts.map +0 -1
  267. package/build/api/content/$.js +0 -2
  268. package/build/api/content/$.js.map +0 -1
  269. package/build/api/content/metadata.d.ts +0 -10
  270. package/build/api/content/metadata.d.ts.map +0 -1
  271. package/build/api/content/metadata.js +0 -9
  272. package/build/api/content/metadata.js.map +0 -1
  273. package/build/api/content/navbar.d.ts +0 -10
  274. package/build/api/content/navbar.d.ts.map +0 -1
  275. package/build/api/content/navbar.js +0 -45
  276. package/build/api/content/navbar.js.map +0 -1
  277. package/build/api/content/page.d.ts +0 -11
  278. package/build/api/content/page.d.ts.map +0 -1
  279. package/build/api/content/page.js +0 -2
  280. package/build/api/content/page.js.map +0 -1
  281. package/build/api/content/scan.d.ts +0 -19
  282. package/build/api/content/scan.d.ts.map +0 -1
  283. package/build/api/content/scan.js +0 -90
  284. package/build/api/content/scan.js.map +0 -1
  285. package/build/api/content/sidebar.d.ts +0 -104
  286. package/build/api/content/sidebar.d.ts.map +0 -1
  287. package/build/api/content/sidebar.js +0 -166
  288. package/build/api/content/sidebar.js.map +0 -1
  289. package/build/api/content/utils.d.ts +0 -5
  290. package/build/api/content/utils.d.ts.map +0 -1
  291. package/build/api/content/utils.js +0 -8
  292. package/build/api/content/utils.js.map +0 -1
  293. package/build/exports/components.d.ts +0 -5
  294. package/build/exports/components.d.ts.map +0 -1
  295. package/build/exports/components.js +0 -5
  296. package/build/exports/components.js.map +0 -1
  297. package/build/lib/graphql-document/$$.d.ts +0 -5
  298. package/build/lib/graphql-document/$$.d.ts.map +0 -1
  299. package/build/lib/graphql-document/$$.js +0 -5
  300. package/build/lib/graphql-document/$$.js.map +0 -1
  301. package/build/lib/graphql-document/$.d.ts +0 -2
  302. package/build/lib/graphql-document/$.d.ts.map +0 -1
  303. package/build/lib/graphql-document/$.js +0 -2
  304. package/build/lib/graphql-document/$.js.map +0 -1
  305. package/build/lib/graphql-document/analysis.d.ts +0 -44
  306. package/build/lib/graphql-document/analysis.d.ts.map +0 -1
  307. package/build/lib/graphql-document/analysis.js +0 -361
  308. package/build/lib/graphql-document/analysis.js.map +0 -1
  309. package/build/lib/graphql-document/components/CopyButton.d.ts +0 -19
  310. package/build/lib/graphql-document/components/CopyButton.d.ts.map +0 -1
  311. package/build/lib/graphql-document/components/CopyButton.js +0 -43
  312. package/build/lib/graphql-document/components/CopyButton.js.map +0 -1
  313. package/build/lib/graphql-document/components/GraphQLDocument.d.ts +0 -38
  314. package/build/lib/graphql-document/components/GraphQLDocument.d.ts.map +0 -1
  315. package/build/lib/graphql-document/components/GraphQLDocument.js +0 -142
  316. package/build/lib/graphql-document/components/GraphQLDocument.js.map +0 -1
  317. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.d.ts +0 -7
  318. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.d.ts.map +0 -1
  319. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.js +0 -45
  320. package/build/lib/graphql-document/components/GraphQLDocumentWithSchema.js.map +0 -1
  321. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.d.ts +0 -33
  322. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.d.ts.map +0 -1
  323. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.js +0 -48
  324. package/build/lib/graphql-document/components/GraphQLIdentifierPopover.js.map +0 -1
  325. package/build/lib/graphql-document/components/IdentifierLink.d.ts +0 -39
  326. package/build/lib/graphql-document/components/IdentifierLink.d.ts.map +0 -1
  327. package/build/lib/graphql-document/components/IdentifierLink.js +0 -75
  328. package/build/lib/graphql-document/components/IdentifierLink.js.map +0 -1
  329. package/build/lib/graphql-document/components/graphql-document-styles.d.ts +0 -5
  330. package/build/lib/graphql-document/components/graphql-document-styles.d.ts.map +0 -1
  331. package/build/lib/graphql-document/components/graphql-document-styles.js +0 -167
  332. package/build/lib/graphql-document/components/graphql-document-styles.js.map +0 -1
  333. package/build/lib/graphql-document/components/index.d.ts +0 -6
  334. package/build/lib/graphql-document/components/index.d.ts.map +0 -1
  335. package/build/lib/graphql-document/components/index.js +0 -6
  336. package/build/lib/graphql-document/components/index.js.map +0 -1
  337. package/build/lib/graphql-document/example.d.ts +0 -25
  338. package/build/lib/graphql-document/example.d.ts.map +0 -1
  339. package/build/lib/graphql-document/example.js +0 -140
  340. package/build/lib/graphql-document/example.js.map +0 -1
  341. package/build/lib/graphql-document/graphql-document.d.ts +0 -35
  342. package/build/lib/graphql-document/graphql-document.d.ts.map +0 -1
  343. package/build/lib/graphql-document/graphql-document.js +0 -36
  344. package/build/lib/graphql-document/graphql-document.js.map +0 -1
  345. package/build/lib/graphql-document/hooks/use-tooltip-state.d.ts +0 -43
  346. package/build/lib/graphql-document/hooks/use-tooltip-state.d.ts.map +0 -1
  347. package/build/lib/graphql-document/hooks/use-tooltip-state.js +0 -132
  348. package/build/lib/graphql-document/hooks/use-tooltip-state.js.map +0 -1
  349. package/build/lib/graphql-document/positioning-simple.d.ts +0 -63
  350. package/build/lib/graphql-document/positioning-simple.d.ts.map +0 -1
  351. package/build/lib/graphql-document/positioning-simple.js +0 -185
  352. package/build/lib/graphql-document/positioning-simple.js.map +0 -1
  353. package/build/lib/graphql-document/schema-context.d.ts +0 -8
  354. package/build/lib/graphql-document/schema-context.d.ts.map +0 -1
  355. package/build/lib/graphql-document/schema-context.js +0 -11
  356. package/build/lib/graphql-document/schema-context.js.map +0 -1
  357. package/build/lib/graphql-document/schema-integration-example.d.ts +0 -27
  358. package/build/lib/graphql-document/schema-integration-example.d.ts.map +0 -1
  359. package/build/lib/graphql-document/schema-integration-example.js +0 -297
  360. package/build/lib/graphql-document/schema-integration-example.js.map +0 -1
  361. package/build/lib/graphql-document/schema-integration.d.ts +0 -135
  362. package/build/lib/graphql-document/schema-integration.d.ts.map +0 -1
  363. package/build/lib/graphql-document/schema-integration.js +0 -328
  364. package/build/lib/graphql-document/schema-integration.js.map +0 -1
  365. package/build/lib/graphql-document/types.d.ts +0 -117
  366. package/build/lib/graphql-document/types.d.ts.map +0 -1
  367. package/build/lib/graphql-document/types.js.map +0 -1
  368. package/build/template/components/ArgumentAnnotation.js +0 -10
  369. package/build/template/components/ArgumentAnnotation.js.map +0 -1
  370. package/build/template/components/ArgumentList.js +0 -9
  371. package/build/template/components/ArgumentList.js.map +0 -1
  372. package/build/template/components/ArgumentListAnnotation.js +0 -15
  373. package/build/template/components/ArgumentListAnnotation.js.map +0 -1
  374. package/build/template/components/Changelog.js +0 -44
  375. package/build/template/components/Changelog.js.map +0 -1
  376. package/build/template/components/CodeBlockEnhancer.d.ts +0 -2
  377. package/build/template/components/CodeBlockEnhancer.d.ts.map +0 -1
  378. package/build/template/components/CodeBlockEnhancer.js +0 -175
  379. package/build/template/components/CodeBlockEnhancer.js.map +0 -1
  380. package/build/template/components/DeprecationReason.js +0 -9
  381. package/build/template/components/DeprecationReason.js.map +0 -1
  382. package/build/template/components/Description.js +0 -9
  383. package/build/template/components/Description.js.map +0 -1
  384. package/build/template/components/Field.js +0 -14
  385. package/build/template/components/Field.js.map +0 -1
  386. package/build/template/components/FieldList.js.map +0 -1
  387. package/build/template/components/FieldListSection.js.map +0 -1
  388. package/build/template/components/HamburgerMenu.d.ts +0 -9
  389. package/build/template/components/HamburgerMenu.d.ts.map +0 -1
  390. package/build/template/components/HamburgerMenu.js +0 -30
  391. package/build/template/components/HamburgerMenu.js.map +0 -1
  392. package/build/template/components/Link.js.map +0 -1
  393. package/build/template/components/Logo.js +0 -20
  394. package/build/template/components/Logo.js.map +0 -1
  395. package/build/template/components/MDXComponents.d.ts +0 -11
  396. package/build/template/components/MDXComponents.d.ts.map +0 -1
  397. package/build/template/components/MDXComponents.js +0 -70
  398. package/build/template/components/MDXComponents.js.map +0 -1
  399. package/build/template/components/Markdown.js.map +0 -1
  400. package/build/template/components/MissingSchema.js +0 -5
  401. package/build/template/components/MissingSchema.js.map +0 -1
  402. package/build/template/components/NamedType.js +0 -12
  403. package/build/template/components/NamedType.js.map +0 -1
  404. package/build/template/components/NotFound.d.ts +0 -2
  405. package/build/template/components/NotFound.d.ts.map +0 -1
  406. package/build/template/components/NotFound.js +0 -7
  407. package/build/template/components/NotFound.js.map +0 -1
  408. package/build/template/components/RadixLink.js.map +0 -1
  409. package/build/template/components/TestComponent.d.ts +0 -5
  410. package/build/template/components/TestComponent.d.ts.map +0 -1
  411. package/build/template/components/TestComponent.js +0 -7
  412. package/build/template/components/TestComponent.js.map +0 -1
  413. package/build/template/components/Texts/MinorHeading.js.map +0 -1
  414. package/build/template/components/ThemeToggle.d.ts +0 -3
  415. package/build/template/components/ThemeToggle.d.ts.map +0 -1
  416. package/build/template/components/ThemeToggle.js +0 -9
  417. package/build/template/components/ThemeToggle.js.map +0 -1
  418. package/build/template/components/TypeAnnotation.js.map +0 -1
  419. package/build/template/components/TypeFieldsLinkList.js +0 -9
  420. package/build/template/components/TypeFieldsLinkList.js.map +0 -1
  421. package/build/template/components/TypeIndex.js +0 -17
  422. package/build/template/components/TypeIndex.js.map +0 -1
  423. package/build/template/components/content/$$.d.ts +0 -3
  424. package/build/template/components/content/$$.d.ts.map +0 -1
  425. package/build/template/components/content/$$.js +0 -3
  426. package/build/template/components/content/$$.js.map +0 -1
  427. package/build/template/components/content/GraphQLDocumentWithSchema.d.ts +0 -8
  428. package/build/template/components/content/GraphQLDocumentWithSchema.d.ts.map +0 -1
  429. package/build/template/components/content/GraphQLDocumentWithSchema.js +0 -13
  430. package/build/template/components/content/GraphQLDocumentWithSchema.js.map +0 -1
  431. package/build/template/components/content/GraphQLDocumentWrapper.d.ts +0 -7
  432. package/build/template/components/content/GraphQLDocumentWrapper.d.ts.map +0 -1
  433. package/build/template/components/content/GraphQLDocumentWrapper.js +0 -63
  434. package/build/template/components/content/GraphQLDocumentWrapper.js.map +0 -1
  435. package/build/template/components/graphql/graphql.js +0 -3
  436. package/build/template/components/graphql/graphql.js.map +0 -1
  437. package/build/template/components/graphql/type-kind-icon.js.map +0 -1
  438. package/build/template/components/graphql/type-link.js +0 -11
  439. package/build/template/components/graphql/type-link.js.map +0 -1
  440. package/build/template/components/sidebar/Sidebar.js +0 -11
  441. package/build/template/components/sidebar/Sidebar.js.map +0 -1
  442. package/build/template/components/sidebar/SidebarItem.js.map +0 -1
  443. package/build/template/components/sidebar/ToggleButton.js +0 -5
  444. package/build/template/components/sidebar/ToggleButton.js.map +0 -1
  445. package/build/template/contexts/ThemeContext.d.ts +0 -12
  446. package/build/template/contexts/ThemeContext.d.ts.map +0 -1
  447. package/build/template/contexts/ThemeContext.js +0 -40
  448. package/build/template/contexts/ThemeContext.js.map +0 -1
  449. package/build/template/entry.client.js.map +0 -1
  450. package/build/template/hooks/useClientOnly.d.ts +0 -9
  451. package/build/template/hooks/useClientOnly.d.ts.map +0 -1
  452. package/build/template/hooks/useClientOnly.js +0 -16
  453. package/build/template/hooks/useClientOnly.js.map +0 -1
  454. package/build/template/routes/changelog.js.map +0 -1
  455. package/build/template/routes/index.js.map +0 -1
  456. package/build/template/routes/reference.$type.$field.js.map +0 -1
  457. package/build/template/routes/reference.$type.js.map +0 -1
  458. package/build/template/routes/reference.js.map +0 -1
  459. package/build/template/routes/root.js +0 -138
  460. package/build/template/routes/root.js.map +0 -1
  461. package/build/template/routes.js +0 -5
  462. package/build/template/routes.js.map +0 -1
  463. package/build/template/server/create-page-html-response.d.ts +0 -7
  464. package/build/template/server/create-page-html-response.d.ts.map +0 -1
  465. package/build/template/server/create-page-html-response.js.map +0 -1
  466. package/build/template/server/middleware/page.d.ts +0 -4
  467. package/build/template/server/middleware/page.d.ts.map +0 -1
  468. package/build/template/server/middleware/page.js +0 -15
  469. package/build/template/server/middleware/page.js.map +0 -1
  470. package/build/template/server/middleware/unsupported-assets.d.ts +0 -10
  471. package/build/template/server/middleware/unsupported-assets.d.ts.map +0 -1
  472. package/build/template/server/middleware/unsupported-assets.js +0 -21
  473. package/build/template/server/middleware/unsupported-assets.js.map +0 -1
  474. package/build/template/styles/code-block.css +0 -218
  475. package/src/api/content/$$.ts +0 -6
  476. package/src/api/content/$.test.ts +0 -72
  477. package/src/api/content/$.ts +0 -1
  478. package/src/api/content/metadata.ts +0 -11
  479. package/src/api/content/navbar.test.ts +0 -55
  480. package/src/api/content/navbar.ts +0 -61
  481. package/src/api/content/page.ts +0 -12
  482. package/src/api/content/scan.ts +0 -117
  483. package/src/api/content/sidebar.test.ts +0 -297
  484. package/src/api/content/sidebar.ts +0 -283
  485. package/src/api/content/utils.ts +0 -7
  486. package/src/exports/components.ts +0 -4
  487. package/src/lib/graphql-document/$$.ts +0 -4
  488. package/src/lib/graphql-document/$.test.ts +0 -132
  489. package/src/lib/graphql-document/$.ts +0 -1
  490. package/src/lib/graphql-document/README.md +0 -102
  491. package/src/lib/graphql-document/analysis.ts +0 -415
  492. package/src/lib/graphql-document/components/CopyButton.tsx +0 -76
  493. package/src/lib/graphql-document/components/GraphQLDocument.tsx +0 -262
  494. package/src/lib/graphql-document/components/GraphQLDocument.unit.test.ts +0 -188
  495. package/src/lib/graphql-document/components/GraphQLDocumentWithSchema.tsx +0 -70
  496. package/src/lib/graphql-document/components/GraphQLIdentifierPopover.tsx +0 -197
  497. package/src/lib/graphql-document/components/IdentifierLink.tsx +0 -160
  498. package/src/lib/graphql-document/components/graphql-document-styles.ts +0 -167
  499. package/src/lib/graphql-document/components/index.ts +0 -5
  500. package/src/lib/graphql-document/demo.md +0 -155
  501. package/src/lib/graphql-document/example.ts +0 -163
  502. package/src/lib/graphql-document/graphql-document.ts +0 -37
  503. package/src/lib/graphql-document/hooks/use-tooltip-state.test.ts +0 -76
  504. package/src/lib/graphql-document/hooks/use-tooltip-state.ts +0 -191
  505. package/src/lib/graphql-document/positioning-simple.test.ts +0 -248
  506. package/src/lib/graphql-document/positioning-simple.ts +0 -260
  507. package/src/lib/graphql-document/schema-context.tsx +0 -20
  508. package/src/lib/graphql-document/schema-integration-example.ts +0 -341
  509. package/src/lib/graphql-document/schema-integration.test.ts +0 -365
  510. package/src/lib/graphql-document/schema-integration.ts +0 -497
  511. package/src/lib/graphql-document/types.ts +0 -129
  512. package/src/template/components/CodeBlockEnhancer.tsx +0 -192
  513. package/src/template/components/HamburgerMenu.tsx +0 -96
  514. package/src/template/components/MDXComponents.tsx +0 -101
  515. package/src/template/components/NotFound.tsx +0 -28
  516. package/src/template/components/TestComponent.tsx +0 -6
  517. package/src/template/components/ThemeToggle.tsx +0 -21
  518. package/src/template/components/content/$$.ts +0 -2
  519. package/src/template/components/content/GraphQLDocumentWithSchema.tsx +0 -13
  520. package/src/template/components/content/GraphQLDocumentWrapper.tsx +0 -89
  521. package/src/template/contexts/ThemeContext.tsx +0 -60
  522. package/src/template/hooks/useClientOnly.ts +0 -21
  523. package/src/template/server/middleware/page.ts +0 -19
  524. package/src/template/server/middleware/unsupported-assets.ts +0 -25
  525. /package/build/lib/{graphql-document → file-router/sidebar}/types.js +0 -0
@@ -1,91 +1,95 @@
1
1
  import { Hono } from '#dep/hono/index'
2
2
  import type { ReactRouter } from '#dep/react-router/index'
3
- import { asyncParallel, chunk } from '#lib/kit-temp'
4
- import { debugPolen } from '#singletons/debug'
3
+ import { app } from '#template/server/app'
5
4
  import * as NodeFs from 'node:fs/promises'
6
5
  import PROJECT_DATA from 'virtual:polen/project/data.jsonsuper'
7
- import viteClientAssetManifest from 'virtual:polen/vite/client/manifest'
8
- import { createPageHtmlResponse } from '../create-page-html-response.tsx'
9
- import { injectManifestIntoHtml } from '../manifest.ts'
6
+ import { renderPage } from '../render-page.jsx'
10
7
  import { getRoutesPaths } from './get-route-paths.ts'
11
8
 
12
9
  export const generate = async (view: ReactRouter.StaticHandler) => {
13
- const debug = debugPolen.sub(`ssg`)
10
+ const handler: Hono.Handler = async (ctx) => {
11
+ // For SSG, we need to create a request with the base path prepended
12
+ // so React Router can match it correctly
13
+ const url = new URL(ctx.req.raw.url)
14
+ const basePath = PROJECT_DATA.basePath === '/' ? '' : PROJECT_DATA.basePath.slice(0, -1)
14
15
 
15
- const routePaths = getRoutesPaths()
16
- const totalPaths = routePaths.length
17
- debug(`start`, { totalPaths })
16
+ // Create a new request with the base path prepended to the pathname
17
+ const modifiedRequest = new Request(
18
+ `${url.protocol}//${url.host}${basePath}${url.pathname}${url.search}`,
19
+ {
20
+ method: ctx.req.raw.method,
21
+ headers: ctx.req.raw.headers,
22
+ body: ctx.req.raw.body,
23
+ },
24
+ )
18
25
 
19
- // Process routes in batches using the new utilities
20
- const batchSize = 50
21
- const batches = chunk(routePaths, batchSize)
26
+ const staticHandlerContext = await view.query(modifiedRequest)
27
+ if (staticHandlerContext instanceof Response) {
28
+ return staticHandlerContext
29
+ }
30
+ return renderPage(staticHandlerContext)
31
+ }
22
32
 
23
- const result = await asyncParallel(
24
- batches,
25
- async (batchPaths, batchIndex) => {
26
- const batchApp = new Hono.Hono()
33
+ const routePaths = getRoutesPaths()
27
34
 
28
- // Create a custom handler for batch processing that includes base path handling
29
- const batchHandler: Hono.Handler = async (ctx) => {
30
- // For SSG, we need to create a request with the base path prepended
31
- const url = new URL(ctx.req.raw.url)
32
- const basePath = PROJECT_DATA.basePath === '/' ? '' : PROJECT_DATA.basePath.slice(0, -1)
35
+ for (const routePath of routePaths) {
36
+ app.get(routePath, handler)
37
+ }
33
38
 
34
- // Create a new request with the base path prepended to the pathname
35
- const modifiedRequest = new Request(
36
- `${url.protocol}//${url.host}${basePath}${url.pathname}${url.search}`,
37
- {
38
- method: ctx.req.raw.method,
39
- headers: ctx.req.raw.headers,
40
- body: ctx.req.raw.body,
41
- },
42
- )
39
+ // For large schemas, we need to process in smaller batches to avoid memory issues
40
+ const BATCH_SIZE = 50
41
+ const totalPaths = routePaths.length
42
+ console.log(`[info] Generating ${totalPaths} static pages...`)
43
43
 
44
- const staticHandlerContext = await view.query(modifiedRequest)
45
- if (staticHandlerContext instanceof Response) {
46
- return staticHandlerContext
47
- }
44
+ for (let i = 0; i < totalPaths; i += BATCH_SIZE) {
45
+ const batchPaths = routePaths.slice(i, i + BATCH_SIZE)
46
+ const batchApp = new Hono.Hono()
48
47
 
49
- // SSG uses manifest-based transformation directly
50
- const transformHtml = (html: string) => {
51
- return injectManifestIntoHtml(html, viteClientAssetManifest, PROJECT_DATA.basePath)
52
- }
53
- return createPageHtmlResponse(staticHandlerContext, { transformHtml })
54
- }
48
+ // Create a custom handler for batch processing that includes base path handling
49
+ const batchHandler: Hono.Handler = async (ctx) => {
50
+ // For SSG, we need to create a request with the base path prepended
51
+ const url = new URL(ctx.req.raw.url)
52
+ const basePath = PROJECT_DATA.basePath === '/' ? '' : PROJECT_DATA.basePath.slice(0, -1)
55
53
 
56
- // Register only the routes for this batch
57
- for (const routePath of batchPaths) {
58
- batchApp.get(routePath, batchHandler)
59
- }
54
+ // Create a new request with the base path prepended to the pathname
55
+ const modifiedRequest = new Request(
56
+ `${url.protocol}//${url.host}${basePath}${url.pathname}${url.search}`,
57
+ {
58
+ method: ctx.req.raw.method,
59
+ headers: ctx.req.raw.headers,
60
+ body: ctx.req.raw.body,
61
+ },
62
+ )
60
63
 
61
- debug(`batch:start`, {
62
- batchIndex: batchIndex + 1,
63
- totalBatches: batches.length,
64
- pagesInBatch: batchPaths.length,
65
- })
64
+ const staticHandlerContext = await view.query(modifiedRequest)
65
+ if (staticHandlerContext instanceof Response) {
66
+ return staticHandlerContext
67
+ }
68
+ return renderPage(staticHandlerContext)
69
+ }
66
70
 
67
- const ssgResult = await Hono.SSG.toSSG(batchApp, NodeFs, {
68
- concurrency: 5, // Reduced concurrency for memory efficiency
69
- dir: PROJECT_DATA.paths.relative.build.root,
70
- })
71
+ // Register only the routes for this batch
72
+ for (const routePath of batchPaths) {
73
+ batchApp.get(routePath, batchHandler)
74
+ }
71
75
 
72
- if (!ssgResult.success) {
73
- throw new Error(`Failed to generate static site at batch ${batchIndex + 1}`, {
74
- cause: ssgResult.error,
75
- })
76
- }
76
+ console.log(
77
+ `[info] Processing batch ${Math.floor(i / BATCH_SIZE) + 1}/${
78
+ Math.ceil(totalPaths / BATCH_SIZE)
79
+ } (${batchPaths.length} pages)...`,
80
+ )
77
81
 
78
- return ssgResult
79
- },
80
- {
81
- concurrency: 1, // Process batches sequentially to avoid memory issues
82
- failFast: true, // Stop on first batch failure
83
- },
84
- )
82
+ const result = await Hono.SSG.toSSG(batchApp, NodeFs, {
83
+ concurrency: 5, // Reduced concurrency for memory efficiency
84
+ dir: PROJECT_DATA.paths.relative.build.root,
85
+ })
85
86
 
86
- if (!result.success) {
87
- throw new Error(`SSG generation failed`, { cause: result.errors[0] })
87
+ if (!result.success) {
88
+ throw new Error(`Failed to generate static site at batch ${Math.floor(i / BATCH_SIZE) + 1}`, {
89
+ cause: result.error,
90
+ })
91
+ }
88
92
  }
89
93
 
90
- debug(`complete`, { totalPaths })
94
+ console.log(`[info] Successfully generated ${totalPaths} static pages.`)
91
95
  }
@@ -3,7 +3,7 @@ import { visit } from 'graphql'
3
3
  // Or your specific import path for this type
4
4
  import { ReactRouterAid } from '#lib/react-router-aid/index'
5
5
  import PROJECT_DATA from 'virtual:polen/project/data.jsonsuper'
6
- import { routes } from '../../routes.tsx'
6
+ import { routes } from '../../routes.jsx'
7
7
 
8
8
  // todo: Frameworks tend to colocate ssg data loaders with routes to solve the following
9
9
  // problem which is we have to map data loaders to paramterized routes.
@@ -1,6 +1,6 @@
1
1
  import { createStaticHandler } from 'react-router'
2
2
  import PROJECT_DATA from 'virtual:polen/project/data.jsonsuper'
3
- import { routes } from '../routes.tsx'
3
+ import { routes } from '../routes.jsx'
4
4
 
5
5
  export const view = createStaticHandler(routes, {
6
6
  basename: PROJECT_DATA.basePath === `/` ? undefined : PROJECT_DATA.basePath.slice(0, -1), // Remove trailing slash for React Router
@@ -33,36 +33,6 @@
33
33
  color-scheme: dark;
34
34
  }
35
35
 
36
- /* Shiki token colors for light theme (github-light) */
37
- :root {
38
- --shiki-color-text: #24292e;
39
- --shiki-color-background: #f6f8fa;
40
- --shiki-token-constant: #005cc5;
41
- --shiki-token-string: #032f62;
42
- --shiki-token-comment: #6a737d;
43
- --shiki-token-keyword: #d73a49;
44
- --shiki-token-parameter: #e36209;
45
- --shiki-token-function: #6f42c1;
46
- --shiki-token-string-expression: #032f62;
47
- --shiki-token-punctuation: #24292e;
48
- --shiki-token-link: #032f62;
49
- }
50
-
51
- /* Shiki token colors for dark theme (tokyo-night) */
52
- .dark {
53
- --shiki-color-text: #c0caf5;
54
- --shiki-color-background: #1a1b26;
55
- --shiki-token-constant: #ff9e64;
56
- --shiki-token-string: #9ece6a;
57
- --shiki-token-comment: #565f89;
58
- --shiki-token-keyword: #bb9af7;
59
- --shiki-token-parameter: #e0af68;
60
- --shiki-token-function: #7aa2f7;
61
- --shiki-token-string-expression: #9ece6a;
62
- --shiki-token-punctuation: #c0caf5;
63
- --shiki-token-link: #9ece6a;
64
- }
65
-
66
36
  /* Shiki code blocks */
67
37
  pre.shiki {
68
38
  margin: 1rem 0;
@@ -71,8 +41,6 @@ pre.shiki {
71
41
  overflow-x: auto;
72
42
  font-size: 14px;
73
43
  line-height: 1.6;
74
- background-color: var(--shiki-color-background);
75
- color: var(--shiki-color-text);
76
44
  }
77
45
 
78
46
  pre.shiki code {
@@ -1,7 +0,0 @@
1
- export * from './metadata.ts';
2
- export * from './navbar.ts';
3
- export * from './page.ts';
4
- export * from './scan.ts';
5
- export * from './sidebar.ts';
6
- export * from './utils.ts';
7
- //# sourceMappingURL=$$.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"$$.d.ts","sourceRoot":"","sources":["../../../src/api/content/$$.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA"}
@@ -1,7 +0,0 @@
1
- export * from "./metadata.js";
2
- export * from "./navbar.js";
3
- export * from "./page.js";
4
- export * from "./scan.js";
5
- export * from "./sidebar.js";
6
- export * from "./utils.js";
7
- //# sourceMappingURL=$$.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"$$.js","sourceRoot":"","sources":["../../../src/api/content/$$.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA"}
@@ -1,2 +0,0 @@
1
- export * as Content from './$$.ts';
2
- //# sourceMappingURL=$.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"$.d.ts","sourceRoot":"","sources":["../../../src/api/content/$.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAA"}
@@ -1,2 +0,0 @@
1
- export * as Content from "./$$.js";
2
- //# sourceMappingURL=$.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"$.js","sourceRoot":"","sources":["../../../src/api/content/$.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAA"}
@@ -1,10 +0,0 @@
1
- import { z } from 'zod/v4';
2
- /**
3
- * Schema for validating front matter content
4
- */
5
- export declare const MetadataSchema: z.ZodObject<{
6
- description: z.ZodOptional<z.ZodString>;
7
- hidden: z.ZodDefault<z.ZodBoolean>;
8
- }, z.core.$strip>;
9
- export type Metadata = z.infer<typeof MetadataSchema>;
10
- //# sourceMappingURL=metadata.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/api/content/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B;;GAEG;AACH,eAAO,MAAM,cAAc;;;iBAGzB,CAAA;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA"}
@@ -1,9 +0,0 @@
1
- import { z } from 'zod/v4';
2
- /**
3
- * Schema for validating front matter content
4
- */
5
- export const MetadataSchema = z.object({
6
- description: z.string().optional(),
7
- hidden: z.boolean().default(false),
8
- });
9
- //# sourceMappingURL=metadata.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/api/content/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACnC,CAAC,CAAA"}
@@ -1,10 +0,0 @@
1
- import type { Page } from './page.ts';
2
- export interface NavbarItem {
3
- pathExp: string;
4
- title: string;
5
- }
6
- /**
7
- * Generate navbar items from a list of pages
8
- */
9
- export declare const createNavbar: (pages: Page[]) => NavbarItem[];
10
- //# sourceMappingURL=navbar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"navbar.d.ts","sourceRoot":"","sources":["../../../src/api/content/navbar.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAErC,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,IAAI,EAAE,KAAG,UAAU,EAiDtD,CAAA"}
@@ -1,45 +0,0 @@
1
- import { Str } from '@wollybeard/kit';
2
- /**
3
- * Generate navbar items from a list of pages
4
- */
5
- export const createNavbar = (pages) => {
6
- const navbarItems = [];
7
- // Group pages by their top-level directory/segment
8
- const topLevelGroups = new Map();
9
- pages.forEach(page => {
10
- // Skip hidden pages
11
- if (page.metadata.hidden)
12
- return;
13
- const firstSegment = page.route.logical.path[0];
14
- if (firstSegment) {
15
- if (!topLevelGroups.has(firstSegment)) {
16
- topLevelGroups.set(firstSegment, []);
17
- }
18
- topLevelGroups.get(firstSegment).push(page);
19
- }
20
- });
21
- // Add each top-level group to navbar
22
- topLevelGroups.forEach((pages, segment) => {
23
- // For directories, check if there's an index page
24
- const indexPage = pages.find(p => p.route.logical.path.length === 1
25
- && p.route.file.path.relative.name === 'index');
26
- // For single non-index files at top level
27
- const singlePage = pages.length === 1 && pages[0].route.logical.path.length === 1
28
- && pages[0].route.file.path.relative.name !== 'index';
29
- // Include in navbar if:
30
- // 1. It's a directory with an index page, OR
31
- // 2. It's a single top-level page (not index)
32
- if (indexPage || singlePage) {
33
- const title = Str.titlizeSlug(segment);
34
- const pathExp = `/${segment}`;
35
- navbarItems.push({
36
- pathExp,
37
- title,
38
- });
39
- }
40
- });
41
- // Sort navbar items alphabetically for consistency
42
- navbarItems.sort((a, b) => a.title.localeCompare(b.title));
43
- return navbarItems;
44
- };
45
- //# sourceMappingURL=navbar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"navbar.js","sourceRoot":"","sources":["../../../src/api/content/navbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AAQrC;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAa,EAAgB,EAAE;IAC1D,MAAM,WAAW,GAAiB,EAAE,CAAA;IAEpC,mDAAmD;IACnD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAA;IAEhD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACnB,oBAAoB;QACpB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAM;QAEhC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAC/C,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBACtC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;YACtC,CAAC;YACD,cAAc,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,qCAAqC;IACrC,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxC,kDAAkD;QAClD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC/B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;eAC9B,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAC/C,CAAA;QAED,0CAA0C;QAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;eAC7E,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAA;QAExD,wBAAwB;QACxB,6CAA6C;QAC7C,8CAA8C;QAC9C,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YACtC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;YAE7B,WAAW,CAAC,IAAI,CAAC;gBACf,OAAO;gBACP,KAAK;aACN,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,mDAAmD;IACnD,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;IAE1D,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA"}
@@ -1,11 +0,0 @@
1
- import type { FileRouter } from '#lib/file-router/index';
2
- import type { Metadata } from './metadata.ts';
3
- export type { Metadata };
4
- /**
5
- * A route with its associated metadata
6
- */
7
- export interface Page {
8
- route: FileRouter.Route;
9
- metadata: Metadata;
10
- }
11
- //# sourceMappingURL=page.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../../src/api/content/page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,YAAY,EAAE,QAAQ,EAAE,CAAA;AAExB;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,KAAK,EAAE,UAAU,CAAC,KAAK,CAAA;IACvB,QAAQ,EAAE,QAAQ,CAAA;CACnB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=page.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../src/api/content/page.ts"],"names":[],"mappings":""}
@@ -1,19 +0,0 @@
1
- import { FileRouter } from '#lib/file-router/index';
2
- import { Tree } from '@wollybeard/kit';
3
- import type { Page } from './page.ts';
4
- export interface ScanResult {
5
- list: Page[];
6
- tree: Tree.Tree<Page>;
7
- diagnostics: FileRouter.Diagnostic[];
8
- }
9
- /**
10
- * Scan a directory for pages and extract metadata from their front matter
11
- * By default, hidden pages are filtered out from both the pages list and route tree.
12
- */
13
- export declare const scan: (options: {
14
- dir: string;
15
- glob?: string;
16
- /** Include hidden pages in the result (useful for debugging or admin interfaces) */
17
- includeHidden?: boolean;
18
- }) => Promise<ScanResult>;
19
- //# sourceMappingURL=scan.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../../src/api/content/scan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACnD,OAAO,EAAY,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAGhD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAErC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,IAAI,EAAE,CAAA;IACZ,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrB,WAAW,EAAE,UAAU,CAAC,UAAU,EAAE,CAAA;CACrC;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAU,SAAS;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,oFAAoF;IACpF,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,KAAG,OAAO,CAAC,UAAU,CAmErB,CAAA"}
@@ -1,90 +0,0 @@
1
- import { FileRouter } from '#lib/file-router/index';
2
- import { Fs, Path, Tree } from '@wollybeard/kit';
3
- import matter from 'gray-matter';
4
- import { MetadataSchema } from "./metadata.js";
5
- /**
6
- * Scan a directory for pages and extract metadata from their front matter
7
- * By default, hidden pages are filtered out from both the pages list and route tree.
8
- */
9
- export const scan = async (options) => {
10
- // Scan for routes
11
- const routeScanResult = await FileRouter.scan({
12
- dir: options.dir,
13
- glob: options.glob ?? '**/*.{md,mdx}',
14
- });
15
- // Create pages with metadata (id/parentId now come from route)
16
- const allPages = await Promise.all(routeScanResult.routes.map(route => readRoute(route)));
17
- // Apply filtering if needed
18
- const pages = options.includeHidden
19
- ? allPages
20
- : allPages.filter(page => !page.metadata.hidden);
21
- // Build tree from pages using Tree.fromList
22
- // Transform pages to include id/parentId at the top level for Tree.fromList
23
- const pagesWithIds = pages.map(page => ({
24
- ...page,
25
- id: page.route.id,
26
- parentId: page.route.parentId,
27
- }));
28
- // Handle cases where there might be multiple root nodes
29
- // If all pages are at root level (no parentId), create a virtual root
30
- const hasMultipleRoots = pagesWithIds.filter(p => !p.parentId).length > 1;
31
- let tree;
32
- if (hasMultipleRoots) {
33
- // Create a virtual root node to hold all root-level pages
34
- const virtualRoot = {
35
- route: {
36
- id: '__virtual_root__',
37
- parentId: null,
38
- file: {
39
- path: {
40
- absolute: Path.parse(''),
41
- relative: Path.parse(''),
42
- },
43
- },
44
- logical: {
45
- path: [],
46
- },
47
- },
48
- metadata: { hidden: true },
49
- id: '__virtual_root__',
50
- parentId: null,
51
- };
52
- // Update pages to have virtual root as parent if they don't have one
53
- const pagesWithVirtualRoot = pagesWithIds.map(page => ({
54
- ...page,
55
- parentId: page.parentId || '__virtual_root__',
56
- }));
57
- tree = Tree.fromList([virtualRoot, ...pagesWithVirtualRoot]);
58
- }
59
- else {
60
- tree = Tree.fromList(pagesWithIds);
61
- }
62
- return {
63
- list: pages,
64
- tree,
65
- diagnostics: routeScanResult.diagnostics,
66
- };
67
- };
68
- /**
69
- * Read a single route file and extract metadata from its front matter
70
- */
71
- const readRoute = async (route) => {
72
- const filePath = Path.format(route.file.path.absolute);
73
- const fileContent = await Fs.read(filePath);
74
- // Empty files still get default metadata (not hidden by default)
75
- // This allows placeholder pages to exist in the navigation
76
- if (!fileContent) {
77
- return { route, metadata: { hidden: false } };
78
- }
79
- // Parse front matter
80
- const { data } = matter(fileContent);
81
- // Validate and parse the data
82
- const parsed = MetadataSchema.safeParse(data);
83
- if (!parsed.success) {
84
- // Log warning but continue with defaults
85
- console.warn(`Invalid front matter in ${filePath}:`, parsed.error.issues);
86
- }
87
- const metadata = parsed.success ? parsed.data : { hidden: false };
88
- return { route, metadata };
89
- };
90
- //# sourceMappingURL=scan.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../src/api/content/scan.ts"],"names":[],"mappings":"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"}
@@ -1,104 +0,0 @@
1
- import type { ScanResult } from './scan.ts';
2
- /**
3
- * Represents a complete sidebar structure with navigation items.
4
- * This is the main data structure used to render sidebars in the UI.
5
- */
6
- export interface Sidebar {
7
- /** Array of navigation items that can be either direct links or sections containing multiple links */
8
- items: Item[];
9
- }
10
- /**
11
- * A sidebar navigation item that can be either a direct link or a section containing multiple links.
12
- * @see {@link ItemLink} for direct navigation links
13
- * @see {@link ItemSection} for grouped navigation sections
14
- */
15
- export type Item = ItemLink | ItemSection;
16
- /**
17
- * A direct navigation link in the sidebar.
18
- * Used for pages that don't have child pages.
19
- *
20
- * @example
21
- * ```ts
22
- * const link: ItemLink = {
23
- * type: 'ItemLink',
24
- * title: 'Getting Started',
25
- * pathExp: 'guide/getting-started'
26
- * }
27
- * ```
28
- */
29
- export interface ItemLink {
30
- /** Discriminator for TypeScript union types */
31
- type: `ItemLink`;
32
- /** Display title for the link (e.g., "Getting Started") */
33
- title: string;
34
- /** Path expression relative to the base path, without leading slash (e.g., "guide/getting-started") */
35
- pathExp: string;
36
- }
37
- /**
38
- * A collapsible section in the sidebar that groups related links.
39
- * Used for directories that contain multiple pages.
40
- *
41
- * @example
42
- * ```ts
43
- * const section: ItemSection = {
44
- * type: 'ItemSection',
45
- * title: 'Guide',
46
- * pathExp: 'guide',
47
- * isLinkToo: true, // Has an index page
48
- * links: [
49
- * { type: 'ItemLink', title: 'Installation', pathExp: 'guide/installation' },
50
- * { type: 'ItemLink', title: 'Configuration', pathExp: 'guide/configuration' }
51
- * ]
52
- * }
53
- * ```
54
- */
55
- export interface ItemSection {
56
- /** Discriminator for TypeScript union types */
57
- type: `ItemSection`;
58
- /** Display title for the section (e.g., "Guide", "API Reference") */
59
- title: string;
60
- /** Path expression for the section's index page, if it exists (e.g., "guide") */
61
- pathExp: string;
62
- /** Whether this section also acts as a link (true if the directory has an index page) */
63
- isLinkToo: boolean;
64
- /** Child navigation links within this section */
65
- links: ItemLink[];
66
- }
67
- /**
68
- * A mapping of route paths to their corresponding sidebar structures.
69
- * Used to store different sidebars for different sections of a site.
70
- *
71
- * @example
72
- * ```ts
73
- * const sidebarIndex: SidebarIndex = {
74
- * '/guide': { items: [...] }, // Sidebar for /guide section
75
- * '/api': { items: [...] }, // Sidebar for /api section
76
- * '/reference': { items: [...] } // Sidebar for /reference section
77
- * }
78
- * ```
79
- */
80
- export type SidebarIndex = Record<string, Sidebar>;
81
- /**
82
- * Builds sidebars for all top-level directories that contain both an index page and nested content.
83
- *
84
- * This function analyzes a scan result to identify which directories should have sidebars.
85
- * A directory gets a sidebar if it meets these criteria:
86
- * 1. It's a top-level directory (e.g., /guide, /api, /docs)
87
- * 2. It has an index page (e.g., /guide/index.md)
88
- * 3. It has nested pages (e.g., /guide/getting-started.md, /guide/configuration.md)
89
- *
90
- * @param scanResult - The result of scanning pages, containing both a flat list and tree structure
91
- * @returns A mapping of route paths to sidebar structures
92
- *
93
- * @example
94
- * ```ts
95
- * const scanResult = await Content.scan({ dir: './pages' })
96
- * const sidebars = buildSidebarIndex(scanResult)
97
- * // Returns: {
98
- * // '/guide': { items: [...] },
99
- * // '/api': { items: [...] }
100
- * // }
101
- * ```
102
- */
103
- export declare const buildSidebarIndex: (scanResult: ScanResult) => SidebarIndex;
104
- //# sourceMappingURL=sidebar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../src/api/content/sidebar.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE3C;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,sGAAsG;IACtG,KAAK,EAAE,IAAI,EAAE,CAAA;CACd;AAED;;;;GAIG;AACH,MAAM,MAAM,IAAI,GAAG,QAAQ,GAAG,WAAW,CAAA;AAEzC;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,QAAQ;IACvB,+CAA+C;IAC/C,IAAI,EAAE,UAAU,CAAA;IAChB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAA;IACb,uGAAuG;IACvG,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,WAAW;IAC1B,+CAA+C;IAC/C,IAAI,EAAE,aAAa,CAAA;IACnB,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAA;IACb,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAA;IACf,yFAAyF;IACzF,SAAS,EAAE,OAAO,CAAA;IAClB,iDAAiD;IACjD,KAAK,EAAE,QAAQ,EAAE,CAAA;CAClB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAElD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,iBAAiB,GAAI,YAAY,UAAU,KAAG,YAqC1D,CAAA"}