@publish.os/nextjs 0.0.1-alpha.2 → 0.0.1-alpha.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 (396) hide show
  1. package/README.md +3 -9
  2. package/dist/cache/tags.cjs +3 -0
  3. package/dist/cache/tags.d.cts +1 -0
  4. package/dist/cache/tags.d.ts +1 -0
  5. package/dist/cache/tags.js +3 -0
  6. package/dist/config.cjs +78 -0
  7. package/dist/config.d.cts +101 -0
  8. package/dist/config.d.ts +101 -0
  9. package/dist/config.js +48 -0
  10. package/dist/index.cjs +1043 -124
  11. package/dist/index.d.cts +11 -7
  12. package/dist/index.d.ts +11 -7
  13. package/dist/index.js +1031 -111
  14. package/dist/kernel/components/blocks/AgentActions.cjs +425 -0
  15. package/dist/kernel/components/blocks/AgentActions.d.cts +52 -0
  16. package/dist/kernel/components/blocks/AgentActions.d.ts +52 -0
  17. package/dist/kernel/components/blocks/AgentActions.js +429 -0
  18. package/dist/kernel/components/blocks/animated-icon-swap.cjs +101 -0
  19. package/dist/kernel/components/blocks/animated-icon-swap.d.cts +16 -0
  20. package/dist/kernel/components/blocks/animated-icon-swap.d.ts +16 -0
  21. package/dist/kernel/components/blocks/animated-icon-swap.js +74 -0
  22. package/dist/kernel/components/blocks/color-palette.cjs +413 -0
  23. package/dist/kernel/components/blocks/color-palette.d.cts +7 -0
  24. package/dist/kernel/components/blocks/color-palette.d.ts +7 -0
  25. package/dist/kernel/components/blocks/color-palette.js +407 -0
  26. package/dist/kernel/components/blocks/design-system-preview.cjs +592 -0
  27. package/dist/kernel/components/blocks/design-system-preview.d.cts +29 -0
  28. package/dist/kernel/components/blocks/design-system-preview.d.ts +29 -0
  29. package/dist/kernel/components/blocks/design-system-preview.js +655 -0
  30. package/dist/kernel/components/blocks/link-playground.cjs +816 -0
  31. package/dist/kernel/components/blocks/link-playground.d.cts +5 -0
  32. package/dist/kernel/components/blocks/link-playground.d.ts +5 -0
  33. package/dist/kernel/components/blocks/link-playground.js +792 -0
  34. package/dist/kernel/components/blocks/logo-block.cjs +156 -0
  35. package/dist/kernel/components/blocks/logo-block.d.cts +21 -0
  36. package/dist/kernel/components/blocks/logo-block.d.ts +21 -0
  37. package/dist/kernel/components/blocks/logo-block.js +129 -0
  38. package/dist/{components → kernel/components/blocks}/nav-breadcrumb.cjs +19 -38
  39. package/dist/kernel/components/blocks/nav-breadcrumb.d.cts +11 -0
  40. package/dist/kernel/components/blocks/nav-breadcrumb.d.ts +11 -0
  41. package/dist/{components → kernel/components/blocks}/nav-breadcrumb.js +22 -30
  42. package/dist/kernel/components/blocks/navbar.cjs +154 -0
  43. package/dist/kernel/components/blocks/navbar.d.cts +16 -0
  44. package/dist/kernel/components/blocks/navbar.d.ts +16 -0
  45. package/dist/kernel/components/blocks/navbar.js +122 -0
  46. package/dist/kernel/components/blocks/navigation-progress-playground.cjs +735 -0
  47. package/dist/kernel/components/blocks/navigation-progress-playground.d.cts +5 -0
  48. package/dist/kernel/components/blocks/navigation-progress-playground.d.ts +5 -0
  49. package/dist/kernel/components/blocks/navigation-progress-playground.js +722 -0
  50. package/dist/kernel/components/blocks/navigation-progress.cjs +270 -0
  51. package/dist/kernel/components/blocks/navigation-progress.d.cts +16 -0
  52. package/dist/kernel/components/blocks/navigation-progress.d.ts +16 -0
  53. package/dist/kernel/components/blocks/navigation-progress.js +249 -0
  54. package/dist/kernel/components/blocks/next-prev.cjs +142 -0
  55. package/dist/kernel/components/blocks/next-prev.d.cts +11 -0
  56. package/dist/kernel/components/blocks/next-prev.d.ts +11 -0
  57. package/dist/kernel/components/blocks/next-prev.js +105 -0
  58. package/dist/{components → kernel/components/blocks}/page-list.cjs +7 -16
  59. package/dist/{components → kernel/components/blocks}/page-list.d.cts +1 -1
  60. package/dist/{components → kernel/components/blocks}/page-list.d.ts +1 -1
  61. package/dist/{components → kernel/components/blocks}/page-list.js +6 -5
  62. package/dist/kernel/components/blocks/search.cjs +717 -0
  63. package/dist/kernel/components/blocks/search.d.cts +77 -0
  64. package/dist/kernel/components/blocks/search.d.ts +77 -0
  65. package/dist/kernel/components/blocks/search.js +697 -0
  66. package/dist/kernel/components/blocks/sidebar-node.cjs +309 -0
  67. package/dist/kernel/components/blocks/sidebar-node.d.cts +8 -0
  68. package/dist/kernel/components/blocks/sidebar-node.d.ts +8 -0
  69. package/dist/kernel/components/blocks/sidebar-node.js +272 -0
  70. package/dist/kernel/components/blocks/sidebar.cjs +317 -0
  71. package/dist/kernel/components/blocks/sidebar.d.cts +33 -0
  72. package/dist/kernel/components/blocks/sidebar.d.ts +33 -0
  73. package/dist/kernel/components/blocks/sidebar.js +302 -0
  74. package/dist/kernel/components/blocks/theme-toggle.cjs +31 -0
  75. package/dist/kernel/components/blocks/theme-toggle.d.cts +6 -0
  76. package/dist/kernel/components/blocks/theme-toggle.d.ts +6 -0
  77. package/dist/kernel/components/blocks/theme-toggle.js +7 -0
  78. package/dist/kernel/components/blocks/toc.cjs +356 -0
  79. package/dist/kernel/components/blocks/toc.d.cts +10 -0
  80. package/dist/kernel/components/blocks/toc.d.ts +10 -0
  81. package/dist/kernel/components/blocks/toc.js +330 -0
  82. package/dist/kernel/components/mdx/components/blockquote.cjs +66 -0
  83. package/dist/kernel/components/mdx/components/blockquote.d.cts +6 -0
  84. package/dist/kernel/components/mdx/components/blockquote.d.ts +6 -0
  85. package/dist/kernel/components/mdx/components/blockquote.js +39 -0
  86. package/dist/kernel/components/mdx/components/callout.cjs +137 -0
  87. package/dist/kernel/components/mdx/components/callout.d.cts +18 -0
  88. package/dist/kernel/components/mdx/components/callout.d.ts +18 -0
  89. package/dist/kernel/components/mdx/components/callout.js +109 -0
  90. package/dist/kernel/components/mdx/components/code-block.cjs +39 -0
  91. package/dist/kernel/components/mdx/components/code-block.d.cts +9 -0
  92. package/dist/kernel/components/mdx/components/code-block.d.ts +9 -0
  93. package/dist/kernel/components/mdx/components/code-block.js +14 -0
  94. package/dist/kernel/components/mdx/components/figure-caption.cjs +63 -0
  95. package/dist/kernel/components/mdx/components/figure-caption.d.cts +6 -0
  96. package/dist/kernel/components/mdx/components/figure-caption.d.ts +6 -0
  97. package/dist/kernel/components/mdx/components/figure-caption.js +36 -0
  98. package/dist/kernel/components/mdx/components/figure.cjs +78 -0
  99. package/dist/kernel/components/mdx/components/figure.d.cts +10 -0
  100. package/dist/kernel/components/mdx/components/figure.d.ts +10 -0
  101. package/dist/kernel/components/mdx/components/figure.js +53 -0
  102. package/dist/kernel/components/mdx/components/footnotes.cjs +66 -0
  103. package/dist/kernel/components/mdx/components/footnotes.d.cts +6 -0
  104. package/dist/kernel/components/mdx/components/footnotes.d.ts +6 -0
  105. package/dist/kernel/components/mdx/components/footnotes.js +39 -0
  106. package/dist/kernel/components/mdx/components/heading-copy-link.cjs +108 -0
  107. package/dist/kernel/components/mdx/components/heading-copy-link.d.cts +23 -0
  108. package/dist/kernel/components/mdx/components/heading-copy-link.d.ts +23 -0
  109. package/dist/kernel/components/mdx/components/heading-copy-link.js +81 -0
  110. package/dist/kernel/components/mdx/components/heading.cjs +166 -0
  111. package/dist/kernel/components/mdx/components/heading.d.cts +8 -0
  112. package/dist/kernel/components/mdx/components/heading.d.ts +8 -0
  113. package/dist/kernel/components/mdx/components/heading.js +144 -0
  114. package/dist/kernel/components/mdx/components/hr.cjs +34 -0
  115. package/dist/kernel/components/mdx/components/hr.d.cts +9 -0
  116. package/dist/kernel/components/mdx/components/hr.d.ts +9 -0
  117. package/dist/kernel/components/mdx/components/hr.js +9 -0
  118. package/dist/kernel/components/mdx/components/image-zoom.cjs +49 -0
  119. package/dist/kernel/components/mdx/components/image-zoom.d.cts +10 -0
  120. package/dist/kernel/components/mdx/components/image-zoom.d.ts +10 -0
  121. package/dist/kernel/components/mdx/components/image-zoom.js +15 -0
  122. package/dist/kernel/components/mdx/components/image.cjs +192 -0
  123. package/dist/kernel/components/mdx/components/image.d.cts +21 -0
  124. package/dist/kernel/components/mdx/components/image.d.ts +21 -0
  125. package/dist/kernel/components/mdx/components/image.js +157 -0
  126. package/dist/kernel/components/mdx/components/inline-code.cjs +66 -0
  127. package/dist/kernel/components/mdx/components/inline-code.d.cts +6 -0
  128. package/dist/kernel/components/mdx/components/inline-code.d.ts +6 -0
  129. package/dist/kernel/components/mdx/components/inline-code.js +39 -0
  130. package/dist/kernel/components/mdx/components/kbd.cjs +34 -0
  131. package/dist/kernel/components/mdx/components/kbd.d.cts +10 -0
  132. package/dist/kernel/components/mdx/components/kbd.d.ts +10 -0
  133. package/dist/kernel/components/mdx/components/kbd.js +9 -0
  134. package/dist/{components/providers.cjs → kernel/components/mdx/components/link.cjs} +20 -15
  135. package/dist/kernel/components/mdx/components/link.d.cts +11 -0
  136. package/dist/kernel/components/mdx/components/link.d.ts +11 -0
  137. package/dist/kernel/components/mdx/components/link.js +26 -0
  138. package/dist/kernel/components/mdx/components/paragraph.cjs +87 -0
  139. package/dist/kernel/components/mdx/components/paragraph.d.cts +5 -0
  140. package/dist/kernel/components/mdx/components/paragraph.d.ts +5 -0
  141. package/dist/kernel/components/mdx/components/paragraph.js +60 -0
  142. package/dist/kernel/components/mdx/components/pre.cjs +66 -0
  143. package/dist/kernel/components/mdx/components/pre.d.cts +6 -0
  144. package/dist/kernel/components/mdx/components/pre.d.ts +6 -0
  145. package/dist/kernel/components/mdx/components/pre.js +39 -0
  146. package/dist/kernel/components/mdx/components/strikethrough.cjs +63 -0
  147. package/dist/kernel/components/mdx/components/strikethrough.d.cts +6 -0
  148. package/dist/kernel/components/mdx/components/strikethrough.d.ts +6 -0
  149. package/dist/kernel/components/mdx/components/strikethrough.js +36 -0
  150. package/dist/kernel/components/mdx/components/table.cjs +59 -0
  151. package/dist/kernel/components/mdx/components/table.d.cts +10 -0
  152. package/dist/kernel/components/mdx/components/table.d.ts +10 -0
  153. package/dist/kernel/components/mdx/components/table.js +36 -0
  154. package/dist/kernel/components/mdx/components/task-list.cjs +88 -0
  155. package/dist/kernel/components/mdx/components/task-list.d.cts +8 -0
  156. package/dist/kernel/components/mdx/components/task-list.d.ts +8 -0
  157. package/dist/kernel/components/mdx/components/task-list.js +60 -0
  158. package/dist/kernel/components/mdx/components/video-player.cjs +173 -0
  159. package/dist/kernel/components/mdx/components/video-player.d.cts +18 -0
  160. package/dist/kernel/components/mdx/components/video-player.d.ts +18 -0
  161. package/dist/kernel/components/mdx/components/video-player.js +147 -0
  162. package/dist/kernel/components/mdx/components/video.cjs +185 -0
  163. package/dist/kernel/components/mdx/components/video.d.cts +15 -0
  164. package/dist/kernel/components/mdx/components/video.d.ts +15 -0
  165. package/dist/kernel/components/mdx/components/video.js +162 -0
  166. package/dist/kernel/components/mdx/error-boundary.cjs +62 -0
  167. package/dist/{mdx → kernel/components/mdx}/error-boundary.d.cts +3 -8
  168. package/dist/{mdx → kernel/components/mdx}/error-boundary.d.ts +3 -8
  169. package/dist/kernel/components/mdx/error-boundary.js +38 -0
  170. package/dist/{mdx → kernel/components/mdx}/error-fallback.cjs +8 -8
  171. package/dist/{mdx → kernel/components/mdx}/error-fallback.js +8 -8
  172. package/dist/kernel/components/mdx/mdx.cjs +141 -0
  173. package/dist/kernel/components/mdx/mdx.d.cts +22 -0
  174. package/dist/kernel/components/mdx/mdx.d.ts +22 -0
  175. package/dist/kernel/components/mdx/mdx.js +109 -0
  176. package/dist/kernel/components/mdx/rehype-heading-ids.cjs +113 -0
  177. package/dist/kernel/components/mdx/rehype-heading-ids.d.cts +10 -0
  178. package/dist/kernel/components/mdx/rehype-heading-ids.d.ts +10 -0
  179. package/dist/kernel/components/mdx/rehype-heading-ids.js +86 -0
  180. package/dist/kernel/components/mdx/types.cjs +18 -0
  181. package/dist/kernel/components/mdx/types.d.cts +18 -0
  182. package/dist/kernel/components/mdx/types.d.ts +18 -0
  183. package/dist/kernel/components/mdx/types.js +0 -0
  184. package/dist/kernel/components/ui/accordion.cjs +104 -0
  185. package/dist/kernel/components/ui/accordion.d.cts +16 -0
  186. package/dist/kernel/components/ui/accordion.d.ts +16 -0
  187. package/dist/kernel/components/ui/accordion.js +76 -0
  188. package/dist/kernel/components/ui/badge.cjs +75 -0
  189. package/dist/kernel/components/ui/badge.d.cts +12 -0
  190. package/dist/kernel/components/ui/badge.d.ts +12 -0
  191. package/dist/kernel/components/ui/badge.js +47 -0
  192. package/dist/kernel/components/ui/breadcrumb-trail.cjs +238 -0
  193. package/dist/kernel/components/ui/breadcrumb-trail.d.cts +13 -0
  194. package/dist/kernel/components/ui/breadcrumb-trail.d.ts +13 -0
  195. package/dist/kernel/components/ui/breadcrumb-trail.js +225 -0
  196. package/dist/kernel/components/ui/breadcrumb.cjs +399 -0
  197. package/dist/kernel/components/ui/breadcrumb.d.cts +52 -0
  198. package/dist/kernel/components/ui/breadcrumb.d.ts +52 -0
  199. package/dist/kernel/components/ui/breadcrumb.js +365 -0
  200. package/dist/kernel/components/ui/button-group.cjs +144 -0
  201. package/dist/kernel/components/ui/button-group.d.cts +19 -0
  202. package/dist/kernel/components/ui/button-group.d.ts +19 -0
  203. package/dist/kernel/components/ui/button-group.js +116 -0
  204. package/dist/kernel/components/ui/button.cjs +147 -0
  205. package/dist/kernel/components/ui/button.d.cts +23 -0
  206. package/dist/kernel/components/ui/button.d.ts +23 -0
  207. package/dist/kernel/components/ui/button.js +121 -0
  208. package/dist/kernel/components/ui/card.cjs +133 -0
  209. package/dist/kernel/components/ui/card.d.cts +17 -0
  210. package/dist/kernel/components/ui/card.d.ts +17 -0
  211. package/dist/kernel/components/ui/card.js +101 -0
  212. package/dist/kernel/components/ui/dialog.cjs +149 -0
  213. package/dist/kernel/components/ui/dialog.d.cts +22 -0
  214. package/dist/kernel/components/ui/dialog.d.ts +22 -0
  215. package/dist/kernel/components/ui/dialog.js +118 -0
  216. package/dist/kernel/components/ui/drawer.cjs +163 -0
  217. package/dist/kernel/components/ui/drawer.d.cts +24 -0
  218. package/dist/kernel/components/ui/drawer.d.ts +24 -0
  219. package/dist/kernel/components/ui/drawer.js +131 -0
  220. package/dist/kernel/components/ui/input.cjs +96 -0
  221. package/dist/kernel/components/ui/input.d.cts +18 -0
  222. package/dist/kernel/components/ui/input.d.ts +18 -0
  223. package/dist/kernel/components/ui/input.js +70 -0
  224. package/dist/kernel/components/ui/kbd.cjs +105 -0
  225. package/dist/kernel/components/ui/kbd.d.cts +13 -0
  226. package/dist/kernel/components/ui/kbd.d.ts +13 -0
  227. package/dist/kernel/components/ui/kbd.js +77 -0
  228. package/dist/kernel/components/ui/link.cjs +253 -0
  229. package/dist/kernel/components/ui/link.d.cts +31 -0
  230. package/dist/kernel/components/ui/link.d.ts +31 -0
  231. package/dist/kernel/components/ui/link.js +217 -0
  232. package/dist/kernel/components/ui/menu.cjs +301 -0
  233. package/dist/kernel/components/ui/menu.d.cts +70 -0
  234. package/dist/kernel/components/ui/menu.d.ts +70 -0
  235. package/dist/kernel/components/ui/menu.js +256 -0
  236. package/dist/kernel/components/ui/meta-key.cjs +34 -0
  237. package/dist/kernel/components/ui/meta-key.d.cts +12 -0
  238. package/dist/kernel/components/ui/meta-key.d.ts +12 -0
  239. package/dist/kernel/components/ui/meta-key.js +9 -0
  240. package/dist/kernel/components/ui/navigation-menu.cjs +253 -0
  241. package/dist/kernel/components/ui/navigation-menu.d.cts +47 -0
  242. package/dist/kernel/components/ui/navigation-menu.d.ts +47 -0
  243. package/dist/kernel/components/ui/navigation-menu.js +216 -0
  244. package/dist/kernel/components/ui/popover.cjs +168 -0
  245. package/dist/kernel/components/ui/popover.d.cts +24 -0
  246. package/dist/kernel/components/ui/popover.d.ts +24 -0
  247. package/dist/kernel/components/ui/popover.js +136 -0
  248. package/dist/kernel/components/ui/progress.cjs +112 -0
  249. package/dist/kernel/components/ui/progress.d.cts +16 -0
  250. package/dist/kernel/components/ui/progress.d.ts +16 -0
  251. package/dist/kernel/components/ui/progress.js +84 -0
  252. package/dist/kernel/components/ui/scroll-area.cjs +413 -0
  253. package/dist/kernel/components/ui/scroll-area.d.cts +58 -0
  254. package/dist/kernel/components/ui/scroll-area.d.ts +58 -0
  255. package/dist/kernel/components/ui/scroll-area.js +390 -0
  256. package/dist/kernel/components/ui/select.cjs +244 -0
  257. package/dist/kernel/components/ui/select.d.cts +40 -0
  258. package/dist/kernel/components/ui/select.d.ts +40 -0
  259. package/dist/kernel/components/ui/select.js +205 -0
  260. package/dist/kernel/components/ui/separator.cjs +73 -0
  261. package/dist/kernel/components/ui/separator.d.cts +8 -0
  262. package/dist/kernel/components/ui/separator.d.ts +8 -0
  263. package/dist/kernel/components/ui/separator.js +48 -0
  264. package/dist/kernel/components/ui/table.cjs +131 -0
  265. package/dist/kernel/components/ui/table.d.cts +11 -0
  266. package/dist/kernel/components/ui/table.d.ts +11 -0
  267. package/dist/kernel/components/ui/table.js +99 -0
  268. package/dist/kernel/components/ui/tabs.cjs +450 -0
  269. package/dist/kernel/components/ui/tabs.d.cts +82 -0
  270. package/dist/kernel/components/ui/tabs.d.ts +82 -0
  271. package/dist/kernel/components/ui/tabs.js +409 -0
  272. package/dist/kernel/components/ui/text.cjs +184 -0
  273. package/dist/kernel/components/ui/text.d.cts +17 -0
  274. package/dist/kernel/components/ui/text.d.ts +17 -0
  275. package/dist/kernel/components/ui/text.js +156 -0
  276. package/dist/kernel/components/ui/theme-toggle.cjs +108 -0
  277. package/dist/kernel/components/ui/theme-toggle.d.cts +10 -0
  278. package/dist/kernel/components/ui/theme-toggle.d.ts +10 -0
  279. package/dist/kernel/components/ui/theme-toggle.js +84 -0
  280. package/dist/kernel/components/ui/toast.cjs +154 -0
  281. package/dist/kernel/components/ui/toast.d.cts +26 -0
  282. package/dist/kernel/components/ui/toast.d.ts +26 -0
  283. package/dist/kernel/components/ui/toast.js +120 -0
  284. package/dist/kernel/components/ui/tooltip.cjs +127 -0
  285. package/dist/kernel/components/ui/tooltip.d.cts +20 -0
  286. package/dist/kernel/components/ui/tooltip.d.ts +20 -0
  287. package/dist/kernel/components/ui/tooltip.js +97 -0
  288. package/dist/kernel/defaults.registry.cjs +541 -0
  289. package/dist/kernel/defaults.registry.d.cts +469 -0
  290. package/dist/kernel/defaults.registry.d.ts +469 -0
  291. package/dist/kernel/defaults.registry.js +516 -0
  292. package/dist/kernel/routes/agent/markdown.cjs +202 -0
  293. package/dist/kernel/routes/agent/markdown.d.cts +58 -0
  294. package/dist/kernel/routes/agent/markdown.d.ts +58 -0
  295. package/dist/kernel/routes/agent/markdown.js +174 -0
  296. package/dist/{layouts → kernel/routes/layouts}/group.cjs +39 -15
  297. package/dist/kernel/routes/layouts/group.d.cts +20 -0
  298. package/dist/kernel/routes/layouts/group.d.ts +20 -0
  299. package/dist/{layouts → kernel/routes/layouts}/group.js +39 -15
  300. package/dist/kernel/routes/metadata/feed.cjs +293 -0
  301. package/dist/kernel/routes/metadata/feed.d.cts +20 -0
  302. package/dist/kernel/routes/metadata/feed.d.ts +20 -0
  303. package/dist/kernel/routes/metadata/feed.js +265 -0
  304. package/dist/kernel/routes/metadata/llms.cjs +239 -0
  305. package/dist/kernel/routes/metadata/llms.d.cts +26 -0
  306. package/dist/kernel/routes/metadata/llms.d.ts +26 -0
  307. package/dist/kernel/routes/metadata/llms.js +211 -0
  308. package/dist/kernel/routes/metadata/og-image.cjs +630 -0
  309. package/dist/kernel/routes/metadata/og-image.d.cts +62 -0
  310. package/dist/kernel/routes/metadata/og-image.d.ts +62 -0
  311. package/dist/kernel/routes/metadata/og-image.js +604 -0
  312. package/dist/{routes → kernel/routes/metadata}/robots.cjs +59 -5
  313. package/dist/{routes → kernel/routes/metadata}/robots.d.cts +2 -1
  314. package/dist/{routes → kernel/routes/metadata}/robots.d.ts +2 -1
  315. package/dist/kernel/routes/metadata/robots.js +123 -0
  316. package/dist/kernel/routes/metadata/sitemap.cjs +192 -0
  317. package/dist/kernel/routes/metadata/sitemap.d.cts +8 -0
  318. package/dist/kernel/routes/metadata/sitemap.d.ts +8 -0
  319. package/dist/kernel/routes/metadata/sitemap.js +166 -0
  320. package/dist/{pages → kernel/routes/pages}/group.cjs +107 -6
  321. package/dist/{pages → kernel/routes/pages}/group.d.cts +4 -2
  322. package/dist/{pages → kernel/routes/pages}/group.d.ts +4 -2
  323. package/dist/{pages → kernel/routes/pages}/group.js +107 -6
  324. package/dist/kernel/routes/pages/leaf.cjs +421 -0
  325. package/dist/kernel/routes/pages/leaf.d.cts +36 -0
  326. package/dist/kernel/routes/pages/leaf.d.ts +36 -0
  327. package/dist/kernel/routes/pages/leaf.js +397 -0
  328. package/dist/{pages → kernel/routes/pages}/root.cjs +108 -6
  329. package/dist/{pages → kernel/routes/pages}/root.d.cts +4 -2
  330. package/dist/{pages → kernel/routes/pages}/root.d.ts +4 -2
  331. package/dist/kernel/routes/pages/root.js +203 -0
  332. package/dist/keyboard-shortcuts.cjs +345 -0
  333. package/dist/keyboard-shortcuts.d.cts +34 -0
  334. package/dist/keyboard-shortcuts.d.ts +34 -0
  335. package/dist/keyboard-shortcuts.js +326 -0
  336. package/dist/resolvers/manifest-resolver.cjs +7 -3
  337. package/dist/resolvers/manifest-resolver.d.cts +2 -2
  338. package/dist/resolvers/manifest-resolver.d.ts +2 -2
  339. package/dist/resolvers/manifest-resolver.js +7 -3
  340. package/dist/search.cjs +411 -0
  341. package/dist/search.d.cts +20 -0
  342. package/dist/search.d.ts +20 -0
  343. package/dist/search.js +393 -0
  344. package/dist/types.cjs +12 -0
  345. package/dist/types.d.cts +132 -7
  346. package/dist/types.d.ts +132 -7
  347. package/dist/types.js +5 -0
  348. package/dist/utils/heading-ids.cjs +119 -0
  349. package/dist/utils/heading-ids.d.cts +15 -0
  350. package/dist/utils/heading-ids.d.ts +15 -0
  351. package/dist/utils/heading-ids.js +90 -0
  352. package/package.json +59 -38
  353. package/release/package.json +23 -0
  354. package/release/pnpm-lock.yaml +1192 -0
  355. package/release/release.json +39 -0
  356. package/dist/components/color-palette.cjs +0 -408
  357. package/dist/components/color-palette.d.cts +0 -5
  358. package/dist/components/color-palette.d.ts +0 -5
  359. package/dist/components/color-palette.js +0 -388
  360. package/dist/components/nav-breadcrumb.d.cts +0 -9
  361. package/dist/components/nav-breadcrumb.d.ts +0 -9
  362. package/dist/components/providers.d.cts +0 -8
  363. package/dist/components/providers.d.ts +0 -8
  364. package/dist/components/providers.js +0 -20
  365. package/dist/components/site-header.cjs +0 -302
  366. package/dist/components/site-header.d.cts +0 -12
  367. package/dist/components/site-header.d.ts +0 -12
  368. package/dist/components/site-header.js +0 -268
  369. package/dist/components/theme-toggle.cjs +0 -147
  370. package/dist/components/theme-toggle.d.cts +0 -5
  371. package/dist/components/theme-toggle.d.ts +0 -5
  372. package/dist/components/theme-toggle.js +0 -123
  373. package/dist/layouts/group.d.cts +0 -15
  374. package/dist/layouts/group.d.ts +0 -15
  375. package/dist/mdx/error-boundary.cjs +0 -94
  376. package/dist/mdx/error-boundary.js +0 -70
  377. package/dist/mdx/mdx.cjs +0 -182
  378. package/dist/mdx/mdx.d.cts +0 -10
  379. package/dist/mdx/mdx.d.ts +0 -10
  380. package/dist/mdx/mdx.js +0 -147
  381. package/dist/pages/leaf.cjs +0 -203
  382. package/dist/pages/leaf.d.cts +0 -23
  383. package/dist/pages/leaf.d.ts +0 -23
  384. package/dist/pages/leaf.js +0 -176
  385. package/dist/pages/root.js +0 -101
  386. package/dist/routes/llms.cjs +0 -101
  387. package/dist/routes/llms.d.cts +0 -7
  388. package/dist/routes/llms.d.ts +0 -7
  389. package/dist/routes/llms.js +0 -76
  390. package/dist/routes/robots.js +0 -69
  391. package/dist/routes/sitemap.cjs +0 -108
  392. package/dist/routes/sitemap.d.cts +0 -5
  393. package/dist/routes/sitemap.d.ts +0 -5
  394. package/dist/routes/sitemap.js +0 -83
  395. /package/dist/{mdx → kernel/components/mdx}/error-fallback.d.cts +0 -0
  396. /package/dist/{mdx → kernel/components/mdx}/error-fallback.d.ts +0 -0
