@almadar/ui 2.15.8 → 2.15.10
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/dist/components/atoms/ContentSection.d.ts +16 -0
- package/dist/components/atoms/SectionHeader.d.ts +14 -0
- package/dist/components/atoms/StatCard.d.ts +13 -0
- package/dist/components/atoms/index.d.ts +3 -0
- package/dist/components/atoms/svg/SvgBranch.d.ts +12 -0
- package/dist/components/atoms/svg/SvgConnection.d.ts +13 -0
- package/dist/components/atoms/svg/SvgFlow.d.ts +10 -0
- package/dist/components/atoms/svg/SvgGrid.d.ts +14 -0
- package/dist/components/atoms/svg/SvgLobe.d.ts +13 -0
- package/dist/components/atoms/svg/SvgMesh.d.ts +12 -0
- package/dist/components/atoms/svg/SvgMorph.d.ts +11 -0
- package/dist/components/atoms/svg/SvgNode.d.ts +12 -0
- package/dist/components/atoms/svg/SvgPulse.d.ts +12 -0
- package/dist/components/atoms/svg/SvgRing.d.ts +13 -0
- package/dist/components/atoms/svg/SvgShield.d.ts +11 -0
- package/dist/components/atoms/svg/SvgStack.d.ts +13 -0
- package/dist/components/atoms/svg/index.d.ts +12 -0
- package/dist/{chunk-ACUO2BBW.js → components/index.cjs} +24764 -16677
- package/dist/components/index.js +37757 -889
- package/dist/components/molecules/AnimatedCounter.d.ts +18 -0
- package/dist/components/molecules/ArticleSection.d.ts +18 -0
- package/dist/components/molecules/CTABanner.d.ts +31 -0
- package/dist/components/molecules/CaseStudyCard.d.ts +24 -0
- package/dist/components/molecules/CodeExample.d.ts +23 -0
- package/dist/components/molecules/CommunityLinks.d.ts +25 -0
- package/dist/components/molecules/DocBreadcrumb.d.ts +20 -0
- package/dist/components/molecules/DocCodeBlock.d.ts +13 -0
- package/dist/components/molecules/DocPagination.d.ts +14 -0
- package/dist/components/molecules/DocSearch.d.ts +15 -0
- package/dist/components/molecules/DocSidebar.d.ts +24 -0
- package/dist/components/molecules/DocTOC.d.ts +24 -0
- package/dist/components/molecules/FeatureCard.d.ts +26 -0
- package/dist/components/molecules/FeatureGrid.d.ts +19 -0
- package/dist/components/molecules/GradientDivider.d.ts +14 -0
- package/dist/components/molecules/HeroSection.d.ts +36 -0
- package/dist/components/molecules/InstallBox.d.ts +16 -0
- package/dist/components/molecules/MarketingFooter.d.ts +27 -0
- package/dist/components/molecules/PricingCard.d.ts +21 -0
- package/dist/components/molecules/PricingGrid.d.ts +13 -0
- package/dist/components/molecules/PullQuote.d.ts +14 -0
- package/dist/components/molecules/ServiceCatalog.d.ts +19 -0
- package/dist/components/molecules/ShowcaseCard.d.ts +20 -0
- package/dist/components/molecules/SocialProof.d.ts +25 -0
- package/dist/components/molecules/SplitSection.d.ts +21 -0
- package/dist/components/molecules/StatsGrid.d.ts +17 -0
- package/dist/components/molecules/StepFlow.d.ts +20 -0
- package/dist/components/molecules/TagCloud.d.ts +18 -0
- package/dist/components/molecules/TeamCard.d.ts +18 -0
- package/dist/components/molecules/index.d.ts +19 -0
- package/dist/components/molecules/svg/AIGenerates.d.ts +7 -0
- package/dist/components/molecules/svg/ClosedCircuit.d.ts +7 -0
- package/dist/components/molecules/svg/CommunityOwnership.d.ts +7 -0
- package/dist/components/molecules/svg/CompileAnywhere.d.ts +7 -0
- package/dist/components/molecules/svg/ComposableModels.d.ts +7 -0
- package/dist/components/molecules/svg/DescribeProveDeploy.d.ts +7 -0
- package/dist/components/molecules/svg/DomainGrid.d.ts +7 -0
- package/dist/components/molecules/svg/EventBus.d.ts +7 -0
- package/dist/components/molecules/svg/OrbitalUnit.d.ts +7 -0
- package/dist/components/molecules/svg/PlanVerifyRemember.d.ts +7 -0
- package/dist/components/molecules/svg/ProveCorrect.d.ts +7 -0
- package/dist/components/molecules/svg/ServiceLayers.d.ts +7 -0
- package/dist/components/molecules/svg/SharedReality.d.ts +7 -0
- package/dist/components/molecules/svg/StandardLibrary.d.ts +7 -0
- package/dist/components/molecules/svg/StateMachine.d.ts +7 -0
- package/dist/components/molecules/svg/WorldModel.d.ts +7 -0
- package/dist/components/molecules/svg/index.d.ts +16 -0
- package/dist/components/organisms/CaseStudyOrganism.d.ts +19 -0
- package/dist/components/organisms/FeatureGridOrganism.d.ts +20 -0
- package/dist/components/organisms/HeroOrganism.d.ts +18 -0
- package/dist/components/organisms/PricingOrganism.d.ts +19 -0
- package/dist/components/organisms/ShowcaseOrganism.d.ts +20 -0
- package/dist/components/organisms/StatsOrganism.d.ts +17 -0
- package/dist/components/organisms/StepFlowOrganism.d.ts +20 -0
- package/dist/components/organisms/TeamOrganism.d.ts +18 -0
- package/dist/components/organisms/game/three/index.cjs +2525 -0
- package/dist/components/organisms/game/three/index.js +1795 -50
- package/dist/components/organisms/index.d.ts +9 -0
- package/dist/components/organisms/marketing-types.d.ts +87 -0
- package/dist/components/templates/AboutPageTemplate.d.ts +26 -0
- package/dist/components/templates/FeatureDetailPageTemplate.d.ts +27 -0
- package/dist/components/templates/LandingPageTemplate.d.ts +31 -0
- package/dist/components/templates/PricingPageTemplate.d.ts +26 -0
- package/dist/components/templates/index.d.ts +4 -0
- package/dist/context/index.cjs +550 -0
- package/dist/context/index.js +420 -6
- package/dist/docs/index.cjs +4015 -0
- package/dist/docs/index.d.cts +412 -0
- package/dist/docs/index.d.ts +29 -0
- package/dist/docs/index.js +3977 -0
- package/dist/hooks/index.cjs +2606 -0
- package/dist/hooks/index.js +2535 -8
- package/dist/illustrations/index.cjs +3004 -0
- package/dist/illustrations/index.d.cts +261 -0
- package/dist/illustrations/index.d.ts +35 -0
- package/dist/illustrations/index.js +2971 -0
- package/dist/{chunk-XL7WB2O5.js → lib/index.cjs} +454 -274
- package/dist/lib/index.js +1407 -3
- package/dist/locales/index.cjs +340 -0
- package/dist/locales/index.js +105 -2
- package/dist/marketing/index.cjs +4683 -0
- package/dist/marketing/index.d.cts +831 -0
- package/dist/marketing/index.d.ts +62 -0
- package/dist/marketing/index.js +4626 -0
- package/dist/providers/index.cjs +4811 -0
- package/dist/providers/index.js +4765 -11
- package/dist/{chunk-K2D5D3WK.js → renderer/index.cjs} +101 -42
- package/dist/renderer/index.js +1036 -2
- package/dist/runtime/index.cjs +4400 -0
- package/dist/runtime/index.js +3615 -19
- package/dist/{chunk-N7MVUW4R.js → stores/index.cjs} +24 -1
- package/dist/stores/index.js +194 -2
- package/dist/tsup.config.d.ts +2 -1
- package/package.json +27 -12
- package/tailwind-preset.cjs +9 -0
- package/themes/index.css +22 -20
- package/dist/chunk-3HJHHULT.js +0 -93
- package/dist/chunk-3JGAROCW.js +0 -149
- package/dist/chunk-4N3BAPDB.js +0 -1667
- package/dist/chunk-CDIOHSKG.js +0 -661
- package/dist/chunk-DKQN5FVU.js +0 -279
- package/dist/chunk-JJHCOO34.js +0 -375
- package/dist/chunk-PKBMQBKP.js +0 -5
- package/dist/chunk-QIABKRCN.js +0 -107
- package/dist/chunk-SD3KVCY6.js +0 -1465
- package/dist/chunk-YXZM3WCF.js +0 -222
|
@@ -0,0 +1,412 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { LucideIcon } from 'lucide-react';
|
|
3
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Box Component
|
|
7
|
+
*
|
|
8
|
+
* A versatile layout primitive that provides spacing, background, border, and shadow controls.
|
|
9
|
+
* Think of it as a styled div with consistent design tokens.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
type BoxPadding = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
13
|
+
type BoxMargin = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "auto";
|
|
14
|
+
type BoxBg = "transparent" | "primary" | "secondary" | "muted" | "accent" | "surface" | "overlay";
|
|
15
|
+
type BoxRounded = "none" | "sm" | "md" | "lg" | "xl" | "2xl" | "full";
|
|
16
|
+
type BoxShadow = "none" | "sm" | "md" | "lg" | "xl";
|
|
17
|
+
interface BoxProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
18
|
+
/** Padding on all sides */
|
|
19
|
+
padding?: BoxPadding;
|
|
20
|
+
/** Horizontal padding (overrides padding for x-axis) */
|
|
21
|
+
paddingX?: BoxPadding;
|
|
22
|
+
/** Vertical padding (overrides padding for y-axis) */
|
|
23
|
+
paddingY?: BoxPadding;
|
|
24
|
+
/** Margin on all sides */
|
|
25
|
+
margin?: BoxMargin;
|
|
26
|
+
/** Horizontal margin */
|
|
27
|
+
marginX?: BoxMargin;
|
|
28
|
+
/** Vertical margin */
|
|
29
|
+
marginY?: BoxMargin;
|
|
30
|
+
/** Background color */
|
|
31
|
+
bg?: BoxBg;
|
|
32
|
+
/** Show border */
|
|
33
|
+
border?: boolean;
|
|
34
|
+
/** Border radius */
|
|
35
|
+
rounded?: BoxRounded;
|
|
36
|
+
/** Box shadow */
|
|
37
|
+
shadow?: BoxShadow;
|
|
38
|
+
/** Display type */
|
|
39
|
+
display?: "block" | "inline" | "inline-block" | "flex" | "inline-flex" | "grid";
|
|
40
|
+
/** Fill available width */
|
|
41
|
+
fullWidth?: boolean;
|
|
42
|
+
/** Fill available height */
|
|
43
|
+
fullHeight?: boolean;
|
|
44
|
+
/** Overflow behavior */
|
|
45
|
+
overflow?: "auto" | "hidden" | "visible" | "scroll";
|
|
46
|
+
/** Position */
|
|
47
|
+
position?: "relative" | "absolute" | "fixed" | "sticky";
|
|
48
|
+
/** HTML element to render as */
|
|
49
|
+
as?: React.ElementType;
|
|
50
|
+
/** Declarative event name — emits UI:{action} via eventBus on click */
|
|
51
|
+
action?: string;
|
|
52
|
+
/** Payload to include with the action event */
|
|
53
|
+
actionPayload?: Record<string, unknown>;
|
|
54
|
+
/** Declarative hover event — emits UI:{hoverEvent} with { hovered: true/false } on mouseEnter/mouseLeave */
|
|
55
|
+
hoverEvent?: string;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Box - Versatile container component with design tokens
|
|
59
|
+
*/
|
|
60
|
+
declare const Box: React.ForwardRefExoticComponent<BoxProps & React.RefAttributes<HTMLDivElement>>;
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Stack Component
|
|
64
|
+
*
|
|
65
|
+
* A layout primitive for arranging children in a vertical or horizontal stack with consistent spacing.
|
|
66
|
+
* Includes convenience exports VStack and HStack for common use cases.
|
|
67
|
+
*/
|
|
68
|
+
|
|
69
|
+
type StackDirection = "horizontal" | "vertical";
|
|
70
|
+
type StackGap = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
71
|
+
type StackAlign = "start" | "center" | "end" | "stretch" | "baseline";
|
|
72
|
+
type StackJustify = "start" | "center" | "end" | "between" | "around" | "evenly";
|
|
73
|
+
interface StackProps {
|
|
74
|
+
/** Stack direction */
|
|
75
|
+
direction?: StackDirection;
|
|
76
|
+
/** Gap between children */
|
|
77
|
+
gap?: StackGap;
|
|
78
|
+
/** Align items on the cross axis */
|
|
79
|
+
align?: StackAlign;
|
|
80
|
+
/** Justify items on the main axis */
|
|
81
|
+
justify?: StackJustify;
|
|
82
|
+
/** Allow items to wrap */
|
|
83
|
+
wrap?: boolean;
|
|
84
|
+
/** Reverse the order of children */
|
|
85
|
+
reverse?: boolean;
|
|
86
|
+
/** Fill available space (flex: 1) */
|
|
87
|
+
flex?: boolean;
|
|
88
|
+
/** Custom class name */
|
|
89
|
+
className?: string;
|
|
90
|
+
/** Inline styles */
|
|
91
|
+
style?: React.CSSProperties;
|
|
92
|
+
/** Children elements */
|
|
93
|
+
children?: React.ReactNode;
|
|
94
|
+
/** HTML element to render as */
|
|
95
|
+
as?: React.ElementType;
|
|
96
|
+
/** Click handler */
|
|
97
|
+
onClick?: (e: React.MouseEvent) => void;
|
|
98
|
+
/** Keyboard handler */
|
|
99
|
+
onKeyDown?: (e: React.KeyboardEvent) => void;
|
|
100
|
+
/** Role for accessibility */
|
|
101
|
+
role?: string;
|
|
102
|
+
/** Tab index for focus management */
|
|
103
|
+
tabIndex?: number;
|
|
104
|
+
/** Declarative event name — emits UI:{action} via eventBus on click */
|
|
105
|
+
action?: string;
|
|
106
|
+
/** Payload to include with the action event */
|
|
107
|
+
actionPayload?: Record<string, unknown>;
|
|
108
|
+
/** When true, horizontal stacks flip to vertical below the md breakpoint (768px) */
|
|
109
|
+
responsive?: boolean;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* VStack - Vertical stack shorthand
|
|
113
|
+
*/
|
|
114
|
+
interface VStackProps extends Omit<StackProps, "direction"> {
|
|
115
|
+
}
|
|
116
|
+
declare const VStack: React.FC<VStackProps>;
|
|
117
|
+
/**
|
|
118
|
+
* HStack - Horizontal stack shorthand
|
|
119
|
+
*/
|
|
120
|
+
interface HStackProps extends Omit<StackProps, "direction"> {
|
|
121
|
+
}
|
|
122
|
+
declare const HStack: React.FC<HStackProps>;
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Typography Atom Component
|
|
126
|
+
*
|
|
127
|
+
* Text elements following the KFlow design system with theme-aware styling.
|
|
128
|
+
*/
|
|
129
|
+
|
|
130
|
+
type TypographyVariant = "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "heading" | "subheading" | "body1" | "body2" | "body" | "caption" | "overline" | "small" | "large" | "label";
|
|
131
|
+
type TypographySize = "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl";
|
|
132
|
+
interface TypographyProps {
|
|
133
|
+
/** Typography variant */
|
|
134
|
+
variant?: TypographyVariant;
|
|
135
|
+
/** Heading level (1-6) - alternative to variant for headings */
|
|
136
|
+
level?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
137
|
+
/** Text color */
|
|
138
|
+
color?: "primary" | "secondary" | "muted" | "error" | "success" | "warning" | "inherit";
|
|
139
|
+
/** Text alignment */
|
|
140
|
+
align?: "left" | "center" | "right";
|
|
141
|
+
/** Font weight override */
|
|
142
|
+
weight?: "light" | "normal" | "medium" | "semibold" | "bold";
|
|
143
|
+
/** Font size override */
|
|
144
|
+
size?: TypographySize;
|
|
145
|
+
/** Truncate with ellipsis (single line) */
|
|
146
|
+
truncate?: boolean;
|
|
147
|
+
/** Overflow handling mode */
|
|
148
|
+
overflow?: "visible" | "hidden" | "wrap" | "clamp-2" | "clamp-3";
|
|
149
|
+
/** Custom HTML element */
|
|
150
|
+
as?: keyof React.JSX.IntrinsicElements;
|
|
151
|
+
/** HTML id attribute */
|
|
152
|
+
id?: string;
|
|
153
|
+
/** Additional class names */
|
|
154
|
+
className?: string;
|
|
155
|
+
/** Inline style */
|
|
156
|
+
style?: React.CSSProperties;
|
|
157
|
+
/** Text content (alternative to children) */
|
|
158
|
+
content?: React.ReactNode;
|
|
159
|
+
/** Children elements */
|
|
160
|
+
children?: React.ReactNode;
|
|
161
|
+
}
|
|
162
|
+
declare const Typography: React.FC<TypographyProps>;
|
|
163
|
+
|
|
164
|
+
type ButtonVariant = "primary" | "secondary" | "ghost" | "danger" | "success" | "warning" | "default";
|
|
165
|
+
type ButtonSize = "sm" | "md" | "lg";
|
|
166
|
+
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
167
|
+
variant?: ButtonVariant;
|
|
168
|
+
size?: ButtonSize;
|
|
169
|
+
isLoading?: boolean;
|
|
170
|
+
/** Left icon as ReactNode, Lucide component, or string name (e.g. "plus", "trash") */
|
|
171
|
+
leftIcon?: React.ReactNode | LucideIcon | string;
|
|
172
|
+
/** Right icon as ReactNode, Lucide component, or string name */
|
|
173
|
+
rightIcon?: React.ReactNode | LucideIcon | string;
|
|
174
|
+
/** Alias for leftIcon */
|
|
175
|
+
icon?: React.ReactNode | LucideIcon | string;
|
|
176
|
+
/** Alias for rightIcon */
|
|
177
|
+
iconRight?: React.ReactNode | LucideIcon | string;
|
|
178
|
+
/** Declarative event name — emits UI:{action} via eventBus on click */
|
|
179
|
+
action?: string;
|
|
180
|
+
/** Payload to include with the action event */
|
|
181
|
+
actionPayload?: Record<string, unknown>;
|
|
182
|
+
/** Button label text (alternative to children for schema-driven rendering) */
|
|
183
|
+
label?: string;
|
|
184
|
+
}
|
|
185
|
+
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Icon Atom Component
|
|
189
|
+
*
|
|
190
|
+
* A wrapper component for Lucide icons with consistent sizing and styling.
|
|
191
|
+
* Uses theme-aware CSS variables for stroke width and color.
|
|
192
|
+
*
|
|
193
|
+
* Supports two APIs:
|
|
194
|
+
* - `icon` prop: Pass a LucideIcon component directly
|
|
195
|
+
* - `name` prop: Pass a string icon name (resolved from iconMap)
|
|
196
|
+
*/
|
|
197
|
+
|
|
198
|
+
type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
199
|
+
type IconAnimation = 'spin' | 'pulse' | 'none';
|
|
200
|
+
interface IconProps {
|
|
201
|
+
/** Lucide icon component (preferred for type-safe usage) */
|
|
202
|
+
icon?: LucideIcon;
|
|
203
|
+
/** Icon name as string (resolved from iconMap) */
|
|
204
|
+
name?: string;
|
|
205
|
+
/** Size of the icon */
|
|
206
|
+
size?: IconSize;
|
|
207
|
+
/** Color class (Tailwind color class) or 'inherit' for theme default */
|
|
208
|
+
color?: string;
|
|
209
|
+
/** Animation type */
|
|
210
|
+
animation?: IconAnimation;
|
|
211
|
+
/** Additional CSS classes */
|
|
212
|
+
className?: string;
|
|
213
|
+
/** Icon stroke width - uses theme default if not specified */
|
|
214
|
+
strokeWidth?: number;
|
|
215
|
+
/** Inline style */
|
|
216
|
+
style?: React.CSSProperties;
|
|
217
|
+
}
|
|
218
|
+
declare const Icon: React.FC<IconProps>;
|
|
219
|
+
|
|
220
|
+
type CardShadow = "none" | "sm" | "md" | "lg";
|
|
221
|
+
interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
222
|
+
variant?: "default" | "bordered" | "elevated" | "interactive";
|
|
223
|
+
padding?: "none" | "sm" | "md" | "lg";
|
|
224
|
+
/** Card title - renders in header if provided */
|
|
225
|
+
title?: string;
|
|
226
|
+
/** Card subtitle - renders below title */
|
|
227
|
+
subtitle?: string;
|
|
228
|
+
/** Shadow size override */
|
|
229
|
+
shadow?: CardShadow;
|
|
230
|
+
}
|
|
231
|
+
declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>>;
|
|
232
|
+
|
|
233
|
+
/**
|
|
234
|
+
* Divider Atom Component
|
|
235
|
+
*
|
|
236
|
+
* A divider component for separating content sections.
|
|
237
|
+
*/
|
|
238
|
+
|
|
239
|
+
type DividerOrientation = "horizontal" | "vertical";
|
|
240
|
+
type DividerVariant = "solid" | "dashed" | "dotted";
|
|
241
|
+
interface DividerProps {
|
|
242
|
+
/**
|
|
243
|
+
* Orientation of the divider
|
|
244
|
+
* @default 'horizontal'
|
|
245
|
+
*/
|
|
246
|
+
orientation?: DividerOrientation;
|
|
247
|
+
/**
|
|
248
|
+
* Text label to display in the divider
|
|
249
|
+
*/
|
|
250
|
+
label?: string;
|
|
251
|
+
/**
|
|
252
|
+
* Line style variant
|
|
253
|
+
* @default 'solid'
|
|
254
|
+
*/
|
|
255
|
+
variant?: DividerVariant;
|
|
256
|
+
/**
|
|
257
|
+
* Additional CSS classes
|
|
258
|
+
*/
|
|
259
|
+
className?: string;
|
|
260
|
+
}
|
|
261
|
+
declare const Divider: React.FC<DividerProps>;
|
|
262
|
+
|
|
263
|
+
interface SelectOption {
|
|
264
|
+
value: string;
|
|
265
|
+
label: string;
|
|
266
|
+
}
|
|
267
|
+
interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange"> {
|
|
268
|
+
/** Placeholder text */
|
|
269
|
+
placeholder?: string;
|
|
270
|
+
/** Current value */
|
|
271
|
+
value?: string | number;
|
|
272
|
+
/** Whether input is disabled */
|
|
273
|
+
disabled?: boolean;
|
|
274
|
+
/** Declarative event name for trait dispatch */
|
|
275
|
+
action?: string;
|
|
276
|
+
/** Input type - supports 'select' and 'textarea' in addition to standard types */
|
|
277
|
+
inputType?: "text" | "email" | "password" | "number" | "tel" | "url" | "search" | "date" | "datetime-local" | "time" | "checkbox" | "select" | "textarea";
|
|
278
|
+
error?: string;
|
|
279
|
+
leftIcon?: React.ReactNode;
|
|
280
|
+
rightIcon?: React.ReactNode;
|
|
281
|
+
/** Lucide icon component for left side (convenience prop) */
|
|
282
|
+
icon?: LucideIcon;
|
|
283
|
+
/** Show clear button when input has value */
|
|
284
|
+
clearable?: boolean;
|
|
285
|
+
/** Callback when clear button is clicked */
|
|
286
|
+
onClear?: () => void;
|
|
287
|
+
/** Options for select type */
|
|
288
|
+
options?: SelectOption[];
|
|
289
|
+
/** Rows for textarea type */
|
|
290
|
+
rows?: number;
|
|
291
|
+
/** onChange handler - accepts events from input, select, or textarea */
|
|
292
|
+
onChange?: React.ChangeEventHandler<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>;
|
|
293
|
+
}
|
|
294
|
+
declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>>;
|
|
295
|
+
|
|
296
|
+
/**
|
|
297
|
+
* DocSidebar Molecule Component
|
|
298
|
+
*
|
|
299
|
+
* A documentation navigation sidebar with collapsible category sections.
|
|
300
|
+
* Composes from Box, VStack, HStack, Typography, and Icon atoms.
|
|
301
|
+
*/
|
|
302
|
+
|
|
303
|
+
interface DocSidebarItem {
|
|
304
|
+
/** Display label */
|
|
305
|
+
label: string;
|
|
306
|
+
/** Navigation href */
|
|
307
|
+
href?: string;
|
|
308
|
+
/** Nested child items (makes this a collapsible category) */
|
|
309
|
+
items?: DocSidebarItem[];
|
|
310
|
+
/** Whether this item is currently active */
|
|
311
|
+
active?: boolean;
|
|
312
|
+
}
|
|
313
|
+
interface DocSidebarProps {
|
|
314
|
+
/** Sidebar navigation items */
|
|
315
|
+
items: DocSidebarItem[];
|
|
316
|
+
/** Additional CSS classes */
|
|
317
|
+
className?: string;
|
|
318
|
+
}
|
|
319
|
+
declare const DocSidebar: React.FC<DocSidebarProps>;
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
* DocTOC Molecule Component
|
|
323
|
+
*
|
|
324
|
+
* A table of contents component with active section highlighting.
|
|
325
|
+
* Composes from Box, VStack, and Typography atoms.
|
|
326
|
+
*/
|
|
327
|
+
|
|
328
|
+
interface DocTOCItem {
|
|
329
|
+
/** Heading element id to link to */
|
|
330
|
+
id: string;
|
|
331
|
+
/** Display label */
|
|
332
|
+
label: string;
|
|
333
|
+
/** Heading level: 2 for h2, 3 for h3, etc. */
|
|
334
|
+
level: number;
|
|
335
|
+
}
|
|
336
|
+
interface DocTOCProps {
|
|
337
|
+
/** Table of contents items */
|
|
338
|
+
items: DocTOCItem[];
|
|
339
|
+
/** Currently active section id */
|
|
340
|
+
activeId?: string;
|
|
341
|
+
/** Additional CSS classes */
|
|
342
|
+
className?: string;
|
|
343
|
+
}
|
|
344
|
+
declare const DocTOC: React.FC<DocTOCProps>;
|
|
345
|
+
|
|
346
|
+
/**
|
|
347
|
+
* DocBreadcrumb Molecule Component
|
|
348
|
+
*
|
|
349
|
+
* A breadcrumb navigation component for documentation pages.
|
|
350
|
+
* Composes from HStack, Typography, and Icon atoms.
|
|
351
|
+
*/
|
|
352
|
+
|
|
353
|
+
interface DocBreadcrumbItem {
|
|
354
|
+
/** Display label */
|
|
355
|
+
label: string;
|
|
356
|
+
/** Navigation href (omit for the current/last item) */
|
|
357
|
+
href?: string;
|
|
358
|
+
}
|
|
359
|
+
interface DocBreadcrumbProps {
|
|
360
|
+
/** Breadcrumb path items, last item is treated as current page */
|
|
361
|
+
items: DocBreadcrumbItem[];
|
|
362
|
+
/** Additional CSS classes */
|
|
363
|
+
className?: string;
|
|
364
|
+
}
|
|
365
|
+
declare const DocBreadcrumb: React.FC<DocBreadcrumbProps>;
|
|
366
|
+
|
|
367
|
+
interface DocCodeBlockProps {
|
|
368
|
+
/** Code content to display */
|
|
369
|
+
code: string;
|
|
370
|
+
/** Programming language label */
|
|
371
|
+
language?: string;
|
|
372
|
+
/** Optional title/filename shown in the header bar */
|
|
373
|
+
title?: string;
|
|
374
|
+
/** Show line numbers in the gutter */
|
|
375
|
+
showLineNumbers?: boolean;
|
|
376
|
+
/** Additional class names */
|
|
377
|
+
className?: string;
|
|
378
|
+
}
|
|
379
|
+
declare function DocCodeBlock({ code, language, title, showLineNumbers, className, }: DocCodeBlockProps): react_jsx_runtime.JSX.Element;
|
|
380
|
+
|
|
381
|
+
interface DocPaginationLink {
|
|
382
|
+
label: string;
|
|
383
|
+
href: string;
|
|
384
|
+
category?: string;
|
|
385
|
+
}
|
|
386
|
+
interface DocPaginationProps {
|
|
387
|
+
/** Previous page link */
|
|
388
|
+
prev?: DocPaginationLink;
|
|
389
|
+
/** Next page link */
|
|
390
|
+
next?: DocPaginationLink;
|
|
391
|
+
/** Additional class names */
|
|
392
|
+
className?: string;
|
|
393
|
+
}
|
|
394
|
+
declare function DocPagination({ prev, next, className }: DocPaginationProps): react_jsx_runtime.JSX.Element | null;
|
|
395
|
+
|
|
396
|
+
interface DocSearchResult {
|
|
397
|
+
title: string;
|
|
398
|
+
href: string;
|
|
399
|
+
excerpt?: string;
|
|
400
|
+
category?: string;
|
|
401
|
+
}
|
|
402
|
+
interface DocSearchProps {
|
|
403
|
+
/** Placeholder text for the input */
|
|
404
|
+
placeholder?: string;
|
|
405
|
+
/** Callback invoked with the search query, returns results */
|
|
406
|
+
onSearch?: (query: string) => DocSearchResult[] | Promise<DocSearchResult[]>;
|
|
407
|
+
/** Additional class names */
|
|
408
|
+
className?: string;
|
|
409
|
+
}
|
|
410
|
+
declare function DocSearch({ placeholder, onSearch, className, }: DocSearchProps): react_jsx_runtime.JSX.Element;
|
|
411
|
+
|
|
412
|
+
export { Box, Button, Card, Divider, DocBreadcrumb, type DocBreadcrumbItem, type DocBreadcrumbProps, DocCodeBlock, type DocCodeBlockProps, DocPagination, type DocPaginationProps, DocSearch, type DocSearchProps, type DocSearchResult, DocSidebar, type DocSidebarItem, type DocSidebarProps, DocTOC, type DocTOCItem, type DocTOCProps, HStack, Icon, Input, Typography, VStack };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @almadar/ui/docs
|
|
3
|
+
*
|
|
4
|
+
* SSR-safe subset of @almadar/ui for documentation sites.
|
|
5
|
+
* Contains doc-specific molecules composed from @almadar/ui atoms.
|
|
6
|
+
* Designed to eventually replace Docusaurus's built-in doc components.
|
|
7
|
+
*
|
|
8
|
+
* Atoms are re-exported from @almadar/ui/marketing for convenience.
|
|
9
|
+
*/
|
|
10
|
+
export { Box } from '../components/atoms/Box';
|
|
11
|
+
export { VStack, HStack } from '../components/atoms/Stack';
|
|
12
|
+
export { Typography } from '../components/atoms/Typography';
|
|
13
|
+
export { Button } from '../components/atoms/Button';
|
|
14
|
+
export { Icon } from '../components/atoms/Icon';
|
|
15
|
+
export { Card } from '../components/atoms/Card';
|
|
16
|
+
export { Divider } from '../components/atoms/Divider';
|
|
17
|
+
export { Input } from '../components/atoms/Input';
|
|
18
|
+
export { DocSidebar } from '../components/molecules/DocSidebar';
|
|
19
|
+
export type { DocSidebarProps, DocSidebarItem } from '../components/molecules/DocSidebar';
|
|
20
|
+
export { DocTOC } from '../components/molecules/DocTOC';
|
|
21
|
+
export type { DocTOCProps, DocTOCItem } from '../components/molecules/DocTOC';
|
|
22
|
+
export { DocBreadcrumb } from '../components/molecules/DocBreadcrumb';
|
|
23
|
+
export type { DocBreadcrumbProps, DocBreadcrumbItem } from '../components/molecules/DocBreadcrumb';
|
|
24
|
+
export { DocCodeBlock } from '../components/molecules/DocCodeBlock';
|
|
25
|
+
export type { DocCodeBlockProps } from '../components/molecules/DocCodeBlock';
|
|
26
|
+
export { DocPagination } from '../components/molecules/DocPagination';
|
|
27
|
+
export type { DocPaginationProps } from '../components/molecules/DocPagination';
|
|
28
|
+
export { DocSearch } from '../components/molecules/DocSearch';
|
|
29
|
+
export type { DocSearchProps, DocSearchResult } from '../components/molecules/DocSearch';
|