@fumadocs/base-ui 16.4.1 → 16.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. package/dist/_virtual/rolldown_runtime.js +36 -0
  2. package/dist/components/accordion.d.ts +23 -7
  3. package/dist/components/accordion.d.ts.map +1 -1
  4. package/dist/components/accordion.js +66 -36
  5. package/dist/components/accordion.js.map +1 -0
  6. package/dist/components/banner.d.ts +33 -22
  7. package/dist/components/banner.d.ts.map +1 -1
  8. package/dist/components/banner.js +63 -47
  9. package/dist/components/banner.js.map +1 -0
  10. package/dist/components/callout.d.ts +41 -17
  11. package/dist/components/callout.d.ts.map +1 -1
  12. package/dist/components/callout.js +57 -28
  13. package/dist/components/callout.js.map +1 -0
  14. package/dist/components/card.d.ts +19 -9
  15. package/dist/components/card.d.ts.map +1 -1
  16. package/dist/components/card.js +39 -8
  17. package/dist/components/card.js.map +1 -0
  18. package/dist/components/codeblock.d.ts +66 -40
  19. package/dist/components/codeblock.d.ts.map +1 -1
  20. package/dist/components/codeblock.js +116 -58
  21. package/dist/components/codeblock.js.map +1 -0
  22. package/dist/components/dialog/search-algolia.d.ts +37 -23
  23. package/dist/components/dialog/search-algolia.d.ts.map +1 -1
  24. package/dist/components/dialog/search-algolia.js +64 -31
  25. package/dist/components/dialog/search-algolia.js.map +1 -0
  26. package/dist/components/dialog/search-default.d.ts +42 -27
  27. package/dist/components/dialog/search-default.d.ts.map +1 -1
  28. package/dist/components/dialog/search-default.js +64 -38
  29. package/dist/components/dialog/search-default.js.map +1 -0
  30. package/dist/components/dialog/search-orama.d.ts +41 -25
  31. package/dist/components/dialog/search-orama.d.ts.map +1 -1
  32. package/dist/components/dialog/search-orama.js +68 -35
  33. package/dist/components/dialog/search-orama.js.map +1 -0
  34. package/dist/components/dialog/search.d.ts +107 -64
  35. package/dist/components/dialog/search.d.ts.map +1 -1
  36. package/dist/components/dialog/search.js +264 -185
  37. package/dist/components/dialog/search.js.map +1 -0
  38. package/dist/components/dynamic-codeblock.d.ts +30 -19
  39. package/dist/components/dynamic-codeblock.d.ts.map +1 -1
  40. package/dist/components/dynamic-codeblock.js +60 -27
  41. package/dist/components/dynamic-codeblock.js.map +1 -0
  42. package/dist/components/files.d.ts +32 -16
  43. package/dist/components/files.d.ts.map +1 -1
  44. package/dist/components/files.js +40 -14
  45. package/dist/components/files.js.map +1 -0
  46. package/dist/components/github-info.d.ts +18 -7
  47. package/dist/components/github-info.d.ts.map +1 -1
  48. package/dist/components/github-info.js +63 -48
  49. package/dist/components/github-info.js.map +1 -0
  50. package/dist/components/heading.d.ts +11 -4
  51. package/dist/components/heading.d.ts.map +1 -1
  52. package/dist/components/heading.js +28 -8
  53. package/dist/components/heading.js.map +1 -0
  54. package/dist/components/image-zoom-CtfZieBH.css +80 -0
  55. package/dist/components/image-zoom-CtfZieBH.css.map +1 -0
  56. package/dist/components/image-zoom.d.ts +23 -14
  57. package/dist/components/image-zoom.d.ts.map +1 -1
  58. package/dist/components/image-zoom.js +32 -19
  59. package/dist/components/image-zoom.js.map +1 -0
  60. package/dist/components/image-zoom2.js +1 -0
  61. package/dist/components/inline-toc.d.ts +15 -6
  62. package/dist/components/inline-toc.d.ts.map +1 -1
  63. package/dist/components/inline-toc.js +28 -8
  64. package/dist/components/inline-toc.js.map +1 -0
  65. package/dist/components/sidebar/base.d.ts +103 -65
  66. package/dist/components/sidebar/base.d.ts.map +1 -1
  67. package/dist/components/sidebar/base.js +278 -191
  68. package/dist/components/sidebar/base.js.map +1 -0
  69. package/dist/components/sidebar/link-item.d.ts +23 -10
  70. package/dist/components/sidebar/link-item.d.ts.map +1 -1
  71. package/dist/components/sidebar/link-item.js +32 -12
  72. package/dist/components/sidebar/link-item.js.map +1 -0
  73. package/dist/components/sidebar/page-tree.d.ts +28 -17
  74. package/dist/components/sidebar/page-tree.d.ts.map +1 -1
  75. package/dist/components/sidebar/page-tree.js +57 -33
  76. package/dist/components/sidebar/page-tree.js.map +1 -0
  77. package/dist/components/sidebar/tabs/dropdown.d.ts +18 -9
  78. package/dist/components/sidebar/tabs/dropdown.d.ts.map +1 -1
  79. package/dist/components/sidebar/tabs/dropdown.js +75 -31
  80. package/dist/components/sidebar/tabs/dropdown.js.map +1 -0
  81. package/dist/components/sidebar/tabs/index.d.ts +24 -18
  82. package/dist/components/sidebar/tabs/index.d.ts.map +1 -1
  83. package/dist/components/sidebar/tabs/index.js +45 -45
  84. package/dist/components/sidebar/tabs/index.js.map +1 -0
  85. package/dist/components/steps.d.ts +16 -7
  86. package/dist/components/steps.d.ts.map +1 -1
  87. package/dist/components/steps.js +17 -5
  88. package/dist/components/steps.js.map +1 -0
  89. package/dist/components/tabs.d.ts +49 -28
  90. package/dist/components/tabs.d.ts.map +1 -1
  91. package/dist/components/tabs.js +88 -51
  92. package/dist/components/tabs.js.map +1 -0
  93. package/dist/components/toc/clerk.d.ts +1 -2
  94. package/dist/components/toc/clerk.js +12 -1
  95. package/dist/components/toc/clerk.js.map +1 -0
  96. package/dist/components/toc/default.d.ts +1 -2
  97. package/dist/components/toc/default.js +12 -1
  98. package/dist/components/toc/default.js.map +1 -0
  99. package/dist/components/toc/index.d.ts +1 -2
  100. package/dist/components/toc/index.js +12 -1
  101. package/dist/components/toc/index.js.map +1 -0
  102. package/dist/components/type-table.d.ts +36 -29
  103. package/dist/components/type-table.d.ts.map +1 -1
  104. package/dist/components/type-table.js +106 -25
  105. package/dist/components/type-table.js.map +1 -0
  106. package/dist/components/ui/accordion.d.ts +30 -7
  107. package/dist/components/ui/accordion.d.ts.map +1 -1
  108. package/dist/components/ui/accordion.js +39 -14
  109. package/dist/components/ui/accordion.js.map +1 -0
  110. package/dist/components/ui/button.d.ts +12 -7
  111. package/dist/components/ui/button.d.ts.map +1 -1
  112. package/dist/components/ui/button.js +21 -18
  113. package/dist/components/ui/button.js.map +1 -0
  114. package/dist/components/ui/collapsible.d.ts +19 -8
  115. package/dist/components/ui/collapsible.d.ts.map +1 -1
  116. package/dist/components/ui/collapsible.js +18 -7
  117. package/dist/components/ui/collapsible.js.map +1 -0
  118. package/dist/components/ui/navigation-menu.d.ts +15 -11
  119. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  120. package/dist/components/ui/navigation-menu.js +33 -14
  121. package/dist/components/ui/navigation-menu.js.map +1 -0
  122. package/dist/components/ui/popover.d.ts +11 -7
  123. package/dist/components/ui/popover.d.ts.map +1 -1
  124. package/dist/components/ui/popover.js +26 -10
  125. package/dist/components/ui/popover.js.map +1 -0
  126. package/dist/components/ui/scroll-area.d.ts +11 -7
  127. package/dist/components/ui/scroll-area.d.ts.map +1 -1
  128. package/dist/components/ui/scroll-area.js +35 -10
  129. package/dist/components/ui/scroll-area.js.map +1 -0
  130. package/dist/components/ui/tabs.d.ts +39 -20
  131. package/dist/components/ui/tabs.d.ts.map +1 -1
  132. package/dist/components/ui/tabs.js +75 -73
  133. package/dist/components/ui/tabs.js.map +1 -0
  134. package/dist/contexts/i18n.d.ts +1 -2
  135. package/dist/contexts/i18n.js +12 -1
  136. package/dist/contexts/i18n.js.map +1 -0
  137. package/dist/contexts/search.d.ts +7 -1
  138. package/dist/contexts/search.d.ts.map +1 -1
  139. package/dist/contexts/search.js +12 -1
  140. package/dist/contexts/search.js.map +1 -0
  141. package/dist/contexts/tree.d.ts +1 -2
  142. package/dist/contexts/tree.js +12 -1
  143. package/dist/contexts/tree.js.map +1 -0
  144. package/dist/i18n.d.ts +1 -2
  145. package/dist/i18n.js +3 -1
  146. package/dist/layouts/docs/client.d.ts +30 -13
  147. package/dist/layouts/docs/client.d.ts.map +1 -1
  148. package/dist/layouts/docs/client.js +61 -34
  149. package/dist/layouts/docs/client.js.map +1 -0
  150. package/dist/layouts/docs/index.d.ts +55 -32
  151. package/dist/layouts/docs/index.d.ts.map +1 -1
  152. package/dist/layouts/docs/index.js +177 -68
  153. package/dist/layouts/docs/index.js.map +1 -0
  154. package/dist/layouts/docs/page/client.d.ts +43 -21
  155. package/dist/layouts/docs/page/client.d.ts.map +1 -1
  156. package/dist/layouts/docs/page/client.js +213 -105
  157. package/dist/layouts/docs/page/client.js.map +1 -0
  158. package/dist/layouts/docs/page/index.d.ts +82 -46
  159. package/dist/layouts/docs/page/index.d.ts.map +1 -1
  160. package/dist/layouts/docs/page/index.js +98 -45
  161. package/dist/layouts/docs/page/index.js.map +1 -0
  162. package/dist/layouts/docs/sidebar.d.ts +62 -20
  163. package/dist/layouts/docs/sidebar.d.ts.map +1 -1
  164. package/dist/layouts/docs/sidebar.js +145 -91
  165. package/dist/layouts/docs/sidebar.js.map +1 -0
  166. package/dist/layouts/home/client.d.ts +18 -5
  167. package/dist/layouts/home/client.d.ts.map +1 -1
  168. package/dist/layouts/home/client.js +273 -126
  169. package/dist/layouts/home/client.js.map +1 -0
  170. package/dist/layouts/home/index.d.ts +10 -5
  171. package/dist/layouts/home/index.d.ts.map +1 -1
  172. package/dist/layouts/home/index.js +24 -7
  173. package/dist/layouts/home/index.js.map +1 -0
  174. package/dist/layouts/home/navbar.d.ts +19 -6
  175. package/dist/layouts/home/navbar.d.ts.map +1 -1
  176. package/dist/layouts/home/navbar.js +31 -12
  177. package/dist/layouts/home/navbar.js.map +1 -0
  178. package/dist/layouts/notebook/client.d.ts +44 -20
  179. package/dist/layouts/notebook/client.d.ts.map +1 -1
  180. package/dist/layouts/notebook/client.js +148 -93
  181. package/dist/layouts/notebook/client.js.map +1 -0
  182. package/dist/layouts/notebook/index.d.ts +34 -30
  183. package/dist/layouts/notebook/index.d.ts.map +1 -1
  184. package/dist/layouts/notebook/index.js +216 -90
  185. package/dist/layouts/notebook/index.js.map +1 -0
  186. package/dist/layouts/notebook/page/client.d.ts +43 -21
  187. package/dist/layouts/notebook/page/client.d.ts.map +1 -1
  188. package/dist/layouts/notebook/page/client.js +213 -105
  189. package/dist/layouts/notebook/page/client.js.map +1 -0
  190. package/dist/layouts/notebook/page/index.d.ts +82 -46
  191. package/dist/layouts/notebook/page/index.d.ts.map +1 -1
  192. package/dist/layouts/notebook/page/index.js +98 -45
  193. package/dist/layouts/notebook/page/index.js.map +1 -0
  194. package/dist/layouts/notebook/sidebar.d.ts +58 -16
  195. package/dist/layouts/notebook/sidebar.d.ts.map +1 -1
  196. package/dist/layouts/notebook/sidebar.js +121 -79
  197. package/dist/layouts/notebook/sidebar.js.map +1 -0
  198. package/dist/layouts/shared/index.d.ts +62 -50
  199. package/dist/layouts/shared/index.d.ts.map +1 -1
  200. package/dist/layouts/shared/index.js +36 -20
  201. package/dist/layouts/shared/index.js.map +1 -0
  202. package/dist/layouts/shared/language-toggle.d.ts +9 -4
  203. package/dist/layouts/shared/language-toggle.d.ts.map +1 -1
  204. package/dist/layouts/shared/language-toggle.js +44 -21
  205. package/dist/layouts/shared/language-toggle.js.map +1 -0
  206. package/dist/layouts/shared/search-toggle.d.ts +20 -8
  207. package/dist/layouts/shared/search-toggle.d.ts.map +1 -1
  208. package/dist/layouts/shared/search-toggle.js +53 -24
  209. package/dist/layouts/shared/search-toggle.js.map +1 -0
  210. package/dist/layouts/shared/theme-toggle.d.ts +13 -4
  211. package/dist/layouts/shared/theme-toggle.d.ts.map +1 -1
  212. package/dist/layouts/shared/theme-toggle.js +58 -34
  213. package/dist/layouts/shared/theme-toggle.js.map +1 -0
  214. package/dist/mdx.d.ts +34 -29
  215. package/dist/mdx.d.ts.map +1 -1
  216. package/dist/mdx.js +68 -34
  217. package/dist/mdx.js.map +1 -0
  218. package/dist/mdx.server.d.ts +9 -5
  219. package/dist/mdx.server.d.ts.map +1 -1
  220. package/dist/mdx.server.js +21 -13
  221. package/dist/mdx.server.js.map +1 -0
  222. package/dist/og.d.ts +1 -2
  223. package/dist/og.js +3 -1
  224. package/dist/page.d.ts +30 -20
  225. package/dist/page.d.ts.map +1 -1
  226. package/dist/page.js +34 -18
  227. package/dist/page.js.map +1 -0
  228. package/dist/provider/base.d.ts +44 -34
  229. package/dist/provider/base.d.ts.map +1 -1
  230. package/dist/provider/base.js +37 -17
  231. package/dist/provider/base.js.map +1 -0
  232. package/dist/provider/next.d.ts +20 -12
  233. package/dist/provider/next.d.ts.map +1 -1
  234. package/dist/provider/next.js +19 -5
  235. package/dist/provider/next.js.map +1 -0
  236. package/dist/provider/react-router.d.ts +20 -12
  237. package/dist/provider/react-router.d.ts.map +1 -1
  238. package/dist/provider/react-router.js +19 -5
  239. package/dist/provider/react-router.js.map +1 -0
  240. package/dist/provider/tanstack.d.ts +20 -12
  241. package/dist/provider/tanstack.d.ts.map +1 -1
  242. package/dist/provider/tanstack.js +19 -5
  243. package/dist/provider/tanstack.js.map +1 -0
  244. package/dist/provider/waku.d.ts +20 -12
  245. package/dist/provider/waku.d.ts.map +1 -1
  246. package/dist/provider/waku.js +19 -5
  247. package/dist/provider/waku.js.map +1 -0
  248. package/dist/style.css +15 -9
  249. package/dist/utils/use-copy-button.d.ts +1 -2
  250. package/dist/utils/use-copy-button.js +3 -1
  251. package/dist/utils/use-footer-items.d.ts +1 -2
  252. package/dist/utils/use-footer-items.js +3 -1
  253. package/dist/utils/use-is-scroll-top.d.ts +1 -2
  254. package/dist/utils/use-is-scroll-top.js +3 -1
  255. package/package.json +47 -48
  256. package/dist/components/toc/clerk.d.ts.map +0 -1
  257. package/dist/components/toc/default.d.ts.map +0 -1
  258. package/dist/components/toc/index.d.ts.map +0 -1
  259. package/dist/contexts/i18n.d.ts.map +0 -1
  260. package/dist/contexts/tree.d.ts.map +0 -1
  261. package/dist/i18n.d.ts.map +0 -1
  262. package/dist/og.d.ts.map +0 -1
  263. package/dist/utils/use-copy-button.d.ts.map +0 -1
  264. package/dist/utils/use-footer-items.d.ts.map +0 -1
  265. package/dist/utils/use-is-scroll-top.d.ts.map +0 -1
