@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.
- package/README.md +3 -9
- package/dist/cache/tags.cjs +3 -0
- package/dist/cache/tags.d.cts +1 -0
- package/dist/cache/tags.d.ts +1 -0
- package/dist/cache/tags.js +3 -0
- package/dist/config.cjs +78 -0
- package/dist/config.d.cts +101 -0
- package/dist/config.d.ts +101 -0
- package/dist/config.js +48 -0
- package/dist/index.cjs +1043 -124
- package/dist/index.d.cts +11 -7
- package/dist/index.d.ts +11 -7
- package/dist/index.js +1031 -111
- package/dist/kernel/components/blocks/AgentActions.cjs +425 -0
- package/dist/kernel/components/blocks/AgentActions.d.cts +52 -0
- package/dist/kernel/components/blocks/AgentActions.d.ts +52 -0
- package/dist/kernel/components/blocks/AgentActions.js +429 -0
- package/dist/kernel/components/blocks/animated-icon-swap.cjs +101 -0
- package/dist/kernel/components/blocks/animated-icon-swap.d.cts +16 -0
- package/dist/kernel/components/blocks/animated-icon-swap.d.ts +16 -0
- package/dist/kernel/components/blocks/animated-icon-swap.js +74 -0
- package/dist/kernel/components/blocks/color-palette.cjs +413 -0
- package/dist/kernel/components/blocks/color-palette.d.cts +7 -0
- package/dist/kernel/components/blocks/color-palette.d.ts +7 -0
- package/dist/kernel/components/blocks/color-palette.js +407 -0
- package/dist/kernel/components/blocks/design-system-preview.cjs +592 -0
- package/dist/kernel/components/blocks/design-system-preview.d.cts +29 -0
- package/dist/kernel/components/blocks/design-system-preview.d.ts +29 -0
- package/dist/kernel/components/blocks/design-system-preview.js +655 -0
- package/dist/kernel/components/blocks/link-playground.cjs +816 -0
- package/dist/kernel/components/blocks/link-playground.d.cts +5 -0
- package/dist/kernel/components/blocks/link-playground.d.ts +5 -0
- package/dist/kernel/components/blocks/link-playground.js +792 -0
- package/dist/kernel/components/blocks/logo-block.cjs +156 -0
- package/dist/kernel/components/blocks/logo-block.d.cts +21 -0
- package/dist/kernel/components/blocks/logo-block.d.ts +21 -0
- package/dist/kernel/components/blocks/logo-block.js +129 -0
- package/dist/{components → kernel/components/blocks}/nav-breadcrumb.cjs +19 -38
- package/dist/kernel/components/blocks/nav-breadcrumb.d.cts +11 -0
- package/dist/kernel/components/blocks/nav-breadcrumb.d.ts +11 -0
- package/dist/{components → kernel/components/blocks}/nav-breadcrumb.js +22 -30
- package/dist/kernel/components/blocks/navbar.cjs +154 -0
- package/dist/kernel/components/blocks/navbar.d.cts +16 -0
- package/dist/kernel/components/blocks/navbar.d.ts +16 -0
- package/dist/kernel/components/blocks/navbar.js +122 -0
- package/dist/kernel/components/blocks/navigation-progress-playground.cjs +735 -0
- package/dist/kernel/components/blocks/navigation-progress-playground.d.cts +5 -0
- package/dist/kernel/components/blocks/navigation-progress-playground.d.ts +5 -0
- package/dist/kernel/components/blocks/navigation-progress-playground.js +722 -0
- package/dist/kernel/components/blocks/navigation-progress.cjs +270 -0
- package/dist/kernel/components/blocks/navigation-progress.d.cts +16 -0
- package/dist/kernel/components/blocks/navigation-progress.d.ts +16 -0
- package/dist/kernel/components/blocks/navigation-progress.js +249 -0
- package/dist/kernel/components/blocks/next-prev.cjs +142 -0
- package/dist/kernel/components/blocks/next-prev.d.cts +11 -0
- package/dist/kernel/components/blocks/next-prev.d.ts +11 -0
- package/dist/kernel/components/blocks/next-prev.js +105 -0
- package/dist/{components → kernel/components/blocks}/page-list.cjs +7 -16
- package/dist/{components → kernel/components/blocks}/page-list.d.cts +1 -1
- package/dist/{components → kernel/components/blocks}/page-list.d.ts +1 -1
- package/dist/{components → kernel/components/blocks}/page-list.js +6 -5
- package/dist/kernel/components/blocks/search.cjs +717 -0
- package/dist/kernel/components/blocks/search.d.cts +77 -0
- package/dist/kernel/components/blocks/search.d.ts +77 -0
- package/dist/kernel/components/blocks/search.js +697 -0
- package/dist/kernel/components/blocks/sidebar-node.cjs +309 -0
- package/dist/kernel/components/blocks/sidebar-node.d.cts +8 -0
- package/dist/kernel/components/blocks/sidebar-node.d.ts +8 -0
- package/dist/kernel/components/blocks/sidebar-node.js +272 -0
- package/dist/kernel/components/blocks/sidebar.cjs +317 -0
- package/dist/kernel/components/blocks/sidebar.d.cts +33 -0
- package/dist/kernel/components/blocks/sidebar.d.ts +33 -0
- package/dist/kernel/components/blocks/sidebar.js +302 -0
- package/dist/kernel/components/blocks/theme-toggle.cjs +31 -0
- package/dist/kernel/components/blocks/theme-toggle.d.cts +6 -0
- package/dist/kernel/components/blocks/theme-toggle.d.ts +6 -0
- package/dist/kernel/components/blocks/theme-toggle.js +7 -0
- package/dist/kernel/components/blocks/toc.cjs +356 -0
- package/dist/kernel/components/blocks/toc.d.cts +10 -0
- package/dist/kernel/components/blocks/toc.d.ts +10 -0
- package/dist/kernel/components/blocks/toc.js +330 -0
- package/dist/kernel/components/mdx/components/blockquote.cjs +66 -0
- package/dist/kernel/components/mdx/components/blockquote.d.cts +6 -0
- package/dist/kernel/components/mdx/components/blockquote.d.ts +6 -0
- package/dist/kernel/components/mdx/components/blockquote.js +39 -0
- package/dist/kernel/components/mdx/components/callout.cjs +137 -0
- package/dist/kernel/components/mdx/components/callout.d.cts +18 -0
- package/dist/kernel/components/mdx/components/callout.d.ts +18 -0
- package/dist/kernel/components/mdx/components/callout.js +109 -0
- package/dist/kernel/components/mdx/components/code-block.cjs +39 -0
- package/dist/kernel/components/mdx/components/code-block.d.cts +9 -0
- package/dist/kernel/components/mdx/components/code-block.d.ts +9 -0
- package/dist/kernel/components/mdx/components/code-block.js +14 -0
- package/dist/kernel/components/mdx/components/figure-caption.cjs +63 -0
- package/dist/kernel/components/mdx/components/figure-caption.d.cts +6 -0
- package/dist/kernel/components/mdx/components/figure-caption.d.ts +6 -0
- package/dist/kernel/components/mdx/components/figure-caption.js +36 -0
- package/dist/kernel/components/mdx/components/figure.cjs +78 -0
- package/dist/kernel/components/mdx/components/figure.d.cts +10 -0
- package/dist/kernel/components/mdx/components/figure.d.ts +10 -0
- package/dist/kernel/components/mdx/components/figure.js +53 -0
- package/dist/kernel/components/mdx/components/footnotes.cjs +66 -0
- package/dist/kernel/components/mdx/components/footnotes.d.cts +6 -0
- package/dist/kernel/components/mdx/components/footnotes.d.ts +6 -0
- package/dist/kernel/components/mdx/components/footnotes.js +39 -0
- package/dist/kernel/components/mdx/components/heading-copy-link.cjs +108 -0
- package/dist/kernel/components/mdx/components/heading-copy-link.d.cts +23 -0
- package/dist/kernel/components/mdx/components/heading-copy-link.d.ts +23 -0
- package/dist/kernel/components/mdx/components/heading-copy-link.js +81 -0
- package/dist/kernel/components/mdx/components/heading.cjs +166 -0
- package/dist/kernel/components/mdx/components/heading.d.cts +8 -0
- package/dist/kernel/components/mdx/components/heading.d.ts +8 -0
- package/dist/kernel/components/mdx/components/heading.js +144 -0
- package/dist/kernel/components/mdx/components/hr.cjs +34 -0
- package/dist/kernel/components/mdx/components/hr.d.cts +9 -0
- package/dist/kernel/components/mdx/components/hr.d.ts +9 -0
- package/dist/kernel/components/mdx/components/hr.js +9 -0
- package/dist/kernel/components/mdx/components/image-zoom.cjs +49 -0
- package/dist/kernel/components/mdx/components/image-zoom.d.cts +10 -0
- package/dist/kernel/components/mdx/components/image-zoom.d.ts +10 -0
- package/dist/kernel/components/mdx/components/image-zoom.js +15 -0
- package/dist/kernel/components/mdx/components/image.cjs +192 -0
- package/dist/kernel/components/mdx/components/image.d.cts +21 -0
- package/dist/kernel/components/mdx/components/image.d.ts +21 -0
- package/dist/kernel/components/mdx/components/image.js +157 -0
- package/dist/kernel/components/mdx/components/inline-code.cjs +66 -0
- package/dist/kernel/components/mdx/components/inline-code.d.cts +6 -0
- package/dist/kernel/components/mdx/components/inline-code.d.ts +6 -0
- package/dist/kernel/components/mdx/components/inline-code.js +39 -0
- package/dist/kernel/components/mdx/components/kbd.cjs +34 -0
- package/dist/kernel/components/mdx/components/kbd.d.cts +10 -0
- package/dist/kernel/components/mdx/components/kbd.d.ts +10 -0
- package/dist/kernel/components/mdx/components/kbd.js +9 -0
- package/dist/{components/providers.cjs → kernel/components/mdx/components/link.cjs} +20 -15
- package/dist/kernel/components/mdx/components/link.d.cts +11 -0
- package/dist/kernel/components/mdx/components/link.d.ts +11 -0
- package/dist/kernel/components/mdx/components/link.js +26 -0
- package/dist/kernel/components/mdx/components/paragraph.cjs +87 -0
- package/dist/kernel/components/mdx/components/paragraph.d.cts +5 -0
- package/dist/kernel/components/mdx/components/paragraph.d.ts +5 -0
- package/dist/kernel/components/mdx/components/paragraph.js +60 -0
- package/dist/kernel/components/mdx/components/pre.cjs +66 -0
- package/dist/kernel/components/mdx/components/pre.d.cts +6 -0
- package/dist/kernel/components/mdx/components/pre.d.ts +6 -0
- package/dist/kernel/components/mdx/components/pre.js +39 -0
- package/dist/kernel/components/mdx/components/strikethrough.cjs +63 -0
- package/dist/kernel/components/mdx/components/strikethrough.d.cts +6 -0
- package/dist/kernel/components/mdx/components/strikethrough.d.ts +6 -0
- package/dist/kernel/components/mdx/components/strikethrough.js +36 -0
- package/dist/kernel/components/mdx/components/table.cjs +59 -0
- package/dist/kernel/components/mdx/components/table.d.cts +10 -0
- package/dist/kernel/components/mdx/components/table.d.ts +10 -0
- package/dist/kernel/components/mdx/components/table.js +36 -0
- package/dist/kernel/components/mdx/components/task-list.cjs +88 -0
- package/dist/kernel/components/mdx/components/task-list.d.cts +8 -0
- package/dist/kernel/components/mdx/components/task-list.d.ts +8 -0
- package/dist/kernel/components/mdx/components/task-list.js +60 -0
- package/dist/kernel/components/mdx/components/video-player.cjs +173 -0
- package/dist/kernel/components/mdx/components/video-player.d.cts +18 -0
- package/dist/kernel/components/mdx/components/video-player.d.ts +18 -0
- package/dist/kernel/components/mdx/components/video-player.js +147 -0
- package/dist/kernel/components/mdx/components/video.cjs +185 -0
- package/dist/kernel/components/mdx/components/video.d.cts +15 -0
- package/dist/kernel/components/mdx/components/video.d.ts +15 -0
- package/dist/kernel/components/mdx/components/video.js +162 -0
- package/dist/kernel/components/mdx/error-boundary.cjs +62 -0
- package/dist/{mdx → kernel/components/mdx}/error-boundary.d.cts +3 -8
- package/dist/{mdx → kernel/components/mdx}/error-boundary.d.ts +3 -8
- package/dist/kernel/components/mdx/error-boundary.js +38 -0
- package/dist/{mdx → kernel/components/mdx}/error-fallback.cjs +8 -8
- package/dist/{mdx → kernel/components/mdx}/error-fallback.js +8 -8
- package/dist/kernel/components/mdx/mdx.cjs +141 -0
- package/dist/kernel/components/mdx/mdx.d.cts +22 -0
- package/dist/kernel/components/mdx/mdx.d.ts +22 -0
- package/dist/kernel/components/mdx/mdx.js +109 -0
- package/dist/kernel/components/mdx/rehype-heading-ids.cjs +113 -0
- package/dist/kernel/components/mdx/rehype-heading-ids.d.cts +10 -0
- package/dist/kernel/components/mdx/rehype-heading-ids.d.ts +10 -0
- package/dist/kernel/components/mdx/rehype-heading-ids.js +86 -0
- package/dist/kernel/components/mdx/types.cjs +18 -0
- package/dist/kernel/components/mdx/types.d.cts +18 -0
- package/dist/kernel/components/mdx/types.d.ts +18 -0
- package/dist/kernel/components/mdx/types.js +0 -0
- package/dist/kernel/components/ui/accordion.cjs +104 -0
- package/dist/kernel/components/ui/accordion.d.cts +16 -0
- package/dist/kernel/components/ui/accordion.d.ts +16 -0
- package/dist/kernel/components/ui/accordion.js +76 -0
- package/dist/kernel/components/ui/badge.cjs +75 -0
- package/dist/kernel/components/ui/badge.d.cts +12 -0
- package/dist/kernel/components/ui/badge.d.ts +12 -0
- package/dist/kernel/components/ui/badge.js +47 -0
- package/dist/kernel/components/ui/breadcrumb-trail.cjs +238 -0
- package/dist/kernel/components/ui/breadcrumb-trail.d.cts +13 -0
- package/dist/kernel/components/ui/breadcrumb-trail.d.ts +13 -0
- package/dist/kernel/components/ui/breadcrumb-trail.js +225 -0
- package/dist/kernel/components/ui/breadcrumb.cjs +399 -0
- package/dist/kernel/components/ui/breadcrumb.d.cts +52 -0
- package/dist/kernel/components/ui/breadcrumb.d.ts +52 -0
- package/dist/kernel/components/ui/breadcrumb.js +365 -0
- package/dist/kernel/components/ui/button-group.cjs +144 -0
- package/dist/kernel/components/ui/button-group.d.cts +19 -0
- package/dist/kernel/components/ui/button-group.d.ts +19 -0
- package/dist/kernel/components/ui/button-group.js +116 -0
- package/dist/kernel/components/ui/button.cjs +147 -0
- package/dist/kernel/components/ui/button.d.cts +23 -0
- package/dist/kernel/components/ui/button.d.ts +23 -0
- package/dist/kernel/components/ui/button.js +121 -0
- package/dist/kernel/components/ui/card.cjs +133 -0
- package/dist/kernel/components/ui/card.d.cts +17 -0
- package/dist/kernel/components/ui/card.d.ts +17 -0
- package/dist/kernel/components/ui/card.js +101 -0
- package/dist/kernel/components/ui/dialog.cjs +149 -0
- package/dist/kernel/components/ui/dialog.d.cts +22 -0
- package/dist/kernel/components/ui/dialog.d.ts +22 -0
- package/dist/kernel/components/ui/dialog.js +118 -0
- package/dist/kernel/components/ui/drawer.cjs +163 -0
- package/dist/kernel/components/ui/drawer.d.cts +24 -0
- package/dist/kernel/components/ui/drawer.d.ts +24 -0
- package/dist/kernel/components/ui/drawer.js +131 -0
- package/dist/kernel/components/ui/input.cjs +96 -0
- package/dist/kernel/components/ui/input.d.cts +18 -0
- package/dist/kernel/components/ui/input.d.ts +18 -0
- package/dist/kernel/components/ui/input.js +70 -0
- package/dist/kernel/components/ui/kbd.cjs +105 -0
- package/dist/kernel/components/ui/kbd.d.cts +13 -0
- package/dist/kernel/components/ui/kbd.d.ts +13 -0
- package/dist/kernel/components/ui/kbd.js +77 -0
- package/dist/kernel/components/ui/link.cjs +253 -0
- package/dist/kernel/components/ui/link.d.cts +31 -0
- package/dist/kernel/components/ui/link.d.ts +31 -0
- package/dist/kernel/components/ui/link.js +217 -0
- package/dist/kernel/components/ui/menu.cjs +301 -0
- package/dist/kernel/components/ui/menu.d.cts +70 -0
- package/dist/kernel/components/ui/menu.d.ts +70 -0
- package/dist/kernel/components/ui/menu.js +256 -0
- package/dist/kernel/components/ui/meta-key.cjs +34 -0
- package/dist/kernel/components/ui/meta-key.d.cts +12 -0
- package/dist/kernel/components/ui/meta-key.d.ts +12 -0
- package/dist/kernel/components/ui/meta-key.js +9 -0
- package/dist/kernel/components/ui/navigation-menu.cjs +253 -0
- package/dist/kernel/components/ui/navigation-menu.d.cts +47 -0
- package/dist/kernel/components/ui/navigation-menu.d.ts +47 -0
- package/dist/kernel/components/ui/navigation-menu.js +216 -0
- package/dist/kernel/components/ui/popover.cjs +168 -0
- package/dist/kernel/components/ui/popover.d.cts +24 -0
- package/dist/kernel/components/ui/popover.d.ts +24 -0
- package/dist/kernel/components/ui/popover.js +136 -0
- package/dist/kernel/components/ui/progress.cjs +112 -0
- package/dist/kernel/components/ui/progress.d.cts +16 -0
- package/dist/kernel/components/ui/progress.d.ts +16 -0
- package/dist/kernel/components/ui/progress.js +84 -0
- package/dist/kernel/components/ui/scroll-area.cjs +413 -0
- package/dist/kernel/components/ui/scroll-area.d.cts +58 -0
- package/dist/kernel/components/ui/scroll-area.d.ts +58 -0
- package/dist/kernel/components/ui/scroll-area.js +390 -0
- package/dist/kernel/components/ui/select.cjs +244 -0
- package/dist/kernel/components/ui/select.d.cts +40 -0
- package/dist/kernel/components/ui/select.d.ts +40 -0
- package/dist/kernel/components/ui/select.js +205 -0
- package/dist/kernel/components/ui/separator.cjs +73 -0
- package/dist/kernel/components/ui/separator.d.cts +8 -0
- package/dist/kernel/components/ui/separator.d.ts +8 -0
- package/dist/kernel/components/ui/separator.js +48 -0
- package/dist/kernel/components/ui/table.cjs +131 -0
- package/dist/kernel/components/ui/table.d.cts +11 -0
- package/dist/kernel/components/ui/table.d.ts +11 -0
- package/dist/kernel/components/ui/table.js +99 -0
- package/dist/kernel/components/ui/tabs.cjs +450 -0
- package/dist/kernel/components/ui/tabs.d.cts +82 -0
- package/dist/kernel/components/ui/tabs.d.ts +82 -0
- package/dist/kernel/components/ui/tabs.js +409 -0
- package/dist/kernel/components/ui/text.cjs +184 -0
- package/dist/kernel/components/ui/text.d.cts +17 -0
- package/dist/kernel/components/ui/text.d.ts +17 -0
- package/dist/kernel/components/ui/text.js +156 -0
- package/dist/kernel/components/ui/theme-toggle.cjs +108 -0
- package/dist/kernel/components/ui/theme-toggle.d.cts +10 -0
- package/dist/kernel/components/ui/theme-toggle.d.ts +10 -0
- package/dist/kernel/components/ui/theme-toggle.js +84 -0
- package/dist/kernel/components/ui/toast.cjs +154 -0
- package/dist/kernel/components/ui/toast.d.cts +26 -0
- package/dist/kernel/components/ui/toast.d.ts +26 -0
- package/dist/kernel/components/ui/toast.js +120 -0
- package/dist/kernel/components/ui/tooltip.cjs +127 -0
- package/dist/kernel/components/ui/tooltip.d.cts +20 -0
- package/dist/kernel/components/ui/tooltip.d.ts +20 -0
- package/dist/kernel/components/ui/tooltip.js +97 -0
- package/dist/kernel/defaults.registry.cjs +541 -0
- package/dist/kernel/defaults.registry.d.cts +469 -0
- package/dist/kernel/defaults.registry.d.ts +469 -0
- package/dist/kernel/defaults.registry.js +516 -0
- package/dist/kernel/routes/agent/markdown.cjs +202 -0
- package/dist/kernel/routes/agent/markdown.d.cts +58 -0
- package/dist/kernel/routes/agent/markdown.d.ts +58 -0
- package/dist/kernel/routes/agent/markdown.js +174 -0
- package/dist/{layouts → kernel/routes/layouts}/group.cjs +39 -15
- package/dist/kernel/routes/layouts/group.d.cts +20 -0
- package/dist/kernel/routes/layouts/group.d.ts +20 -0
- package/dist/{layouts → kernel/routes/layouts}/group.js +39 -15
- package/dist/kernel/routes/metadata/feed.cjs +293 -0
- package/dist/kernel/routes/metadata/feed.d.cts +20 -0
- package/dist/kernel/routes/metadata/feed.d.ts +20 -0
- package/dist/kernel/routes/metadata/feed.js +265 -0
- package/dist/kernel/routes/metadata/llms.cjs +239 -0
- package/dist/kernel/routes/metadata/llms.d.cts +26 -0
- package/dist/kernel/routes/metadata/llms.d.ts +26 -0
- package/dist/kernel/routes/metadata/llms.js +211 -0
- package/dist/kernel/routes/metadata/og-image.cjs +630 -0
- package/dist/kernel/routes/metadata/og-image.d.cts +62 -0
- package/dist/kernel/routes/metadata/og-image.d.ts +62 -0
- package/dist/kernel/routes/metadata/og-image.js +604 -0
- package/dist/{routes → kernel/routes/metadata}/robots.cjs +59 -5
- package/dist/{routes → kernel/routes/metadata}/robots.d.cts +2 -1
- package/dist/{routes → kernel/routes/metadata}/robots.d.ts +2 -1
- package/dist/kernel/routes/metadata/robots.js +123 -0
- package/dist/kernel/routes/metadata/sitemap.cjs +192 -0
- package/dist/kernel/routes/metadata/sitemap.d.cts +8 -0
- package/dist/kernel/routes/metadata/sitemap.d.ts +8 -0
- package/dist/kernel/routes/metadata/sitemap.js +166 -0
- package/dist/{pages → kernel/routes/pages}/group.cjs +107 -6
- package/dist/{pages → kernel/routes/pages}/group.d.cts +4 -2
- package/dist/{pages → kernel/routes/pages}/group.d.ts +4 -2
- package/dist/{pages → kernel/routes/pages}/group.js +107 -6
- package/dist/kernel/routes/pages/leaf.cjs +421 -0
- package/dist/kernel/routes/pages/leaf.d.cts +36 -0
- package/dist/kernel/routes/pages/leaf.d.ts +36 -0
- package/dist/kernel/routes/pages/leaf.js +397 -0
- package/dist/{pages → kernel/routes/pages}/root.cjs +108 -6
- package/dist/{pages → kernel/routes/pages}/root.d.cts +4 -2
- package/dist/{pages → kernel/routes/pages}/root.d.ts +4 -2
- package/dist/kernel/routes/pages/root.js +203 -0
- package/dist/keyboard-shortcuts.cjs +345 -0
- package/dist/keyboard-shortcuts.d.cts +34 -0
- package/dist/keyboard-shortcuts.d.ts +34 -0
- package/dist/keyboard-shortcuts.js +326 -0
- package/dist/resolvers/manifest-resolver.cjs +7 -3
- package/dist/resolvers/manifest-resolver.d.cts +2 -2
- package/dist/resolvers/manifest-resolver.d.ts +2 -2
- package/dist/resolvers/manifest-resolver.js +7 -3
- package/dist/search.cjs +411 -0
- package/dist/search.d.cts +20 -0
- package/dist/search.d.ts +20 -0
- package/dist/search.js +393 -0
- package/dist/types.cjs +12 -0
- package/dist/types.d.cts +132 -7
- package/dist/types.d.ts +132 -7
- package/dist/types.js +5 -0
- package/dist/utils/heading-ids.cjs +119 -0
- package/dist/utils/heading-ids.d.cts +15 -0
- package/dist/utils/heading-ids.d.ts +15 -0
- package/dist/utils/heading-ids.js +90 -0
- package/package.json +59 -38
- package/release/package.json +23 -0
- package/release/pnpm-lock.yaml +1192 -0
- package/release/release.json +39 -0
- package/dist/components/color-palette.cjs +0 -408
- package/dist/components/color-palette.d.cts +0 -5
- package/dist/components/color-palette.d.ts +0 -5
- package/dist/components/color-palette.js +0 -388
- package/dist/components/nav-breadcrumb.d.cts +0 -9
- package/dist/components/nav-breadcrumb.d.ts +0 -9
- package/dist/components/providers.d.cts +0 -8
- package/dist/components/providers.d.ts +0 -8
- package/dist/components/providers.js +0 -20
- package/dist/components/site-header.cjs +0 -302
- package/dist/components/site-header.d.cts +0 -12
- package/dist/components/site-header.d.ts +0 -12
- package/dist/components/site-header.js +0 -268
- package/dist/components/theme-toggle.cjs +0 -147
- package/dist/components/theme-toggle.d.cts +0 -5
- package/dist/components/theme-toggle.d.ts +0 -5
- package/dist/components/theme-toggle.js +0 -123
- package/dist/layouts/group.d.cts +0 -15
- package/dist/layouts/group.d.ts +0 -15
- package/dist/mdx/error-boundary.cjs +0 -94
- package/dist/mdx/error-boundary.js +0 -70
- package/dist/mdx/mdx.cjs +0 -182
- package/dist/mdx/mdx.d.cts +0 -10
- package/dist/mdx/mdx.d.ts +0 -10
- package/dist/mdx/mdx.js +0 -147
- package/dist/pages/leaf.cjs +0 -203
- package/dist/pages/leaf.d.cts +0 -23
- package/dist/pages/leaf.d.ts +0 -23
- package/dist/pages/leaf.js +0 -176
- package/dist/pages/root.js +0 -101
- package/dist/routes/llms.cjs +0 -101
- package/dist/routes/llms.d.cts +0 -7
- package/dist/routes/llms.d.ts +0 -7
- package/dist/routes/llms.js +0 -76
- package/dist/routes/robots.js +0 -69
- package/dist/routes/sitemap.cjs +0 -108
- package/dist/routes/sitemap.d.cts +0 -5
- package/dist/routes/sitemap.d.ts +0 -5
- package/dist/routes/sitemap.js +0 -83
- /package/dist/{mdx → kernel/components/mdx}/error-fallback.d.cts +0 -0
- /package/dist/{mdx → kernel/components/mdx}/error-fallback.d.ts +0 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
|
|
21
|
+
// src/kernel/components/mdx/components/heading-copy-link.tsx
|
|
22
|
+
var heading_copy_link_exports = {};
|
|
23
|
+
__export(heading_copy_link_exports, {
|
|
24
|
+
HeadingCopyLink: () => HeadingCopyLink,
|
|
25
|
+
headingCopyUrl: () => headingCopyUrl
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(heading_copy_link_exports);
|
|
28
|
+
|
|
29
|
+
// src/utils/cn.ts
|
|
30
|
+
var import_clsx = require("clsx");
|
|
31
|
+
var import_tailwind_merge = require("tailwind-merge");
|
|
32
|
+
var twMerge = (0, import_tailwind_merge.extendTailwindMerge)({
|
|
33
|
+
extend: {
|
|
34
|
+
classGroups: {
|
|
35
|
+
z: [
|
|
36
|
+
"z-content",
|
|
37
|
+
"z-nav",
|
|
38
|
+
"z-overlay",
|
|
39
|
+
"z-modal",
|
|
40
|
+
"z-search",
|
|
41
|
+
"z-toast",
|
|
42
|
+
"z-progress"
|
|
43
|
+
]
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
function cn(...inputs) {
|
|
48
|
+
return twMerge((0, import_clsx.clsx)(inputs));
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// src/kernel/components/mdx/components/heading-copy-link.tsx
|
|
52
|
+
var import_lucide_react = require("lucide-react");
|
|
53
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
54
|
+
function headingCopyUrl({ href, id }) {
|
|
55
|
+
const url = new URL(href);
|
|
56
|
+
url.hash = id;
|
|
57
|
+
return url.toString();
|
|
58
|
+
}
|
|
59
|
+
function HeadingCopyLink({
|
|
60
|
+
className,
|
|
61
|
+
id,
|
|
62
|
+
children,
|
|
63
|
+
iconOnly = false
|
|
64
|
+
}) {
|
|
65
|
+
const handleClick = (e) => {
|
|
66
|
+
if (e.button !== 0 || e.metaKey || e.ctrlKey || e.shiftKey || e.altKey) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
const url = headingCopyUrl({ href: window.location.href, id });
|
|
70
|
+
navigator.clipboard?.writeText(url).catch(() => {
|
|
71
|
+
});
|
|
72
|
+
window.setTimeout(() => {
|
|
73
|
+
document.getElementById(id)?.scrollIntoView({ block: "start" });
|
|
74
|
+
}, 0);
|
|
75
|
+
};
|
|
76
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
77
|
+
"a",
|
|
78
|
+
{
|
|
79
|
+
"aria-label": iconOnly ? `Copy link to ${id}` : void 0,
|
|
80
|
+
href: `#${id}`,
|
|
81
|
+
onClick: handleClick,
|
|
82
|
+
className: cn(
|
|
83
|
+
"not-markdown-prose group/heading-link rounded-button border-0 p-0 text-inherit no-underline decoration-transparent transition-colors duration-150 [--link-underline-offset:-0.08em] [--link-underline-thickness:1px] hover:text-inherit hover:no-underline active:text-inherit active:no-underline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus-ring",
|
|
84
|
+
iconOnly ? "inline-flex items-center align-[-0.05em]" : "inline",
|
|
85
|
+
className
|
|
86
|
+
),
|
|
87
|
+
children: [
|
|
88
|
+
children ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "relative inline no-underline after:pointer-events-none after:absolute after:bottom-[var(--link-underline-offset)] after:left-0 after:h-[var(--link-underline-thickness)] after:w-full after:rounded-inline-code after:bg-transparent after:transition-colors after:duration-100 after:ease-out after:content-[''] group-hover/heading-link:after:bg-[color-mix(in_oklch,currentColor_38%,transparent)] group-focus-visible/heading-link:after:bg-[color-mix(in_oklch,currentColor_38%,transparent)]", children }) : null,
|
|
89
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
90
|
+
"span",
|
|
91
|
+
{
|
|
92
|
+
"aria-hidden": "true",
|
|
93
|
+
className: cn(
|
|
94
|
+
"inline-flex h-[1em] items-center align-[-0.06em] text-foreground-3 transition-[color,opacity] duration-150 group-hover/heading-link:text-foreground-2 group-focus-visible/heading-link:text-foreground-2",
|
|
95
|
+
iconOnly ? "opacity-100" : "ml-1.5 opacity-0 group-hover/heading-link:opacity-100 group-focus-visible/heading-link:opacity-100"
|
|
96
|
+
),
|
|
97
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Link, { "aria-hidden": "true", className: "block size-[0.8em] shrink-0" })
|
|
98
|
+
}
|
|
99
|
+
)
|
|
100
|
+
]
|
|
101
|
+
}
|
|
102
|
+
);
|
|
103
|
+
}
|
|
104
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
105
|
+
0 && (module.exports = {
|
|
106
|
+
HeadingCopyLink,
|
|
107
|
+
headingCopyUrl
|
|
108
|
+
});
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
declare function headingCopyUrl({ href, id }: {
|
|
5
|
+
href: string;
|
|
6
|
+
id: string;
|
|
7
|
+
}): string;
|
|
8
|
+
/**
|
|
9
|
+
* Tiny client island that wraps a heading and provides click-to-copy.
|
|
10
|
+
*
|
|
11
|
+
* - Clicking the heading copies the URL with hash to clipboard.
|
|
12
|
+
* - A link icon appears on hover / focus-visible.
|
|
13
|
+
* - No toast — silent copy.
|
|
14
|
+
* - Lets native anchor navigation happen on middle-click or modifier keys.
|
|
15
|
+
*/
|
|
16
|
+
declare function HeadingCopyLink({ className, id, children, iconOnly, }: {
|
|
17
|
+
className?: string;
|
|
18
|
+
id: string;
|
|
19
|
+
children?: ReactNode;
|
|
20
|
+
iconOnly?: boolean;
|
|
21
|
+
}): react_jsx_runtime.JSX.Element;
|
|
22
|
+
|
|
23
|
+
export { HeadingCopyLink, headingCopyUrl };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
declare function headingCopyUrl({ href, id }: {
|
|
5
|
+
href: string;
|
|
6
|
+
id: string;
|
|
7
|
+
}): string;
|
|
8
|
+
/**
|
|
9
|
+
* Tiny client island that wraps a heading and provides click-to-copy.
|
|
10
|
+
*
|
|
11
|
+
* - Clicking the heading copies the URL with hash to clipboard.
|
|
12
|
+
* - A link icon appears on hover / focus-visible.
|
|
13
|
+
* - No toast — silent copy.
|
|
14
|
+
* - Lets native anchor navigation happen on middle-click or modifier keys.
|
|
15
|
+
*/
|
|
16
|
+
declare function HeadingCopyLink({ className, id, children, iconOnly, }: {
|
|
17
|
+
className?: string;
|
|
18
|
+
id: string;
|
|
19
|
+
children?: ReactNode;
|
|
20
|
+
iconOnly?: boolean;
|
|
21
|
+
}): react_jsx_runtime.JSX.Element;
|
|
22
|
+
|
|
23
|
+
export { HeadingCopyLink, headingCopyUrl };
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/utils/cn.ts
|
|
4
|
+
import { clsx } from "clsx";
|
|
5
|
+
import { extendTailwindMerge } from "tailwind-merge";
|
|
6
|
+
var twMerge = extendTailwindMerge({
|
|
7
|
+
extend: {
|
|
8
|
+
classGroups: {
|
|
9
|
+
z: [
|
|
10
|
+
"z-content",
|
|
11
|
+
"z-nav",
|
|
12
|
+
"z-overlay",
|
|
13
|
+
"z-modal",
|
|
14
|
+
"z-search",
|
|
15
|
+
"z-toast",
|
|
16
|
+
"z-progress"
|
|
17
|
+
]
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
function cn(...inputs) {
|
|
22
|
+
return twMerge(clsx(inputs));
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// src/kernel/components/mdx/components/heading-copy-link.tsx
|
|
26
|
+
import { Link as LinkIcon } from "lucide-react";
|
|
27
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
28
|
+
function headingCopyUrl({ href, id }) {
|
|
29
|
+
const url = new URL(href);
|
|
30
|
+
url.hash = id;
|
|
31
|
+
return url.toString();
|
|
32
|
+
}
|
|
33
|
+
function HeadingCopyLink({
|
|
34
|
+
className,
|
|
35
|
+
id,
|
|
36
|
+
children,
|
|
37
|
+
iconOnly = false
|
|
38
|
+
}) {
|
|
39
|
+
const handleClick = (e) => {
|
|
40
|
+
if (e.button !== 0 || e.metaKey || e.ctrlKey || e.shiftKey || e.altKey) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const url = headingCopyUrl({ href: window.location.href, id });
|
|
44
|
+
navigator.clipboard?.writeText(url).catch(() => {
|
|
45
|
+
});
|
|
46
|
+
window.setTimeout(() => {
|
|
47
|
+
document.getElementById(id)?.scrollIntoView({ block: "start" });
|
|
48
|
+
}, 0);
|
|
49
|
+
};
|
|
50
|
+
return /* @__PURE__ */ jsxs(
|
|
51
|
+
"a",
|
|
52
|
+
{
|
|
53
|
+
"aria-label": iconOnly ? `Copy link to ${id}` : void 0,
|
|
54
|
+
href: `#${id}`,
|
|
55
|
+
onClick: handleClick,
|
|
56
|
+
className: cn(
|
|
57
|
+
"not-markdown-prose group/heading-link rounded-button border-0 p-0 text-inherit no-underline decoration-transparent transition-colors duration-150 [--link-underline-offset:-0.08em] [--link-underline-thickness:1px] hover:text-inherit hover:no-underline active:text-inherit active:no-underline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus-ring",
|
|
58
|
+
iconOnly ? "inline-flex items-center align-[-0.05em]" : "inline",
|
|
59
|
+
className
|
|
60
|
+
),
|
|
61
|
+
children: [
|
|
62
|
+
children ? /* @__PURE__ */ jsx("span", { className: "relative inline no-underline after:pointer-events-none after:absolute after:bottom-[var(--link-underline-offset)] after:left-0 after:h-[var(--link-underline-thickness)] after:w-full after:rounded-inline-code after:bg-transparent after:transition-colors after:duration-100 after:ease-out after:content-[''] group-hover/heading-link:after:bg-[color-mix(in_oklch,currentColor_38%,transparent)] group-focus-visible/heading-link:after:bg-[color-mix(in_oklch,currentColor_38%,transparent)]", children }) : null,
|
|
63
|
+
/* @__PURE__ */ jsx(
|
|
64
|
+
"span",
|
|
65
|
+
{
|
|
66
|
+
"aria-hidden": "true",
|
|
67
|
+
className: cn(
|
|
68
|
+
"inline-flex h-[1em] items-center align-[-0.06em] text-foreground-3 transition-[color,opacity] duration-150 group-hover/heading-link:text-foreground-2 group-focus-visible/heading-link:text-foreground-2",
|
|
69
|
+
iconOnly ? "opacity-100" : "ml-1.5 opacity-0 group-hover/heading-link:opacity-100 group-focus-visible/heading-link:opacity-100"
|
|
70
|
+
),
|
|
71
|
+
children: /* @__PURE__ */ jsx(LinkIcon, { "aria-hidden": "true", className: "block size-[0.8em] shrink-0" })
|
|
72
|
+
}
|
|
73
|
+
)
|
|
74
|
+
]
|
|
75
|
+
}
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
export {
|
|
79
|
+
HeadingCopyLink,
|
|
80
|
+
headingCopyUrl
|
|
81
|
+
};
|
|
@@ -0,0 +1,166 @@
|
|
|
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/kernel/components/mdx/components/heading.tsx
|
|
21
|
+
var heading_exports = {};
|
|
22
|
+
__export(heading_exports, {
|
|
23
|
+
Heading: () => Heading
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(heading_exports);
|
|
26
|
+
var import_heading_copy_link = require("./heading-copy-link.js");
|
|
27
|
+
|
|
28
|
+
// src/utils/cn.ts
|
|
29
|
+
var import_clsx = require("clsx");
|
|
30
|
+
var import_tailwind_merge = require("tailwind-merge");
|
|
31
|
+
var twMerge = (0, import_tailwind_merge.extendTailwindMerge)({
|
|
32
|
+
extend: {
|
|
33
|
+
classGroups: {
|
|
34
|
+
z: [
|
|
35
|
+
"z-content",
|
|
36
|
+
"z-nav",
|
|
37
|
+
"z-overlay",
|
|
38
|
+
"z-modal",
|
|
39
|
+
"z-search",
|
|
40
|
+
"z-toast",
|
|
41
|
+
"z-progress"
|
|
42
|
+
]
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
function cn(...inputs) {
|
|
47
|
+
return twMerge((0, import_clsx.clsx)(inputs));
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// src/utils/heading-ids.ts
|
|
51
|
+
var import_react = require("react");
|
|
52
|
+
var SELF_CLOSING_TAG_RE = new RegExp("<[^>]+/>", "g");
|
|
53
|
+
var PAIRED_TAG_RE = /<\/?\w[^>]*>/g;
|
|
54
|
+
var MDX_BOLD_RE = /\*\*(.*?)\*\*/g;
|
|
55
|
+
var MDX_ITALIC_RE = /\*(.*?)\*/g;
|
|
56
|
+
var MDX_UNDERLINE_BOLD_RE = /__(.*?)__/g;
|
|
57
|
+
var MDX_UNDERLINE_ITALIC_RE = /_(.*?)_/g;
|
|
58
|
+
var MDX_STRIKETHROUGH_RE = /~~(.*?)~~/g;
|
|
59
|
+
var MDX_INLINE_CODE_RE = /`(.*?)`/g;
|
|
60
|
+
var MDX_LINK_RE = /\[(.*?)\]\(.*?\)/g;
|
|
61
|
+
var NON_ALPHANUMERIC_RE = /[^a-z0-9]+/g;
|
|
62
|
+
var LEADING_TRAILING_HYPHEN_RE = /^-+|-+$/g;
|
|
63
|
+
var LEADING_DIGIT_RE = /^(\d)/;
|
|
64
|
+
function extractText(node) {
|
|
65
|
+
if (typeof node === "string") return node;
|
|
66
|
+
if (typeof node === "number") return String(node);
|
|
67
|
+
if (node == null || typeof node === "boolean") return "";
|
|
68
|
+
if (Array.isArray(node)) {
|
|
69
|
+
return node.map(extractText).join("");
|
|
70
|
+
}
|
|
71
|
+
if ((0, import_react.isValidElement)(node)) {
|
|
72
|
+
const element = node;
|
|
73
|
+
return element.props.children === void 0 ? "" : extractText(element.props.children);
|
|
74
|
+
}
|
|
75
|
+
return "";
|
|
76
|
+
}
|
|
77
|
+
function cleanHeadingText(input) {
|
|
78
|
+
const text = typeof input === "string" ? input : extractText(input);
|
|
79
|
+
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();
|
|
80
|
+
}
|
|
81
|
+
function slugify(text) {
|
|
82
|
+
return text.toLowerCase().replace(NON_ALPHANUMERIC_RE, "-").replace(LEADING_TRAILING_HYPHEN_RE, "").replace(LEADING_DIGIT_RE, "id-$1");
|
|
83
|
+
}
|
|
84
|
+
function headingToHTMLId(input) {
|
|
85
|
+
try {
|
|
86
|
+
const id = slugify(cleanHeadingText(input));
|
|
87
|
+
return id || "empty-heading";
|
|
88
|
+
} catch {
|
|
89
|
+
return "empty-heading";
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// src/kernel/components/mdx/components/heading.tsx
|
|
94
|
+
var import_react2 = require("react");
|
|
95
|
+
var import_jsx_runtime = (
|
|
96
|
+
// @ts-expect-error — polymorphic `as` prop with spread is safe at runtime
|
|
97
|
+
require("react/jsx-runtime")
|
|
98
|
+
);
|
|
99
|
+
function isBrElement(node) {
|
|
100
|
+
return (0, import_react2.isValidElement)(node) && node.type === "br";
|
|
101
|
+
}
|
|
102
|
+
function cleanHeadingChildren(children) {
|
|
103
|
+
const childArray = import_react2.Children.toArray(children).filter(
|
|
104
|
+
(child) => !isBrElement(child)
|
|
105
|
+
);
|
|
106
|
+
while (childArray.length > 0 && typeof childArray[0] === "string" && childArray[0].trim() === "") {
|
|
107
|
+
childArray.shift();
|
|
108
|
+
}
|
|
109
|
+
while (childArray.length > 0 && typeof childArray[childArray.length - 1] === "string" && childArray[childArray.length - 1].trim() === "") {
|
|
110
|
+
childArray.pop();
|
|
111
|
+
}
|
|
112
|
+
if (childArray.length === 0) return null;
|
|
113
|
+
if (childArray.length === 1) return childArray[0];
|
|
114
|
+
return childArray;
|
|
115
|
+
}
|
|
116
|
+
function hasNestedLink(children) {
|
|
117
|
+
for (const child of import_react2.Children.toArray(children)) {
|
|
118
|
+
if (!(0, import_react2.isValidElement)(child)) continue;
|
|
119
|
+
if (typeof child.props === "object" && child.props !== null && "href" in child.props) {
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
if (typeof child.props === "object" && child.props !== null && "children" in child.props && hasNestedLink(child.props.children)) {
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return false;
|
|
127
|
+
}
|
|
128
|
+
function Heading({
|
|
129
|
+
as: Tag,
|
|
130
|
+
children,
|
|
131
|
+
className,
|
|
132
|
+
id,
|
|
133
|
+
...props
|
|
134
|
+
}) {
|
|
135
|
+
const cleaned = cleanHeadingChildren(children);
|
|
136
|
+
const headingId = id ?? headingToHTMLId(cleaned);
|
|
137
|
+
const isEmpty = !headingId || headingId === "empty-heading";
|
|
138
|
+
const classes = cn("scroll-mt-20", className);
|
|
139
|
+
if (isEmpty) {
|
|
140
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Tag, { className, ...props, children: cleaned });
|
|
141
|
+
}
|
|
142
|
+
if (hasNestedLink(cleaned)) {
|
|
143
|
+
return (
|
|
144
|
+
// @ts-expect-error — polymorphic `as` prop with spread is safe at runtime
|
|
145
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Tag, { id: headingId, className: cn("group/heading", classes), ...props, children: [
|
|
146
|
+
cleaned,
|
|
147
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
148
|
+
import_heading_copy_link.HeadingCopyLink,
|
|
149
|
+
{
|
|
150
|
+
id: headingId,
|
|
151
|
+
iconOnly: true,
|
|
152
|
+
className: "ml-1.5 opacity-0 group-hover/heading:opacity-100 focus-visible:opacity-100 hover:opacity-100"
|
|
153
|
+
}
|
|
154
|
+
)
|
|
155
|
+
] })
|
|
156
|
+
);
|
|
157
|
+
}
|
|
158
|
+
return (
|
|
159
|
+
// @ts-expect-error — polymorphic `as` prop with spread is safe at runtime
|
|
160
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Tag, { id: headingId, className: classes, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_heading_copy_link.HeadingCopyLink, { id: headingId, children: cleaned }) })
|
|
161
|
+
);
|
|
162
|
+
}
|
|
163
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
164
|
+
0 && (module.exports = {
|
|
165
|
+
Heading
|
|
166
|
+
});
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { HeadingElement, HeadingProps } from '../types.cjs';
|
|
3
|
+
import 'mdx/types.js';
|
|
4
|
+
import 'react';
|
|
5
|
+
|
|
6
|
+
declare function Heading<T extends HeadingElement>({ as: Tag, children, className, id, ...props }: HeadingProps<T>): react_jsx_runtime.JSX.Element;
|
|
7
|
+
|
|
8
|
+
export { Heading };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { HeadingElement, HeadingProps } from '../types.js';
|
|
3
|
+
import 'mdx/types.js';
|
|
4
|
+
import 'react';
|
|
5
|
+
|
|
6
|
+
declare function Heading<T extends HeadingElement>({ as: Tag, children, className, id, ...props }: HeadingProps<T>): react_jsx_runtime.JSX.Element;
|
|
7
|
+
|
|
8
|
+
export { Heading };
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
// src/kernel/components/mdx/components/heading.tsx
|
|
2
|
+
import { HeadingCopyLink } from "./heading-copy-link.js";
|
|
3
|
+
|
|
4
|
+
// src/utils/cn.ts
|
|
5
|
+
import { clsx } from "clsx";
|
|
6
|
+
import { extendTailwindMerge } from "tailwind-merge";
|
|
7
|
+
var twMerge = extendTailwindMerge({
|
|
8
|
+
extend: {
|
|
9
|
+
classGroups: {
|
|
10
|
+
z: [
|
|
11
|
+
"z-content",
|
|
12
|
+
"z-nav",
|
|
13
|
+
"z-overlay",
|
|
14
|
+
"z-modal",
|
|
15
|
+
"z-search",
|
|
16
|
+
"z-toast",
|
|
17
|
+
"z-progress"
|
|
18
|
+
]
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
function cn(...inputs) {
|
|
23
|
+
return twMerge(clsx(inputs));
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// src/utils/heading-ids.ts
|
|
27
|
+
import { isValidElement } from "react";
|
|
28
|
+
var SELF_CLOSING_TAG_RE = new RegExp("<[^>]+/>", "g");
|
|
29
|
+
var PAIRED_TAG_RE = /<\/?\w[^>]*>/g;
|
|
30
|
+
var MDX_BOLD_RE = /\*\*(.*?)\*\*/g;
|
|
31
|
+
var MDX_ITALIC_RE = /\*(.*?)\*/g;
|
|
32
|
+
var MDX_UNDERLINE_BOLD_RE = /__(.*?)__/g;
|
|
33
|
+
var MDX_UNDERLINE_ITALIC_RE = /_(.*?)_/g;
|
|
34
|
+
var MDX_STRIKETHROUGH_RE = /~~(.*?)~~/g;
|
|
35
|
+
var MDX_INLINE_CODE_RE = /`(.*?)`/g;
|
|
36
|
+
var MDX_LINK_RE = /\[(.*?)\]\(.*?\)/g;
|
|
37
|
+
var NON_ALPHANUMERIC_RE = /[^a-z0-9]+/g;
|
|
38
|
+
var LEADING_TRAILING_HYPHEN_RE = /^-+|-+$/g;
|
|
39
|
+
var LEADING_DIGIT_RE = /^(\d)/;
|
|
40
|
+
function extractText(node) {
|
|
41
|
+
if (typeof node === "string") return node;
|
|
42
|
+
if (typeof node === "number") return String(node);
|
|
43
|
+
if (node == null || typeof node === "boolean") return "";
|
|
44
|
+
if (Array.isArray(node)) {
|
|
45
|
+
return node.map(extractText).join("");
|
|
46
|
+
}
|
|
47
|
+
if (isValidElement(node)) {
|
|
48
|
+
const element = node;
|
|
49
|
+
return element.props.children === void 0 ? "" : extractText(element.props.children);
|
|
50
|
+
}
|
|
51
|
+
return "";
|
|
52
|
+
}
|
|
53
|
+
function cleanHeadingText(input) {
|
|
54
|
+
const text = typeof input === "string" ? input : extractText(input);
|
|
55
|
+
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();
|
|
56
|
+
}
|
|
57
|
+
function slugify(text) {
|
|
58
|
+
return text.toLowerCase().replace(NON_ALPHANUMERIC_RE, "-").replace(LEADING_TRAILING_HYPHEN_RE, "").replace(LEADING_DIGIT_RE, "id-$1");
|
|
59
|
+
}
|
|
60
|
+
function headingToHTMLId(input) {
|
|
61
|
+
try {
|
|
62
|
+
const id = slugify(cleanHeadingText(input));
|
|
63
|
+
return id || "empty-heading";
|
|
64
|
+
} catch {
|
|
65
|
+
return "empty-heading";
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// src/kernel/components/mdx/components/heading.tsx
|
|
70
|
+
import {
|
|
71
|
+
Children,
|
|
72
|
+
isValidElement as isValidElement2
|
|
73
|
+
} from "react";
|
|
74
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
75
|
+
function isBrElement(node) {
|
|
76
|
+
return isValidElement2(node) && node.type === "br";
|
|
77
|
+
}
|
|
78
|
+
function cleanHeadingChildren(children) {
|
|
79
|
+
const childArray = Children.toArray(children).filter(
|
|
80
|
+
(child) => !isBrElement(child)
|
|
81
|
+
);
|
|
82
|
+
while (childArray.length > 0 && typeof childArray[0] === "string" && childArray[0].trim() === "") {
|
|
83
|
+
childArray.shift();
|
|
84
|
+
}
|
|
85
|
+
while (childArray.length > 0 && typeof childArray[childArray.length - 1] === "string" && childArray[childArray.length - 1].trim() === "") {
|
|
86
|
+
childArray.pop();
|
|
87
|
+
}
|
|
88
|
+
if (childArray.length === 0) return null;
|
|
89
|
+
if (childArray.length === 1) return childArray[0];
|
|
90
|
+
return childArray;
|
|
91
|
+
}
|
|
92
|
+
function hasNestedLink(children) {
|
|
93
|
+
for (const child of Children.toArray(children)) {
|
|
94
|
+
if (!isValidElement2(child)) continue;
|
|
95
|
+
if (typeof child.props === "object" && child.props !== null && "href" in child.props) {
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
if (typeof child.props === "object" && child.props !== null && "children" in child.props && hasNestedLink(child.props.children)) {
|
|
99
|
+
return true;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
function Heading({
|
|
105
|
+
as: Tag,
|
|
106
|
+
children,
|
|
107
|
+
className,
|
|
108
|
+
id,
|
|
109
|
+
...props
|
|
110
|
+
}) {
|
|
111
|
+
const cleaned = cleanHeadingChildren(children);
|
|
112
|
+
const headingId = id ?? headingToHTMLId(cleaned);
|
|
113
|
+
const isEmpty = !headingId || headingId === "empty-heading";
|
|
114
|
+
const classes = cn("scroll-mt-20", className);
|
|
115
|
+
if (isEmpty) {
|
|
116
|
+
return (
|
|
117
|
+
// @ts-expect-error — polymorphic `as` prop with spread is safe at runtime
|
|
118
|
+
/* @__PURE__ */ jsx(Tag, { className, ...props, children: cleaned })
|
|
119
|
+
);
|
|
120
|
+
}
|
|
121
|
+
if (hasNestedLink(cleaned)) {
|
|
122
|
+
return (
|
|
123
|
+
// @ts-expect-error — polymorphic `as` prop with spread is safe at runtime
|
|
124
|
+
/* @__PURE__ */ jsxs(Tag, { id: headingId, className: cn("group/heading", classes), ...props, children: [
|
|
125
|
+
cleaned,
|
|
126
|
+
/* @__PURE__ */ jsx(
|
|
127
|
+
HeadingCopyLink,
|
|
128
|
+
{
|
|
129
|
+
id: headingId,
|
|
130
|
+
iconOnly: true,
|
|
131
|
+
className: "ml-1.5 opacity-0 group-hover/heading:opacity-100 focus-visible:opacity-100 hover:opacity-100"
|
|
132
|
+
}
|
|
133
|
+
)
|
|
134
|
+
] })
|
|
135
|
+
);
|
|
136
|
+
}
|
|
137
|
+
return (
|
|
138
|
+
// @ts-expect-error — polymorphic `as` prop with spread is safe at runtime
|
|
139
|
+
/* @__PURE__ */ jsx(Tag, { id: headingId, className: classes, ...props, children: /* @__PURE__ */ jsx(HeadingCopyLink, { id: headingId, children: cleaned }) })
|
|
140
|
+
);
|
|
141
|
+
}
|
|
142
|
+
export {
|
|
143
|
+
Heading
|
|
144
|
+
};
|
|
@@ -0,0 +1,34 @@
|
|
|
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/kernel/components/mdx/components/hr.tsx
|
|
21
|
+
var hr_exports = {};
|
|
22
|
+
__export(hr_exports, {
|
|
23
|
+
Hr: () => Hr
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(hr_exports);
|
|
26
|
+
var import_separator = require("../../ui/separator.js");
|
|
27
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
28
|
+
function Hr({ className, ...props }) {
|
|
29
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_separator.Separator, { className, ...props });
|
|
30
|
+
}
|
|
31
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
32
|
+
0 && (module.exports = {
|
|
33
|
+
Hr
|
|
34
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Separator } from '../../ui/separator.cjs';
|
|
3
|
+
import '@base-ui/react/separator';
|
|
4
|
+
import 'react';
|
|
5
|
+
|
|
6
|
+
type HrProps = React.ComponentPropsWithoutRef<typeof Separator>;
|
|
7
|
+
declare function Hr({ className, ...props }: HrProps): react_jsx_runtime.JSX.Element;
|
|
8
|
+
|
|
9
|
+
export { Hr, type HrProps };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Separator } from '../../ui/separator.js';
|
|
3
|
+
import '@base-ui/react/separator';
|
|
4
|
+
import 'react';
|
|
5
|
+
|
|
6
|
+
type HrProps = React.ComponentPropsWithoutRef<typeof Separator>;
|
|
7
|
+
declare function Hr({ className, ...props }: HrProps): react_jsx_runtime.JSX.Element;
|
|
8
|
+
|
|
9
|
+
export { Hr, type HrProps };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// src/kernel/components/mdx/components/hr.tsx
|
|
2
|
+
import { Separator } from "../../ui/separator.js";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
function Hr({ className, ...props }) {
|
|
5
|
+
return /* @__PURE__ */ jsx(Separator, { className, ...props });
|
|
6
|
+
}
|
|
7
|
+
export {
|
|
8
|
+
Hr
|
|
9
|
+
};
|