@docubook/flame 2.0.0-beta.0 → 2.0.0-beta.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/.docu/components/ScrollTo.tsx +17 -11
- package/.docu/components/Toc.tsx +32 -7
- package/.docu/lib/build.deno.js +3 -3
- package/.docu/lib/{build.impl-S4DS5XPH.js → build.impl-3ZOQORN3.js} +3 -3
- package/.docu/lib/build.node.js +3 -3
- package/.docu/lib/{chunk-IVM5UM44.js → chunk-6EOUQCRM.js} +1 -1
- package/.docu/lib/{chunk-D3QTSBR4.js → chunk-6HFBJUMG.js} +2 -2
- package/.docu/lib/{chunk-C3RCUTUE.js → chunk-FERG25YW.js} +2 -2
- package/.docu/lib/{chunk-JMQI3FKV.js → chunk-MQRFIDS4.js} +1 -1
- package/.docu/lib/{chunk-O326MYJE.js → chunk-U7M5SK76.js} +1 -1
- package/.docu/lib/{chunk-LXJLSXQI.js → chunk-URBATJEC.js} +125 -96
- package/.docu/lib/clean.js +1 -1
- package/.docu/lib/deploy.deno.js +1 -1
- package/.docu/lib/deploy.node.js +1 -1
- package/.docu/lib/preview.deno.js +2 -2
- package/.docu/lib/preview.node.js +2 -2
- package/.docu/lib/server.deno.js +3 -3
- package/.docu/lib/server.node.js +3 -3
- package/package.json +4 -4
|
@@ -8,9 +8,10 @@ interface ScrollToProps {
|
|
|
8
8
|
className?: string;
|
|
9
9
|
showIcon?: boolean;
|
|
10
10
|
offset?: number;
|
|
11
|
+
onScrollToTop?: () => void;
|
|
11
12
|
}
|
|
12
13
|
|
|
13
|
-
export function ScrollTo({ className, showIcon = true }: ScrollToProps) {
|
|
14
|
+
export function ScrollTo({ className, showIcon = true, onScrollToTop }: ScrollToProps) {
|
|
14
15
|
const [isVisible, setIsVisible] = useState(false);
|
|
15
16
|
|
|
16
17
|
const checkScroll = useCallback(() => {
|
|
@@ -41,15 +42,20 @@ export function ScrollTo({ className, showIcon = true }: ScrollToProps) {
|
|
|
41
42
|
};
|
|
42
43
|
}, [checkScroll]);
|
|
43
44
|
|
|
44
|
-
const scrollToTop = useCallback(
|
|
45
|
-
e.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
45
|
+
const scrollToTop = useCallback(
|
|
46
|
+
(e: React.MouseEvent) => {
|
|
47
|
+
e.preventDefault();
|
|
48
|
+
onScrollToTop?.();
|
|
49
|
+
history.replaceState(null, "", "#top");
|
|
50
|
+
const container = document.getElementById("scroll-container");
|
|
51
|
+
if (container) {
|
|
52
|
+
container.scrollTo({ top: 0, behavior: "smooth" });
|
|
53
|
+
} else {
|
|
54
|
+
window.scrollTo({ top: 0, behavior: "smooth" });
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
[onScrollToTop]
|
|
58
|
+
);
|
|
53
59
|
|
|
54
60
|
return (
|
|
55
61
|
<div
|
|
@@ -61,7 +67,7 @@ export function ScrollTo({ className, showIcon = true }: ScrollToProps) {
|
|
|
61
67
|
)}
|
|
62
68
|
>
|
|
63
69
|
<a
|
|
64
|
-
href="#"
|
|
70
|
+
href="#top"
|
|
65
71
|
onClick={scrollToTop}
|
|
66
72
|
className={cn(
|
|
67
73
|
"inline-flex items-center text-sm",
|
package/.docu/components/Toc.tsx
CHANGED
|
@@ -62,9 +62,9 @@ export default function Toc({ tocs }: TocProps) {
|
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
if (currentId
|
|
65
|
+
if (currentId !== activeIdRef.current) {
|
|
66
66
|
setActiveId(currentId);
|
|
67
|
-
history.replaceState(null, "", `#${currentId}`);
|
|
67
|
+
history.replaceState(null, "", currentId ? `#${currentId}` : "#top");
|
|
68
68
|
}
|
|
69
69
|
};
|
|
70
70
|
|
|
@@ -100,22 +100,43 @@ export default function Toc({ tocs }: TocProps) {
|
|
|
100
100
|
}, 1000);
|
|
101
101
|
}, []);
|
|
102
102
|
|
|
103
|
+
const handleScrollToTop = useCallback(() => {
|
|
104
|
+
clickedIdRef.current = "__top__";
|
|
105
|
+
setActiveId(null);
|
|
106
|
+
history.replaceState(null, "", "#top");
|
|
107
|
+
if (clickTimerRef.current) clearTimeout(clickTimerRef.current);
|
|
108
|
+
clickTimerRef.current = setTimeout(() => {
|
|
109
|
+
clickedIdRef.current = null;
|
|
110
|
+
}, 1000);
|
|
111
|
+
}, []);
|
|
112
|
+
|
|
103
113
|
useEffect(() => {
|
|
104
114
|
return () => {
|
|
105
115
|
if (clickTimerRef.current) clearTimeout(clickTimerRef.current);
|
|
106
116
|
};
|
|
107
117
|
}, []);
|
|
108
118
|
|
|
119
|
+
const activeItemRef = useRef<HTMLDivElement | null>(null);
|
|
120
|
+
|
|
121
|
+
useEffect(() => {
|
|
122
|
+
if (activeId && activeItemRef.current && !clickedIdRef.current) {
|
|
123
|
+
activeItemRef.current.scrollIntoView({
|
|
124
|
+
block: "nearest",
|
|
125
|
+
behavior: "smooth",
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
}, [activeId]);
|
|
129
|
+
|
|
109
130
|
if (!tocs.length) return null;
|
|
110
131
|
|
|
111
132
|
return (
|
|
112
|
-
<div className="flex w-full flex-col gap-2">
|
|
113
|
-
<div className="flex items-center gap-2">
|
|
133
|
+
<div className="flex h-full min-h-0 w-full flex-col gap-2">
|
|
134
|
+
<div className="flex shrink-0 items-center gap-2">
|
|
114
135
|
<ListIcon className="h-4 w-4" />
|
|
115
136
|
<h3 className="text-sm font-medium">On this page</h3>
|
|
116
137
|
</div>
|
|
117
138
|
|
|
118
|
-
<div className="relative">
|
|
139
|
+
<div className="relative min-h-0 flex-1 overflow-y-auto overscroll-contain pr-1">
|
|
119
140
|
<div className="relative text-sm">
|
|
120
141
|
<div className="bg-base-300 absolute top-0 left-0 h-full w-px" />
|
|
121
142
|
|
|
@@ -128,6 +149,7 @@ export default function Toc({ tocs }: TocProps) {
|
|
|
128
149
|
return (
|
|
129
150
|
<div
|
|
130
151
|
key={href}
|
|
152
|
+
ref={isActive ? activeItemRef : undefined}
|
|
131
153
|
className={cn(
|
|
132
154
|
"relative flex items-center transition-all duration-200",
|
|
133
155
|
isActive && "bg-primary/5"
|
|
@@ -206,9 +228,12 @@ export default function Toc({ tocs }: TocProps) {
|
|
|
206
228
|
})}
|
|
207
229
|
</div>
|
|
208
230
|
</div>
|
|
209
|
-
</div>
|
|
210
231
|
|
|
211
|
-
|
|
232
|
+
<div className="mt-2 grid grid-cols-[28px_minmax(0,1fr)] items-start px-4 text-sm">
|
|
233
|
+
<div aria-hidden="true" />
|
|
234
|
+
<ScrollTo className="mt-0" onScrollToTop={handleScrollToTop} />
|
|
235
|
+
</div>
|
|
236
|
+
</div>
|
|
212
237
|
</div>
|
|
213
238
|
);
|
|
214
239
|
}
|
package/.docu/lib/build.deno.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runBuildCli
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-FERG25YW.js";
|
|
4
|
+
import "./chunk-URBATJEC.js";
|
|
5
5
|
import "./chunk-EOK6KATZ.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-6EOUQCRM.js";
|
|
7
7
|
import "./chunk-4IQXHHPF.js";
|
|
8
8
|
|
|
9
9
|
// .docu/node/build.deno.ts
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runBuild,
|
|
3
3
|
runBuildCli
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-FERG25YW.js";
|
|
5
|
+
import "./chunk-URBATJEC.js";
|
|
6
6
|
import "./chunk-EOK6KATZ.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-6EOUQCRM.js";
|
|
8
8
|
import "./chunk-4IQXHHPF.js";
|
|
9
9
|
export {
|
|
10
10
|
runBuild,
|
package/.docu/lib/build.node.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runBuildCli
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-FERG25YW.js";
|
|
4
|
+
import "./chunk-URBATJEC.js";
|
|
5
5
|
import "./chunk-EOK6KATZ.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-6EOUQCRM.js";
|
|
7
7
|
import "./chunk-4IQXHHPF.js";
|
|
8
8
|
|
|
9
9
|
// .docu/node/build.node.ts
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
// package.json
|
|
6
6
|
var package_default = {
|
|
7
7
|
name: "@docubook/flame",
|
|
8
|
-
version: "2.0.0-beta.
|
|
8
|
+
version: "2.0.0-beta.1",
|
|
9
9
|
description: "A blazing-fast React + MDX framework powered by Bun, built for modern documentation experiences.",
|
|
10
10
|
type: "module",
|
|
11
11
|
bin: {
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
htmlShell,
|
|
16
16
|
initSentry,
|
|
17
17
|
loadPlugins
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-URBATJEC.js";
|
|
19
19
|
import {
|
|
20
20
|
SECURITY_HEADERS,
|
|
21
21
|
generateNonce,
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
} from "./chunk-EOK6KATZ.js";
|
|
29
29
|
import {
|
|
30
30
|
logger
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-6EOUQCRM.js";
|
|
32
32
|
import {
|
|
33
33
|
DIST_DIR,
|
|
34
34
|
DOCS_DIR,
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
initSentry,
|
|
20
20
|
loadPlugins,
|
|
21
21
|
registerPageContent
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-URBATJEC.js";
|
|
23
23
|
import {
|
|
24
24
|
cspHeader,
|
|
25
25
|
generateNonce,
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
} from "./chunk-EOK6KATZ.js";
|
|
28
28
|
import {
|
|
29
29
|
logger
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-6EOUQCRM.js";
|
|
31
31
|
import {
|
|
32
32
|
ASSETS_DIR,
|
|
33
33
|
CACHE_FILE,
|
|
@@ -137,7 +137,7 @@ async function runBuild() {
|
|
|
137
137
|
process.env.FLAME_BUILD_SILENT = "1";
|
|
138
138
|
process.env.LOG_LEVEL = "error";
|
|
139
139
|
}
|
|
140
|
-
const { runBuildCli } = await import("./build.impl-
|
|
140
|
+
const { runBuildCli } = await import("./build.impl-3ZOQORN3.js");
|
|
141
141
|
await runBuildCli();
|
|
142
142
|
}
|
|
143
143
|
async function writeDockerFiles() {
|
|
@@ -1665,7 +1665,7 @@ import { ListIcon } from "lucide-react";
|
|
|
1665
1665
|
import { ArrowUpIcon } from "lucide-react";
|
|
1666
1666
|
import { useEffect, useState, useCallback } from "react";
|
|
1667
1667
|
import { jsx as jsx7, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
1668
|
-
function ScrollTo({ className, showIcon = true }) {
|
|
1668
|
+
function ScrollTo({ className, showIcon = true, onScrollToTop }) {
|
|
1669
1669
|
const [isVisible, setIsVisible] = useState(false);
|
|
1670
1670
|
const checkScroll = useCallback(() => {
|
|
1671
1671
|
const container = document.getElementById("scroll-container");
|
|
@@ -1690,15 +1690,20 @@ function ScrollTo({ className, showIcon = true }) {
|
|
|
1690
1690
|
if (timeoutId) clearTimeout(timeoutId);
|
|
1691
1691
|
};
|
|
1692
1692
|
}, [checkScroll]);
|
|
1693
|
-
const scrollToTop = useCallback(
|
|
1694
|
-
e
|
|
1695
|
-
|
|
1696
|
-
|
|
1697
|
-
|
|
1698
|
-
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1693
|
+
const scrollToTop = useCallback(
|
|
1694
|
+
(e) => {
|
|
1695
|
+
e.preventDefault();
|
|
1696
|
+
onScrollToTop?.();
|
|
1697
|
+
history.replaceState(null, "", "#top");
|
|
1698
|
+
const container = document.getElementById("scroll-container");
|
|
1699
|
+
if (container) {
|
|
1700
|
+
container.scrollTo({ top: 0, behavior: "smooth" });
|
|
1701
|
+
} else {
|
|
1702
|
+
window.scrollTo({ top: 0, behavior: "smooth" });
|
|
1703
|
+
}
|
|
1704
|
+
},
|
|
1705
|
+
[onScrollToTop]
|
|
1706
|
+
);
|
|
1702
1707
|
return /* @__PURE__ */ jsx7(
|
|
1703
1708
|
"div",
|
|
1704
1709
|
{
|
|
@@ -1711,7 +1716,7 @@ function ScrollTo({ className, showIcon = true }) {
|
|
|
1711
1716
|
children: /* @__PURE__ */ jsxs4(
|
|
1712
1717
|
"a",
|
|
1713
1718
|
{
|
|
1714
|
-
href: "#",
|
|
1719
|
+
href: "#top",
|
|
1715
1720
|
onClick: scrollToTop,
|
|
1716
1721
|
className: cn(
|
|
1717
1722
|
"inline-flex items-center text-sm",
|
|
@@ -1766,9 +1771,9 @@ function Toc({ tocs }) {
|
|
|
1766
1771
|
break;
|
|
1767
1772
|
}
|
|
1768
1773
|
}
|
|
1769
|
-
if (currentId
|
|
1774
|
+
if (currentId !== activeIdRef.current) {
|
|
1770
1775
|
setActiveId(currentId);
|
|
1771
|
-
history.replaceState(null, "", `#${currentId}`);
|
|
1776
|
+
history.replaceState(null, "", currentId ? `#${currentId}` : "#top");
|
|
1772
1777
|
}
|
|
1773
1778
|
};
|
|
1774
1779
|
handleScroll();
|
|
@@ -1795,100 +1800,124 @@ function Toc({ tocs }) {
|
|
|
1795
1800
|
clickedIdRef.current = null;
|
|
1796
1801
|
}, 1e3);
|
|
1797
1802
|
}, []);
|
|
1803
|
+
const handleScrollToTop = useCallback2(() => {
|
|
1804
|
+
clickedIdRef.current = "__top__";
|
|
1805
|
+
setActiveId(null);
|
|
1806
|
+
history.replaceState(null, "", "#top");
|
|
1807
|
+
if (clickTimerRef.current) clearTimeout(clickTimerRef.current);
|
|
1808
|
+
clickTimerRef.current = setTimeout(() => {
|
|
1809
|
+
clickedIdRef.current = null;
|
|
1810
|
+
}, 1e3);
|
|
1811
|
+
}, []);
|
|
1798
1812
|
useEffect2(() => {
|
|
1799
1813
|
return () => {
|
|
1800
1814
|
if (clickTimerRef.current) clearTimeout(clickTimerRef.current);
|
|
1801
1815
|
};
|
|
1802
1816
|
}, []);
|
|
1817
|
+
const activeItemRef = useRef(null);
|
|
1818
|
+
useEffect2(() => {
|
|
1819
|
+
if (activeId && activeItemRef.current && !clickedIdRef.current) {
|
|
1820
|
+
activeItemRef.current.scrollIntoView({
|
|
1821
|
+
block: "nearest",
|
|
1822
|
+
behavior: "smooth"
|
|
1823
|
+
});
|
|
1824
|
+
}
|
|
1825
|
+
}, [activeId]);
|
|
1803
1826
|
if (!tocs.length) return null;
|
|
1804
|
-
return /* @__PURE__ */ jsxs5("div", { className: "flex w-full flex-col gap-2", children: [
|
|
1805
|
-
/* @__PURE__ */ jsxs5("div", { className: "flex items-center gap-2", children: [
|
|
1827
|
+
return /* @__PURE__ */ jsxs5("div", { className: "flex h-full min-h-0 w-full flex-col gap-2", children: [
|
|
1828
|
+
/* @__PURE__ */ jsxs5("div", { className: "flex shrink-0 items-center gap-2", children: [
|
|
1806
1829
|
/* @__PURE__ */ jsx8(ListIcon, { className: "h-4 w-4" }),
|
|
1807
1830
|
/* @__PURE__ */ jsx8("h3", { className: "text-sm font-medium", children: "On this page" })
|
|
1808
1831
|
] }),
|
|
1809
|
-
/* @__PURE__ */
|
|
1810
|
-
/* @__PURE__ */
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
/* @__PURE__ */ jsxs5(
|
|
1824
|
-
"div",
|
|
1825
|
-
{
|
|
1826
|
-
className: cn(
|
|
1827
|
-
"flex shrink-0 items-center px-1 py-2 transition-all duration-200",
|
|
1828
|
-
isActive && "border-primary -ml-px border-l-[3px]"
|
|
1829
|
-
),
|
|
1830
|
-
children: [
|
|
1831
|
-
/* @__PURE__ */ jsx8(
|
|
1832
|
-
"div",
|
|
1833
|
-
{
|
|
1834
|
-
className: cn(
|
|
1835
|
-
"h-px transition-colors duration-200",
|
|
1836
|
-
isActive ? "bg-primary w-3" : "bg-base-300 w-2"
|
|
1837
|
-
)
|
|
1838
|
-
}
|
|
1839
|
-
),
|
|
1840
|
-
/* @__PURE__ */ jsx8(
|
|
1841
|
-
"div",
|
|
1842
|
-
{
|
|
1843
|
-
className: cn(
|
|
1844
|
-
"h-1.5 w-1.5 shrink-0 rounded-full transition-colors duration-300",
|
|
1845
|
-
isActive ? "bg-primary" : "bg-base-300"
|
|
1846
|
-
)
|
|
1847
|
-
}
|
|
1848
|
-
)
|
|
1849
|
-
]
|
|
1850
|
-
}
|
|
1832
|
+
/* @__PURE__ */ jsxs5("div", { className: "relative min-h-0 flex-1 overflow-y-auto overscroll-contain pr-1", children: [
|
|
1833
|
+
/* @__PURE__ */ jsxs5("div", { className: "relative text-sm", children: [
|
|
1834
|
+
/* @__PURE__ */ jsx8("div", { className: "bg-base-300 absolute top-0 left-0 h-full w-px" }),
|
|
1835
|
+
/* @__PURE__ */ jsx8("div", { className: "flex flex-col", children: tocs.map(({ href, level, text }) => {
|
|
1836
|
+
const id = href.slice(1);
|
|
1837
|
+
const isActive = activeId === id;
|
|
1838
|
+
const levelPadding = (level - 2) * 16;
|
|
1839
|
+
return /* @__PURE__ */ jsxs5(
|
|
1840
|
+
"div",
|
|
1841
|
+
{
|
|
1842
|
+
ref: isActive ? activeItemRef : void 0,
|
|
1843
|
+
className: cn(
|
|
1844
|
+
"relative flex items-center transition-all duration-200",
|
|
1845
|
+
isActive && "bg-primary/5"
|
|
1851
1846
|
),
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
}
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1847
|
+
children: [
|
|
1848
|
+
/* @__PURE__ */ jsxs5(
|
|
1849
|
+
"div",
|
|
1850
|
+
{
|
|
1851
|
+
className: cn(
|
|
1852
|
+
"flex shrink-0 items-center px-1 py-2 transition-all duration-200",
|
|
1853
|
+
isActive && "border-primary -ml-px border-l-[3px]"
|
|
1854
|
+
),
|
|
1855
|
+
children: [
|
|
1856
|
+
/* @__PURE__ */ jsx8(
|
|
1857
|
+
"div",
|
|
1858
|
+
{
|
|
1859
|
+
className: cn(
|
|
1860
|
+
"h-px transition-colors duration-200",
|
|
1861
|
+
isActive ? "bg-primary w-3" : "bg-base-300 w-2"
|
|
1862
|
+
)
|
|
1863
|
+
}
|
|
1864
|
+
),
|
|
1865
|
+
/* @__PURE__ */ jsx8(
|
|
1866
|
+
"div",
|
|
1867
|
+
{
|
|
1868
|
+
className: cn(
|
|
1869
|
+
"h-1.5 w-1.5 shrink-0 rounded-full transition-colors duration-300",
|
|
1870
|
+
isActive ? "bg-primary" : "bg-base-300"
|
|
1871
|
+
)
|
|
1872
|
+
}
|
|
1873
|
+
)
|
|
1874
|
+
]
|
|
1875
|
+
}
|
|
1876
|
+
),
|
|
1877
|
+
/* @__PURE__ */ jsx8(
|
|
1878
|
+
"a",
|
|
1879
|
+
{
|
|
1880
|
+
href,
|
|
1881
|
+
onClick: (e) => {
|
|
1882
|
+
e.preventDefault();
|
|
1883
|
+
handleLinkClick(id);
|
|
1884
|
+
const el = document.getElementById(id);
|
|
1885
|
+
if (el) {
|
|
1886
|
+
const offset = getAnchorOffset();
|
|
1887
|
+
const scroller = window.innerWidth >= 1024 ? document.getElementById("scroll-container") : null;
|
|
1888
|
+
const elTop = el.getBoundingClientRect().top;
|
|
1889
|
+
if (scroller) {
|
|
1890
|
+
scroller.scrollTo({
|
|
1891
|
+
top: elTop - scroller.getBoundingClientRect().top + scroller.scrollTop - offset,
|
|
1892
|
+
behavior: "smooth"
|
|
1893
|
+
});
|
|
1894
|
+
} else {
|
|
1895
|
+
window.scrollTo({
|
|
1896
|
+
top: elTop + window.scrollY - offset,
|
|
1897
|
+
behavior: "smooth"
|
|
1898
|
+
});
|
|
1899
|
+
}
|
|
1874
1900
|
}
|
|
1875
|
-
}
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
)
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1901
|
+
},
|
|
1902
|
+
className: cn(
|
|
1903
|
+
"flex flex-1 items-center py-2 transition-all duration-200",
|
|
1904
|
+
isActive ? "text-primary font-medium" : "text-base-content/60 hover:text-base-content"
|
|
1905
|
+
),
|
|
1906
|
+
style: { paddingLeft: `${levelPadding + 6}px` },
|
|
1907
|
+
children: /* @__PURE__ */ jsx8("span", { className: "line-clamp-2 text-sm break-words", children: text })
|
|
1908
|
+
}
|
|
1909
|
+
)
|
|
1910
|
+
]
|
|
1911
|
+
},
|
|
1912
|
+
href
|
|
1913
|
+
);
|
|
1914
|
+
}) })
|
|
1915
|
+
] }),
|
|
1916
|
+
/* @__PURE__ */ jsxs5("div", { className: "mt-2 grid grid-cols-[28px_minmax(0,1fr)] items-start px-4 text-sm", children: [
|
|
1917
|
+
/* @__PURE__ */ jsx8("div", { "aria-hidden": "true" }),
|
|
1918
|
+
/* @__PURE__ */ jsx8(ScrollTo, { className: "mt-0", onScrollToTop: handleScrollToTop })
|
|
1919
|
+
] })
|
|
1920
|
+
] })
|
|
1892
1921
|
] });
|
|
1893
1922
|
}
|
|
1894
1923
|
|
package/.docu/lib/clean.js
CHANGED
package/.docu/lib/deploy.deno.js
CHANGED
package/.docu/lib/deploy.node.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runPreview
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-MQRFIDS4.js";
|
|
4
4
|
import {
|
|
5
5
|
denoAdapter
|
|
6
6
|
} from "./chunk-UISOJ4RW.js";
|
|
7
7
|
import "./chunk-EOK6KATZ.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-6EOUQCRM.js";
|
|
9
9
|
import "./chunk-4IQXHHPF.js";
|
|
10
10
|
|
|
11
11
|
// .docu/node/preview.deno.ts
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runPreview
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-MQRFIDS4.js";
|
|
4
4
|
import {
|
|
5
5
|
nodeAdapter
|
|
6
6
|
} from "./chunk-UISOJ4RW.js";
|
|
7
7
|
import "./chunk-EOK6KATZ.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-6EOUQCRM.js";
|
|
9
9
|
import "./chunk-4IQXHHPF.js";
|
|
10
10
|
|
|
11
11
|
// .docu/node/preview.node.ts
|
package/.docu/lib/server.deno.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runServer
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-6HFBJUMG.js";
|
|
4
|
+
import "./chunk-URBATJEC.js";
|
|
5
5
|
import {
|
|
6
6
|
denoAdapter
|
|
7
7
|
} from "./chunk-UISOJ4RW.js";
|
|
8
8
|
import "./chunk-EOK6KATZ.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-6EOUQCRM.js";
|
|
10
10
|
import "./chunk-4IQXHHPF.js";
|
|
11
11
|
|
|
12
12
|
// .docu/node/server.deno.ts
|
package/.docu/lib/server.node.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runServer
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-6HFBJUMG.js";
|
|
4
|
+
import "./chunk-URBATJEC.js";
|
|
5
5
|
import {
|
|
6
6
|
nodeAdapter
|
|
7
7
|
} from "./chunk-UISOJ4RW.js";
|
|
8
8
|
import "./chunk-EOK6KATZ.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-6EOUQCRM.js";
|
|
10
10
|
import "./chunk-4IQXHHPF.js";
|
|
11
11
|
|
|
12
12
|
// .docu/node/server.node.ts
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@docubook/flame",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.1",
|
|
4
4
|
"description": "A blazing-fast React + MDX framework powered by Bun, built for modern documentation experiences.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -56,10 +56,10 @@
|
|
|
56
56
|
"react-dom": "^19.2.7",
|
|
57
57
|
"unified": "^11.0.0",
|
|
58
58
|
"zod": "^4.4.3",
|
|
59
|
+
"@docubook/markdown": "^2.0.0-beta.1",
|
|
59
60
|
"@docubook/core": "^2.0.0-beta.0",
|
|
60
|
-
"@docubook/
|
|
61
|
-
"@docubook/themes-colors": "^2.0.0-beta.0"
|
|
62
|
-
"@docubook/ui-react": "^2.0.0-beta.0"
|
|
61
|
+
"@docubook/ui-react": "^2.0.0-beta.0",
|
|
62
|
+
"@docubook/themes-colors": "^2.0.0-beta.0"
|
|
63
63
|
},
|
|
64
64
|
"peerDependencies": {
|
|
65
65
|
"@sentry/bun": "^10.0.0"
|