@fumadocs/base-ui 16.4.3 → 16.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/css/emerald.css +1 -0
- package/css/ruby.css +1 -0
- package/dist/components/callout.d.ts +5 -5
- package/dist/components/card.d.ts +3 -3
- package/dist/components/codeblock.d.ts +7 -7
- package/dist/components/dialog/search-algolia.d.ts +2 -2
- package/dist/components/dialog/search-algolia.d.ts.map +1 -1
- package/dist/components/dialog/search-default.d.ts +2 -2
- package/dist/components/dialog/search-default.d.ts.map +1 -1
- package/dist/components/dialog/search-orama.d.ts +2 -2
- package/dist/components/dialog/search-orama.d.ts.map +1 -1
- package/dist/components/dialog/search.d.ts +13 -13
- package/dist/components/dynamic-codeblock.d.ts +2 -2
- package/dist/components/github-info.d.ts +2 -2
- package/dist/components/image-zoom.d.ts +2 -2
- package/dist/components/inline-toc.d.ts +2 -2
- package/dist/components/sidebar/base.d.ts +19 -15
- package/dist/components/sidebar/base.d.ts.map +1 -1
- package/dist/components/sidebar/base.js +5 -1
- package/dist/components/sidebar/base.js.map +1 -1
- package/dist/components/sidebar/link-item.d.ts +2 -2
- package/dist/components/sidebar/link-item.d.ts.map +1 -1
- package/dist/components/sidebar/page-tree.d.ts +2 -2
- package/dist/components/sidebar/page-tree.d.ts.map +1 -1
- package/dist/components/sidebar/tabs/dropdown.d.ts +2 -2
- package/dist/components/steps.d.ts +3 -3
- package/dist/components/tabs.d.ts +4 -4
- package/dist/components/type-table.d.ts +2 -2
- package/dist/components/ui/accordion.d.ts +6 -6
- package/dist/components/ui/accordion.d.ts.map +1 -1
- package/dist/components/ui/button.d.ts +1 -1
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/collapsible.d.ts +6 -6
- package/dist/components/ui/collapsible.d.ts.map +1 -1
- package/dist/components/ui/navigation-menu.d.ts +7 -7
- package/dist/components/ui/navigation-menu.d.ts.map +1 -1
- package/dist/components/ui/popover.d.ts +3 -3
- package/dist/components/ui/popover.d.ts.map +1 -1
- package/dist/components/ui/scroll-area.d.ts +4 -4
- package/dist/components/ui/scroll-area.d.ts.map +1 -1
- package/dist/components/ui/tabs.d.ts +7 -7
- package/dist/components/ui/tabs.d.ts.map +1 -1
- package/dist/layouts/docs/client.d.ts +7 -7
- package/dist/layouts/docs/index.d.ts +2 -2
- package/dist/layouts/docs/index.d.ts.map +1 -1
- package/dist/layouts/docs/index.js +3 -3
- package/dist/layouts/docs/page/client.d.ts +9 -7
- package/dist/layouts/docs/page/client.d.ts.map +1 -1
- package/dist/layouts/docs/page/client.js +8 -8
- package/dist/layouts/docs/page/client.js.map +1 -1
- package/dist/layouts/docs/page/index.d.ts +19 -8
- package/dist/layouts/docs/page/index.d.ts.map +1 -1
- package/dist/layouts/docs/page/index.js +3 -3
- package/dist/layouts/docs/page/index.js.map +1 -1
- package/dist/layouts/docs/sidebar.d.ts +2 -2
- package/dist/layouts/home/client.d.ts +2 -2
- package/dist/layouts/home/client.d.ts.map +1 -1
- package/dist/layouts/home/client.js +2 -2
- package/dist/layouts/home/index.d.ts +2 -2
- package/dist/layouts/home/index.d.ts.map +1 -1
- package/dist/layouts/home/navbar.d.ts +7 -7
- package/dist/layouts/notebook/client.d.ts +8 -8
- package/dist/layouts/notebook/index.d.ts +2 -2
- package/dist/layouts/notebook/index.js +3 -3
- package/dist/layouts/notebook/page/client.d.ts +9 -7
- package/dist/layouts/notebook/page/client.d.ts.map +1 -1
- package/dist/layouts/notebook/page/client.js +8 -8
- package/dist/layouts/notebook/page/client.js.map +1 -1
- package/dist/layouts/notebook/page/index.d.ts +19 -8
- package/dist/layouts/notebook/page/index.d.ts.map +1 -1
- package/dist/layouts/notebook/page/index.js +3 -3
- package/dist/layouts/notebook/page/index.js.map +1 -1
- package/dist/layouts/notebook/sidebar.d.ts +12 -12
- package/dist/layouts/notebook/sidebar.d.ts.map +1 -1
- package/dist/layouts/shared/index.d.ts +3 -3
- package/dist/layouts/shared/index.d.ts.map +1 -1
- package/dist/layouts/shared/language-toggle.d.ts +2 -2
- package/dist/layouts/shared/search-toggle.d.ts +3 -3
- package/dist/layouts/shared/theme-toggle.d.ts +2 -2
- package/dist/provider/base.d.ts +2 -2
- package/dist/provider/next.d.ts +2 -2
- package/dist/provider/react-router.d.ts +2 -2
- package/dist/provider/tanstack.d.ts +2 -2
- package/dist/provider/waku.d.ts +2 -2
- package/package.json +4 -4
package/css/emerald.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '@fumadocs/ui/css/colors/emerald.css';
|
package/css/ruby.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '@fumadocs/ui/css/colors/ruby.css';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime26 from "react/jsx-runtime";
|
|
2
2
|
import { ComponentProps, ReactNode } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/callout.d.ts
|
|
@@ -9,7 +9,7 @@ declare function Callout({
|
|
|
9
9
|
...props
|
|
10
10
|
}: {
|
|
11
11
|
title?: ReactNode;
|
|
12
|
-
} & Omit<CalloutContainerProps, 'title'>):
|
|
12
|
+
} & Omit<CalloutContainerProps, 'title'>): react_jsx_runtime26.JSX.Element;
|
|
13
13
|
interface CalloutContainerProps extends ComponentProps<'div'> {
|
|
14
14
|
/**
|
|
15
15
|
* @defaultValue info
|
|
@@ -27,17 +27,17 @@ declare function CalloutContainer({
|
|
|
27
27
|
className,
|
|
28
28
|
style,
|
|
29
29
|
...props
|
|
30
|
-
}: CalloutContainerProps):
|
|
30
|
+
}: CalloutContainerProps): react_jsx_runtime26.JSX.Element;
|
|
31
31
|
declare function CalloutTitle({
|
|
32
32
|
children,
|
|
33
33
|
className,
|
|
34
34
|
...props
|
|
35
|
-
}: ComponentProps<'p'>):
|
|
35
|
+
}: ComponentProps<'p'>): react_jsx_runtime26.JSX.Element;
|
|
36
36
|
declare function CalloutDescription({
|
|
37
37
|
children,
|
|
38
38
|
className,
|
|
39
39
|
...props
|
|
40
|
-
}: ComponentProps<'p'>):
|
|
40
|
+
}: ComponentProps<'p'>): react_jsx_runtime26.JSX.Element;
|
|
41
41
|
//#endregion
|
|
42
42
|
export { Callout, CalloutContainer, CalloutContainerProps, CalloutDescription, CalloutTitle, CalloutType };
|
|
43
43
|
//# sourceMappingURL=callout.d.ts.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime13 from "react/jsx-runtime";
|
|
2
2
|
import { HTMLAttributes, ReactNode } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/card.d.ts
|
|
5
|
-
declare function Cards(props: HTMLAttributes<HTMLDivElement>):
|
|
5
|
+
declare function Cards(props: HTMLAttributes<HTMLDivElement>): react_jsx_runtime13.JSX.Element;
|
|
6
6
|
type CardProps = Omit<HTMLAttributes<HTMLElement>, 'title'> & {
|
|
7
7
|
icon?: ReactNode;
|
|
8
8
|
title: ReactNode;
|
|
@@ -15,7 +15,7 @@ declare function Card({
|
|
|
15
15
|
title,
|
|
16
16
|
description,
|
|
17
17
|
...props
|
|
18
|
-
}: CardProps):
|
|
18
|
+
}: CardProps): react_jsx_runtime13.JSX.Element;
|
|
19
19
|
//#endregion
|
|
20
20
|
export { Card, CardProps, Cards };
|
|
21
21
|
//# sourceMappingURL=card.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Tabs, TabsContent, TabsList, TabsTrigger } from "./ui/tabs.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime30 from "react/jsx-runtime";
|
|
3
3
|
import { ComponentProps, HTMLAttributes, ReactNode } from "react";
|
|
4
4
|
|
|
5
5
|
//#region src/components/codeblock.d.ts
|
|
@@ -36,7 +36,7 @@ interface CodeBlockProps extends ComponentProps<'figure'> {
|
|
|
36
36
|
children?: ReactNode;
|
|
37
37
|
}) => ReactNode;
|
|
38
38
|
}
|
|
39
|
-
declare function Pre(props: ComponentProps<'pre'>):
|
|
39
|
+
declare function Pre(props: ComponentProps<'pre'>): react_jsx_runtime30.JSX.Element;
|
|
40
40
|
declare function CodeBlock({
|
|
41
41
|
ref,
|
|
42
42
|
title,
|
|
@@ -47,22 +47,22 @@ declare function CodeBlock({
|
|
|
47
47
|
children,
|
|
48
48
|
Actions,
|
|
49
49
|
...props
|
|
50
|
-
}: CodeBlockProps):
|
|
50
|
+
}: CodeBlockProps): react_jsx_runtime30.JSX.Element;
|
|
51
51
|
declare function CodeBlockTabs({
|
|
52
52
|
ref,
|
|
53
53
|
className,
|
|
54
54
|
...props
|
|
55
|
-
}: ComponentProps<typeof Tabs>):
|
|
55
|
+
}: ComponentProps<typeof Tabs>): react_jsx_runtime30.JSX.Element;
|
|
56
56
|
declare function CodeBlockTabsList({
|
|
57
57
|
className,
|
|
58
58
|
...props
|
|
59
|
-
}: ComponentProps<typeof TabsList>):
|
|
59
|
+
}: ComponentProps<typeof TabsList>): react_jsx_runtime30.JSX.Element;
|
|
60
60
|
declare function CodeBlockTabsTrigger({
|
|
61
61
|
children,
|
|
62
62
|
className,
|
|
63
63
|
...props
|
|
64
|
-
}: ComponentProps<typeof TabsTrigger>):
|
|
65
|
-
declare function CodeBlockTab(props: ComponentProps<typeof TabsContent>):
|
|
64
|
+
}: ComponentProps<typeof TabsTrigger>): react_jsx_runtime30.JSX.Element;
|
|
65
|
+
declare function CodeBlockTab(props: ComponentProps<typeof TabsContent>): react_jsx_runtime30.JSX.Element;
|
|
66
66
|
//#endregion
|
|
67
67
|
export { CodeBlock, CodeBlockProps, CodeBlockTab, CodeBlockTabs, CodeBlockTabsList, CodeBlockTabsTrigger, Pre };
|
|
68
68
|
//# sourceMappingURL=codeblock.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { search_d_exports } from "../../contexts/search.js";
|
|
2
2
|
import "./search.js";
|
|
3
|
-
import * as
|
|
3
|
+
import * as react_jsx_runtime140 from "react/jsx-runtime";
|
|
4
4
|
import { ReactNode } from "react";
|
|
5
5
|
import { AlgoliaOptions } from "fumadocs-core/search/client";
|
|
6
6
|
|
|
@@ -33,7 +33,7 @@ declare function AlgoliaSearchDialog({
|
|
|
33
33
|
links,
|
|
34
34
|
footer,
|
|
35
35
|
...props
|
|
36
|
-
}: AlgoliaSearchDialogProps):
|
|
36
|
+
}: AlgoliaSearchDialogProps): react_jsx_runtime140.JSX.Element;
|
|
37
37
|
//#endregion
|
|
38
38
|
export { AlgoliaSearchDialogProps, AlgoliaSearchDialog as default };
|
|
39
39
|
//# sourceMappingURL=search-algolia.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-algolia.d.ts","names":[],"sources":["../../../src/components/dialog/search-algolia.tsx"],"sourcesContent":[],"mappings":";;;;;;;UAuBiB,wBAAA,SAAiC,gBAAA,CAAA;iBACjC;UACP,gBAAA,CAAA;EAFO,MAAA,CAAA,EAIN,SAJM;EACA,UAAA,CAAA,EAAA,MAAA;EACP,IAAA,CAAA,EAKD,gBAAA,CAAA,OALC,EAAA;EAEC;;;;AAkBV;EAGC,WAAA,CAAA,EAAA,OAAA;EACA;;;;;EAKA,UAAA,CAAA,EAAA,OAAA;;AAEyB,iBATH,mBAAA,CASG;EAAA,aAAA;EAAA,IAAA;EAAA,UAAA;EAAA,WAAA;EAAA,UAAA;EAAA,KAAA;EAAA,MAAA;EAAA,GAAA;AAAA,CAAA,EAAxB,wBAAwB,CAAA,EAAA,
|
|
1
|
+
{"version":3,"file":"search-algolia.d.ts","names":[],"sources":["../../../src/components/dialog/search-algolia.tsx"],"sourcesContent":[],"mappings":";;;;;;;UAuBiB,wBAAA,SAAiC,gBAAA,CAAA;iBACjC;UACP,gBAAA,CAAA;EAFO,MAAA,CAAA,EAIN,SAJM;EACA,UAAA,CAAA,EAAA,MAAA;EACP,IAAA,CAAA,EAKD,gBAAA,CAAA,OALC,EAAA;EAEC;;;;AAkBV;EAGC,WAAA,CAAA,EAAA,OAAA;EACA;;;;;EAKA,UAAA,CAAA,EAAA,OAAA;;AAEyB,iBATH,mBAAA,CASG;EAAA,aAAA;EAAA,IAAA;EAAA,UAAA;EAAA,WAAA;EAAA,UAAA;EAAA,KAAA;EAAA,MAAA;EAAA,GAAA;AAAA,CAAA,EAAxB,wBAAwB,CAAA,EAAA,oBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { search_d_exports } from "../../contexts/search.js";
|
|
2
2
|
import "./search.js";
|
|
3
|
-
import * as
|
|
3
|
+
import * as react_jsx_runtime137 from "react/jsx-runtime";
|
|
4
4
|
import { ReactNode } from "react";
|
|
5
5
|
|
|
6
6
|
//#region src/components/dialog/search-default.d.ts
|
|
@@ -38,7 +38,7 @@ declare function DefaultSearchDialog({
|
|
|
38
38
|
links,
|
|
39
39
|
footer,
|
|
40
40
|
...props
|
|
41
|
-
}: DefaultSearchDialogProps):
|
|
41
|
+
}: DefaultSearchDialogProps): react_jsx_runtime137.JSX.Element;
|
|
42
42
|
//#endregion
|
|
43
43
|
export { DefaultSearchDialogProps, DefaultSearchDialog as default };
|
|
44
44
|
//# sourceMappingURL=search-default.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-default.d.ts","names":[],"sources":["../../../src/components/dialog/search-default.tsx"],"sourcesContent":[],"mappings":";;;;;;UAuBiB,wBAAA,SAAiC,gBAAA,CAAA;UACxC,gBAAA,CAAA;;AADV;;EASS,IAAA,CAAA,EAAA,OAAA,GAAA,QAAA;EAYE,UAAA,CAAA,EAAA,MAAA;EArBuC,IAAA,CAAA,EASzC,gBAAA,CAAA,OATyC,EAAA;EAAW;AA6B5D;;EAIC,GAAA,CAAA,EAAA,MAAA;EACA;;;EAGA,OAAA,CAAA,EAAA,MAAA;EACA,MAAA,CAAA,EAjBS,SAiBT;EACA;;;;;;;iBARsB,mBAAA;;;;;;;;;;GAUrB,2BAAwB,
|
|
1
|
+
{"version":3,"file":"search-default.d.ts","names":[],"sources":["../../../src/components/dialog/search-default.tsx"],"sourcesContent":[],"mappings":";;;;;;UAuBiB,wBAAA,SAAiC,gBAAA,CAAA;UACxC,gBAAA,CAAA;;AADV;;EASS,IAAA,CAAA,EAAA,OAAA,GAAA,QAAA;EAYE,UAAA,CAAA,EAAA,MAAA;EArBuC,IAAA,CAAA,EASzC,gBAAA,CAAA,OATyC,EAAA;EAAW;AA6B5D;;EAIC,GAAA,CAAA,EAAA,MAAA;EACA;;;EAGA,OAAA,CAAA,EAAA,MAAA;EACA,MAAA,CAAA,EAjBS,SAiBT;EACA;;;;;;;iBARsB,mBAAA;;;;;;;;;;GAUrB,2BAAwB,oBAAA,CAAA,GAAA,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { search_d_exports } from "../../contexts/search.js";
|
|
2
2
|
import "./search.js";
|
|
3
|
-
import * as
|
|
3
|
+
import * as react_jsx_runtime103 from "react/jsx-runtime";
|
|
4
4
|
import { ReactNode } from "react";
|
|
5
5
|
import { OramaCloudOptions } from "fumadocs-core/search/client";
|
|
6
6
|
|
|
@@ -40,7 +40,7 @@ declare function OramaSearchDialog({
|
|
|
40
40
|
footer,
|
|
41
41
|
links,
|
|
42
42
|
...props
|
|
43
|
-
}: OramaSearchDialogProps):
|
|
43
|
+
}: OramaSearchDialogProps): react_jsx_runtime103.JSX.Element;
|
|
44
44
|
//#endregion
|
|
45
45
|
export { OramaSearchDialogProps, OramaSearchDialog as default };
|
|
46
46
|
//# sourceMappingURL=search-orama.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-orama.d.ts","names":[],"sources":["../../../src/components/dialog/search-orama.tsx"],"sourcesContent":[],"mappings":";;;;;;;UAuBiB,sBAAA,SAA+B,gBAAA,CAAA;UACtC,gBAAA,CAAA;UACA;EAFO,aAAA,CAAA,EAGC,iBAHsB,CAAA,QAAA,CAAA;EAC9B,KAAA,CAAA,EAGA,iBAHA,CAAA,OAAA,CAAA;EACA,MAAA,CAAA,EAIC,SAJD;EACQ,UAAA,CAAA,EAAA,MAAA;EACR,IAAA,CAAA,EAKD,gBAAA,CAAA,OALC,EAAA;EAEC;;;;AAkBV;EAMC,SAAA,CAAA,EAAA,OAAA;EACA;;;;;EAKA,UAAA,CAAA,EAAA,OAAA;;;;;AAIuB,iBAXD,iBAAA,CAWC;EAAA,MAAA;EAAA,aAAA;EAAA,IAAA;EAAA,UAAA;EAAA,SAAA;EAAA,UAAA;EAAA,KAAA;EAAA,MAAA;EAAA,KAAA;EAAA,GAAA;AAAA,CAAA,EAAtB,sBAAsB,CAAA,EAAA,
|
|
1
|
+
{"version":3,"file":"search-orama.d.ts","names":[],"sources":["../../../src/components/dialog/search-orama.tsx"],"sourcesContent":[],"mappings":";;;;;;;UAuBiB,sBAAA,SAA+B,gBAAA,CAAA;UACtC,gBAAA,CAAA;UACA;EAFO,aAAA,CAAA,EAGC,iBAHsB,CAAA,QAAA,CAAA;EAC9B,KAAA,CAAA,EAGA,iBAHA,CAAA,OAAA,CAAA;EACA,MAAA,CAAA,EAIC,SAJD;EACQ,UAAA,CAAA,EAAA,MAAA;EACR,IAAA,CAAA,EAKD,gBAAA,CAAA,OALC,EAAA;EAEC;;;;AAkBV;EAMC,SAAA,CAAA,EAAA,OAAA;EACA;;;;;EAKA,UAAA,CAAA,EAAA,OAAA;;;;;AAIuB,iBAXD,iBAAA,CAWC;EAAA,MAAA;EAAA,aAAA;EAAA,IAAA;EAAA,UAAA;EAAA,SAAA;EAAA,UAAA;EAAA,KAAA;EAAA,MAAA;EAAA,KAAA;EAAA,GAAA;AAAA,CAAA,EAAtB,sBAAsB,CAAA,EAAA,oBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { search_d_exports } from "../../contexts/search.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime91 from "react/jsx-runtime";
|
|
3
3
|
import { ComponentProps, ReactNode } from "react";
|
|
4
4
|
import { Dialog } from "@base-ui/react/dialog";
|
|
5
5
|
import { HighlightedText, ReactSortedResult } from "fumadocs-core/search";
|
|
@@ -28,24 +28,24 @@ declare function SearchDialog({
|
|
|
28
28
|
isLoading,
|
|
29
29
|
onSelect: onSelectProp,
|
|
30
30
|
children
|
|
31
|
-
}: SearchDialogProps):
|
|
32
|
-
declare function SearchDialogHeader(props: ComponentProps<'div'>):
|
|
33
|
-
declare function SearchDialogInput(props: ComponentProps<'input'>):
|
|
31
|
+
}: SearchDialogProps): react_jsx_runtime91.JSX.Element;
|
|
32
|
+
declare function SearchDialogHeader(props: ComponentProps<'div'>): react_jsx_runtime91.JSX.Element;
|
|
33
|
+
declare function SearchDialogInput(props: ComponentProps<'input'>): react_jsx_runtime91.JSX.Element;
|
|
34
34
|
declare function SearchDialogClose({
|
|
35
35
|
children,
|
|
36
36
|
className,
|
|
37
37
|
...props
|
|
38
|
-
}: ComponentProps<'button'>):
|
|
39
|
-
declare function SearchDialogFooter(props: ComponentProps<'div'>):
|
|
38
|
+
}: ComponentProps<'button'>): react_jsx_runtime91.JSX.Element;
|
|
39
|
+
declare function SearchDialogFooter(props: ComponentProps<'div'>): react_jsx_runtime91.JSX.Element;
|
|
40
40
|
declare function SearchDialogOverlay({
|
|
41
41
|
className,
|
|
42
42
|
...props
|
|
43
|
-
}: ComponentProps<typeof Dialog.Backdrop>):
|
|
43
|
+
}: ComponentProps<typeof Dialog.Backdrop>): react_jsx_runtime91.JSX.Element;
|
|
44
44
|
declare function SearchDialogContent({
|
|
45
45
|
children,
|
|
46
46
|
className,
|
|
47
47
|
...props
|
|
48
|
-
}: ComponentProps<typeof Dialog.Popup>):
|
|
48
|
+
}: ComponentProps<typeof Dialog.Popup>): react_jsx_runtime91.JSX.Element;
|
|
49
49
|
declare function SearchDialogList({
|
|
50
50
|
items,
|
|
51
51
|
Empty,
|
|
@@ -64,7 +64,7 @@ declare function SearchDialogList({
|
|
|
64
64
|
item: SearchItemType;
|
|
65
65
|
onClick: () => void;
|
|
66
66
|
}) => ReactNode;
|
|
67
|
-
}):
|
|
67
|
+
}): react_jsx_runtime91.JSX.Element;
|
|
68
68
|
declare function SearchDialogListItem({
|
|
69
69
|
item,
|
|
70
70
|
className,
|
|
@@ -74,8 +74,8 @@ declare function SearchDialogListItem({
|
|
|
74
74
|
}: ComponentProps<'button'> & {
|
|
75
75
|
renderHighlights?: typeof renderHighlights;
|
|
76
76
|
item: SearchItemType;
|
|
77
|
-
}):
|
|
78
|
-
declare function SearchDialogIcon(props: ComponentProps<'svg'>):
|
|
77
|
+
}): react_jsx_runtime91.JSX.Element;
|
|
78
|
+
declare function SearchDialogIcon(props: ComponentProps<'svg'>): react_jsx_runtime91.JSX.Element;
|
|
79
79
|
interface TagsListProps extends ComponentProps<'div'> {
|
|
80
80
|
tag?: string;
|
|
81
81
|
onTagChange: (tag: string | undefined) => void;
|
|
@@ -86,14 +86,14 @@ declare function TagsList({
|
|
|
86
86
|
onTagChange,
|
|
87
87
|
allowClear,
|
|
88
88
|
...props
|
|
89
|
-
}: TagsListProps):
|
|
89
|
+
}: TagsListProps): react_jsx_runtime91.JSX.Element;
|
|
90
90
|
declare function TagsListItem({
|
|
91
91
|
value,
|
|
92
92
|
className,
|
|
93
93
|
...props
|
|
94
94
|
}: ComponentProps<'button'> & {
|
|
95
95
|
value: string;
|
|
96
|
-
}):
|
|
96
|
+
}): react_jsx_runtime91.JSX.Element;
|
|
97
97
|
declare function renderHighlights(highlights: HighlightedText<ReactNode>[]): ReactNode;
|
|
98
98
|
declare function useSearch(): {
|
|
99
99
|
open: boolean;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CodeBlockProps } from "./codeblock.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime39 from "react/jsx-runtime";
|
|
3
3
|
import { HighlightOptionsCommon, HighlightOptionsThemes } from "fumadocs-core/highlight";
|
|
4
4
|
|
|
5
5
|
//#region src/components/dynamic-codeblock.d.ts
|
|
@@ -26,7 +26,7 @@ declare function DynamicCodeBlock({
|
|
|
26
26
|
codeblock,
|
|
27
27
|
options,
|
|
28
28
|
wrapInSuspense
|
|
29
|
-
}: DynamicCodeblockProps):
|
|
29
|
+
}: DynamicCodeblockProps): react_jsx_runtime39.JSX.Element;
|
|
30
30
|
//#endregion
|
|
31
31
|
export { DynamicCodeBlock, DynamicCodeblockProps };
|
|
32
32
|
//# sourceMappingURL=dynamic-codeblock.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime36 from "react/jsx-runtime";
|
|
2
2
|
import { AnchorHTMLAttributes } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/github-info.d.ts
|
|
@@ -13,7 +13,7 @@ declare function GithubInfo({
|
|
|
13
13
|
repo: string;
|
|
14
14
|
token?: string;
|
|
15
15
|
baseUrl?: string;
|
|
16
|
-
}): Promise<
|
|
16
|
+
}): Promise<react_jsx_runtime36.JSX.Element>;
|
|
17
17
|
//#endregion
|
|
18
18
|
export { GithubInfo };
|
|
19
19
|
//# sourceMappingURL=github-info.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ImageProps } from "fumadocs-core/framework";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime37 from "react/jsx-runtime";
|
|
3
3
|
import { ComponentProps } from "react";
|
|
4
4
|
import { UncontrolledProps } from "react-medium-image-zoom";
|
|
5
5
|
|
|
@@ -19,7 +19,7 @@ declare function ImageZoom({
|
|
|
19
19
|
children,
|
|
20
20
|
rmiz,
|
|
21
21
|
...props
|
|
22
|
-
}: ImageZoomProps):
|
|
22
|
+
}: ImageZoomProps): react_jsx_runtime37.JSX.Element;
|
|
23
23
|
//#endregion
|
|
24
24
|
export { ImageZoom, ImageZoomProps };
|
|
25
25
|
//# sourceMappingURL=image-zoom.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Collapsible } from "./ui/collapsible.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime38 from "react/jsx-runtime";
|
|
3
3
|
import { ComponentProps } from "react";
|
|
4
4
|
import { TOCItemType } from "fumadocs-core/toc";
|
|
5
5
|
|
|
@@ -11,7 +11,7 @@ declare function InlineTOC({
|
|
|
11
11
|
items,
|
|
12
12
|
className,
|
|
13
13
|
...props
|
|
14
|
-
}: InlineTocProps):
|
|
14
|
+
}: InlineTocProps): react_jsx_runtime38.JSX.Element;
|
|
15
15
|
//#endregion
|
|
16
16
|
export { InlineTOC, InlineTocProps };
|
|
17
17
|
//# sourceMappingURL=inline-toc.d.ts.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { CollapsibleContentProps, CollapsibleTriggerProps } from "../ui/collapsible.js";
|
|
2
2
|
import { ScrollAreaProps } from "../ui/scroll-area.js";
|
|
3
3
|
import { LinkProps } from "fumadocs-core/link";
|
|
4
|
-
import * as
|
|
4
|
+
import * as react_jsx_runtime119 from "react/jsx-runtime";
|
|
5
5
|
import * as react20 from "react";
|
|
6
6
|
import { ComponentProps, PointerEvent, ReactNode, RefObject } from "react";
|
|
7
7
|
|
|
8
8
|
//#region src/components/sidebar/base.d.ts
|
|
9
9
|
declare namespace base_d_exports {
|
|
10
|
-
export { SidebarCollapseTrigger, SidebarContent, SidebarDrawerContent, SidebarDrawerOverlay, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarProvider, SidebarProviderProps, SidebarSeparator, SidebarTrigger, SidebarViewport, useFolder, useFolderDepth, useSidebar };
|
|
10
|
+
export { SidebarCollapseTrigger, SidebarContent, SidebarDrawerContent, SidebarDrawerOverlay, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarProvider, SidebarProviderProps, SidebarSeparator, SidebarTrigger, SidebarViewport, useAutoScroll, useFolder, useFolderDepth, useSidebar };
|
|
11
11
|
}
|
|
12
12
|
interface SidebarContext {
|
|
13
13
|
open: boolean;
|
|
@@ -42,7 +42,7 @@ declare function SidebarProvider({
|
|
|
42
42
|
defaultOpenLevel,
|
|
43
43
|
prefetch,
|
|
44
44
|
children
|
|
45
|
-
}: SidebarProviderProps):
|
|
45
|
+
}: SidebarProviderProps): react_jsx_runtime119.JSX.Element;
|
|
46
46
|
declare function useSidebar(): SidebarContext;
|
|
47
47
|
declare function useFolder(): {
|
|
48
48
|
open: boolean;
|
|
@@ -62,24 +62,24 @@ declare function SidebarContent({
|
|
|
62
62
|
onPointerLeave: (event: PointerEvent) => void;
|
|
63
63
|
}) => ReactNode;
|
|
64
64
|
}): ReactNode;
|
|
65
|
-
declare function SidebarDrawerOverlay(props: ComponentProps<'div'>):
|
|
65
|
+
declare function SidebarDrawerOverlay(props: ComponentProps<'div'>): react_jsx_runtime119.JSX.Element | undefined;
|
|
66
66
|
declare function SidebarDrawerContent({
|
|
67
67
|
className,
|
|
68
68
|
children,
|
|
69
69
|
...props
|
|
70
|
-
}: ComponentProps<'aside'>):
|
|
70
|
+
}: ComponentProps<'aside'>): react_jsx_runtime119.JSX.Element | undefined;
|
|
71
71
|
declare function SidebarViewport({
|
|
72
72
|
className,
|
|
73
73
|
...props
|
|
74
|
-
}: ScrollAreaProps):
|
|
75
|
-
declare function SidebarSeparator(props: ComponentProps<'p'>):
|
|
74
|
+
}: ScrollAreaProps): react_jsx_runtime119.JSX.Element;
|
|
75
|
+
declare function SidebarSeparator(props: ComponentProps<'p'>): react_jsx_runtime119.JSX.Element;
|
|
76
76
|
declare function SidebarItem({
|
|
77
77
|
icon,
|
|
78
78
|
children,
|
|
79
79
|
...props
|
|
80
80
|
}: LinkProps & {
|
|
81
81
|
icon?: ReactNode;
|
|
82
|
-
}):
|
|
82
|
+
}): react_jsx_runtime119.JSX.Element;
|
|
83
83
|
declare function SidebarFolder({
|
|
84
84
|
defaultOpen: defaultOpenProp,
|
|
85
85
|
collapsible,
|
|
@@ -90,21 +90,25 @@ declare function SidebarFolder({
|
|
|
90
90
|
active?: boolean;
|
|
91
91
|
defaultOpen?: boolean;
|
|
92
92
|
collapsible?: boolean;
|
|
93
|
-
}):
|
|
93
|
+
}): react_jsx_runtime119.JSX.Element;
|
|
94
94
|
declare function SidebarFolderTrigger({
|
|
95
95
|
children,
|
|
96
96
|
...props
|
|
97
|
-
}: CollapsibleTriggerProps):
|
|
97
|
+
}: CollapsibleTriggerProps): react_jsx_runtime119.JSX.Element;
|
|
98
98
|
declare function SidebarFolderLink({
|
|
99
99
|
children,
|
|
100
100
|
...props
|
|
101
|
-
}: LinkProps):
|
|
102
|
-
declare function SidebarFolderContent(props: CollapsibleContentProps):
|
|
101
|
+
}: LinkProps): react_jsx_runtime119.JSX.Element;
|
|
102
|
+
declare function SidebarFolderContent(props: CollapsibleContentProps): react_jsx_runtime119.JSX.Element;
|
|
103
103
|
declare function SidebarTrigger({
|
|
104
104
|
children,
|
|
105
105
|
...props
|
|
106
|
-
}: ComponentProps<'button'>):
|
|
107
|
-
declare function SidebarCollapseTrigger(props: ComponentProps<'button'>):
|
|
106
|
+
}: ComponentProps<'button'>): react_jsx_runtime119.JSX.Element;
|
|
107
|
+
declare function SidebarCollapseTrigger(props: ComponentProps<'button'>): react_jsx_runtime119.JSX.Element;
|
|
108
|
+
/**
|
|
109
|
+
* scroll to the element if `active` is true
|
|
110
|
+
*/
|
|
111
|
+
declare function useAutoScroll(active: boolean, ref: RefObject<HTMLElement | null>): void;
|
|
108
112
|
//#endregion
|
|
109
|
-
export { SidebarCollapseTrigger, SidebarContent, SidebarDrawerContent, SidebarDrawerOverlay, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarProvider, SidebarProviderProps, SidebarSeparator, SidebarTrigger, SidebarViewport, base_d_exports, useFolder, useFolderDepth, useSidebar };
|
|
113
|
+
export { SidebarCollapseTrigger, SidebarContent, SidebarDrawerContent, SidebarDrawerOverlay, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarProvider, SidebarProviderProps, SidebarSeparator, SidebarTrigger, SidebarViewport, base_d_exports, useAutoScroll, useFolder, useFolderDepth, useSidebar };
|
|
110
114
|
//# sourceMappingURL=base.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","names":[],"sources":["../../../src/components/sidebar/base.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;UA+BU,cAAA;;WAEC,KAAA,CAAM,SAAS,KAAA,CAAM;;gBAEhB,KAAA,CAAM,SAAS,KAAA,CAAM;;;;mBAKlB;;;QAGX;;UAGS,oBAAA
|
|
1
|
+
{"version":3,"file":"base.d.ts","names":[],"sources":["../../../src/components/sidebar/base.tsx"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -30,6 +30,7 @@ var base_exports = /* @__PURE__ */ __exportAll({
|
|
|
30
30
|
SidebarSeparator: () => SidebarSeparator,
|
|
31
31
|
SidebarTrigger: () => SidebarTrigger,
|
|
32
32
|
SidebarViewport: () => SidebarViewport,
|
|
33
|
+
useAutoScroll: () => useAutoScroll,
|
|
33
34
|
useFolder: () => useFolder,
|
|
34
35
|
useFolderDepth: () => useFolderDepth,
|
|
35
36
|
useSidebar: () => useSidebar
|
|
@@ -265,6 +266,9 @@ function SidebarCollapseTrigger(props) {
|
|
|
265
266
|
children: props.children
|
|
266
267
|
});
|
|
267
268
|
}
|
|
269
|
+
/**
|
|
270
|
+
* scroll to the element if `active` is true
|
|
271
|
+
*/
|
|
268
272
|
function useAutoScroll(active, ref) {
|
|
269
273
|
const { mode } = useSidebar();
|
|
270
274
|
useEffect(() => {
|
|
@@ -280,5 +284,5 @@ function useAutoScroll(active, ref) {
|
|
|
280
284
|
}
|
|
281
285
|
|
|
282
286
|
//#endregion
|
|
283
|
-
export { SidebarCollapseTrigger, SidebarContent, SidebarDrawerContent, SidebarDrawerOverlay, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarProvider, SidebarSeparator, SidebarTrigger, SidebarViewport, base_exports, useFolder, useFolderDepth, useSidebar };
|
|
287
|
+
export { SidebarCollapseTrigger, SidebarContent, SidebarDrawerContent, SidebarDrawerOverlay, SidebarFolder, SidebarFolderContent, SidebarFolderLink, SidebarFolderTrigger, SidebarItem, SidebarProvider, SidebarSeparator, SidebarTrigger, SidebarViewport, base_exports, useAutoScroll, useFolder, useFolderDepth, useSidebar };
|
|
284
288
|
//# sourceMappingURL=base.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","names":["mode: Mode"],"sources":["../../../src/components/sidebar/base.tsx"],"sourcesContent":["'use client';\nimport { ChevronDown, ExternalLink } from 'lucide-react';\nimport {\n type ComponentProps,\n createContext,\n type PointerEvent,\n type ReactNode,\n type RefObject,\n use,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Link, { type LinkProps } from 'fumadocs-core/link';\nimport { useOnChange } from 'fumadocs-core/utils/use-on-change';\nimport { cn } from '@fumadocs/ui/cn';\nimport { ScrollArea, type ScrollAreaProps, ScrollViewport } from '@/components/ui/scroll-area';\nimport { isActive } from '@fumadocs/ui/urls';\nimport {\n Collapsible,\n CollapsibleContent,\n type CollapsibleContentProps,\n CollapsibleTrigger,\n type CollapsibleTriggerProps,\n} from '@/components/ui/collapsible';\nimport { useMediaQuery } from 'fumadocs-core/utils/use-media-query';\nimport scrollIntoView from 'scroll-into-view-if-needed';\nimport { usePathname } from 'fumadocs-core/framework';\nimport ReactDOM from 'react-dom';\n\ninterface SidebarContext {\n open: boolean;\n setOpen: React.Dispatch<React.SetStateAction<boolean>>;\n collapsed: boolean;\n setCollapsed: React.Dispatch<React.SetStateAction<boolean>>;\n\n /**\n * When set to false, don't close the sidebar when navigate to another page\n */\n closeOnRedirect: RefObject<boolean>;\n defaultOpenLevel: number;\n prefetch?: boolean;\n mode: Mode;\n}\n\nexport interface SidebarProviderProps {\n /**\n * Open folders by default if their level is lower or equal to a specific level\n * (Starting from 1)\n *\n * @defaultValue 0\n */\n defaultOpenLevel?: number;\n\n /**\n * Prefetch links, default behaviour depends on your React.js framework.\n */\n prefetch?: boolean;\n\n children?: ReactNode;\n}\n\ntype Mode = 'drawer' | 'full';\n\nconst SidebarContext = createContext<SidebarContext | null>(null);\n\nconst FolderContext = createContext<{\n open: boolean;\n setOpen: React.Dispatch<React.SetStateAction<boolean>>;\n depth: number;\n collapsible: boolean;\n} | null>(null);\n\nexport function SidebarProvider({\n defaultOpenLevel = 0,\n prefetch,\n children,\n}: SidebarProviderProps) {\n const closeOnRedirect = useRef(true);\n const [open, setOpen] = useState(false);\n const [collapsed, setCollapsed] = useState(false);\n const pathname = usePathname();\n const mode: Mode = useMediaQuery('(width < 768px)') ? 'drawer' : 'full';\n\n useOnChange(pathname, () => {\n if (closeOnRedirect.current) {\n setOpen(false);\n }\n closeOnRedirect.current = true;\n });\n\n return (\n <SidebarContext\n value={useMemo(\n () => ({\n open,\n setOpen,\n collapsed,\n setCollapsed,\n closeOnRedirect,\n defaultOpenLevel,\n prefetch,\n mode,\n }),\n [open, collapsed, defaultOpenLevel, prefetch, mode],\n )}\n >\n {children}\n </SidebarContext>\n );\n}\n\nexport function useSidebar(): SidebarContext {\n const ctx = use(SidebarContext);\n if (!ctx)\n throw new Error(\n 'Missing SidebarContext, make sure you have wrapped the component in <DocsLayout /> and the context is available.',\n );\n\n return ctx;\n}\n\nexport function useFolder() {\n return use(FolderContext);\n}\n\nexport function useFolderDepth() {\n return use(FolderContext)?.depth ?? 0;\n}\n\nexport function SidebarContent({\n children,\n}: {\n children: (state: {\n ref: RefObject<HTMLElement | null>;\n collapsed: boolean;\n hovered: boolean;\n onPointerEnter: (event: PointerEvent) => void;\n onPointerLeave: (event: PointerEvent) => void;\n }) => ReactNode;\n}) {\n const { collapsed, mode } = useSidebar();\n const [hover, setHover] = useState(false);\n const ref = useRef<HTMLElement>(null);\n const timerRef = useRef(0);\n\n useOnChange(collapsed, () => {\n if (collapsed) setHover(false);\n });\n\n if (mode !== 'full') return;\n\n function shouldIgnoreHover(e: PointerEvent): boolean {\n const element = ref.current;\n if (!element) return true;\n\n return !collapsed || e.pointerType === 'touch' || element.getAnimations().length > 0;\n }\n\n return children({\n ref,\n collapsed,\n hovered: hover,\n onPointerEnter(e) {\n if (shouldIgnoreHover(e)) return;\n window.clearTimeout(timerRef.current);\n setHover(true);\n },\n onPointerLeave(e) {\n if (shouldIgnoreHover(e)) return;\n window.clearTimeout(timerRef.current);\n\n timerRef.current = window.setTimeout(\n () => setHover(false),\n // if mouse is leaving the viewport, add a close delay\n Math.min(e.clientX, document.body.clientWidth - e.clientX) > 100 ? 0 : 500,\n );\n },\n });\n}\n\nexport function SidebarDrawerOverlay(props: ComponentProps<'div'>) {\n const { open, setOpen, mode } = useSidebar();\n const [hidden, setHidden] = useState(!open);\n\n if (open && hidden) setHidden(false);\n if (mode !== 'drawer' || hidden) return;\n return (\n <div\n data-state={open ? 'open' : 'closed'}\n onClick={() => setOpen(false)}\n onAnimationEnd={() => {\n if (!open) ReactDOM.flushSync(() => setHidden(true));\n }}\n {...props}\n />\n );\n}\n\nexport function SidebarDrawerContent({ className, children, ...props }: ComponentProps<'aside'>) {\n const { open, mode } = useSidebar();\n const [hidden, setHidden] = useState(!open);\n\n if (open && hidden) setHidden(false);\n if (mode !== 'drawer') return;\n return (\n <aside\n id=\"nd-sidebar-mobile\"\n data-state={open ? 'open' : 'closed'}\n className={cn(hidden && 'invisible', className)}\n onAnimationEnd={() => {\n if (!open) ReactDOM.flushSync(() => setHidden(true));\n }}\n {...props}\n >\n {children}\n </aside>\n );\n}\n\nexport function SidebarViewport({ className, ...props }: ScrollAreaProps) {\n return (\n <ScrollArea\n className={(s) =>\n cn('min-h-0 flex-1', typeof className === 'function' ? className(s) : className)\n }\n {...props}\n >\n <ScrollViewport\n className=\"p-4 overscroll-contain\"\n style={\n {\n maskImage:\n 'linear-gradient(to bottom, transparent, white 12px, white calc(100% - 12px), transparent)',\n } as object\n }\n >\n {props.children}\n </ScrollViewport>\n </ScrollArea>\n );\n}\n\nexport function SidebarSeparator(props: ComponentProps<'p'>) {\n const depth = useFolderDepth();\n return (\n <p\n {...props}\n className={cn(\n 'inline-flex items-center gap-2 mb-1.5 px-2 mt-6 empty:mb-0',\n depth === 0 && 'first:mt-0',\n props.className,\n )}\n >\n {props.children}\n </p>\n );\n}\n\nexport function SidebarItem({\n icon,\n children,\n ...props\n}: LinkProps & {\n icon?: ReactNode;\n}) {\n const pathname = usePathname();\n const ref = useRef<HTMLAnchorElement>(null);\n const { prefetch } = useSidebar();\n const active = props.href !== undefined && isActive(props.href, pathname, false);\n\n useAutoScroll(active, ref);\n\n return (\n <Link ref={ref} data-active={active} prefetch={prefetch} {...props}>\n {icon ?? (props.external ? <ExternalLink /> : null)}\n {children}\n </Link>\n );\n}\n\nexport function SidebarFolder({\n defaultOpen: defaultOpenProp,\n collapsible = true,\n active = false,\n children,\n ...props\n}: ComponentProps<'div'> & {\n active?: boolean;\n defaultOpen?: boolean;\n collapsible?: boolean;\n}) {\n const { defaultOpenLevel } = useSidebar();\n const depth = useFolderDepth() + 1;\n const defaultOpen =\n collapsible === false || active || (defaultOpenProp ?? defaultOpenLevel >= depth);\n const [open, setOpen] = useState(defaultOpen);\n\n useOnChange(defaultOpen, (v) => {\n if (v) setOpen(v);\n });\n\n return (\n <Collapsible open={open} onOpenChange={setOpen} disabled={!collapsible} {...props}>\n <FolderContext\n value={useMemo(() => ({ open, setOpen, depth, collapsible }), [collapsible, depth, open])}\n >\n {children}\n </FolderContext>\n </Collapsible>\n );\n}\n\nexport function SidebarFolderTrigger({ children, ...props }: CollapsibleTriggerProps) {\n const { open, collapsible } = use(FolderContext)!;\n\n if (collapsible) {\n return (\n <CollapsibleTrigger {...props}>\n {children}\n <ChevronDown\n data-icon\n className={cn('ms-auto transition-transform', !open && '-rotate-90')}\n />\n </CollapsibleTrigger>\n );\n }\n\n return <div {...(props as ComponentProps<'div'>)}>{children}</div>;\n}\n\nexport function SidebarFolderLink({ children, ...props }: LinkProps) {\n const ref = useRef<HTMLAnchorElement>(null);\n const { open, setOpen, collapsible } = use(FolderContext)!;\n const { prefetch } = useSidebar();\n const pathname = usePathname();\n const active = props.href !== undefined && isActive(props.href, pathname, false);\n\n useAutoScroll(active, ref);\n\n return (\n <Link\n ref={ref}\n data-active={active}\n onClick={(e) => {\n if (!collapsible) return;\n\n if (e.target instanceof Element && e.target.matches('[data-icon], [data-icon] *')) {\n setOpen(!open);\n e.preventDefault();\n } else {\n setOpen(active ? !open : true);\n }\n }}\n prefetch={prefetch}\n {...props}\n >\n {children}\n {collapsible && (\n <ChevronDown\n data-icon\n className={cn('ms-auto transition-transform', !open && '-rotate-90')}\n />\n )}\n </Link>\n );\n}\n\nexport function SidebarFolderContent(props: CollapsibleContentProps) {\n return <CollapsibleContent {...props}>{props.children}</CollapsibleContent>;\n}\n\nexport function SidebarTrigger({ children, ...props }: ComponentProps<'button'>) {\n const { setOpen } = useSidebar();\n\n return (\n <button aria-label=\"Open Sidebar\" onClick={() => setOpen((prev) => !prev)} {...props}>\n {children}\n </button>\n );\n}\n\nexport function SidebarCollapseTrigger(props: ComponentProps<'button'>) {\n const { collapsed, setCollapsed } = useSidebar();\n\n return (\n <button\n type=\"button\"\n aria-label=\"Collapse Sidebar\"\n data-collapsed={collapsed}\n onClick={() => {\n setCollapsed((prev) => !prev);\n }}\n {...props}\n >\n {props.children}\n </button>\n );\n}\n\nfunction useAutoScroll(active: boolean, ref: RefObject<HTMLAnchorElement | null>) {\n const { mode } = useSidebar();\n\n useEffect(() => {\n if (active && ref.current) {\n scrollIntoView(ref.current, {\n boundary: document.getElementById(mode === 'drawer' ? 'nd-sidebar-mobile' : 'nd-sidebar'),\n scrollMode: 'if-needed',\n });\n }\n }, [active, mode, ref]);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base.js","names":["mode: Mode"],"sources":["../../../src/components/sidebar/base.tsx"],"sourcesContent":["'use client';\nimport { ChevronDown, ExternalLink } from 'lucide-react';\nimport {\n type ComponentProps,\n createContext,\n type PointerEvent,\n type ReactNode,\n type RefObject,\n use,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Link, { type LinkProps } from 'fumadocs-core/link';\nimport { useOnChange } from 'fumadocs-core/utils/use-on-change';\nimport { cn } from '@fumadocs/ui/cn';\nimport { ScrollArea, type ScrollAreaProps, ScrollViewport } from '@/components/ui/scroll-area';\nimport { isActive } from '@fumadocs/ui/urls';\nimport {\n Collapsible,\n CollapsibleContent,\n type CollapsibleContentProps,\n CollapsibleTrigger,\n type CollapsibleTriggerProps,\n} from '@/components/ui/collapsible';\nimport { useMediaQuery } from 'fumadocs-core/utils/use-media-query';\nimport scrollIntoView from 'scroll-into-view-if-needed';\nimport { usePathname } from 'fumadocs-core/framework';\nimport ReactDOM from 'react-dom';\n\ninterface SidebarContext {\n open: boolean;\n setOpen: React.Dispatch<React.SetStateAction<boolean>>;\n collapsed: boolean;\n setCollapsed: React.Dispatch<React.SetStateAction<boolean>>;\n\n /**\n * When set to false, don't close the sidebar when navigate to another page\n */\n closeOnRedirect: RefObject<boolean>;\n defaultOpenLevel: number;\n prefetch?: boolean;\n mode: Mode;\n}\n\nexport interface SidebarProviderProps {\n /**\n * Open folders by default if their level is lower or equal to a specific level\n * (Starting from 1)\n *\n * @defaultValue 0\n */\n defaultOpenLevel?: number;\n\n /**\n * Prefetch links, default behaviour depends on your React.js framework.\n */\n prefetch?: boolean;\n\n children?: ReactNode;\n}\n\ntype Mode = 'drawer' | 'full';\n\nconst SidebarContext = createContext<SidebarContext | null>(null);\n\nconst FolderContext = createContext<{\n open: boolean;\n setOpen: React.Dispatch<React.SetStateAction<boolean>>;\n depth: number;\n collapsible: boolean;\n} | null>(null);\n\nexport function SidebarProvider({\n defaultOpenLevel = 0,\n prefetch,\n children,\n}: SidebarProviderProps) {\n const closeOnRedirect = useRef(true);\n const [open, setOpen] = useState(false);\n const [collapsed, setCollapsed] = useState(false);\n const pathname = usePathname();\n const mode: Mode = useMediaQuery('(width < 768px)') ? 'drawer' : 'full';\n\n useOnChange(pathname, () => {\n if (closeOnRedirect.current) {\n setOpen(false);\n }\n closeOnRedirect.current = true;\n });\n\n return (\n <SidebarContext\n value={useMemo(\n () => ({\n open,\n setOpen,\n collapsed,\n setCollapsed,\n closeOnRedirect,\n defaultOpenLevel,\n prefetch,\n mode,\n }),\n [open, collapsed, defaultOpenLevel, prefetch, mode],\n )}\n >\n {children}\n </SidebarContext>\n );\n}\n\nexport function useSidebar(): SidebarContext {\n const ctx = use(SidebarContext);\n if (!ctx)\n throw new Error(\n 'Missing SidebarContext, make sure you have wrapped the component in <DocsLayout /> and the context is available.',\n );\n\n return ctx;\n}\n\nexport function useFolder() {\n return use(FolderContext);\n}\n\nexport function useFolderDepth() {\n return use(FolderContext)?.depth ?? 0;\n}\n\nexport function SidebarContent({\n children,\n}: {\n children: (state: {\n ref: RefObject<HTMLElement | null>;\n collapsed: boolean;\n hovered: boolean;\n onPointerEnter: (event: PointerEvent) => void;\n onPointerLeave: (event: PointerEvent) => void;\n }) => ReactNode;\n}) {\n const { collapsed, mode } = useSidebar();\n const [hover, setHover] = useState(false);\n const ref = useRef<HTMLElement>(null);\n const timerRef = useRef(0);\n\n useOnChange(collapsed, () => {\n if (collapsed) setHover(false);\n });\n\n if (mode !== 'full') return;\n\n function shouldIgnoreHover(e: PointerEvent): boolean {\n const element = ref.current;\n if (!element) return true;\n\n return !collapsed || e.pointerType === 'touch' || element.getAnimations().length > 0;\n }\n\n return children({\n ref,\n collapsed,\n hovered: hover,\n onPointerEnter(e) {\n if (shouldIgnoreHover(e)) return;\n window.clearTimeout(timerRef.current);\n setHover(true);\n },\n onPointerLeave(e) {\n if (shouldIgnoreHover(e)) return;\n window.clearTimeout(timerRef.current);\n\n timerRef.current = window.setTimeout(\n () => setHover(false),\n // if mouse is leaving the viewport, add a close delay\n Math.min(e.clientX, document.body.clientWidth - e.clientX) > 100 ? 0 : 500,\n );\n },\n });\n}\n\nexport function SidebarDrawerOverlay(props: ComponentProps<'div'>) {\n const { open, setOpen, mode } = useSidebar();\n const [hidden, setHidden] = useState(!open);\n\n if (open && hidden) setHidden(false);\n if (mode !== 'drawer' || hidden) return;\n return (\n <div\n data-state={open ? 'open' : 'closed'}\n onClick={() => setOpen(false)}\n onAnimationEnd={() => {\n if (!open) ReactDOM.flushSync(() => setHidden(true));\n }}\n {...props}\n />\n );\n}\n\nexport function SidebarDrawerContent({ className, children, ...props }: ComponentProps<'aside'>) {\n const { open, mode } = useSidebar();\n const [hidden, setHidden] = useState(!open);\n\n if (open && hidden) setHidden(false);\n if (mode !== 'drawer') return;\n return (\n <aside\n id=\"nd-sidebar-mobile\"\n data-state={open ? 'open' : 'closed'}\n className={cn(hidden && 'invisible', className)}\n onAnimationEnd={() => {\n if (!open) ReactDOM.flushSync(() => setHidden(true));\n }}\n {...props}\n >\n {children}\n </aside>\n );\n}\n\nexport function SidebarViewport({ className, ...props }: ScrollAreaProps) {\n return (\n <ScrollArea\n className={(s) =>\n cn('min-h-0 flex-1', typeof className === 'function' ? className(s) : className)\n }\n {...props}\n >\n <ScrollViewport\n className=\"p-4 overscroll-contain\"\n style={\n {\n maskImage:\n 'linear-gradient(to bottom, transparent, white 12px, white calc(100% - 12px), transparent)',\n } as object\n }\n >\n {props.children}\n </ScrollViewport>\n </ScrollArea>\n );\n}\n\nexport function SidebarSeparator(props: ComponentProps<'p'>) {\n const depth = useFolderDepth();\n return (\n <p\n {...props}\n className={cn(\n 'inline-flex items-center gap-2 mb-1.5 px-2 mt-6 empty:mb-0',\n depth === 0 && 'first:mt-0',\n props.className,\n )}\n >\n {props.children}\n </p>\n );\n}\n\nexport function SidebarItem({\n icon,\n children,\n ...props\n}: LinkProps & {\n icon?: ReactNode;\n}) {\n const pathname = usePathname();\n const ref = useRef<HTMLAnchorElement>(null);\n const { prefetch } = useSidebar();\n const active = props.href !== undefined && isActive(props.href, pathname, false);\n\n useAutoScroll(active, ref);\n\n return (\n <Link ref={ref} data-active={active} prefetch={prefetch} {...props}>\n {icon ?? (props.external ? <ExternalLink /> : null)}\n {children}\n </Link>\n );\n}\n\nexport function SidebarFolder({\n defaultOpen: defaultOpenProp,\n collapsible = true,\n active = false,\n children,\n ...props\n}: ComponentProps<'div'> & {\n active?: boolean;\n defaultOpen?: boolean;\n collapsible?: boolean;\n}) {\n const { defaultOpenLevel } = useSidebar();\n const depth = useFolderDepth() + 1;\n const defaultOpen =\n collapsible === false || active || (defaultOpenProp ?? defaultOpenLevel >= depth);\n const [open, setOpen] = useState(defaultOpen);\n\n useOnChange(defaultOpen, (v) => {\n if (v) setOpen(v);\n });\n\n return (\n <Collapsible open={open} onOpenChange={setOpen} disabled={!collapsible} {...props}>\n <FolderContext\n value={useMemo(() => ({ open, setOpen, depth, collapsible }), [collapsible, depth, open])}\n >\n {children}\n </FolderContext>\n </Collapsible>\n );\n}\n\nexport function SidebarFolderTrigger({ children, ...props }: CollapsibleTriggerProps) {\n const { open, collapsible } = use(FolderContext)!;\n\n if (collapsible) {\n return (\n <CollapsibleTrigger {...props}>\n {children}\n <ChevronDown\n data-icon\n className={cn('ms-auto transition-transform', !open && '-rotate-90')}\n />\n </CollapsibleTrigger>\n );\n }\n\n return <div {...(props as ComponentProps<'div'>)}>{children}</div>;\n}\n\nexport function SidebarFolderLink({ children, ...props }: LinkProps) {\n const ref = useRef<HTMLAnchorElement>(null);\n const { open, setOpen, collapsible } = use(FolderContext)!;\n const { prefetch } = useSidebar();\n const pathname = usePathname();\n const active = props.href !== undefined && isActive(props.href, pathname, false);\n\n useAutoScroll(active, ref);\n\n return (\n <Link\n ref={ref}\n data-active={active}\n onClick={(e) => {\n if (!collapsible) return;\n\n if (e.target instanceof Element && e.target.matches('[data-icon], [data-icon] *')) {\n setOpen(!open);\n e.preventDefault();\n } else {\n setOpen(active ? !open : true);\n }\n }}\n prefetch={prefetch}\n {...props}\n >\n {children}\n {collapsible && (\n <ChevronDown\n data-icon\n className={cn('ms-auto transition-transform', !open && '-rotate-90')}\n />\n )}\n </Link>\n );\n}\n\nexport function SidebarFolderContent(props: CollapsibleContentProps) {\n return <CollapsibleContent {...props}>{props.children}</CollapsibleContent>;\n}\n\nexport function SidebarTrigger({ children, ...props }: ComponentProps<'button'>) {\n const { setOpen } = useSidebar();\n\n return (\n <button aria-label=\"Open Sidebar\" onClick={() => setOpen((prev) => !prev)} {...props}>\n {children}\n </button>\n );\n}\n\nexport function SidebarCollapseTrigger(props: ComponentProps<'button'>) {\n const { collapsed, setCollapsed } = useSidebar();\n\n return (\n <button\n type=\"button\"\n aria-label=\"Collapse Sidebar\"\n data-collapsed={collapsed}\n onClick={() => {\n setCollapsed((prev) => !prev);\n }}\n {...props}\n >\n {props.children}\n </button>\n );\n}\n\n/**\n * scroll to the element if `active` is true\n */\nexport function useAutoScroll(active: boolean, ref: RefObject<HTMLElement | null>) {\n const { mode } = useSidebar();\n\n useEffect(() => {\n if (active && ref.current) {\n scrollIntoView(ref.current, {\n boundary: document.getElementById(mode === 'drawer' ? 'nd-sidebar-mobile' : 'nd-sidebar'),\n scrollMode: 'if-needed',\n });\n }\n }, [active, mode, ref]);\n}\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { base_d_exports } from "./base.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime138 from "react/jsx-runtime";
|
|
3
3
|
import { HTMLAttributes } from "react";
|
|
4
4
|
import { LinkItemType } from "@fumadocs/ui/link-item";
|
|
5
5
|
|
|
@@ -18,7 +18,7 @@ declare function createLinkItemRenderer({
|
|
|
18
18
|
item: Exclude<LinkItemType, {
|
|
19
19
|
type: "icon";
|
|
20
20
|
}>;
|
|
21
|
-
}) =>
|
|
21
|
+
}) => react_jsx_runtime138.JSX.Element;
|
|
22
22
|
//#endregion
|
|
23
23
|
export { createLinkItemRenderer };
|
|
24
24
|
//# sourceMappingURL=link-item.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-item.d.ts","names":[],"sources":["../../../src/components/sidebar/link-item.tsx"],"sourcesContent":[],"mappings":";;;;;;KAIK,kBAAA,GAAqB,YACjB;iBAQO,sBAAA;;;;;;GAMb;;;GAOE,eAAe;QACV,QAAQ;IAvBb,IAAA,EAAA,MAAA;EASW,CAAA,CAAA;CACd,EAAA,GAcC,
|
|
1
|
+
{"version":3,"file":"link-item.d.ts","names":[],"sources":["../../../src/components/sidebar/link-item.tsx"],"sourcesContent":[],"mappings":";;;;;;KAIK,kBAAA,GAAqB,YACjB;iBAQO,sBAAA;;;;;;GAMb;;;GAOE,eAAe;QACV,QAAQ;IAvBb,IAAA,EAAA,MAAA;EASW,CAAA,CAAA;CACd,EAAA,GAcC,oBAAA,CAAA,GAAA,CAAA,OAdD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { base_d_exports } from "./base.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime131 from "react/jsx-runtime";
|
|
3
3
|
import { FC, ReactNode } from "react";
|
|
4
4
|
import * as PageTree from "fumadocs-core/page-tree";
|
|
5
5
|
|
|
@@ -24,7 +24,7 @@ declare function createPageTreeRenderer({
|
|
|
24
24
|
SidebarFolderTrigger,
|
|
25
25
|
SidebarSeparator,
|
|
26
26
|
SidebarItem
|
|
27
|
-
}: InternalComponents): (components: Partial<SidebarPageTreeComponents>) =>
|
|
27
|
+
}: InternalComponents): (components: Partial<SidebarPageTreeComponents>) => react_jsx_runtime131.JSX.Element;
|
|
28
28
|
//#endregion
|
|
29
29
|
export { SidebarPageTreeComponents, createPageTreeRenderer };
|
|
30
30
|
//# sourceMappingURL=page-tree.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-tree.d.ts","names":[],"sources":["../../../src/components/sidebar/page-tree.tsx"],"sourcesContent":[],"mappings":";;;;;;UAKiB,yBAAA;QACT;UAAW,QAAA,CAAS;EADX,CAAA,CAAA;EACE,MAAS,EAClB,EADkB,CAAA;IAApB,IAAA,EACa,QAAA,CAAS,MADtB;IACa,QAAS,EAAkB,SAAlB;EAAkB,CAAA,CAAA;EAAtC,SAAA,EACG,EADH,CAAA;IACc,IAAS,EAAT,QAAA,CAAS,SAAA;EAApB,CAAA,CAAA;;AACZ,KAEI,kBAAA,GAAqB,IAAH,CAAA,OACd,cAAA,EAAA,kBADqB,GAAA,eAAA,GAAA,mBAAA,GAAA,sBAAA,GAAA,sBAAA,GAAA,aAAA,CAAA;AAUd,iBAAA,sBAAA,CAAsB;EAAA,aAAA;EAAA,oBAAA;EAAA,iBAAA;EAAA,oBAAA;EAAA,gBAAA;EAAA;AAAA,CAAA,EAOnC,kBAPmC,CAAA,EAAA,CAAA,UAAA,EAoCQ,OApCR,CAoCgB,yBApChB,CAAA,EAAA,GAoC0C,
|
|
1
|
+
{"version":3,"file":"page-tree.d.ts","names":[],"sources":["../../../src/components/sidebar/page-tree.tsx"],"sourcesContent":[],"mappings":";;;;;;UAKiB,yBAAA;QACT;UAAW,QAAA,CAAS;EADX,CAAA,CAAA;EACE,MAAS,EAClB,EADkB,CAAA;IAApB,IAAA,EACa,QAAA,CAAS,MADtB;IACa,QAAS,EAAkB,SAAlB;EAAkB,CAAA,CAAA;EAAtC,SAAA,EACG,EADH,CAAA;IACc,IAAS,EAAT,QAAA,CAAS,SAAA;EAApB,CAAA,CAAA;;AACZ,KAEI,kBAAA,GAAqB,IAAH,CAAA,OACd,cAAA,EAAA,kBADqB,GAAA,eAAA,GAAA,mBAAA,GAAA,sBAAA,GAAA,sBAAA,GAAA,aAAA,CAAA;AAUd,iBAAA,sBAAA,CAAsB;EAAA,aAAA;EAAA,oBAAA;EAAA,iBAAA;EAAA,oBAAA;EAAA,gBAAA;EAAA;AAAA,CAAA,EAOnC,kBAPmC,CAAA,EAAA,CAAA,UAAA,EAoCQ,OApCR,CAoCgB,yBApChB,CAAA,EAAA,GAoC0C,oBAAA,CAAA,GAAA,CAAA,OApC1C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SidebarTab } from "./index.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime60 from "react/jsx-runtime";
|
|
3
3
|
import { ComponentProps, ReactNode } from "react";
|
|
4
4
|
|
|
5
5
|
//#region src/components/sidebar/tabs/dropdown.d.ts
|
|
@@ -13,7 +13,7 @@ declare function SidebarTabsDropdown({
|
|
|
13
13
|
}: {
|
|
14
14
|
placeholder?: ReactNode;
|
|
15
15
|
options: SidebarTabWithProps[];
|
|
16
|
-
} & ComponentProps<'button'>):
|
|
16
|
+
} & ComponentProps<'button'>): react_jsx_runtime60.JSX.Element;
|
|
17
17
|
declare function isTabActive(tab: SidebarTab, pathname: string): boolean;
|
|
18
18
|
//#endregion
|
|
19
19
|
export { SidebarTabWithProps, SidebarTabsDropdown, isTabActive };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime40 from "react/jsx-runtime";
|
|
2
2
|
import { ReactNode } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/components/steps.d.ts
|
|
@@ -6,12 +6,12 @@ declare function Steps({
|
|
|
6
6
|
children
|
|
7
7
|
}: {
|
|
8
8
|
children: ReactNode;
|
|
9
|
-
}):
|
|
9
|
+
}): react_jsx_runtime40.JSX.Element;
|
|
10
10
|
declare function Step({
|
|
11
11
|
children
|
|
12
12
|
}: {
|
|
13
13
|
children: ReactNode;
|
|
14
|
-
}):
|
|
14
|
+
}): react_jsx_runtime40.JSX.Element;
|
|
15
15
|
//#endregion
|
|
16
16
|
export { Step, Steps };
|
|
17
17
|
//# sourceMappingURL=steps.d.ts.map
|