@@ -1,51 +1,104 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { cn } from '@fumadocs/ui/cn';
3
- import { buttonVariants } from '../../../components/ui/button.js';
4
- import { Edit, Text } from '@fumadocs/ui/icons';
5
- import { I18nLabel } from '../../../contexts/i18n.js';
6
- import { PageBreadcrumb, PageFooter, PageTOCPopover, PageTOCPopoverContent, PageTOCPopoverTrigger, } from './client.js';
7
- import * as TocDefault from '../../../components/toc/default.js';
8
- import * as TocClerk from '../../../components/toc/clerk.js';
9
- import { TOCProvider, TOCScrollArea } from '../../../components/toc/index.js';
10
- export function DocsPage({ breadcrumb: { enabled: breadcrumbEnabled = true, component: breadcrumb, ...breadcrumbProps } = {}, footer = {}, full = false, tableOfContentPopover: { enabled: tocPopoverEnabled, component: tocPopover, ...tocPopoverOptions } = {}, tableOfContent: { enabled: tocEnabled, component: tocReplace, ...tocOptions } = {}, toc = [], children, }) {
11
- // disable TOC on full mode, you can still enable it with `enabled` option.
12
- tocEnabled ?? (tocEnabled = !full &&
13
- (toc.length > 0 ||
14
- tocOptions.footer !== undefined ||
15
- tocOptions.header !== undefined));
16
- tocPopoverEnabled ?? (tocPopoverEnabled = toc.length > 0 ||
17
- tocPopoverOptions.header !== undefined ||
18
- tocPopoverOptions.footer !== undefined);
19
- let wrapper = (children) => children;
20
- if (tocEnabled || tocPopoverEnabled) {
21
- wrapper = (children) => (_jsx(TOCProvider, { single: tocOptions.single, toc: toc, children: children }));
22
- }
23
- return wrapper(_jsxs(_Fragment, { children: [tocPopoverEnabled &&
24
- (tocPopover ?? (_jsxs(PageTOCPopover, { children: [_jsx(PageTOCPopoverTrigger, {}), _jsxs(PageTOCPopoverContent, { children: [tocPopoverOptions.header, _jsx(TOCScrollArea, { children: tocPopoverOptions.style === 'clerk' ? (_jsx(TocClerk.TOCItems, {})) : (_jsx(TocDefault.TOCItems, {})) }), tocPopoverOptions.footer] })] }))), _jsxs("article", { id: "nd-page", "data-full": full, className: cn('flex flex-col [grid-area:main] px-4 py-6 gap-4 md:px-6 md:pt-8 xl:px-8 xl:pt-14 *:max-w-[900px]', full && '*:max-w-[1285px]'), children: [breadcrumbEnabled &&
25
- (breadcrumb ?? _jsx(PageBreadcrumb, { ...breadcrumbProps })), children, footer.enabled !== false &&
26
- (footer.component ?? _jsx(PageFooter, { items: footer.items }))] }), tocEnabled &&
27
- (tocReplace ?? (_jsxs("div", { id: "nd-toc", className: "sticky top-(--fd-docs-row-3) [grid-area:toc] h-[calc(var(--fd-docs-height)-var(--fd-docs-row-3))] flex flex-col w-(--fd-toc-width) pt-12 pe-4 pb-2 xl:layout:[--fd-toc-width:268px] max-xl:hidden", children: [tocOptions.header, _jsxs("h3", { id: "toc-title", className: "inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground", children: [_jsx(Text, { className: "size-4" }), _jsx(I18nLabel, { label: "toc" })] }), _jsx(TOCScrollArea, { children: tocOptions.style === 'clerk' ? (_jsx(TocClerk.TOCItems, {})) : (_jsx(TocDefault.TOCItems, {})) }), tocOptions.footer] })))] }));
1
+ import { __exportAll } from "../../../_virtual/rolldown_runtime.js";
2
+ import { buttonVariants } from "../../../components/ui/button.js";
3
+ import { i18n_exports } from "../../../contexts/i18n.js";
4
+ import { toc_exports } from "../../../components/toc/index.js";
5
+ import { default_exports } from "../../../components/toc/default.js";
6
+ import { clerk_exports } from "../../../components/toc/clerk.js";
7
+ import { PageBreadcrumb, PageFooter, PageLastUpdate, PageTOCPopover, PageTOCPopoverContent, PageTOCPopoverTrigger } from "./client.js";
8
+ import { cn } from "@fumadocs/ui/cn";
9
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
+ import { Edit, Text } from "lucide-react";
11
+
12
+ //#region src/layouts/notebook/page/index.tsx
13
+ var page_exports = /* @__PURE__ */ __exportAll({
14
+ DocsBody: () => DocsBody,
15
+ DocsDescription: () => DocsDescription,
16
+ DocsPage: () => DocsPage,
17
+ DocsTitle: () => DocsTitle,
18
+ EditOnGitHub: () => EditOnGitHub,
19
+ PageBreadcrumb: () => PageBreadcrumb,
20
+ PageLastUpdate: () => PageLastUpdate
21
+ });
22
+ function DocsPage({ breadcrumb: { enabled: breadcrumbEnabled = true, component: breadcrumb, ...breadcrumbProps } = {}, footer = {}, full = false, tableOfContentPopover: { enabled: tocPopoverEnabled, component: tocPopover, ...tocPopoverOptions } = {}, tableOfContent: { enabled: tocEnabled, component: tocReplace, ...tocOptions } = {}, toc = [], children }) {
23
+ tocEnabled ??= !full && (toc.length > 0 || tocOptions.footer !== void 0 || tocOptions.header !== void 0);
24
+ tocPopoverEnabled ??= toc.length > 0 || tocPopoverOptions.header !== void 0 || tocPopoverOptions.footer !== void 0;
25
+ let wrapper = (children$1) => children$1;
26
+ if (tocEnabled || tocPopoverEnabled) wrapper = (children$1) => /* @__PURE__ */ jsx(toc_exports.TOCProvider, {
27
+ single: tocOptions.single,
28
+ toc,
29
+ children: children$1
30
+ });
31
+ return wrapper(/* @__PURE__ */ jsxs(Fragment, { children: [
32
+ tocPopoverEnabled && (tocPopover ?? /* @__PURE__ */ jsxs(PageTOCPopover, { children: [/* @__PURE__ */ jsx(PageTOCPopoverTrigger, {}), /* @__PURE__ */ jsxs(PageTOCPopoverContent, { children: [
33
+ tocPopoverOptions.header,
34
+ /* @__PURE__ */ jsx(toc_exports.TOCScrollArea, { children: tocPopoverOptions.style === "clerk" ? /* @__PURE__ */ jsx(clerk_exports.TOCItems, {}) : /* @__PURE__ */ jsx(default_exports.TOCItems, {}) }),
35
+ tocPopoverOptions.footer
36
+ ] })] })),
37
+ /* @__PURE__ */ jsxs("article", {
38
+ id: "nd-page",
39
+ "data-full": full,
40
+ className: cn("flex flex-col [grid-area:main] px-4 py-6 gap-4 md:px-6 md:pt-8 xl:px-8 xl:pt-14 *:max-w-[900px]", full && "*:max-w-[1285px]"),
41
+ children: [
42
+ breadcrumbEnabled && (breadcrumb ?? /* @__PURE__ */ jsx(PageBreadcrumb, { ...breadcrumbProps })),
43
+ children,
44
+ footer.enabled !== false && (footer.component ?? /* @__PURE__ */ jsx(PageFooter, { items: footer.items }))
45
+ ]
46
+ }),
47
+ tocEnabled && (tocReplace ?? /* @__PURE__ */ jsxs("div", {
48
+ id: "nd-toc",
49
+ className: "sticky top-(--fd-docs-row-3) [grid-area:toc] h-[calc(var(--fd-docs-height)-var(--fd-docs-row-3))] flex flex-col w-(--fd-toc-width) pt-12 pe-4 pb-2 xl:layout:[--fd-toc-width:268px] max-xl:hidden",
50
+ children: [
51
+ tocOptions.header,
52
+ /* @__PURE__ */ jsxs("h3", {
53
+ id: "toc-title",
54
+ className: "inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground",
55
+ children: [/* @__PURE__ */ jsx(Text, { className: "size-4" }), /* @__PURE__ */ jsx(i18n_exports.I18nLabel, { label: "toc" })]
56
+ }),
57
+ /* @__PURE__ */ jsx(toc_exports.TOCScrollArea, { children: tocOptions.style === "clerk" ? /* @__PURE__ */ jsx(clerk_exports.TOCItems, {}) : /* @__PURE__ */ jsx(default_exports.TOCItems, {}) }),
58
+ tocOptions.footer
59
+ ]
60
+ }))
61
+ ] }));
28
62
  }
29
- export function EditOnGitHub(props) {
30
- return (_jsx("a", { target: "_blank", rel: "noreferrer noopener", ...props, className: cn(buttonVariants({
31
- color: 'secondary',
32
- size: 'sm',
33
- className: 'gap-1.5 not-prose',
34
- }), props.className), children: props.children ?? (_jsxs(_Fragment, { children: [_jsx(Edit, { className: "size-3.5" }), _jsx(I18nLabel, { label: "editOnGithub" })] })) }));
63
+ function EditOnGitHub(props) {
64
+ return /* @__PURE__ */ jsx("a", {
65
+ target: "_blank",
66
+ rel: "noreferrer noopener",
67
+ ...props,
68
+ className: cn(buttonVariants({
69
+ color: "secondary",
70
+ size: "sm",
71
+ className: "gap-1.5 not-prose"
72
+ }), props.className),
73
+ children: props.children ?? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Edit, { className: "size-3.5" }), /* @__PURE__ */ jsx(i18n_exports.I18nLabel, { label: "editOnGithub" })] })
74
+ });
35
75
  }
