@hanzo/docs-base-ui 16.4.2

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 (272) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +5 -0
  3. package/css/black.css +1 -0
  4. package/css/catppuccin.css +1 -0
  5. package/css/dusk.css +1 -0
  6. package/css/layouts/docs.css +1 -0
  7. package/css/layouts/home.css +1 -0
  8. package/css/layouts/notebook.css +1 -0
  9. package/css/neutral.css +1 -0
  10. package/css/ocean.css +1 -0
  11. package/css/preset.css +10 -0
  12. package/css/purple.css +1 -0
  13. package/css/shadcn.css +1 -0
  14. package/css/solar.css +1 -0
  15. package/css/style.css +9 -0
  16. package/css/vitepress.css +1 -0
  17. package/dist/_virtual/rolldown_runtime.js +36 -0
  18. package/dist/components/accordion.d.ts +24 -0
  19. package/dist/components/accordion.d.ts.map +1 -0
  20. package/dist/components/accordion.js +71 -0
  21. package/dist/components/accordion.js.map +1 -0
  22. package/dist/components/banner.d.ts +35 -0
  23. package/dist/components/banner.d.ts.map +1 -0
  24. package/dist/components/banner.js +70 -0
  25. package/dist/components/banner.js.map +1 -0
  26. package/dist/components/callout.d.ts +43 -0
  27. package/dist/components/callout.d.ts.map +1 -0
  28. package/dist/components/callout.js +63 -0
  29. package/dist/components/callout.js.map +1 -0
  30. package/dist/components/card.d.ts +21 -0
  31. package/dist/components/card.d.ts.map +1 -0
  32. package/dist/components/card.js +41 -0
  33. package/dist/components/card.js.map +1 -0
  34. package/dist/components/codeblock.d.ts +68 -0
  35. package/dist/components/codeblock.d.ts.map +1 -0
  36. package/dist/components/codeblock.js +126 -0
  37. package/dist/components/codeblock.js.map +1 -0
  38. package/dist/components/dialog/search-algolia.d.ts +39 -0
  39. package/dist/components/dialog/search-algolia.d.ts.map +1 -0
  40. package/dist/components/dialog/search-algolia.js +68 -0
  41. package/dist/components/dialog/search-algolia.js.map +1 -0
  42. package/dist/components/dialog/search-default.d.ts +44 -0
  43. package/dist/components/dialog/search-default.d.ts.map +1 -0
  44. package/dist/components/dialog/search-default.js +66 -0
  45. package/dist/components/dialog/search-default.js.map +1 -0
  46. package/dist/components/dialog/search-orama.d.ts +46 -0
  47. package/dist/components/dialog/search-orama.d.ts.map +1 -0
  48. package/dist/components/dialog/search-orama.js +73 -0
  49. package/dist/components/dialog/search-orama.js.map +1 -0
  50. package/dist/components/dialog/search.d.ts +117 -0
  51. package/dist/components/dialog/search.d.ts.map +1 -0
  52. package/dist/components/dialog/search.js +271 -0
  53. package/dist/components/dialog/search.js.map +1 -0
  54. package/dist/components/dynamic-codeblock.d.ts +32 -0
  55. package/dist/components/dynamic-codeblock.d.ts.map +1 -0
  56. package/dist/components/dynamic-codeblock.js +66 -0
  57. package/dist/components/dynamic-codeblock.js.map +1 -0
  58. package/dist/components/files.d.ts +35 -0
  59. package/dist/components/files.d.ts.map +1 -0
  60. package/dist/components/files.js +44 -0
  61. package/dist/components/files.js.map +1 -0
  62. package/dist/components/github-info.d.ts +19 -0
  63. package/dist/components/github-info.d.ts.map +1 -0
  64. package/dist/components/github-info.js +68 -0
  65. package/dist/components/github-info.js.map +1 -0
  66. package/dist/components/heading.d.ts +15 -0
  67. package/dist/components/heading.d.ts.map +1 -0
  68. package/dist/components/heading.js +29 -0
  69. package/dist/components/heading.js.map +1 -0
  70. package/dist/components/image-zoom-CtfZieBH.css +80 -0
  71. package/dist/components/image-zoom-CtfZieBH.css.map +1 -0
  72. package/dist/components/image-zoom.css +77 -0
  73. package/dist/components/image-zoom.d.ts +25 -0
  74. package/dist/components/image-zoom.d.ts.map +1 -0
  75. package/dist/components/image-zoom.js +36 -0
  76. package/dist/components/image-zoom.js.map +1 -0
  77. package/dist/components/image-zoom2.js +1 -0
  78. package/dist/components/inline-toc.d.ts +17 -0
  79. package/dist/components/inline-toc.d.ts.map +1 -0
  80. package/dist/components/inline-toc.js +30 -0
  81. package/dist/components/inline-toc.js.map +1 -0
  82. package/dist/components/sidebar/base.d.ts +112 -0
  83. package/dist/components/sidebar/base.d.ts.map +1 -0
  84. package/dist/components/sidebar/base.js +284 -0
  85. package/dist/components/sidebar/base.js.map +1 -0
  86. package/dist/components/sidebar/link-item.d.ts +24 -0
  87. package/dist/components/sidebar/link-item.d.ts.map +1 -0
  88. package/dist/components/sidebar/link-item.js +33 -0
  89. package/dist/components/sidebar/link-item.js.map +1 -0
  90. package/dist/components/sidebar/page-tree.d.ts +30 -0
  91. package/dist/components/sidebar/page-tree.d.ts.map +1 -0
  92. package/dist/components/sidebar/page-tree.js +58 -0
  93. package/dist/components/sidebar/page-tree.js.map +1 -0
  94. package/dist/components/sidebar/tabs/dropdown.d.ts +20 -0
  95. package/dist/components/sidebar/tabs/dropdown.d.ts.map +1 -0
  96. package/dist/components/sidebar/tabs/dropdown.js +78 -0
  97. package/dist/components/sidebar/tabs/dropdown.js.map +1 -0
  98. package/dist/components/sidebar/tabs/index.d.ts +27 -0
  99. package/dist/components/sidebar/tabs/index.d.ts.map +1 -0
  100. package/dist/components/sidebar/tabs/index.js +49 -0
  101. package/dist/components/sidebar/tabs/index.js.map +1 -0
  102. package/dist/components/steps.d.ts +17 -0
  103. package/dist/components/steps.d.ts.map +1 -0
  104. package/dist/components/steps.js +19 -0
  105. package/dist/components/steps.js.map +1 -0
  106. package/dist/components/tabs.d.ts +52 -0
  107. package/dist/components/tabs.d.ts.map +1 -0
  108. package/dist/components/tabs.js +101 -0
  109. package/dist/components/tabs.js.map +1 -0
  110. package/dist/components/toc/clerk.d.ts +1 -0
  111. package/dist/components/toc/clerk.js +12 -0
  112. package/dist/components/toc/clerk.js.map +1 -0
  113. package/dist/components/toc/default.d.ts +1 -0
  114. package/dist/components/toc/default.js +12 -0
  115. package/dist/components/toc/default.js.map +1 -0
  116. package/dist/components/toc/index.d.ts +1 -0
  117. package/dist/components/toc/index.js +12 -0
  118. package/dist/components/toc/index.js.map +1 -0
  119. package/dist/components/type-table.d.ts +39 -0
  120. package/dist/components/type-table.d.ts.map +1 -0
  121. package/dist/components/type-table.js +109 -0
  122. package/dist/components/type-table.js.map +1 -0
  123. package/dist/components/ui/accordion.d.ts +31 -0
  124. package/dist/components/ui/accordion.d.ts.map +1 -0
  125. package/dist/components/ui/accordion.js +45 -0
  126. package/dist/components/ui/accordion.js.map +1 -0
  127. package/dist/components/ui/button.d.ts +13 -0
  128. package/dist/components/ui/button.d.ts.map +1 -0
  129. package/dist/components/ui/button.js +23 -0
  130. package/dist/components/ui/button.js.map +1 -0
  131. package/dist/components/ui/collapsible.d.ts +20 -0
  132. package/dist/components/ui/collapsible.d.ts.map +1 -0
  133. package/dist/components/ui/collapsible.js +20 -0
  134. package/dist/components/ui/collapsible.js.map +1 -0
  135. package/dist/components/ui/navigation-menu.d.ts +16 -0
  136. package/dist/components/ui/navigation-menu.d.ts.map +1 -0
  137. package/dist/components/ui/navigation-menu.js +34 -0
  138. package/dist/components/ui/navigation-menu.js.map +1 -0
  139. package/dist/components/ui/popover.d.ts +12 -0
  140. package/dist/components/ui/popover.d.ts.map +1 -0
  141. package/dist/components/ui/popover.js +27 -0
  142. package/dist/components/ui/popover.js.map +1 -0
  143. package/dist/components/ui/scroll-area.d.ts +12 -0
  144. package/dist/components/ui/scroll-area.d.ts.map +1 -0
  145. package/dist/components/ui/scroll-area.js +36 -0
  146. package/dist/components/ui/scroll-area.js.map +1 -0
  147. package/dist/components/ui/tabs.d.ts +41 -0
  148. package/dist/components/ui/tabs.d.ts.map +1 -0
  149. package/dist/components/ui/tabs.js +81 -0
  150. package/dist/components/ui/tabs.js.map +1 -0
  151. package/dist/contexts/i18n.d.ts +1 -0
  152. package/dist/contexts/i18n.js +12 -0
  153. package/dist/contexts/i18n.js.map +1 -0
  154. package/dist/contexts/search.d.ts +8 -0
  155. package/dist/contexts/search.d.ts.map +1 -0
  156. package/dist/contexts/search.js +12 -0
  157. package/dist/contexts/search.js.map +1 -0
  158. package/dist/contexts/tree.d.ts +1 -0
  159. package/dist/contexts/tree.js +12 -0
  160. package/dist/contexts/tree.js.map +1 -0
  161. package/dist/i18n.d.ts +1 -0
  162. package/dist/i18n.js +3 -0
  163. package/dist/layouts/docs/client.d.ts +32 -0
  164. package/dist/layouts/docs/client.d.ts.map +1 -0
  165. package/dist/layouts/docs/client.js +68 -0
  166. package/dist/layouts/docs/client.js.map +1 -0
  167. package/dist/layouts/docs/index.d.ts +59 -0
  168. package/dist/layouts/docs/index.d.ts.map +1 -0
  169. package/dist/layouts/docs/index.js +178 -0
  170. package/dist/layouts/docs/index.js.map +1 -0
  171. package/dist/layouts/docs/page/client.d.ts +46 -0
  172. package/dist/layouts/docs/page/client.d.ts.map +1 -0
  173. package/dist/layouts/docs/page/client.js +227 -0
  174. package/dist/layouts/docs/page/client.js.map +1 -0
  175. package/dist/layouts/docs/page/index.d.ts +94 -0
  176. package/dist/layouts/docs/page/index.d.ts.map +1 -0
  177. package/dist/layouts/docs/page/index.js +104 -0
  178. package/dist/layouts/docs/page/index.js.map +1 -0
  179. package/dist/layouts/docs/sidebar.d.ts +63 -0
  180. package/dist/layouts/docs/sidebar.d.ts.map +1 -0
  181. package/dist/layouts/docs/sidebar.js +162 -0
  182. package/dist/layouts/docs/sidebar.js.map +1 -0
  183. package/dist/layouts/home/client.d.ts +19 -0
  184. package/dist/layouts/home/client.d.ts.map +1 -0
  185. package/dist/layouts/home/client.js +285 -0
  186. package/dist/layouts/home/client.js.map +1 -0
  187. package/dist/layouts/home/index.d.ts +12 -0
  188. package/dist/layouts/home/index.d.ts.map +1 -0
  189. package/dist/layouts/home/index.js +25 -0
  190. package/dist/layouts/home/index.js.map +1 -0
  191. package/dist/layouts/home/navbar.d.ts +20 -0
  192. package/dist/layouts/home/navbar.d.ts.map +1 -0
  193. package/dist/layouts/home/navbar.js +35 -0
  194. package/dist/layouts/home/navbar.js.map +1 -0
  195. package/dist/layouts/notebook/client.d.ts +47 -0
  196. package/dist/layouts/notebook/client.d.ts.map +1 -0
  197. package/dist/layouts/notebook/client.js +159 -0
  198. package/dist/layouts/notebook/client.js.map +1 -0
  199. package/dist/layouts/notebook/index.d.ts +38 -0
  200. package/dist/layouts/notebook/index.d.ts.map +1 -0
  201. package/dist/layouts/notebook/index.js +219 -0
  202. package/dist/layouts/notebook/index.js.map +1 -0
  203. package/dist/layouts/notebook/page/client.d.ts +46 -0
  204. package/dist/layouts/notebook/page/client.d.ts.map +1 -0
  205. package/dist/layouts/notebook/page/client.js +227 -0
  206. package/dist/layouts/notebook/page/client.js.map +1 -0
  207. package/dist/layouts/notebook/page/index.d.ts +94 -0
  208. package/dist/layouts/notebook/page/index.d.ts.map +1 -0
  209. package/dist/layouts/notebook/page/index.js +104 -0
  210. package/dist/layouts/notebook/page/index.js.map +1 -0
  211. package/dist/layouts/notebook/sidebar.d.ts +59 -0
  212. package/dist/layouts/notebook/sidebar.d.ts.map +1 -0
  213. package/dist/layouts/notebook/sidebar.js +133 -0
  214. package/dist/layouts/notebook/sidebar.js.map +1 -0
  215. package/dist/layouts/shared/index.d.ts +69 -0
  216. package/dist/layouts/shared/index.d.ts.map +1 -0
  217. package/dist/layouts/shared/index.js +39 -0
  218. package/dist/layouts/shared/index.js.map +1 -0
  219. package/dist/layouts/shared/language-toggle.d.ts +10 -0
  220. package/dist/layouts/shared/language-toggle.d.ts.map +1 -0
  221. package/dist/layouts/shared/language-toggle.js +47 -0
  222. package/dist/layouts/shared/language-toggle.js.map +1 -0
  223. package/dist/layouts/shared/search-toggle.d.ts +23 -0
  224. package/dist/layouts/shared/search-toggle.d.ts.map +1 -0
  225. package/dist/layouts/shared/search-toggle.js +56 -0
  226. package/dist/layouts/shared/search-toggle.js.map +1 -0
  227. package/dist/layouts/shared/theme-toggle.d.ts +14 -0
  228. package/dist/layouts/shared/theme-toggle.d.ts.map +1 -0
  229. package/dist/layouts/shared/theme-toggle.js +62 -0
  230. package/dist/layouts/shared/theme-toggle.js.map +1 -0
  231. package/dist/mdx.d.ts +38 -0
  232. package/dist/mdx.d.ts.map +1 -0
  233. package/dist/mdx.js +74 -0
  234. package/dist/mdx.js.map +1 -0
  235. package/dist/mdx.server.d.ts +17 -0
  236. package/dist/mdx.server.d.ts.map +1 -0
  237. package/dist/mdx.server.js +23 -0
  238. package/dist/mdx.server.js.map +1 -0
  239. package/dist/og.d.ts +1 -0
  240. package/dist/og.js +3 -0
  241. package/dist/page.d.ts +37 -0
  242. package/dist/page.d.ts.map +1 -0
  243. package/dist/page.js +38 -0
  244. package/dist/page.js.map +1 -0
  245. package/dist/provider/base.d.ts +50 -0
  246. package/dist/provider/base.d.ts.map +1 -0
  247. package/dist/provider/base.js +39 -0
  248. package/dist/provider/base.js.map +1 -0
  249. package/dist/provider/next.d.ts +22 -0
  250. package/dist/provider/next.d.ts.map +1 -0
  251. package/dist/provider/next.js +21 -0
  252. package/dist/provider/next.js.map +1 -0
  253. package/dist/provider/react-router.d.ts +22 -0
  254. package/dist/provider/react-router.d.ts.map +1 -0
  255. package/dist/provider/react-router.js +21 -0
  256. package/dist/provider/react-router.js.map +1 -0
  257. package/dist/provider/tanstack.d.ts +22 -0
  258. package/dist/provider/tanstack.d.ts.map +1 -0
  259. package/dist/provider/tanstack.js +21 -0
  260. package/dist/provider/tanstack.js.map +1 -0
  261. package/dist/provider/waku.d.ts +22 -0
  262. package/dist/provider/waku.d.ts.map +1 -0
  263. package/dist/provider/waku.js +21 -0
  264. package/dist/provider/waku.js.map +1 -0
  265. package/dist/style.css +3180 -0
  266. package/dist/utils/use-copy-button.d.ts +1 -0
  267. package/dist/utils/use-copy-button.js +3 -0
  268. package/dist/utils/use-footer-items.d.ts +1 -0
  269. package/dist/utils/use-footer-items.js +3 -0
  270. package/dist/utils/use-is-scroll-top.d.ts +1 -0
  271. package/dist/utils/use-is-scroll-top.js +3 -0
  272. package/package.json +132 -0
