@publish.os/nextjs 0.0.1-alpha.81 → 0.0.1-alpha.91

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 (265) hide show
  1. package/compiler-assets/nextjs/defaults/app/globals.css +1 -0
  2. package/compiler-assets/nextjs/defaults/group/index.tsx +50 -0
  3. package/compiler-assets/nextjs/defaults/group/layout.tsx +8 -8
  4. package/compiler-assets/nextjs/defaults/group/page.tsx +44 -43
  5. package/compiler-assets/nextjs/defaults/project/next.config.mjs +33 -13
  6. package/compiler-assets/nextjs/defaults/project/tsconfig.json.template +10 -3
  7. package/compiler-assets/nextjs/defaults/root/css/animation.css +131 -0
  8. package/compiler-assets/nextjs/defaults/root/css/components/code-block.css +18 -0
  9. package/compiler-assets/nextjs/defaults/root/css/components/dialog.css +4 -1
  10. package/compiler-assets/nextjs/defaults/root/css/components/menu.css +1 -1
  11. package/compiler-assets/nextjs/defaults/root/css/components/navigation-menu.css +1 -1
  12. package/compiler-assets/nextjs/defaults/root/css/components/popover.css +1 -1
  13. package/compiler-assets/nextjs/defaults/root/css/components/select.css +1 -1
  14. package/compiler-assets/nextjs/defaults/root/css/components/tooltip.css +1 -1
  15. package/compiler-assets/nextjs/defaults/root/css/shadow.css +6 -25
  16. package/compiler-assets/nextjs/defaults/root/css/typography.css +51 -68
  17. package/compiler-assets/nextjs/defaults/root/globals.css +25 -0
  18. package/compiler-assets/nextjs/defaults/root/{page.tsx → index.tsx} +6 -2
  19. package/compiler-assets/nextjs/defaults/root/layout.tsx +7 -1
  20. package/compiler-assets/nextjs/defaults/root/theme.css +22 -22
  21. package/compiler-assets/nextjs/shims/document.tsx +38 -0
  22. package/compiler-assets/nextjs/shims/generated-group-page.tsx +19 -2
  23. package/compiler-assets/nextjs/shims/generated-leaf-page.tsx +18 -2
  24. package/compiler-assets/nextjs/shims/global-layout.tsx +19 -85
  25. package/compiler-assets/nextjs/shims/global-not-found.tsx +69 -0
  26. package/compiler-assets/nextjs/shims/markdown-route.ts +2 -0
  27. package/compiler-assets/nextjs/shims/metadata-icons.tsx +39 -0
  28. package/compiler-assets/nextjs/shims/not-found-content.tsx +53 -0
  29. package/compiler-assets/nextjs/shims/not-found-navigation.tsx +60 -0
  30. package/compiler-assets/nextjs/shims/proxy.ts +143 -65
  31. package/compiler-assets/nextjs/shims/publish-os-theme-provider.tsx +76 -15
  32. package/compiler-assets/nextjs/shims/root-page.tsx +7 -1
  33. package/compiler-assets/nextjs/shims/site-fenced-code-block.tsx +30 -0
  34. package/compiler-assets/nextjs/shims/site-heading-level.tsx +14 -0
  35. package/compiler-assets/nextjs/shims/site-mdx-components.tsx +112 -0
  36. package/compiler-assets/nextjs/shims/site-mdx.tsx +17 -0
  37. package/compiler-assets/nextjs/shims/theme-defaults.css +41 -25
  38. package/dist/build-operation-5QMLXF7N.js +89 -0
  39. package/dist/{button-CFdx-ohV.d.ts → button-BdCScEKi.d.ts} +6 -6
  40. package/dist/capture-local-source-WGGDIUU2.js +258 -0
  41. package/dist/chunk-22RSSUNV.js +13 -0
  42. package/dist/chunk-4BC2L2KA.js +620 -0
  43. package/dist/chunk-5J3YUNRY.js +121 -0
  44. package/dist/chunk-5KAD7W53.js +248 -0
  45. package/dist/chunk-6C65KV7O.js +142 -0
  46. package/dist/chunk-6D2E6UMD.js +695 -0
  47. package/dist/chunk-7NY22B5U.js +161 -0
  48. package/dist/chunk-AI2UULNX.js +9 -0
  49. package/dist/chunk-EFO6AWXN.js +19 -0
  50. package/dist/chunk-F3AGNDF4.js +2377 -0
  51. package/dist/chunk-GBPLER5H.js +426 -0
  52. package/dist/chunk-IL4RJOKI.js +186 -0
  53. package/dist/chunk-NNBJZPFM.js +193 -0
  54. package/dist/chunk-ORIUWJBQ.js +58 -0
  55. package/dist/chunk-OXOFRXEI.js +7129 -0
  56. package/dist/chunk-UYGCOWRF.js +1709 -0
  57. package/dist/chunk-WL75GQ5M.js +80 -0
  58. package/dist/compiler.d.ts +54 -7
  59. package/dist/compiler.js +121 -13147
  60. package/dist/components/blocks/agent-actions.d.ts +81 -0
  61. package/dist/components/blocks/agent-actions.js +594 -0
  62. package/dist/components/blocks/toc.d.ts +43 -0
  63. package/dist/components/blocks/toc.js +136 -0
  64. package/dist/components/ui/button.d.ts +5 -0
  65. package/dist/components/ui/button.js +94 -0
  66. package/dist/compose-CVBJRAF6.js +16 -0
  67. package/dist/config/createNextConfig.js +27 -0
  68. package/dist/dev-operation-OSHHWRWK.js +1095 -0
  69. package/dist/framework-selection-ZVO323PK.js +11 -0
  70. package/dist/ide-support-CU6Z5PVR.js +16 -0
  71. package/dist/index.d.ts +55 -4
  72. package/dist/jsx-dev-runtime.d.ts +6 -0
  73. package/dist/jsx-dev-runtime.js +100 -0
  74. package/dist/jsx-runtime.d.ts +7 -0
  75. package/dist/jsx-runtime.js +97 -0
  76. package/dist/kernel/components/blocks/AgentActions.d.ts +35 -6
  77. package/dist/kernel/components/blocks/AgentActions.js +401 -150
  78. package/dist/kernel/components/blocks/agent-actions.d.ts +5 -0
  79. package/dist/kernel/components/blocks/agent-actions.js +594 -0
  80. package/dist/kernel/components/blocks/animated-icon-swap.js +1 -1
  81. package/dist/kernel/components/blocks/color-palette.js +4 -4
  82. package/dist/kernel/components/blocks/logo-block.js +3 -3
  83. package/dist/kernel/components/blocks/nav-breadcrumb.d.ts +10 -2
  84. package/dist/kernel/components/blocks/nav-breadcrumb.js +22 -7
  85. package/dist/kernel/components/blocks/navbar.d.ts +2 -2
  86. package/dist/kernel/components/blocks/navbar.js +406 -65
  87. package/dist/kernel/components/blocks/navigation-progress.js +6 -3
  88. package/dist/kernel/components/blocks/next-prev.d.ts +1 -1
  89. package/dist/kernel/components/blocks/next-prev.js +12 -24
  90. package/dist/kernel/components/blocks/page-list.d.ts +1 -1
  91. package/dist/kernel/components/blocks/page-list.js +7 -6
  92. package/dist/kernel/components/blocks/search.d.ts +83 -58
  93. package/dist/kernel/components/blocks/search.js +554 -428
  94. package/dist/kernel/components/blocks/sidebar-node.d.ts +2 -2
  95. package/dist/kernel/components/blocks/sidebar-node.js +12 -10
  96. package/dist/kernel/components/blocks/sidebar.d.ts +3 -3
  97. package/dist/kernel/components/blocks/sidebar.js +24 -14
  98. package/dist/kernel/components/blocks/theme-toggle.d.ts +2 -2
  99. package/dist/kernel/components/blocks/theme-toggle.js +47 -1
  100. package/dist/kernel/components/blocks/toc-client.d.ts +40 -0
  101. package/dist/kernel/components/blocks/toc-client.js +495 -0
  102. package/dist/kernel/components/blocks/toc.d.ts +19 -1
  103. package/dist/kernel/components/blocks/toc.js +122 -180
  104. package/dist/kernel/components/mdx/components/blockquote.js +2 -2
  105. package/dist/kernel/components/mdx/components/callout.d.ts +5 -7
  106. package/dist/kernel/components/mdx/components/callout.js +67 -36
  107. package/dist/kernel/components/mdx/components/code-block.d.ts +5 -2
  108. package/dist/kernel/components/mdx/components/code-block.js +106 -5
  109. package/dist/kernel/components/mdx/components/copy-code-button.d.ts +8 -0
  110. package/dist/kernel/components/mdx/components/copy-code-button.js +61 -0
  111. package/dist/kernel/components/mdx/components/figure-caption.d.ts +1 -1
  112. package/dist/kernel/components/mdx/components/figure-caption.js +4 -3
  113. package/dist/kernel/components/mdx/components/figure.d.ts +6 -2
  114. package/dist/kernel/components/mdx/components/figure.js +24 -14
  115. package/dist/kernel/components/mdx/components/footnotes.js +1 -1
  116. package/dist/kernel/components/mdx/components/heading-copy-link.js +4 -4
  117. package/dist/kernel/components/mdx/components/heading.js +6 -3
  118. package/dist/kernel/components/mdx/components/hr.js +2 -2
  119. package/dist/kernel/components/mdx/components/image-zoom.js +2 -2
  120. package/dist/kernel/components/mdx/components/image.d.ts +1 -1
  121. package/dist/kernel/components/mdx/components/image.js +94 -68
  122. package/dist/kernel/components/mdx/components/inline-code.js +2 -2
  123. package/dist/kernel/components/mdx/components/kbd.d.ts +2 -2
  124. package/dist/kernel/components/mdx/components/kbd.js +5 -4
  125. package/dist/kernel/components/mdx/components/link.d.ts +35 -4
  126. package/dist/kernel/components/mdx/components/link.js +3 -3
  127. package/dist/kernel/components/mdx/components/paragraph.js +2 -5
  128. package/dist/kernel/components/mdx/components/strikethrough.js +1 -1
  129. package/dist/kernel/components/mdx/components/table.js +2 -2
  130. package/dist/kernel/components/mdx/components/task-list.js +2 -2
  131. package/dist/kernel/components/mdx/components/video-player.d.ts +6 -2
  132. package/dist/kernel/components/mdx/components/video-player.js +8 -4
  133. package/dist/kernel/components/mdx/components/video.d.ts +5 -3
  134. package/dist/kernel/components/mdx/components/video.js +8 -6
  135. package/dist/kernel/components/mdx/error-boundary.js +2 -2
  136. package/dist/kernel/components/mdx/error-fallback.js +1 -1
  137. package/dist/kernel/components/mdx/mdx.d.ts +28 -14
  138. package/dist/kernel/components/mdx/mdx.js +336 -63
  139. package/dist/kernel/components/mdx/rehype-heading-ids.d.ts +1 -0
  140. package/dist/kernel/components/mdx/rehype-heading-ids.js +6 -4
  141. package/dist/kernel/components/next-image.d.ts +12 -0
  142. package/dist/kernel/components/next-image.js +61 -0
  143. package/dist/kernel/components/ui/accordion.js +1 -1
  144. package/dist/kernel/components/ui/breadcrumb-trail.d.ts +6 -23
  145. package/dist/kernel/components/ui/breadcrumb-trail.js +2 -2
  146. package/dist/kernel/components/ui/breadcrumb.d.ts +11 -3
  147. package/dist/kernel/components/ui/breadcrumb.js +10 -8
  148. package/dist/kernel/components/ui/button-group.js +8 -7
  149. package/dist/kernel/components/ui/button.d.ts +58 -6
  150. package/dist/kernel/components/ui/button.js +43 -39
  151. package/dist/kernel/components/ui/card.d.ts +2 -2
  152. package/dist/kernel/components/ui/card.js +1 -1
  153. package/dist/kernel/components/ui/dialog.js +1 -1
  154. package/dist/kernel/components/ui/drawer.d.ts +3 -1
  155. package/dist/kernel/components/ui/drawer.js +6 -2
  156. package/dist/kernel/components/ui/input.d.ts +2 -2
  157. package/dist/kernel/components/ui/input.js +1 -1
  158. package/dist/kernel/components/ui/kbd.js +10 -17
  159. package/dist/kernel/components/ui/link.d.ts +11 -3
  160. package/dist/kernel/components/ui/link.js +12 -11
  161. package/dist/kernel/components/ui/menu.js +6 -6
  162. package/dist/kernel/components/ui/mod-key.d.ts +10 -0
  163. package/dist/kernel/components/ui/mod-key.js +36 -0
  164. package/dist/kernel/components/ui/navigation-menu.js +3 -3
  165. package/dist/kernel/components/ui/popover.js +1 -1
  166. package/dist/kernel/components/ui/progress.js +2 -2
  167. package/dist/kernel/components/ui/scroll-area.js +5 -5
  168. package/dist/kernel/components/ui/select.js +8 -11
  169. package/dist/kernel/components/ui/separator.js +1 -1
  170. package/dist/kernel/components/ui/table.js +1 -1
  171. package/dist/kernel/components/ui/tabs.js +1 -1
  172. package/dist/kernel/components/ui/tag.js +1 -1
  173. package/dist/kernel/components/ui/text.d.ts +2 -2
  174. package/dist/kernel/components/ui/text.js +1 -1
  175. package/dist/kernel/components/ui/toast.js +1 -1
  176. package/dist/kernel/components/ui/tooltip.js +1 -1
  177. package/dist/kernel/defaults.registry.d.ts +11 -24
  178. package/dist/kernel/defaults.registry.js +11 -26
  179. package/dist/kernel/routes/agent/markdown.d.ts +3 -1
  180. package/dist/kernel/routes/agent/markdown.js +219 -48
  181. package/dist/kernel/routes/layouts/group.d.ts +1 -1
  182. package/dist/kernel/routes/layouts/group.js +5 -7
  183. package/dist/kernel/routes/metadata/feed.d.ts +1 -1
  184. package/dist/kernel/routes/metadata/feed.js +111 -81
  185. package/dist/kernel/routes/metadata/llms.d.ts +12 -3
  186. package/dist/kernel/routes/metadata/llms.js +156 -59
  187. package/dist/kernel/routes/metadata/og-image.js +1 -1
  188. package/dist/kernel/routes/metadata/robots.d.ts +1 -1
  189. package/dist/kernel/routes/metadata/robots.js +2 -2
  190. package/dist/kernel/routes/metadata/sitemap.d.ts +26 -4
  191. package/dist/kernel/routes/metadata/sitemap.js +206 -38
  192. package/dist/kernel/routes/not-found.d.ts +34 -0
  193. package/dist/kernel/routes/not-found.js +213 -0
  194. package/dist/kernel/routes/pages/group.d.ts +2 -2
  195. package/dist/kernel/routes/pages/group.js +21 -13
  196. package/dist/kernel/routes/pages/leaf.d.ts +28 -1
  197. package/dist/kernel/routes/pages/leaf.js +25 -16
  198. package/dist/kernel/routes/pages/root.js +19 -13
  199. package/dist/keyboard-shortcuts.js +1 -1
  200. package/dist/resolvers/manifest-resolver.js +29 -6
  201. package/dist/search.d.ts +6 -7
  202. package/dist/search.js +52 -29
  203. package/dist/{sidebar-types-Bgchdfd6.d.ts → sidebar-types-DKpR27II.d.ts} +1 -1
  204. package/dist/theme-scope.js +1 -1
  205. package/dist/{types-DHBm7-j6.d.ts → types-CJWRG05y.d.ts} +20 -1
  206. package/dist/{types-B_b3C0U6.d.ts → types-CUtrppxt.d.ts} +8 -2
  207. package/dist/{types-CIwwieNw.d.ts → types-J2w_puPF.d.ts} +11 -10
  208. package/dist/types.d.ts +15 -6
  209. package/dist/utils/heading-ids.js +30 -11
  210. package/dist/utils/toc-selection.d.ts +7 -0
  211. package/dist/utils/toc-selection.js +14 -0
  212. package/dist/validate-local-source-SV44DBQT.js +16 -0
  213. package/dist/validate-publish-os-source-NZJF3TB2.js +14 -0
  214. package/init/seed/minimal/.gitignore +1 -0
  215. package/init/seed/minimal/publish.os/assets/blog/hello-world.svg +13 -0
  216. package/init/seed/minimal/publish.os/assets/favicon.dark.svg +13 -0
  217. package/init/seed/minimal/publish.os/assets/favicon.svg +13 -0
  218. package/init/seed/minimal/publish.os/blog/content/hello-world.mdx +48 -0
  219. package/init/seed/minimal/publish.os/blog/content/series-a.mdx +11 -0
  220. package/init/seed/minimal/publish.os/blog/index.tsx +82 -0
  221. package/init/seed/minimal/publish.os/blog/layout.tsx +13 -0
  222. package/init/seed/minimal/publish.os/blog/page.tsx +76 -0
  223. package/init/seed/minimal/publish.os/components/blog/copy-link.tsx +64 -0
  224. package/init/seed/minimal/publish.os/docs/content/get-started.mdx +6 -11
  225. package/init/seed/minimal/publish.os/docs/content/groups.mdx +6 -7
  226. package/init/seed/minimal/publish.os/docs/content/{theme.mdx → themes.mdx} +14 -12
  227. package/init/seed/minimal/publish.os/publish.os.config.json +7 -7
  228. package/init/seed/minimal/publish.os/theme.css +52 -24
  229. package/init/seed/minimal/publish.os/tsconfig.json +3 -0
  230. package/init/seed/minimal/seed.json +12 -2
  231. package/init/seed/scratch/publish.os/docs/content/get-started.mdx +6 -0
  232. package/init/seed/scratch/publish.os/publish.os.config.json +4 -0
  233. package/init/seed/scratch/seed.json +5 -0
  234. package/package.json +55 -44
  235. package/release/app/phosphor/package.json +5 -5
  236. package/release/app/phosphor/pnpm-lock.yaml.template +553 -377
  237. package/release/app/phosphor/pnpm-workspace.yaml +3 -0
  238. package/release/compiler/package.json +5 -3
  239. package/release/compiler/pnpm-lock.yaml.template +500 -303
  240. package/release/compiler/pnpm-workspace.yaml +3 -0
  241. package/release/release.json +8 -37
  242. package/compiler-assets/nextjs/defaults/group/leaf.tsx +0 -48
  243. package/dist/icons.d.ts +0 -1
  244. package/dist/icons.js +0 -2
  245. package/dist/kernel/components/blocks/design-system-preview.d.ts +0 -61
  246. package/dist/kernel/components/blocks/design-system-preview.js +0 -648
  247. package/dist/kernel/components/blocks/link-playground.d.ts +0 -5
  248. package/dist/kernel/components/blocks/link-playground.js +0 -744
  249. package/dist/kernel/components/blocks/navigation-progress-playground.d.ts +0 -5
  250. package/dist/kernel/components/blocks/navigation-progress-playground.js +0 -629
  251. package/dist/kernel/components/mdx/components/pre.d.ts +0 -6
  252. package/dist/kernel/components/mdx/components/pre.js +0 -18
  253. package/dist/kernel/components/ui/meta-key.d.ts +0 -17
  254. package/dist/kernel/components/ui/meta-key.js +0 -9
  255. package/dist/kernel/components/ui/theme-toggle.d.ts +0 -24
  256. package/dist/kernel/components/ui/theme-toggle.js +0 -58
  257. package/dist/kernel/framework-icons.d.ts +0 -1
  258. package/dist/kernel/framework-icons.js +0 -39
  259. package/dist/link-CYaCRDb6.d.ts +0 -35
  260. package/release/app/lucide/package.json +0 -30
  261. package/release/app/lucide/pnpm-lock.yaml.template +0 -2905
  262. package/release/app/lucide/pnpm-workspace.yaml +0 -11
  263. package/release/app/tabler/package.json +0 -30
  264. package/release/app/tabler/pnpm-lock.yaml.template +0 -2911
  265. package/release/app/tabler/pnpm-workspace.yaml +0 -11
