@mohasinac/ui 1.0.0 → 1.1.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/index.cjs +617 -59
- package/dist/index.d.cts +196 -56
- package/dist/index.d.ts +196 -56
- package/dist/index.js +601 -58
- package/package.json +2 -2
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import React, { ReactNode } from 'react';
|
|
2
|
+
import React$1, { ReactNode } from 'react';
|
|
3
3
|
import { PaginationConfig, TableColumn, TableConfig } from '@mohasinac/contracts';
|
|
4
4
|
export { DEFAULT_PAGINATION_CONFIG, DEFAULT_STICKY_CONFIG, DEFAULT_TABLE_CONFIG, PaginationConfig, StickyConfig, TableConfig, TableViewMode, mergeTableConfig } from '@mohasinac/contracts';
|
|
5
5
|
|
|
@@ -39,24 +39,24 @@ export { DEFAULT_PAGINATION_CONFIG, DEFAULT_STICKY_CONFIG, DEFAULT_TABLE_CONFIG,
|
|
|
39
39
|
* Use for thematically grouped content that would appear in an outline.
|
|
40
40
|
* Prefer this over a plain `<div>` when the block has a heading.
|
|
41
41
|
*/
|
|
42
|
-
interface SectionProps extends React.HTMLAttributes<HTMLElement> {
|
|
43
|
-
children: React.ReactNode;
|
|
42
|
+
interface SectionProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
43
|
+
children: React$1.ReactNode;
|
|
44
44
|
}
|
|
45
|
-
declare const Section: React.ForwardRefExoticComponent<SectionProps & React.RefAttributes<HTMLElement>>;
|
|
45
|
+
declare const Section: React$1.ForwardRefExoticComponent<SectionProps & React$1.RefAttributes<HTMLElement>>;
|
|
46
46
|
/**
|
|
47
47
|
* Semantic `<article>` element.
|
|
48
48
|
* Use for self-contained compositions: blog posts, product cards, reviews, forum posts.
|
|
49
49
|
*/
|
|
50
|
-
interface ArticleProps extends React.HTMLAttributes<HTMLElement> {
|
|
51
|
-
children?: React.ReactNode;
|
|
50
|
+
interface ArticleProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
51
|
+
children?: React$1.ReactNode;
|
|
52
52
|
}
|
|
53
53
|
declare function Article({ className, children, ...props }: ArticleProps): react_jsx_runtime.JSX.Element;
|
|
54
54
|
/**
|
|
55
55
|
* Semantic `<main>` element.
|
|
56
56
|
* Wraps the primary content of the document. Should appear only once per page.
|
|
57
57
|
*/
|
|
58
|
-
interface MainProps extends React.HTMLAttributes<HTMLElement> {
|
|
59
|
-
children: React.ReactNode;
|
|
58
|
+
interface MainProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
59
|
+
children: React$1.ReactNode;
|
|
60
60
|
}
|
|
61
61
|
declare function Main({ className, children, ...props }: MainProps): react_jsx_runtime.JSX.Element;
|
|
62
62
|
/**
|
|
@@ -64,10 +64,10 @@ declare function Main({ className, children, ...props }: MainProps): react_jsx_r
|
|
|
64
64
|
* Use for supplementary content tangentially related to the main content:
|
|
65
65
|
* sidebars, callout boxes, related-link panels.
|
|
66
66
|
*/
|
|
67
|
-
interface AsideProps extends React.HTMLAttributes<HTMLElement> {
|
|
68
|
-
children: React.ReactNode;
|
|
67
|
+
interface AsideProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
68
|
+
children: React$1.ReactNode;
|
|
69
69
|
}
|
|
70
|
-
declare const Aside: React.ForwardRefExoticComponent<AsideProps & React.RefAttributes<HTMLElement>>;
|
|
70
|
+
declare const Aside: React$1.ForwardRefExoticComponent<AsideProps & React$1.RefAttributes<HTMLElement>>;
|
|
71
71
|
/**
|
|
72
72
|
* Semantic `<nav>` element with enforced `aria-label`.
|
|
73
73
|
*
|
|
@@ -80,10 +80,10 @@ declare const Aside: React.ForwardRefExoticComponent<AsideProps & React.RefAttri
|
|
|
80
80
|
* <Nav aria-label="Product categories">...</Nav>
|
|
81
81
|
* ```
|
|
82
82
|
*/
|
|
83
|
-
interface NavProps extends React.HTMLAttributes<HTMLElement> {
|
|
83
|
+
interface NavProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
84
84
|
/** REQUIRED — describes the purpose of this navigation region for screen readers. */
|
|
85
85
|
"aria-label": string;
|
|
86
|
-
children: React.ReactNode;
|
|
86
|
+
children: React$1.ReactNode;
|
|
87
87
|
}
|
|
88
88
|
declare function Nav({ className, children, ...props }: NavProps): react_jsx_runtime.JSX.Element;
|
|
89
89
|
/**
|
|
@@ -99,16 +99,16 @@ declare function Nav({ className, children, ...props }: NavProps): react_jsx_run
|
|
|
99
99
|
* </Article>
|
|
100
100
|
* ```
|
|
101
101
|
*/
|
|
102
|
-
interface BlockHeaderProps extends React.HTMLAttributes<HTMLElement> {
|
|
103
|
-
children: React.ReactNode;
|
|
102
|
+
interface BlockHeaderProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
103
|
+
children: React$1.ReactNode;
|
|
104
104
|
}
|
|
105
105
|
declare function BlockHeader({ className, children, ...props }: BlockHeaderProps): react_jsx_runtime.JSX.Element;
|
|
106
106
|
/**
|
|
107
107
|
* Semantic `<footer>` element for block-level component footers.
|
|
108
108
|
* Use inside `Section`, `Article`, or card bodies — NOT as the page-level footer.
|
|
109
109
|
*/
|
|
110
|
-
interface BlockFooterProps extends React.HTMLAttributes<HTMLElement> {
|
|
111
|
-
children: React.ReactNode;
|
|
110
|
+
interface BlockFooterProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
111
|
+
children: React$1.ReactNode;
|
|
112
112
|
}
|
|
113
113
|
declare function BlockFooter({ className, children, ...props }: BlockFooterProps): react_jsx_runtime.JSX.Element;
|
|
114
114
|
/**
|
|
@@ -122,8 +122,8 @@ declare function BlockFooter({ className, children, ...props }: BlockFooterProps
|
|
|
122
122
|
* </Ul>
|
|
123
123
|
* ```
|
|
124
124
|
*/
|
|
125
|
-
interface UlProps extends React.HTMLAttributes<HTMLUListElement> {
|
|
126
|
-
children: React.ReactNode;
|
|
125
|
+
interface UlProps extends React$1.HTMLAttributes<HTMLUListElement> {
|
|
126
|
+
children: React$1.ReactNode;
|
|
127
127
|
}
|
|
128
128
|
declare function Ul({ className, children, ...props }: UlProps): react_jsx_runtime.JSX.Element;
|
|
129
129
|
/**
|
|
@@ -137,40 +137,40 @@ declare function Ul({ className, children, ...props }: UlProps): react_jsx_runti
|
|
|
137
137
|
* </Ol>
|
|
138
138
|
* ```
|
|
139
139
|
*/
|
|
140
|
-
interface OlProps extends React.HTMLAttributes<HTMLOListElement> {
|
|
141
|
-
children: React.ReactNode;
|
|
140
|
+
interface OlProps extends React$1.HTMLAttributes<HTMLOListElement> {
|
|
141
|
+
children: React$1.ReactNode;
|
|
142
142
|
}
|
|
143
143
|
declare function Ol({ className, children, ...props }: OlProps): react_jsx_runtime.JSX.Element;
|
|
144
144
|
/**
|
|
145
145
|
* Semantic `<li>` (list item) element. Use inside `Ul` or `Ol`.
|
|
146
146
|
*/
|
|
147
|
-
interface LiProps extends React.LiHTMLAttributes<HTMLLIElement> {
|
|
148
|
-
children: React.ReactNode;
|
|
147
|
+
interface LiProps extends React$1.LiHTMLAttributes<HTMLLIElement> {
|
|
148
|
+
children: React$1.ReactNode;
|
|
149
149
|
}
|
|
150
150
|
declare function Li({ className, children, ...props }: LiProps): react_jsx_runtime.JSX.Element;
|
|
151
151
|
|
|
152
|
-
interface HeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {
|
|
152
|
+
interface HeadingProps extends React$1.HTMLAttributes<HTMLHeadingElement> {
|
|
153
153
|
level?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
154
154
|
variant?: "primary" | "secondary" | "muted" | "none";
|
|
155
|
-
children: React.ReactNode;
|
|
155
|
+
children: React$1.ReactNode;
|
|
156
156
|
}
|
|
157
157
|
declare function Heading({ level, variant, className, children, ...props }: HeadingProps): react_jsx_runtime.JSX.Element;
|
|
158
|
-
interface TextProps extends React.HTMLAttributes<HTMLParagraphElement> {
|
|
158
|
+
interface TextProps extends React$1.HTMLAttributes<HTMLParagraphElement> {
|
|
159
159
|
variant?: "primary" | "secondary" | "muted" | "error" | "success" | "none";
|
|
160
160
|
size?: "xs" | "sm" | "base" | "lg" | "xl";
|
|
161
161
|
weight?: "normal" | "medium" | "semibold" | "bold";
|
|
162
|
-
children: React.ReactNode;
|
|
162
|
+
children: React$1.ReactNode;
|
|
163
163
|
}
|
|
164
164
|
declare function Text({ variant, size, weight, className, children, ...props }: TextProps): react_jsx_runtime.JSX.Element;
|
|
165
|
-
interface LabelProps extends React.LabelHTMLAttributes<HTMLLabelElement> {
|
|
165
|
+
interface LabelProps extends React$1.LabelHTMLAttributes<HTMLLabelElement> {
|
|
166
166
|
required?: boolean;
|
|
167
|
-
children: React.ReactNode;
|
|
167
|
+
children: React$1.ReactNode;
|
|
168
168
|
}
|
|
169
169
|
declare function Label({ required, className, children, ...props }: LabelProps): react_jsx_runtime.JSX.Element;
|
|
170
|
-
interface CaptionProps extends React.HTMLAttributes<HTMLSpanElement> {
|
|
170
|
+
interface CaptionProps extends React$1.HTMLAttributes<HTMLSpanElement> {
|
|
171
171
|
/** "default" — muted grey (default); "accent" — indigo, semibold; "inverse" — light indigo for use on dark indigo backgrounds */
|
|
172
172
|
variant?: "default" | "accent" | "inverse";
|
|
173
|
-
children: React.ReactNode;
|
|
173
|
+
children: React$1.ReactNode;
|
|
174
174
|
}
|
|
175
175
|
declare function Caption({ variant, className, children, ...props }: CaptionProps): react_jsx_runtime.JSX.Element;
|
|
176
176
|
/**
|
|
@@ -187,12 +187,12 @@ declare function Caption({ variant, className, children, ...props }: CaptionProp
|
|
|
187
187
|
* <Span variant="error" weight="semibold">Required</Span>
|
|
188
188
|
* ```
|
|
189
189
|
*/
|
|
190
|
-
interface SpanProps extends React.HTMLAttributes<HTMLSpanElement> {
|
|
190
|
+
interface SpanProps extends React$1.HTMLAttributes<HTMLSpanElement> {
|
|
191
191
|
/** Colour variant. "inherit" (default) applies no colour class. */
|
|
192
192
|
variant?: "inherit" | "primary" | "secondary" | "muted" | "error" | "success" | "accent";
|
|
193
193
|
size?: "xs" | "sm" | "base" | "lg" | "xl";
|
|
194
194
|
weight?: "normal" | "medium" | "semibold" | "bold";
|
|
195
|
-
children?: React.ReactNode;
|
|
195
|
+
children?: React$1.ReactNode;
|
|
196
196
|
}
|
|
197
197
|
declare function Span({ variant, size, weight, className, children, ...props }: SpanProps): react_jsx_runtime.JSX.Element;
|
|
198
198
|
|
|
@@ -248,11 +248,11 @@ declare const UI_BUTTON: {
|
|
|
248
248
|
readonly lg: "px-4 py-2.5 text-base sm:px-6 sm:py-3 sm:text-lg gap-2.5 min-h-[44px]";
|
|
249
249
|
};
|
|
250
250
|
};
|
|
251
|
-
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
251
|
+
interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
252
252
|
variant?: keyof typeof UI_BUTTON.variants;
|
|
253
253
|
size?: keyof typeof UI_BUTTON.sizes;
|
|
254
254
|
isLoading?: boolean;
|
|
255
|
-
children?: React.ReactNode;
|
|
255
|
+
children?: React$1.ReactNode;
|
|
256
256
|
}
|
|
257
257
|
declare function Button({ variant, size, className, isLoading, disabled, children, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
258
258
|
|
|
@@ -282,7 +282,7 @@ declare const BADGE_CLASSES: {
|
|
|
282
282
|
};
|
|
283
283
|
type BadgeVariant = keyof typeof BADGE_CLASSES;
|
|
284
284
|
interface BadgeProps {
|
|
285
|
-
children: React.ReactNode;
|
|
285
|
+
children: React$1.ReactNode;
|
|
286
286
|
variant?: BadgeVariant;
|
|
287
287
|
className?: string;
|
|
288
288
|
}
|
|
@@ -321,7 +321,7 @@ declare const ALERT_STYLES: {
|
|
|
321
321
|
};
|
|
322
322
|
};
|
|
323
323
|
interface AlertProps {
|
|
324
|
-
children: React.ReactNode;
|
|
324
|
+
children: React$1.ReactNode;
|
|
325
325
|
variant?: keyof typeof ALERT_STYLES;
|
|
326
326
|
title?: string;
|
|
327
327
|
onClose?: () => void;
|
|
@@ -408,13 +408,13 @@ interface ModalProps {
|
|
|
408
408
|
isOpen: boolean;
|
|
409
409
|
onClose: () => void;
|
|
410
410
|
title?: string;
|
|
411
|
-
children: React.ReactNode;
|
|
411
|
+
children: React$1.ReactNode;
|
|
412
412
|
size?: "sm" | "md" | "lg" | "xl" | "full";
|
|
413
413
|
showCloseButton?: boolean;
|
|
414
414
|
/** Additional classNames for the modal panel */
|
|
415
415
|
className?: string;
|
|
416
416
|
}
|
|
417
|
-
declare function Modal({ isOpen, onClose, title, children, size, showCloseButton, className, }: ModalProps): React.ReactPortal | null;
|
|
417
|
+
declare function Modal({ isOpen, onClose, title, children, size, showCloseButton, className, }: ModalProps): React$1.ReactPortal | null;
|
|
418
418
|
|
|
419
419
|
/**
|
|
420
420
|
* Drawer — slide-in panel from left, right, or bottom.
|
|
@@ -426,15 +426,15 @@ interface DrawerProps {
|
|
|
426
426
|
isOpen: boolean;
|
|
427
427
|
onClose: () => void;
|
|
428
428
|
title?: string;
|
|
429
|
-
children: React.ReactNode;
|
|
430
|
-
footer?: React.ReactNode;
|
|
429
|
+
children: React$1.ReactNode;
|
|
430
|
+
footer?: React$1.ReactNode;
|
|
431
431
|
side?: "left" | "right" | "bottom";
|
|
432
432
|
/** Width for left/right drawers. Default: 'md' */
|
|
433
433
|
size?: "sm" | "md" | "lg" | "full";
|
|
434
434
|
showCloseButton?: boolean;
|
|
435
435
|
className?: string;
|
|
436
436
|
}
|
|
437
|
-
declare function Drawer({ isOpen, onClose, title, children, footer, side, size, showCloseButton, className, }: DrawerProps): React.ReactPortal | null;
|
|
437
|
+
declare function Drawer({ isOpen, onClose, title, children, footer, side, size, showCloseButton, className, }: DrawerProps): React$1.ReactPortal | null;
|
|
438
438
|
|
|
439
439
|
/**
|
|
440
440
|
* Select — accessible combobox with label, error state, and disabled support.
|
|
@@ -515,7 +515,108 @@ interface ImageLightboxProps {
|
|
|
515
515
|
onClose: () => void;
|
|
516
516
|
onNavigate?: (index: number) => void;
|
|
517
517
|
}
|
|
518
|
-
declare function ImageLightbox({ images, activeIndex, onClose, onNavigate, }: ImageLightboxProps): React.ReactPortal | null;
|
|
518
|
+
declare function ImageLightbox({ images, activeIndex, onClose, onNavigate, }: ImageLightboxProps): React$1.ReactPortal | null;
|
|
519
|
+
|
|
520
|
+
interface TagInputProps {
|
|
521
|
+
value: string[];
|
|
522
|
+
onChange: (tags: string[]) => void;
|
|
523
|
+
disabled?: boolean;
|
|
524
|
+
label?: string;
|
|
525
|
+
placeholder?: string;
|
|
526
|
+
className?: string;
|
|
527
|
+
helperText?: string;
|
|
528
|
+
}
|
|
529
|
+
declare function TagInput({ value, onChange, disabled, label, placeholder, className, helperText, }: TagInputProps): react_jsx_runtime.JSX.Element;
|
|
530
|
+
|
|
531
|
+
interface StepperNavStep {
|
|
532
|
+
number: number;
|
|
533
|
+
label: string;
|
|
534
|
+
}
|
|
535
|
+
interface StepperNavProps {
|
|
536
|
+
steps: StepperNavStep[];
|
|
537
|
+
currentStep: number;
|
|
538
|
+
className?: string;
|
|
539
|
+
}
|
|
540
|
+
declare function StepperNav({ steps, currentStep, className }: StepperNavProps): react_jsx_runtime.JSX.Element;
|
|
541
|
+
|
|
542
|
+
type ViewMode$1 = "grid" | "list";
|
|
543
|
+
interface ViewToggleLabels {
|
|
544
|
+
grid: string;
|
|
545
|
+
list: string;
|
|
546
|
+
toolbar?: string;
|
|
547
|
+
}
|
|
548
|
+
interface ViewToggleProps {
|
|
549
|
+
value: ViewMode$1;
|
|
550
|
+
onChange: (mode: ViewMode$1) => void;
|
|
551
|
+
labels?: ViewToggleLabels;
|
|
552
|
+
className?: string;
|
|
553
|
+
}
|
|
554
|
+
declare function ViewToggle({ value, onChange, labels, className, }: ViewToggleProps): react_jsx_runtime.JSX.Element;
|
|
555
|
+
|
|
556
|
+
interface RatingDisplayProps {
|
|
557
|
+
rating: number;
|
|
558
|
+
maxRating?: number;
|
|
559
|
+
size?: "sm" | "md" | "lg";
|
|
560
|
+
showValue?: boolean;
|
|
561
|
+
className?: string;
|
|
562
|
+
}
|
|
563
|
+
declare function RatingDisplay({ rating, maxRating, size, showValue, className, }: RatingDisplayProps): react_jsx_runtime.JSX.Element;
|
|
564
|
+
|
|
565
|
+
interface PriceDisplayProps {
|
|
566
|
+
amount: number;
|
|
567
|
+
currency?: string;
|
|
568
|
+
originalAmount?: number;
|
|
569
|
+
variant?: "compact" | "detail";
|
|
570
|
+
className?: string;
|
|
571
|
+
}
|
|
572
|
+
declare function PriceDisplay({ amount, currency, originalAmount, variant, className, }: PriceDisplayProps): react_jsx_runtime.JSX.Element;
|
|
573
|
+
|
|
574
|
+
interface StatItem {
|
|
575
|
+
label: string;
|
|
576
|
+
value: number | string;
|
|
577
|
+
icon?: React.ReactNode;
|
|
578
|
+
colorClass?: string;
|
|
579
|
+
}
|
|
580
|
+
interface StatsGridProps {
|
|
581
|
+
stats: StatItem[];
|
|
582
|
+
columns?: 2 | 3 | 4;
|
|
583
|
+
className?: string;
|
|
584
|
+
}
|
|
585
|
+
declare function StatsGrid({ stats, columns, className }: StatsGridProps): react_jsx_runtime.JSX.Element;
|
|
586
|
+
|
|
587
|
+
interface SummaryLine {
|
|
588
|
+
label: string;
|
|
589
|
+
value: string;
|
|
590
|
+
muted?: boolean;
|
|
591
|
+
}
|
|
592
|
+
interface SummaryCardProps {
|
|
593
|
+
lines: SummaryLine[];
|
|
594
|
+
total: {
|
|
595
|
+
label: string;
|
|
596
|
+
value: string;
|
|
597
|
+
};
|
|
598
|
+
action?: React.ReactNode;
|
|
599
|
+
className?: string;
|
|
600
|
+
}
|
|
601
|
+
declare function SummaryCard({ lines, total, action, className, }: SummaryCardProps): react_jsx_runtime.JSX.Element;
|
|
602
|
+
|
|
603
|
+
interface CountdownDisplayProps {
|
|
604
|
+
targetDate: Date;
|
|
605
|
+
format?: "dhms" | "hms" | "auto";
|
|
606
|
+
expiredLabel?: string;
|
|
607
|
+
className?: string;
|
|
608
|
+
}
|
|
609
|
+
declare function CountdownDisplay({ targetDate, format, expiredLabel, className, }: CountdownDisplayProps): react_jsx_runtime.JSX.Element;
|
|
610
|
+
|
|
611
|
+
interface ItemRowProps {
|
|
612
|
+
thumbnail?: React.ReactNode;
|
|
613
|
+
title: string;
|
|
614
|
+
subtitle?: string;
|
|
615
|
+
rightSlot?: React.ReactNode;
|
|
616
|
+
actions?: React.ReactNode;
|
|
617
|
+
className?: string;
|
|
618
|
+
}
|
|
619
|
+
declare function ItemRow({ thumbnail, title, subtitle, rightSlot, actions, className, }: ItemRowProps): react_jsx_runtime.JSX.Element;
|
|
519
620
|
|
|
520
621
|
/**
|
|
521
622
|
* Layout Primitives — Container, Stack, Row, Grid
|
|
@@ -642,7 +743,7 @@ type JustifyContent = keyof typeof JUSTIFY_MAP;
|
|
|
642
743
|
* <Container size="full" as="main">...</Container>
|
|
643
744
|
* ```
|
|
644
745
|
*/
|
|
645
|
-
interface ContainerProps extends React.HTMLAttributes<HTMLElement> {
|
|
746
|
+
interface ContainerProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
646
747
|
/**
|
|
647
748
|
* Max-width breakpoint preset.
|
|
648
749
|
* - `sm` → `max-w-3xl` (blog / policy)
|
|
@@ -655,8 +756,8 @@ interface ContainerProps extends React.HTMLAttributes<HTMLElement> {
|
|
|
655
756
|
*/
|
|
656
757
|
size?: ContainerSize;
|
|
657
758
|
/** Render as a different element (e.g. `"main"`, `"section"`). Defaults to `"div"`. */
|
|
658
|
-
as?: React.ElementType;
|
|
659
|
-
children?: React.ReactNode;
|
|
759
|
+
as?: React$1.ElementType;
|
|
760
|
+
children?: React$1.ReactNode;
|
|
660
761
|
}
|
|
661
762
|
declare function Container({ size, as, className, children, ...props }: ContainerProps): react_jsx_runtime.JSX.Element;
|
|
662
763
|
/**
|
|
@@ -675,14 +776,14 @@ declare function Container({ size, as, className, children, ...props }: Containe
|
|
|
675
776
|
* </Stack>
|
|
676
777
|
* ```
|
|
677
778
|
*/
|
|
678
|
-
interface StackProps extends React.HTMLAttributes<HTMLElement> {
|
|
779
|
+
interface StackProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
679
780
|
/** Space between children. Defaults to `"md"` (`gap-4`). */
|
|
680
781
|
gap?: GapKey;
|
|
681
782
|
/** Cross-axis (horizontal) alignment. Defaults to `"stretch"`. */
|
|
682
783
|
align?: Extract<ItemsAlign, "start" | "center" | "end" | "stretch">;
|
|
683
784
|
/** Render as a different element. Defaults to `"div"`. */
|
|
684
|
-
as?: React.ElementType;
|
|
685
|
-
children?: React.ReactNode;
|
|
785
|
+
as?: React$1.ElementType;
|
|
786
|
+
children?: React$1.ReactNode;
|
|
686
787
|
}
|
|
687
788
|
declare function Stack({ gap, align, as, className, children, ...props }: StackProps): react_jsx_runtime.JSX.Element;
|
|
688
789
|
/**
|
|
@@ -701,7 +802,7 @@ declare function Stack({ gap, align, as, className, children, ...props }: StackP
|
|
|
701
802
|
* </Row>
|
|
702
803
|
* ```
|
|
703
804
|
*/
|
|
704
|
-
interface RowProps extends React.HTMLAttributes<HTMLElement> {
|
|
805
|
+
interface RowProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
705
806
|
/** Space between children. Defaults to `"md"` (`gap-4`). */
|
|
706
807
|
gap?: GapKey;
|
|
707
808
|
/** Cross-axis (vertical) alignment. Defaults to `"center"`. */
|
|
@@ -711,8 +812,8 @@ interface RowProps extends React.HTMLAttributes<HTMLElement> {
|
|
|
711
812
|
/** Allow children to wrap onto multiple lines. */
|
|
712
813
|
wrap?: boolean;
|
|
713
814
|
/** Render as a different element. Defaults to `"div"`. */
|
|
714
|
-
as?: React.ElementType;
|
|
715
|
-
children?: React.ReactNode;
|
|
815
|
+
as?: React$1.ElementType;
|
|
816
|
+
children?: React$1.ReactNode;
|
|
716
817
|
}
|
|
717
818
|
declare function Row({ gap, align, justify, wrap, as, className, children, ...props }: RowProps): react_jsx_runtime.JSX.Element;
|
|
718
819
|
/**
|
|
@@ -731,7 +832,7 @@ declare function Row({ gap, align, justify, wrap, as, className, children, ...pr
|
|
|
731
832
|
* </Grid>
|
|
732
833
|
* ```
|
|
733
834
|
*/
|
|
734
|
-
interface GridProps extends React.HTMLAttributes<HTMLElement> {
|
|
835
|
+
interface GridProps extends React$1.HTMLAttributes<HTMLElement> {
|
|
735
836
|
/**
|
|
736
837
|
* Column preset.
|
|
737
838
|
* - Numbers `1`–`6` → mobile-first responsive stacks
|
|
@@ -747,8 +848,8 @@ interface GridProps extends React.HTMLAttributes<HTMLElement> {
|
|
|
747
848
|
/** Space between grid cells. Defaults to `"md"` (`gap-4`). */
|
|
748
849
|
gap?: GapKey;
|
|
749
850
|
/** Render as a different element. Defaults to `"div"`. */
|
|
750
|
-
as?: React.ElementType;
|
|
751
|
-
children?: React.ReactNode;
|
|
851
|
+
as?: React$1.ElementType;
|
|
852
|
+
children?: React$1.ReactNode;
|
|
752
853
|
}
|
|
753
854
|
declare function Grid({ cols, gap, as, className, children, ...props }: GridProps): react_jsx_runtime.JSX.Element;
|
|
754
855
|
|
|
@@ -826,4 +927,43 @@ interface DataTableProps<T> {
|
|
|
826
927
|
}
|
|
827
928
|
declare function DataTable<T extends Record<string, any>>({ data, columns, keyExtractor, onRowClick, loading, emptyMessage, actions, mobileCardRender, emptyState, emptyIcon, emptyTitle, tableConfig, paginationConfig, externalPagination, pageSize: pageSizeProp, stickyHeader: stickyHeaderProp, striped: stripedProp, showViewToggle: showViewToggleProp, showTableView, viewMode: controlledViewMode, defaultViewMode: defaultViewModeProp, onViewModeChange, selectable: selectableProp, selectedIds, onSelectionChange, gridCols, labels, }: DataTableProps<T>): react_jsx_runtime.JSX.Element;
|
|
828
929
|
|
|
829
|
-
|
|
930
|
+
/**
|
|
931
|
+
* Animation Helpers
|
|
932
|
+
*
|
|
933
|
+
* Easing functions for animations and transitions.
|
|
934
|
+
*/
|
|
935
|
+
declare const easings: {
|
|
936
|
+
linear: (t: number) => number;
|
|
937
|
+
easeInQuad: (t: number) => number;
|
|
938
|
+
easeOutQuad: (t: number) => number;
|
|
939
|
+
easeInOutQuad: (t: number) => number;
|
|
940
|
+
easeInCubic: (t: number) => number;
|
|
941
|
+
easeOutCubic: (t: number) => number;
|
|
942
|
+
easeInOutCubic: (t: number) => number;
|
|
943
|
+
easeInQuart: (t: number) => number;
|
|
944
|
+
easeOutQuart: (t: number) => number;
|
|
945
|
+
easeInOutQuart: (t: number) => number;
|
|
946
|
+
};
|
|
947
|
+
|
|
948
|
+
/**
|
|
949
|
+
* Color Helpers
|
|
950
|
+
*
|
|
951
|
+
* UI helpers for color manipulation and utilities.
|
|
952
|
+
*/
|
|
953
|
+
declare function hexToRgb(hex: string): {
|
|
954
|
+
r: number;
|
|
955
|
+
g: number;
|
|
956
|
+
b: number;
|
|
957
|
+
} | null;
|
|
958
|
+
declare function rgbToHex(r: number, g: number, b: number): string;
|
|
959
|
+
declare function getContrastColor(hex: string): "#000000" | "#ffffff";
|
|
960
|
+
|
|
961
|
+
/**
|
|
962
|
+
* Style Helpers
|
|
963
|
+
*
|
|
964
|
+
* UI helpers for dynamic styling and CSS class management.
|
|
965
|
+
*/
|
|
966
|
+
declare function classNames(...classes: (string | boolean | undefined | null)[]): string;
|
|
967
|
+
declare function mergeTailwindClasses(...classes: (string | undefined | null)[]): string;
|
|
968
|
+
|
|
969
|
+
export { Alert, type AlertProps, Article, type ArticleProps, Aside, type AsideProps, Badge, type BadgeProps, type BadgeVariant, BlockFooter, type BlockFooterProps, BlockHeader, type BlockHeaderProps, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, Button, type ButtonProps, Caption, Container, type ContainerProps, type ContainerSize, CountdownDisplay, type CountdownDisplayProps, DataTable, type DataTableColumn, type DataTableProps, Divider, type DividerProps, Drawer, type DrawerProps, GRID_MAP, type GapKey, type GenericStatus, Grid, type GridCols, type GridProps, Heading, ImageLightbox, type ImageLightboxProps, IndeterminateProgress, type IndeterminateProgressProps, ItemRow, type ItemRowProps, Label, Li, type LiProps, type LightboxImage, Main, type MainProps, Modal, type ModalProps, Nav, type NavProps, Ol, type OlProps, type OrderStatus, Pagination, type PaginationProps, type PaymentStatus, PriceDisplay, type PriceDisplayProps, Progress, type ProgressProps, RatingDisplay, type RatingDisplayProps, type ReviewStatus, Row, type RowProps, Section, type SectionProps, Select, type SelectOption, type SelectProps, Skeleton, type SkeletonProps, Span, Spinner, type SpinnerProps, Stack, type StackProps, StarRating, type StarRatingProps, type StatItem, StatsGrid, type StatsGridProps, StatusBadge, type StatusBadgeProps, type StatusBadgeStatus, StepperNav, type StepperNavProps, type StepperNavStep, SummaryCard, type SummaryCardProps, type SummaryLine, TagInput, type TagInputProps, Text, type TicketStatus, Ul, type UlProps, type ViewMode$1 as ViewMode, ViewToggle, type ViewToggleLabels, type ViewToggleProps, classNames, easings, getContrastColor, hexToRgb, mergeTailwindClasses, rgbToHex };
|