36
76
  /**
37
- * Add typography styles
38
- */
39
- export function DocsBody({ children, className, ...props }) {
40
- return (_jsx("div", { ...props, className: cn('prose flex-1', className), children: children }));
77
+ * Add typography styles
78
+ */
79
+ function DocsBody({ children, className, ...props }) {
80
+ return /* @__PURE__ */ jsx("div", {
81
+ ...props,
82
+ className: cn("prose flex-1", className),
83
+ children
84
+ });
41
85
  }
42
- export function DocsDescription({ children, className, ...props }) {
43
- // Don't render if no description provided
44
- if (children === undefined)
45
- return null;
46
- return (_jsx("p", { ...props, className: cn('mb-8 text-lg text-fd-muted-foreground', className), children: children }));
86
+ function DocsDescription({ children, className, ...props }) {
87
+ if (children === void 0) return null;
88
+ return /* @__PURE__ */ jsx("p", {
89
+ ...props,
90
+ className: cn("mb-8 text-lg text-fd-muted-foreground", className),
91
+ children
92
+ });
47
93
  }
48
- export function DocsTitle({ children, className, ...props }) {
49
- return (_jsx("h1", { ...props, className: cn('text-[1.75em] font-semibold', className), children: children }));
94
+ function DocsTitle({ children, className, ...props }) {
95
+ return /* @__PURE__ */ jsx("h1", {
96
+ ...props,
97
+ className: cn("text-[1.75em] font-semibold", className),
98
+ children
99
+ });
50
100
  }
51
- export { PageLastUpdate, PageBreadcrumb } from './client.js';
101
+
102
+ //#endregion
103
+ export { DocsBody, DocsDescription, DocsPage, DocsTitle, EditOnGitHub, PageBreadcrumb, PageLastUpdate, page_exports };
104
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["children","TOCProvider","TOCScrollArea","TocClerk","TocDefault","I18nLabel"],"sources":["../../../../src/layouts/notebook/page/index.tsx"],"sourcesContent":["import type { ComponentProps, ReactNode } from 'react';\nimport { cn } from '@fumadocs/ui/cn';\nimport { buttonVariants } from '@/components/ui/button';\nimport { Edit, Text } from 'lucide-react';\nimport { I18nLabel } from '@/contexts/i18n';\nimport {\n type BreadcrumbProps,\n type FooterProps,\n PageBreadcrumb,\n PageFooter,\n PageTOCPopover,\n PageTOCPopoverContent,\n PageTOCPopoverTrigger,\n} from './client';\nimport type { AnchorProviderProps, TOCItemType } from 'fumadocs-core/toc';\nimport * as TocDefault from '@/components/toc/default';\nimport * as TocClerk from '@/components/toc/clerk';\nimport { TOCProvider, TOCScrollArea } from '@/components/toc';\n\ninterface BreadcrumbOptions extends BreadcrumbProps {\n enabled: boolean;\n component: ReactNode;\n}\n\ninterface FooterOptions extends FooterProps {\n enabled: boolean;\n component: ReactNode;\n}\n\nexport interface DocsPageProps {\n toc?: TOCItemType[];\n tableOfContent?: Partial<TableOfContentOptions>;\n tableOfContentPopover?: Partial<TableOfContentPopoverOptions>;\n\n /**\n * Extend the page to fill all available space\n *\n * @defaultValue false\n */\n full?: boolean;\n\n /**\n * Replace or disable breadcrumb\n */\n breadcrumb?: Partial<BreadcrumbOptions>;\n\n /**\n * Footer navigation, you can disable it by passing `false`\n */\n footer?: Partial<FooterOptions>;\n\n children?: ReactNode;\n}\n\ntype TableOfContentOptions = Pick<AnchorProviderProps, 'single'> & {\n /**\n * Custom content in TOC container, before the main TOC\n */\n header?: ReactNode;\n\n /**\n * Custom content in TOC container, after the main TOC\n */\n footer?: ReactNode;\n\n enabled: boolean;\n component: ReactNode;\n\n /**\n * @defaultValue 'normal'\n */\n style?: 'normal' | 'clerk';\n};\n\ntype TableOfContentPopoverOptions = Omit<TableOfContentOptions, 'single'>;\n\nexport function DocsPage({\n breadcrumb: { enabled: breadcrumbEnabled = true, component: breadcrumb, ...breadcrumbProps } = {},\n footer = {},\n full = false,\n tableOfContentPopover: {\n enabled: tocPopoverEnabled,\n component: tocPopover,\n ...tocPopoverOptions\n } = {},\n tableOfContent: { enabled: tocEnabled, component: tocReplace, ...tocOptions } = {},\n toc = [],\n children,\n}: DocsPageProps) {\n // disable TOC on full mode, you can still enable it with `enabled` option.\n tocEnabled ??=\n !full && (toc.length > 0 || tocOptions.footer !== undefined || tocOptions.header !== undefined);\n\n tocPopoverEnabled ??=\n toc.length > 0 ||\n tocPopoverOptions.header !== undefined ||\n tocPopoverOptions.footer !== undefined;\n\n let wrapper = (children: ReactNode) => children;\n\n if (tocEnabled || tocPopoverEnabled) {\n wrapper = (children) => (\n <TOCProvider single={tocOptions.single} toc={toc}>\n {children}\n </TOCProvider>\n );\n }\n\n return wrapper(\n <>\n {tocPopoverEnabled &&\n (tocPopover ?? (\n <PageTOCPopover>\n <PageTOCPopoverTrigger />\n <PageTOCPopoverContent>\n {tocPopoverOptions.header}\n <TOCScrollArea>\n {tocPopoverOptions.style === 'clerk' ? (\n <TocClerk.TOCItems />\n ) : (\n <TocDefault.TOCItems />\n )}\n </TOCScrollArea>\n {tocPopoverOptions.footer}\n </PageTOCPopoverContent>\n </PageTOCPopover>\n ))}\n <article\n id=\"nd-page\"\n data-full={full}\n className={cn(\n 'flex flex-col [grid-area:main] px-4 py-6 gap-4 md:px-6 md:pt-8 xl:px-8 xl:pt-14 *:max-w-[900px]',\n full && '*:max-w-[1285px]',\n )}\n >\n {breadcrumbEnabled && (breadcrumb ?? <PageBreadcrumb {...breadcrumbProps} />)}\n {children}\n {footer.enabled !== false && (footer.component ?? <PageFooter items={footer.items} />)}\n </article>\n {tocEnabled &&\n (tocReplace ?? (\n <div\n id=\"nd-toc\"\n className=\"sticky top-(--fd-docs-row-3) [grid-area:toc] h-[calc(var(--fd-docs-height)-var(--fd-docs-row-3))] flex flex-col w-(--fd-toc-width) pt-12 pe-4 pb-2 xl:layout:[--fd-toc-width:268px] max-xl:hidden\"\n >\n {tocOptions.header}\n <h3\n id=\"toc-title\"\n className=\"inline-flex items-center gap-1.5 text-sm text-fd-muted-foreground\"\n >\n <Text className=\"size-4\" />\n <I18nLabel label=\"toc\" />\n </h3>\n <TOCScrollArea>\n {tocOptions.style === 'clerk' ? <TocClerk.TOCItems /> : <TocDefault.TOCItems />}\n </TOCScrollArea>\n {tocOptions.footer}\n </div>\n ))}\n </>,\n );\n}\n\nexport function EditOnGitHub(props: ComponentProps<'a'>) {\n return (\n <a\n target=\"_blank\"\n rel=\"noreferrer noopener\"\n {...props}\n className={cn(\n buttonVariants({\n color: 'secondary',\n size: 'sm',\n className: 'gap-1.5 not-prose',\n }),\n props.className,\n )}\n >\n {props.children ?? (\n <>\n <Edit className=\"size-3.5\" />\n <I18nLabel label=\"editOnGithub\" />\n </>\n )}\n </a>\n );\n}\n\n/**\n * Add typography styles\n */\nexport function DocsBody({ children, className, ...props }: ComponentProps<'div'>) {\n return (\n <div {...props} className={cn('prose flex-1', className)}>\n {children}\n </div>\n );\n}\n\nexport function DocsDescription({ children, className, ...props }: ComponentProps<'p'>) {\n // Don't render if no description provided\n if (children === undefined) return null;\n\n return (\n <p {...props} className={cn('mb-8 text-lg text-fd-muted-foreground', className)}>\n {children}\n </p>\n );\n}\n\nexport function DocsTitle({ children, className, ...props }: ComponentProps<'h1'>) {\n return (\n <h1 {...props} className={cn('text-[1.75em] font-semibold', className)}>\n {children}\n </h1>\n );\n}\n\nexport { PageLastUpdate, PageBreadcrumb } from './client';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA4EA,SAAgB,SAAS,EACvB,YAAY,EAAE,SAAS,oBAAoB,MAAM,WAAW,YAAY,GAAG,oBAAoB,EAAE,EACjG,SAAS,EAAE,EACX,OAAO,OACP,uBAAuB,EACrB,SAAS,mBACT,WAAW,YACX,GAAG,sBACD,EAAE,EACN,gBAAgB,EAAE,SAAS,YAAY,WAAW,YAAY,GAAG,eAAe,EAAE,EAClF,MAAM,EAAE,EACR,YACgB;AAEhB,gBACE,CAAC,SAAS,IAAI,SAAS,KAAK,WAAW,WAAW,UAAa,WAAW,WAAW;AAEvF,uBACE,IAAI,SAAS,KACb,kBAAkB,WAAW,UAC7B,kBAAkB,WAAW;CAE/B,IAAI,WAAW,eAAwBA;AAEvC,KAAI,cAAc,kBAChB,YAAW,eACT,oBAACC;EAAY,QAAQ,WAAW;EAAa;YAC1CD;GACW;AAIlB,QAAO,QACL;EACG,sBACE,cACC,qBAAC,6BACC,oBAAC,0BAAwB,EACzB,qBAAC;GACE,kBAAkB;GACnB,oBAACE,uCACE,kBAAkB,UAAU,UAC3B,oBAACC,cAAS,aAAW,GAErB,oBAACC,gBAAW,aAAW,GAEX;GACf,kBAAkB;MACG,IACT;EAErB,qBAAC;GACC,IAAG;GACH,aAAW;GACX,WAAW,GACT,mGACA,QAAQ,mBACT;;IAEA,sBAAsB,cAAc,oBAAC,kBAAe,GAAI,kBAAmB;IAC3E;IACA,OAAO,YAAY,UAAU,OAAO,aAAa,oBAAC,cAAW,OAAO,OAAO,QAAS;;IAC7E;EACT,eACE,cACC,qBAAC;GACC,IAAG;GACH,WAAU;;IAET,WAAW;IACZ,qBAAC;KACC,IAAG;KACH,WAAU;gBAEV,oBAAC,QAAK,WAAU,WAAW,EAC3B,oBAACC,0BAAU,OAAM,QAAQ;MACtB;IACL,oBAACH,uCACE,WAAW,UAAU,UAAU,oBAACC,cAAS,aAAW,GAAG,oBAACC,gBAAW,aAAW,GACjE;IACf,WAAW;;IACR;KAET,CACJ;;AAGH,SAAgB,aAAa,OAA4B;AACvD,QACE,oBAAC;EACC,QAAO;EACP,KAAI;EACJ,GAAI;EACJ,WAAW,GACT,eAAe;GACb,OAAO;GACP,MAAM;GACN,WAAW;GACZ,CAAC,EACF,MAAM,UACP;YAEA,MAAM,YACL,4CACE,oBAAC,QAAK,WAAU,aAAa,EAC7B,oBAACC,0BAAU,OAAM,iBAAiB,IACjC;GAEH;;;;;AAOR,SAAgB,SAAS,EAAE,UAAU,WAAW,GAAG,SAAgC;AACjF,QACE,oBAAC;EAAI,GAAI;EAAO,WAAW,GAAG,gBAAgB,UAAU;EACrD;GACG;;AAIV,SAAgB,gBAAgB,EAAE,UAAU,WAAW,GAAG,SAA8B;AAEtF,KAAI,aAAa,OAAW,QAAO;AAEnC,QACE,oBAAC;EAAE,GAAI;EAAO,WAAW,GAAG,yCAAyC,UAAU;EAC5E;GACC;;AAIR,SAAgB,UAAU,EAAE,UAAU,WAAW,GAAG,SAA+B;AACjF,QACE,oBAAC;EAAG,GAAI;EAAO,WAAW,GAAG,+BAA+B,UAAU;EACnE;GACE"}
@@ -1,17 +1,59 @@
1
- import * as Base from '../../components/sidebar/base.js';
2
- import { type ComponentProps } from 'react';
3
- export declare const Sidebar: typeof Base.SidebarProvider, SidebarFolder: typeof Base.SidebarFolder, SidebarCollapseTrigger: typeof Base.SidebarCollapseTrigger, SidebarViewport: typeof Base.SidebarViewport, SidebarTrigger: typeof Base.SidebarTrigger;
4
- export declare function SidebarContent({ ref: refProp, className, children, ...props }: ComponentProps<'aside'>): import("react/jsx-runtime").JSX.Element;
5
- export declare function SidebarDrawer({ children, className, ...props }: ComponentProps<typeof Base.SidebarDrawerContent>): import("react/jsx-runtime").JSX.Element;
6
- export declare function SidebarSeparator({ className, style, children, ...props }: ComponentProps<'p'>): import("react/jsx-runtime").JSX.Element;
7
- export declare function SidebarItem({ className, style, children, ...props }: ComponentProps<typeof Base.SidebarItem>): import("react/jsx-runtime").JSX.Element;
8
- export declare function SidebarFolderTrigger({ className, style, ...props }: ComponentProps<typeof Base.SidebarFolderTrigger>): import("react/jsx-runtime").JSX.Element;
9
- export declare function SidebarFolderLink({ className, style, ...props }: ComponentProps<typeof Base.SidebarFolderLink>): import("react/jsx-runtime").JSX.Element;
10
- export declare function SidebarFolderContent({ className, children, ...props }: ComponentProps<typeof Base.SidebarFolderContent>): import("react/jsx-runtime").JSX.Element;
11
- export declare const SidebarPageTree: (components: Partial<import("../../components/sidebar/page-tree.js").SidebarPageTreeComponents>) => import("react/jsx-runtime").JSX.Element;
12
- export declare const SidebarLinkItem: ({ item, ...props }: import("react").HTMLAttributes<HTMLElement> & {
13
- item: Exclude<import("@fumadocs/ui/link-item").LinkItemType, {
14
- type: "icon";
15
- }>;
16
- }) => import("react/jsx-runtime").JSX.Element;
1
+ import { SidebarCollapseTrigger as SidebarCollapseTrigger$1, SidebarDrawerContent, SidebarFolder as SidebarFolder$1, SidebarFolderContent as SidebarFolderContent$1, SidebarFolderLink as SidebarFolderLink$1, SidebarFolderTrigger as SidebarFolderTrigger$1, SidebarItem as SidebarItem$1, SidebarProvider, SidebarTrigger as SidebarTrigger$1, SidebarViewport as SidebarViewport$1 } from "../../components/sidebar/base.js";
2
+ import { SidebarPageTreeComponents } from "../../components/sidebar/page-tree.js";
3
+ import * as react_jsx_runtime69 from "react/jsx-runtime";
4
+ import * as react10 from "react";
5
+ import { ComponentProps } from "react";
6
+ import * as _fumadocs_ui_link_item0 from "@fumadocs/ui/link-item";
7
+
8
+ //#region src/layouts/notebook/sidebar.d.ts
9
+ declare const Sidebar: typeof SidebarProvider, SidebarFolder: typeof SidebarFolder$1, SidebarCollapseTrigger: typeof SidebarCollapseTrigger$1, SidebarViewport: typeof SidebarViewport$1, SidebarTrigger: typeof SidebarTrigger$1;
10
+ declare function SidebarContent({
11
+ ref: refProp,
12
+ className,
13
+ children,
14
+ ...props
15
+ }: ComponentProps<'aside'>): react_jsx_runtime69.JSX.Element;
16
+ declare function SidebarDrawer({
17
+ children,
18
+ className,
19
+ ...props
20
+ }: ComponentProps<typeof SidebarDrawerContent>): react_jsx_runtime69.JSX.Element;
21
+ declare function SidebarSeparator({
22
+ className,
23
+ style,
24
+ children,
25
+ ...props
26
+ }: ComponentProps<'p'>): react_jsx_runtime69.JSX.Element;
27
+ declare function SidebarItem({
28
+ className,
29
+ style,
30
+ children,
31
+ ...props
32
+ }: ComponentProps<typeof SidebarItem$1>): react_jsx_runtime69.JSX.Element;
33
+ declare function SidebarFolderTrigger({
34
+ className,
35
+ style,
36
+ ...props
37
+ }: ComponentProps<typeof SidebarFolderTrigger$1>): react_jsx_runtime69.JSX.Element;
38
+ declare function SidebarFolderLink({
39
+ className,
40
+ style,
41
+ ...props
42
+ }: ComponentProps<typeof SidebarFolderLink$1>): react_jsx_runtime69.JSX.Element;
43
+ declare function SidebarFolderContent({
44
+ className,
45
+ children,
46
+ ...props
47
+ }: ComponentProps<typeof SidebarFolderContent$1>): react_jsx_runtime69.JSX.Element;
48
+ declare const SidebarPageTree: (components: Partial<SidebarPageTreeComponents>) => react_jsx_runtime69.JSX.Element;
49
+ declare const SidebarLinkItem: ({
50
+ item,
51
+ ...props
52
+ }: react10.HTMLAttributes<HTMLElement> & {
53
+ item: Exclude<_fumadocs_ui_link_item0.LinkItemType, {
54
+ type: "icon";
55
+ }>;
56
+ }) => react_jsx_runtime69.JSX.Element;
57
+ //#endregion
58
+ export { Sidebar, SidebarCollapseTrigger, SidebarContent, SidebarDrawer, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarLinkItem, SidebarPageTree, SidebarSeparator, SidebarTrigger, SidebarViewport };
17
59
  //# sourceMappingURL=sidebar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../src/layouts/notebook/sidebar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,KAAK,cAAc,EAAe,MAAM,OAAO,CAAC;AA2BzD,eAAO,MACY,OAAO,+BACxB,aAAa,6BACb,sBAAsB,sCACtB,eAAe,+BACf,cAAc,4BACR,CAAC;AAET,wBAAgB,cAAc,CAAC,EAC7B,GAAG,EAAE,OAAO,EACZ,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,CAAC,2CAgDzB;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,oBAAoB,CAAC,2CAelD;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,GAAG,CAAC,2CAerB;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,2CAkBzC;AAED,wBAAgB,oBAAoB,CAAC,EACnC,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,oBAAoB,CAAC,2CAqBlD;AAED,wBAAgB,iBAAiB,CAAC,EAChC,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,2CAmB/C;AAED,wBAAgB,oBAAoB,CAAC,EACnC,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,IAAI,CAAC,oBAAoB,CAAC,2CAkBlD;AACD,eAAO,MAAM,eAAe,sIAO1B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;6CAM1B,CAAC"}
1
+ {"version":3,"file":"sidebar.d.ts","names":[],"sources":["../../../src/layouts/notebook/sidebar.tsx"],"sourcesContent":[],"mappings":";;;;;;;;cA+BmB,gBAAO,uCACX,gDACS,kDACP,0CACD;iBAGA,cAAA;OACT;;;;GAIJ,0BAAuB,mBAAA,CAAA,GAAA,CAAA;iBA+CV,aAAA;;;;GAIb,sBAAsB,wBAA0B,mBAAA,CAAA,GAAA,CAAA;iBAiBnC,gBAAA;;;;;GAA2D,sBAAmB,mBAAA,CAAA,GAAA,CAAA;iBAiB9E,WAAA;;;;;GAKb,sBAAsB,iBAAiB,mBAAA,CAAA,GAAA,CAAA;iBAiB1B,oBAAA;;;;GAIb,sBAAsB,0BAA0B,mBAAA,CAAA,GAAA,CAAA;AA3HhC,iBAkJH,iBAAA,CAlJU;EAAA,SAAA;EAAA,KAAA;EAAA,GAAA;AAAA,CAAA,EAsJvB,cAtJuB,CAAA,OAsJD,mBAtJC,CAAA,CAAA,EAsJsB,mBAAA,CAAA,GAAA,CAAA,OAtJtB;AAAA,iBAuKV,oBAAA,CAvKU;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;AAAA,CAAA,EA2KvB,cA3KuB,CAAA,OA2KD,sBA3KC,CAAA,CAAA,EA2KyB,mBAAA,CAAA,GAAA,CAAA,OA3KzB;AACX,cA6LF,eA7LE,EAAA,CAAA,UAAA,EA6La,OA7Lb,CAoMb,yBAAA,CApMa,EAAA,GA6La,mBAAA,CAAA,GAAA,CAAA,OA7Lb;AACS,cAqMX,eArMW,EAAA,CAAA;EAAA,IAAA;EAAA,GAAA;CAAA,EAqMI,OAAA,CAAA,cArMJ,CAqMI,WArMJ,CAAA,GAAA;EACP,IAAA,SAAA,CAoMW,uBAAA,CAAA,YAAA,EApMX;IACD,IAAA,EAAA,MAAA;EACR,CAAA,CAAA;qCAJN"}
@@ -1,91 +1,133 @@
1
1
  'use client';
2
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
- import * as Base from '../../components/sidebar/base.js';
4
- import { cn } from '@fumadocs/ui/cn';
5
- import { use, useRef } from 'react';
6
- import { cva } from 'class-variance-authority';
7
- import { LayoutContext } from './client.js';
8
- import { createPageTreeRenderer } from '../../components/sidebar/page-tree.js';
9
- import { createLinkItemRenderer } from '../../components/sidebar/link-item.js';
10
- import { mergeRefs } from '@fumadocs/ui/merge-refs';
11
- const itemVariants = cva('relative flex flex-row items-center gap-2 rounded-lg p-2 text-start text-fd-muted-foreground wrap-anywhere [&_svg]:size-4 [&_svg]:shrink-0', {
12
- variants: {
13
- variant: {
14
- link: 'transition-colors hover:bg-fd-accent/50 hover:text-fd-accent-foreground/80 hover:transition-none data-[active=true]:bg-fd-primary/10 data-[active=true]:text-fd-primary data-[active=true]:hover:transition-colors',
15
- button: 'transition-colors hover:bg-fd-accent/50 hover:text-fd-accent-foreground/80 hover:transition-none',
16
- },
17
- highlight: {
18
- true: "data-[active=true]:before:content-[''] data-[active=true]:before:bg-fd-primary data-[active=true]:before:absolute data-[active=true]:before:w-px data-[active=true]:before:inset-y-2.5 data-[active=true]:before:start-2.5",
19
- },
20
- },
21
- });
2
+
3
+ import { SidebarContent as SidebarContent$1, SidebarDrawerContent, SidebarDrawerOverlay, SidebarFolderContent as SidebarFolderContent$1, SidebarFolderLink as SidebarFolderLink$1, SidebarFolderTrigger as SidebarFolderTrigger$1, SidebarItem as SidebarItem$1, SidebarSeparator as SidebarSeparator$1, base_exports, useFolder, useFolderDepth } from "../../components/sidebar/base.js";
4
+ import { LayoutContext } from "./client.js";
5
+ import { createLinkItemRenderer } from "../../components/sidebar/link-item.js";
6
+ import { createPageTreeRenderer } from "../../components/sidebar/page-tree.js";
7
+ import { cn } from "@fumadocs/ui/cn";
8
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
+ import { use, useRef } from "react";
10
+ import { cva } from "class-variance-authority";
11
+ import { mergeRefs } from "@fumadocs/ui/merge-refs";
12
+
13
+ //#region src/layouts/notebook/sidebar.tsx
14
+ const itemVariants = cva("relative flex flex-row items-center gap-2 rounded-lg p-2 text-start text-fd-muted-foreground wrap-anywhere [&_svg]:size-4 [&_svg]:shrink-0", { variants: {
15
+ variant: {
16
+ link: "transition-colors hover:bg-fd-accent/50 hover:text-fd-accent-foreground/80 hover:transition-none data-[active=true]:bg-fd-primary/10 data-[active=true]:text-fd-primary data-[active=true]:hover:transition-colors",
17
+ button: "transition-colors hover:bg-fd-accent/50 hover:text-fd-accent-foreground/80 hover:transition-none"
18
+ },
19
+ highlight: { true: "data-[active=true]:before:content-[''] data-[active=true]:before:bg-fd-primary data-[active=true]:before:absolute data-[active=true]:before:w-px data-[active=true]:before:inset-y-2.5 data-[active=true]:before:start-2.5" }
20
+ } });
22
21
  function getItemOffset(depth) {
23
- return `calc(${2 + 3 * depth} * var(--spacing))`;
22
+ return `calc(${2 + 3 * depth} * var(--spacing))`;
24
23
  }
25
- export const { SidebarProvider: Sidebar, SidebarFolder, SidebarCollapseTrigger, SidebarViewport, SidebarTrigger, } = Base;
26
- export function SidebarContent({ ref: refProp, className, children, ...props }) {
27
- const { navMode } = use(LayoutContext);
28
- const ref = useRef(null);
29
- return (_jsx(Base.SidebarContent, { children: ({ collapsed, hovered, ref: asideRef, ...rest }) => (_jsxs("div", { "data-sidebar-placeholder": "", className: cn('sticky z-20 [grid-area:sidebar] pointer-events-none *:pointer-events-auto md:layout:[--fd-sidebar-width:268px] max-md:hidden', navMode === 'auto'
30
- ? 'top-(--fd-docs-row-1) h-[calc(var(--fd-docs-height)-var(--fd-docs-row-1))]'
31
- : 'top-(--fd-docs-row-2) h-[calc(var(--fd-docs-height)-var(--fd-docs-row-2))]'), children: [collapsed && (_jsx("div", { className: "absolute start-0 inset-y-0 w-4", ...rest })), _jsx("aside", { id: "nd-sidebar", ref: mergeRefs(ref, refProp, asideRef), "data-collapsed": collapsed, "data-hovered": collapsed && hovered, className: cn('absolute flex flex-col w-full start-0 inset-y-0 items-end text-sm duration-250 *:w-(--fd-sidebar-width)', navMode === 'auto' && 'bg-fd-card border-e', collapsed && [
32
- 'inset-y-2 rounded-xl bg-fd-card transition-transform border w-(--fd-sidebar-width)',
33
- hovered
34
- ? 'shadow-lg translate-x-2 rtl:-translate-x-2'
35
- : '-translate-x-(--fd-sidebar-width) rtl:translate-x-full',
36
- ], ref.current &&
37
- (ref.current.getAttribute('data-collapsed') === 'true') !==
38
- collapsed &&
39
- 'transition-[width,inset-block,translate,background-color]', className), ...props, ...rest, children: children })] })) }));
24
+ const { SidebarProvider: Sidebar, SidebarFolder, SidebarCollapseTrigger, SidebarViewport, SidebarTrigger } = base_exports;
25
+ function SidebarContent({ ref: refProp, className, children, ...props }) {
26
+ const { navMode } = use(LayoutContext);
27
+ const ref = useRef(null);
28
+ return /* @__PURE__ */ jsx(SidebarContent$1, { children: ({ collapsed, hovered, ref: asideRef, ...rest }) => /* @__PURE__ */ jsxs("div", {
29
+ "data-sidebar-placeholder": "",
30
+ className: cn("sticky z-20 [grid-area:sidebar] pointer-events-none *:pointer-events-auto md:layout:[--fd-sidebar-width:268px] max-md:hidden", navMode === "auto" ? "top-(--fd-docs-row-1) h-[calc(var(--fd-docs-height)-var(--fd-docs-row-1))]" : "top-(--fd-docs-row-2) h-[calc(var(--fd-docs-height)-var(--fd-docs-row-2))]"),
31
+ children: [collapsed && /* @__PURE__ */ jsx("div", {
32
+ className: "absolute start-0 inset-y-0 w-4",
33
+ ...rest
34
+ }), /* @__PURE__ */ jsx("aside", {
35
+ id: "nd-sidebar",
36
+ ref: mergeRefs(ref, refProp, asideRef),
37
+ "data-collapsed": collapsed,
38
+ "data-hovered": collapsed && hovered,
39
+ className: cn("absolute flex flex-col w-full start-0 inset-y-0 items-end text-sm duration-250 *:w-(--fd-sidebar-width)", navMode === "auto" && "bg-fd-card border-e", collapsed && ["inset-y-2 rounded-xl bg-fd-card transition-transform border w-(--fd-sidebar-width)", hovered ? "shadow-lg translate-x-2 rtl:-translate-x-2" : "-translate-x-(--fd-sidebar-width) rtl:translate-x-full"], ref.current && ref.current.getAttribute("data-collapsed") === "true" !== collapsed && "transition-[width,inset-block,translate,background-color]", className),
40
+ ...props,
41
+ ...rest,
42
+ children
43
+ })]
44
+ }) });
40
45
  }
41
- export function SidebarDrawer({ children, className, ...props }) {
42
- return (_jsxs(_Fragment, { children: [_jsx(Base.SidebarDrawerOverlay, { className: "fixed z-40 inset-0 backdrop-blur-xs data-[state=open]:animate-fd-fade-in data-[state=closed]:animate-fd-fade-out" }), _jsx(Base.SidebarDrawerContent, { className: cn('fixed text-[0.9375rem] flex flex-col shadow-lg border-s end-0 inset-y-0 w-[85%] max-w-[380px] z-40 bg-fd-background data-[state=open]:animate-fd-sidebar-in data-[state=closed]:animate-fd-sidebar-out', className), ...props, children: children })] }));
46
+ function SidebarDrawer({ children, className, ...props }) {
47
+ return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(SidebarDrawerOverlay, { className: "fixed z-40 inset-0 backdrop-blur-xs data-[state=open]:animate-fd-fade-in data-[state=closed]:animate-fd-fade-out" }), /* @__PURE__ */ jsx(SidebarDrawerContent, {
48
+ className: cn("fixed text-[0.9375rem] flex flex-col shadow-lg border-s end-0 inset-y-0 w-[85%] max-w-[380px] z-40 bg-fd-background data-[state=open]:animate-fd-sidebar-in data-[state=closed]:animate-fd-sidebar-out", className),
49
+ ...props,
50
+ children
51
+ })] });
43
52
  }
44
- export function SidebarSeparator({ className, style, children, ...props }) {
45
- const depth = Base.useFolderDepth();
46
- return (_jsx(Base.SidebarSeparator, { className: cn('[&_svg]:size-4 [&_svg]:shrink-0', className), style: {
47
- paddingInlineStart: getItemOffset(depth),
48
- ...style,
49
- }, ...props, children: children }));
53
+ function SidebarSeparator({ className, style, children, ...props }) {
54
+ const depth = useFolderDepth();
55
+ return /* @__PURE__ */ jsx(SidebarSeparator$1, {
56
+ className: cn("[&_svg]:size-4 [&_svg]:shrink-0", className),
57
+ style: {
58
+ paddingInlineStart: getItemOffset(depth),
59
+ ...style
60
+ },
61
+ ...props,
62
+ children
63
+ });
50
64
  }
51
- export function SidebarItem({ className, style, children, ...props }) {
52
- const depth = Base.useFolderDepth();
53
- return (_jsx(Base.SidebarItem, { className: cn(itemVariants({ variant: 'link', highlight: depth >= 1 }), className), style: {
54
- paddingInlineStart: getItemOffset(depth),
55
- ...style,
56
- }, ...props, children: children }));
65
+ function SidebarItem({ className, style, children, ...props }) {
66
+ const depth = useFolderDepth();
67
+ return /* @__PURE__ */ jsx(SidebarItem$1, {
68
+ className: cn(itemVariants({
69
+ variant: "link",
70
+ highlight: depth >= 1
71
+ }), className),
72
+ style: {
73
+ paddingInlineStart: getItemOffset(depth),
74
+ ...style
75
+ },
76
+ ...props,
77
+ children
78
+ });
57
79
  }
58
- export function SidebarFolderTrigger({ className, style, ...props }) {
59
- const { depth, collapsible } = Base.useFolder();
60
- return (_jsx(Base.SidebarFolderTrigger, { className: (s) => cn(itemVariants({ variant: collapsible ? 'button' : null }), 'w-full', typeof className === 'function' ? className(s) : className), style: {
61
- paddingInlineStart: getItemOffset(depth - 1),
62
- ...style,
63
- }, ...props, children: props.children }));
80
+ function SidebarFolderTrigger({ className, style, ...props }) {
81
+ const { depth, collapsible } = useFolder();
82
+ return /* @__PURE__ */ jsx(SidebarFolderTrigger$1, {
83
+ className: (s) => cn(itemVariants({ variant: collapsible ? "button" : null }), "w-full", typeof className === "function" ? className(s) : className),
84
+ style: {
85
+ paddingInlineStart: getItemOffset(depth - 1),
86
+ ...style
87
+ },
88
+ ...props,
89
+ children: props.children
90
+ });
64
91
  }
65
- export function SidebarFolderLink({ className, style, ...props }) {
66
- const depth = Base.useFolderDepth();
67
- return (_jsx(Base.SidebarFolderLink, { className: cn(itemVariants({ variant: 'link', highlight: depth > 1 }), 'w-full', className), style: {
68
- paddingInlineStart: getItemOffset(depth - 1),
69
- ...style,
70
- }, ...props, children: props.children }));
92
+ function SidebarFolderLink({ className, style, ...props }) {
93
+ const depth = useFolderDepth();
94
+ return /* @__PURE__ */ jsx(SidebarFolderLink$1, {
95
+ className: cn(itemVariants({
96
+ variant: "link",
97
+ highlight: depth > 1
98
+ }), "w-full", className),
99
+ style: {
100
+ paddingInlineStart: getItemOffset(depth - 1),
101
+ ...style
102
+ },
103
+ ...props,
104
+ children: props.children
105
+ });
71
106
  }
72
- export function SidebarFolderContent({ className, children, ...props }) {
73
- const depth = Base.useFolderDepth();
74
- return (_jsx(Base.SidebarFolderContent, { className: (s) => cn('relative', depth === 1 &&
75
- "before:content-[''] before:absolute before:w-px before:inset-y-1 before:bg-fd-border before:start-2.5", typeof className === 'function' ? className(s) : className), ...props, children: children }));
107
+ function SidebarFolderContent({ className, children, ...props }) {
108
+ const depth = useFolderDepth();
109
+ return /* @__PURE__ */ jsx(SidebarFolderContent$1, {
110
+ className: (s) => cn("relative", depth === 1 && "before:content-[''] before:absolute before:w-px before:inset-y-1 before:bg-fd-border before:start-2.5", typeof className === "function" ? className(s) : className),
111
+ ...props,
112
+ children
113
+ });
76
114
  }
77
- export const SidebarPageTree = createPageTreeRenderer({
78
- SidebarFolder,
79
- SidebarFolderContent,
80
- SidebarFolderLink,
81
- SidebarFolderTrigger,
82
- SidebarItem,
83
- SidebarSeparator,
115
+ const SidebarPageTree = createPageTreeRenderer({
116
+ SidebarFolder,
117
+ SidebarFolderContent,
118
+ SidebarFolderLink,
119
+ SidebarFolderTrigger,
120
+ SidebarItem,
121
+ SidebarSeparator
84
122
  });
85
- export const SidebarLinkItem = createLinkItemRenderer({
86
- SidebarFolder,
87
- SidebarFolderContent,
88
- SidebarFolderLink,
89
- SidebarFolderTrigger,
90
- SidebarItem,
123
+ const SidebarLinkItem = createLinkItemRenderer({
124
+ SidebarFolder,
125
+ SidebarFolderContent,
126
+ SidebarFolderLink,
127
+ SidebarFolderTrigger,
128
+ SidebarItem
91
129
  });
130
+
131
+ //#endregion
132
+ export { Sidebar, SidebarCollapseTrigger, SidebarContent, SidebarDrawer, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarLinkItem, SidebarPageTree, SidebarSeparator, SidebarTrigger, SidebarViewport };
133
+ //# sourceMappingURL=sidebar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sidebar.js","names":["Base","Base.SidebarContent","Base.SidebarDrawerOverlay","Base.SidebarDrawerContent","Base.useFolderDepth","Base.SidebarSeparator","Base.SidebarItem","Base.useFolder","Base.SidebarFolderTrigger","Base.SidebarFolderLink","Base.SidebarFolderContent"],"sources":["../../../src/layouts/notebook/sidebar.tsx"],"sourcesContent":["'use client';\nimport * as Base from '@/components/sidebar/base';\nimport { cn } from '@fumadocs/ui/cn';\nimport { type ComponentProps, use, useRef } from 'react';\nimport { cva } from 'class-variance-authority';\nimport { LayoutContext } from './client';\nimport { createPageTreeRenderer } from '@/components/sidebar/page-tree';\nimport { createLinkItemRenderer } from '@/components/sidebar/link-item';\nimport { mergeRefs } from '@fumadocs/ui/merge-refs';\n\nconst itemVariants = cva(\n 'relative flex flex-row items-center gap-2 rounded-lg p-2 text-start text-fd-muted-foreground wrap-anywhere [&_svg]:size-4 [&_svg]:shrink-0',\n {\n variants: {\n variant: {\n link: 'transition-colors hover:bg-fd-accent/50 hover:text-fd-accent-foreground/80 hover:transition-none data-[active=true]:bg-fd-primary/10 data-[active=true]:text-fd-primary data-[active=true]:hover:transition-colors',\n button:\n 'transition-colors hover:bg-fd-accent/50 hover:text-fd-accent-foreground/80 hover:transition-none',\n },\n highlight: {\n true: \"data-[active=true]:before:content-[''] data-[active=true]:before:bg-fd-primary data-[active=true]:before:absolute data-[active=true]:before:w-px data-[active=true]:before:inset-y-2.5 data-[active=true]:before:start-2.5\",\n },\n },\n },\n);\n\nfunction getItemOffset(depth: number) {\n return `calc(${2 + 3 * depth} * var(--spacing))`;\n}\n\nexport const {\n SidebarProvider: Sidebar,\n SidebarFolder,\n SidebarCollapseTrigger,\n SidebarViewport,\n SidebarTrigger,\n} = Base;\n\nexport function SidebarContent({\n ref: refProp,\n className,\n children,\n ...props\n}: ComponentProps<'aside'>) {\n const { navMode } = use(LayoutContext)!;\n const ref = useRef<HTMLElement>(null);\n\n return (\n <Base.SidebarContent>\n {({ collapsed, hovered, ref: asideRef, ...rest }) => (\n <div\n data-sidebar-placeholder=\"\"\n className={cn(\n 'sticky z-20 [grid-area:sidebar] pointer-events-none *:pointer-events-auto md:layout:[--fd-sidebar-width:268px] max-md:hidden',\n navMode === 'auto'\n ? 'top-(--fd-docs-row-1) h-[calc(var(--fd-docs-height)-var(--fd-docs-row-1))]'\n : 'top-(--fd-docs-row-2) h-[calc(var(--fd-docs-height)-var(--fd-docs-row-2))]',\n )}\n >\n {collapsed && <div className=\"absolute start-0 inset-y-0 w-4\" {...rest} />}\n <aside\n id=\"nd-sidebar\"\n ref={mergeRefs(ref, refProp, asideRef)}\n data-collapsed={collapsed}\n data-hovered={collapsed && hovered}\n className={cn(\n 'absolute flex flex-col w-full start-0 inset-y-0 items-end text-sm duration-250 *:w-(--fd-sidebar-width)',\n navMode === 'auto' && 'bg-fd-card border-e',\n collapsed && [\n 'inset-y-2 rounded-xl bg-fd-card transition-transform border w-(--fd-sidebar-width)',\n hovered\n ? 'shadow-lg translate-x-2 rtl:-translate-x-2'\n : '-translate-x-(--fd-sidebar-width) rtl:translate-x-full',\n ],\n ref.current &&\n (ref.current.getAttribute('data-collapsed') === 'true') !== collapsed &&\n 'transition-[width,inset-block,translate,background-color]',\n className,\n )}\n {...props}\n {...rest}\n >\n {children}\n </aside>\n </div>\n )}\n </Base.SidebarContent>\n );\n}\n\nexport function SidebarDrawer({\n children,\n className,\n ...props\n}: ComponentProps<typeof Base.SidebarDrawerContent>) {\n return (\n <>\n <Base.SidebarDrawerOverlay className=\"fixed z-40 inset-0 backdrop-blur-xs data-[state=open]:animate-fd-fade-in data-[state=closed]:animate-fd-fade-out\" />\n <Base.SidebarDrawerContent\n className={cn(\n 'fixed text-[0.9375rem] flex flex-col shadow-lg border-s end-0 inset-y-0 w-[85%] max-w-[380px] z-40 bg-fd-background data-[state=open]:animate-fd-sidebar-in data-[state=closed]:animate-fd-sidebar-out',\n className,\n )}\n {...props}\n >\n {children}\n </Base.SidebarDrawerContent>\n </>\n );\n}\n\nexport function SidebarSeparator({ className, style, children, ...props }: ComponentProps<'p'>) {\n const depth = Base.useFolderDepth();\n\n return (\n <Base.SidebarSeparator\n className={cn('[&_svg]:size-4 [&_svg]:shrink-0', className)}\n style={{\n paddingInlineStart: getItemOffset(depth),\n ...style,\n }}\n {...props}\n >\n {children}\n </Base.SidebarSeparator>\n );\n}\n\nexport function SidebarItem({\n className,\n style,\n children,\n ...props\n}: ComponentProps<typeof Base.SidebarItem>) {\n const depth = Base.useFolderDepth();\n\n return (\n <Base.SidebarItem\n className={cn(itemVariants({ variant: 'link', highlight: depth >= 1 }), className)}\n style={{\n paddingInlineStart: getItemOffset(depth),\n ...style,\n }}\n {...props}\n >\n {children}\n </Base.SidebarItem>\n );\n}\n\nexport function SidebarFolderTrigger({\n className,\n style,\n ...props\n}: ComponentProps<typeof Base.SidebarFolderTrigger>) {\n const { depth, collapsible } = Base.useFolder()!;\n\n return (\n <Base.SidebarFolderTrigger\n className={(s) =>\n cn(\n itemVariants({ variant: collapsible ? 'button' : null }),\n 'w-full',\n typeof className === 'function' ? className(s) : className,\n )\n }\n style={{\n paddingInlineStart: getItemOffset(depth - 1),\n ...style,\n }}\n {...props}\n >\n {props.children}\n </Base.SidebarFolderTrigger>\n );\n}\n\nexport function SidebarFolderLink({\n className,\n style,\n ...props\n}: ComponentProps<typeof Base.SidebarFolderLink>) {\n const depth = Base.useFolderDepth();\n\n return (\n <Base.SidebarFolderLink\n className={cn(itemVariants({ variant: 'link', highlight: depth > 1 }), 'w-full', className)}\n style={{\n paddingInlineStart: getItemOffset(depth - 1),\n ...style,\n }}\n {...props}\n >\n {props.children}\n </Base.SidebarFolderLink>\n );\n}\n\nexport function SidebarFolderContent({\n className,\n children,\n ...props\n}: ComponentProps<typeof Base.SidebarFolderContent>) {\n const depth = Base.useFolderDepth();\n\n return (\n <Base.SidebarFolderContent\n className={(s) =>\n cn(\n 'relative',\n depth === 1 &&\n \"before:content-[''] before:absolute before:w-px before:inset-y-1 before:bg-fd-border before:start-2.5\",\n typeof className === 'function' ? className(s) : className,\n )\n }\n {...props}\n >\n {children}\n </Base.SidebarFolderContent>\n );\n}\nexport const SidebarPageTree = createPageTreeRenderer({\n SidebarFolder,\n SidebarFolderContent,\n SidebarFolderLink,\n SidebarFolderTrigger,\n SidebarItem,\n SidebarSeparator,\n});\n\nexport const SidebarLinkItem = createLinkItemRenderer({\n SidebarFolder,\n SidebarFolderContent,\n SidebarFolderLink,\n SidebarFolderTrigger,\n SidebarItem,\n});\n"],"mappings":";;;;;;;;;;;;;AAUA,MAAM,eAAe,IACnB,8IACA,EACE,UAAU;CACR,SAAS;EACP,MAAM;EACN,QACE;EACH;CACD,WAAW,EACT,MAAM,8NACP;CACF,EACF,CACF;AAED,SAAS,cAAc,OAAe;AACpC,QAAO,QAAQ,IAAI,IAAI,MAAM;;AAG/B,MAAa,EACX,iBAAiB,SACjB,eACA,wBACA,iBACA,mBACEA;AAEJ,SAAgB,eAAe,EAC7B,KAAK,SACL,WACA,UACA,GAAG,SACuB;CAC1B,MAAM,EAAE,YAAY,IAAI,cAAc;CACtC,MAAM,MAAM,OAAoB,KAAK;AAErC,QACE,oBAACC,+BACG,EAAE,WAAW,SAAS,KAAK,UAAU,GAAG,WACxC,qBAAC;EACC,4BAAyB;EACzB,WAAW,GACT,gIACA,YAAY,SACR,+EACA,6EACL;aAEA,aAAa,oBAAC;GAAI,WAAU;GAAiC,GAAI;IAAQ,EAC1E,oBAAC;GACC,IAAG;GACH,KAAK,UAAU,KAAK,SAAS,SAAS;GACtC,kBAAgB;GAChB,gBAAc,aAAa;GAC3B,WAAW,GACT,2GACA,YAAY,UAAU,uBACtB,aAAa,CACX,sFACA,UACI,+CACA,yDACL,EACD,IAAI,WACD,IAAI,QAAQ,aAAa,iBAAiB,KAAK,WAAY,aAC5D,6DACF,UACD;GACD,GAAI;GACJ,GAAI;GAEH;IACK;GACJ,GAEY;;AAI1B,SAAgB,cAAc,EAC5B,UACA,WACA,GAAG,SACgD;AACnD,QACE,4CACE,oBAACC,wBAA0B,WAAU,qHAAqH,EAC1J,oBAACC;EACC,WAAW,GACT,0MACA,UACD;EACD,GAAI;EAEH;GACyB,IAC3B;;AAIP,SAAgB,iBAAiB,EAAE,WAAW,OAAO,UAAU,GAAG,SAA8B;CAC9F,MAAM,QAAQC,gBAAqB;AAEnC,QACE,oBAACC;EACC,WAAW,GAAG,mCAAmC,UAAU;EAC3D,OAAO;GACL,oBAAoB,cAAc,MAAM;GACxC,GAAG;GACJ;EACD,GAAI;EAEH;GACqB;;AAI5B,SAAgB,YAAY,EAC1B,WACA,OACA,UACA,GAAG,SACuC;CAC1C,MAAM,QAAQD,gBAAqB;AAEnC,QACE,oBAACE;EACC,WAAW,GAAG,aAAa;GAAE,SAAS;GAAQ,WAAW,SAAS;GAAG,CAAC,EAAE,UAAU;EAClF,OAAO;GACL,oBAAoB,cAAc,MAAM;GACxC,GAAG;GACJ;EACD,GAAI;EAEH;GACgB;;AAIvB,SAAgB,qBAAqB,EACnC,WACA,OACA,GAAG,SACgD;CACnD,MAAM,EAAE,OAAO,gBAAgBC,WAAgB;AAE/C,QACE,oBAACC;EACC,YAAY,MACV,GACE,aAAa,EAAE,SAAS,cAAc,WAAW,MAAM,CAAC,EACxD,UACA,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAClD;EAEH,OAAO;GACL,oBAAoB,cAAc,QAAQ,EAAE;GAC5C,GAAG;GACJ;EACD,GAAI;YAEH,MAAM;GACmB;;AAIhC,SAAgB,kBAAkB,EAChC,WACA,OACA,GAAG,SAC6C;CAChD,MAAM,QAAQJ,gBAAqB;AAEnC,QACE,oBAACK;EACC,WAAW,GAAG,aAAa;GAAE,SAAS;GAAQ,WAAW,QAAQ;GAAG,CAAC,EAAE,UAAU,UAAU;EAC3F,OAAO;GACL,oBAAoB,cAAc,QAAQ,EAAE;GAC5C,GAAG;GACJ;EACD,GAAI;YAEH,MAAM;GACgB;;AAI7B,SAAgB,qBAAqB,EACnC,WACA,UACA,GAAG,SACgD;CACnD,MAAM,QAAQL,gBAAqB;AAEnC,QACE,oBAACM;EACC,YAAY,MACV,GACE,YACA,UAAU,KACR,yGACF,OAAO,cAAc,aAAa,UAAU,EAAE,GAAG,UAClD;EAEH,GAAI;EAEH;GACyB;;AAGhC,MAAa,kBAAkB,uBAAuB;CACpD;CACA;CACA;CACA;CACA;CACA;CACD,CAAC;AAEF,MAAa,kBAAkB,uBAAuB;CACpD;CACA;CACA;CACA;CACA;CACD,CAAC"}