@@ -1,20 +1,17 @@
1
- // src/components/block/navigation/next-prev.tsx
2
- import {
3
- FrameworkChevronLeftIcon as ChevronLeft,
4
- FrameworkChevronRightIcon as ChevronRight
5
- } from "@publish.os/nextjs/kernel/framework-icons";
1
+ // src/components/block/page-navigation/next-prev.tsx
2
+ import { CaretLeftIcon, CaretRightIcon } from "@phosphor-icons/react/ssr";
6
3
  import { cn } from "@publish.os/nextjs/utils/cn";
7
4
  import NextLink from "next/link";
8
5
 
9
- // src/components/block/navigation/page-nodes.ts
6
+ // src/components/block/page-navigation/page-nodes.ts
10
7
  function pageNodes(nodes) {
11
8
  return nodes.flatMap((node) => node.type === "page" ? [node] : node.type === "section" || node.type === "folder" ? pageNodes(node.children) : []);
12
9
  }
13
10
 
14
- // src/components/block/navigation/next-prev.tsx
15
- import { jsx, jsxs } from "react/jsx-runtime";
11
+ // src/components/block/page-navigation/next-prev.tsx
12
+ import { jsx, jsxs } from "@publish.os/nextjs/jsx-runtime";
16
13
  function DirectionIcon({ direction }) {
17
- return /* @__PURE__ */ jsx("span", { className: "shrink-0 text-foreground-3 transition-colors duration-200 group-hover/next-prev:text-foreground-2", children: direction === "previous" ? /* @__PURE__ */ jsx(ChevronLeft, { "aria-hidden": "true", size: 14 }) : /* @__PURE__ */ jsx(ChevronRight, { "aria-hidden": "true", size: 14 }) });
14
+ return /* @__PURE__ */ jsx("span", { className: "shrink-0 text-foreground-3 transition-colors duration-200 group-hover/next-prev:text-foreground-2", children: direction === "previous" ? /* @__PURE__ */ jsx(CaretLeftIcon, { "aria-hidden": "true", size: 14 }) : /* @__PURE__ */ jsx(CaretRightIcon, { "aria-hidden": "true", size: 14 }) });
18
15
  }
