@almadar/ui 2.15.8 → 2.15.11
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} +24831 -16747
- package/dist/components/index.js +37754 -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 +4680 -0
- package/dist/marketing/index.d.cts +831 -0
- package/dist/marketing/index.d.ts +62 -0
- package/dist/marketing/index.js +4623 -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/almadar-website.css +195 -0
- package/themes/index.css +23 -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,831 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { LucideIcon } from 'lucide-react';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Box Component
|
|
6
|
+
*
|
|
7
|
+
* A versatile layout primitive that provides spacing, background, border, and shadow controls.
|
|
8
|
+
* Think of it as a styled div with consistent design tokens.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
type BoxPadding = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
12
|
+
type BoxMargin = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "auto";
|
|
13
|
+
type BoxBg = "transparent" | "primary" | "secondary" | "muted" | "accent" | "surface" | "overlay";
|
|
14
|
+
type BoxRounded = "none" | "sm" | "md" | "lg" | "xl" | "2xl" | "full";
|
|
15
|
+
type BoxShadow = "none" | "sm" | "md" | "lg" | "xl";
|
|
16
|
+
interface BoxProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
17
|
+
/** Padding on all sides */
|
|
18
|
+
padding?: BoxPadding;
|
|
19
|
+
/** Horizontal padding (overrides padding for x-axis) */
|
|
20
|
+
paddingX?: BoxPadding;
|
|
21
|
+
/** Vertical padding (overrides padding for y-axis) */
|
|
22
|
+
paddingY?: BoxPadding;
|
|
23
|
+
/** Margin on all sides */
|
|
24
|
+
margin?: BoxMargin;
|
|
25
|
+
/** Horizontal margin */
|
|
26
|
+
marginX?: BoxMargin;
|
|
27
|
+
/** Vertical margin */
|
|
28
|
+
marginY?: BoxMargin;
|
|
29
|
+
/** Background color */
|
|
30
|
+
bg?: BoxBg;
|
|
31
|
+
/** Show border */
|
|
32
|
+
border?: boolean;
|
|
33
|
+
/** Border radius */
|
|
34
|
+
rounded?: BoxRounded;
|
|
35
|
+
/** Box shadow */
|
|
36
|
+
shadow?: BoxShadow;
|
|
37
|
+
/** Display type */
|
|
38
|
+
display?: "block" | "inline" | "inline-block" | "flex" | "inline-flex" | "grid";
|
|
39
|
+
/** Fill available width */
|
|
40
|
+
fullWidth?: boolean;
|
|
41
|
+
/** Fill available height */
|
|
42
|
+
fullHeight?: boolean;
|
|
43
|
+
/** Overflow behavior */
|
|
44
|
+
overflow?: "auto" | "hidden" | "visible" | "scroll";
|
|
45
|
+
/** Position */
|
|
46
|
+
position?: "relative" | "absolute" | "fixed" | "sticky";
|
|
47
|
+
/** HTML element to render as */
|
|
48
|
+
as?: React.ElementType;
|
|
49
|
+
/** Declarative event name — emits UI:{action} via eventBus on click */
|
|
50
|
+
action?: string;
|
|
51
|
+
/** Payload to include with the action event */
|
|
52
|
+
actionPayload?: Record<string, unknown>;
|
|
53
|
+
/** Declarative hover event — emits UI:{hoverEvent} with { hovered: true/false } on mouseEnter/mouseLeave */
|
|
54
|
+
hoverEvent?: string;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Box - Versatile container component with design tokens
|
|
58
|
+
*/
|
|
59
|
+
declare const Box: React.ForwardRefExoticComponent<BoxProps & React.RefAttributes<HTMLDivElement>>;
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Stack Component
|
|
63
|
+
*
|
|
64
|
+
* A layout primitive for arranging children in a vertical or horizontal stack with consistent spacing.
|
|
65
|
+
* Includes convenience exports VStack and HStack for common use cases.
|
|
66
|
+
*/
|
|
67
|
+
|
|
68
|
+
type StackDirection = "horizontal" | "vertical";
|
|
69
|
+
type StackGap = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
70
|
+
type StackAlign = "start" | "center" | "end" | "stretch" | "baseline";
|
|
71
|
+
type StackJustify = "start" | "center" | "end" | "between" | "around" | "evenly";
|
|
72
|
+
interface StackProps {
|
|
73
|
+
/** Stack direction */
|
|
74
|
+
direction?: StackDirection;
|
|
75
|
+
/** Gap between children */
|
|
76
|
+
gap?: StackGap;
|
|
77
|
+
/** Align items on the cross axis */
|
|
78
|
+
align?: StackAlign;
|
|
79
|
+
/** Justify items on the main axis */
|
|
80
|
+
justify?: StackJustify;
|
|
81
|
+
/** Allow items to wrap */
|
|
82
|
+
wrap?: boolean;
|
|
83
|
+
/** Reverse the order of children */
|
|
84
|
+
reverse?: boolean;
|
|
85
|
+
/** Fill available space (flex: 1) */
|
|
86
|
+
flex?: boolean;
|
|
87
|
+
/** Custom class name */
|
|
88
|
+
className?: string;
|
|
89
|
+
/** Inline styles */
|
|
90
|
+
style?: React.CSSProperties;
|
|
91
|
+
/** Children elements */
|
|
92
|
+
children?: React.ReactNode;
|
|
93
|
+
/** HTML element to render as */
|
|
94
|
+
as?: React.ElementType;
|
|
95
|
+
/** Click handler */
|
|
96
|
+
onClick?: (e: React.MouseEvent) => void;
|
|
97
|
+
/** Keyboard handler */
|
|
98
|
+
onKeyDown?: (e: React.KeyboardEvent) => void;
|
|
99
|
+
/** Role for accessibility */
|
|
100
|
+
role?: string;
|
|
101
|
+
/** Tab index for focus management */
|
|
102
|
+
tabIndex?: number;
|
|
103
|
+
/** Declarative event name — emits UI:{action} via eventBus on click */
|
|
104
|
+
action?: string;
|
|
105
|
+
/** Payload to include with the action event */
|
|
106
|
+
actionPayload?: Record<string, unknown>;
|
|
107
|
+
/** When true, horizontal stacks flip to vertical below the md breakpoint (768px) */
|
|
108
|
+
responsive?: boolean;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* VStack - Vertical stack shorthand
|
|
112
|
+
*/
|
|
113
|
+
interface VStackProps extends Omit<StackProps, "direction"> {
|
|
114
|
+
}
|
|
115
|
+
declare const VStack: React.FC<VStackProps>;
|
|
116
|
+
/**
|
|
117
|
+
* HStack - Horizontal stack shorthand
|
|
118
|
+
*/
|
|
119
|
+
interface HStackProps extends Omit<StackProps, "direction"> {
|
|
120
|
+
}
|
|
121
|
+
declare const HStack: React.FC<HStackProps>;
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Typography Atom Component
|
|
125
|
+
*
|
|
126
|
+
* Text elements following the KFlow design system with theme-aware styling.
|
|
127
|
+
*/
|
|
128
|
+
|
|
129
|
+
type TypographyVariant = "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "heading" | "subheading" | "body1" | "body2" | "body" | "caption" | "overline" | "small" | "large" | "label";
|
|
130
|
+
type TypographySize = "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl";
|
|
131
|
+
interface TypographyProps {
|
|
132
|
+
/** Typography variant */
|
|
133
|
+
variant?: TypographyVariant;
|
|
134
|
+
/** Heading level (1-6) - alternative to variant for headings */
|
|
135
|
+
level?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
136
|
+
/** Text color */
|
|
137
|
+
color?: "primary" | "secondary" | "muted" | "error" | "success" | "warning" | "inherit";
|
|
138
|
+
/** Text alignment */
|
|
139
|
+
align?: "left" | "center" | "right";
|
|
140
|
+
/** Font weight override */
|
|
141
|
+
weight?: "light" | "normal" | "medium" | "semibold" | "bold";
|
|
142
|
+
/** Font size override */
|
|
143
|
+
size?: TypographySize;
|
|
144
|
+
/** Truncate with ellipsis (single line) */
|
|
145
|
+
truncate?: boolean;
|
|
146
|
+
/** Overflow handling mode */
|
|
147
|
+
overflow?: "visible" | "hidden" | "wrap" | "clamp-2" | "clamp-3";
|
|
148
|
+
/** Custom HTML element */
|
|
149
|
+
as?: keyof React.JSX.IntrinsicElements;
|
|
150
|
+
/** HTML id attribute */
|
|
151
|
+
id?: string;
|
|
152
|
+
/** Additional class names */
|
|
153
|
+
className?: string;
|
|
154
|
+
/** Inline style */
|
|
155
|
+
style?: React.CSSProperties;
|
|
156
|
+
/** Text content (alternative to children) */
|
|
157
|
+
content?: React.ReactNode;
|
|
158
|
+
/** Children elements */
|
|
159
|
+
children?: React.ReactNode;
|
|
160
|
+
}
|
|
161
|
+
declare const Typography: React.FC<TypographyProps>;
|
|
162
|
+
|
|
163
|
+
type ButtonVariant = "primary" | "secondary" | "ghost" | "danger" | "success" | "warning" | "default";
|
|
164
|
+
type ButtonSize = "sm" | "md" | "lg";
|
|
165
|
+
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
166
|
+
variant?: ButtonVariant;
|
|
167
|
+
size?: ButtonSize;
|
|
168
|
+
isLoading?: boolean;
|
|
169
|
+
/** Left icon as ReactNode, Lucide component, or string name (e.g. "plus", "trash") */
|
|
170
|
+
leftIcon?: React.ReactNode | LucideIcon | string;
|
|
171
|
+
/** Right icon as ReactNode, Lucide component, or string name */
|
|
172
|
+
rightIcon?: React.ReactNode | LucideIcon | string;
|
|
173
|
+
/** Alias for leftIcon */
|
|
174
|
+
icon?: React.ReactNode | LucideIcon | string;
|
|
175
|
+
/** Alias for rightIcon */
|
|
176
|
+
iconRight?: React.ReactNode | LucideIcon | string;
|
|
177
|
+
/** Declarative event name — emits UI:{action} via eventBus on click */
|
|
178
|
+
action?: string;
|
|
179
|
+
/** Payload to include with the action event */
|
|
180
|
+
actionPayload?: Record<string, unknown>;
|
|
181
|
+
/** Button label text (alternative to children for schema-driven rendering) */
|
|
182
|
+
label?: string;
|
|
183
|
+
}
|
|
184
|
+
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
185
|
+
|
|
186
|
+
type BadgeVariant = "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "error" | "info" | "neutral";
|
|
187
|
+
type BadgeSize = "sm" | "md" | "lg";
|
|
188
|
+
interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {
|
|
189
|
+
variant?: BadgeVariant;
|
|
190
|
+
size?: BadgeSize;
|
|
191
|
+
/** Numeric count or amount to display in badge */
|
|
192
|
+
amount?: number;
|
|
193
|
+
/** Badge label text (alternative to children for schema-driven rendering) */
|
|
194
|
+
label?: string;
|
|
195
|
+
/** Icon name (Lucide icon string) or React node */
|
|
196
|
+
icon?: React.ReactNode;
|
|
197
|
+
}
|
|
198
|
+
declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Icon Atom Component
|
|
202
|
+
*
|
|
203
|
+
* A wrapper component for Lucide icons with consistent sizing and styling.
|
|
204
|
+
* Uses theme-aware CSS variables for stroke width and color.
|
|
205
|
+
*
|
|
206
|
+
* Supports two APIs:
|
|
207
|
+
* - `icon` prop: Pass a LucideIcon component directly
|
|
208
|
+
* - `name` prop: Pass a string icon name (resolved from iconMap)
|
|
209
|
+
*/
|
|
210
|
+
|
|
211
|
+
type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
212
|
+
type IconAnimation = 'spin' | 'pulse' | 'none';
|
|
213
|
+
interface IconProps {
|
|
214
|
+
/** Lucide icon component (preferred for type-safe usage) */
|
|
215
|
+
icon?: LucideIcon;
|
|
216
|
+
/** Icon name as string (resolved from iconMap) */
|
|
217
|
+
name?: string;
|
|
218
|
+
/** Size of the icon */
|
|
219
|
+
size?: IconSize;
|
|
220
|
+
/** Color class (Tailwind color class) or 'inherit' for theme default */
|
|
221
|
+
color?: string;
|
|
222
|
+
/** Animation type */
|
|
223
|
+
animation?: IconAnimation;
|
|
224
|
+
/** Additional CSS classes */
|
|
225
|
+
className?: string;
|
|
226
|
+
/** Icon stroke width - uses theme default if not specified */
|
|
227
|
+
strokeWidth?: number;
|
|
228
|
+
/** Inline style */
|
|
229
|
+
style?: React.CSSProperties;
|
|
230
|
+
}
|
|
231
|
+
declare const Icon: React.FC<IconProps>;
|
|
232
|
+
|
|
233
|
+
type CardShadow = "none" | "sm" | "md" | "lg";
|
|
234
|
+
interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
235
|
+
variant?: "default" | "bordered" | "elevated" | "interactive";
|
|
236
|
+
padding?: "none" | "sm" | "md" | "lg";
|
|
237
|
+
/** Card title - renders in header if provided */
|
|
238
|
+
title?: string;
|
|
239
|
+
/** Card subtitle - renders below title */
|
|
240
|
+
subtitle?: string;
|
|
241
|
+
/** Shadow size override */
|
|
242
|
+
shadow?: CardShadow;
|
|
243
|
+
}
|
|
244
|
+
declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>>;
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
* Divider Atom Component
|
|
248
|
+
*
|
|
249
|
+
* A divider component for separating content sections.
|
|
250
|
+
*/
|
|
251
|
+
|
|
252
|
+
type DividerOrientation = "horizontal" | "vertical";
|
|
253
|
+
type DividerVariant = "solid" | "dashed" | "dotted";
|
|
254
|
+
interface DividerProps {
|
|
255
|
+
/**
|
|
256
|
+
* Orientation of the divider
|
|
257
|
+
* @default 'horizontal'
|
|
258
|
+
*/
|
|
259
|
+
orientation?: DividerOrientation;
|
|
260
|
+
/**
|
|
261
|
+
* Text label to display in the divider
|
|
262
|
+
*/
|
|
263
|
+
label?: string;
|
|
264
|
+
/**
|
|
265
|
+
* Line style variant
|
|
266
|
+
* @default 'solid'
|
|
267
|
+
*/
|
|
268
|
+
variant?: DividerVariant;
|
|
269
|
+
/**
|
|
270
|
+
* Additional CSS classes
|
|
271
|
+
*/
|
|
272
|
+
className?: string;
|
|
273
|
+
}
|
|
274
|
+
declare const Divider: React.FC<DividerProps>;
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
* Center Component
|
|
278
|
+
*
|
|
279
|
+
* A layout utility that centers its children horizontally and/or vertically.
|
|
280
|
+
*/
|
|
281
|
+
|
|
282
|
+
interface CenterProps {
|
|
283
|
+
/** Center inline (width fits content) vs block (full width) */
|
|
284
|
+
inline?: boolean;
|
|
285
|
+
/** Center only horizontally */
|
|
286
|
+
horizontal?: boolean;
|
|
287
|
+
/** Center only vertically */
|
|
288
|
+
vertical?: boolean;
|
|
289
|
+
/** Minimum height (useful for vertical centering) */
|
|
290
|
+
minHeight?: string | number;
|
|
291
|
+
/** Fill available height */
|
|
292
|
+
fullHeight?: boolean;
|
|
293
|
+
/** Fill available width */
|
|
294
|
+
fullWidth?: boolean;
|
|
295
|
+
/** Custom class name */
|
|
296
|
+
className?: string;
|
|
297
|
+
/** Inline styles */
|
|
298
|
+
style?: React.CSSProperties;
|
|
299
|
+
/** Children elements */
|
|
300
|
+
children: React.ReactNode;
|
|
301
|
+
/** HTML element to render as */
|
|
302
|
+
as?: React.ElementType;
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Center - Centers content horizontally and/or vertically
|
|
306
|
+
*/
|
|
307
|
+
declare const Center: React.FC<CenterProps>;
|
|
308
|
+
|
|
309
|
+
/**
|
|
310
|
+
* Spacer Component
|
|
311
|
+
*
|
|
312
|
+
* A flexible spacer that expands to fill available space in a flex container.
|
|
313
|
+
* Useful for pushing elements apart or creating consistent spacing.
|
|
314
|
+
*/
|
|
315
|
+
|
|
316
|
+
type SpacerSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'auto';
|
|
317
|
+
interface SpacerProps {
|
|
318
|
+
/** Fixed size (auto = flex grow) */
|
|
319
|
+
size?: SpacerSize;
|
|
320
|
+
/** Orientation (for fixed sizes) */
|
|
321
|
+
axis?: 'horizontal' | 'vertical';
|
|
322
|
+
/** Custom class name */
|
|
323
|
+
className?: string;
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Spacer - Flexible spacing element for flex layouts
|
|
327
|
+
*
|
|
328
|
+
* Usage:
|
|
329
|
+
* - size="auto" (default): Expands to fill available space (flex: 1)
|
|
330
|
+
* - size="md": Fixed size spacing
|
|
331
|
+
*/
|
|
332
|
+
declare const Spacer: React.FC<SpacerProps>;
|
|
333
|
+
|
|
334
|
+
type ContentSectionBackground = "default" | "alt" | "dark" | "gradient";
|
|
335
|
+
type ContentSectionPadding = "sm" | "md" | "lg";
|
|
336
|
+
interface ContentSectionProps {
|
|
337
|
+
/** Section content */
|
|
338
|
+
children: React.ReactNode;
|
|
339
|
+
/** Background style */
|
|
340
|
+
background?: ContentSectionBackground;
|
|
341
|
+
/** Vertical padding size */
|
|
342
|
+
padding?: ContentSectionPadding;
|
|
343
|
+
/** HTML id for anchor linking */
|
|
344
|
+
id?: string;
|
|
345
|
+
/** Additional class names */
|
|
346
|
+
className?: string;
|
|
347
|
+
}
|
|
348
|
+
declare const ContentSection: React.ForwardRefExoticComponent<ContentSectionProps & React.RefAttributes<HTMLDivElement>>;
|
|
349
|
+
|
|
350
|
+
/**
|
|
351
|
+
* HeroSection Molecule Component
|
|
352
|
+
*
|
|
353
|
+
* A full-width hero section for landing pages and marketing content.
|
|
354
|
+
* Composes atoms: Box, VStack, HStack, Badge, Typography, Button.
|
|
355
|
+
* Optionally includes an InstallBox molecule for CLI commands.
|
|
356
|
+
*/
|
|
357
|
+
|
|
358
|
+
interface HeroSectionProps {
|
|
359
|
+
tag?: string;
|
|
360
|
+
tagVariant?: 'primary' | 'secondary' | 'accent';
|
|
361
|
+
title: string;
|
|
362
|
+
titleAccent?: string;
|
|
363
|
+
subtitle: string;
|
|
364
|
+
primaryAction?: {
|
|
365
|
+
label: string;
|
|
366
|
+
href: string;
|
|
367
|
+
};
|
|
368
|
+
secondaryAction?: {
|
|
369
|
+
label: string;
|
|
370
|
+
href: string;
|
|
371
|
+
};
|
|
372
|
+
installCommand?: string;
|
|
373
|
+
image?: {
|
|
374
|
+
src: string;
|
|
375
|
+
alt: string;
|
|
376
|
+
};
|
|
377
|
+
imagePosition?: 'below' | 'right' | 'background';
|
|
378
|
+
background?: 'dark' | 'gradient' | 'subtle';
|
|
379
|
+
align?: 'center' | 'left';
|
|
380
|
+
/** Background element (SVG animation, etc.) rendered behind hero content */
|
|
381
|
+
backgroundElement?: React.ReactNode;
|
|
382
|
+
children?: React.ReactNode;
|
|
383
|
+
className?: string;
|
|
384
|
+
}
|
|
385
|
+
declare const HeroSection: React.FC<HeroSectionProps>;
|
|
386
|
+
|
|
387
|
+
/**
|
|
388
|
+
* CTABanner Molecule Component
|
|
389
|
+
*
|
|
390
|
+
* A call-to-action banner with title, subtitle, and action buttons.
|
|
391
|
+
* Uses the site's theme naturally - no forced color inversions.
|
|
392
|
+
*/
|
|
393
|
+
|
|
394
|
+
type CTABannerBackground = 'default' | 'alt' | 'dark' | 'gradient' | 'primary';
|
|
395
|
+
interface CTABannerProps {
|
|
396
|
+
/** Banner headline */
|
|
397
|
+
title: string;
|
|
398
|
+
/** Supporting text below the title */
|
|
399
|
+
subtitle?: string;
|
|
400
|
+
/** Primary action button config */
|
|
401
|
+
primaryAction?: {
|
|
402
|
+
label: string;
|
|
403
|
+
href: string;
|
|
404
|
+
};
|
|
405
|
+
/** Secondary action button config */
|
|
406
|
+
secondaryAction?: {
|
|
407
|
+
label: string;
|
|
408
|
+
href: string;
|
|
409
|
+
};
|
|
410
|
+
/** Background style */
|
|
411
|
+
background?: CTABannerBackground;
|
|
412
|
+
/** Content alignment */
|
|
413
|
+
align?: 'center' | 'left';
|
|
414
|
+
/** Additional class names */
|
|
415
|
+
className?: string;
|
|
416
|
+
}
|
|
417
|
+
declare const CTABanner: React.FC<CTABannerProps>;
|
|
418
|
+
|
|
419
|
+
/**
|
|
420
|
+
* FeatureCard Molecule Component
|
|
421
|
+
*
|
|
422
|
+
* A card highlighting a feature with icon, title, description, and optional link.
|
|
423
|
+
* Composes Card, VStack, Icon, Typography, and Button atoms.
|
|
424
|
+
*/
|
|
425
|
+
|
|
426
|
+
interface FeatureCardProps {
|
|
427
|
+
/** Icon name (Lucide string) or ReactNode */
|
|
428
|
+
icon?: string | React.ReactNode;
|
|
429
|
+
/** Feature title */
|
|
430
|
+
title: string;
|
|
431
|
+
/** Feature description */
|
|
432
|
+
description: string;
|
|
433
|
+
/** Optional link URL */
|
|
434
|
+
href?: string;
|
|
435
|
+
/** Label for the link button */
|
|
436
|
+
linkLabel?: string;
|
|
437
|
+
/** Card visual variant */
|
|
438
|
+
variant?: 'default' | 'bordered' | 'elevated' | 'interactive';
|
|
439
|
+
/** Card size affecting icon and spacing */
|
|
440
|
+
size?: 'sm' | 'md' | 'lg';
|
|
441
|
+
/** Additional class names */
|
|
442
|
+
className?: string;
|
|
443
|
+
}
|
|
444
|
+
declare const FeatureCard: React.FC<FeatureCardProps>;
|
|
445
|
+
|
|
446
|
+
/**
|
|
447
|
+
* FeatureGrid Molecule Component
|
|
448
|
+
*
|
|
449
|
+
* A responsive grid layout for displaying multiple FeatureCards.
|
|
450
|
+
* Composes SimpleGrid and FeatureCard molecules.
|
|
451
|
+
*/
|
|
452
|
+
|
|
453
|
+
interface FeatureGridProps {
|
|
454
|
+
/** Array of feature card configurations */
|
|
455
|
+
items: FeatureCardProps[];
|
|
456
|
+
/** Number of grid columns */
|
|
457
|
+
columns?: 2 | 3 | 4 | 6;
|
|
458
|
+
/** Gap between grid items */
|
|
459
|
+
gap?: 'sm' | 'md' | 'lg';
|
|
460
|
+
/** Additional class names */
|
|
461
|
+
className?: string;
|
|
462
|
+
}
|
|
463
|
+
declare const FeatureGrid: React.FC<FeatureGridProps>;
|
|
464
|
+
|
|
465
|
+
/**
|
|
466
|
+
* PricingCard Molecule Component
|
|
467
|
+
*
|
|
468
|
+
* A pricing tier card showing plan name, price, features, and CTA button.
|
|
469
|
+
* Composes atoms: Card, VStack, HStack, Badge, Typography, Icon, Divider, Spacer, Button.
|
|
470
|
+
*/
|
|
471
|
+
|
|
472
|
+
interface PricingCardProps {
|
|
473
|
+
name: string;
|
|
474
|
+
price: string;
|
|
475
|
+
description?: string;
|
|
476
|
+
features: string[];
|
|
477
|
+
action: {
|
|
478
|
+
label: string;
|
|
479
|
+
href: string;
|
|
480
|
+
};
|
|
481
|
+
highlighted?: boolean;
|
|
482
|
+
badge?: string;
|
|
483
|
+
className?: string;
|
|
484
|
+
}
|
|
485
|
+
declare const PricingCard: React.FC<PricingCardProps>;
|
|
486
|
+
|
|
487
|
+
/**
|
|
488
|
+
* PricingGrid Molecule Component
|
|
489
|
+
*
|
|
490
|
+
* A responsive grid of PricingCard molecules.
|
|
491
|
+
* Composes: SimpleGrid + PricingCard.
|
|
492
|
+
*/
|
|
493
|
+
|
|
494
|
+
interface PricingGridProps {
|
|
495
|
+
plans: PricingCardProps[];
|
|
496
|
+
className?: string;
|
|
497
|
+
}
|
|
498
|
+
declare const PricingGrid: React.FC<PricingGridProps>;
|
|
499
|
+
|
|
500
|
+
/**
|
|
501
|
+
* SplitSection Molecule Component
|
|
502
|
+
*
|
|
503
|
+
* A two-column content section with text on one side and an image (or custom content) on the other.
|
|
504
|
+
* Composes Box, HStack, VStack, Typography, and Icon atoms.
|
|
505
|
+
*/
|
|
506
|
+
|
|
507
|
+
interface SplitSectionProps {
|
|
508
|
+
title: string;
|
|
509
|
+
description: string | React.ReactNode;
|
|
510
|
+
bullets?: string[];
|
|
511
|
+
image?: {
|
|
512
|
+
src: string;
|
|
513
|
+
alt: string;
|
|
514
|
+
};
|
|
515
|
+
imagePosition?: 'left' | 'right';
|
|
516
|
+
background?: 'default' | 'alt';
|
|
517
|
+
children?: React.ReactNode;
|
|
518
|
+
className?: string;
|
|
519
|
+
}
|
|
520
|
+
declare const SplitSection: React.FC<SplitSectionProps>;
|
|
521
|
+
|
|
522
|
+
/**
|
|
523
|
+
* InstallBox Molecule Component
|
|
524
|
+
*
|
|
525
|
+
* A copyable command display box for install/CLI commands.
|
|
526
|
+
* Shows a monospace command with a copy-to-clipboard button.
|
|
527
|
+
*/
|
|
528
|
+
|
|
529
|
+
interface InstallBoxProps {
|
|
530
|
+
/** The command to display and copy */
|
|
531
|
+
command: string;
|
|
532
|
+
/** Optional label above the command */
|
|
533
|
+
label?: string;
|
|
534
|
+
/** Additional class names */
|
|
535
|
+
className?: string;
|
|
536
|
+
}
|
|
537
|
+
declare const InstallBox: React.FC<InstallBoxProps>;
|
|
538
|
+
|
|
539
|
+
/**
|
|
540
|
+
* StepFlow Molecule Component
|
|
541
|
+
*
|
|
542
|
+
* A step-by-step progress indicator supporting horizontal and vertical orientations.
|
|
543
|
+
* Composes Center, Typography, Icon, HStack, VStack, Box, and Divider atoms.
|
|
544
|
+
*/
|
|
545
|
+
|
|
546
|
+
interface StepItemProps {
|
|
547
|
+
number?: number;
|
|
548
|
+
title: string;
|
|
549
|
+
description: string;
|
|
550
|
+
icon?: string;
|
|
551
|
+
}
|
|
552
|
+
interface StepFlowProps {
|
|
553
|
+
steps: StepItemProps[];
|
|
554
|
+
orientation?: 'horizontal' | 'vertical';
|
|
555
|
+
showConnectors?: boolean;
|
|
556
|
+
className?: string;
|
|
557
|
+
}
|
|
558
|
+
declare const StepFlow: React.FC<StepFlowProps>;
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* StatsGrid Molecule Component
|
|
562
|
+
*
|
|
563
|
+
* A responsive grid of stat items showing value + label pairs.
|
|
564
|
+
* Composes: SimpleGrid + VStack + Typography.
|
|
565
|
+
* Uses StatDisplay internally when available for consistent styling.
|
|
566
|
+
*/
|
|
567
|
+
|
|
568
|
+
interface StatsGridProps {
|
|
569
|
+
stats: {
|
|
570
|
+
value: string;
|
|
571
|
+
label: string;
|
|
572
|
+
}[];
|
|
573
|
+
columns?: 2 | 3 | 4 | 6;
|
|
574
|
+
className?: string;
|
|
575
|
+
}
|
|
576
|
+
declare const StatsGrid: React.FC<StatsGridProps>;
|
|
577
|
+
|
|
578
|
+
/**
|
|
579
|
+
* TagCloud Molecule Component
|
|
580
|
+
*
|
|
581
|
+
* A collection of tags displayed as badges in a wrapping layout.
|
|
582
|
+
* Composes HStack and Badge atoms.
|
|
583
|
+
*/
|
|
584
|
+
|
|
585
|
+
interface TagCloudItem {
|
|
586
|
+
label: string;
|
|
587
|
+
href?: string;
|
|
588
|
+
variant?: string;
|
|
589
|
+
}
|
|
590
|
+
interface TagCloudProps {
|
|
591
|
+
tags: string[] | TagCloudItem[];
|
|
592
|
+
variant?: 'default' | 'primary' | 'accent';
|
|
593
|
+
className?: string;
|
|
594
|
+
}
|
|
595
|
+
declare const TagCloud: React.FC<TagCloudProps>;
|
|
596
|
+
|
|
597
|
+
/**
|
|
598
|
+
* CommunityLinks Molecule Component
|
|
599
|
+
*
|
|
600
|
+
* Displays community platform links (GitHub, Discord, Twitter) as styled buttons.
|
|
601
|
+
* Composes VStack, HStack, Typography, Button, and Icon atoms.
|
|
602
|
+
*/
|
|
603
|
+
|
|
604
|
+
interface CommunityLinksProps {
|
|
605
|
+
github?: {
|
|
606
|
+
url: string;
|
|
607
|
+
stars?: number;
|
|
608
|
+
};
|
|
609
|
+
discord?: {
|
|
610
|
+
url: string;
|
|
611
|
+
members?: number;
|
|
612
|
+
};
|
|
613
|
+
twitter?: {
|
|
614
|
+
url: string;
|
|
615
|
+
followers?: number;
|
|
616
|
+
};
|
|
617
|
+
heading?: string;
|
|
618
|
+
subtitle?: string;
|
|
619
|
+
className?: string;
|
|
620
|
+
}
|
|
621
|
+
declare const CommunityLinks: React.FC<CommunityLinksProps>;
|
|
622
|
+
|
|
623
|
+
/**
|
|
624
|
+
* ServiceCatalog Molecule Component
|
|
625
|
+
*
|
|
626
|
+
* Displays a grid of services organized by layer, each shown as a card
|
|
627
|
+
* with a layer badge and service name.
|
|
628
|
+
*/
|
|
629
|
+
|
|
630
|
+
interface ServiceCatalogItem {
|
|
631
|
+
name: string;
|
|
632
|
+
layer: string;
|
|
633
|
+
layerColor?: string;
|
|
634
|
+
}
|
|
635
|
+
interface ServiceCatalogProps {
|
|
636
|
+
/** List of services to display */
|
|
637
|
+
services: ServiceCatalogItem[];
|
|
638
|
+
/** Additional class names */
|
|
639
|
+
className?: string;
|
|
640
|
+
}
|
|
641
|
+
declare const ServiceCatalog: React.FC<ServiceCatalogProps>;
|
|
642
|
+
|
|
643
|
+
/**
|
|
644
|
+
* ShowcaseCard Molecule Component
|
|
645
|
+
*
|
|
646
|
+
* A card for showcasing projects, demos, or portfolio items with an image, badge, and description.
|
|
647
|
+
* Composes Card, Box, VStack, Badge, and Typography atoms.
|
|
648
|
+
*/
|
|
649
|
+
|
|
650
|
+
interface ShowcaseCardProps {
|
|
651
|
+
title: string;
|
|
652
|
+
description?: string;
|
|
653
|
+
image: {
|
|
654
|
+
src: string;
|
|
655
|
+
alt: string;
|
|
656
|
+
};
|
|
657
|
+
href?: string;
|
|
658
|
+
badge?: string;
|
|
659
|
+
accentColor?: string;
|
|
660
|
+
className?: string;
|
|
661
|
+
}
|
|
662
|
+
declare const ShowcaseCard: React.FC<ShowcaseCardProps>;
|
|
663
|
+
|
|
664
|
+
/**
|
|
665
|
+
* TeamCard Molecule Component
|
|
666
|
+
*
|
|
667
|
+
* A card displaying a team member with avatar, name, role, and bio.
|
|
668
|
+
* Composes Card, VStack, Avatar, and Typography atoms.
|
|
669
|
+
*/
|
|
670
|
+
|
|
671
|
+
interface TeamCardProps {
|
|
672
|
+
name: string;
|
|
673
|
+
nameAr?: string;
|
|
674
|
+
role: string;
|
|
675
|
+
bio: string;
|
|
676
|
+
avatar?: string | {
|
|
677
|
+
initials: string;
|
|
678
|
+
};
|
|
679
|
+
className?: string;
|
|
680
|
+
}
|
|
681
|
+
declare const TeamCard: React.FC<TeamCardProps>;
|
|
682
|
+
|
|
683
|
+
/**
|
|
684
|
+
* CaseStudyCard Molecule Component
|
|
685
|
+
*
|
|
686
|
+
* A card for displaying case studies with category badge, title,
|
|
687
|
+
* description, and a call-to-action link button.
|
|
688
|
+
*/
|
|
689
|
+
|
|
690
|
+
interface CaseStudyCardProps {
|
|
691
|
+
/** Case study title */
|
|
692
|
+
title: string;
|
|
693
|
+
/** Short description of the case study */
|
|
694
|
+
description: string;
|
|
695
|
+
/** Category label shown as a badge */
|
|
696
|
+
category: string;
|
|
697
|
+
/** Custom background color for the category badge (CSS value) */
|
|
698
|
+
categoryColor?: string;
|
|
699
|
+
/** URL the card links to */
|
|
700
|
+
href: string;
|
|
701
|
+
/** Label for the link button */
|
|
702
|
+
linkLabel?: string;
|
|
703
|
+
/** Additional class names */
|
|
704
|
+
className?: string;
|
|
705
|
+
}
|
|
706
|
+
declare const CaseStudyCard: React.FC<CaseStudyCardProps>;
|
|
707
|
+
|
|
708
|
+
/**
|
|
709
|
+
* ArticleSection Molecule Component
|
|
710
|
+
*
|
|
711
|
+
* A centered content section with a title and constrained max-width,
|
|
712
|
+
* suitable for article or documentation layouts.
|
|
713
|
+
*/
|
|
714
|
+
|
|
715
|
+
interface ArticleSectionProps {
|
|
716
|
+
/** Section title */
|
|
717
|
+
title: string;
|
|
718
|
+
/** Section content */
|
|
719
|
+
children: React.ReactNode;
|
|
720
|
+
/** Maximum width constraint */
|
|
721
|
+
maxWidth?: 'sm' | 'md' | 'lg';
|
|
722
|
+
/** Additional class names */
|
|
723
|
+
className?: string;
|
|
724
|
+
}
|
|
725
|
+
declare const ArticleSection: React.FC<ArticleSectionProps>;
|
|
726
|
+
|
|
727
|
+
/**
|
|
728
|
+
* SimpleGrid Component
|
|
729
|
+
*
|
|
730
|
+
* A simplified grid that automatically adjusts columns based on available space.
|
|
731
|
+
* Perfect for card layouts and item collections.
|
|
732
|
+
*/
|
|
733
|
+
|
|
734
|
+
type SimpleGridGap = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
735
|
+
interface SimpleGridProps {
|
|
736
|
+
/** Minimum width of each child (e.g., 200, "200px", "15rem") */
|
|
737
|
+
minChildWidth?: number | string;
|
|
738
|
+
/** Maximum number of columns */
|
|
739
|
+
maxCols?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
740
|
+
/** Exact number of columns (disables auto-fit) */
|
|
741
|
+
cols?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
742
|
+
/** Gap between items */
|
|
743
|
+
gap?: SimpleGridGap;
|
|
744
|
+
/** Custom class name */
|
|
745
|
+
className?: string;
|
|
746
|
+
/** Children elements */
|
|
747
|
+
children: React.ReactNode;
|
|
748
|
+
}
|
|
749
|
+
/**
|
|
750
|
+
* SimpleGrid - Auto-responsive grid layout
|
|
751
|
+
*/
|
|
752
|
+
declare const SimpleGrid: React.FC<SimpleGridProps>;
|
|
753
|
+
|
|
754
|
+
/**
|
|
755
|
+
* MarketingFooter Molecule Component
|
|
756
|
+
*
|
|
757
|
+
* A themed footer for marketing/documentation sites.
|
|
758
|
+
* Displays link columns, optional logo, and copyright text.
|
|
759
|
+
* Uses @almadar/ui theme CSS variables for consistent branding.
|
|
760
|
+
*/
|
|
761
|
+
|
|
762
|
+
interface FooterLinkItem {
|
|
763
|
+
label: string;
|
|
764
|
+
href: string;
|
|
765
|
+
}
|
|
766
|
+
interface FooterLinkColumn {
|
|
767
|
+
title: string;
|
|
768
|
+
items: FooterLinkItem[];
|
|
769
|
+
}
|
|
770
|
+
interface MarketingFooterProps {
|
|
771
|
+
columns: FooterLinkColumn[];
|
|
772
|
+
copyright?: string;
|
|
773
|
+
logo?: {
|
|
774
|
+
src: string;
|
|
775
|
+
alt: string;
|
|
776
|
+
href?: string;
|
|
777
|
+
};
|
|
778
|
+
className?: string;
|
|
779
|
+
}
|
|
780
|
+
declare const MarketingFooter: React.FC<MarketingFooterProps>;
|
|
781
|
+
|
|
782
|
+
/**
|
|
783
|
+
* GradientDivider Molecule Component
|
|
784
|
+
*
|
|
785
|
+
* A horizontal line that fades from transparent at edges to primary color at center.
|
|
786
|
+
* Used between major sections for visual separation without hard background-color breaks.
|
|
787
|
+
*/
|
|
788
|
+
|
|
789
|
+
interface GradientDividerProps {
|
|
790
|
+
/** Override the center color (CSS value). Defaults to var(--color-primary). */
|
|
791
|
+
color?: string;
|
|
792
|
+
/** Additional class names */
|
|
793
|
+
className?: string;
|
|
794
|
+
}
|
|
795
|
+
declare const GradientDivider: React.FC<GradientDividerProps>;
|
|
796
|
+
|
|
797
|
+
/**
|
|
798
|
+
* PullQuote Molecule Component
|
|
799
|
+
*
|
|
800
|
+
* Large italic text with a thick left border in primary color.
|
|
801
|
+
* Breaks up prose walls on long-form pages like Vision and case studies.
|
|
802
|
+
*/
|
|
803
|
+
|
|
804
|
+
interface PullQuoteProps {
|
|
805
|
+
/** The quote text */
|
|
806
|
+
children: string;
|
|
807
|
+
/** Additional class names */
|
|
808
|
+
className?: string;
|
|
809
|
+
}
|
|
810
|
+
declare const PullQuote: React.FC<PullQuoteProps>;
|
|
811
|
+
|
|
812
|
+
/**
|
|
813
|
+
* AnimatedCounter Molecule Component
|
|
814
|
+
*
|
|
815
|
+
* Counts from 0 to a target value on scroll-into-view using IntersectionObserver.
|
|
816
|
+
* Replaces static stat numbers with animated versions for visual impact.
|
|
817
|
+
*/
|
|
818
|
+
|
|
819
|
+
interface AnimatedCounterProps {
|
|
820
|
+
/** Target value to count to (e.g. "500+", "99.9%", "3x") */
|
|
821
|
+
value: string;
|
|
822
|
+
/** Label displayed below the number */
|
|
823
|
+
label: string;
|
|
824
|
+
/** Animation duration in ms */
|
|
825
|
+
duration?: number;
|
|
826
|
+
/** Additional class names */
|
|
827
|
+
className?: string;
|
|
828
|
+
}
|
|
829
|
+
declare const AnimatedCounter: React.FC<AnimatedCounterProps>;
|
|
830
|
+
|
|
831
|
+
export { AnimatedCounter, type AnimatedCounterProps, ArticleSection, type ArticleSectionProps, Badge, Box, Button, CTABanner, type CTABannerProps, Card, CaseStudyCard, type CaseStudyCardProps, Center, CommunityLinks, type CommunityLinksProps, ContentSection, type ContentSectionProps, Divider, FeatureCard, type FeatureCardProps, FeatureGrid, type FeatureGridProps, type FooterLinkColumn, type FooterLinkItem, GradientDivider, type GradientDividerProps, HStack, HeroSection, type HeroSectionProps, Icon, InstallBox, type InstallBoxProps, MarketingFooter, type MarketingFooterProps, PricingCard, type PricingCardProps, PricingGrid, type PricingGridProps, PullQuote, type PullQuoteProps, ServiceCatalog, type ServiceCatalogProps, ShowcaseCard, type ShowcaseCardProps, SimpleGrid, Spacer, SplitSection, type SplitSectionProps, StatsGrid, type StatsGridProps, StepFlow, type StepFlowProps, type StepItemProps, TagCloud, type TagCloudProps, TeamCard, type TeamCardProps, Typography, VStack };
|