@@ -0,0 +1,23 @@
1
+ import { cva } from "class-variance-authority";
2
+
3
+ //#region src/components/ui/button.tsx
4
+ const variants = {
5
+ primary: "bg-fd-primary text-fd-primary-foreground hover:bg-fd-primary/80",
6
+ outline: "border hover:bg-fd-accent hover:text-fd-accent-foreground",
7
+ ghost: "hover:bg-fd-accent hover:text-fd-accent-foreground",
8
+ secondary: "border bg-fd-secondary text-fd-secondary-foreground hover:bg-fd-accent hover:text-fd-accent-foreground"
9
+ };
10
+ const buttonVariants = cva("inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring", { variants: {
11
+ variant: variants,
12
+ color: variants,
13
+ size: {
14
+ sm: "gap-1 px-2 py-1.5 text-xs",
15
+ icon: "p-1.5 [&_svg]:size-5",
16
+ "icon-sm": "p-1.5 [&_svg]:size-4.5",
17
+ "icon-xs": "p-1 [&_svg]:size-4"
18
+ }
19
+ } });
20
+
21
+ //#endregion
22
+ export { buttonVariants };
23
+ //# sourceMappingURL=button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.js","names":[],"sources":["../../../src/components/ui/button.tsx"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\n\nconst variants = {\n primary: 'bg-fd-primary text-fd-primary-foreground hover:bg-fd-primary/80',\n outline: 'border hover:bg-fd-accent hover:text-fd-accent-foreground',\n ghost: 'hover:bg-fd-accent hover:text-fd-accent-foreground',\n secondary:\n 'border bg-fd-secondary text-fd-secondary-foreground hover:bg-fd-accent hover:text-fd-accent-foreground',\n} as const;\n\nexport const buttonVariants = cva(\n 'inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-fd-ring',\n {\n variants: {\n variant: variants,\n // fumadocs use `color` instead of `variant`\n color: variants,\n size: {\n sm: 'gap-1 px-2 py-1.5 text-xs',\n icon: 'p-1.5 [&_svg]:size-5',\n 'icon-sm': 'p-1.5 [&_svg]:size-4.5',\n 'icon-xs': 'p-1 [&_svg]:size-4',\n },\n },\n },\n);\n\nexport type ButtonProps = VariantProps<typeof buttonVariants>;\n"],"mappings":";;;AAEA,MAAM,WAAW;CACf,SAAS;CACT,SAAS;CACT,OAAO;CACP,WACE;CACH;AAED,MAAa,iBAAiB,IAC5B,yOACA,EACE,UAAU;CACR,SAAS;CAET,OAAO;CACP,MAAM;EACJ,IAAI;EACJ,MAAM;EACN,WAAW;EACX,WAAW;EACZ;CACF,EACF,CACF"}
@@ -0,0 +1,20 @@
1
+ import * as react_jsx_runtime141 from "react/jsx-runtime";
2
+ import * as react17 from "react";
3
+ import { ComponentProps } from "react";
4
+ import { Collapsible as Collapsible$1 } from "@base-ui/react/collapsible";
5
+ import * as _base_ui_react16 from "@base-ui/react";
6
+
7
+ //#region src/components/ui/collapsible.d.ts
8
+ declare const Collapsible: react17.ForwardRefExoticComponent<_base_ui_react16.CollapsibleRootProps & react17.RefAttributes<HTMLDivElement>>;
9
+ declare const CollapsibleTrigger: react17.ForwardRefExoticComponent<_base_ui_react16.CollapsibleTriggerProps & react17.RefAttributes<HTMLButtonElement>>;
10
+ declare function CollapsibleContent({
11
+ children,
12
+ className,
13
+ ...props
14
+ }: ComponentProps<typeof Collapsible$1.Panel>): react_jsx_runtime141.JSX.Element;
15
+ type CollapsibleProps = Collapsible$1.Root.Props;
16
+ type CollapsibleContentProps = Collapsible$1.Panel.Props;
17
+ type CollapsibleTriggerProps = Collapsible$1.Trigger.Props;
18
+ //#endregion
19
+ export { Collapsible, CollapsibleContent, CollapsibleContentProps, CollapsibleProps, CollapsibleTrigger, CollapsibleTriggerProps };
20
+ //# sourceMappingURL=collapsible.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collapsible.d.ts","names":[],"sources":["../../../src/components/ui/collapsible.tsx"],"sourcesContent":[],"mappings":";;;;;;;cAKa,aAAW,OAAA,CAAA,0BAAiB,gBAAA,CAAjB,oBAAA,GAAA,OAAA,CAAA,cAAA;cAEX,oBAAkB,OAAA,CAAA,0BAAoB,gBAAA,CAApB,uBAAA,GAAA,OAAA,CAAA,cAAA;iBAEf,kBAAA;;;;GAIb,sBAAsB,aAAA,CAAU,SAAM,oBAAA,CAAA,GAAA,CAAA;KAgB7B,gBAAA,GAAmB,aAAA,CAAU,IAAA,CAAK;KAClC,uBAAA,GAA0B,aAAA,CAAU,KAAA,CAAM;AAzBzC,KA0BD,uBAAA,GAA0B,aAAA,CAAU,OAAA,CAAQ,KA1Bf"}
@@ -0,0 +1,20 @@
1
+ 'use client';
2
+
3
+ import { cn } from "@hanzo/docs-ui/cn";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import { Collapsible as Collapsible$1 } from "@base-ui/react/collapsible";
6
+
7
+ //#region src/components/ui/collapsible.tsx
8
+ const Collapsible = Collapsible$1.Root;
9
+ const CollapsibleTrigger = Collapsible$1.Trigger;
10
+ function CollapsibleContent({ children, className, ...props }) {
11
+ return /* @__PURE__ */ jsx(Collapsible$1.Panel, {
12
+ ...props,
13
+ className: (s) => cn("overflow-hidden [&[hidden]:not([hidden='until-found'])]:hidden h-(--collapsible-panel-height) transition-[height] data-[starting-style]:h-0 data-[ending-style]:h-0", typeof className === "function" ? className(s) : className),
14
+ children
15
+ });
16
+ }
17
+
18
+ //#endregion
19
+ export { Collapsible, CollapsibleContent, CollapsibleTrigger };
20
+ //# sourceMappingURL=collapsible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collapsible.js","names":["Primitive"],"sources":["../../../src/components/ui/collapsible.tsx"],"sourcesContent":["'use client';\nimport { Collapsible as Primitive } from '@base-ui/react/collapsible';\nimport type { ComponentProps } from 'react';\nimport { cn } from '@hanzo/docs-ui/cn';\n\nexport const Collapsible = Primitive.Root;\n\nexport const CollapsibleTrigger = Primitive.Trigger;\n\nexport function CollapsibleContent({\n children,\n className,\n ...props\n}: ComponentProps<typeof Primitive.Panel>) {\n return (\n <Primitive.Panel\n {...props}\n className={(s) =>\n cn(\n \"overflow-hidden [&[hidden]:not([hidden='until-found'])]:hidden h-(--collapsible-panel-height) transition-[height] data-[starting-style]:h-0 data-[ending-style]:h-0\",\n typeof className === 'function' ? className(s) : className,\n )\n }\n >\n {children}\n </Primitive.Panel>\n );\n}\n\nexport type CollapsibleProps = Primitive.Root.Props;\nexport type CollapsibleContentProps = Primitive.Panel.Props;\nexport type CollapsibleTriggerProps = Primitive.Trigger.Props;\n"],"mappings":";;;;;;;AAKA,MAAa,cAAcA,cAAU;AAErC,MAAa,qBAAqBA,cAAU;AAE5C,SAAgB,mBAAmB,EACjC,UACA,WACA,GAAG,SACsC;AACzC,QACE,oBAACA,cAAU;EACT,GAAI;EACJ,YAAY,MACV,GACE,uKACA,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAClD;EAGF;GACe"}
@@ -0,0 +1,16 @@
1
+ import * as React from "react";
2
+ import { NavigationMenu } from "@base-ui/react/navigation-menu";
3
+ import * as _base_ui_react10 from "@base-ui/react";
4
+
5
+ //#region src/components/ui/navigation-menu.d.ts
6
+ type NavigationMenuContentProps = NavigationMenu.Content.Props;
7
+ type NavigationMenuTriggerProps = NavigationMenu.Trigger.Props;
8
+ declare const NavigationMenuRoot: React.ForwardRefExoticComponent<_base_ui_react10.NavigationMenuRootProps & React.RefAttributes<HTMLElement>>;
9
+ declare const NavigationMenuList: React.ForwardRefExoticComponent<_base_ui_react10.NavigationMenuListProps & React.RefAttributes<HTMLDivElement>>;
10
+ declare const NavigationMenuItem: React.ForwardRefExoticComponent<Omit<_base_ui_react10.NavigationMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
11
+ declare const NavigationMenuTrigger: React.ForwardRefExoticComponent<Omit<_base_ui_react10.NavigationMenuTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
12
+ declare const NavigationMenuContent: React.ForwardRefExoticComponent<Omit<_base_ui_react10.NavigationMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
13
+ declare const NavigationMenuLink: React.ForwardRefExoticComponent<_base_ui_react10.NavigationMenuLinkProps & React.RefAttributes<HTMLAnchorElement>>;
14
+ //#endregion
15
+ export { NavigationMenuContent, NavigationMenuContentProps, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger, NavigationMenuTriggerProps };
16
+ //# sourceMappingURL=navigation-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-menu.d.ts","names":[],"sources":["../../../src/components/ui/navigation-menu.tsx"],"sourcesContent":[],"mappings":";;;;;KAKY,0BAAA,GAA6B,cAAA,CAAU,OAAA,CAAQ;KAC/C,0BAAA,GAA6B,cAAA,CAAU,OAAA,CAAQ;cAErD,oBAAkB,KAAA,CAAA,0BAAiB,gBAAA,CAAjB,uBAAA,GAAA,KAAA,CAAA,cAAA;AAHxB,cAKM,kBALM,EAKY,KAAA,CAAA,yBAL2B,CAKV,gBAAA,CAAjB,uBAAA,GAAA,KAAA,CAAA,aALwC,CAKxC,cALwC,CAAA,CAAA;AAChE,cAMM,kBANM,EAMY,KAAA,CAAA,yBAN2B,CAM3B,IANmC,CAiBzD,gBAAA,CAXsB,uBAAA,GAAA,KAAA,CAAA,aANwC,CAMxC,cANwC,CAAA,EAAA,KAAA,CAAA,GAMxC,KAAA,CAAA,aANwC,CAMxC,cANwC,CAAA,CAAA;AAAC,cAqB3D,qBAnBmC,EAmBd,KAAA,CAAA,yBAnBc,CAmBd,IAnBc,CA0BvC,gBAAA,CAPyB,0BAAA,GAAA,KAAA,CAAA,aAnBc,CAmBd,iBAnBc,CAAA,EAAA,KAAA,CAAA,GAmBd,KAAA,CAAA,aAnBc,CAmBd,iBAnBc,CAAA,CAAA;cA6BnC,qBA7BkB,EA6BG,KAAA,CAAA,yBA7BH,CA6BG,IA7BH,CAiDtB,gBAAA,CApByB,0BAAA,GAAA,KAAA,CAAA,aA7BH,CA6BG,cA7BH,CAAA,EAAA,KAAA,CAAA,GA6BG,KAAA,CAAA,aA7BH,CA6BG,cA7BH,CAAA,CAAA;cAoDlB,kBApDkB,EAoDA,KAAA,CAAA,yBApDA,CAoDiB,gBAAA,CAAjB,uBAAA,GAAA,KAAA,CAAA,aApDA,CAoDA,iBApDA,CAAA,CAAA"}
@@ -0,0 +1,34 @@
1
+ 'use client';
2
+
3
+ import { cn } from "@hanzo/docs-ui/cn";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import * as React from "react";
6
+ import { NavigationMenu } from "@base-ui/react/navigation-menu";
7
+
8
+ //#region src/components/ui/navigation-menu.tsx
9
+ const NavigationMenuRoot = NavigationMenu.Root;
10
+ const NavigationMenuList = NavigationMenu.List;
11
+ const NavigationMenuItem = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(NavigationMenu.Item, {
12
+ ref,
13
+ className: (s) => cn("list-none", typeof className === "function" ? className(s) : className),
14
+ ...props,
15
+ children
16
+ }));
17
+ NavigationMenuItem.displayName = NavigationMenu.Item.displayName;
18
+ const NavigationMenuTrigger = React.forwardRef(({ children, ...props }, ref) => /* @__PURE__ */ jsx(NavigationMenu.Trigger, {
19
+ ref,
20
+ ...props,
21
+ children
22
+ }));
23
+ NavigationMenuTrigger.displayName = NavigationMenu.Trigger.displayName;
24
+ const NavigationMenuContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(NavigationMenu.Content, {
25
+ ref,
26
+ className: (s) => cn("size-full p-4", "transition-[opacity,transform,translate] duration-(--duration) ease-(--easing)", "data-[starting-style]:opacity-0 data-[ending-style]:opacity-0", "data-[starting-style]:data-[activation-direction=left]:-translate-x-1/2", "data-[starting-style]:data-[activation-direction=right]:translate-x-1/2", "data-[ending-style]:data-[activation-direction=left]:translate-x-1/2", "data-[ending-style]:data-[activation-direction=right]:-translate-x-1/2", typeof className === "function" ? className(s) : className),
27
+ ...props
28
+ }));
29
+ NavigationMenuContent.displayName = NavigationMenu.Content.displayName;
30
+ const NavigationMenuLink = NavigationMenu.Link;
31
+
32
+ //#endregion
33
+ export { NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuTrigger };
34
+ //# sourceMappingURL=navigation-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-menu.js","names":["Primitive"],"sources":["../../../src/components/ui/navigation-menu.tsx"],"sourcesContent":["'use client';\nimport * as React from 'react';\nimport { NavigationMenu as Primitive } from '@base-ui/react/navigation-menu';\nimport { cn } from '@hanzo/docs-ui/cn';\n\nexport type NavigationMenuContentProps = Primitive.Content.Props;\nexport type NavigationMenuTriggerProps = Primitive.Trigger.Props;\n\nconst NavigationMenuRoot = Primitive.Root;\n\nconst NavigationMenuList = Primitive.List;\n\nconst NavigationMenuItem = React.forwardRef<\n React.ComponentRef<typeof Primitive.Item>,\n React.ComponentPropsWithoutRef<typeof Primitive.Item>\n>(({ className, children, ...props }, ref) => (\n <Primitive.Item\n ref={ref}\n className={(s) => cn('list-none', typeof className === 'function' ? className(s) : className)}\n {...props}\n >\n {children}\n </Primitive.Item>\n));\n\nNavigationMenuItem.displayName = Primitive.Item.displayName;\n\nconst NavigationMenuTrigger = React.forwardRef<\n React.ComponentRef<typeof Primitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof Primitive.Trigger>\n>(({ children, ...props }, ref) => (\n <Primitive.Trigger ref={ref} {...props}>\n {children}\n </Primitive.Trigger>\n));\nNavigationMenuTrigger.displayName = Primitive.Trigger.displayName;\n\nconst NavigationMenuContent = React.forwardRef<\n React.ComponentRef<typeof Primitive.Content>,\n React.ComponentPropsWithoutRef<typeof Primitive.Content>\n>(({ className, ...props }, ref) => (\n <Primitive.Content\n ref={ref}\n className={(s) =>\n cn(\n 'size-full p-4',\n 'transition-[opacity,transform,translate] duration-(--duration) ease-(--easing)',\n 'data-[starting-style]:opacity-0 data-[ending-style]:opacity-0',\n 'data-[starting-style]:data-[activation-direction=left]:-translate-x-1/2',\n 'data-[starting-style]:data-[activation-direction=right]:translate-x-1/2',\n 'data-[ending-style]:data-[activation-direction=left]:translate-x-1/2',\n 'data-[ending-style]:data-[activation-direction=right]:-translate-x-1/2',\n typeof className === 'function' ? className(s) : className,\n )\n }\n {...props}\n />\n));\nNavigationMenuContent.displayName = Primitive.Content.displayName;\n\nconst NavigationMenuLink = Primitive.Link;\n\nexport {\n NavigationMenuRoot,\n NavigationMenuList,\n NavigationMenuItem,\n NavigationMenuContent,\n NavigationMenuTrigger,\n NavigationMenuLink,\n};\n"],"mappings":";;;;;;;;AAQA,MAAM,qBAAqBA,eAAU;AAErC,MAAM,qBAAqBA,eAAU;AAErC,MAAM,qBAAqB,MAAM,YAG9B,EAAE,WAAW,UAAU,GAAG,SAAS,QACpC,oBAACA,eAAU;CACJ;CACL,YAAY,MAAM,GAAG,aAAa,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAAU;CAC7F,GAAI;CAEH;EACc,CACjB;AAEF,mBAAmB,cAAcA,eAAU,KAAK;AAEhD,MAAM,wBAAwB,MAAM,YAGjC,EAAE,UAAU,GAAG,SAAS,QACzB,oBAACA,eAAU;CAAa;CAAK,GAAI;CAC9B;EACiB,CACpB;AACF,sBAAsB,cAAcA,eAAU,QAAQ;AAEtD,MAAM,wBAAwB,MAAM,YAGjC,EAAE,WAAW,GAAG,SAAS,QAC1B,oBAACA,eAAU;CACJ;CACL,YAAY,MACV,GACE,iBACA,kFACA,iEACA,2EACA,2EACA,wEACA,0EACA,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAClD;CAEH,GAAI;EACJ,CACF;AACF,sBAAsB,cAAcA,eAAU,QAAQ;AAEtD,MAAM,qBAAqBA,eAAU"}
@@ -0,0 +1,12 @@
1
+ import * as React from "react";
2
+ import { Popover as Popover$1 } from "@base-ui/react/popover";
3
+ import * as _base_ui_react1 from "@base-ui/react";
4
+
5
+ //#region src/components/ui/popover.d.ts
6
+ declare const Popover: typeof Popover$1.Root;
7
+ declare const PopoverTrigger: Popover$1.Trigger;
8
+ declare const PopoverContent: React.ForwardRefExoticComponent<Omit<_base_ui_react1.PopoverPopupProps & React.RefAttributes<HTMLDivElement>, "ref"> & Pick<_base_ui_react1.PopoverPositionerProps, "sideOffset" | "align"> & React.RefAttributes<HTMLDivElement>>;
9
+ declare const PopoverClose: React.ForwardRefExoticComponent<_base_ui_react1.PopoverCloseProps & React.RefAttributes<HTMLButtonElement>>;
10
+ //#endregion
11
+ export { Popover, PopoverClose, PopoverContent, PopoverTrigger };
12
+ //# sourceMappingURL=popover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.d.ts","names":[],"sources":["../../../src/components/ui/popover.tsx"],"sourcesContent":[],"mappings":";;;;;cAKM,gBAAO,SAAA,CAAA;cAEP,gBAAc,SAAA,CAAA;cAEd,gBAAc,KAAA,CAAA,0BAAA,KAmBlB,eAAA,CAnBkB,iBAAA,GAAA,KAAA,CAAA,cAAA,0BAAA,KAAA,eAAA,CAAA,sBAAA,4BAAA,KAAA,CAAA,cAAA;AAPW,cA6BzB,YA1BwB,EA0BZ,KAAA,CAAA,yBA1BY,CA0BM,eAAA,CAAlB,iBAAA,GAAA,KAAA,CAAA,aA1BY,CA0BZ,iBA1BY,CAAA,CAAA"}
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ import { cn } from "@hanzo/docs-ui/cn";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import * as React from "react";
6
+ import { Popover as Popover$1 } from "@base-ui/react/popover";
7
+
8
+ //#region src/components/ui/popover.tsx
9
+ const Popover = Popover$1.Root;
10
+ const PopoverTrigger = Popover$1.Trigger;
11
+ const PopoverContent = React.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(Popover$1.Portal, { children: /* @__PURE__ */ jsx(Popover$1.Positioner, {
12
+ align,
13
+ side: "bottom",
14
+ sideOffset,
15
+ className: "z-50",
16
+ children: /* @__PURE__ */ jsx(Popover$1.Popup, {
17
+ ref,
18
+ className: (s) => cn("z-50 origin-(--transform-origin) overflow-y-auto max-h-(--available-height) min-w-[240px] max-w-[98vw] rounded-xl border bg-fd-popover/60 backdrop-blur-lg p-2 text-sm text-fd-popover-foreground shadow-lg focus-visible:outline-none data-[closed]:animate-fd-popover-out data-[open]:animate-fd-popover-in", typeof className === "function" ? className(s) : className),
19
+ ...props
20
+ })
21
+ }) }));
22
+ PopoverContent.displayName = Popover$1.Popup.displayName;
23
+ const PopoverClose = Popover$1.Close;
24
+
25
+ //#endregion
26
+ export { Popover, PopoverClose, PopoverContent, PopoverTrigger };
27
+ //# sourceMappingURL=popover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.js","names":["Primitive"],"sources":["../../../src/components/ui/popover.tsx"],"sourcesContent":["'use client';\nimport { Popover as Primitive } from '@base-ui/react/popover';\nimport * as React from 'react';\nimport { cn } from '@hanzo/docs-ui/cn';\n\nconst Popover = Primitive.Root;\n\nconst PopoverTrigger = Primitive.Trigger;\n\nconst PopoverContent = React.forwardRef<\n React.ComponentRef<typeof Primitive.Popup>,\n React.ComponentPropsWithoutRef<typeof Primitive.Popup> &\n Pick<Primitive.Positioner.Props, 'sideOffset' | 'align'>\n>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (\n <Primitive.Portal>\n <Primitive.Positioner align={align} side=\"bottom\" sideOffset={sideOffset} className=\"z-50\">\n <Primitive.Popup\n ref={ref}\n className={(s) =>\n cn(\n 'z-50 origin-(--transform-origin) overflow-y-auto max-h-(--available-height) min-w-[240px] max-w-[98vw] rounded-xl border bg-fd-popover/60 backdrop-blur-lg p-2 text-sm text-fd-popover-foreground shadow-lg focus-visible:outline-none data-[closed]:animate-fd-popover-out data-[open]:animate-fd-popover-in',\n typeof className === 'function' ? className(s) : className,\n )\n }\n {...props}\n />\n </Primitive.Positioner>\n </Primitive.Portal>\n));\nPopoverContent.displayName = Primitive.Popup.displayName;\n\nconst PopoverClose = Primitive.Close;\n\nexport { Popover, PopoverTrigger, PopoverContent, PopoverClose };\n"],"mappings":";;;;;;;;AAKA,MAAM,UAAUA,UAAU;AAE1B,MAAM,iBAAiBA,UAAU;AAEjC,MAAM,iBAAiB,MAAM,YAI1B,EAAE,WAAW,QAAQ,UAAU,aAAa,GAAG,GAAG,SAAS,QAC5D,oBAACA,UAAU,oBACT,oBAACA,UAAU;CAAkB;CAAO,MAAK;CAAqB;CAAY,WAAU;WAClF,oBAACA,UAAU;EACJ;EACL,YAAY,MACV,GACE,iTACA,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAClD;EAEH,GAAI;GACJ;EACmB,GACN,CACnB;AACF,eAAe,cAAcA,UAAU,MAAM;AAE7C,MAAM,eAAeA,UAAU"}
@@ -0,0 +1,12 @@
1
+ import * as React from "react";
2
+ import { ScrollArea as ScrollArea$1 } from "@base-ui/react/scroll-area";
3
+ import * as _base_ui_react4 from "@base-ui/react";
4
+
5
+ //#region src/components/ui/scroll-area.d.ts
6
+ declare const ScrollArea: React.ForwardRefExoticComponent<Omit<_base_ui_react4.ScrollAreaRootProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
7
+ declare const ScrollViewport: React.ForwardRefExoticComponent<Omit<_base_ui_react4.ScrollAreaViewportProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
8
+ declare const ScrollBar: React.ForwardRefExoticComponent<Omit<_base_ui_react4.ScrollAreaScrollbarProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
9
+ type ScrollAreaProps = ScrollArea$1.Root.Props;
10
+ //#endregion
11
+ export { ScrollArea, ScrollAreaProps, ScrollBar, ScrollViewport };
12
+ //# sourceMappingURL=scroll-area.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroll-area.d.ts","names":[],"sources":["../../../src/components/ui/scroll-area.tsx"],"sourcesContent":[],"mappings":";;;;;cAIM,YAAU,KAAA,CAAA,0BAAA,KAed,eAAA,CAfc,mBAAA,GAAA,KAAA,CAAA,cAAA,0BAAA,KAAA,CAAA,cAAA;cAmBV,gBAAc,KAAA,CAAA,0BAAA,KAalB,eAAA,CAbkB,uBAAA,GAAA,KAAA,CAAA,cAAA,0BAAA,KAAA,CAAA,cAAA;cAiBd,WAAS,KAAA,CAAA,0BAAA,KAoBb,eAAA,CApBa,wBAAA,GAAA,KAAA,CAAA,cAAA,0BAAA,KAAA,CAAA,cAAA;AArBb,KA6CU,eAAA,GAAkB,YAAA,CAAU,IAAA,CAAK,KA5D7B"}
@@ -0,0 +1,36 @@
1
+ import { cn } from "@hanzo/docs-ui/cn";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import * as React from "react";
4
+ import { ScrollArea as ScrollArea$1 } from "@base-ui/react/scroll-area";
5
+
6
+ //#region src/components/ui/scroll-area.tsx
7
+ const ScrollArea = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(ScrollArea$1.Root, {
8
+ ref,
9
+ className: (s) => cn("overflow-hidden", typeof className === "function" ? className(s) : className),
10
+ ...props,
11
+ children: [
12
+ children,
13
+ /* @__PURE__ */ jsx(ScrollArea$1.Corner, {}),
14
+ /* @__PURE__ */ jsx(ScrollBar, { orientation: "vertical" })
15
+ ]
16
+ }));
17
+ ScrollArea.displayName = ScrollArea$1.Root.displayName;
18
+ const ScrollViewport = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(ScrollArea$1.Viewport, {
19
+ ref,
20
+ className: (s) => cn("size-full rounded-[inherit]", typeof className === "function" ? className(s) : className),
21
+ ...props,
22
+ children
23
+ }));
24
+ ScrollViewport.displayName = ScrollArea$1.Viewport.displayName;
25
+ const ScrollBar = React.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx(ScrollArea$1.Scrollbar, {
26
+ ref,
27
+ orientation,
28
+ className: (s) => cn("flex select-none transition-opacity", !s.hovering && "opacity-0", orientation === "vertical" && "h-full w-1.5", orientation === "horizontal" && "h-1.5 flex-col", typeof className === "function" ? className(s) : className),
29
+ ...props,
30
+ children: /* @__PURE__ */ jsx(ScrollArea$1.Thumb, { className: "relative flex-1 rounded-full bg-fd-border" })
31
+ }));
32
+ ScrollBar.displayName = ScrollArea$1.Scrollbar.displayName;
33
+
34
+ //#endregion
35
+ export { ScrollArea, ScrollBar, ScrollViewport };
36
+ //# sourceMappingURL=scroll-area.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroll-area.js","names":["Primitive"],"sources":["../../../src/components/ui/scroll-area.tsx"],"sourcesContent":["import { ScrollArea as Primitive } from '@base-ui/react/scroll-area';\nimport * as React from 'react';\nimport { cn } from '@hanzo/docs-ui/cn';\n\nconst ScrollArea = React.forwardRef<\n React.ComponentRef<typeof Primitive.Root>,\n React.ComponentPropsWithoutRef<typeof Primitive.Root>\n>(({ className, children, ...props }, ref) => (\n <Primitive.Root\n ref={ref}\n className={(s) =>\n cn('overflow-hidden', typeof className === 'function' ? className(s) : className)\n }\n {...props}\n >\n {children}\n <Primitive.Corner />\n <ScrollBar orientation=\"vertical\" />\n </Primitive.Root>\n));\n\nScrollArea.displayName = Primitive.Root.displayName;\n\nconst ScrollViewport = React.forwardRef<\n React.ComponentRef<typeof Primitive.Viewport>,\n React.ComponentPropsWithoutRef<typeof Primitive.Viewport>\n>(({ className, children, ...props }, ref) => (\n <Primitive.Viewport\n ref={ref}\n className={(s) =>\n cn('size-full rounded-[inherit]', typeof className === 'function' ? className(s) : className)\n }\n {...props}\n >\n {children}\n </Primitive.Viewport>\n));\n\nScrollViewport.displayName = Primitive.Viewport.displayName;\n\nconst ScrollBar = React.forwardRef<\n React.ComponentRef<typeof Primitive.Scrollbar>,\n React.ComponentPropsWithoutRef<typeof Primitive.Scrollbar>\n>(({ className, orientation = 'vertical', ...props }, ref) => (\n <Primitive.Scrollbar\n ref={ref}\n orientation={orientation}\n className={(s) =>\n cn(\n 'flex select-none transition-opacity',\n !s.hovering && 'opacity-0',\n orientation === 'vertical' && 'h-full w-1.5',\n orientation === 'horizontal' && 'h-1.5 flex-col',\n typeof className === 'function' ? className(s) : className,\n )\n }\n {...props}\n >\n <Primitive.Thumb className=\"relative flex-1 rounded-full bg-fd-border\" />\n </Primitive.Scrollbar>\n));\nScrollBar.displayName = Primitive.Scrollbar.displayName;\n\nexport { ScrollArea, ScrollBar, ScrollViewport };\nexport type ScrollAreaProps = Primitive.Root.Props;\n"],"mappings":";;;;;;AAIA,MAAM,aAAa,MAAM,YAGtB,EAAE,WAAW,UAAU,GAAG,SAAS,QACpC,qBAACA,aAAU;CACJ;CACL,YAAY,MACV,GAAG,mBAAmB,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAAU;CAEnF,GAAI;;EAEH;EACD,oBAACA,aAAU,WAAS;EACpB,oBAAC,aAAU,aAAY,aAAa;;EACrB,CACjB;AAEF,WAAW,cAAcA,aAAU,KAAK;AAExC,MAAM,iBAAiB,MAAM,YAG1B,EAAE,WAAW,UAAU,GAAG,SAAS,QACpC,oBAACA,aAAU;CACJ;CACL,YAAY,MACV,GAAG,+BAA+B,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAAU;CAE/F,GAAI;CAEH;EACkB,CACrB;AAEF,eAAe,cAAcA,aAAU,SAAS;AAEhD,MAAM,YAAY,MAAM,YAGrB,EAAE,WAAW,cAAc,YAAY,GAAG,SAAS,QACpD,oBAACA,aAAU;CACJ;CACQ;CACb,YAAY,MACV,GACE,uCACA,CAAC,EAAE,YAAY,aACf,gBAAgB,cAAc,gBAC9B,gBAAgB,gBAAgB,kBAChC,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAClD;CAEH,GAAI;WAEJ,oBAACA,aAAU,SAAM,WAAU,8CAA8C;EACrD,CACtB;AACF,UAAU,cAAcA,aAAU,UAAU"}
@@ -0,0 +1,41 @@
1
+ import * as react_jsx_runtime80 from "react/jsx-runtime";
2
+ import * as react5 from "react";
3
+ import { ComponentProps } from "react";
4
+ import { Tabs as Tabs$1 } from "@base-ui/react/tabs";
5
+ import * as _base_ui_react7 from "@base-ui/react";
6
+
7
+ //#region src/components/ui/tabs.d.ts
8
+ interface TabsProps extends ComponentProps<typeof Tabs$1.Root> {
9
+ /**
10
+ * Identifier for Sharing value of tabs
11
+ */
12
+ groupId?: string;
13
+ /**
14
+ * Enable persistent
15
+ */
16
+ persist?: boolean;
17
+ /**
18
+ * If true, updates the URL hash based on the tab's id
19
+ */
20
+ updateAnchor?: boolean;
21
+ onValueChange?: (value: string) => void;
22
+ }
23
+ declare const TabsList: react5.ForwardRefExoticComponent<_base_ui_react7.TabsListProps & react5.RefAttributes<HTMLDivElement>>;
24
+ declare const TabsTrigger: react5.ForwardRefExoticComponent<_base_ui_react7.TabsTabProps & react5.RefAttributes<Element>>;
25
+ declare function Tabs({
26
+ ref,
27
+ groupId,
28
+ persist,
29
+ updateAnchor,
30
+ defaultValue,
31
+ value: _value,
32
+ onValueChange: _onValueChange,
33
+ ...props
34
+ }: TabsProps): react_jsx_runtime80.JSX.Element;
35
+ declare function TabsContent({
36
+ value,
37
+ ...props
38
+ }: ComponentProps<typeof Tabs$1.Panel>): react_jsx_runtime80.JSX.Element;
39
+ //#endregion
40
+ export { Tabs, TabsContent, TabsList, TabsProps, TabsTrigger };
41
+ //# sourceMappingURL=tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.d.ts","names":[],"sources":["../../../src/components/ui/tabs.tsx"],"sourcesContent":[],"mappings":";;;;;;;UAkBiB,SAAA,SAAkB,sBAAsB,MAAA,CAAU;;;;;EAAlD;AA6BjB;;EAAqB,OAAA,CAAA,EAAA,OAAA;EAAA;;;EAER,YAAA,CAAA,EAA2B,OAAA;EAAA,aAAhB,CAAA,EAAA,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,IAAA;;AAAA,cAFX,QAEW,EAFH,MAAA,CAAA,yBAEG,CAFc,eAAA,CAAjB,aAAA,GAAA,MAAA,CAAA,aAEG,CAFH,cAEG,CAAA,CAAA;AAAA,cAAX,WAAW,EAAA,MAAA,CAAA,yBAAA,CAAgB,eAAA,CAAhB,YAAA,GAAA,MAAA,CAAA,aAAA,CAAA,OAAA,CAAA,CAAA;AAAA,iBAER,IAAA,CAFQ;EAAA,GAAA;EAAA,OAAA;EAAA,OAAA;EAAA,YAAA;EAAA,YAAA;EAAA,KAAA,EAQf,MARe;EAAA,aAAA,EASP,cATO;EAAA,GAAA;AAAA,CAAA,EAWrB,SAXqB,CAAA,EAWZ,mBAAA,CAAA,GAAA,CAAA,OAXY;AAER,iBAgFA,WAAA,CAhFI;EAAA,KAAA;EAAA,GAAA;AAAA,CAAA,EAgF6B,cAhF7B,CAAA,OAgFmD,MAAA,CAAU,KAhF7D,CAAA,CAAA,EAgFmE,mBAAA,CAAA,GAAA,CAAA,OAhFnE"}
@@ -0,0 +1,81 @@
1
+ 'use client';
2
+
3
+ import { jsx } from "react/jsx-runtime";
4
+ import { createContext, use, useEffectEvent, useLayoutEffect, useMemo, useRef, useState } from "react";
5
+ import { Tabs as Tabs$1 } from "@base-ui/react/tabs";
6
+ import { mergeRefs } from "@hanzo/docs-ui/merge-refs";
7
+
8
+ //#region src/components/ui/tabs.tsx
9
+ const listeners = /* @__PURE__ */ new Map();
10
+ const TabsContext = createContext(null);
11
+ function useTabContext() {
12
+ const ctx = use(TabsContext);
13
+ if (!ctx) throw new Error("You must wrap your component in <Tabs>");
14
+ return ctx;
15
+ }
16
+ const TabsList = Tabs$1.List;
17
+ const TabsTrigger = Tabs$1.Tab;
18
+ function Tabs({ ref, groupId, persist = false, updateAnchor = false, defaultValue, value: _value, onValueChange: _onValueChange, ...props }) {
19
+ const tabsRef = useRef(null);
20
+ const valueToIdMap = useMemo(() => /* @__PURE__ */ new Map(), []);
21
+ const [value, setValue] = _value === void 0 ? useState(defaultValue) : [_value, useEffectEvent((v) => _onValueChange?.(v))];
22
+ useLayoutEffect(() => {
23
+ if (!groupId) return;
24
+ let previous = sessionStorage.getItem(groupId);
25
+ if (persist) previous ??= localStorage.getItem(groupId);
26
+ if (previous) setValue(previous);
27
+ const groupListeners = listeners.get(groupId) ?? /* @__PURE__ */ new Set();
28
+ groupListeners.add(setValue);
29
+ listeners.set(groupId, groupListeners);
30
+ return () => {
31
+ groupListeners.delete(setValue);
32
+ };
33
+ }, [
34
+ groupId,
35
+ persist,
36
+ setValue
37
+ ]);
38
+ useLayoutEffect(() => {
39
+ const hash = window.location.hash.slice(1);
40
+ if (!hash) return;
41
+ for (const [value$1, id] of valueToIdMap.entries()) if (id === hash) {
42
+ setValue(value$1);
43
+ tabsRef.current?.scrollIntoView();
44
+ break;
45
+ }
46
+ }, [setValue, valueToIdMap]);
47
+ return /* @__PURE__ */ jsx(Tabs$1.Root, {
48
+ ref: mergeRefs(ref, tabsRef),
49
+ value,
50
+ onValueChange: (v) => {
51
+ if (updateAnchor) {
52
+ const id = valueToIdMap.get(v);
53
+ if (id) window.history.replaceState(null, "", `#${id}`);
54
+ }
55
+ if (groupId) {
56
+ const groupListeners = listeners.get(groupId);
57
+ if (groupListeners) for (const listener of groupListeners) listener(v);
58
+ sessionStorage.setItem(groupId, v);
59
+ if (persist) localStorage.setItem(groupId, v);
60
+ } else setValue(v);
61
+ },
62
+ ...props,
63
+ children: /* @__PURE__ */ jsx(TabsContext, {
64
+ value: useMemo(() => ({ valueToIdMap }), [valueToIdMap]),
65
+ children: props.children
66
+ })
67
+ });
68
+ }
69
+ function TabsContent({ value, ...props }) {
70
+ const { valueToIdMap } = useTabContext();
71
+ if (props.id) valueToIdMap.set(value, props.id);
72
+ return /* @__PURE__ */ jsx(Tabs$1.Panel, {
73
+ value,
74
+ ...props,
75
+ children: props.children
76
+ });
77
+ }
78
+
79
+ //#endregion
80
+ export { Tabs, TabsContent, TabsList, TabsTrigger };
81
+ //# sourceMappingURL=tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.js","names":["Primitive","value"],"sources":["../../../src/components/ui/tabs.tsx"],"sourcesContent":["'use client';\n\nimport {\n type ComponentProps,\n createContext,\n use,\n useEffectEvent,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Tabs as Primitive } from '@base-ui/react/tabs';\nimport { mergeRefs } from '@hanzo/docs-ui/merge-refs';\n\ntype ChangeListener = (v: string) => void;\nconst listeners = new Map<string, Set<ChangeListener>>();\n\nexport interface TabsProps extends ComponentProps<typeof Primitive.Root> {\n /**\n * Identifier for Sharing value of tabs\n */\n groupId?: string;\n\n /**\n * Enable persistent\n */\n persist?: boolean;\n\n /**\n * If true, updates the URL hash based on the tab's id\n */\n updateAnchor?: boolean;\n\n onValueChange?: (value: string) => void;\n}\n\nconst TabsContext = createContext<{\n valueToIdMap: Map<string, string>;\n} | null>(null);\n\nfunction useTabContext() {\n const ctx = use(TabsContext);\n if (!ctx) throw new Error('You must wrap your component in <Tabs>');\n return ctx;\n}\n\nexport const TabsList = Primitive.List;\n\nexport const TabsTrigger = Primitive.Tab;\n\nexport function Tabs({\n ref,\n groupId,\n persist = false,\n updateAnchor = false,\n defaultValue,\n value: _value,\n onValueChange: _onValueChange,\n ...props\n}: TabsProps) {\n const tabsRef = useRef<HTMLDivElement>(null);\n const valueToIdMap = useMemo(() => new Map<string, string>(), []);\n const [value, setValue] =\n _value === undefined\n ? // eslint-disable-next-line react-hooks/rules-of-hooks -- not supposed to change controlled/uncontrolled\n useState(defaultValue)\n : // eslint-disable-next-line react-hooks/rules-of-hooks -- not supposed to change controlled/uncontrolled\n [_value, useEffectEvent((v: string) => _onValueChange?.(v))];\n\n useLayoutEffect(() => {\n if (!groupId) return;\n let previous = sessionStorage.getItem(groupId);\n if (persist) previous ??= localStorage.getItem(groupId);\n if (previous) setValue(previous);\n\n const groupListeners = listeners.get(groupId) ?? new Set();\n groupListeners.add(setValue);\n listeners.set(groupId, groupListeners);\n return () => {\n groupListeners.delete(setValue);\n };\n }, [groupId, persist, setValue]);\n\n useLayoutEffect(() => {\n const hash = window.location.hash.slice(1);\n if (!hash) return;\n\n for (const [value, id] of valueToIdMap.entries()) {\n if (id === hash) {\n setValue(value);\n tabsRef.current?.scrollIntoView();\n break;\n }\n }\n }, [setValue, valueToIdMap]);\n\n return (\n <Primitive.Root\n ref={mergeRefs(ref, tabsRef)}\n value={value}\n onValueChange={(v: string) => {\n if (updateAnchor) {\n const id = valueToIdMap.get(v);\n\n if (id) {\n window.history.replaceState(null, '', `#${id}`);\n }\n }\n\n if (groupId) {\n const groupListeners = listeners.get(groupId);\n if (groupListeners) {\n for (const listener of groupListeners) listener(v);\n }\n\n sessionStorage.setItem(groupId, v);\n if (persist) localStorage.setItem(groupId, v);\n } else {\n setValue(v);\n }\n }}\n {...props}\n >\n <TabsContext value={useMemo(() => ({ valueToIdMap }), [valueToIdMap])}>\n {props.children}\n </TabsContext>\n </Primitive.Root>\n );\n}\n\nexport function TabsContent({ value, ...props }: ComponentProps<typeof Primitive.Panel>) {\n const { valueToIdMap } = useTabContext();\n\n if (props.id) {\n valueToIdMap.set(value, props.id);\n }\n\n return (\n <Primitive.Panel value={value} {...props}>\n {props.children}\n </Primitive.Panel>\n );\n}\n"],"mappings":";;;;;;;;AAgBA,MAAM,4BAAY,IAAI,KAAkC;AAqBxD,MAAM,cAAc,cAEV,KAAK;AAEf,SAAS,gBAAgB;CACvB,MAAM,MAAM,IAAI,YAAY;AAC5B,KAAI,CAAC,IAAK,OAAM,IAAI,MAAM,yCAAyC;AACnE,QAAO;;AAGT,MAAa,WAAWA,OAAU;AAElC,MAAa,cAAcA,OAAU;AAErC,SAAgB,KAAK,EACnB,KACA,SACA,UAAU,OACV,eAAe,OACf,cACA,OAAO,QACP,eAAe,gBACf,GAAG,SACS;CACZ,MAAM,UAAU,OAAuB,KAAK;CAC5C,MAAM,eAAe,8BAAc,IAAI,KAAqB,EAAE,EAAE,CAAC;CACjE,MAAM,CAAC,OAAO,YACZ,WAAW,SAEP,SAAS,aAAa,GAEtB,CAAC,QAAQ,gBAAgB,MAAc,iBAAiB,EAAE,CAAC,CAAC;AAElE,uBAAsB;AACpB,MAAI,CAAC,QAAS;EACd,IAAI,WAAW,eAAe,QAAQ,QAAQ;AAC9C,MAAI,QAAS,cAAa,aAAa,QAAQ,QAAQ;AACvD,MAAI,SAAU,UAAS,SAAS;EAEhC,MAAM,iBAAiB,UAAU,IAAI,QAAQ,oBAAI,IAAI,KAAK;AAC1D,iBAAe,IAAI,SAAS;AAC5B,YAAU,IAAI,SAAS,eAAe;AACtC,eAAa;AACX,kBAAe,OAAO,SAAS;;IAEhC;EAAC;EAAS;EAAS;EAAS,CAAC;AAEhC,uBAAsB;EACpB,MAAM,OAAO,OAAO,SAAS,KAAK,MAAM,EAAE;AAC1C,MAAI,CAAC,KAAM;AAEX,OAAK,MAAM,CAACC,SAAO,OAAO,aAAa,SAAS,CAC9C,KAAI,OAAO,MAAM;AACf,YAASA,QAAM;AACf,WAAQ,SAAS,gBAAgB;AACjC;;IAGH,CAAC,UAAU,aAAa,CAAC;AAE5B,QACE,oBAACD,OAAU;EACT,KAAK,UAAU,KAAK,QAAQ;EACrB;EACP,gBAAgB,MAAc;AAC5B,OAAI,cAAc;IAChB,MAAM,KAAK,aAAa,IAAI,EAAE;AAE9B,QAAI,GACF,QAAO,QAAQ,aAAa,MAAM,IAAI,IAAI,KAAK;;AAInD,OAAI,SAAS;IACX,MAAM,iBAAiB,UAAU,IAAI,QAAQ;AAC7C,QAAI,eACF,MAAK,MAAM,YAAY,eAAgB,UAAS,EAAE;AAGpD,mBAAe,QAAQ,SAAS,EAAE;AAClC,QAAI,QAAS,cAAa,QAAQ,SAAS,EAAE;SAE7C,UAAS,EAAE;;EAGf,GAAI;YAEJ,oBAAC;GAAY,OAAO,eAAe,EAAE,cAAc,GAAG,CAAC,aAAa,CAAC;aAClE,MAAM;IACK;GACC;;AAIrB,SAAgB,YAAY,EAAE,OAAO,GAAG,SAAiD;CACvF,MAAM,EAAE,iBAAiB,eAAe;AAExC,KAAI,MAAM,GACR,cAAa,IAAI,OAAO,MAAM,GAAG;AAGnC,QACE,oBAACA,OAAU;EAAa;EAAO,GAAI;YAChC,MAAM;GACS"}
@@ -0,0 +1 @@
1
+ export * from "@hanzo/docs-ui/contexts/i18n";
@@ -0,0 +1,12 @@
1
+ import { __reExport } from "../_virtual/rolldown_runtime.js";
2
+
3
+ export * from "@hanzo/docs-ui/contexts/i18n"
4
+
5
+ //#region src/contexts/i18n.tsx
6
+ var i18n_exports = {};
7
+ import * as import__hanzo_docs_ui_contexts_i18n from "@hanzo/docs-ui/contexts/i18n";
8
+ __reExport(i18n_exports, import__hanzo_docs_ui_contexts_i18n);
9
+
10
+ //#endregion
11
+ export { i18n_exports };
12
+ //# sourceMappingURL=i18n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.js","names":[],"sources":["../../src/contexts/i18n.tsx"],"sourcesContent":["export * from '@hanzo/docs-ui/contexts/i18n';\n"],"mappings":""}
@@ -0,0 +1,8 @@
1
+ export * from "@hanzo/docs-ui/contexts/search";
2
+
3
+ //#region src/contexts/search.d.ts
4
+
5
+ import * as import__hanzo_docs_ui_contexts_search from "@hanzo/docs-ui/contexts/search";
6
+ //#endregion
7
+ export { import__hanzo_docs_ui_contexts_search as search_d_exports };
8
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","names":[],"sources":["../../src/contexts/search.tsx"],"sourcesContent":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ import { __reExport } from "../_virtual/rolldown_runtime.js";
2
+
3
+ export * from "@hanzo/docs-ui/contexts/search"
4
+
5
+ //#region src/contexts/search.tsx
6
+ var search_exports = {};
7
+ import * as import__hanzo_docs_ui_contexts_search from "@hanzo/docs-ui/contexts/search";
8
+ __reExport(search_exports, import__hanzo_docs_ui_contexts_search);
9
+
10
+ //#endregion
11
+ export { search_exports };
12
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","names":[],"sources":["../../src/contexts/search.tsx"],"sourcesContent":["export * from '@hanzo/docs-ui/contexts/search';\n"],"mappings":""}
@@ -0,0 +1 @@
1
+ export * from "@hanzo/docs-ui/contexts/tree";
@@ -0,0 +1,12 @@
1
+ import { __reExport } from "../_virtual/rolldown_runtime.js";
2
+
3
+ export * from "@hanzo/docs-ui/contexts/tree"
4
+
5
+ //#region src/contexts/tree.tsx
6
+ var tree_exports = {};
7
+ import * as import__hanzo_docs_ui_contexts_tree from "@hanzo/docs-ui/contexts/tree";
8
+ __reExport(tree_exports, import__hanzo_docs_ui_contexts_tree);
9
+
10
+ //#endregion
11
+ export { tree_exports };
12
+ //# sourceMappingURL=tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree.js","names":[],"sources":["../../src/contexts/tree.tsx"],"sourcesContent":["export * from '@hanzo/docs-ui/contexts/tree';\n"],"mappings":""}
package/dist/i18n.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from "@hanzo/docs-ui/i18n";
package/dist/i18n.js ADDED
@@ -0,0 +1,3 @@
1
+ export * from "@hanzo/docs-ui/i18n"
2
+
3
+ export { };
@@ -0,0 +1,32 @@
1
+ import { SidebarTab } from "../../components/sidebar/tabs/index.js";
2
+ import * as react_jsx_runtime93 from "react/jsx-runtime";
3
+ import * as react12 from "react";
4
+ import { ComponentProps, ReactNode } from "react";
5
+
6
+ //#region src/layouts/docs/client.d.ts
7
+ declare const LayoutContext: react12.Context<{
8
+ isNavTransparent: boolean;
9
+ } | null>;
10
+ declare function LayoutContextProvider({
11
+ navTransparentMode,
12
+ children
13
+ }: {
14
+ navTransparentMode?: 'always' | 'top' | 'none';
15
+ children: ReactNode;
16
+ }): react_jsx_runtime93.JSX.Element;
17
+ declare function LayoutHeader(props: ComponentProps<'header'>): react_jsx_runtime93.JSX.Element;
18
+ declare function LayoutBody({
19
+ className,
20
+ style,
21
+ children,
22
+ ...props
23
+ }: ComponentProps<'div'>): react_jsx_runtime93.JSX.Element;
24
+ declare function LayoutTabs({
25
+ options,
26
+ ...props
27
+ }: ComponentProps<'div'> & {
28
+ options: SidebarTab[];
29
+ }): react_jsx_runtime93.JSX.Element;
30
+ //#endregion
31
+ export { LayoutBody, LayoutContext, LayoutContextProvider, LayoutHeader, LayoutTabs };
32
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","names":[],"sources":["../../../src/layouts/docs/client.tsx"],"sourcesContent":[],"mappings":";;;;;;cAWa,eAEE,OAAA,CAFW;;;iBAIV,qBAAA;;;;EAJH,kBAEE,CAAA,EAAA,QAAA,GAAA,KAFW,GAAA,MAAA;EAIV,QAAA,EAKJ,SALI;CACd,CAAA,EAKD,mBAAA,CAAA,GAAA,CAAA,OALC;AACA,iBAsBc,YAAA,CAtBd,KAAA,EAsBkC,cAtBlC,CAAA,QAAA,CAAA,CAAA,EAsB0D,mBAAA,CAAA,GAAA,CAAA,OAtB1D;AAGU,iBA6BI,UAAA,CA7BJ;EAAA,SAAA;EAAA,KAAA;EAAA,QAAA;EAAA,GAAA;AAAA,CAAA,EA6ByD,cA7BzD,CAAA,KAAA,CAAA,CAAA,EA6B8E,mBAAA,CAAA,GAAA,CAAA,OA7B9E;AACX,iBA0De,UAAA,CA1Df;EAAA,OAAA;EAAA,GAAA;AAkBD,CAlBC,EA6DE,cA7DF,CAAA,KAAA,CAAA,GAAA;EAAA,OAAA,EA8DU,UA9DV,EAAA;AAkBD,CAAA,CAAA,EA6CC,mBAAA,CAAA,GAAA,CAAA,OA7CmC"}
@@ -0,0 +1,68 @@
1
+ 'use client';
2
+
3
+ import { useSidebar } from "../../components/sidebar/base.js";
4
+ import { isTabActive } from "../../components/sidebar/tabs/dropdown.js";
5
+ import Link from "@hanzo/docs-core/link";
6
+ import { usePathname } from "@hanzo/docs-core/framework";
7
+ import { cn } from "@hanzo/docs-ui/cn";
8
+ import { jsx } from "react/jsx-runtime";
9
+ import { createContext, use, useMemo } from "react";
10
+ import { useIsScrollTop } from "@hanzo/docs-ui/hooks/use-is-scroll-top";
11
+
12
+ //#region src/layouts/docs/client.tsx
13
+ const LayoutContext = createContext(null);
14
+ function LayoutContextProvider({ navTransparentMode = "none", children }) {
15
+ const isTop = useIsScrollTop({ enabled: navTransparentMode === "top" }) ?? true;
16
+ const isNavTransparent = navTransparentMode === "top" ? isTop : navTransparentMode === "always";
17
+ return /* @__PURE__ */ jsx(LayoutContext, {
18
+ value: useMemo(() => ({ isNavTransparent }), [isNavTransparent]),
19
+ children
20
+ });
21
+ }
22
+ function LayoutHeader(props) {
23
+ const { isNavTransparent } = use(LayoutContext);
24
+ return /* @__PURE__ */ jsx("header", {
25
+ "data-transparent": isNavTransparent,
26
+ ...props,
27
+ children: props.children
28
+ });
29
+ }
30
+ function LayoutBody({ className, style, children, ...props }) {
31
+ const { collapsed } = useSidebar();
32
+ return /* @__PURE__ */ jsx("div", {
33
+ id: "nd-docs-layout",
34
+ className: cn("grid transition-[grid-template-columns] overflow-x-clip min-h-(--fd-docs-height) auto-cols-auto auto-rows-auto [--fd-docs-height:100dvh] [--fd-header-height:0px] [--fd-toc-popover-height:0px] [--fd-sidebar-width:0px] [--fd-toc-width:0px]", className),
35
+ "data-sidebar-collapsed": collapsed,
36
+ style: {
37
+ gridTemplate: `"sidebar header toc"
38
+ "sidebar toc-popover toc"
39
+ "sidebar main toc" 1fr / minmax(var(--fd-sidebar-col), 1fr) minmax(0, calc(var(--fd-layout-width,97rem) - var(--fd-sidebar-width) - var(--fd-toc-width))) minmax(min-content, 1fr)`,
40
+ "--fd-docs-row-1": "var(--fd-banner-height, 0px)",
41
+ "--fd-docs-row-2": "calc(var(--fd-docs-row-1) + var(--fd-header-height))",
42
+ "--fd-docs-row-3": "calc(var(--fd-docs-row-2) + var(--fd-toc-popover-height))",
43
+ "--fd-sidebar-col": collapsed ? "0px" : "var(--fd-sidebar-width)",
44
+ ...style
45
+ },
46
+ ...props,
47
+ children
48
+ });
49
+ }
50
+ function LayoutTabs({ options, ...props }) {
51
+ const pathname = usePathname();
52
+ const selected = useMemo(() => {
53
+ return options.findLast((option) => isTabActive(option, pathname));
54
+ }, [options, pathname]);
55
+ return /* @__PURE__ */ jsx("div", {
56
+ ...props,
57
+ className: cn("flex flex-row items-end gap-6 overflow-auto [grid-area:main]", props.className),
58
+ children: options.map((option, i) => /* @__PURE__ */ jsx(Link, {
59
+ href: option.url,
60
+ className: cn("inline-flex border-b-2 border-transparent transition-colors items-center pb-1.5 font-medium gap-2 text-fd-muted-foreground text-sm text-nowrap hover:text-fd-accent-foreground", option.unlisted && selected !== option && "hidden", selected === option && "border-fd-primary text-fd-primary"),
61
+ children: option.title
62
+ }, i))
63
+ });
64
+ }
65
+
66
+ //#endregion
67
+ export { LayoutBody, LayoutContext, LayoutContextProvider, LayoutHeader, LayoutTabs };
68
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","names":[],"sources":["../../../src/layouts/docs/client.tsx"],"sourcesContent":["'use client';\n\nimport { type ComponentProps, createContext, type ReactNode, use, useMemo } from 'react';\nimport { cn } from '@hanzo/docs-ui/cn';\nimport { useSidebar } from '@/components/sidebar/base';\nimport { usePathname } from '@hanzo/docs-core/framework';\nimport { isTabActive } from '@/components/sidebar/tabs/dropdown';\nimport Link from '@hanzo/docs-core/link';\nimport type { SidebarTab } from '@/components/sidebar/tabs';\nimport { useIsScrollTop } from '@hanzo/docs-ui/hooks/use-is-scroll-top';\n\nexport const LayoutContext = createContext<{\n isNavTransparent: boolean;\n} | null>(null);\n\nexport function LayoutContextProvider({\n navTransparentMode = 'none',\n children,\n}: {\n navTransparentMode?: 'always' | 'top' | 'none';\n children: ReactNode;\n}) {\n const isTop = useIsScrollTop({ enabled: navTransparentMode === 'top' }) ?? true;\n const isNavTransparent = navTransparentMode === 'top' ? isTop : navTransparentMode === 'always';\n\n return (\n <LayoutContext\n value={useMemo(\n () => ({\n isNavTransparent,\n }),\n [isNavTransparent],\n )}\n >\n {children}\n </LayoutContext>\n );\n}\n\nexport function LayoutHeader(props: ComponentProps<'header'>) {\n const { isNavTransparent } = use(LayoutContext)!;\n\n return (\n <header data-transparent={isNavTransparent} {...props}>\n {props.children}\n </header>\n );\n}\n\nexport function LayoutBody({ className, style, children, ...props }: ComponentProps<'div'>) {\n const { collapsed } = useSidebar();\n\n return (\n <div\n id=\"nd-docs-layout\"\n className={cn(\n 'grid transition-[grid-template-columns] overflow-x-clip min-h-(--fd-docs-height) auto-cols-auto auto-rows-auto [--fd-docs-height:100dvh] [--fd-header-height:0px] [--fd-toc-popover-height:0px] [--fd-sidebar-width:0px] [--fd-toc-width:0px]',\n className,\n )}\n data-sidebar-collapsed={collapsed}\n style={\n {\n gridTemplate: `\"sidebar header toc\"\n \"sidebar toc-popover toc\"\n \"sidebar main toc\" 1fr / minmax(var(--fd-sidebar-col), 1fr) minmax(0, calc(var(--fd-layout-width,97rem) - var(--fd-sidebar-width) - var(--fd-toc-width))) minmax(min-content, 1fr)`,\n '--fd-docs-row-1': 'var(--fd-banner-height, 0px)',\n '--fd-docs-row-2': 'calc(var(--fd-docs-row-1) + var(--fd-header-height))',\n '--fd-docs-row-3': 'calc(var(--fd-docs-row-2) + var(--fd-toc-popover-height))',\n '--fd-sidebar-col': collapsed ? '0px' : 'var(--fd-sidebar-width)',\n ...style,\n } as object\n }\n {...props}\n >\n {children}\n </div>\n );\n}\n\nexport function LayoutTabs({\n options,\n ...props\n}: ComponentProps<'div'> & {\n options: SidebarTab[];\n}) {\n const pathname = usePathname();\n const selected = useMemo(() => {\n return options.findLast((option) => isTabActive(option, pathname));\n }, [options, pathname]);\n\n return (\n <div\n {...props}\n className={cn(\n 'flex flex-row items-end gap-6 overflow-auto [grid-area:main]',\n props.className,\n )}\n >\n {options.map((option, i) => (\n <Link\n key={i}\n href={option.url}\n className={cn(\n 'inline-flex border-b-2 border-transparent transition-colors items-center pb-1.5 font-medium gap-2 text-fd-muted-foreground text-sm text-nowrap hover:text-fd-accent-foreground',\n option.unlisted && selected !== option && 'hidden',\n selected === option && 'border-fd-primary text-fd-primary',\n )}\n >\n {option.title}\n </Link>\n ))}\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;AAWA,MAAa,gBAAgB,cAEnB,KAAK;AAEf,SAAgB,sBAAsB,EACpC,qBAAqB,QACrB,YAIC;CACD,MAAM,QAAQ,eAAe,EAAE,SAAS,uBAAuB,OAAO,CAAC,IAAI;CAC3E,MAAM,mBAAmB,uBAAuB,QAAQ,QAAQ,uBAAuB;AAEvF,QACE,oBAAC;EACC,OAAO,eACE,EACL,kBACD,GACD,CAAC,iBAAiB,CACnB;EAEA;GACa;;AAIpB,SAAgB,aAAa,OAAiC;CAC5D,MAAM,EAAE,qBAAqB,IAAI,cAAc;AAE/C,QACE,oBAAC;EAAO,oBAAkB;EAAkB,GAAI;YAC7C,MAAM;GACA;;AAIb,SAAgB,WAAW,EAAE,WAAW,OAAO,UAAU,GAAG,SAAgC;CAC1F,MAAM,EAAE,cAAc,YAAY;AAElC,QACE,oBAAC;EACC,IAAG;EACH,WAAW,GACT,iPACA,UACD;EACD,0BAAwB;EACxB,OACE;GACE,cAAc;;;GAGd,mBAAmB;GACnB,mBAAmB;GACnB,mBAAmB;GACnB,oBAAoB,YAAY,QAAQ;GACxC,GAAG;GACJ;EAEH,GAAI;EAEH;GACG;;AAIV,SAAgB,WAAW,EACzB,SACA,GAAG,SAGF;CACD,MAAM,WAAW,aAAa;CAC9B,MAAM,WAAW,cAAc;AAC7B,SAAO,QAAQ,UAAU,WAAW,YAAY,QAAQ,SAAS,CAAC;IACjE,CAAC,SAAS,SAAS,CAAC;AAEvB,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,GACT,gEACA,MAAM,UACP;YAEA,QAAQ,KAAK,QAAQ,MACpB,oBAAC;GAEC,MAAM,OAAO;GACb,WAAW,GACT,kLACA,OAAO,YAAY,aAAa,UAAU,UAC1C,aAAa,UAAU,oCACxB;aAEA,OAAO;KARH,EASA,CACP;GACE"}