19
16
  function NavigationCard({
20
17
  direction,
@@ -25,10 +22,10 @@ function NavigationCard({
25
22
  NextLink,
26
23
  {
27
24
  className: cn(
28
- "group/next-prev grid min-h-24 w-full min-w-0 overflow-hidden rounded-card border border-stroke-3 bg-surface-1 p-px text-left text-foreground-1 no-underline shadow-xs transition-[border-color,box-shadow] duration-200 hover:text-foreground-1 hover:no-underline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus-stroke [&_*]:!no-underline",
25
+ "group/next-prev grid min-h-24 w-full min-w-0 overflow-hidden rounded-card border border-stroke-3 bg-surface-1 p-px text-left text-foreground-1 no-underline shadow-xs transition-[border-color,box-shadow] duration-200 hover:text-foreground-1 hover:no-underline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus-stroke **:no-underline!",
29
26
  isNext && "md:text-right"
30
27
  ),
31
- href: page.path,
28
+ href: page.href ?? page.path,
32
29
  children: /* @__PURE__ */ jsxs(
33
30
  "span",
34
31
  {
@@ -60,19 +57,10 @@ function NavigationCard({
60
57
  }
61
58
  function NextPrev({ className, currentPath, tree }) {
62
59
  let pages = pageNodes(tree), index = pages.findIndex((page) => page.path === currentPath), previous = index > 0 ? pages[index - 1] : null, next = index >= 0 ? pages[index + 1] : null, hasBoth = !!(previous && next);
63
- return !previous && !next ? null : /* @__PURE__ */ jsx("nav", { "aria-label": "Previous and next pages", className, children: /* @__PURE__ */ jsxs(
64
- "div",
65
- {
66
- className: cn(
67
- "grid gap-4 border-t border-stroke-3 pt-6",
68
- hasBoth && "md:grid-cols-2"
69
- ),
70
- children: [
71
- previous ? /* @__PURE__ */ jsx(NavigationCard, { direction: "previous", page: previous }) : null,
72
- next ? /* @__PURE__ */ jsx(NavigationCard, { direction: "next", page: next }) : null
73
- ]
74
- }
75
- ) });
60
+ return !previous && !next ? null : /* @__PURE__ */ jsx("nav", { "aria-label": "Previous and next pages", className, children: /* @__PURE__ */ jsxs("div", { className: cn("grid gap-4 pt-6", hasBoth && "md:grid-cols-2"), children: [
61
+ previous ? /* @__PURE__ */ jsx(NavigationCard, { direction: "previous", page: previous }) : null,
62
+ next ? /* @__PURE__ */ jsx(NavigationCard, { direction: "next", page: next }) : null
63
+ ] }) });
76
64
  }
77
65
  export {
78
66
  NextPrev
@@ -1,5 +1,5 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { T as TreeNode } from '../../../types-DHBm7-j6.js';
2
+ import { T as TreeNode } from '../../../types-CUtrppxt.js';
3
3
 
4
4
  type PageListProps = {
5
5
  tree: TreeNode[];
@@ -1,13 +1,13 @@
1
- // src/components/block/navigation/page-list.tsx
2
- import { Link } from "@publish.os/nextjs/kernel/components/ui/link";
1
+ // src/components/block/page-navigation/page-list.tsx
2
+ import { Link } from "@components/ui/link";
3
3
 
4
- // src/components/block/navigation/page-nodes.ts
4
+ // src/components/block/page-navigation/page-nodes.ts
5
5
  function pageNodes(nodes) {
6
6
  return nodes.flatMap((node) => node.type === "page" ? [node] : node.type === "section" || node.type === "folder" ? pageNodes(node.children) : []);
7
7
  }
8
8
 
9
- // src/components/block/navigation/page-list.tsx
10
- import { jsx } from "react/jsx-runtime";
9
+ // src/components/block/page-navigation/page-list.tsx
10
+ import { jsx } from "@publish.os/nextjs/jsx-runtime";
11
11
  function PageList({ tree, currentPath, className }) {
12
12
  let pages = pageNodes(tree);
13
13
  return pages.length === 0 ? null : /* @__PURE__ */ jsx("nav", { "aria-label": "Pages in this group", className, children: /* @__PURE__ */ jsx("ul", { className: "space-y-2 text-sm", children: pages.map((page) => {
@@ -17,8 +17,9 @@ function PageList({ tree, currentPath, className }) {
17
17
  {
18
18
  active,
19
19
  color: active ? "accent" : "default",
20
- href: page.path,
20
+ href: page.href ?? page.path,
21
21
  size: "sm",
22
+ target: "_self",
22
23
  children: page.title
23
24
  }
24
25
  ) }, `${page.group}:${page.fileID}`);
@@ -1,10 +1,41 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { B as ButtonVariantProps } from '../../../button-CFdx-ohV.js';
3
- import { ReactNode, ReactElement } from 'react';
4
- import 'class-variance-authority/types';
5
- import 'class-variance-authority';
2
+ import * as react from 'react';
3
+ import { ReactNode, ComponentPropsWithRef, ComponentPropsWithoutRef } from 'react';
4
+ import { useRender } from '@base-ui/react/use-render';
5
+ import { B as ButtonProps } from '../../../button-BdCScEKi.js';
6
+ import { Dialog } from '@base-ui/react/dialog';
7
+ import * as class_variance_authority_types from 'class-variance-authority/types';
8
+ import { Input } from '@base-ui/react/input';
9
+ import { VariantProps } from 'class-variance-authority';
6
10
 
7
- type SearchBlockVariant = "desktop" | "mobile";
11
+ type SearchSubResult = {
12
+ excerpt: string;
13
+ plainExcerpt: string;
14
+ title: string;
15
+ url: string;
16
+ };
17
+ type SearchResult = {
18
+ excerpt: string;
19
+ id: string;
20
+ meta: {
21
+ author?: string;
22
+ description?: string;
23
+ group?: string;
24
+ image?: string;
25
+ nodeId?: string;
26
+ path?: string;
27
+ publishedAt?: string;
28
+ section?: string;
29
+ tags?: string;
30
+ title?: string;
31
+ updatedAt?: string;
32
+ };
33
+ plainExcerpt: string;
34
+ score?: number;
35
+ subResults: SearchSubResult[];
36
+ title: string;
37
+ url: string;
38
+ };
8
39
 
9
40
  type SearchProviderProps = {
10
41
  children?: ReactNode;
@@ -12,77 +43,71 @@ type SearchProviderProps = {
12
43
  limit?: number;
13
44
  onOpenChange?: (open: boolean) => void;
14
45
  open?: boolean;
15
- shortcut?: string;
16
- variant?: SearchBlockVariant;
46
+ shortcut?: string | false;
47
+ };
48
+ declare function SearchProvider({ children, defaultOpen, limit, onOpenChange, open: controlledOpen, shortcut, }: SearchProviderProps): react_jsx_runtime.JSX.Element;
49
+
50
+ type DialogPortalProps = ComponentPropsWithRef<typeof Dialog.Portal>;
51
+
52
+ declare const inputVariants: (props?: ({
53
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
54
+ variant?: "ghost" | "default" | null | undefined;
55
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
56
+ type InputProps = ComponentPropsWithoutRef<typeof Input> & VariantProps<typeof inputVariants>;
57
+
58
+ type SearchResultsProps = Omit<ComponentPropsWithRef<"div">, "children"> & {
59
+ children?: (result: SearchResult) => ReactNode;
60
+ emptyText?: string;
61
+ itemClassName?: string;
17
62
  };
63
+ declare function SearchResults({ children, className, emptyText, itemClassName, ...props }: SearchResultsProps): react_jsx_runtime.JSX.Element | null;
64
+ type SearchFooterProps = ComponentPropsWithRef<"div">;
65
+ declare function SearchFooter({ children, className, ...props }: SearchFooterProps): react_jsx_runtime.JSX.Element | null;
18
66
 
19
67
  declare function SearchProgressBar({ className }: {
20
68
  className?: string;
21
69
  }): react_jsx_runtime.JSX.Element;
22
- type SearchRootProps = SearchProviderProps & {
23
- children?: ReactNode;
24
- className?: string;
25
- };
26
- declare function Root({ children, className, ...providerProps }: SearchRootProps): react_jsx_runtime.JSX.Element;
27
- type SearchTriggerProps = {
28
- asChild?: boolean;
29
- children?: ReactElement<{
30
- "aria-controls"?: string;
31
- "aria-expanded"?: boolean;
32
- className?: string;
33
- }>;
34
- className?: string;
70
+
71
+ type SearchTriggerProps = ButtonProps & {
35
72
  icon?: ReactNode;
36
73
  placeholder?: string;
37
- shortcut?: string;
74
+ render?: useRender.RenderProp<{
75
+ open: boolean;
76
+ }>;
38
77
  shortcutClassName?: string;
39
- showIcon?: boolean;
40
- showShortcut?: boolean;
41
- size?: ButtonVariantProps["size"];
42
- variant?: ButtonVariantProps["variant"];
43
78
  };
44
- declare function Trigger({ asChild, children, className, icon, placeholder, shortcut, shortcutClassName, showIcon, showShortcut, size, variant, }: SearchTriggerProps): react_jsx_runtime.JSX.Element;
79
+ declare function Trigger({ children, className, icon, placeholder, ref, render, shortcutClassName, size, variant, ...props }: SearchTriggerProps): react.ReactElement<unknown, string | react.JSXElementConstructor<any>>;
45
80
  type SearchDialogProps = {
46
81
  children?: ReactNode;
47
82
  className?: string;
83
+ container?: DialogPortalProps["container"];
48
84
  description?: string;
85
+ mobileQuery?: string;
49
86
  title?: string;
50
87
  };
51
- declare function DialogContent({ children, className, description, title, }: SearchDialogProps): react_jsx_runtime.JSX.Element;
52
- type SearchInputProps = {
53
- className?: string;
88
+ declare function DialogContent({ children, className, container, description, mobileQuery, title, }: SearchDialogProps): react_jsx_runtime.JSX.Element;
89
+ type SearchInputProps = Omit<InputProps, "value" | "defaultValue" | "onValueChange"> & {
90
+ ref?: ComponentPropsWithRef<"input">["ref"];
54
91
  closeClassName?: string;
55
92
  closeLabel?: ReactNode;
56
- placeholder?: string;
93
+ icon?: ReactNode;
57
94
  rootClassName?: string;
58
95
  showCloseShortcut?: boolean;
59
96
  };
60
- declare function SearchInputField({ className, closeClassName, closeLabel, placeholder, rootClassName, showCloseShortcut, }: SearchInputProps): react_jsx_runtime.JSX.Element;
61
- type SearchResultsProps = {
62
- className?: string;
63
- emptyText?: string;
64
- };
65
- declare function SearchResults({ className, emptyText, }: SearchResultsProps): react_jsx_runtime.JSX.Element;
66
- type SearchCommandProps = {
67
- children?: ReactNode;
68
- className?: string;
69
- };
70
- declare function Command({ children, className }?: SearchCommandProps): react_jsx_runtime.JSX.Element;
71
- type SearchDefaultProps = Omit<SearchRootProps, "variant">;
72
- declare function DefaultDesktop({ children, ...rootProps }: SearchDefaultProps): react_jsx_runtime.JSX.Element;
73
- declare function DefaultMobile({ children, ...rootProps }: SearchDefaultProps): react_jsx_runtime.JSX.Element;
74
- declare const Search: {
75
- Command: typeof Command;
76
- DefaultDesktop: typeof DefaultDesktop;
77
- DefaultMobile: typeof DefaultMobile;
78
- DesktopDialog: typeof DialogContent;
79
- Dialog: typeof DialogContent;
80
- Input: typeof SearchInputField;
81
- MobileDialog: typeof DialogContent;
82
- Progress: typeof SearchProgressBar;
83
- Results: typeof SearchResults;
84
- Root: typeof Root;
85
- Trigger: typeof Trigger;
86
- };
97
+ declare function SearchInputField({ className, closeClassName, closeLabel, icon, onChange, onKeyDown, placeholder, ref, rootClassName, showCloseShortcut, ...props }: SearchInputProps): react_jsx_runtime.JSX.Element;
98
+ type SearchCommandProps = ComponentPropsWithRef<"div">;
99
+ declare function Command({ children, className, ...props }?: SearchCommandProps): react_jsx_runtime.JSX.Element;
100
+ type SearchProps = Omit<SearchProviderProps, "children">;
101
+ declare function Search(props: SearchProps): react_jsx_runtime.JSX.Element;
102
+ declare namespace Search {
103
+ var Root: typeof SearchProvider;
104
+ var Trigger: typeof Trigger;
105
+ var Dialog: typeof DialogContent;
106
+ var Command: typeof Command;
107
+ var Input: typeof SearchInputField;
108
+ var Progress: typeof SearchProgressBar;
109
+ var Results: typeof SearchResults;
110
+ var Footer: typeof SearchFooter;
111
+ }
87
112
 
88
- export { Command, DefaultDesktop, DefaultMobile, DialogContent as Dialog, SearchInputField as Input, SearchProgressBar as Progress, SearchResults as Results, Root, Search, type SearchCommandProps, type SearchDefaultProps, type SearchDialogProps, type SearchInputProps, type SearchResultsProps, type SearchTriggerProps, Trigger };
113
+ export { Command, DialogContent as Dialog, SearchFooter as Footer, SearchInputField as Input, SearchProgressBar as Progress, SearchResults as Results, SearchProvider as Root, Search, type SearchCommandProps, type SearchDialogProps, type SearchFooterProps, type SearchInputProps, type SearchProps, type SearchResultsProps, type SearchTriggerProps, Trigger };