package/dist/types.d.ts CHANGED
@@ -1,11 +1,103 @@
1
+ import { RefObject } from 'react';
2
+
3
+ type SearchInput = {
4
+ filters?: {
5
+ author?: string;
6
+ group?: string;
7
+ tag?: string;
8
+ };
9
+ limit?: number;
10
+ offset?: number;
11
+ q: string;
12
+ };
13
+ type SearchStatus = "idle" | "building" | "stale" | "ready" | "error";
14
+ type SearchSubResult = {
15
+ excerpt: string;
16
+ plainExcerpt: string;
17
+ title: string;
18
+ url: string;
19
+ };
20
+ type SearchResult = {
21
+ excerpt: string;
22
+ id: string;
23
+ meta: {
24
+ author?: string;
25
+ description?: string;
26
+ group?: string;
27
+ image?: string;
28
+ nodeId?: string;
29
+ path?: string;
30
+ publishedAt?: string;
31
+ section?: string;
32
+ tags?: string;
33
+ title?: string;
34
+ updatedAt?: string;
35
+ };
36
+ plainExcerpt: string;
37
+ score?: number;
38
+ subResults: SearchSubResult[];
39
+ title: string;
40
+ url: string;
41
+ };
42
+ type SearchOutput = {
43
+ items: SearchResult[];
44
+ message?: string;
45
+ nextOffset: number | null;
46
+ status: SearchStatus;
47
+ total: number;
48
+ };
49
+ type SearchBlockVariant = "desktop" | "mobile";
50
+ type SearchBlockState = {
51
+ displayResults: SearchResult[];
52
+ isTyping: boolean;
53
+ loading: boolean;
54
+ message?: string;
55
+ open: boolean;
56
+ query: string;
57
+ selectedValue: string;
58
+ status: SearchStatus;
59
+ total: number;
60
+ };
61
+ type SearchBlockActions = {
62
+ handleInputChange(value: string): void;
63
+ navigateToResult(result: SearchResult): void;
64
+ setOpen(open: boolean): void;
65
+ setQuery(value: string): void;
66
+ setSelectedValue(id: string): void;
67
+ };
68
+ type SearchBlockMeta = {
69
+ inputId: string;
70
+ inputRef: RefObject<HTMLInputElement | null>;
71
+ listId: string;
72
+ listRef: RefObject<HTMLDivElement | null>;
73
+ shortcut: string;
74
+ variant: SearchBlockVariant;
75
+ };
76
+ type SearchBlockContextValue = {
77
+ actions: SearchBlockActions;
78
+ meta: SearchBlockMeta;
79
+ state: SearchBlockState;
80
+ };
81
+
1
82
  type Heading = {
2
83
  id: string;
3
84
  depth: number;
4
85
  text: string;
5
86
  };
