@fumadocs/base-ui 16.8.12 → 16.9.1
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/generated/docs.css +0 -2
- package/css/generated/flux.css +0 -2
- package/css/generated/home.css +0 -8
- package/css/generated/notebook.css +0 -2
- package/css/generated/shared.css +59 -4
- package/dist/components/accordion.d.ts +1 -1
- package/dist/components/accordion.js +4 -2
- package/dist/components/banner.d.ts +1 -1
- package/dist/components/banner.js +6 -4
- package/dist/components/callout.d.ts +1 -1
- package/dist/components/card.d.ts +1 -1
- package/dist/components/card.js +1 -1
- package/dist/components/codeblock.d.ts +1 -1
- package/dist/components/codeblock.js +4 -2
- package/dist/components/dialog/search-algolia.d.ts +1 -1
- package/dist/components/dialog/search-algolia.js +1 -1
- package/dist/components/dialog/search-default.d.ts +1 -1
- package/dist/components/dialog/search-default.js +1 -1
- package/dist/components/dialog/search-orama.d.ts +1 -1
- package/dist/components/dialog/search-orama.js +1 -1
- package/dist/components/dialog/search.d.ts +1 -1
- package/dist/components/dialog/search.js +13 -12
- package/dist/components/dynamic-codeblock.core.js +1 -1
- package/dist/components/files.js +1 -1
- package/dist/components/github-info.d.ts +7 -3
- package/dist/components/github-info.js +8 -6
- package/dist/components/heading.d.ts +1 -1
- package/dist/components/heading.js +3 -1
- package/dist/components/image-zoom.d.ts +1 -1
- package/dist/components/inline-toc.d.ts +1 -1
- package/dist/components/inline-toc.js +3 -1
- package/dist/components/sidebar/base.d.ts +2 -2
- package/dist/components/sidebar/base.js +5 -4
- package/dist/components/sidebar/link-item.d.ts +1 -1
- package/dist/components/sidebar/page-tree.d.ts +1 -1
- package/dist/components/sidebar/page-tree.js +2 -2
- package/dist/components/sidebar/tabs/dropdown.d.ts +1 -1
- package/dist/components/sidebar/tabs/dropdown.js +4 -4
- package/dist/components/steps.d.ts +1 -1
- package/dist/components/tabs.d.ts +1 -1
- package/dist/components/tabs.js +1 -1
- package/dist/components/toc/clerk.d.ts +1 -1
- package/dist/components/toc/clerk.js +3 -4
- package/dist/components/toc/default.d.ts +1 -1
- package/dist/components/toc/default.js +3 -4
- package/dist/components/toc/index.d.ts +1 -1
- package/dist/components/toc/index.js +1 -1
- package/dist/components/type-table.d.ts +1 -1
- package/dist/components/type-table.js +16 -13
- package/dist/components/ui/accordion.d.ts +1 -1
- package/dist/components/ui/collapsible.d.ts +1 -1
- package/dist/components/ui/navigation-menu.d.ts +1 -1
- package/dist/components/ui/navigation-menu.js +1 -1
- package/dist/components/ui/popover.d.ts +1 -1
- package/dist/components/ui/popover.js +1 -1
- package/dist/components/ui/scroll-area.d.ts +1 -1
- package/dist/components/ui/scroll-area.js +1 -1
- package/dist/components/ui/tabs.d.ts +1 -1
- package/dist/components/ui/tabs.js +1 -1
- package/dist/contexts/i18n.d.ts +14 -22
- package/dist/contexts/i18n.js +12 -19
- package/dist/contexts/search.d.ts +1 -1
- package/dist/contexts/search.js +1 -1
- package/dist/contexts/tree.d.ts +1 -1
- package/dist/contexts/tree.js +1 -1
- package/dist/i18n.d.ts +55 -6
- package/dist/i18n.js +68 -2
- package/dist/layouts/docs/client.d.ts +1 -0
- package/dist/layouts/docs/client.js +2 -2
- package/dist/layouts/docs/index.d.ts +1 -1
- package/dist/layouts/docs/index.js +1 -1
- package/dist/layouts/docs/page/index.d.ts +1 -1
- package/dist/layouts/docs/page/index.js +6 -6
- package/dist/layouts/docs/page/slots/breadcrumb.d.ts +1 -1
- package/dist/layouts/docs/page/slots/breadcrumb.js +3 -3
- package/dist/layouts/docs/page/slots/container.d.ts +1 -1
- package/dist/layouts/docs/page/slots/footer.d.ts +1 -1
- package/dist/layouts/docs/page/slots/footer.js +7 -7
- package/dist/layouts/docs/page/slots/toc.d.ts +1 -1
- package/dist/layouts/docs/page/slots/toc.js +4 -4
- package/dist/layouts/docs/slots/container.d.ts +1 -1
- package/dist/layouts/docs/slots/container.js +1 -1
- package/dist/layouts/docs/slots/header.d.ts +1 -1
- package/dist/layouts/docs/slots/sidebar.d.ts +1 -1
- package/dist/layouts/docs/slots/sidebar.js +7 -7
- package/dist/layouts/flux/index.d.ts +1 -1
- package/dist/layouts/flux/index.js +5 -5
- package/dist/layouts/flux/page/index.d.ts +1 -1
- package/dist/layouts/flux/page/index.js +6 -6
- package/dist/layouts/flux/page/slots/breadcrumb.d.ts +1 -1
- package/dist/layouts/flux/page/slots/breadcrumb.js +3 -3
- package/dist/layouts/flux/page/slots/container.d.ts +1 -1
- package/dist/layouts/flux/page/slots/footer.d.ts +1 -1
- package/dist/layouts/flux/page/slots/footer.js +5 -5
- package/dist/layouts/flux/page/slots/toc.d.ts +1 -1
- package/dist/layouts/flux/page/slots/toc.js +4 -4
- package/dist/layouts/flux/slots/container.d.ts +1 -1
- package/dist/layouts/flux/slots/sidebar.d.ts +1 -1
- package/dist/layouts/flux/slots/sidebar.js +1 -1
- package/dist/layouts/flux/slots/tab-dropdown.d.ts +1 -1
- package/dist/layouts/flux/slots/tab-dropdown.js +4 -4
- package/dist/layouts/home/index.d.ts +1 -1
- package/dist/layouts/home/index.js +1 -1
- package/dist/layouts/home/navbar.d.ts +1 -1
- package/dist/layouts/home/navbar.js +1 -1
- package/dist/layouts/home/not-found.js +5 -4
- package/dist/layouts/home/slots/container.d.ts +1 -1
- package/dist/layouts/home/slots/header.d.ts +1 -1
- package/dist/layouts/home/slots/header.js +8 -6
- package/dist/layouts/notebook/client.d.ts +1 -0
- package/dist/layouts/notebook/client.js +1 -1
- package/dist/layouts/notebook/index.d.ts +1 -1
- package/dist/layouts/notebook/index.js +1 -1
- package/dist/layouts/notebook/page/index.d.ts +1 -1
- package/dist/layouts/notebook/page/index.js +6 -6
- package/dist/layouts/notebook/page/slots/breadcrumb.d.ts +1 -1
- package/dist/layouts/notebook/page/slots/breadcrumb.js +3 -3
- package/dist/layouts/notebook/page/slots/container.d.ts +1 -1
- package/dist/layouts/notebook/page/slots/footer.d.ts +1 -1
- package/dist/layouts/notebook/page/slots/footer.js +7 -7
- package/dist/layouts/notebook/page/slots/toc.d.ts +1 -1
- package/dist/layouts/notebook/page/slots/toc.js +4 -4
- package/dist/layouts/notebook/slots/container.d.ts +1 -1
- package/dist/layouts/notebook/slots/container.js +1 -1
- package/dist/layouts/notebook/slots/header.d.ts +1 -1
- package/dist/layouts/notebook/slots/header.js +3 -3
- package/dist/layouts/notebook/slots/sidebar.d.ts +1 -1
- package/dist/layouts/notebook/slots/sidebar.js +9 -9
- package/dist/layouts/shared/client.d.ts +1 -1
- package/dist/layouts/shared/client.js +1 -1
- package/dist/layouts/shared/index.d.ts +1 -1
- package/dist/layouts/shared/index.js +1 -1
- package/dist/layouts/shared/page-actions.d.ts +1 -1
- package/dist/layouts/shared/page-actions.js +17 -11
- package/dist/layouts/shared/slots/language-select.d.ts +1 -1
- package/dist/layouts/shared/slots/language-select.js +1 -1
- package/dist/layouts/shared/slots/search-trigger.d.ts +1 -1
- package/dist/layouts/shared/slots/search-trigger.js +5 -4
- package/dist/layouts/shared/slots/theme-switch.d.ts +1 -1
- package/dist/layouts/shared/slots/theme-switch.js +21 -7
- package/dist/mdx.d.ts +1 -1
- package/dist/mdx.js +1 -1
- package/dist/og/takumi.d.ts +1 -1
- package/dist/og.d.ts +1 -1
- package/dist/page.d.ts +1 -1
- package/dist/provider/base.d.ts +1 -1
- package/dist/provider/base.js +1 -1
- package/dist/provider/next.d.ts +1 -1
- package/dist/provider/react-router.d.ts +1 -1
- package/dist/provider/tanstack.d.ts +1 -1
- package/dist/provider/waku.d.ts +1 -1
- package/dist/style.css +11 -9
- package/package.json +5 -5
|
@@ -10,12 +10,12 @@ import { SidebarCollapseTrigger as SidebarCollapseTrigger$1, SidebarContent as S
|
|
|
10
10
|
import { createPageTreeRenderer } from "../../../components/sidebar/page-tree.js";
|
|
11
11
|
import { createLinkItemRenderer } from "../../../components/sidebar/link-item.js";
|
|
12
12
|
import { useDocsLayout } from "../client.js";
|
|
13
|
-
import { useMemo, useRef, useState } from "react";
|
|
14
|
-
import { usePathname } from "fumadocs-core/framework";
|
|
15
|
-
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
16
13
|
import Link from "fumadocs-core/link";
|
|
14
|
+
import { usePathname } from "fumadocs-core/framework";
|
|
15
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
17
16
|
import { Check, ChevronDown, ChevronsUpDown, Languages, SidebarIcon } from "lucide-react";
|
|
18
17
|
import { cva } from "class-variance-authority";
|
|
18
|
+
import { useMemo, useRef, useState } from "react";
|
|
19
19
|
//#region src/layouts/docs/slots/sidebar.tsx
|
|
20
20
|
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: {
|
|
21
21
|
variant: {
|
|
@@ -38,7 +38,7 @@ function Sidebar({ footer, banner, collapsible = true, components, ...rest }) {
|
|
|
38
38
|
className: cn(i === list.length - 1 && "mb-4")
|
|
39
39
|
}, i)), /* @__PURE__ */ jsx(SidebarPageTree, { ...components })]
|
|
40
40
|
}) });
|
|
41
|
-
return /* @__PURE__ */ jsxs(Fragment
|
|
41
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs(SidebarContent, {
|
|
42
42
|
...rest,
|
|
43
43
|
children: [
|
|
44
44
|
/* @__PURE__ */ jsxs("div", {
|
|
@@ -147,7 +147,7 @@ function SidebarTrigger(props) {
|
|
|
147
147
|
}
|
|
148
148
|
function SidebarContent({ ref: refProp, className, children, ...props }) {
|
|
149
149
|
const ref = useRef(null);
|
|
150
|
-
return /* @__PURE__ */ jsx(SidebarContent$1, { children: ({ collapsed, hovered, ref: asideRef, ...rest }) => /* @__PURE__ */ jsxs(Fragment
|
|
150
|
+
return /* @__PURE__ */ jsx(SidebarContent$1, { children: ({ collapsed, hovered, ref: asideRef, ...rest }) => /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs("div", {
|
|
151
151
|
"data-sidebar-placeholder": "",
|
|
152
152
|
className: "sticky top-(--fd-docs-row-1) z-20 [grid-area:sidebar] pointer-events-none *:pointer-events-auto h-[calc(var(--fd-docs-height)-var(--fd-docs-row-1))] md:layout:[--fd-sidebar-width:268px] max-md:hidden",
|
|
153
153
|
children: [collapsed && /* @__PURE__ */ jsx("div", {
|
|
@@ -180,7 +180,7 @@ function SidebarContent({ ref: refProp, className, children, ...props }) {
|
|
|
180
180
|
})] }) });
|
|
181
181
|
}
|
|
182
182
|
function SidebarDrawer({ children, className, ...props }) {
|
|
183
|
-
return /* @__PURE__ */ jsxs(Fragment
|
|
183
|
+
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, {
|
|
184
184
|
className: cn("fixed text-[0.9375rem] flex flex-col shadow-lg border-s inset-e-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),
|
|
185
185
|
...props,
|
|
186
186
|
children
|
|
@@ -259,7 +259,7 @@ function SidebarTabsDropdown({ tabs, placeholder, ...props }) {
|
|
|
259
259
|
closeOnRedirect.current = false;
|
|
260
260
|
setOpen(false);
|
|
261
261
|
};
|
|
262
|
-
const item = selected ? /* @__PURE__ */ jsxs(Fragment
|
|
262
|
+
const item = selected ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("div", {
|
|
263
263
|
className: "size-9 shrink-0 empty:hidden md:size-5",
|
|
264
264
|
children: selected.icon
|
|
265
265
|
}), /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", {
|
|
@@ -2,8 +2,8 @@ import { BaseSlots, BaseSlotsProps } from "../shared/client.js";
|
|
|
2
2
|
import { BaseLayoutProps, GetLayoutTabsOptions, LayoutTab, LinkItemType } from "../shared/index.js";
|
|
3
3
|
import { TabDropdownProps } from "./slots/tab-dropdown.js";
|
|
4
4
|
import { SidebarProps, SidebarProviderProps } from "./slots/sidebar.js";
|
|
5
|
-
import { ComponentProps, FC, ReactNode } from "react";
|
|
6
5
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
|
+
import { ComponentProps, FC, ReactNode } from "react";
|
|
7
7
|
import * as PageTree from "fumadocs-core/page-tree";
|
|
8
8
|
import { motion } from "motion/react";
|
|
9
9
|
|
|
@@ -8,9 +8,9 @@ import { getLayoutTabs, useLinkItems } from "../shared/index.js";
|
|
|
8
8
|
import { TabDropdown } from "./slots/tab-dropdown.js";
|
|
9
9
|
import { Sidebar as Sidebar$1, SidebarProvider, SidebarTrigger, useSidebar } from "./slots/sidebar.js";
|
|
10
10
|
import { Container } from "./slots/container.js";
|
|
11
|
-
import {
|
|
12
|
-
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
11
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
13
12
|
import { Languages } from "lucide-react";
|
|
13
|
+
import { createContext, use, useMemo } from "react";
|
|
14
14
|
import { motion } from "motion/react";
|
|
15
15
|
import { RemoveScroll } from "react-remove-scroll";
|
|
16
16
|
//#region src/layouts/flux/index.tsx
|
|
@@ -60,12 +60,12 @@ function DocsLayout(props) {
|
|
|
60
60
|
children: [sidebarEnabled && /* @__PURE__ */ jsx(slots.sidebar.root, { ...sidebarProps }), children]
|
|
61
61
|
})
|
|
62
62
|
}), renderNavigationPanel({
|
|
63
|
-
head: /* @__PURE__ */ jsxs(Fragment
|
|
63
|
+
head: /* @__PURE__ */ jsxs(Fragment, { children: [slots.navTitle && /* @__PURE__ */ jsx(slots.navTitle, { className: "inline-flex items-center gap-2.5 text-sm font-semibold" }), nav.children] }),
|
|
64
64
|
tabDropdown: slots.tabDropdown && tabs.length > 0 && /* @__PURE__ */ jsx(slots.tabDropdown, {
|
|
65
65
|
className: "flex-1",
|
|
66
66
|
tabs
|
|
67
67
|
}),
|
|
68
|
-
tool: /* @__PURE__ */ jsxs(Fragment
|
|
68
|
+
tool: /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
69
69
|
slots.languageSelect && /* @__PURE__ */ jsx(slots.languageSelect.root, { children: /* @__PURE__ */ jsx(Languages, { className: "size-4.5" }) }),
|
|
70
70
|
slots.searchTrigger && /* @__PURE__ */ jsx(slots.searchTrigger.sm, {
|
|
71
71
|
hideIfDisabled: true,
|
|
@@ -101,7 +101,7 @@ function NavigationPanel({ head, tabDropdown, tool, link, children = (v) => v, .
|
|
|
101
101
|
translateY: open ? 20 : 0,
|
|
102
102
|
opacity: open ? .8 : 1
|
|
103
103
|
},
|
|
104
|
-
children: children(/* @__PURE__ */ jsxs(Fragment
|
|
104
|
+
children: children(/* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs("div", {
|
|
105
105
|
className: "flex flex-row items-center ps-2.5 p-1 gap-2 min-h-11",
|
|
106
106
|
children: [head, /* @__PURE__ */ jsx("div", {
|
|
107
107
|
id: "flux-layout-slot",
|
|
@@ -2,8 +2,8 @@ import { MarkdownCopyButton, ViewOptionsPopover } from "../../shared/page-action
|
|
|
2
2
|
import { TOCProps, TOCProviderProps } from "./slots/toc.js";
|
|
3
3
|
import { Footer, FooterProps } from "./slots/footer.js";
|
|
4
4
|
import { Breadcrumb, BreadcrumbProps } from "./slots/breadcrumb.js";
|
|
5
|
-
import { ComponentProps, FC, ReactNode } from "react";
|
|
6
5
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
|
+
import { ComponentProps, FC, ReactNode } from "react";
|
|
7
7
|
import { TOCItemType } from "fumadocs-core/toc";
|
|
8
8
|
|
|
9
9
|
//#region src/layouts/flux/page/index.d.ts
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { I18nLabel, useI18n } from "../../../contexts/i18n.js";
|
|
3
2
|
import { cn } from "../../../utils/cn.js";
|
|
4
3
|
import { buttonVariants } from "../../../components/ui/button.js";
|
|
4
|
+
import { I18nLabel, useTranslations } from "../../../contexts/i18n.js";
|
|
5
5
|
import { MarkdownCopyButton, ViewOptionsPopover } from "../../shared/page-actions.js";
|
|
6
6
|
import { TOC, TOCProvider } from "./slots/toc.js";
|
|
7
7
|
import { Footer } from "./slots/footer.js";
|
|
8
8
|
import { Breadcrumb } from "./slots/breadcrumb.js";
|
|
9
9
|
import { Container } from "./slots/container.js";
|
|
10
|
-
import {
|
|
11
|
-
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
12
11
|
import { Edit } from "lucide-react";
|
|
12
|
+
import { createContext, use, useEffect, useState } from "react";
|
|
13
13
|
//#region src/layouts/flux/page/index.tsx
|
|
14
14
|
const PageContext = createContext(null);
|
|
15
15
|
function useDocsPage() {
|
|
@@ -56,7 +56,7 @@ function EditOnGitHub(props) {
|
|
|
56
56
|
color: "secondary",
|
|
57
57
|
size: "sm"
|
|
58
58
|
}), "gap-1.5 not-prose", props.className),
|
|
59
|
-
children: props.children ?? /* @__PURE__ */ jsxs(Fragment
|
|
59
|
+
children: props.children ?? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Edit, { className: "size-3.5" }), /* @__PURE__ */ jsx(I18nLabel, { label: "editOnGithub" })] })
|
|
60
60
|
});
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
@@ -85,7 +85,7 @@ function DocsTitle({ children, className, ...props }) {
|
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
87
|
function PageLastUpdate({ date: value, ...props }) {
|
|
88
|
-
const
|
|
88
|
+
const t = useTranslations();
|
|
89
89
|
const [date, setDate] = useState("");
|
|
90
90
|
useEffect(() => {
|
|
91
91
|
setDate(value.toLocaleDateString());
|
|
@@ -94,7 +94,7 @@ function PageLastUpdate({ date: value, ...props }) {
|
|
|
94
94
|
...props,
|
|
95
95
|
className: cn("text-sm text-fd-muted-foreground", props.className),
|
|
96
96
|
children: [
|
|
97
|
-
|
|
97
|
+
t.lastUpdate,
|
|
98
98
|
" ",
|
|
99
99
|
date
|
|
100
100
|
]
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../../../../utils/cn.js";
|
|
3
3
|
import { useTreeContext, useTreePath } from "../../../../contexts/tree.js";
|
|
4
|
-
import { Fragment, useMemo } from "react";
|
|
5
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
4
|
import Link from "fumadocs-core/link";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
6
|
import { ChevronRight } from "lucide-react";
|
|
7
|
+
import { Fragment as Fragment$1, useMemo } from "react";
|
|
8
8
|
import { getBreadcrumbItemsFromPath } from "fumadocs-core/breadcrumb";
|
|
9
9
|
//#region src/layouts/flux/page/slots/breadcrumb.tsx
|
|
10
10
|
function Breadcrumb({ includeRoot, includeSeparator, includePage, ...props }) {
|
|
@@ -29,7 +29,7 @@ function Breadcrumb({ includeRoot, includeSeparator, includePage, ...props }) {
|
|
|
29
29
|
className: cn("flex items-center gap-1.5 text-sm text-fd-muted-foreground", props.className),
|
|
30
30
|
children: items.map((item, i) => {
|
|
31
31
|
const className = cn("truncate", i === items.length - 1 && "text-fd-primary font-medium");
|
|
32
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [i !== 0 && /* @__PURE__ */ jsx(ChevronRight, { className: "size-3.5 shrink-0" }), item.url ? /* @__PURE__ */ jsx(Link, {
|
|
32
|
+
return /* @__PURE__ */ jsxs(Fragment$1, { children: [i !== 0 && /* @__PURE__ */ jsx(ChevronRight, { className: "size-3.5 shrink-0" }), item.url ? /* @__PURE__ */ jsx(Link, {
|
|
33
33
|
href: item.url,
|
|
34
34
|
className: cn(className, "transition-opacity hover:opacity-80"),
|
|
35
35
|
children: item.name
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ComponentProps } from "react";
|
|
2
1
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { ComponentProps } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/layouts/flux/page/slots/container.d.ts
|
|
5
5
|
declare function Container(props: ComponentProps<'article'>): _$react_jsx_runtime0.JSX.Element;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { useI18n } from "../../../../contexts/i18n.js";
|
|
3
2
|
import { cn } from "../../../../utils/cn.js";
|
|
3
|
+
import { useI18n } from "../../../../contexts/i18n.js";
|
|
4
4
|
import { isActive } from "../../../../utils/urls.js";
|
|
5
5
|
import { useFooterItems } from "../../../../utils/use-footer-items.js";
|
|
6
|
-
import { useMemo } from "react";
|
|
7
|
-
import { usePathname } from "fumadocs-core/framework";
|
|
8
|
-
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
9
6
|
import Link from "fumadocs-core/link";
|
|
7
|
+
import { usePathname } from "fumadocs-core/framework";
|
|
8
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
10
9
|
import { ChevronLeft, ChevronRight } from "lucide-react";
|
|
10
|
+
import { useMemo } from "react";
|
|
11
11
|
//#region src/layouts/flux/page/slots/footer.tsx
|
|
12
12
|
function Footer({ items, children, className, ...props }) {
|
|
13
13
|
const footerList = useFooterItems();
|
|
@@ -25,7 +25,7 @@ function Footer({ items, children, className, ...props }) {
|
|
|
25
25
|
items,
|
|
26
26
|
pathname
|
|
27
27
|
]);
|
|
28
|
-
return /* @__PURE__ */ jsxs(Fragment
|
|
28
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsxs("div", {
|
|
29
29
|
className: cn("@container grid gap-4", previous && next ? "grid-cols-2" : "grid-cols-1", className),
|
|
30
30
|
...props,
|
|
31
31
|
children: [previous && /* @__PURE__ */ jsx(FooterItem, {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { TOCItemsProps } from "../../../../components/toc/clerk.js";
|
|
2
2
|
import { TOCItemsProps as TOCItemsProps$1 } from "../../../../components/toc/default.js";
|
|
3
3
|
import { TOCProvider as TOCProvider$1, TOCProviderProps as TOCProviderProps$1 } from "../../../../components/toc/index.js";
|
|
4
|
-
import { ComponentProps, ReactNode } from "react";
|
|
5
4
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
|
+
import { ComponentProps, ReactNode } from "react";
|
|
6
6
|
|
|
7
7
|
//#region src/layouts/flux/page/slots/toc.d.ts
|
|
8
8
|
type TOCProviderProps = TOCProviderProps$1;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { useI18n } from "../../../../contexts/i18n.js";
|
|
3
2
|
import { cn } from "../../../../utils/cn.js";
|
|
3
|
+
import { useTranslations } from "../../../../contexts/i18n.js";
|
|
4
4
|
import { TOCScrollArea, toc_exports, useItems, useTOCItems } from "../../../../components/toc/index.js";
|
|
5
5
|
import { default_exports } from "../../../../components/toc/default.js";
|
|
6
6
|
import { clerk_exports } from "../../../../components/toc/clerk.js";
|
|
7
7
|
import { useTreePath } from "../../../../contexts/tree.js";
|
|
8
8
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "../../../../components/ui/collapsible.js";
|
|
9
|
-
import { createContext, use, useEffect, useEffectEvent, useMemo, useRef, useState } from "react";
|
|
10
9
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
11
10
|
import { ChevronDown } from "lucide-react";
|
|
11
|
+
import { createContext, use, useEffect, useEffectEvent, useMemo, useRef, useState } from "react";
|
|
12
12
|
import { createPortal } from "react-dom";
|
|
13
13
|
import { AnimatePresence, motion } from "motion/react";
|
|
14
14
|
//#region src/layouts/flux/page/slots/toc.tsx
|
|
@@ -75,7 +75,7 @@ function PageTOCPopoverPhysical({ className, children, ...rest }) {
|
|
|
75
75
|
});
|
|
76
76
|
}
|
|
77
77
|
function PageTOCPopoverTrigger({ className, ...props }) {
|
|
78
|
-
const
|
|
78
|
+
const t = useTranslations();
|
|
79
79
|
const { open } = use(TocPopoverContext);
|
|
80
80
|
const items = useItems();
|
|
81
81
|
const selectedIdx = items.findIndex((item) => item.active);
|
|
@@ -116,7 +116,7 @@ function PageTOCPopoverTrigger({ className, ...props }) {
|
|
|
116
116
|
children: path.name
|
|
117
117
|
}, path.$id ?? ":pathId") : /* @__PURE__ */ jsx(motion.span, {
|
|
118
118
|
...spanProps,
|
|
119
|
-
children:
|
|
119
|
+
children: t.toc
|
|
120
120
|
}, ":toc")
|
|
121
121
|
}),
|
|
122
122
|
/* @__PURE__ */ jsx(ChevronDown, { className: cn("ms-auto shrink-0 transition-transform", open && "rotate-180") })
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ComponentProps } from "react";
|
|
2
1
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { ComponentProps } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/layouts/flux/slots/container.d.ts
|
|
5
5
|
declare function Container(props: ComponentProps<'div'>): _$react_jsx_runtime0.JSX.Element;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SidebarProviderProps as SidebarProviderProps$1, useSidebar as useSidebar$1 } from "../../../components/sidebar/base.js";
|
|
2
2
|
import { SidebarPageTreeComponents } from "../../../components/sidebar/page-tree.js";
|
|
3
|
-
import { ComponentProps, ReactNode } from "react";
|
|
4
3
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
import { ComponentProps, ReactNode } from "react";
|
|
5
5
|
|
|
6
6
|
//#region src/layouts/flux/slots/sidebar.d.ts
|
|
7
7
|
interface SidebarProps extends ComponentProps<'aside'> {
|
|
@@ -5,10 +5,10 @@ import { SidebarFolder as SidebarFolder$1, SidebarFolderContent as SidebarFolder
|
|
|
5
5
|
import { createPageTreeRenderer } from "../../../components/sidebar/page-tree.js";
|
|
6
6
|
import { createLinkItemRenderer } from "../../../components/sidebar/link-item.js";
|
|
7
7
|
import { useFluxLayout } from "../index.js";
|
|
8
|
-
import { useEffect, useEffectEvent, useRef, useState } from "react";
|
|
9
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
9
|
import { SidebarIcon, XIcon } from "lucide-react";
|
|
11
10
|
import { cva } from "class-variance-authority";
|
|
11
|
+
import { useEffect, useEffectEvent, useRef, useState } from "react";
|
|
12
12
|
import { AnimatePresence, motion } from "motion/react";
|
|
13
13
|
import { RemoveScroll } from "react-remove-scroll";
|
|
14
14
|
//#region src/layouts/flux/slots/sidebar.tsx
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LayoutTab } from "../../shared/index.js";
|
|
2
|
-
import { ComponentProps, ReactNode } from "react";
|
|
3
2
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import { ComponentProps, ReactNode } from "react";
|
|
4
4
|
|
|
5
5
|
//#region src/layouts/flux/slots/tab-dropdown.d.ts
|
|
6
6
|
interface TabDropdownProps extends ComponentProps<'button'> {
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
import { cn } from "../../../utils/cn.js";
|
|
3
3
|
import { Popover, PopoverContent, PopoverTrigger } from "../../../components/ui/popover.js";
|
|
4
4
|
import { isLayoutTabActive } from "../../shared/index.js";
|
|
5
|
-
import { useMemo, useState } from "react";
|
|
6
|
-
import { usePathname } from "fumadocs-core/framework";
|
|
7
|
-
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
8
5
|
import Link from "fumadocs-core/link";
|
|
6
|
+
import { usePathname } from "fumadocs-core/framework";
|
|
7
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
9
8
|
import { Check, ChevronsUpDown } from "lucide-react";
|
|
9
|
+
import { useMemo, useState } from "react";
|
|
10
10
|
import { AnimatePresence, motion } from "motion/react";
|
|
11
11
|
//#region src/layouts/flux/slots/tab-dropdown.tsx
|
|
12
12
|
function TabDropdown({ tabs, placeholder, className, ...props }) {
|
|
@@ -19,7 +19,7 @@ function TabDropdown({ tabs, placeholder, className, ...props }) {
|
|
|
19
19
|
const onClick = () => {
|
|
20
20
|
setOpen(false);
|
|
21
21
|
};
|
|
22
|
-
const item = selected ? /* @__PURE__ */ jsxs(Fragment
|
|
22
|
+
const item = selected ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("div", {
|
|
23
23
|
className: "size-4.5 shrink-0 empty:hidden",
|
|
24
24
|
children: selected.icon
|
|
25
25
|
}), /* @__PURE__ */ jsx("p", {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BaseSlots, BaseSlotsProps } from "../shared/client.js";
|
|
2
2
|
import { BaseLayoutProps, LinkItemType, NavOptions } from "../shared/index.js";
|
|
3
|
-
import { ComponentProps, FC } from "react";
|
|
4
3
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
import { ComponentProps, FC } from "react";
|
|
5
5
|
|
|
6
6
|
//#region src/layouts/home/index.d.ts
|
|
7
7
|
interface HomeLayoutProps extends BaseLayoutProps, ComponentProps<'main'> {
|
|
@@ -3,8 +3,8 @@ import { baseSlots } from "../shared/client.js";
|
|
|
3
3
|
import { useLinkItems } from "../shared/index.js";
|
|
4
4
|
import { Container } from "./slots/container.js";
|
|
5
5
|
import { Header } from "./slots/header.js";
|
|
6
|
-
import { createContext, use } from "react";
|
|
7
6
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
7
|
+
import { createContext, use } from "react";
|
|
8
8
|
//#region src/layouts/home/index.tsx
|
|
9
9
|
const LayoutContext = createContext(null);
|
|
10
10
|
function useHomeLayout() {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { NavigationMenuContentProps, NavigationMenuItem, NavigationMenuTriggerProps } from "../../components/ui/navigation-menu.js";
|
|
2
|
-
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
2
|
import { LinkProps } from "fumadocs-core/link";
|
|
3
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
4
|
|
|
5
5
|
//#region src/layouts/home/navbar.d.ts
|
|
6
6
|
declare const NavbarMenu: typeof NavigationMenuItem;
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
import { cn } from "../../utils/cn.js";
|
|
3
3
|
import { NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuTrigger } from "../../components/ui/navigation-menu.js";
|
|
4
4
|
import { navItemVariants } from "./slots/header.js";
|
|
5
|
-
import { jsx } from "react/jsx-runtime";
|
|
6
5
|
import Link from "fumadocs-core/link";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
7
|
//#region src/layouts/home/navbar.tsx
|
|
8
8
|
const NavbarMenu = NavigationMenuItem;
|
|
9
9
|
function NavbarMenuContent(props) {
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { cn } from "../../utils/cn.js";
|
|
2
2
|
import { buttonVariants } from "../../components/ui/button.js";
|
|
3
|
-
import {
|
|
3
|
+
import { I18nLabel } from "../../contexts/i18n.js";
|
|
4
4
|
import Link from "fumadocs-core/link";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
6
|
import { HomeIcon } from "lucide-react";
|
|
6
7
|
//#region src/layouts/home/not-found.tsx
|
|
7
8
|
/**
|
|
@@ -17,11 +18,11 @@ function DefaultNotFound() {
|
|
|
17
18
|
}),
|
|
18
19
|
/* @__PURE__ */ jsx("h2", {
|
|
19
20
|
className: "text-2xl font-semibold",
|
|
20
|
-
children:
|
|
21
|
+
children: /* @__PURE__ */ jsx(I18nLabel, { label: "notFoundTitle" })
|
|
21
22
|
}),
|
|
22
23
|
/* @__PURE__ */ jsx("p", {
|
|
23
24
|
className: "text-fd-muted-foreground max-w-md",
|
|
24
|
-
children:
|
|
25
|
+
children: /* @__PURE__ */ jsx(I18nLabel, { label: "notFoundDescription" })
|
|
25
26
|
}),
|
|
26
27
|
/* @__PURE__ */ jsxs(Link, {
|
|
27
28
|
href: "/",
|
|
@@ -29,7 +30,7 @@ function DefaultNotFound() {
|
|
|
29
30
|
className: "mt-4 gap-1.5",
|
|
30
31
|
variant: "primary"
|
|
31
32
|
})),
|
|
32
|
-
children: [/* @__PURE__ */ jsx(HomeIcon, { className: "size-4" }),
|
|
33
|
+
children: [/* @__PURE__ */ jsx(HomeIcon, { className: "size-4" }), /* @__PURE__ */ jsx(I18nLabel, { label: "notFoundLink" })]
|
|
33
34
|
})
|
|
34
35
|
]
|
|
35
36
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ComponentProps } from "react";
|
|
2
1
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { ComponentProps } from "react";
|
|
3
3
|
|
|
4
4
|
//#region src/layouts/home/slots/container.d.ts
|
|
5
5
|
declare function Container(props: ComponentProps<'main'>): _$react_jsx_runtime0.JSX.Element;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ComponentProps } from "react";
|
|
2
1
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { ComponentProps } from "react";
|
|
3
3
|
import * as _$class_variance_authority_types0 from "class-variance-authority/types";
|
|
4
4
|
|
|
5
5
|
//#region src/layouts/home/slots/header.d.ts
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../../../utils/cn.js";
|
|
3
3
|
import { buttonVariants } from "../../../components/ui/button.js";
|
|
4
|
+
import { useTranslations } from "../../../contexts/i18n.js";
|
|
4
5
|
import { mergeRefs } from "../../../utils/merge-refs.js";
|
|
5
6
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "../../../components/ui/collapsible.js";
|
|
6
7
|
import { LinkItem } from "../../shared/client.js";
|
|
@@ -8,11 +9,11 @@ import "../../shared/index.js";
|
|
|
8
9
|
import { useIsScrollTop } from "../../../utils/use-is-scroll-top.js";
|
|
9
10
|
import { NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport } from "../../../components/ui/navigation-menu.js";
|
|
10
11
|
import { useHomeLayout } from "../index.js";
|
|
11
|
-
import { Fragment, useEffect, useEffectEvent, useRef, useState } from "react";
|
|
12
|
-
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
13
12
|
import Link from "fumadocs-core/link";
|
|
13
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
14
14
|
import { ChevronDown, Languages } from "lucide-react";
|
|
15
15
|
import { cva } from "class-variance-authority";
|
|
16
|
+
import { Fragment as Fragment$1, useEffect, useEffectEvent, useRef, useState } from "react";
|
|
16
17
|
//#region src/layouts/home/slots/header.tsx
|
|
17
18
|
const navItemVariants = cva("[&_svg]:size-4", {
|
|
18
19
|
variants: { variant: {
|
|
@@ -33,6 +34,7 @@ function Header(props) {
|
|
|
33
34
|
const headerRef = useRef(null);
|
|
34
35
|
const listRef = useRef(null);
|
|
35
36
|
const [open, setOpen] = useState(false);
|
|
37
|
+
const t = useTranslations();
|
|
36
38
|
const transparentMode = nav?.transparentMode ?? "none";
|
|
37
39
|
const isTop = useIsScrollTop({ enabled: transparentMode === "top" }) ?? true;
|
|
38
40
|
const isNavTransparent = transparentMode === "top" ? isTop : transparentMode === "always";
|
|
@@ -84,7 +86,7 @@ function Header(props) {
|
|
|
84
86
|
hideIfDisabled: true,
|
|
85
87
|
className: "p-2"
|
|
86
88
|
}), /* @__PURE__ */ jsx(CollapsibleTrigger, {
|
|
87
|
-
"aria-label":
|
|
89
|
+
"aria-label": t.menuToggle,
|
|
88
90
|
className: cn(buttonVariants({
|
|
89
91
|
size: "icon",
|
|
90
92
|
color: "ghost"
|
|
@@ -154,7 +156,7 @@ function NavigationMenuLinkItem({ item, ...props }) {
|
|
|
154
156
|
if (item.type === "custom") return item.children;
|
|
155
157
|
if (item.type === "menu") {
|
|
156
158
|
const children = item.items.map((child, j) => {
|
|
157
|
-
if (child.type === "custom") return /* @__PURE__ */ jsx(Fragment, { children: child.children }, j);
|
|
159
|
+
if (child.type === "custom") return /* @__PURE__ */ jsx(Fragment$1, { children: child.children }, j);
|
|
158
160
|
const { banner = child.icon ? /* @__PURE__ */ jsx("div", {
|
|
159
161
|
className: "w-fit rounded-md border bg-fd-muted p-1 [&_svg]:size-4",
|
|
160
162
|
children: child.icon
|
|
@@ -164,7 +166,7 @@ function NavigationMenuLinkItem({ item, ...props }) {
|
|
|
164
166
|
external: child.external,
|
|
165
167
|
...rest,
|
|
166
168
|
className: cn("flex flex-col gap-2 rounded-lg border bg-fd-card p-3 transition-colors hover:bg-fd-accent/80 hover:text-fd-accent-foreground", rest.className),
|
|
167
|
-
children: rest.children ?? /* @__PURE__ */ jsxs(Fragment
|
|
169
|
+
children: rest.children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
168
170
|
banner,
|
|
169
171
|
/* @__PURE__ */ jsx("p", {
|
|
170
172
|
className: "text-base font-medium",
|
|
@@ -208,7 +210,7 @@ function MobileNavigationMenuLinkItem({ item, ...props }) {
|
|
|
208
210
|
children: item.children
|
|
209
211
|
});
|
|
210
212
|
if (item.type === "menu") {
|
|
211
|
-
const header = /* @__PURE__ */ jsxs(Fragment
|
|
213
|
+
const header = /* @__PURE__ */ jsxs(Fragment, { children: [item.icon, item.text] });
|
|
212
214
|
return /* @__PURE__ */ jsxs("div", {
|
|
213
215
|
className: cn("mb-4 flex flex-col", props.className),
|
|
214
216
|
children: [/* @__PURE__ */ jsx("p", {
|
|
@@ -3,6 +3,7 @@ import { LayoutTab, LinkItemType } from "../shared/index.js";
|
|
|
3
3
|
import { SidebarProps, SidebarProviderProps } from "./slots/sidebar.js";
|
|
4
4
|
import { DocsLayoutProps } from "./index.js";
|
|
5
5
|
import { ComponentProps, FC } from "react";
|
|
6
|
+
|
|
6
7
|
//#region src/layouts/notebook/client.d.ts
|
|
7
8
|
interface DocsSlots extends BaseSlots {
|
|
8
9
|
container: FC<ComponentProps<'div'>>;
|
|
@@ -6,8 +6,8 @@ import { useIsScrollTop } from "../../utils/use-is-scroll-top.js";
|
|
|
6
6
|
import { Container } from "./slots/container.js";
|
|
7
7
|
import { Sidebar, SidebarCollapseTrigger, SidebarProvider, SidebarTrigger, useSidebar } from "./slots/sidebar.js";
|
|
8
8
|
import { Header } from "./slots/header.js";
|
|
9
|
-
import { createContext, use } from "react";
|
|
10
9
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
10
|
+
import { createContext, use } from "react";
|
|
11
11
|
//#region src/layouts/notebook/client.tsx
|
|
12
12
|
const { useProvider } = baseSlots({ useProps() {
|
|
13
13
|
return useNotebookLayout().props;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseLayoutProps, GetLayoutTabsOptions, LayoutTab, NavOptions } from "../shared/index.js";
|
|
2
2
|
import { SidebarProps, SidebarProviderProps } from "./slots/sidebar.js";
|
|
3
3
|
import { DocsSlots, useNotebookLayout } from "./client.js";
|
|
4
|
-
import { HTMLAttributes } from "react";
|
|
5
4
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
|
+
import { HTMLAttributes } from "react";
|
|
6
6
|
import * as PageTree from "fumadocs-core/page-tree";
|
|
7
7
|
|
|
8
8
|
//#region src/layouts/notebook/index.d.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getLayoutTabs } from "../shared/index.js";
|
|
2
2
|
import { LayoutBody, useNotebookLayout } from "./client.js";
|
|
3
|
-
import { useMemo } from "react";
|
|
4
3
|
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { useMemo } from "react";
|
|
5
5
|
//#region src/layouts/notebook/index.tsx
|
|
6
6
|
function DocsLayout({ tree, tabMode = "sidebar", sidebar: { tabs: defaultTabs, ...sidebarProps } = {}, children, tabs = defaultTabs, ...props }) {
|
|
7
7
|
return /* @__PURE__ */ jsx(LayoutBody, {
|
|
@@ -2,8 +2,8 @@ import { MarkdownCopyButton, ViewOptionsPopover } from "../../shared/page-action
|
|
|
2
2
|
import { TOCPopoverProps, TOCProps, TOCProviderProps } from "./slots/toc.js";
|
|
3
3
|
import { Footer, FooterProps } from "./slots/footer.js";
|
|
4
4
|
import { Breadcrumb, BreadcrumbProps } from "./slots/breadcrumb.js";
|
|
5
|
-
import { ComponentProps, FC, ReactNode } from "react";
|
|
6
5
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
|
+
import { ComponentProps, FC, ReactNode } from "react";
|
|
7
7
|
import { TOCItemType } from "fumadocs-core/toc";
|
|
8
8
|
|
|
9
9
|
//#region src/layouts/notebook/page/index.d.ts
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { __exportAll } from "../../../_virtual/_rolldown/runtime.js";
|
|
3
|
-
import { I18nLabel, useI18n } from "../../../contexts/i18n.js";
|
|
4
3
|
import { cn } from "../../../utils/cn.js";
|
|
5
4
|
import { buttonVariants } from "../../../components/ui/button.js";
|
|
5
|
+
import { I18nLabel, useTranslations } from "../../../contexts/i18n.js";
|
|
6
6
|
import { MarkdownCopyButton, ViewOptionsPopover } from "../../shared/page-actions.js";
|
|
7
7
|
import { TOC, TOCPopover, TOCProvider } from "./slots/toc.js";
|
|
8
8
|
import { Footer } from "./slots/footer.js";
|
|
9
9
|
import { Breadcrumb } from "./slots/breadcrumb.js";
|
|
10
10
|
import { Container } from "./slots/container.js";
|
|
11
|
-
import {
|
|
12
|
-
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
11
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
13
12
|
import { Edit } from "lucide-react";
|
|
13
|
+
import { createContext, use, useEffect, useState } from "react";
|
|
14
14
|
//#region src/layouts/notebook/page/index.tsx
|
|
15
15
|
var page_exports = /* @__PURE__ */ __exportAll({
|
|
16
16
|
DocsBody: () => DocsBody,
|
|
@@ -76,7 +76,7 @@ function EditOnGitHub(props) {
|
|
|
76
76
|
color: "secondary",
|
|
77
77
|
size: "sm"
|
|
78
78
|
}), "gap-1.5 not-prose", props.className),
|
|
79
|
-
children: props.children ?? /* @__PURE__ */ jsxs(Fragment
|
|
79
|
+
children: props.children ?? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(Edit, { className: "size-3.5" }), /* @__PURE__ */ jsx(I18nLabel, { label: "editOnGithub" })] })
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
82
|
/**
|
|
@@ -105,7 +105,7 @@ function DocsTitle({ children, className, ...props }) {
|
|
|
105
105
|
});
|
|
106
106
|
}
|
|
107
107
|
function PageLastUpdate({ date: value, ...props }) {
|
|
108
|
-
const
|
|
108
|
+
const t = useTranslations();
|
|
109
109
|
const [date, setDate] = useState("");
|
|
110
110
|
useEffect(() => {
|
|
111
111
|
setDate(value.toLocaleDateString());
|
|
@@ -114,7 +114,7 @@ function PageLastUpdate({ date: value, ...props }) {
|
|
|
114
114
|
...props,
|
|
115
115
|
className: cn("text-sm text-fd-muted-foreground", props.className),
|
|
116
116
|
children: [
|
|
117
|
-
|
|
117
|
+
t.lastUpdate,
|
|
118
118
|
" ",
|
|
119
119
|
date
|
|
120
120
|
]
|