ardo 3.1.0 → 3.2.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/README.md +9 -19
- package/dist/DocPage-CIBiCAxZ.js +1010 -0
- package/dist/DocPage-CIBiCAxZ.js.map +1 -0
- package/dist/assets/src/ui/Breadcrumb.css.ts.vanilla-Dpgq-C_p.css +20 -0
- package/dist/assets/src/ui/DocPage.css.ts.vanilla-CXKuz4U-.css +34 -0
- package/dist/assets/src/ui/Footer.css.ts.vanilla-BSzPIPt4.css +100 -0
- package/dist/assets/src/ui/Header.css.ts.vanilla-8QL0Jzgk.css +156 -0
- package/dist/assets/src/ui/Layout.css.ts.vanilla-Bpx_-gJt.css +67 -0
- package/dist/assets/src/ui/Nav.css.ts.vanilla-CsAQjogy.css +51 -0
- package/dist/assets/src/ui/Sidebar.css.ts.vanilla-D70qXTEr.css +115 -0
- package/dist/assets/src/ui/Toc.css.ts.vanilla-CYqcWgvD.css +52 -0
- package/dist/assets/src/ui/components/ApiItem.css.ts.vanilla-B_DW-1iJ.css +218 -0
- package/dist/assets/src/ui/components/CodeBlock.css.ts.vanilla-lNKqskjQ.css +182 -0
- package/dist/assets/src/ui/components/Container.css.ts.vanilla-CUhRUA9t.css +80 -0
- package/dist/assets/src/ui/components/CopyButton.css.ts.vanilla-DZZ5jgTM.css +24 -0
- package/dist/assets/src/ui/components/Features.css.ts.vanilla-D-pNXM9Q.css +129 -0
- package/dist/assets/src/ui/components/Hero.css.ts.vanilla-DHJVZ6GX.css +134 -0
- package/dist/assets/src/ui/components/Search.css.ts.vanilla-BYpWHzky.css +135 -0
- package/dist/assets/src/ui/components/Steps.css.ts.vanilla-CisaxeNj.css +59 -0
- package/dist/assets/src/ui/components/Tabs.css.ts.vanilla-C4-vJSnf.css +30 -0
- package/dist/assets/src/ui/components/ThemeToggle.css.ts.vanilla---sSUELC.css +22 -0
- package/dist/assets/src/ui/content.css.ts.vanilla-O_RaSPXm.css +106 -0
- package/dist/assets/src/ui/theme/animations.css.ts.vanilla-D6ImVUKy.css +10 -0
- package/dist/assets/src/ui/theme/dark.css.ts.vanilla-2iJgcpbU.css +87 -0
- package/dist/assets/src/ui/theme/light.css.ts.vanilla-CwinfWSf.css +87 -0
- package/dist/assets/src/ui/theme/reset.css.ts.vanilla-0Q3pLjfC.css +34 -0
- package/dist/brand-icons-DLJKqTun.js +59 -0
- package/dist/brand-icons-DLJKqTun.js.map +1 -0
- package/dist/config/index.d.ts +5 -5
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +54 -11
- package/dist/config/index.js.map +1 -1
- package/dist/contract.css-DYvFVCFE.d.ts +105 -0
- package/dist/contract.css-DYvFVCFE.d.ts.map +1 -0
- package/dist/generator-DPtRXxM_.js +1194 -0
- package/dist/generator-DPtRXxM_.js.map +1 -0
- package/dist/icons/index.d.ts +22 -1
- package/dist/icons/index.d.ts.map +1 -0
- package/dist/icons/index.js +2 -2
- package/dist/index-BTeHvysI.d.ts +807 -0
- package/dist/index-BTeHvysI.d.ts.map +1 -0
- package/dist/index-DySzkJlC.d.ts +78 -0
- package/dist/index-DySzkJlC.d.ts.map +1 -0
- package/dist/index.d.ts +5 -8
- package/dist/index.js +6 -100
- package/dist/mdx/provider.d.ts +61 -4
- package/dist/mdx/provider.d.ts.map +1 -0
- package/dist/mdx/provider.js +89 -117
- package/dist/mdx/provider.js.map +1 -1
- package/dist/runtime/index.d.ts +2 -41
- package/dist/runtime/index.js +2 -28
- package/dist/sidebar-utils-1Skqle1Q.js +109 -0
- package/dist/sidebar-utils-1Skqle1Q.js.map +1 -0
- package/dist/theme/index.d.ts +201 -182
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +288 -128
- package/dist/theme/index.js.map +1 -1
- package/dist/typedoc/components/index.d.ts +55 -0
- package/dist/typedoc/components/index.d.ts.map +1 -0
- package/dist/typedoc/components/index.js +339 -0
- package/dist/typedoc/components/index.js.map +1 -0
- package/dist/typedoc/index.d.ts +36 -305
- package/dist/typedoc/index.d.ts.map +1 -0
- package/dist/typedoc/index.js +97 -268
- package/dist/typedoc/index.js.map +1 -1
- package/dist/types-BCuJBsJu.d.ts +182 -0
- package/dist/types-BCuJBsJu.d.ts.map +1 -0
- package/dist/types-CTd_mkrv.d.ts +175 -0
- package/dist/types-CTd_mkrv.d.ts.map +1 -0
- package/dist/ui/index.d.ts +2 -178
- package/dist/ui/index.js +3 -95
- package/dist/ui/styles.css +1401 -1335
- package/dist/ui/styles.d.ts +1 -2
- package/dist/ui/styles.js +23 -4
- package/dist/ui-3grzJSsq.js +1314 -0
- package/dist/ui-3grzJSsq.js.map +1 -0
- package/dist/vite/index.d.ts +78 -86
- package/dist/vite/index.d.ts.map +1 -0
- package/dist/vite/index.js +2931 -1282
- package/dist/vite/index.js.map +1 -1
- package/package.json +30 -19
- package/dist/Features-D_Pt7zpA.d.ts +0 -615
- package/dist/Search-DOJMNI2T.css +0 -193
- package/dist/Search-DOJMNI2T.css.map +0 -1
- package/dist/Search-VYYG3D43.js +0 -10
- package/dist/Search-VYYG3D43.js.map +0 -1
- package/dist/chunk-4YQE3TNM.js +0 -1
- package/dist/chunk-4YQE3TNM.js.map +0 -1
- package/dist/chunk-AXLJDGQL.js +0 -1
- package/dist/chunk-AXLJDGQL.js.map +0 -1
- package/dist/chunk-CZM5NX27.js +0 -909
- package/dist/chunk-CZM5NX27.js.map +0 -1
- package/dist/chunk-FZP2AVJL.js +0 -43
- package/dist/chunk-FZP2AVJL.js.map +0 -1
- package/dist/chunk-IEPSORG5.js +0 -444
- package/dist/chunk-IEPSORG5.js.map +0 -1
- package/dist/chunk-KUWEUO37.js +0 -1
- package/dist/chunk-KUWEUO37.js.map +0 -1
- package/dist/chunk-NBRHGTR2.js +0 -79
- package/dist/chunk-NBRHGTR2.js.map +0 -1
- package/dist/chunk-PGHUPTGL.js +0 -1035
- package/dist/chunk-PGHUPTGL.js.map +0 -1
- package/dist/chunk-PMS3P4MA.js +0 -43
- package/dist/chunk-PMS3P4MA.js.map +0 -1
- package/dist/chunk-QELSOHIY.js +0 -46
- package/dist/chunk-QELSOHIY.js.map +0 -1
- package/dist/chunk-R2QKY6G3.js +0 -1
- package/dist/chunk-R2QKY6G3.js.map +0 -1
- package/dist/chunk-ZPYQQZ7J.js +0 -210
- package/dist/chunk-ZPYQQZ7J.js.map +0 -1
- package/dist/icons/index.js.map +0 -1
- package/dist/index.css +0 -1290
- package/dist/index.css.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/mdx/provider.css +0 -403
- package/dist/mdx/provider.css.map +0 -1
- package/dist/runtime/index.js.map +0 -1
- package/dist/types-CLkHwCch.d.ts +0 -248
- package/dist/ui/index.css +0 -1290
- package/dist/ui/index.css.map +0 -1
- package/dist/ui/index.js.map +0 -1
- package/dist/ui/styles.css.map +0 -1
- package/dist/ui/styles.js.map +0 -1
|
@@ -1,615 +0,0 @@
|
|
|
1
|
-
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import { ReactNode, ComponentProps, CSSProperties } from 'react';
|
|
3
|
-
import { NavLink, Link } from 'react-router';
|
|
4
|
-
import { S as SidebarItem, b as ProjectMeta, f as SponsorConfig } from './types-CLkHwCch.js';
|
|
5
|
-
|
|
6
|
-
interface RootLayoutProps {
|
|
7
|
-
children: ReactNode;
|
|
8
|
-
/** Favicon URL (renders <link rel="icon">) */
|
|
9
|
-
favicon?: string;
|
|
10
|
-
/** Language attribute for <html> (default: from config or "en") */
|
|
11
|
-
lang?: string;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Default HTML shell for Ardo sites. Replaces the boilerplate `Layout` export
|
|
15
|
-
* that every root.tsx must define for React Router.
|
|
16
|
-
*
|
|
17
|
-
* @example Basic usage
|
|
18
|
-
* ```tsx
|
|
19
|
-
* // app/root.tsx
|
|
20
|
-
* export { RootLayout as Layout } from "ardo/ui"
|
|
21
|
-
* ```
|
|
22
|
-
*
|
|
23
|
-
* @example With favicon
|
|
24
|
-
* ```tsx
|
|
25
|
-
* import logo from "./assets/logo.svg"
|
|
26
|
-
* export const Layout = (props) => <RootLayout favicon={logo} {...props} />
|
|
27
|
-
* ```
|
|
28
|
-
*/
|
|
29
|
-
declare function RootLayout({ children, favicon, lang }: RootLayoutProps): react_jsx_runtime.JSX.Element;
|
|
30
|
-
interface LayoutProps {
|
|
31
|
-
/** Header content */
|
|
32
|
-
header?: ReactNode;
|
|
33
|
-
/** Sidebar content */
|
|
34
|
-
sidebar?: ReactNode;
|
|
35
|
-
/** Footer content */
|
|
36
|
-
footer?: ReactNode;
|
|
37
|
-
/** Main content */
|
|
38
|
-
children: ReactNode;
|
|
39
|
-
/** Additional CSS classes */
|
|
40
|
-
className?: string;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Layout component with explicit slot props.
|
|
44
|
-
*
|
|
45
|
-
* @example
|
|
46
|
-
* ```tsx
|
|
47
|
-
* <Layout
|
|
48
|
-
* header={<Header logo="/logo.svg" title="Ardo" nav={...} />}
|
|
49
|
-
* sidebar={<Sidebar>...</Sidebar>}
|
|
50
|
-
* footer={<Footer message="MIT License" />}
|
|
51
|
-
* >
|
|
52
|
-
* <Outlet />
|
|
53
|
-
* </Layout>
|
|
54
|
-
* ```
|
|
55
|
-
*/
|
|
56
|
-
declare function Layout({ header, sidebar, footer, children, className }: LayoutProps): react_jsx_runtime.JSX.Element;
|
|
57
|
-
|
|
58
|
-
interface HeaderProps {
|
|
59
|
-
/** Logo image URL or light/dark variants */
|
|
60
|
-
logo?: string | {
|
|
61
|
-
light: string;
|
|
62
|
-
dark: string;
|
|
63
|
-
};
|
|
64
|
-
/** Site title displayed next to logo */
|
|
65
|
-
title?: string;
|
|
66
|
-
/** Navigation content (Nav component or custom) */
|
|
67
|
-
nav?: ReactNode;
|
|
68
|
-
/** Actions/right side content (social links, custom buttons) */
|
|
69
|
-
actions?: ReactNode;
|
|
70
|
-
/** Show search (default: true) */
|
|
71
|
-
search?: boolean;
|
|
72
|
-
/** Show theme toggle (default: true) */
|
|
73
|
-
themeToggle?: boolean;
|
|
74
|
-
/** Additional content rendered in the mobile menu (e.g. sidebar) */
|
|
75
|
-
mobileMenuContent?: ReactNode;
|
|
76
|
-
/** Additional CSS classes */
|
|
77
|
-
className?: string;
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Header component with explicit slot props.
|
|
81
|
-
*
|
|
82
|
-
* Automatically pulls `title` from config and `logo`/`siteTitle` from themeConfig.
|
|
83
|
-
* Props serve as overrides.
|
|
84
|
-
*
|
|
85
|
-
* @example Zero-config
|
|
86
|
-
* ```tsx
|
|
87
|
-
* <Header />
|
|
88
|
-
* ```
|
|
89
|
-
*
|
|
90
|
-
* @example With overrides
|
|
91
|
-
* ```tsx
|
|
92
|
-
* <Header
|
|
93
|
-
* logo="/logo.svg"
|
|
94
|
-
* title="Ardo"
|
|
95
|
-
* nav={
|
|
96
|
-
* <Nav>
|
|
97
|
-
* <NavLink to="/guide">Guide</NavLink>
|
|
98
|
-
* <NavLink to="/api">API</NavLink>
|
|
99
|
-
* </Nav>
|
|
100
|
-
* }
|
|
101
|
-
* />
|
|
102
|
-
* ```
|
|
103
|
-
*/
|
|
104
|
-
declare function Header({ logo, title, nav, actions, search, themeToggle, mobileMenuContent, className, }: HeaderProps): react_jsx_runtime.JSX.Element;
|
|
105
|
-
interface SocialLinkProps {
|
|
106
|
-
/** URL to link to */
|
|
107
|
-
href: string;
|
|
108
|
-
/** Social icon type */
|
|
109
|
-
icon: "github" | "twitter" | "discord" | "linkedin" | "youtube" | "npm";
|
|
110
|
-
/** Accessible label */
|
|
111
|
-
ariaLabel?: string;
|
|
112
|
-
/** Additional CSS classes */
|
|
113
|
-
className?: string;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Social media link with icon.
|
|
117
|
-
*
|
|
118
|
-
* @example
|
|
119
|
-
* ```tsx
|
|
120
|
-
* <SocialLink href="https://github.com/..." icon="github" />
|
|
121
|
-
* ```
|
|
122
|
-
*/
|
|
123
|
-
declare function SocialLink({ href, icon, ariaLabel, className }: SocialLinkProps): react_jsx_runtime.JSX.Element;
|
|
124
|
-
|
|
125
|
-
/** Route path type - uses React Router's NavLink 'to' prop type for type-safe routes */
|
|
126
|
-
type RoutePath$1 = ComponentProps<typeof NavLink>["to"];
|
|
127
|
-
interface SidebarProps {
|
|
128
|
-
/** Sidebar items (for data-driven approach) */
|
|
129
|
-
items?: SidebarItem[];
|
|
130
|
-
/** Children for JSX composition (SidebarGroup, SidebarLink) */
|
|
131
|
-
children?: ReactNode;
|
|
132
|
-
/** Additional CSS classes */
|
|
133
|
-
className?: string;
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* Sidebar component supporting data-driven, JSX composition, and zero-config patterns.
|
|
137
|
-
*
|
|
138
|
-
* When neither `items` nor `children` are provided, automatically renders from
|
|
139
|
-
* the Ardo sidebar context (`virtual:ardo/sidebar`).
|
|
140
|
-
*
|
|
141
|
-
* @example Zero-config (from context)
|
|
142
|
-
* ```tsx
|
|
143
|
-
* <Sidebar />
|
|
144
|
-
* ```
|
|
145
|
-
*
|
|
146
|
-
* @example Data-driven (items prop)
|
|
147
|
-
* ```tsx
|
|
148
|
-
* <Sidebar items={[
|
|
149
|
-
* { text: 'Introduction', link: '/intro' },
|
|
150
|
-
* { text: 'Guide', items: [
|
|
151
|
-
* { text: 'Getting Started', link: '/guide/getting-started' }
|
|
152
|
-
* ]}
|
|
153
|
-
* ]} />
|
|
154
|
-
* ```
|
|
155
|
-
*
|
|
156
|
-
* @example JSX composition
|
|
157
|
-
* ```tsx
|
|
158
|
-
* <Sidebar>
|
|
159
|
-
* <SidebarLink to="/intro">Introduction</SidebarLink>
|
|
160
|
-
* <SidebarGroup title="Guide">
|
|
161
|
-
* <SidebarLink to="/guide/getting-started">Getting Started</SidebarLink>
|
|
162
|
-
* </SidebarGroup>
|
|
163
|
-
* </Sidebar>
|
|
164
|
-
* ```
|
|
165
|
-
*/
|
|
166
|
-
declare function Sidebar({ items, children, className }: SidebarProps): react_jsx_runtime.JSX.Element;
|
|
167
|
-
interface SidebarGroupProps {
|
|
168
|
-
/** Group title */
|
|
169
|
-
title: string;
|
|
170
|
-
/** Optional link for the group title */
|
|
171
|
-
to?: string;
|
|
172
|
-
/** Initial collapsed state (default: false) */
|
|
173
|
-
collapsed?: boolean;
|
|
174
|
-
/** Whether group is collapsible (default: true if has children) */
|
|
175
|
-
collapsible?: boolean;
|
|
176
|
-
/** Children (SidebarLink, nested SidebarGroup) */
|
|
177
|
-
children?: ReactNode;
|
|
178
|
-
/** Additional CSS classes */
|
|
179
|
-
className?: string;
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* Group component for organizing sidebar links.
|
|
183
|
-
*
|
|
184
|
-
* @example
|
|
185
|
-
* ```tsx
|
|
186
|
-
* <SidebarGroup title="Guide">
|
|
187
|
-
* <SidebarLink to="/guide/intro">Introduction</SidebarLink>
|
|
188
|
-
* <SidebarLink to="/guide/setup">Setup</SidebarLink>
|
|
189
|
-
* </SidebarGroup>
|
|
190
|
-
* ```
|
|
191
|
-
*
|
|
192
|
-
* @example With collapsible state
|
|
193
|
-
* ```tsx
|
|
194
|
-
* <SidebarGroup title="Advanced" collapsed>
|
|
195
|
-
* <SidebarLink to="/advanced/config">Configuration</SidebarLink>
|
|
196
|
-
* </SidebarGroup>
|
|
197
|
-
* ```
|
|
198
|
-
*/
|
|
199
|
-
declare function SidebarGroup({ title, to, collapsed: initialCollapsed, collapsible, children, className, }: SidebarGroupProps): react_jsx_runtime.JSX.Element;
|
|
200
|
-
interface SidebarLinkProps {
|
|
201
|
-
/** Internal route path (type-safe with React Router's registered routes) */
|
|
202
|
-
to: RoutePath$1;
|
|
203
|
-
/** Link text */
|
|
204
|
-
children: ReactNode;
|
|
205
|
-
/** Additional CSS classes */
|
|
206
|
-
className?: string;
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* Sidebar navigation link.
|
|
210
|
-
*
|
|
211
|
-
* @example
|
|
212
|
-
* ```tsx
|
|
213
|
-
* <SidebarLink to="/guide/getting-started">Getting Started</SidebarLink>
|
|
214
|
-
* ```
|
|
215
|
-
*/
|
|
216
|
-
declare function SidebarLink({ to, children, className }: SidebarLinkProps): react_jsx_runtime.JSX.Element;
|
|
217
|
-
|
|
218
|
-
interface FooterProps {
|
|
219
|
-
/** Footer message (supports HTML string) */
|
|
220
|
-
message?: string;
|
|
221
|
-
/** Copyright text (supports HTML string) */
|
|
222
|
-
copyright?: string;
|
|
223
|
-
/** Custom content (overrides all automatic rendering) */
|
|
224
|
-
children?: ReactNode;
|
|
225
|
-
/** Additional CSS classes */
|
|
226
|
-
className?: string;
|
|
227
|
-
/** Project metadata — renders linked "name vX.Y.Z" */
|
|
228
|
-
project?: ProjectMeta;
|
|
229
|
-
/** Sponsor link — renders "Sponsored by X" */
|
|
230
|
-
sponsor?: SponsorConfig;
|
|
231
|
-
/** Build timestamp (ISO string) — renders formatted date */
|
|
232
|
-
buildTime?: string;
|
|
233
|
-
/** Git commit hash — rendered next to the build date */
|
|
234
|
-
buildHash?: string;
|
|
235
|
-
/** Show "Built with Ardo" link (default: true) */
|
|
236
|
-
ardoLink?: boolean;
|
|
237
|
-
}
|
|
238
|
-
/**
|
|
239
|
-
* Footer component with structured layout for project info, sponsor, and build metadata.
|
|
240
|
-
*
|
|
241
|
-
* Automatically pulls data from Ardo context (`config.project`, `config.buildTime`,
|
|
242
|
-
* `config.buildHash`, `themeConfig.footer.*`). Props serve as overrides.
|
|
243
|
-
*
|
|
244
|
-
* When `children` is provided, all automatic rendering is skipped.
|
|
245
|
-
*
|
|
246
|
-
* @example Automatic (zero-config)
|
|
247
|
-
* ```tsx
|
|
248
|
-
* <Footer />
|
|
249
|
-
* ```
|
|
250
|
-
*
|
|
251
|
-
* @example With overrides
|
|
252
|
-
* ```tsx
|
|
253
|
-
* <Footer
|
|
254
|
-
* sponsor={{ text: "Sebastian Software", link: "https://sebastian-software.com/oss" }}
|
|
255
|
-
* message="Released under the MIT License."
|
|
256
|
-
* copyright="Copyright 2026 Sebastian Software GmbH"
|
|
257
|
-
* />
|
|
258
|
-
* ```
|
|
259
|
-
*
|
|
260
|
-
* @example Custom content
|
|
261
|
-
* ```tsx
|
|
262
|
-
* <Footer>
|
|
263
|
-
* <CustomFooterContent />
|
|
264
|
-
* </Footer>
|
|
265
|
-
* ```
|
|
266
|
-
*/
|
|
267
|
-
declare function Footer({ message, copyright, children, className, project, sponsor, buildTime, buildHash, ardoLink, }: FooterProps): react_jsx_runtime.JSX.Element | null;
|
|
268
|
-
interface FooterMessageProps {
|
|
269
|
-
children: ReactNode;
|
|
270
|
-
className?: string;
|
|
271
|
-
}
|
|
272
|
-
interface FooterCopyrightProps {
|
|
273
|
-
children: ReactNode;
|
|
274
|
-
className?: string;
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
declare function TOC(): react_jsx_runtime.JSX.Element | null;
|
|
278
|
-
|
|
279
|
-
interface ContentProps {
|
|
280
|
-
children: ReactNode;
|
|
281
|
-
}
|
|
282
|
-
declare function Content({ children }: ContentProps): react_jsx_runtime.JSX.Element;
|
|
283
|
-
|
|
284
|
-
interface DocPageProps {
|
|
285
|
-
children: ReactNode;
|
|
286
|
-
}
|
|
287
|
-
/**
|
|
288
|
-
* Full documentation page with Layout wrapper.
|
|
289
|
-
* Use this when you don't have a _layout.tsx file.
|
|
290
|
-
*
|
|
291
|
-
* @example
|
|
292
|
-
* ```tsx
|
|
293
|
-
* <DocPage>
|
|
294
|
-
* <Content />
|
|
295
|
-
* </DocPage>
|
|
296
|
-
* ```
|
|
297
|
-
*/
|
|
298
|
-
declare function DocPage({ children }: DocPageProps): react_jsx_runtime.JSX.Element;
|
|
299
|
-
interface DocContentProps {
|
|
300
|
-
children: ReactNode;
|
|
301
|
-
}
|
|
302
|
-
/**
|
|
303
|
-
* Documentation content without Layout wrapper.
|
|
304
|
-
* Use this when you have a _layout.tsx that provides the Layout.
|
|
305
|
-
*
|
|
306
|
-
* @example
|
|
307
|
-
* ```tsx
|
|
308
|
-
* // In _layout.tsx:
|
|
309
|
-
* <Layout>
|
|
310
|
-
* <Header ... />
|
|
311
|
-
* <Sidebar ... />
|
|
312
|
-
* <Outlet />
|
|
313
|
-
* <Footer ... />
|
|
314
|
-
* </Layout>
|
|
315
|
-
*
|
|
316
|
-
* // In page routes:
|
|
317
|
-
* <DocContent>
|
|
318
|
-
* <MarkdownContent />
|
|
319
|
-
* </DocContent>
|
|
320
|
-
* ```
|
|
321
|
-
*/
|
|
322
|
-
declare function DocContent({ children }: DocContentProps): react_jsx_runtime.JSX.Element;
|
|
323
|
-
interface DocLayoutProps {
|
|
324
|
-
content: ReactNode;
|
|
325
|
-
}
|
|
326
|
-
/**
|
|
327
|
-
* @deprecated Use DocPage or DocContent instead
|
|
328
|
-
*/
|
|
329
|
-
declare function DocLayout({ content }: DocLayoutProps): react_jsx_runtime.JSX.Element;
|
|
330
|
-
|
|
331
|
-
declare function HomePage(): react_jsx_runtime.JSX.Element;
|
|
332
|
-
|
|
333
|
-
declare function ThemeToggle(): react_jsx_runtime.JSX.Element;
|
|
334
|
-
|
|
335
|
-
declare function Search(): react_jsx_runtime.JSX.Element;
|
|
336
|
-
|
|
337
|
-
interface CodeBlockProps {
|
|
338
|
-
/** The code to display (as prop or as children string) */
|
|
339
|
-
code?: string;
|
|
340
|
-
/** Programming language for syntax highlighting */
|
|
341
|
-
language?: string;
|
|
342
|
-
/** Optional title shown above the code */
|
|
343
|
-
title?: string;
|
|
344
|
-
/** Show line numbers */
|
|
345
|
-
lineNumbers?: boolean;
|
|
346
|
-
/** Line numbers to highlight */
|
|
347
|
-
highlightLines?: number[];
|
|
348
|
-
/** Code as children — supports template literals with auto-outdent */
|
|
349
|
-
children?: React.ReactNode;
|
|
350
|
-
/** Pre-rendered Shiki HTML (injected by ardo:codeblock-highlight plugin) */
|
|
351
|
-
__html?: string;
|
|
352
|
-
}
|
|
353
|
-
/**
|
|
354
|
-
* Syntax-highlighted code block with copy button.
|
|
355
|
-
*
|
|
356
|
-
* Code can be provided via the `code` prop or as children:
|
|
357
|
-
* ```tsx
|
|
358
|
-
* <CodeBlock language="typescript">{`
|
|
359
|
-
* const x = 42
|
|
360
|
-
* `}</CodeBlock>
|
|
361
|
-
* ```tsx
|
|
362
|
-
* When children is a string, leading/trailing blank lines and common
|
|
363
|
-
* indentation are stripped automatically.
|
|
364
|
-
*/
|
|
365
|
-
declare function CodeBlock({ code: codeProp, language, title, lineNumbers, highlightLines, children, __html, }: CodeBlockProps): react_jsx_runtime.JSX.Element;
|
|
366
|
-
interface CodeGroupProps {
|
|
367
|
-
/** CodeBlock components to display as tabs */
|
|
368
|
-
children: React.ReactNode;
|
|
369
|
-
/** Comma-separated tab labels */
|
|
370
|
-
labels?: string;
|
|
371
|
-
}
|
|
372
|
-
/**
|
|
373
|
-
* Tabbed group of code blocks.
|
|
374
|
-
* Labels come from the `labels` prop (set at remark level) or fall back to
|
|
375
|
-
* data-label / title / language props on children.
|
|
376
|
-
*/
|
|
377
|
-
declare function CodeGroup({ children, labels: labelsStr }: CodeGroupProps): react_jsx_runtime.JSX.Element;
|
|
378
|
-
|
|
379
|
-
type ContainerType = "tip" | "warning" | "danger" | "info" | "note";
|
|
380
|
-
interface ContainerProps {
|
|
381
|
-
/** Container type determining the style */
|
|
382
|
-
type: ContainerType;
|
|
383
|
-
/** Optional custom title */
|
|
384
|
-
title?: string;
|
|
385
|
-
/** Content to display inside the container */
|
|
386
|
-
children: ReactNode;
|
|
387
|
-
}
|
|
388
|
-
/**
|
|
389
|
-
* A styled container for callouts, tips, warnings, etc.
|
|
390
|
-
*/
|
|
391
|
-
declare function Container({ type, title, children }: ContainerProps): react_jsx_runtime.JSX.Element;
|
|
392
|
-
interface TipProps {
|
|
393
|
-
/** Optional custom title */
|
|
394
|
-
title?: string;
|
|
395
|
-
/** Content to display */
|
|
396
|
-
children: ReactNode;
|
|
397
|
-
}
|
|
398
|
-
/**
|
|
399
|
-
* A tip container for helpful information.
|
|
400
|
-
*/
|
|
401
|
-
declare function Tip({ title, children }: TipProps): react_jsx_runtime.JSX.Element;
|
|
402
|
-
interface WarningProps {
|
|
403
|
-
/** Optional custom title */
|
|
404
|
-
title?: string;
|
|
405
|
-
/** Content to display */
|
|
406
|
-
children: ReactNode;
|
|
407
|
-
}
|
|
408
|
-
/**
|
|
409
|
-
* A warning container for cautionary information.
|
|
410
|
-
*/
|
|
411
|
-
declare function Warning({ title, children }: WarningProps): react_jsx_runtime.JSX.Element;
|
|
412
|
-
interface DangerProps {
|
|
413
|
-
/** Optional custom title */
|
|
414
|
-
title?: string;
|
|
415
|
-
/** Content to display */
|
|
416
|
-
children: ReactNode;
|
|
417
|
-
}
|
|
418
|
-
/**
|
|
419
|
-
* A danger container for critical warnings.
|
|
420
|
-
*/
|
|
421
|
-
declare function Danger({ title, children }: DangerProps): react_jsx_runtime.JSX.Element;
|
|
422
|
-
interface InfoProps {
|
|
423
|
-
/** Optional custom title */
|
|
424
|
-
title?: string;
|
|
425
|
-
/** Content to display */
|
|
426
|
-
children: ReactNode;
|
|
427
|
-
}
|
|
428
|
-
/**
|
|
429
|
-
* An info container for informational content.
|
|
430
|
-
*/
|
|
431
|
-
declare function Info({ title, children }: InfoProps): react_jsx_runtime.JSX.Element;
|
|
432
|
-
interface NoteProps {
|
|
433
|
-
/** Optional custom title */
|
|
434
|
-
title?: string;
|
|
435
|
-
/** Content to display */
|
|
436
|
-
children: ReactNode;
|
|
437
|
-
}
|
|
438
|
-
/**
|
|
439
|
-
* A note container for additional information.
|
|
440
|
-
*/
|
|
441
|
-
declare function Note({ title, children }: NoteProps): react_jsx_runtime.JSX.Element;
|
|
442
|
-
|
|
443
|
-
interface TabsProps {
|
|
444
|
-
/** Default active tab value */
|
|
445
|
-
defaultValue?: string;
|
|
446
|
-
/** Tab components (TabList and TabPanels) */
|
|
447
|
-
children: ReactNode;
|
|
448
|
-
}
|
|
449
|
-
/**
|
|
450
|
-
* Tabs container component for organizing content into tabbed panels.
|
|
451
|
-
*/
|
|
452
|
-
declare function Tabs({ defaultValue, children }: TabsProps): react_jsx_runtime.JSX.Element;
|
|
453
|
-
interface TabListProps {
|
|
454
|
-
/** Tab buttons */
|
|
455
|
-
children: ReactNode;
|
|
456
|
-
}
|
|
457
|
-
/**
|
|
458
|
-
* Container for Tab buttons.
|
|
459
|
-
*/
|
|
460
|
-
declare function TabList({ children }: TabListProps): react_jsx_runtime.JSX.Element;
|
|
461
|
-
interface TabProps {
|
|
462
|
-
/** Unique value identifying this tab (optional if tab order matches panels) */
|
|
463
|
-
value?: string;
|
|
464
|
-
/** Tab button label */
|
|
465
|
-
children: ReactNode;
|
|
466
|
-
}
|
|
467
|
-
/**
|
|
468
|
-
* Individual tab button.
|
|
469
|
-
*/
|
|
470
|
-
declare function Tab({ value, children }: TabProps): react_jsx_runtime.JSX.Element;
|
|
471
|
-
interface TabPanelProps {
|
|
472
|
-
/** Value matching the corresponding Tab (optional if panel order matches tabs) */
|
|
473
|
-
value?: string;
|
|
474
|
-
/** Panel content */
|
|
475
|
-
children: ReactNode;
|
|
476
|
-
}
|
|
477
|
-
/**
|
|
478
|
-
* Content panel for a tab.
|
|
479
|
-
*/
|
|
480
|
-
declare function TabPanel({ value, children }: TabPanelProps): react_jsx_runtime.JSX.Element | null;
|
|
481
|
-
interface TabPanelsProps {
|
|
482
|
-
/** TabPanel components */
|
|
483
|
-
children: ReactNode;
|
|
484
|
-
}
|
|
485
|
-
/**
|
|
486
|
-
* Container for TabPanel components.
|
|
487
|
-
*/
|
|
488
|
-
declare function TabPanels({ children }: TabPanelsProps): react_jsx_runtime.JSX.Element;
|
|
489
|
-
|
|
490
|
-
interface CopyButtonProps {
|
|
491
|
-
code: string;
|
|
492
|
-
}
|
|
493
|
-
declare function CopyButton({ code }: CopyButtonProps): react_jsx_runtime.JSX.Element;
|
|
494
|
-
|
|
495
|
-
/** Internal route path from React Router */
|
|
496
|
-
type RoutePath = ComponentProps<typeof Link>["to"];
|
|
497
|
-
/** External URL starting with http:// or https:// */
|
|
498
|
-
type ExternalUrl = `http://${string}` | `https://${string}`;
|
|
499
|
-
interface HeroAction {
|
|
500
|
-
/** Button text */
|
|
501
|
-
text: string;
|
|
502
|
-
/** Link destination - internal route path or external URL */
|
|
503
|
-
link: RoutePath | ExternalUrl;
|
|
504
|
-
/** Visual theme: "brand" for primary, "alt" for secondary */
|
|
505
|
-
theme?: "brand" | "alt";
|
|
506
|
-
/** Optional icon as ReactNode (e.g. Lucide icon component) */
|
|
507
|
-
icon?: ReactNode;
|
|
508
|
-
}
|
|
509
|
-
interface HeroImage {
|
|
510
|
-
/** Image for light mode */
|
|
511
|
-
light: string;
|
|
512
|
-
/** Image for dark mode */
|
|
513
|
-
dark?: string;
|
|
514
|
-
/** Alt text for the image */
|
|
515
|
-
alt?: string;
|
|
516
|
-
}
|
|
517
|
-
interface HeroProps {
|
|
518
|
-
/** Large title displayed prominently */
|
|
519
|
-
name?: string;
|
|
520
|
-
/** Secondary text below the name */
|
|
521
|
-
text?: string;
|
|
522
|
-
/** Descriptive tagline */
|
|
523
|
-
tagline?: string;
|
|
524
|
-
/** Hero image - can be a string URL or an object with light/dark variants */
|
|
525
|
-
image?: string | HeroImage;
|
|
526
|
-
/** Call-to-action buttons */
|
|
527
|
-
actions?: HeroAction[];
|
|
528
|
-
/** Additional CSS class */
|
|
529
|
-
className?: string;
|
|
530
|
-
/** Version string displayed as a pill badge above the name */
|
|
531
|
-
version?: string;
|
|
532
|
-
}
|
|
533
|
-
/**
|
|
534
|
-
* Hero section component for landing pages.
|
|
535
|
-
*
|
|
536
|
-
* @example
|
|
537
|
-
* ```tsx
|
|
538
|
-
* import { ArrowRight, Github } from "lucide-react"
|
|
539
|
-
*
|
|
540
|
-
* <Hero
|
|
541
|
-
* name="Ardo"
|
|
542
|
-
* text="React-first Documentation"
|
|
543
|
-
* tagline="Build beautiful documentation sites with React."
|
|
544
|
-
* image="/logo.svg"
|
|
545
|
-
* actions={[
|
|
546
|
-
* { text: "Get Started", link: "/guide/getting-started", theme: "brand", icon: <ArrowRight size={16} /> },
|
|
547
|
-
* { text: "GitHub", link: "https://github.com/...", theme: "alt", icon: <Github size={16} /> }
|
|
548
|
-
* ]}
|
|
549
|
-
* />
|
|
550
|
-
* ```
|
|
551
|
-
*/
|
|
552
|
-
declare function Hero({ name, text, tagline, image, actions, className, version }: HeroProps): react_jsx_runtime.JSX.Element;
|
|
553
|
-
|
|
554
|
-
interface FeatureItem {
|
|
555
|
-
/** Feature title */
|
|
556
|
-
title: string;
|
|
557
|
-
/** Icon as ReactNode (emoji, Lucide icon component, or any JSX) */
|
|
558
|
-
icon?: ReactNode;
|
|
559
|
-
/** Feature description */
|
|
560
|
-
details: string;
|
|
561
|
-
/** Optional link */
|
|
562
|
-
link?: string;
|
|
563
|
-
/** Link text (defaults to "Learn more") */
|
|
564
|
-
linkText?: string;
|
|
565
|
-
}
|
|
566
|
-
interface FeaturesProps {
|
|
567
|
-
/** Array of feature items to display */
|
|
568
|
-
items: FeatureItem[];
|
|
569
|
-
/** Section title */
|
|
570
|
-
title?: string;
|
|
571
|
-
/** Section subtitle */
|
|
572
|
-
subtitle?: string;
|
|
573
|
-
/** Additional CSS class */
|
|
574
|
-
className?: string;
|
|
575
|
-
}
|
|
576
|
-
interface FeatureCardProps extends FeatureItem {
|
|
577
|
-
/** Additional CSS class */
|
|
578
|
-
className?: string;
|
|
579
|
-
}
|
|
580
|
-
/**
|
|
581
|
-
* Individual feature card component.
|
|
582
|
-
*
|
|
583
|
-
* @example
|
|
584
|
-
* ```tsx
|
|
585
|
-
* import { Zap } from "lucide-react"
|
|
586
|
-
*
|
|
587
|
-
* // Using emoji
|
|
588
|
-
* <FeatureCard title="Fast" icon="⚡" details="Lightning fast." />
|
|
589
|
-
*
|
|
590
|
-
* // Using Lucide icon (tree-shakeable)
|
|
591
|
-
* <FeatureCard title="Fast" icon={<Zap size={28} />} details="Lightning fast." />
|
|
592
|
-
* ```
|
|
593
|
-
*/
|
|
594
|
-
declare function FeatureCard({ title, icon, details, link, linkText, className, style, }: FeatureCardProps & {
|
|
595
|
-
style?: CSSProperties;
|
|
596
|
-
}): react_jsx_runtime.JSX.Element;
|
|
597
|
-
/**
|
|
598
|
-
* Features grid component for displaying multiple feature cards.
|
|
599
|
-
*
|
|
600
|
-
* @example
|
|
601
|
-
* ```tsx
|
|
602
|
-
* <Features
|
|
603
|
-
* title="Key Features"
|
|
604
|
-
* subtitle="Everything you need to build great docs"
|
|
605
|
-
* items={[
|
|
606
|
-
* { title: "React-First", icon: "⚛️", details: "Built on React." },
|
|
607
|
-
* { title: "Fast", icon: "⚡", details: "Powered by Vite." },
|
|
608
|
-
* { title: "Type-Safe", icon: "📝", details: "Full TypeScript support." },
|
|
609
|
-
* ]}
|
|
610
|
-
* />
|
|
611
|
-
* ```
|
|
612
|
-
*/
|
|
613
|
-
declare function Features({ items, title, subtitle, className }: FeaturesProps): react_jsx_runtime.JSX.Element | null;
|
|
614
|
-
|
|
615
|
-
export { type FooterMessageProps as $, type TabListProps as A, TabPanel as B, CodeBlock as C, Danger as D, type TabPanelProps as E, FeatureCard as F, TabPanels as G, Header as H, Info as I, type TabPanelsProps as J, type TabProps as K, Layout as L, Tabs as M, Note as N, type TabsProps as O, ThemeToggle as P, Tip as Q, type TipProps as R, Search as S, TOC as T, type WarningProps as U, type HeaderProps as V, Warning as W, type SidebarProps as X, type FooterProps as Y, DocContent as Z, type FooterCopyrightProps as _, type CodeBlockProps as a, type LayoutProps as a0, RootLayout as a1, type RootLayoutProps as a2, SidebarGroup as a3, type SidebarGroupProps as a4, SidebarLink as a5, type SidebarLinkProps as a6, SocialLink as a7, type SocialLinkProps as a8, CodeGroup as b, type CodeGroupProps as c, Container as d, type ContainerProps as e, type ContainerType as f, Content as g, CopyButton as h, type DangerProps as i, DocLayout as j, DocPage as k, type FeatureCardProps as l, type FeatureItem as m, Features as n, type FeaturesProps as o, Footer as p, Hero as q, type HeroAction as r, type HeroImage as s, type HeroProps as t, HomePage as u, type InfoProps as v, type NoteProps as w, Sidebar as x, Tab as y, TabList as z };
|