6
87
  type SiteData = {
7
- title: string;
88
+ name: string;
8
89
  description?: string;
90
+ url?: string;
91
+ og?: OgMetadata;
92
+ };
93
+ type OgImageMetadata = string | {
94
+ src: string;
95
+ alt?: string;
96
+ };
97
+ type OgMetadata = {
98
+ title?: string;
99
+ description?: string;
100
+ image?: OgImageMetadata;
9
101
  };
10
102
  type Author = {
11
103
  id?: string;
@@ -16,7 +108,6 @@ type Author = {
16
108
  };
17
109
  type PageStatus = "published" | "draft" | "archived";
18
110
  type PageFrontmatter = {
19
- id: string;
20
111
  title: string;
21
112
  slug?: string;
22
113
  description?: string;
@@ -28,7 +119,7 @@ type PageFrontmatter = {
28
119
  [key: string]: unknown;
29
120
  };
30
121
  type PageData<TMeta extends Record<string, unknown> = Record<string, unknown>> = {
31
- id: string;
122
+ fileID: string;
32
123
  group: string;
33
124
  slug: string;
34
125
  path: string;
@@ -39,6 +130,7 @@ type PageData<TMeta extends Record<string, unknown> = Record<string, unknown>> =
39
130
  updatedAt?: string;
40
131
  authors: Author[];
41
132
  tags: string[];
133
+ og?: OgMetadata;
42
134
  meta: TMeta;
43
135
  body: string;
44
136
  };
@@ -47,7 +139,7 @@ type PageSummary<TMeta extends Record<string, unknown> = Record<string, unknown>
47
139
  };
48
140
  type PageNode = {
49
141
  type: "page";
50
- id: string;
142
+ fileID: string;
51
143
  title: string;
52
144
  path: string;
53
145
  group: string;
@@ -57,6 +149,7 @@ type PageNode = {
57
149
  updatedAt?: string;
58
150
  authors: Author[];
59
151
  tags?: string[];
152
+ og?: OgMetadata;
60
153
  meta: Record<string, unknown>;
61
154
  };
62
155
  type SectionNode = {
@@ -71,6 +164,7 @@ type FolderNode = {
71
164
  type: "folder";
72
165
  id: string;
73
166
  title: string;
167
+ path?: string;
74
168
  group?: string;
75
169
  children: TreeNode[];
76
170
  };
@@ -87,16 +181,26 @@ type NavSection = SectionNode;
87
181
  type NavFolder = FolderNode;
88
182
  type NavItem = TreeNode;
89
183
  type RouteRecord = {
90
- id: string;
184
+ fileID: string;
91
185
  slug: string;
92
186
  path: string;
93
187
  group: string;
94
188
  };
189
+ type ResolvedAttribution = {
190
+ enabled: false;
191
+ } | {
192
+ enabled: true;
193
+ variant: "publish-dev";
194
+ label?: string;
195
+ hrefLabel?: string;
196
+ href: string;
197
+ };
95
198
  type GroupManifest = {
96
199
  key: string;
97
200
  title: string;
98
201
  path: string;
99
- contentDir: string;
202
+ ancestry?: string[];
203
+ meta?: Record<string, unknown>;
100
204
  tree: TreeNode[];
101
205
  pages: PageData[];
102
206
  };
@@ -106,12 +210,16 @@ type ManifestLike = {
106
210
  routes: RouteRecord[];
107
211
  pages: PageData[];
108
212
  tree: TreeNode[];
213
+ attribution?: Record<string, ResolvedAttribution>;
109
214
  contentHash: string;
110
215
  };
111
216
  type RootLayoutProps = {
112
217
  children: React.ReactNode;
113
218
  site: SiteData;
114
219
  tree: TreeNode[];
220
+ currentPath?: string;
221
+ currentGroup?: GroupContext;
222
+ activeGroups?: readonly GroupContext[];
115
223
  };
116
224
  type RootPageProps = {
117
225
  site: SiteData;
@@ -140,5 +248,22 @@ type IndexPageProps = {
140
248
  currentPath: string;
141
249
  group: string;
142
250
  };
251
+ type ThemeMode = "system" | "light" | "dark";
252
+ type GroupForcedMode = "light" | "dark" | "none";
253
+ type GroupContext = {
254
+ key: string;
255
+ title: string;
256
+ path: string;
257
+ ancestry: readonly string[];
258
+ hasThemeCss: boolean;
259
+ hasFontScope: boolean;
260
+ defaultMode?: ThemeMode;
261
+ forcedMode?: GroupForcedMode;
262
+ resolvedForcedMode?: "light" | "dark";
263
+ escapesForcedMode?: boolean;
264
+ meta?: Record<string, unknown>;
265
+ };
266
+
267
+ declare const __publishOsTypesModule = true;
143
268
 
144
- export type { Author, FolderNode, GroupManifest, Heading, IndexPageProps, LayoutProps, LinkNode, ManifestLike, NavFolder, NavItem, NavLink, NavPage, NavSection, PageData, PageFrontmatter, PageNode, PageProps, PageStatus, PageSummary, RootLayoutProps, RootPageProps, RouteRecord, SectionNode, SiteData, TreeNode };
269
+ export { type Author, type FolderNode, type GroupContext, type GroupForcedMode, type GroupManifest, type Heading, type IndexPageProps, type LayoutProps, type LinkNode, type ManifestLike, type NavFolder, type NavItem, type NavLink, type NavPage, type NavSection, type OgImageMetadata, type OgMetadata, type PageData, type PageFrontmatter, type PageNode, type PageProps, type PageStatus, type PageSummary, type ResolvedAttribution, type RootLayoutProps, type RootPageProps, type RouteRecord, type SearchBlockActions, type SearchBlockContextValue, type SearchBlockMeta, type SearchBlockState, type SearchBlockVariant, type SearchInput, type SearchOutput, type SearchResult, type SearchStatus, type SearchSubResult, type SectionNode, type SiteData, type ThemeMode, type TreeNode, __publishOsTypesModule };
package/dist/types.js CHANGED
@@ -0,0 +1,5 @@
1
+ // src/types.ts
2
+ var __publishOsTypesModule = true;
3
+ export {
4
+ __publishOsTypesModule
5
+ };
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/utils/heading-ids.ts
21
+ var heading_ids_exports = {};
22
+ __export(heading_ids_exports, {
23
+ cleanHeadingText: () => cleanHeadingText,
24
+ createHeadingIdGenerator: () => createHeadingIdGenerator,
25
+ extractMdxHeadings: () => extractMdxHeadings,
26
+ headingToHTMLId: () => headingToHTMLId,
27
+ urlIdToText: () => urlIdToText
28
+ });
29
+ module.exports = __toCommonJS(heading_ids_exports);
30
+ var import_react = require("react");
31
+ var SELF_CLOSING_TAG_RE = new RegExp("<[^>]+/>", "g");
32
+ var PAIRED_TAG_RE = /<\/?\w[^>]*>/g;
33
+ var MDX_BOLD_RE = /\*\*(.*?)\*\*/g;
34
+ var MDX_ITALIC_RE = /\*(.*?)\*/g;
35
+ var MDX_UNDERLINE_BOLD_RE = /__(.*?)__/g;
36
+ var MDX_UNDERLINE_ITALIC_RE = /_(.*?)_/g;
37
+ var MDX_STRIKETHROUGH_RE = /~~(.*?)~~/g;
38
+ var MDX_INLINE_CODE_RE = /`(.*?)`/g;
39
+ var MDX_LINK_RE = /\[(.*?)\]\(.*?\)/g;
40
+ var NON_ALPHANUMERIC_RE = /[^a-z0-9]+/g;
41
+ var LEADING_TRAILING_HYPHEN_RE = /^-+|-+$/g;
42
+ var LEADING_DIGIT_RE = /^(\d)/;
43
+ var HEADING_RE = /^(#{1,6})[ \t]+(.+?)\s*#*\s*$/gm;
44
+ var FENCED_CODE_RE = /```[\s\S]*?```|~~~[\s\S]*?~~~/g;
45
+ function extractText(node) {
46
+ if (typeof node === "string") return node;
47
+ if (typeof node === "number") return String(node);
48
+ if (node == null || typeof node === "boolean") return "";
49
+ if (Array.isArray(node)) {
50
+ return node.map(extractText).join("");
51
+ }
52
+ if ((0, import_react.isValidElement)(node)) {
53
+ const element = node;
54
+ return element.props.children === void 0 ? "" : extractText(element.props.children);
55
+ }
56
+ return "";
57
+ }
58
+ function cleanHeadingText(input) {
59
+ const text = typeof input === "string" ? input : extractText(input);
60
+ return text.replace(SELF_CLOSING_TAG_RE, "").replace(PAIRED_TAG_RE, "").replace(MDX_BOLD_RE, "$1").replace(MDX_ITALIC_RE, "$1").replace(MDX_UNDERLINE_BOLD_RE, "$1").replace(MDX_UNDERLINE_ITALIC_RE, "$1").replace(MDX_STRIKETHROUGH_RE, "$1").replace(MDX_INLINE_CODE_RE, "$1").replace(MDX_LINK_RE, "$1").trim();
61
+ }
62
+ function slugify(text) {
63
+ return text.toLowerCase().replace(NON_ALPHANUMERIC_RE, "-").replace(LEADING_TRAILING_HYPHEN_RE, "").replace(LEADING_DIGIT_RE, "id-$1");
64
+ }
65
+ function headingToHTMLId(input) {
66
+ try {
67
+ const id = slugify(cleanHeadingText(input));
68
+ return id || "empty-heading";
69
+ } catch {
70
+ return "empty-heading";
71
+ }
72
+ }
73
+ function createHeadingIdGenerator() {
74
+ const usedIds = /* @__PURE__ */ new Map();
75
+ return (input) => {
76
+ const baseId = headingToHTMLId(input);
77
+ if (baseId === "empty-heading") return baseId;
78
+ const count = usedIds.get(baseId) ?? 0;
79
+ usedIds.set(baseId, count + 1);
80
+ return count === 0 ? baseId : `${baseId}-${count}`;
81
+ };
82
+ }
83
+ function extractMdxHeadings(content = "", levels) {
84
+ const [minDepth, maxDepth] = levels;
85
+ const headingId = createHeadingIdGenerator();
86
+ const headings = [];
87
+ const searchableContent = content.replace(FENCED_CODE_RE, "");
88
+ HEADING_RE.lastIndex = 0;
89
+ while (true) {
90
+ const match = HEADING_RE.exec(searchableContent);
91
+ if (!match) break;
92
+ const marker = match[1];
93
+ const rawText = match[2];
94
+ if (!marker || !rawText) continue;
95
+ const level = marker.length;
96
+ const text = cleanHeadingText(rawText);
97
+ const id = headingId(rawText);
98
+ if (!text || id === "empty-heading") continue;
99
+ if (level < minDepth || level > maxDepth) continue;
100
+ headings.push({ id, level, text });
101
+ }
102
+ return headings;
103
+ }
104
+ function urlIdToText(urlId) {
105
+ try {
106
+ if (typeof urlId !== "string") return "";
107
+ return urlId.replace(/^id-/, "").replace(/-/g, " ").replace(/\b\w/g, (char) => char.toUpperCase());
108
+ } catch {
109
+ return "";
110
+ }
111
+ }
112
+ // Annotate the CommonJS export names for ESM import in node:
113
+ 0 && (module.exports = {
114
+ cleanHeadingText,
115
+ createHeadingIdGenerator,
116
+ extractMdxHeadings,
117
+ headingToHTMLId,
118
+ urlIdToText
119
+ });
@@ -0,0 +1,15 @@
1
+ import { ReactNode } from 'react';
2
+
3
+ type HeadingIdGenerator = (input: ReactNode) => string;
4
+ type MdxHeadingItem = {
5
+ id: string;
6
+ level: number;
7
+ text: string;
8
+ };
9
+ declare function cleanHeadingText(input: ReactNode): string;
10
+ declare function headingToHTMLId(input: ReactNode): string;
11
+ declare function createHeadingIdGenerator(): HeadingIdGenerator;
12
+ declare function extractMdxHeadings(content: string | undefined, levels: [number, number]): MdxHeadingItem[];
13
+ declare function urlIdToText(urlId: string): string;
14
+
15
+ export { type HeadingIdGenerator, type MdxHeadingItem, cleanHeadingText, createHeadingIdGenerator, extractMdxHeadings, headingToHTMLId, urlIdToText };
@@ -0,0 +1,15 @@
1
+ import { ReactNode } from 'react';
2
+
3
+ type HeadingIdGenerator = (input: ReactNode) => string;
4
+ type MdxHeadingItem = {
5
+ id: string;
6
+ level: number;
7
+ text: string;
8
+ };
9
+ declare function cleanHeadingText(input: ReactNode): string;
10
+ declare function headingToHTMLId(input: ReactNode): string;
11
+ declare function createHeadingIdGenerator(): HeadingIdGenerator;
12
+ declare function extractMdxHeadings(content: string | undefined, levels: [number, number]): MdxHeadingItem[];
13
+ declare function urlIdToText(urlId: string): string;
14
+
15
+ export { type HeadingIdGenerator, type MdxHeadingItem, cleanHeadingText, createHeadingIdGenerator, extractMdxHeadings, headingToHTMLId, urlIdToText };
@@ -0,0 +1,90 @@
1
+ // src/utils/heading-ids.ts
2
+ import { isValidElement } from "react";
3
+ var SELF_CLOSING_TAG_RE = new RegExp("<[^>]+/>", "g");
4
+ var PAIRED_TAG_RE = /<\/?\w[^>]*>/g;
5
+ var MDX_BOLD_RE = /\*\*(.*?)\*\*/g;
6
+ var MDX_ITALIC_RE = /\*(.*?)\*/g;
7
+ var MDX_UNDERLINE_BOLD_RE = /__(.*?)__/g;
8
+ var MDX_UNDERLINE_ITALIC_RE = /_(.*?)_/g;
9
+ var MDX_STRIKETHROUGH_RE = /~~(.*?)~~/g;
10
+ var MDX_INLINE_CODE_RE = /`(.*?)`/g;
11
+ var MDX_LINK_RE = /\[(.*?)\]\(.*?\)/g;
12
+ var NON_ALPHANUMERIC_RE = /[^a-z0-9]+/g;
13
+ var LEADING_TRAILING_HYPHEN_RE = /^-+|-+$/g;
14
+ var LEADING_DIGIT_RE = /^(\d)/;
15
+ var HEADING_RE = /^(#{1,6})[ \t]+(.+?)\s*#*\s*$/gm;
16
+ var FENCED_CODE_RE = /```[\s\S]*?```|~~~[\s\S]*?~~~/g;
17
+ function extractText(node) {
18
+ if (typeof node === "string") return node;
19
+ if (typeof node === "number") return String(node);
20
+ if (node == null || typeof node === "boolean") return "";
21
+ if (Array.isArray(node)) {
22
+ return node.map(extractText).join("");
23
+ }
24
+ if (isValidElement(node)) {
25
+ const element = node;
26
+ return element.props.children === void 0 ? "" : extractText(element.props.children);
27
+ }
28
+ return "";
29
+ }
30
+ function cleanHeadingText(input) {
31
+ const text = typeof input === "string" ? input : extractText(input);
32
+ return text.replace(SELF_CLOSING_TAG_RE, "").replace(PAIRED_TAG_RE, "").replace(MDX_BOLD_RE, "$1").replace(MDX_ITALIC_RE, "$1").replace(MDX_UNDERLINE_BOLD_RE, "$1").replace(MDX_UNDERLINE_ITALIC_RE, "$1").replace(MDX_STRIKETHROUGH_RE, "$1").replace(MDX_INLINE_CODE_RE, "$1").replace(MDX_LINK_RE, "$1").trim();
33
+ }
34
+ function slugify(text) {
35
+ return text.toLowerCase().replace(NON_ALPHANUMERIC_RE, "-").replace(LEADING_TRAILING_HYPHEN_RE, "").replace(LEADING_DIGIT_RE, "id-$1");
36
+ }
37
+ function headingToHTMLId(input) {
38
+ try {
39
+ const id = slugify(cleanHeadingText(input));
40
+ return id || "empty-heading";
41
+ } catch {
42
+ return "empty-heading";
43
+ }
44
+ }
45
+ function createHeadingIdGenerator() {
46
+ const usedIds = /* @__PURE__ */ new Map();
47
+ return (input) => {
48
+ const baseId = headingToHTMLId(input);
49
+ if (baseId === "empty-heading") return baseId;
50
+ const count = usedIds.get(baseId) ?? 0;
51
+ usedIds.set(baseId, count + 1);
52
+ return count === 0 ? baseId : `${baseId}-${count}`;
53
+ };
54
+ }
55
+ function extractMdxHeadings(content = "", levels) {
56
+ const [minDepth, maxDepth] = levels;
57
+ const headingId = createHeadingIdGenerator();
58
+ const headings = [];
59
+ const searchableContent = content.replace(FENCED_CODE_RE, "");
60
+ HEADING_RE.lastIndex = 0;
61
+ while (true) {
62
+ const match = HEADING_RE.exec(searchableContent);
63
+ if (!match) break;
64
+ const marker = match[1];
65
+ const rawText = match[2];
66
+ if (!marker || !rawText) continue;
67
+ const level = marker.length;
68
+ const text = cleanHeadingText(rawText);
69
+ const id = headingId(rawText);
70
+ if (!text || id === "empty-heading") continue;
71
+ if (level < minDepth || level > maxDepth) continue;
72
+ headings.push({ id, level, text });
73
+ }
74
+ return headings;
75
+ }
76
+ function urlIdToText(urlId) {
77
+ try {
78
+ if (typeof urlId !== "string") return "";
79
+ return urlId.replace(/^id-/, "").replace(/-/g, " ").replace(/\b\w/g, (char) => char.toUpperCase());
80
+ } catch {
81
+ return "";
82
+ }
83
+ }
84
+ export {
85
+ cleanHeadingText,
86
+ createHeadingIdGenerator,
87
+ extractMdxHeadings,
88
+ headingToHTMLId,
89
+ urlIdToText
90
+ };
package/package.json CHANGED
@@ -1,8 +1,11 @@
1
1
  {
2
2
  "name": "@publish.os/nextjs",
3
- "version": "0.0.1-alpha.2",
3
+ "version": "0.0.1-alpha.4",
4
4
  "type": "module",
5
5
  "license": "UNLICENSED",
6
+ "engines": {
7
+ "node": ">=22.13"
8
+ },
6
9
  "repository": {
7
10
  "type": "git",
8
11
  "url": "git+https://github.com/PublishOS/publishOS.git",
@@ -10,6 +13,7 @@
10
13
  },
11
14
  "files": [
12
15
  "dist/**",
16
+ "release/**",
13
17
  "package.json",
14
18
  "README.md"
15
19
  ],
@@ -18,76 +22,93 @@
18
22
  "types": "./dist/index.d.ts",
19
23
  "default": "./dist/index.js"
20
24
  },
21
- "./routes/*": {
22
- "types": "./dist/routes/*.d.ts",
23
- "default": "./dist/routes/*.js"
24
- },
25
25
  "./resolvers/*": {
26
26
  "types": "./dist/resolvers/*.d.ts",
27
27
  "default": "./dist/resolvers/*.js"
28
28
  },
29
29
  "./mdx/*": {
30
- "types": "./dist/mdx/*.d.ts",
31
- "default": "./dist/mdx/*.js"
30
+ "types": "./dist/kernel/components/mdx/*.d.ts",
31
+ "default": "./dist/kernel/components/mdx/*.js"
32
32
  },
33
33
  "./mdx": {
34
- "types": "./dist/mdx/mdx.d.ts",
35
- "default": "./dist/mdx/mdx.js"
36
- },
37
- "./pages/leaf": {
38
- "types": "./dist/pages/leaf.d.ts",
39
- "default": "./dist/pages/leaf.js"
40
- },
41
- "./pages/group": {
42
- "types": "./dist/pages/group.d.ts",
43
- "default": "./dist/pages/group.js"
44
- },
45
- "./pages/root": {
46
- "types": "./dist/pages/root.d.ts",
47
- "default": "./dist/pages/root.js"
48
- },
49
- "./layouts/group": {
50
- "types": "./dist/layouts/group.d.ts",
51
- "default": "./dist/layouts/group.js"
34
+ "types": "./dist/kernel/components/mdx/mdx.d.ts",
35
+ "default": "./dist/kernel/components/mdx/mdx.js"
52
36
  },
53
37
  "./cache/tags": {
54
38
  "types": "./dist/cache/tags.d.ts",
55
39
  "default": "./dist/cache/tags.js"
56
40
  },
41
+ "./config": {
42
+ "types": "./dist/config.d.ts",
43
+ "default": "./dist/config.js"
44
+ },
45
+ "./keyboard-shortcuts": {
46
+ "types": "./dist/keyboard-shortcuts.d.ts",
47
+ "default": "./dist/keyboard-shortcuts.js"
48
+ },
49
+ "./search": {
50
+ "types": "./dist/search.d.ts",
51
+ "default": "./dist/search.js"
52
+ },
57
53
  "./types": {
58
54
  "types": "./dist/types.d.ts",
59
55
  "default": "./dist/types.js"
60
56
  },
61
- "./routes/llms": {
62
- "types": "./dist/routes/llms.d.ts",
63
- "default": "./dist/routes/llms.js"
57
+ "./kernel/defaults.registry": {
58
+ "types": "./dist/kernel/defaults.registry.d.ts",
59
+ "default": "./dist/kernel/defaults.registry.js"
60
+ },
61
+ "./kernel/routes/agent/*": {
62
+ "types": "./dist/kernel/routes/agent/*.d.ts",
63
+ "default": "./dist/kernel/routes/agent/*.js"
64
+ },
65
+ "./kernel/routes/layouts/*": {
66
+ "types": "./dist/kernel/routes/layouts/*.d.ts",
67
+ "default": "./dist/kernel/routes/layouts/*.js"
64
68
  },
65
- "./routes/robots": {
66
- "types": "./dist/routes/robots.d.ts",
67
- "default": "./dist/routes/robots.js"
69
+ "./kernel/routes/metadata/*": {
70
+ "types": "./dist/kernel/routes/metadata/*.d.ts",
71
+ "default": "./dist/kernel/routes/metadata/*.js"
68
72
  },
69
- "./routes/sitemap": {
70
- "types": "./dist/routes/sitemap.d.ts",
71
- "default": "./dist/routes/sitemap.js"
73
+ "./kernel/routes/pages/*": {
74
+ "types": "./dist/kernel/routes/pages/*.d.ts",
75
+ "default": "./dist/kernel/routes/pages/*.js"
72
76
  },
73
- "./components/*": {
74
- "types": "./dist/components/*.d.ts",
75
- "default": "./dist/components/*.js"
77
+ "./kernel/routes/*": {
78
+ "types": "./dist/kernel/routes/*.d.ts",
79
+ "default": "./dist/kernel/routes/*.js"
80
+ },
81
+ "./kernel/*": {
82
+ "types": "./dist/kernel/*.d.ts",
83
+ "default": "./dist/kernel/*.js"
76
84
  },
77
85
  "./utils/pretty-date": {
78
86
  "types": "./dist/utils/pretty-date.d.ts",
79
87
  "default": "./dist/utils/pretty-date.js"
80
88
  },
89
+ "./utils/cn": {
90
+ "types": "./dist/utils/cn.d.ts",
91
+ "default": "./dist/utils/cn.js"
92
+ },
93
+ "./utils/heading-ids": {
94
+ "types": "./dist/utils/heading-ids.d.ts",
95
+ "default": "./dist/utils/heading-ids.js"
96
+ },
81
97
  "./config/*": {
82
98
  "types": "./dist/config/*.d.ts",
83
99
  "default": "./dist/config/*.js"
84
100
  }
85
101
  },
86
102
  "dependencies": {
103
+ "@base-ui/react": "1.5.0",
104
+ "@types/mdx": "2.0.13",
105
+ "class-variance-authority": "0.7.1",
87
106
  "clsx": "^2.1.1",
107
+ "lucide-react": "0.468.0",
88
108
  "next-mdx-remote": "^6.0.0",
89
109
  "next-themes": "^0.4.0",
90
110
  "react": "^19.2.0",
111
+ "react-medium-image-zoom": "^5.4.8",
91
112
  "remark-gfm": "^4.0.1",
92
113
  "tailwind-merge": "^3.0.0",
93
114
  "tslib": "^2.8.1"
@@ -102,4 +123,4 @@
102
123
  "registry": "https://registry.npmjs.org",
103
124
  "access": "public"
104
125
  }
105
- }
126
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "name": "publish-os-nextjs-release-base",
3
+ "private": true,
4
+ "type": "module",
5
+ "engines": {
6
+ "node": ">=22.13"
7
+ },
8
+ "dependencies": {
9
+ "@base-ui/react": "1.5.0",
10
+ "@tailwindcss/postcss": "4.3.0",
11
+ "@types/node": "22.19.17",
12
+ "@types/react": "19.2.2",
13
+ "@types/react-dom": "19.2.2",
14
+ "class-variance-authority": "0.7.1",
15
+ "next": "16.2.6",
16
+ "next-themes": "0.4.6",
17
+ "pagefind": "1.5.2",
18
+ "react": "19.2.0",
19
+ "react-dom": "19.2.0",
20
+ "tailwindcss": "4.3.0",
21
+ "typescript": "5.9.2"
22
+ }
23
+ }