polen 0.10.0-next.3 → 0.10.0-next.5

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 (393) hide show
  1. package/README.md +49 -375
  2. package/build/api/api.d.ts +1 -0
  3. package/build/api/api.d.ts.map +1 -1
  4. package/build/api/api.js +1 -0
  5. package/build/api/api.js.map +1 -1
  6. package/build/api/config/load.js +5 -5
  7. package/build/api/config/load.js.map +1 -1
  8. package/build/api/config-resolver/resolve.js +2 -2
  9. package/build/api/config-resolver/resolve.js.map +1 -1
  10. package/build/api/content/$$.d.ts +5 -0
  11. package/build/api/content/$$.d.ts.map +1 -0
  12. package/build/api/content/$$.js +5 -0
  13. package/build/api/content/$$.js.map +1 -0
  14. package/build/api/content/$.d.ts +2 -0
  15. package/build/api/content/$.d.ts.map +1 -0
  16. package/build/api/content/$.js +2 -0
  17. package/build/api/content/$.js.map +1 -0
  18. package/build/api/content/metadata.d.ts +10 -0
  19. package/build/api/content/metadata.d.ts.map +1 -0
  20. package/build/api/content/metadata.js +9 -0
  21. package/build/api/content/metadata.js.map +1 -0
  22. package/build/api/content/page.d.ts +11 -0
  23. package/build/api/content/page.d.ts.map +1 -0
  24. package/build/api/content/page.js +2 -0
  25. package/build/api/content/page.js.map +1 -0
  26. package/build/api/content/scan.d.ts +19 -0
  27. package/build/api/content/scan.d.ts.map +1 -0
  28. package/build/api/content/scan.js +57 -0
  29. package/build/api/content/scan.js.map +1 -0
  30. package/build/{lib/file-router/sidebar/types.d.ts → api/content/sidebar.d.ts} +8 -1
  31. package/build/api/content/sidebar.d.ts.map +1 -0
  32. package/build/api/content/sidebar.js +90 -0
  33. package/build/api/content/sidebar.js.map +1 -0
  34. package/build/api/schema/data-sources/schema-directory/schema-directory.js +1 -1
  35. package/build/api/schema/data-sources/schema-directory/schema-directory.js.map +1 -1
  36. package/build/api/static/index.d.ts +2 -0
  37. package/build/api/static/index.d.ts.map +1 -0
  38. package/build/api/static/index.js +2 -0
  39. package/build/api/static/index.js.map +1 -0
  40. package/build/api/static/manifest.d.ts +18 -0
  41. package/build/api/static/manifest.d.ts.map +1 -0
  42. package/build/api/static/manifest.js +13 -0
  43. package/build/api/static/manifest.js.map +1 -0
  44. package/build/api/static/rebase.d.ts +14 -0
  45. package/build/api/static/rebase.d.ts.map +1 -0
  46. package/build/api/static/rebase.js +110 -0
  47. package/build/api/static/rebase.js.map +1 -0
  48. package/build/api/static/static.d.ts +3 -0
  49. package/build/api/static/static.d.ts.map +1 -0
  50. package/build/api/static/static.js +3 -0
  51. package/build/api/static/static.js.map +1 -0
  52. package/build/api/vite/plugins/branding/index.js +4 -4
  53. package/build/api/vite/plugins/branding/index.js.map +1 -1
  54. package/build/api/vite/plugins/build.d.ts.map +1 -1
  55. package/build/api/vite/plugins/build.js +22 -1
  56. package/build/api/vite/plugins/build.js.map +1 -1
  57. package/build/api/vite/plugins/core.js +4 -4
  58. package/build/api/vite/plugins/core.js.map +1 -1
  59. package/build/api/vite/plugins/pages.d.ts +6 -8
  60. package/build/api/vite/plugins/pages.d.ts.map +1 -1
  61. package/build/api/vite/plugins/pages.js +99 -155
  62. package/build/api/vite/plugins/pages.js.map +1 -1
  63. package/build/api/vite/plugins/serve.js +5 -5
  64. package/build/api/vite/plugins/serve.js.map +1 -1
  65. package/build/cli/_/self-contained-mode.js +5 -5
  66. package/build/cli/_/self-contained-mode.js.map +1 -1
  67. package/build/cli/commands/static/$default.d.ts +3 -0
  68. package/build/cli/commands/static/$default.d.ts.map +1 -0
  69. package/build/cli/commands/static/$default.js +38 -0
  70. package/build/cli/commands/static/$default.js.map +1 -0
  71. package/build/cli/commands/static/rebase.d.ts +2 -0
  72. package/build/cli/commands/static/rebase.d.ts.map +1 -0
  73. package/build/cli/commands/static/rebase.js +26 -0
  74. package/build/cli/commands/static/rebase.js.map +1 -0
  75. package/build/cli/commands/static.d.ts +3 -0
  76. package/build/cli/commands/static.d.ts.map +1 -0
  77. package/build/cli/commands/static.js +5 -0
  78. package/build/cli/commands/static.js.map +1 -0
  79. package/build/exports/components.d.ts +2 -0
  80. package/build/exports/components.d.ts.map +1 -0
  81. package/build/exports/components.js +2 -0
  82. package/build/exports/components.js.map +1 -0
  83. package/build/lib/demos/builder.d.ts +83 -0
  84. package/build/lib/demos/builder.d.ts.map +1 -0
  85. package/build/lib/demos/builder.js +237 -0
  86. package/build/lib/demos/builder.js.map +1 -0
  87. package/build/lib/demos/config-schema.d.ts +243 -0
  88. package/build/lib/demos/config-schema.d.ts.map +1 -0
  89. package/build/lib/demos/config-schema.js +52 -0
  90. package/build/lib/demos/config-schema.js.map +1 -0
  91. package/build/lib/demos/config.d.ts +40 -0
  92. package/build/lib/demos/config.d.ts.map +1 -0
  93. package/build/lib/demos/config.js +180 -0
  94. package/build/lib/demos/config.js.map +1 -0
  95. package/build/lib/demos/index.d.ts +9 -0
  96. package/build/lib/demos/index.d.ts.map +1 -0
  97. package/build/lib/demos/index.js +8 -0
  98. package/build/lib/demos/index.js.map +1 -0
  99. package/build/lib/demos/ui/components.d.ts +33 -0
  100. package/build/lib/demos/ui/components.d.ts.map +1 -0
  101. package/build/lib/demos/ui/components.js +699 -0
  102. package/build/lib/demos/ui/components.js.map +1 -0
  103. package/build/lib/demos/ui/data-collector.d.ts +88 -0
  104. package/build/lib/demos/ui/data-collector.d.ts.map +1 -0
  105. package/build/lib/demos/ui/data-collector.js +174 -0
  106. package/build/lib/demos/ui/data-collector.js.map +1 -0
  107. package/build/lib/demos/ui/landing-page-cli.d.ts +3 -0
  108. package/build/lib/demos/ui/landing-page-cli.d.ts.map +1 -0
  109. package/build/lib/demos/ui/landing-page-cli.js +21 -0
  110. package/build/lib/demos/ui/landing-page-cli.js.map +1 -0
  111. package/build/lib/demos/ui/landing-page.d.ts +32 -0
  112. package/build/lib/demos/ui/landing-page.d.ts.map +1 -0
  113. package/build/lib/demos/ui/landing-page.js +83 -0
  114. package/build/lib/demos/ui/landing-page.js.map +1 -0
  115. package/build/lib/demos/ui/page-renderer.d.ts +26 -0
  116. package/build/lib/demos/ui/page-renderer.d.ts.map +1 -0
  117. package/build/lib/demos/ui/page-renderer.js +104 -0
  118. package/build/lib/demos/ui/page-renderer.js.map +1 -0
  119. package/build/lib/demos/utils.d.ts +14 -0
  120. package/build/lib/demos/utils.d.ts.map +1 -0
  121. package/build/lib/demos/utils.js +37 -0
  122. package/build/lib/demos/utils.js.map +1 -0
  123. package/build/lib/deployment/$$.d.ts +3 -0
  124. package/build/lib/deployment/$$.d.ts.map +1 -0
  125. package/build/lib/deployment/$$.js +3 -0
  126. package/build/lib/deployment/$$.js.map +1 -0
  127. package/build/lib/deployment/$.d.ts +2 -0
  128. package/build/lib/deployment/$.d.ts.map +1 -0
  129. package/build/lib/deployment/$.js +2 -0
  130. package/build/lib/deployment/$.js.map +1 -0
  131. package/build/lib/deployment/metadata.d.ts +32 -0
  132. package/build/lib/deployment/metadata.d.ts.map +1 -0
  133. package/build/lib/deployment/metadata.js +37 -0
  134. package/build/lib/deployment/metadata.js.map +1 -0
  135. package/build/lib/deployment/path-manager.d.ts +41 -0
  136. package/build/lib/deployment/path-manager.d.ts.map +1 -0
  137. package/build/lib/deployment/path-manager.js +157 -0
  138. package/build/lib/deployment/path-manager.js.map +1 -0
  139. package/build/lib/file-router/file-router.d.ts +0 -2
  140. package/build/lib/file-router/file-router.d.ts.map +1 -1
  141. package/build/lib/file-router/file-router.js +0 -2
  142. package/build/lib/file-router/file-router.js.map +1 -1
  143. package/build/lib/file-router/route.d.ts +2 -0
  144. package/build/lib/file-router/route.d.ts.map +1 -1
  145. package/build/lib/file-router/route.js.map +1 -1
  146. package/build/lib/file-router/scan.d.ts.map +1 -1
  147. package/build/lib/file-router/scan.js +16 -12
  148. package/build/lib/file-router/scan.js.map +1 -1
  149. package/build/lib/github-actions/git-controller.d.ts +50 -0
  150. package/build/lib/github-actions/git-controller.d.ts.map +1 -0
  151. package/build/lib/github-actions/git-controller.js +90 -0
  152. package/build/lib/github-actions/git-controller.js.map +1 -0
  153. package/build/lib/github-actions/github-actions.d.ts +7 -0
  154. package/build/lib/github-actions/github-actions.d.ts.map +1 -0
  155. package/build/lib/github-actions/github-actions.js +7 -0
  156. package/build/lib/github-actions/github-actions.js.map +1 -0
  157. package/build/lib/github-actions/index.d.ts +2 -0
  158. package/build/lib/github-actions/index.d.ts.map +1 -0
  159. package/build/lib/github-actions/index.js +2 -0
  160. package/build/lib/github-actions/index.js.map +1 -0
  161. package/build/lib/github-actions/lib/get-pr-deployments.d.ts +12 -0
  162. package/build/lib/github-actions/lib/get-pr-deployments.d.ts.map +1 -0
  163. package/build/lib/github-actions/lib/get-pr-deployments.js +51 -0
  164. package/build/lib/github-actions/lib/get-pr-deployments.js.map +1 -0
  165. package/build/lib/github-actions/pr-controller.d.ts +39 -0
  166. package/build/lib/github-actions/pr-controller.d.ts.map +1 -0
  167. package/build/lib/github-actions/pr-controller.js +122 -0
  168. package/build/lib/github-actions/pr-controller.js.map +1 -0
  169. package/build/lib/github-actions/run-step-cli.d.ts +9 -0
  170. package/build/lib/github-actions/run-step-cli.d.ts.map +1 -0
  171. package/build/lib/github-actions/run-step-cli.js +71 -0
  172. package/build/lib/github-actions/run-step-cli.js.map +1 -0
  173. package/build/lib/github-actions/runner.d.ts +17 -0
  174. package/build/lib/github-actions/runner.d.ts.map +1 -0
  175. package/build/lib/github-actions/runner.js +195 -0
  176. package/build/lib/github-actions/runner.js.map +1 -0
  177. package/build/lib/github-actions/schemas/context.d.ts +933 -0
  178. package/build/lib/github-actions/schemas/context.d.ts.map +1 -0
  179. package/build/lib/github-actions/schemas/context.js +407 -0
  180. package/build/lib/github-actions/schemas/context.js.map +1 -0
  181. package/build/lib/github-actions/schemas/index.d.ts +5 -0
  182. package/build/lib/github-actions/schemas/index.d.ts.map +1 -0
  183. package/build/lib/github-actions/schemas/index.js +5 -0
  184. package/build/lib/github-actions/schemas/index.js.map +1 -0
  185. package/build/lib/github-actions/search-module.d.ts +38 -0
  186. package/build/lib/github-actions/search-module.d.ts.map +1 -0
  187. package/build/lib/github-actions/search-module.js +40 -0
  188. package/build/lib/github-actions/search-module.js.map +1 -0
  189. package/build/lib/github-actions/step.d.ts +163 -0
  190. package/build/lib/github-actions/step.d.ts.map +1 -0
  191. package/build/lib/github-actions/step.js +121 -0
  192. package/build/lib/github-actions/step.js.map +1 -0
  193. package/build/lib/helpers.d.ts.map +1 -1
  194. package/build/lib/helpers.js +5 -3
  195. package/build/lib/helpers.js.map +1 -1
  196. package/build/lib/kit-temp.d.ts +54 -0
  197. package/build/lib/kit-temp.d.ts.map +1 -1
  198. package/build/lib/kit-temp.js +80 -14
  199. package/build/lib/kit-temp.js.map +1 -1
  200. package/build/lib/kit-temp.test-d.d.ts +2 -0
  201. package/build/lib/kit-temp.test-d.d.ts.map +1 -0
  202. package/build/lib/kit-temp.test-d.js +75 -0
  203. package/build/lib/kit-temp.test-d.js.map +1 -0
  204. package/build/lib/mask/$$.d.ts +3 -0
  205. package/build/lib/mask/$$.d.ts.map +1 -0
  206. package/build/lib/mask/$$.js +3 -0
  207. package/build/lib/mask/$$.js.map +1 -0
  208. package/build/lib/mask/$.d.ts +2 -0
  209. package/build/lib/mask/$.d.ts.map +1 -0
  210. package/build/lib/mask/$.js +2 -0
  211. package/build/lib/mask/$.js.map +1 -0
  212. package/build/lib/mask/apply.d.ts +86 -0
  213. package/build/lib/mask/apply.d.ts.map +1 -0
  214. package/build/lib/mask/apply.js +86 -0
  215. package/build/lib/mask/apply.js.map +1 -0
  216. package/build/lib/mask/mask.d.ts +124 -0
  217. package/build/lib/mask/mask.d.ts.map +1 -0
  218. package/build/lib/mask/mask.js +137 -0
  219. package/build/lib/mask/mask.js.map +1 -0
  220. package/build/lib/mask/mask.test-d.d.ts +2 -0
  221. package/build/lib/mask/mask.test-d.d.ts.map +1 -0
  222. package/build/lib/mask/mask.test-d.js +102 -0
  223. package/build/lib/mask/mask.test-d.js.map +1 -0
  224. package/build/lib/task/$$.d.ts +3 -0
  225. package/build/lib/task/$$.d.ts.map +1 -0
  226. package/build/lib/task/$$.js +3 -0
  227. package/build/lib/task/$$.js.map +1 -0
  228. package/build/lib/task/$.d.ts +2 -0
  229. package/build/lib/task/$.d.ts.map +1 -0
  230. package/build/lib/task/$.js +2 -0
  231. package/build/lib/task/$.js.map +1 -0
  232. package/build/lib/task/report.d.ts +28 -0
  233. package/build/lib/task/report.d.ts.map +1 -0
  234. package/build/lib/task/report.js +33 -0
  235. package/build/lib/task/report.js.map +1 -0
  236. package/build/lib/task/task.d.ts +44 -0
  237. package/build/lib/task/task.d.ts.map +1 -0
  238. package/build/lib/task/task.js +63 -0
  239. package/build/lib/task/task.js.map +1 -0
  240. package/build/lib/version-history/index.d.ts +3 -0
  241. package/build/lib/version-history/index.d.ts.map +1 -0
  242. package/build/lib/version-history/index.js +2 -0
  243. package/build/lib/version-history/index.js.map +1 -0
  244. package/build/lib/version-history/types.d.ts +64 -0
  245. package/build/lib/version-history/types.d.ts.map +1 -0
  246. package/build/lib/version-history/types.js +5 -0
  247. package/build/lib/version-history/types.js.map +1 -0
  248. package/build/lib/version-history/version-history.d.ts +85 -0
  249. package/build/lib/version-history/version-history.d.ts.map +1 -0
  250. package/build/lib/version-history/version-history.js +248 -0
  251. package/build/lib/version-history/version-history.js.map +1 -0
  252. package/build/sandbox.d.ts +2 -0
  253. package/build/sandbox.d.ts.map +1 -0
  254. package/build/sandbox.js +3 -0
  255. package/build/sandbox.js.map +1 -0
  256. package/build/singletons/debug.d.ts +1 -1
  257. package/build/singletons/debug.d.ts.map +1 -1
  258. package/build/singletons/debug.js +1 -1
  259. package/build/singletons/debug.js.map +1 -1
  260. package/build/template/components/Link.jsx +1 -1
  261. package/build/template/components/content/$$.d.ts +2 -0
  262. package/build/template/components/content/$$.d.ts.map +1 -0
  263. package/build/template/components/content/$$.js +2 -0
  264. package/build/template/components/content/$$.js.map +1 -0
  265. package/build/template/components/sidebar/Sidebar.d.ts +2 -2
  266. package/build/template/components/sidebar/Sidebar.d.ts.map +1 -1
  267. package/build/template/components/sidebar/SidebarItem.d.ts +3 -3
  268. package/build/template/components/sidebar/SidebarItem.d.ts.map +1 -1
  269. package/build/template/components/sidebar/SidebarItem.jsx +1 -1
  270. package/build/template/components/sidebar/SidebarItem.jsx.map +1 -1
  271. package/package.json +23 -9
  272. package/src/api/api.ts +1 -0
  273. package/src/api/config/load.ts +5 -5
  274. package/src/api/config-resolver/resolve.ts +2 -2
  275. package/src/api/content/$$.ts +4 -0
  276. package/src/api/content/$.test.ts +72 -0
  277. package/src/api/content/$.ts +1 -0
  278. package/src/api/content/metadata.ts +11 -0
  279. package/src/api/content/page.ts +12 -0
  280. package/src/api/content/scan.ts +82 -0
  281. package/src/api/content/sidebar.ts +136 -0
  282. package/src/api/schema/data-sources/schema-directory/schema-directory.ts +1 -1
  283. package/src/api/singletons/markdown/markdown.test.ts +1 -1
  284. package/src/api/static/index.ts +1 -0
  285. package/src/api/static/manifest.test.ts +106 -0
  286. package/src/api/static/manifest.ts +16 -0
  287. package/src/api/static/rebase.test.ts +229 -0
  288. package/src/api/static/rebase.ts +140 -0
  289. package/src/api/static/static.ts +2 -0
  290. package/src/api/utils/asset-url/asset-url.test.ts +4 -4
  291. package/src/api/vite/plugins/branding/index.ts +4 -4
  292. package/src/api/vite/plugins/build.ts +25 -1
  293. package/src/api/vite/plugins/core.ts +5 -5
  294. package/src/api/vite/plugins/pages.ts +117 -171
  295. package/src/api/vite/plugins/serve.ts +5 -5
  296. package/src/cli/_/self-contained-mode.ts +5 -5
  297. package/src/cli/commands/static/$default.ts +43 -0
  298. package/src/cli/commands/static/rebase.ts +37 -0
  299. package/src/cli/commands/static.ts +6 -0
  300. package/src/exports/components.ts +1 -0
  301. package/src/lib/demos/builder.ts +298 -0
  302. package/src/lib/demos/config-schema.ts +56 -0
  303. package/src/lib/demos/config.test.ts +193 -0
  304. package/src/lib/demos/config.ts +205 -0
  305. package/src/lib/demos/index.ts +9 -0
  306. package/src/lib/demos/ui/components.ts +739 -0
  307. package/src/lib/demos/ui/data-collector.ts +246 -0
  308. package/src/lib/demos/ui/landing-page-cli.ts +23 -0
  309. package/src/lib/demos/ui/landing-page.ts +126 -0
  310. package/src/lib/demos/ui/page-renderer.ts +124 -0
  311. package/src/lib/demos/utils.ts +43 -0
  312. package/src/lib/deployment/$$.ts +2 -0
  313. package/src/lib/deployment/$.test.ts +53 -0
  314. package/src/lib/deployment/$.ts +1 -0
  315. package/src/lib/deployment/metadata.ts +40 -0
  316. package/src/lib/deployment/path-manager.ts +186 -0
  317. package/src/lib/file-router/file-router.ts +0 -2
  318. package/src/lib/file-router/linter.test.ts +2 -0
  319. package/src/lib/file-router/route.ts +2 -0
  320. package/src/lib/file-router/scan.ts +19 -13
  321. package/src/lib/github-actions/git-controller.ts +151 -0
  322. package/src/lib/github-actions/github-actions.ts +6 -0
  323. package/src/lib/github-actions/index.ts +1 -0
  324. package/src/lib/github-actions/lib/get-pr-deployments.ts +76 -0
  325. package/src/lib/github-actions/pr-controller.test.ts +172 -0
  326. package/src/lib/github-actions/pr-controller.ts +183 -0
  327. package/src/lib/github-actions/run-step-cli.ts +84 -0
  328. package/src/lib/github-actions/runner.test.ts +192 -0
  329. package/src/lib/github-actions/runner.ts +226 -0
  330. package/src/lib/github-actions/schemas/context.ts +424 -0
  331. package/src/lib/github-actions/schemas/index.ts +5 -0
  332. package/src/lib/github-actions/search-module.test.ts +110 -0
  333. package/src/lib/github-actions/search-module.ts +76 -0
  334. package/src/lib/github-actions/step.test.ts +149 -0
  335. package/src/lib/github-actions/step.ts +232 -0
  336. package/src/lib/helpers.ts +4 -3
  337. package/src/lib/kit-temp.test-d.ts +115 -0
  338. package/src/lib/kit-temp.test.ts +127 -0
  339. package/src/lib/kit-temp.ts +126 -14
  340. package/src/lib/mask/$$.ts +2 -0
  341. package/src/lib/mask/$.test.ts +248 -0
  342. package/src/lib/mask/$.ts +1 -0
  343. package/src/lib/mask/apply.ts +134 -0
  344. package/src/lib/mask/mask.test-d.ts +144 -0
  345. package/src/lib/mask/mask.ts +244 -0
  346. package/src/lib/shiki/shiki.test.ts +1 -1
  347. package/src/lib/task/$$.ts +2 -0
  348. package/src/lib/task/$.test.ts +209 -0
  349. package/src/lib/task/$.ts +1 -0
  350. package/src/lib/task/report.ts +72 -0
  351. package/src/lib/task/task.ts +112 -0
  352. package/src/lib/version-history/index.test.ts +188 -0
  353. package/src/lib/version-history/index.ts +4 -0
  354. package/src/lib/version-history/types.ts +68 -0
  355. package/src/lib/version-history/version-history.ts +293 -0
  356. package/src/sandbox.ts +1 -0
  357. package/src/singletons/debug.ts +1 -1
  358. package/src/template/components/Link.tsx +1 -1
  359. package/src/template/components/content/$$.ts +1 -0
  360. package/src/template/components/sidebar/Sidebar.tsx +2 -2
  361. package/src/template/components/sidebar/SidebarItem.tsx +8 -8
  362. package/build/lib/file-router/scan-tree.d.ts +0 -20
  363. package/build/lib/file-router/scan-tree.d.ts.map +0 -1
  364. package/build/lib/file-router/scan-tree.js +0 -158
  365. package/build/lib/file-router/scan-tree.js.map +0 -1
  366. package/build/lib/file-router/sidebar/index.d.ts +0 -3
  367. package/build/lib/file-router/sidebar/index.d.ts.map +0 -1
  368. package/build/lib/file-router/sidebar/index.js +0 -4
  369. package/build/lib/file-router/sidebar/index.js.map +0 -1
  370. package/build/lib/file-router/sidebar/sidebar-tree.d.ts +0 -9
  371. package/build/lib/file-router/sidebar/sidebar-tree.d.ts.map +0 -1
  372. package/build/lib/file-router/sidebar/sidebar-tree.js +0 -85
  373. package/build/lib/file-router/sidebar/sidebar-tree.js.map +0 -1
  374. package/build/lib/file-router/sidebar/types.d.ts.map +0 -1
  375. package/build/lib/file-router/sidebar/types.js +0 -2
  376. package/build/lib/file-router/sidebar/types.js.map +0 -1
  377. package/build/lib/tree/index.d.ts +0 -3
  378. package/build/lib/tree/index.d.ts.map +0 -1
  379. package/build/lib/tree/index.js +0 -2
  380. package/build/lib/tree/index.js.map +0 -1
  381. package/build/lib/tree/tree.d.ts +0 -62
  382. package/build/lib/tree/tree.d.ts.map +0 -1
  383. package/build/lib/tree/tree.js +0 -134
  384. package/build/lib/tree/tree.js.map +0 -1
  385. package/src/lib/file-router/scan-tree.test.ts +0 -189
  386. package/src/lib/file-router/scan-tree.ts +0 -205
  387. package/src/lib/file-router/sidebar/index.ts +0 -3
  388. package/src/lib/file-router/sidebar/sidebar-tree.test.ts +0 -123
  389. package/src/lib/file-router/sidebar/sidebar-tree.ts +0 -110
  390. package/src/lib/file-router/sidebar/types.ts +0 -19
  391. package/src/lib/tree/index.ts +0 -2
  392. package/src/lib/tree/tree.test.ts +0 -117
  393. package/src/lib/tree/tree.ts +0 -183
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../../../src/lib/demos/ui/components.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Data collection for demo landing pages
3
+ */
4
+ export interface DemoMetadata {
5
+ title: string;
6
+ description: string;
7
+ enabled: boolean;
8
+ reason?: string;
9
+ }
10
+ export interface TrunkDeployment {
11
+ sha: string;
12
+ shortSha: string;
13
+ tag: string | null;
14
+ }
15
+ export interface TrunkDeploymentsData {
16
+ latest: TrunkDeployment | null;
17
+ previous: TrunkDeployment[];
18
+ }
19
+ export interface PrDeployment {
20
+ number: number;
21
+ sha?: string;
22
+ ref?: string;
23
+ previousDeployments?: string[];
24
+ }
25
+ export interface DistTagsData {
26
+ [key: string]: string;
27
+ }
28
+ export interface LandingPageData {
29
+ demoMetadata: Record<string, DemoMetadata>;
30
+ demoExamples: string[];
31
+ trunkDeployments?: TrunkDeploymentsData;
32
+ prDeployments?: PrDeployment[];
33
+ distTags?: DistTagsData;
34
+ config: {
35
+ basePath: string;
36
+ mode: 'production' | 'development';
37
+ prNumber?: string;
38
+ currentSha?: string;
39
+ };
40
+ }
41
+ /**
42
+ * Collects all data needed for generating demo landing pages
43
+ */
44
+ export declare class DemoDataCollector {
45
+ private workingDir;
46
+ constructor(workingDir?: string);
47
+ /**
48
+ * Collect all data for landing page generation
49
+ */
50
+ collectLandingPageData(options: {
51
+ mode?: 'production' | 'development';
52
+ basePath?: string;
53
+ prNumber?: string;
54
+ currentSha?: string;
55
+ trunkDeployments?: string | TrunkDeploymentsData;
56
+ prDeployments?: string | PrDeployment[];
57
+ distTags?: string | DistTagsData;
58
+ }): Promise<LandingPageData>;
59
+ /**
60
+ * Get demo examples using existing utility
61
+ */
62
+ private getDemoExamples;
63
+ /**
64
+ * Load metadata for all demos (enabled and disabled)
65
+ */
66
+ private loadDemoMetadata;
67
+ /**
68
+ * Parse trunk deployments from JSON string or object
69
+ */
70
+ private parseTrunkDeployments;
71
+ /**
72
+ * Parse PR deployments from JSON string or array
73
+ */
74
+ private parsePrDeployments;
75
+ /**
76
+ * Parse dist-tags from JSON string or object
77
+ */
78
+ private parseDistTags;
79
+ /**
80
+ * Get mock data for development mode
81
+ */
82
+ private getMockTrunkDeployments;
83
+ /**
84
+ * Get mock dist-tags for development mode
85
+ */
86
+ private getMockDistTags;
87
+ }
88
+ //# sourceMappingURL=data-collector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-collector.d.ts","sourceRoot":"","sources":["../../../../src/lib/demos/ui/data-collector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAA;IAC9B,QAAQ,EAAE,eAAe,EAAE,CAAA;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC/B;AAED,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IAC1C,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,gBAAgB,CAAC,EAAE,oBAAoB,CAAA;IACvC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAA;IAC9B,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,CAAA;QAChB,IAAI,EAAE,YAAY,GAAG,aAAa,CAAA;QAClC,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,CAAA;CACF;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAChB,OAAO,CAAC,UAAU;gBAAV,UAAU,GAAE,MAAsB;IAEtD;;OAEG;IACG,sBAAsB,CAAC,OAAO,EAAE;QACpC,IAAI,CAAC,EAAE,YAAY,GAAG,aAAa,CAAA;QACnC,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,gBAAgB,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAA;QAChD,aAAa,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,CAAA;QACvC,QAAQ,CAAC,EAAE,MAAM,GAAG,YAAY,CAAA;KACjC,GAAG,OAAO,CAAC,eAAe,CAAC;IA+C5B;;OAEG;YACW,eAAe;IAQ7B;;OAEG;YACW,gBAAgB;IAwC9B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAc7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAY/B;;OAEG;IACH,OAAO,CAAC,eAAe;CAMxB"}
@@ -0,0 +1,174 @@
1
+ /**
2
+ * Data collection for demo landing pages
3
+ */
4
+ import { Str } from '@wollybeard/kit';
5
+ import { readFileSync } from 'node:fs';
6
+ import { join } from 'node:path';
7
+ import { getDemoConfig, getDemoExamples } from "../index.js";
8
+ /**
9
+ * Collects all data needed for generating demo landing pages
10
+ */
11
+ export class DemoDataCollector {
12
+ workingDir;
13
+ constructor(workingDir = process.cwd()) {
14
+ this.workingDir = workingDir;
15
+ }
16
+ /**
17
+ * Collect all data for landing page generation
18
+ */
19
+ async collectLandingPageData(options) {
20
+ try {
21
+ const { mode = 'production', basePath = '/', prNumber, currentSha, trunkDeployments, prDeployments, distTags, } = options;
22
+ // Get demo examples
23
+ const demoExamples = await this.getDemoExamples();
24
+ // Load demo metadata
25
+ const demoMetadata = await this.loadDemoMetadata(demoExamples);
26
+ // Parse deployment data based on mode
27
+ const parsedTrunkDeployments = mode === 'development'
28
+ ? this.getMockTrunkDeployments()
29
+ : this.parseTrunkDeployments(trunkDeployments);
30
+ const parsedPrDeployments = this.parsePrDeployments(prDeployments);
31
+ const parsedDistTags = mode === 'development'
32
+ ? this.getMockDistTags()
33
+ : this.parseDistTags(distTags);
34
+ return {
35
+ demoMetadata,
36
+ demoExamples,
37
+ trunkDeployments: parsedTrunkDeployments,
38
+ prDeployments: parsedPrDeployments,
39
+ distTags: parsedDistTags,
40
+ config: {
41
+ mode,
42
+ basePath,
43
+ prNumber,
44
+ currentSha,
45
+ },
46
+ };
47
+ }
48
+ catch (error) {
49
+ throw new Error(`Failed to collect landing page data: ${error instanceof Error ? error.message : String(error)}`);
50
+ }
51
+ }
52
+ /**
53
+ * Get demo examples using existing utility
54
+ */
55
+ async getDemoExamples() {
56
+ try {
57
+ return await getDemoExamples();
58
+ }
59
+ catch (error) {
60
+ throw new Error(`Failed to get demo examples: ${error instanceof Error ? error.message : String(error)}`);
61
+ }
62
+ }
63
+ /**
64
+ * Load metadata for all demos (enabled and disabled)
65
+ */
66
+ async loadDemoMetadata(demoExamples) {
67
+ const metadata = {};
68
+ const config = getDemoConfig().fullConfig;
69
+ // Load metadata from package.json files for enabled examples
70
+ for (const example of demoExamples) {
71
+ try {
72
+ const packageJsonPath = join(this.workingDir, 'examples', example, 'package.json');
73
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
74
+ metadata[example] = {
75
+ title: packageJson.displayName || Str.Case.title(packageJson.name || example),
76
+ description: packageJson.description
77
+ || `Explore the ${example} GraphQL API with comprehensive documentation.`,
78
+ enabled: true,
79
+ };
80
+ }
81
+ catch {
82
+ // Fallback if package.json is missing or invalid
83
+ metadata[example] = {
84
+ title: Str.Case.title(example),
85
+ description: `Explore the ${example} GraphQL API with comprehensive documentation.`,
86
+ enabled: true,
87
+ };
88
+ }
89
+ }
90
+ // Add disabled demos from configuration
91
+ const disabledDemos = getDemoConfig().getDisabledDemos();
92
+ for (const [name, disabledDemo] of Object.entries(disabledDemos)) {
93
+ metadata[name] = {
94
+ title: disabledDemo.title,
95
+ description: disabledDemo.description,
96
+ enabled: false,
97
+ reason: disabledDemo.reason,
98
+ };
99
+ }
100
+ return metadata;
101
+ }
102
+ /**
103
+ * Parse trunk deployments from JSON string or object
104
+ */
105
+ parseTrunkDeployments(trunkDeployments) {
106
+ if (!trunkDeployments)
107
+ return undefined;
108
+ if (typeof trunkDeployments === 'string') {
109
+ try {
110
+ return JSON.parse(trunkDeployments);
111
+ }
112
+ catch {
113
+ return undefined;
114
+ }
115
+ }
116
+ return trunkDeployments;
117
+ }
118
+ /**
119
+ * Parse PR deployments from JSON string or array
120
+ */
121
+ parsePrDeployments(prDeployments) {
122
+ if (!prDeployments)
123
+ return undefined;
124
+ if (typeof prDeployments === 'string') {
125
+ try {
126
+ return JSON.parse(prDeployments);
127
+ }
128
+ catch {
129
+ return undefined;
130
+ }
131
+ }
132
+ return prDeployments;
133
+ }
134
+ /**
135
+ * Parse dist-tags from JSON string or object
136
+ */
137
+ parseDistTags(distTags) {
138
+ if (!distTags)
139
+ return undefined;
140
+ if (typeof distTags === 'string') {
141
+ try {
142
+ return JSON.parse(distTags);
143
+ }
144
+ catch {
145
+ return undefined;
146
+ }
147
+ }
148
+ return distTags;
149
+ }
150
+ /**
151
+ * Get mock data for development mode
152
+ */
153
+ getMockTrunkDeployments() {
154
+ return {
155
+ latest: { sha: '1.2.0', shortSha: '1.2.0', tag: '1.2.0' },
156
+ previous: [
157
+ { sha: '1.1.0', shortSha: '1.1.0', tag: '1.1.0' },
158
+ { sha: '1.0.0', shortSha: '1.0.0', tag: '1.0.0' },
159
+ { sha: '0.9.1', shortSha: '0.9.1', tag: '0.9.1' },
160
+ { sha: '0.9.0', shortSha: '0.9.0', tag: '0.9.0' },
161
+ ],
162
+ };
163
+ }
164
+ /**
165
+ * Get mock dist-tags for development mode
166
+ */
167
+ getMockDistTags() {
168
+ return {
169
+ latest: '1.2.0',
170
+ next: '1.3.0-beta.2',
171
+ };
172
+ }
173
+ }
174
+ //# sourceMappingURL=data-collector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-collector.js","sourceRoot":"","sources":["../../../../src/lib/demos/ui/data-collector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=landing-page-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"landing-page-cli.d.ts","sourceRoot":"","sources":["../../../../src/lib/demos/ui/landing-page-cli.ts"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env node
2
+ import { Command } from '@molt/command';
3
+ import { z } from 'zod';
4
+ import { buildDemosHome } from "./landing-page.js";
5
+ /**
6
+ * CLI entry point
7
+ */
8
+ const command = Command.create()
9
+ .parameter('basePath', z.string().optional().describe('Base path for demo links'))
10
+ .parameter('prNumber', z.string().optional().describe('PR number for preview mode'))
11
+ .parameter('currentSha', z.string().optional().describe('Current commit SHA'))
12
+ .parameter('mode', z.enum(['production', 'development']).optional().describe('Page mode'))
13
+ .parameter('prDeployments', z.string().optional().describe('JSON string of PR deployments'))
14
+ .parameter('trunkDeployments', z.string().optional().describe('JSON string of trunk deployments'))
15
+ .parameter('distTags', z.string().optional().describe('JSON string of dist-tags'))
16
+ .parameter('serve', z.boolean().optional().describe('Start development server'))
17
+ .parameter('outputDir', z.string().optional().describe('Output directory'))
18
+ .parameter('outputPath', z.string().optional().describe('Output file path (overrides outputDir)'));
19
+ const args = await command.parse();
20
+ await buildDemosHome(args);
21
+ //# sourceMappingURL=landing-page-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"landing-page-cli.js","sourceRoot":"","sources":["../../../../src/lib/demos/ui/landing-page-cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD;;GAEG;AACH,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE;KAC7B,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;KACjF,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;KACnF,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;KAC7E,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;KACzF,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;KAC3F,SAAS,CAAC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC;KACjG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;KACjF,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;KAC/E,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;KAC1E,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC,CAAC,CAAA;AAEpG,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;AAClC,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Main entry point for demo landing page generation
3
+ */
4
+ import type { VersionCatalog } from '#lib/version-history/index';
5
+ export interface Options {
6
+ basePath?: string;
7
+ prNumber?: string;
8
+ currentSha?: string;
9
+ mode?: 'production' | 'development';
10
+ prDeployments?: string | any[];
11
+ trunkDeployments?: string | any;
12
+ distTags?: string | Record<string, string>;
13
+ outputDir?: string;
14
+ outputPath?: string;
15
+ }
16
+ export interface CatalogOptions {
17
+ basePath?: string;
18
+ prNumber?: string;
19
+ currentSha?: string;
20
+ mode?: 'production' | 'development';
21
+ prDeployments?: string | any[];
22
+ catalog: VersionCatalog;
23
+ outputDir?: string;
24
+ outputPath?: string;
25
+ }
26
+ /**
27
+ * Build demos home page with a version catalog
28
+ */
29
+ export declare function buildDemosHomeWithCatalog(options: CatalogOptions): Promise<void>;
30
+ export declare function buildDemosHome(options: CatalogOptions): Promise<void>;
31
+ export declare function buildDemosHome(options?: Options): Promise<void>;
32
+ //# sourceMappingURL=landing-page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"landing-page.d.ts","sourceRoot":"","sources":["../../../../src/lib/demos/ui/landing-page.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAOhE,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,YAAY,GAAG,aAAa,CAAA;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,EAAE,CAAA;IAC9B,gBAAgB,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAGD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,YAAY,GAAG,aAAa,CAAA;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,EAAE,CAAA;IAC9B,OAAO,EAAE,cAAc,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAoCtF;AAGD,wBAAsB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAC5E,wBAAsB,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA"}
@@ -0,0 +1,83 @@
1
+ import { promises as fs } from 'node:fs';
2
+ import { dirname, extname, join } from 'node:path';
3
+ import { DemoDataCollector } from "./data-collector.js";
4
+ import { DemoPageRenderer } from "./page-renderer.js";
5
+ /**
6
+ * Build demos home page with a version catalog
7
+ */
8
+ export async function buildDemosHomeWithCatalog(options) {
9
+ const { catalog, ...otherOptions } = options;
10
+ // Transform catalog data inline
11
+ const latestStable = catalog.distTags.latest || catalog.stable[0] || null;
12
+ const trunkDeployments = {
13
+ latest: latestStable
14
+ ? {
15
+ sha: latestStable.git.sha,
16
+ shortSha: latestStable.git.sha.substring(0, 7),
17
+ tag: latestStable.git.tag,
18
+ }
19
+ : null,
20
+ previous: catalog.versions
21
+ .filter(v => v.git.tag !== latestStable?.git.tag)
22
+ .slice(0, 10)
23
+ .map(v => ({
24
+ sha: v.git.sha,
25
+ shortSha: v.git.sha.substring(0, 7),
26
+ tag: v.git.tag,
27
+ })),
28
+ };
29
+ const distTags = {};
30
+ for (const [name, version] of Object.entries(catalog.distTags)) {
31
+ if (version) {
32
+ distTags[name] = version.git.tag;
33
+ }
34
+ }
35
+ // Use the existing function with transformed data
36
+ return buildDemosHome({
37
+ ...otherOptions,
38
+ trunkDeployments,
39
+ distTags,
40
+ });
41
+ }
42
+ /**
43
+ * Main function that builds the demos home page
44
+ */
45
+ export async function buildDemosHome(options = {}) {
46
+ // Check if catalog is provided
47
+ if ('catalog' in options && options.catalog) {
48
+ return buildDemosHomeWithCatalog(options);
49
+ }
50
+ const config = {
51
+ basePath: '/',
52
+ mode: 'production',
53
+ outputDir: 'dist-demos',
54
+ ...options,
55
+ };
56
+ // Collect all required data
57
+ const dataCollector = new DemoDataCollector();
58
+ const data = await dataCollector.collectLandingPageData(config);
59
+ // Render the page
60
+ const renderer = new DemoPageRenderer();
61
+ const html = renderer.renderPage(data);
62
+ // Determine output path
63
+ let outputPath;
64
+ if (config.outputPath) {
65
+ // Use provided outputPath
66
+ outputPath = config.outputPath;
67
+ // If it's a directory (no extension), append the filename
68
+ if (!extname(outputPath)) {
69
+ const fileName = 'index.html';
70
+ outputPath = join(outputPath, fileName);
71
+ }
72
+ // Ensure parent directory exists
73
+ await fs.mkdir(dirname(outputPath), { recursive: true });
74
+ }
75
+ else {
76
+ // Use outputDir (legacy behavior)
77
+ await fs.mkdir(config.outputDir, { recursive: true });
78
+ const fileName = 'index.html';
79
+ outputPath = join(config.outputDir, fileName);
80
+ }
81
+ await fs.writeFile(outputPath, html);
82
+ }
83
+ //# sourceMappingURL=landing-page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"landing-page.js","sourceRoot":"","sources":["../../../../src/lib/demos/ui/landing-page.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * HTML page renderer for demo landing pages
3
+ */
4
+ import type { LandingPageData } from './data-collector.ts';
5
+ /**
6
+ * Renders complete HTML pages for demo landing
7
+ */
8
+ export declare class DemoPageRenderer {
9
+ /**
10
+ * Render main demo landing page
11
+ */
12
+ renderMainLandingPage(data: LandingPageData): string;
13
+ /**
14
+ * Render development page with mock data
15
+ */
16
+ renderDevPage(data: LandingPageData): string;
17
+ /**
18
+ * Render page based on mode
19
+ */
20
+ renderPage(data: LandingPageData): string;
21
+ }
22
+ /**
23
+ * Utility function for quick page rendering
24
+ */
25
+ export declare function renderDemoLandingPage(data: LandingPageData): Promise<string>;
26
+ //# sourceMappingURL=page-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-renderer.d.ts","sourceRoot":"","sources":["../../../../src/lib/demos/ui/page-renderer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAE1D;;GAEG;AACH,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,qBAAqB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IAuCpD;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IAmC5C;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;CAW1C;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,MAAM,CAAC,CAGjB"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * HTML page renderer for demo landing pages
3
+ */
4
+ import { getDemoConfig } from "../index.js";
5
+ import { generateDemosGrid, generateFooter, generateHeader, generatePrBanner, generateVersionInfo, getDemoPageStyles, } from "./components.js";
6
+ /**
7
+ * Renders complete HTML pages for demo landing
8
+ */
9
+ export class DemoPageRenderer {
10
+ /**
11
+ * Render main demo landing page
12
+ */
13
+ renderMainLandingPage(data) {
14
+ const config = getDemoConfig().fullConfig;
15
+ const { mode, prNumber } = data.config;
16
+ let pageTitle = config.ui.branding.title;
17
+ if (prNumber) {
18
+ pageTitle = `${pageTitle} - PR #${prNumber} Preview`;
19
+ }
20
+ const prBannerHtml = prNumber ? generatePrBanner(prNumber) : '';
21
+ const headerHtml = generateHeader(data);
22
+ const demosGridHtml = generateDemosGrid(data);
23
+ const versionInfoHtml = generateVersionInfo(data);
24
+ const footerHtml = generateFooter();
25
+ return `<!DOCTYPE html>
26
+ <html lang="en">
27
+ <head>
28
+ <meta charset="UTF-8">
29
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
30
+ <title>${pageTitle}</title>
31
+ <meta name="description" content="${config.ui.branding.description}">
32
+ ${config.ui.branding.logoUrl ? `<link rel="icon" href="${config.ui.branding.logoUrl}">` : ''}
33
+ <style>
34
+ ${getDemoPageStyles()}
35
+ </style>
36
+ </head>
37
+ <body>
38
+ ${prBannerHtml}
39
+ <div class="container">
40
+ ${headerHtml}
41
+ ${demosGridHtml}
42
+ ${versionInfoHtml}
43
+ ${footerHtml}
44
+ </div>
45
+ </body>
46
+ </html>`;
47
+ }
48
+ /**
49
+ * Render development page with mock data
50
+ */
51
+ renderDevPage(data) {
52
+ const headerHtml = generateHeader(data);
53
+ const demosGridHtml = generateDemosGrid(data);
54
+ const versionInfoHtml = generateVersionInfo(data);
55
+ const footerHtml = generateFooter();
56
+ const devNoticeHtml = `
57
+ <div style="background: #fff3cd; border: 1px solid #ffeaa7; padding: 1rem; margin-bottom: 2rem; border-radius: 4px;">
58
+ <strong>Development Mode:</strong> This page is using mock data for development purposes.
59
+ </div>
60
+ `;
61
+ return `<!DOCTYPE html>
62
+ <html lang="en">
63
+ <head>
64
+ <meta charset="UTF-8">
65
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
66
+ <title>Polen Demos - Development</title>
67
+ <meta name="description" content="Development version of Polen demos">
68
+ <style>
69
+ ${getDemoPageStyles()}
70
+ </style>
71
+ </head>
72
+ <body>
73
+ <div class="container">
74
+ ${devNoticeHtml}
75
+ ${headerHtml}
76
+ ${demosGridHtml}
77
+ ${versionInfoHtml}
78
+ ${footerHtml}
79
+ </div>
80
+ </body>
81
+ </html>`;
82
+ }
83
+ /**
84
+ * Render page based on mode
85
+ */
86
+ renderPage(data) {
87
+ const { mode } = data.config;
88
+ switch (mode) {
89
+ case 'development':
90
+ return this.renderDevPage(data);
91
+ case 'production':
92
+ default:
93
+ return this.renderMainLandingPage(data);
94
+ }
95
+ }
96
+ }
97
+ /**
98
+ * Utility function for quick page rendering
99
+ */
100
+ export async function renderDemoLandingPage(data) {
101
+ const renderer = new DemoPageRenderer();
102
+ return renderer.renderPage(data);
103
+ }
104
+ //# sourceMappingURL=page-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-renderer.js","sourceRoot":"","sources":["../../../../src/lib/demos/ui/page-renderer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,iBAAiB,CAAA;AAGxB;;GAEG;AACH,MAAM,OAAO,gBAAgB;IAC3B;;OAEG;IACH,qBAAqB,CAAC,IAAqB;QACzC,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC,UAAU,CAAA;QACzC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAEtC,IAAI,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAA;QACxC,IAAI,QAAQ,EAAE,CAAC;YACb,SAAS,GAAG,GAAG,SAAS,UAAU,QAAQ,UAAU,CAAA;QACtD,CAAC;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC/D,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC7C,MAAM,eAAe,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;QACjD,MAAM,UAAU,GAAG,cAAc,EAAE,CAAA;QAEnC,OAAO;;;;;WAKA,SAAS;sCACkB,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW;IAChE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,0BAA0B,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE;;MAExF,iBAAiB,EAAE;;;;IAIrB,YAAY;;MAEV,UAAU;MACV,aAAa;MACb,eAAe;MACf,UAAU;;;QAGR,CAAA;IACN,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,IAAqB;QACjC,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC7C,MAAM,eAAe,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;QACjD,MAAM,UAAU,GAAG,cAAc,EAAE,CAAA;QAEnC,MAAM,aAAa,GAAG;;;;KAIrB,CAAA;QAED,OAAO;;;;;;;;MAQL,iBAAiB,EAAE;;;;;MAKnB,aAAa;MACb,UAAU;MACV,aAAa;MACb,eAAe;MACf,UAAU;;;QAGR,CAAA;IACN,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,IAAqB;QAC9B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;QAE5B,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,aAAa;gBAChB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;YACjC,KAAK,YAAY,CAAC;YAClB;gBACE,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAqB;IAErB,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAA;IACvC,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;AAClC,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Utility functions for demo management
3
+ */
4
+ import type { Version } from '#lib/version-history/index';
5
+ /**
6
+ * Get list of demo examples from the examples directory
7
+ */
8
+ export declare function getDemoExamples(): Promise<string[]>;
9
+ /**
10
+ * Get deployment path for a version
11
+ */
12
+ export declare const getDistTagPath: (version: Version) => string;
13
+ export declare const getSemverPath: (version: Version) => string;
14
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/demos/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAKzD;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAmBzD;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,OAAO,KAAG,MAEjD,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,SAAS,OAAO,KAAG,MAEhD,CAAA"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Utility functions for demo management
3
+ */
4
+ import { promises as fs } from 'node:fs';
5
+ import { join } from 'node:path';
6
+ import { getDemoConfig } from "./config.js";
7
+ /**
8
+ * Get list of demo examples from the examples directory
9
+ */
10
+ export async function getDemoExamples() {
11
+ const examplesDir = join(process.cwd(), 'examples');
12
+ const examples = [];
13
+ // Read all directories in examples/
14
+ try {
15
+ const dirs = await fs.readdir(examplesDir, { withFileTypes: true });
16
+ const dirNames = dirs
17
+ .filter(dirent => dirent.isDirectory())
18
+ .map(dirent => dirent.name);
19
+ examples.push(...dirNames);
20
+ }
21
+ catch (e) {
22
+ console.error(`Error reading examples directory:`, e.message);
23
+ }
24
+ // Use DemoConfig to filter and order examples
25
+ const config = getDemoConfig();
26
+ return config.getOrderedDemos(examples);
27
+ }
28
+ /**
29
+ * Get deployment path for a version
30
+ */
31
+ export const getDistTagPath = (version) => {
32
+ return version.isPrerelease ? `/next/` : '/latest/';
33
+ };
34
+ export const getSemverPath = (version) => {
35
+ return `/${version.semver}/`;
36
+ };
37
+ //# sourceMappingURL=utils.js.map