@almadar/ui 6.51.2 → 6.52.0
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/{Canvas3DHost-CLC_jXh_.d.ts → Canvas3DHost-CWO0tswb.d.ts} +1 -1
- package/dist/{FileTree-RKQqRhIM.d.ts → FileTree-DUi7e7Z8.d.ts} +5 -5
- package/dist/{GameAudioProvider-BgWLggIy.d.ts → GameAudioProvider-_hPzjqp-.d.ts} +1 -1
- package/dist/{NavStackContext-B-XLULCO.d.ts → NavStackContext-04NLdXsY.d.ts} +8 -0
- package/dist/Typography-7FRZOS2H.js +5 -0
- package/dist/{UISlotContext-DNM8iXna.d.ts → UISlotContext-CS487Uoc.d.ts} +1 -1
- package/dist/{UISlotRenderer-7UYHFW4S.js → UISlotRenderer-CR7SCAMR.js} +8 -8
- package/dist/avl/index.cjs +3401 -1590
- package/dist/avl/index.d.ts +4 -4
- package/dist/avl/index.js +26 -23
- package/dist/{chunk-6CFYRP4S.js → chunk-2QB2PXOO.js} +1 -3
- package/dist/{chunk-R4V7IZQP.js → chunk-5GCI6C7J.js} +2 -2
- package/dist/{chunk-BUEIZY54.js → chunk-BHZG4PDZ.js} +420 -422
- package/dist/{chunk-MWPX2O4M.js → chunk-CLSLVFSP.js} +3 -16
- package/dist/{chunk-GIPZSCND.js → chunk-EERAGPBW.js} +3078 -1832
- package/dist/{chunk-OLZ3EEML.js → chunk-G4GMXYMY.js} +109 -15
- package/dist/{chunk-HQDKHLFG.js → chunk-IN3BVW2Z.js} +15 -1
- package/dist/{chunk-FGHRVJCI.js → chunk-MSBMVG3B.js} +12 -2
- package/dist/{chunk-YKHNK5JH.js → chunk-NCNP2RKZ.js} +11 -4
- package/dist/{chunk-T7IH5ABO.js → chunk-QWDKMVLX.js} +69 -17
- package/dist/{chunk-NTO555KF.js → chunk-TWHYH25Q.js} +136 -15
- package/dist/{chunk-GHXWGQTX.js → chunk-V5AGW2JN.js} +1 -1
- package/dist/{chunk-L55SAFKL.js → chunk-WB2A6V3I.js} +31 -1
- package/dist/{chunk-JXUYEO7U.js → chunk-XUSSAWKL.js} +7 -1
- package/dist/{cn-CO-0rolG.d.ts → cn-ClXGlIOY.d.ts} +2 -2
- package/dist/components/index.cjs +4933 -3165
- package/dist/components/index.d.ts +499 -416
- package/dist/components/index.js +11 -11
- package/dist/context/index.cjs +12 -4
- package/dist/context/index.d.ts +3 -3
- package/dist/context/index.js +2 -2
- package/dist/hooks/index.cjs +73 -6
- package/dist/hooks/index.d.ts +32 -7
- package/dist/hooks/index.js +6 -6
- package/dist/lib/drawable/three/index.cjs +33 -2
- package/dist/lib/drawable/three/index.d.ts +5 -5
- package/dist/lib/drawable/three/index.js +7 -7
- package/dist/lib/index.cjs +69 -2
- package/dist/lib/index.d.ts +29 -6
- package/dist/lib/index.js +5 -5
- package/dist/locales/index.cjs +93 -3
- package/dist/locales/index.js +63 -3
- package/dist/{paintDispatch-CMgOyVjS.d.ts → paintDispatch-DHo3WhaU.d.ts} +4 -4
- package/dist/providers/index.cjs +3392 -1607
- package/dist/providers/index.d.ts +6 -6
- package/dist/providers/index.js +55 -16
- package/dist/runtime/index.cjs +3417 -1611
- package/dist/runtime/index.d.ts +2 -2
- package/dist/runtime/index.js +10 -10
- package/dist/ssr/index.cjs +306 -141
- package/dist/ssr/index.d.cts +32 -44
- package/dist/ssr/index.d.ts +32 -44
- package/dist/ssr/index.js +249 -84
- package/dist/{themeTokens-CN9WCXQc.d.ts → themeTokens-Ccu7EmGY.d.ts} +4 -2
- package/dist/{useUISlots-CwUWM1ra.d.ts → useUISlots-1dk2TR4j.d.ts} +1 -9
- package/dist/{verificationRegistry-DBHfOR9y.d.ts → verificationRegistry-BYD3cVhS.d.ts} +1 -1
- package/locales/ar.json +31 -1
- package/locales/en.json +31 -1
- package/locales/sl.json +31 -1
- package/package.json +12 -9
- package/tailwind-preset.cjs +24 -1
- package/themes/_base.css +86 -0
- package/themes/_contract.md +1 -0
- package/themes/almadar-website.css +2 -0
- package/themes/almadar.css +2 -0
- package/themes/aqua.css +5 -3
- package/themes/arabesque.css +9 -7
- package/themes/art-deco.css +5 -3
- package/themes/art-nouveau.css +4 -0
- package/themes/atelier.css +10 -8
- package/themes/bauhaus.css +2 -0
- package/themes/bloomberg-dense.css +13 -11
- package/themes/blueprint.css +2 -0
- package/themes/clay.css +2 -0
- package/themes/comic.css +12 -10
- package/themes/constructivist.css +2 -0
- package/themes/corporate.css +4 -2
- package/themes/cyberpunk.css +2 -0
- package/themes/frutiger-aero.css +2 -0
- package/themes/game-adventure.css +1 -0
- package/themes/game-rpg.css +1 -0
- package/themes/game-sci-fi.css +1 -0
- package/themes/game-ui-pack.css +1 -0
- package/themes/gazette.css +10 -8
- package/themes/glass.css +17 -15
- package/themes/gothic.css +2 -0
- package/themes/ink-wash.css +2 -0
- package/themes/kawaii.css +2 -0
- package/themes/kiosk.css +17 -15
- package/themes/linear-clean.css +12 -10
- package/themes/luxury.css +2 -0
- package/themes/mac-classic.css +2 -0
- package/themes/material.css +2 -0
- package/themes/memphis.css +2 -0
- package/themes/mid-century.css +2 -0
- package/themes/minimalist.css +2 -0
- package/themes/mudcloth.css +2 -0
- package/themes/neon.css +2 -0
- package/themes/neumorphic.css +2 -0
- package/themes/newsprint.css +2 -0
- package/themes/notion-editorial.css +12 -10
- package/themes/pixel.css +2 -0
- package/themes/prism.css +20 -18
- package/themes/retro.css +2 -0
- package/themes/risograph.css +2 -0
- package/themes/scandi.css +2 -0
- package/themes/sketch.css +2 -0
- package/themes/solarpunk.css +2 -0
- package/themes/steampunk.css +2 -0
- package/themes/swiss.css +2 -0
- package/themes/terminal.css +8 -6
- package/themes/trait-wars.css +2 -0
- package/themes/ukiyo-e.css +2 -0
- package/themes/vaporwave.css +2 -0
- package/themes/victorian.css +2 -0
- package/themes/wabi-sabi.css +2 -0
- package/themes/win95.css +2 -0
- package/themes/wireframe.css +2 -0
- package/themes/zine.css +2 -0
- package/dist/Typography-2Z3JKWHN.js +0 -5
- package/dist/{avl-3d-context-MAt_NuU9.d.ts → avl-3d-context-DLteNEwu.d.ts} +3 -3
package/dist/ssr/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { EventKey, EventPayload, EventEmit, Asset, AssetUrl } from '@almadar/core';
|
|
2
|
+
import { A11yProps, EventKey, EventPayload, EventEmit, Asset, AssetUrl } from '@almadar/core';
|
|
3
3
|
import { LucideIcon } from 'lucide-react';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -14,13 +14,11 @@ type BoxMargin = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "auto";
|
|
|
14
14
|
type BoxBg = "transparent" | "primary" | "secondary" | "muted" | "accent" | "surface" | "overlay";
|
|
15
15
|
type BoxRounded = "none" | "sm" | "md" | "lg" | "xl" | "2xl" | "full";
|
|
16
16
|
type BoxShadow = "none" | "sm" | "md" | "lg" | "xl";
|
|
17
|
-
interface BoxProps extends React.HTMLAttributes<HTMLDivElement
|
|
17
|
+
interface BoxProps extends Omit<React.HTMLAttributes<HTMLDivElement>, keyof A11yProps>, A11yProps {
|
|
18
18
|
/** Additional CSS classes applied to the root element. */
|
|
19
19
|
className?: string;
|
|
20
20
|
/** Data-theme attribute applied to the root element for CSS theme scoping (e.g. almadar-website-dark). */
|
|
21
21
|
'data-theme'?: string;
|
|
22
|
-
/** Text direction for this subtree: "ltr", "rtl" (Arabic/Hebrew content) or "auto" */
|
|
23
|
-
dir?: string;
|
|
24
22
|
/**
|
|
25
23
|
* Padding on all sides
|
|
26
24
|
* @example md
|
|
@@ -92,7 +90,7 @@ type StackDirection = "horizontal" | "vertical";
|
|
|
92
90
|
type StackGap = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
93
91
|
type StackAlign = "start" | "center" | "end" | "stretch" | "baseline";
|
|
94
92
|
type StackJustify = "start" | "center" | "end" | "between" | "around" | "evenly";
|
|
95
|
-
interface StackProps extends React.AriaAttributes {
|
|
93
|
+
interface StackProps extends Omit<React.AriaAttributes, keyof A11yProps>, A11yProps {
|
|
96
94
|
/** Stack direction */
|
|
97
95
|
direction?: StackDirection;
|
|
98
96
|
/** Gap between children */
|
|
@@ -119,12 +117,8 @@ interface StackProps extends React.AriaAttributes {
|
|
|
119
117
|
onClick?: (e: React.MouseEvent) => void;
|
|
120
118
|
/** Keyboard handler */
|
|
121
119
|
onKeyDown?: (e: React.KeyboardEvent) => void;
|
|
122
|
-
/** Role for accessibility */
|
|
123
|
-
role?: string;
|
|
124
120
|
/** Element id */
|
|
125
121
|
id?: string;
|
|
126
|
-
/** Tab index for focus management */
|
|
127
|
-
tabIndex?: number;
|
|
128
122
|
/** Declarative event name — emits UI:{action} via eventBus on click */
|
|
129
123
|
action?: EventKey;
|
|
130
124
|
/** Payload to include with the action event
|
|
@@ -156,7 +150,7 @@ declare const HStack: React.FC<HStackProps>;
|
|
|
156
150
|
type TypographyVariant = "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "heading" | "subheading" | "body1" | "body2" | "body" | "caption" | "overline" | "small" | "large" | "label";
|
|
157
151
|
/** `none` = no size override — the variant's baked size applies. */
|
|
158
152
|
type TypographySize = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl";
|
|
159
|
-
interface TypographyProps extends React.AriaAttributes {
|
|
153
|
+
interface TypographyProps extends Omit<React.AriaAttributes, keyof A11yProps>, A11yProps {
|
|
160
154
|
/** Typography variant */
|
|
161
155
|
variant?: TypographyVariant;
|
|
162
156
|
/** Heading level (1-6) - alternative to variant for headings */
|
|
@@ -181,8 +175,6 @@ interface TypographyProps extends React.AriaAttributes {
|
|
|
181
175
|
className?: string;
|
|
182
176
|
/** Inline style */
|
|
183
177
|
style?: React.CSSProperties;
|
|
184
|
-
/** Accessibility role */
|
|
185
|
-
role?: string;
|
|
186
178
|
/**
|
|
187
179
|
* Value formatting applied to string/number/Date content — `none` (the
|
|
188
180
|
* default) renders content as-is. Covers the raw-ISO-date class: a bound
|
|
@@ -198,7 +190,7 @@ declare const Typography: React.FC<TypographyProps>;
|
|
|
198
190
|
|
|
199
191
|
type BadgeVariant = "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "error" | "info" | "neutral";
|
|
200
192
|
type BadgeSize = "sm" | "md" | "lg";
|
|
201
|
-
interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement
|
|
193
|
+
interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, keyof A11yProps>, A11yProps {
|
|
202
194
|
/** Additional CSS classes applied to the root element. */
|
|
203
195
|
className?: string;
|
|
204
196
|
variant?: BadgeVariant;
|
|
@@ -273,7 +265,7 @@ type IconAnimation = 'spin' | 'pulse' | 'none';
|
|
|
273
265
|
* icon prop as `React.ReactNode` (it collapses to a non-editable `node`).
|
|
274
266
|
*/
|
|
275
267
|
type IconInput = LucideIcon | string;
|
|
276
|
-
interface IconProps {
|
|
268
|
+
interface IconProps extends A11yProps {
|
|
277
269
|
/**
|
|
278
270
|
* Lucide icon component (preferred for type-safe usage), OR a canonical
|
|
279
271
|
* kebab-case icon name string — a string is treated exactly like `name` so
|
|
@@ -299,7 +291,8 @@ declare const Icon: React.FC<IconProps>;
|
|
|
299
291
|
|
|
300
292
|
type ButtonVariant = "primary" | "secondary" | "ghost" | "danger" | "success" | "warning" | "default" | "link";
|
|
301
293
|
type ButtonSize = "sm" | "md" | "lg";
|
|
302
|
-
|
|
294
|
+
/** @accessibleName label */
|
|
295
|
+
interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, keyof A11yProps>, A11yProps {
|
|
303
296
|
/** Additional CSS classes applied to the root element. */
|
|
304
297
|
className?: string;
|
|
305
298
|
variant?: ButtonVariant;
|
|
@@ -341,7 +334,7 @@ type CardShadow = "none" | "sm" | "md" | "lg";
|
|
|
341
334
|
* `variant` (which conveys role / state).
|
|
342
335
|
*/
|
|
343
336
|
type CardLook = "elevated" | "flat-bordered" | "borderless-divider" | "ticket" | "invoice" | "chip" | "tile-image-first";
|
|
344
|
-
interface CardProps extends React.HTMLAttributes<HTMLDivElement
|
|
337
|
+
interface CardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, keyof A11yProps>, A11yProps {
|
|
345
338
|
/** Additional CSS classes applied to the root element. */
|
|
346
339
|
className?: string;
|
|
347
340
|
variant?: "default" | "bordered" | "elevated" | "interactive";
|
|
@@ -371,7 +364,7 @@ declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttribu
|
|
|
371
364
|
|
|
372
365
|
type DividerOrientation = "horizontal" | "vertical";
|
|
373
366
|
type DividerVariant = "solid" | "dashed" | "dotted";
|
|
374
|
-
interface DividerProps {
|
|
367
|
+
interface DividerProps extends A11yProps {
|
|
375
368
|
/**
|
|
376
369
|
* Orientation of the divider
|
|
377
370
|
* @default 'horizontal'
|
|
@@ -393,13 +386,7 @@ interface DividerProps {
|
|
|
393
386
|
}
|
|
394
387
|
declare const Divider: React.FC<DividerProps>;
|
|
395
388
|
|
|
396
|
-
|
|
397
|
-
* Center Component
|
|
398
|
-
*
|
|
399
|
-
* A layout utility that centers its children horizontally and/or vertically.
|
|
400
|
-
*/
|
|
401
|
-
|
|
402
|
-
interface CenterProps {
|
|
389
|
+
interface CenterProps extends A11yProps {
|
|
403
390
|
/** Center inline (width fits content) vs block (full width) */
|
|
404
391
|
inline?: boolean;
|
|
405
392
|
/** Center only horizontally */
|
|
@@ -434,7 +421,7 @@ declare const Center: React.FC<CenterProps>;
|
|
|
434
421
|
*/
|
|
435
422
|
|
|
436
423
|
type SpacerSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'auto';
|
|
437
|
-
interface SpacerProps {
|
|
424
|
+
interface SpacerProps extends A11yProps {
|
|
438
425
|
/** Fixed size (auto = flex grow) */
|
|
439
426
|
size?: SpacerSize;
|
|
440
427
|
/** Orientation (for fixed sizes) */
|
|
@@ -451,15 +438,10 @@ interface SpacerProps {
|
|
|
451
438
|
*/
|
|
452
439
|
declare const Spacer: React.FC<SpacerProps>;
|
|
453
440
|
|
|
454
|
-
/**
|
|
455
|
-
* Avatar Atom Component
|
|
456
|
-
*
|
|
457
|
-
* A versatile avatar component supporting images, initials, icons, and status indicators.
|
|
458
|
-
*/
|
|
459
|
-
|
|
460
441
|
type AvatarSize = "xs" | "sm" | "md" | "lg" | "xl";
|
|
461
442
|
type AvatarStatus = "online" | "offline" | "away" | "busy";
|
|
462
|
-
|
|
443
|
+
/** @accessibleName alt name */
|
|
444
|
+
interface AvatarProps extends A11yProps {
|
|
463
445
|
/**
|
|
464
446
|
* Image source URL
|
|
465
447
|
*/
|
|
@@ -516,7 +498,8 @@ declare const Avatar: React.FC<AvatarProps>;
|
|
|
516
498
|
type ImageFit = 'cover' | 'contain' | 'fill' | 'none';
|
|
517
499
|
type ImageAspect = 'auto' | '1/1' | '4/3' | '3/2' | '16/9' | '21/9';
|
|
518
500
|
type ImageRounded = 'none' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full';
|
|
519
|
-
|
|
501
|
+
/** @accessibleName alt */
|
|
502
|
+
interface ImageProps extends A11yProps {
|
|
520
503
|
/** Image source URL */
|
|
521
504
|
src: AssetUrl;
|
|
522
505
|
/** Alternative text; empty string marks the image decorative */
|
|
@@ -536,7 +519,7 @@ interface ImageProps {
|
|
|
536
519
|
}
|
|
537
520
|
declare const Image: React.FC<ImageProps>;
|
|
538
521
|
|
|
539
|
-
interface SectionHeaderProps {
|
|
522
|
+
interface SectionHeaderProps extends A11yProps {
|
|
540
523
|
/** Section title text */
|
|
541
524
|
title: string;
|
|
542
525
|
/** Optional subtitle text */
|
|
@@ -563,7 +546,7 @@ declare const SectionHeader: React.FC<SectionHeaderProps>;
|
|
|
563
546
|
*
|
|
564
547
|
* @capabilities feature highlight, benefit callout, product capability card, feature-grid tile
|
|
565
548
|
*/
|
|
566
|
-
interface FeatureCardProps {
|
|
549
|
+
interface FeatureCardProps extends A11yProps {
|
|
567
550
|
icon?: IconInput;
|
|
568
551
|
/** Feature title */
|
|
569
552
|
title: string;
|
|
@@ -589,7 +572,7 @@ declare const FeatureCard: React.FC<FeatureCardProps>;
|
|
|
589
572
|
* Composes SimpleGrid and FeatureCard molecules.
|
|
590
573
|
*/
|
|
591
574
|
|
|
592
|
-
interface FeatureGridProps {
|
|
575
|
+
interface FeatureGridProps extends A11yProps {
|
|
593
576
|
/** Array of feature card configurations */
|
|
594
577
|
items: FeatureCardProps[];
|
|
595
578
|
/** Number of grid columns */
|
|
@@ -609,7 +592,7 @@ declare const FeatureGrid: React.FC<FeatureGridProps>;
|
|
|
609
592
|
*/
|
|
610
593
|
|
|
611
594
|
type SimpleGridGap = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
612
|
-
interface SimpleGridProps {
|
|
595
|
+
interface SimpleGridProps extends A11yProps {
|
|
613
596
|
/** Minimum width of each child (e.g., 200, "200px", "15rem") */
|
|
614
597
|
minChildWidth?: number | string;
|
|
615
598
|
/** Maximum number of columns */
|
|
@@ -622,6 +605,10 @@ interface SimpleGridProps {
|
|
|
622
605
|
className?: string;
|
|
623
606
|
/** Children elements */
|
|
624
607
|
children: React.ReactNode;
|
|
608
|
+
/** Element id forwarded to the grid element. */
|
|
609
|
+
id?: string;
|
|
610
|
+
/** DOM attributes forwarded to the grid element (aria-*, data-*, role, id). */
|
|
611
|
+
[attr: `aria-${string}` | `data-${string}`]: string | number | boolean | undefined;
|
|
625
612
|
}
|
|
626
613
|
/**
|
|
627
614
|
* SimpleGrid - Auto-responsive grid layout
|
|
@@ -637,7 +624,7 @@ declare const SimpleGrid: React.FC<SimpleGridProps>;
|
|
|
637
624
|
|
|
638
625
|
type ContainerSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full';
|
|
639
626
|
type ContainerPadding = 'none' | 'sm' | 'md' | 'lg' | 'xl';
|
|
640
|
-
interface ContainerProps {
|
|
627
|
+
interface ContainerProps extends A11yProps {
|
|
641
628
|
/** Maximum width */
|
|
642
629
|
size?: ContainerSize;
|
|
643
630
|
/** Alias for size (pattern compatibility) */
|
|
@@ -682,7 +669,7 @@ declare const Container: React.FC<ContainerProps>;
|
|
|
682
669
|
*/
|
|
683
670
|
|
|
684
671
|
type PatternVariant = 'star8' | 'star6' | 'khatam' | 'star10' | 'star12' | 'rosette-double' | 'rosette-filled' | 'seigaiha' | 'greek-key' | 'celtic-knot' | 'kolam' | 'arch' | 'arabesque-vine' | 'arabesque-net';
|
|
685
|
-
interface PatternTileProps {
|
|
672
|
+
interface PatternTileProps extends A11yProps {
|
|
686
673
|
/** Which geometric pattern to render */
|
|
687
674
|
variant?: PatternVariant;
|
|
688
675
|
/** Tile unit size in SVG units */
|
|
@@ -702,7 +689,7 @@ declare function getTileDimensions(variant: PatternVariant, size: number): {
|
|
|
702
689
|
|
|
703
690
|
type RevealTrigger = 'scroll' | 'hover' | 'manual';
|
|
704
691
|
type RevealAnimation = 'fade-up' | 'fade-down' | 'fade-in' | 'fade-left' | 'fade-right' | 'scale' | 'scale-up' | 'none';
|
|
705
|
-
interface AnimatedRevealProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'
|
|
692
|
+
interface AnimatedRevealProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children' | keyof A11yProps>, A11yProps {
|
|
706
693
|
/** Additional CSS classes applied to the root element. */
|
|
707
694
|
className?: string;
|
|
708
695
|
/** What triggers the animation */
|
|
@@ -727,7 +714,8 @@ interface AnimatedRevealProps extends Omit<React.HTMLAttributes<HTMLDivElement>,
|
|
|
727
714
|
declare const AnimatedReveal: React.ForwardRefExoticComponent<AnimatedRevealProps & React.RefAttributes<HTMLDivElement>>;
|
|
728
715
|
|
|
729
716
|
type GraphicAnimation = 'draw' | 'fill' | 'pulse' | 'morph';
|
|
730
|
-
|
|
717
|
+
/** @accessibleName alt */
|
|
718
|
+
interface AnimatedGraphicProps extends Omit<React.HTMLAttributes<HTMLDivElement>, keyof A11yProps>, A11yProps {
|
|
731
719
|
/** Additional CSS classes applied to the root element. */
|
|
732
720
|
className?: string;
|
|
733
721
|
/** URL to an SVG file. Fetched and inlined to enable stroke/fill animations. */
|
|
@@ -766,7 +754,7 @@ declare const AnimatedGraphic: React.ForwardRefExoticComponent<AnimatedGraphicPr
|
|
|
766
754
|
*/
|
|
767
755
|
|
|
768
756
|
type StatDisplayLook = 'elevated' | 'flat' | 'progress-backed' | 'gauge' | 'sparkline';
|
|
769
|
-
interface StatDisplayProps {
|
|
757
|
+
interface StatDisplayProps extends A11yProps {
|
|
770
758
|
/** Display label (e.g., "Total", "Remaining") */
|
|
771
759
|
label: string;
|
|
772
760
|
/** Primary value (number or formatted string) */
|
|
@@ -821,7 +809,7 @@ declare const StatDisplay: React.FC<StatDisplayProps>;
|
|
|
821
809
|
* Used between major sections for visual separation without hard background-color breaks.
|
|
822
810
|
*/
|
|
823
811
|
|
|
824
|
-
interface GradientDividerProps {
|
|
812
|
+
interface GradientDividerProps extends A11yProps {
|
|
825
813
|
/** Semantic palette token or a raw CSS color value. Defaults to 'primary'. */
|
|
826
814
|
color?: ColorToken | string;
|
|
827
815
|
/** Additional class names */
|
|
@@ -836,7 +824,7 @@ declare const GradientDivider: React.FC<GradientDividerProps>;
|
|
|
836
824
|
* later value changes. Optional label below the number.
|
|
837
825
|
*/
|
|
838
826
|
|
|
839
|
-
interface AnimatedCounterProps {
|
|
827
|
+
interface AnimatedCounterProps extends A11yProps {
|
|
840
828
|
/** Target value. Strings may carry display affixes (e.g. "500+", "99.9%", "$1.2M"). */
|
|
841
829
|
value: string | number;
|
|
842
830
|
/** Label displayed below the number */
|
package/dist/ssr/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { EventKey, EventPayload, EventEmit, Asset, AssetUrl } from '@almadar/core';
|
|
2
|
+
import { A11yProps, EventKey, EventPayload, EventEmit, Asset, AssetUrl } from '@almadar/core';
|
|
3
3
|
import { LucideIcon } from 'lucide-react';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -14,13 +14,11 @@ type BoxMargin = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "auto";
|
|
|
14
14
|
type BoxBg = "transparent" | "primary" | "secondary" | "muted" | "accent" | "surface" | "overlay";
|
|
15
15
|
type BoxRounded = "none" | "sm" | "md" | "lg" | "xl" | "2xl" | "full";
|
|
16
16
|
type BoxShadow = "none" | "sm" | "md" | "lg" | "xl";
|
|
17
|
-
interface BoxProps extends React.HTMLAttributes<HTMLDivElement
|
|
17
|
+
interface BoxProps extends Omit<React.HTMLAttributes<HTMLDivElement>, keyof A11yProps>, A11yProps {
|
|
18
18
|
/** Additional CSS classes applied to the root element. */
|
|
19
19
|
className?: string;
|
|
20
20
|
/** Data-theme attribute applied to the root element for CSS theme scoping (e.g. almadar-website-dark). */
|
|
21
21
|
'data-theme'?: string;
|
|
22
|
-
/** Text direction for this subtree: "ltr", "rtl" (Arabic/Hebrew content) or "auto" */
|
|
23
|
-
dir?: string;
|
|
24
22
|
/**
|
|
25
23
|
* Padding on all sides
|
|
26
24
|
* @example md
|
|
@@ -92,7 +90,7 @@ type StackDirection = "horizontal" | "vertical";
|
|
|
92
90
|
type StackGap = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
93
91
|
type StackAlign = "start" | "center" | "end" | "stretch" | "baseline";
|
|
94
92
|
type StackJustify = "start" | "center" | "end" | "between" | "around" | "evenly";
|
|
95
|
-
interface StackProps extends React.AriaAttributes {
|
|
93
|
+
interface StackProps extends Omit<React.AriaAttributes, keyof A11yProps>, A11yProps {
|
|
96
94
|
/** Stack direction */
|
|
97
95
|
direction?: StackDirection;
|
|
98
96
|
/** Gap between children */
|
|
@@ -119,12 +117,8 @@ interface StackProps extends React.AriaAttributes {
|
|
|
119
117
|
onClick?: (e: React.MouseEvent) => void;
|
|
120
118
|
/** Keyboard handler */
|
|
121
119
|
onKeyDown?: (e: React.KeyboardEvent) => void;
|
|
122
|
-
/** Role for accessibility */
|
|
123
|
-
role?: string;
|
|
124
120
|
/** Element id */
|
|
125
121
|
id?: string;
|
|
126
|
-
/** Tab index for focus management */
|
|
127
|
-
tabIndex?: number;
|
|
128
122
|
/** Declarative event name — emits UI:{action} via eventBus on click */
|
|
129
123
|
action?: EventKey;
|
|
130
124
|
/** Payload to include with the action event
|
|
@@ -156,7 +150,7 @@ declare const HStack: React.FC<HStackProps>;
|
|
|
156
150
|
type TypographyVariant = "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "heading" | "subheading" | "body1" | "body2" | "body" | "caption" | "overline" | "small" | "large" | "label";
|
|
157
151
|
/** `none` = no size override — the variant's baked size applies. */
|
|
158
152
|
type TypographySize = "none" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl";
|
|
159
|
-
interface TypographyProps extends React.AriaAttributes {
|
|
153
|
+
interface TypographyProps extends Omit<React.AriaAttributes, keyof A11yProps>, A11yProps {
|
|
160
154
|
/** Typography variant */
|
|
161
155
|
variant?: TypographyVariant;
|
|
162
156
|
/** Heading level (1-6) - alternative to variant for headings */
|
|
@@ -181,8 +175,6 @@ interface TypographyProps extends React.AriaAttributes {
|
|
|
181
175
|
className?: string;
|
|
182
176
|
/** Inline style */
|
|
183
177
|
style?: React.CSSProperties;
|
|
184
|
-
/** Accessibility role */
|
|
185
|
-
role?: string;
|
|
186
178
|
/**
|
|
187
179
|
* Value formatting applied to string/number/Date content — `none` (the
|
|
188
180
|
* default) renders content as-is. Covers the raw-ISO-date class: a bound
|
|
@@ -198,7 +190,7 @@ declare const Typography: React.FC<TypographyProps>;
|
|
|
198
190
|
|
|
199
191
|
type BadgeVariant = "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "error" | "info" | "neutral";
|
|
200
192
|
type BadgeSize = "sm" | "md" | "lg";
|
|
201
|
-
interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement
|
|
193
|
+
interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, keyof A11yProps>, A11yProps {
|
|
202
194
|
/** Additional CSS classes applied to the root element. */
|
|
203
195
|
className?: string;
|
|
204
196
|
variant?: BadgeVariant;
|
|
@@ -273,7 +265,7 @@ type IconAnimation = 'spin' | 'pulse' | 'none';
|
|
|
273
265
|
* icon prop as `React.ReactNode` (it collapses to a non-editable `node`).
|
|
274
266
|
*/
|
|
275
267
|
type IconInput = LucideIcon | string;
|
|
276
|
-
interface IconProps {
|
|
268
|
+
interface IconProps extends A11yProps {
|
|
277
269
|
/**
|
|
278
270
|
* Lucide icon component (preferred for type-safe usage), OR a canonical
|
|
279
271
|
* kebab-case icon name string — a string is treated exactly like `name` so
|
|
@@ -299,7 +291,8 @@ declare const Icon: React.FC<IconProps>;
|
|
|
299
291
|
|
|
300
292
|
type ButtonVariant = "primary" | "secondary" | "ghost" | "danger" | "success" | "warning" | "default" | "link";
|
|
301
293
|
type ButtonSize = "sm" | "md" | "lg";
|
|
302
|
-
|
|
294
|
+
/** @accessibleName label */
|
|
295
|
+
interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, keyof A11yProps>, A11yProps {
|
|
303
296
|
/** Additional CSS classes applied to the root element. */
|
|
304
297
|
className?: string;
|
|
305
298
|
variant?: ButtonVariant;
|
|
@@ -341,7 +334,7 @@ type CardShadow = "none" | "sm" | "md" | "lg";
|
|
|
341
334
|
* `variant` (which conveys role / state).
|
|
342
335
|
*/
|
|
343
336
|
type CardLook = "elevated" | "flat-bordered" | "borderless-divider" | "ticket" | "invoice" | "chip" | "tile-image-first";
|
|
344
|
-
interface CardProps extends React.HTMLAttributes<HTMLDivElement
|
|
337
|
+
interface CardProps extends Omit<React.HTMLAttributes<HTMLDivElement>, keyof A11yProps>, A11yProps {
|
|
345
338
|
/** Additional CSS classes applied to the root element. */
|
|
346
339
|
className?: string;
|
|
347
340
|
variant?: "default" | "bordered" | "elevated" | "interactive";
|
|
@@ -371,7 +364,7 @@ declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttribu
|
|
|
371
364
|
|
|
372
365
|
type DividerOrientation = "horizontal" | "vertical";
|
|
373
366
|
type DividerVariant = "solid" | "dashed" | "dotted";
|
|
374
|
-
interface DividerProps {
|
|
367
|
+
interface DividerProps extends A11yProps {
|
|
375
368
|
/**
|
|
376
369
|
* Orientation of the divider
|
|
377
370
|
* @default 'horizontal'
|
|
@@ -393,13 +386,7 @@ interface DividerProps {
|
|
|
393
386
|
}
|
|
394
387
|
declare const Divider: React.FC<DividerProps>;
|
|
395
388
|
|
|
396
|
-
|
|
397
|
-
* Center Component
|
|
398
|
-
*
|
|
399
|
-
* A layout utility that centers its children horizontally and/or vertically.
|
|
400
|
-
*/
|
|
401
|
-
|
|
402
|
-
interface CenterProps {
|
|
389
|
+
interface CenterProps extends A11yProps {
|
|
403
390
|
/** Center inline (width fits content) vs block (full width) */
|
|
404
391
|
inline?: boolean;
|
|
405
392
|
/** Center only horizontally */
|
|
@@ -434,7 +421,7 @@ declare const Center: React.FC<CenterProps>;
|
|
|
434
421
|
*/
|
|
435
422
|
|
|
436
423
|
type SpacerSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'auto';
|
|
437
|
-
interface SpacerProps {
|
|
424
|
+
interface SpacerProps extends A11yProps {
|
|
438
425
|
/** Fixed size (auto = flex grow) */
|
|
439
426
|
size?: SpacerSize;
|
|
440
427
|
/** Orientation (for fixed sizes) */
|
|
@@ -451,15 +438,10 @@ interface SpacerProps {
|
|
|
451
438
|
*/
|
|
452
439
|
declare const Spacer: React.FC<SpacerProps>;
|
|
453
440
|
|
|
454
|
-
/**
|
|
455
|
-
* Avatar Atom Component
|
|
456
|
-
*
|
|
457
|
-
* A versatile avatar component supporting images, initials, icons, and status indicators.
|
|
458
|
-
*/
|
|
459
|
-
|
|
460
441
|
type AvatarSize = "xs" | "sm" | "md" | "lg" | "xl";
|
|
461
442
|
type AvatarStatus = "online" | "offline" | "away" | "busy";
|
|
462
|
-
|
|
443
|
+
/** @accessibleName alt name */
|
|
444
|
+
interface AvatarProps extends A11yProps {
|
|
463
445
|
/**
|
|
464
446
|
* Image source URL
|
|
465
447
|
*/
|
|
@@ -516,7 +498,8 @@ declare const Avatar: React.FC<AvatarProps>;
|
|
|
516
498
|
type ImageFit = 'cover' | 'contain' | 'fill' | 'none';
|
|
517
499
|
type ImageAspect = 'auto' | '1/1' | '4/3' | '3/2' | '16/9' | '21/9';
|
|
518
500
|
type ImageRounded = 'none' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full';
|
|
519
|
-
|
|
501
|
+
/** @accessibleName alt */
|
|
502
|
+
interface ImageProps extends A11yProps {
|
|
520
503
|
/** Image source URL */
|
|
521
504
|
src: AssetUrl;
|
|
522
505
|
/** Alternative text; empty string marks the image decorative */
|
|
@@ -536,7 +519,7 @@ interface ImageProps {
|
|
|
536
519
|
}
|
|
537
520
|
declare const Image: React.FC<ImageProps>;
|
|
538
521
|
|
|
539
|
-
interface SectionHeaderProps {
|
|
522
|
+
interface SectionHeaderProps extends A11yProps {
|
|
540
523
|
/** Section title text */
|
|
541
524
|
title: string;
|
|
542
525
|
/** Optional subtitle text */
|
|
@@ -563,7 +546,7 @@ declare const SectionHeader: React.FC<SectionHeaderProps>;
|
|
|
563
546
|
*
|
|
564
547
|
* @capabilities feature highlight, benefit callout, product capability card, feature-grid tile
|
|
565
548
|
*/
|
|
566
|
-
interface FeatureCardProps {
|
|
549
|
+
interface FeatureCardProps extends A11yProps {
|
|
567
550
|
icon?: IconInput;
|
|
568
551
|
/** Feature title */
|
|
569
552
|
title: string;
|
|
@@ -589,7 +572,7 @@ declare const FeatureCard: React.FC<FeatureCardProps>;
|
|
|
589
572
|
* Composes SimpleGrid and FeatureCard molecules.
|
|
590
573
|
*/
|
|
591
574
|
|
|
592
|
-
interface FeatureGridProps {
|
|
575
|
+
interface FeatureGridProps extends A11yProps {
|
|
593
576
|
/** Array of feature card configurations */
|
|
594
577
|
items: FeatureCardProps[];
|
|
595
578
|
/** Number of grid columns */
|
|
@@ -609,7 +592,7 @@ declare const FeatureGrid: React.FC<FeatureGridProps>;
|
|
|
609
592
|
*/
|
|
610
593
|
|
|
611
594
|
type SimpleGridGap = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
612
|
-
interface SimpleGridProps {
|
|
595
|
+
interface SimpleGridProps extends A11yProps {
|
|
613
596
|
/** Minimum width of each child (e.g., 200, "200px", "15rem") */
|
|
614
597
|
minChildWidth?: number | string;
|
|
615
598
|
/** Maximum number of columns */
|
|
@@ -622,6 +605,10 @@ interface SimpleGridProps {
|
|
|
622
605
|
className?: string;
|
|
623
606
|
/** Children elements */
|
|
624
607
|
children: React.ReactNode;
|
|
608
|
+
/** Element id forwarded to the grid element. */
|
|
609
|
+
id?: string;
|
|
610
|
+
/** DOM attributes forwarded to the grid element (aria-*, data-*, role, id). */
|
|
611
|
+
[attr: `aria-${string}` | `data-${string}`]: string | number | boolean | undefined;
|
|
625
612
|
}
|
|
626
613
|
/**
|
|
627
614
|
* SimpleGrid - Auto-responsive grid layout
|
|
@@ -637,7 +624,7 @@ declare const SimpleGrid: React.FC<SimpleGridProps>;
|
|
|
637
624
|
|
|
638
625
|
type ContainerSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full';
|
|
639
626
|
type ContainerPadding = 'none' | 'sm' | 'md' | 'lg' | 'xl';
|
|
640
|
-
interface ContainerProps {
|
|
627
|
+
interface ContainerProps extends A11yProps {
|
|
641
628
|
/** Maximum width */
|
|
642
629
|
size?: ContainerSize;
|
|
643
630
|
/** Alias for size (pattern compatibility) */
|
|
@@ -682,7 +669,7 @@ declare const Container: React.FC<ContainerProps>;
|
|
|
682
669
|
*/
|
|
683
670
|
|
|
684
671
|
type PatternVariant = 'star8' | 'star6' | 'khatam' | 'star10' | 'star12' | 'rosette-double' | 'rosette-filled' | 'seigaiha' | 'greek-key' | 'celtic-knot' | 'kolam' | 'arch' | 'arabesque-vine' | 'arabesque-net';
|
|
685
|
-
interface PatternTileProps {
|
|
672
|
+
interface PatternTileProps extends A11yProps {
|
|
686
673
|
/** Which geometric pattern to render */
|
|
687
674
|
variant?: PatternVariant;
|
|
688
675
|
/** Tile unit size in SVG units */
|
|
@@ -702,7 +689,7 @@ declare function getTileDimensions(variant: PatternVariant, size: number): {
|
|
|
702
689
|
|
|
703
690
|
type RevealTrigger = 'scroll' | 'hover' | 'manual';
|
|
704
691
|
type RevealAnimation = 'fade-up' | 'fade-down' | 'fade-in' | 'fade-left' | 'fade-right' | 'scale' | 'scale-up' | 'none';
|
|
705
|
-
interface AnimatedRevealProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'
|
|
692
|
+
interface AnimatedRevealProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children' | keyof A11yProps>, A11yProps {
|
|
706
693
|
/** Additional CSS classes applied to the root element. */
|
|
707
694
|
className?: string;
|
|
708
695
|
/** What triggers the animation */
|
|
@@ -727,7 +714,8 @@ interface AnimatedRevealProps extends Omit<React.HTMLAttributes<HTMLDivElement>,
|
|
|
727
714
|
declare const AnimatedReveal: React.ForwardRefExoticComponent<AnimatedRevealProps & React.RefAttributes<HTMLDivElement>>;
|
|
728
715
|
|
|
729
716
|
type GraphicAnimation = 'draw' | 'fill' | 'pulse' | 'morph';
|
|
730
|
-
|
|
717
|
+
/** @accessibleName alt */
|
|
718
|
+
interface AnimatedGraphicProps extends Omit<React.HTMLAttributes<HTMLDivElement>, keyof A11yProps>, A11yProps {
|
|
731
719
|
/** Additional CSS classes applied to the root element. */
|
|
732
720
|
className?: string;
|
|
733
721
|
/** URL to an SVG file. Fetched and inlined to enable stroke/fill animations. */
|
|
@@ -766,7 +754,7 @@ declare const AnimatedGraphic: React.ForwardRefExoticComponent<AnimatedGraphicPr
|
|
|
766
754
|
*/
|
|
767
755
|
|
|
768
756
|
type StatDisplayLook = 'elevated' | 'flat' | 'progress-backed' | 'gauge' | 'sparkline';
|
|
769
|
-
interface StatDisplayProps {
|
|
757
|
+
interface StatDisplayProps extends A11yProps {
|
|
770
758
|
/** Display label (e.g., "Total", "Remaining") */
|
|
771
759
|
label: string;
|
|
772
760
|
/** Primary value (number or formatted string) */
|
|
@@ -821,7 +809,7 @@ declare const StatDisplay: React.FC<StatDisplayProps>;
|
|
|
821
809
|
* Used between major sections for visual separation without hard background-color breaks.
|
|
822
810
|
*/
|
|
823
811
|
|
|
824
|
-
interface GradientDividerProps {
|
|
812
|
+
interface GradientDividerProps extends A11yProps {
|
|
825
813
|
/** Semantic palette token or a raw CSS color value. Defaults to 'primary'. */
|
|
826
814
|
color?: ColorToken | string;
|
|
827
815
|
/** Additional class names */
|
|
@@ -836,7 +824,7 @@ declare const GradientDivider: React.FC<GradientDividerProps>;
|
|
|
836
824
|
* later value changes. Optional label below the number.
|
|
837
825
|
*/
|
|
838
826
|
|
|
839
|
-
interface AnimatedCounterProps {
|
|
827
|
+
interface AnimatedCounterProps extends A11yProps {
|
|
840
828
|
/** Target value. Strings may carry display affixes (e.g. "500+", "99.9%", "$1.2M"). */
|
|
841
829
|
value: string | number;
|
|
842
830
|
/** Label displayed below the number */
|