@refraction-ui/react 0.4.2 → 0.5.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/README.md +9 -1
- package/dist/chunk-ZWRGVWUY.js +120 -0
- package/dist/chunk-ZWRGVWUY.js.map +1 -0
- package/dist/form.cjs +315 -0
- package/dist/form.cjs.map +1 -0
- package/dist/form.d.cts +1 -0
- package/dist/form.d.ts +1 -0
- package/dist/form.js +196 -0
- package/dist/form.js.map +1 -0
- package/dist/index.cjs +0 -226
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +74 -76
- package/dist/index.d.ts +74 -76
- package/dist/index.js +2 -302
- package/dist/index.js.map +1 -1
- package/dist/internal/animated-text/index.d.cts +47 -0
- package/dist/internal/animated-text/index.d.ts +47 -0
- package/dist/internal/app-shell/index.d.cts +128 -0
- package/dist/internal/app-shell/index.d.ts +128 -0
- package/dist/internal/auth/index.d.cts +74 -0
- package/dist/internal/auth/index.d.ts +74 -0
- package/dist/internal/avatar/index.d.cts +53 -0
- package/dist/internal/avatar/index.d.ts +53 -0
- package/dist/internal/avatar-group/index.d.cts +70 -0
- package/dist/internal/avatar-group/index.d.ts +70 -0
- package/dist/internal/badge/index.d.cts +26 -0
- package/dist/internal/badge/index.d.ts +26 -0
- package/dist/internal/bottom-nav/index.d.cts +29 -0
- package/dist/internal/bottom-nav/index.d.ts +29 -0
- package/dist/internal/breadcrumbs/index.d.cts +38 -0
- package/dist/internal/breadcrumbs/index.d.ts +38 -0
- package/dist/internal/button/index.d.cts +34 -0
- package/dist/internal/button/index.d.ts +34 -0
- package/dist/internal/calendar/index.d.cts +73 -0
- package/dist/internal/calendar/index.d.ts +73 -0
- package/dist/internal/card/index.d.cts +62 -0
- package/dist/internal/card/index.d.ts +62 -0
- package/dist/internal/card-grid/index.d.cts +10 -0
- package/dist/internal/card-grid/index.d.ts +10 -0
- package/dist/internal/checkbox/index.d.cts +40 -0
- package/dist/internal/checkbox/index.d.ts +40 -0
- package/dist/internal/code-editor/index.d.cts +47 -0
- package/dist/internal/code-editor/index.d.ts +47 -0
- package/dist/internal/collapsible/index.d.cts +43 -0
- package/dist/internal/collapsible/index.d.ts +43 -0
- package/dist/internal/command/index.d.cts +80 -0
- package/dist/internal/command/index.d.ts +80 -0
- package/dist/internal/content-protection/index.d.cts +47 -0
- package/dist/internal/content-protection/index.d.ts +47 -0
- package/dist/internal/data-table/index.d.cts +73 -0
- package/dist/internal/data-table/index.d.ts +73 -0
- package/dist/internal/date-picker/index.d.cts +98 -0
- package/dist/internal/date-picker/index.d.ts +98 -0
- package/dist/internal/device-frame/index.d.cts +40 -0
- package/dist/internal/device-frame/index.d.ts +40 -0
- package/dist/internal/dialog/index.d.cts +54 -0
- package/dist/internal/dialog/index.d.ts +54 -0
- package/dist/internal/dropdown-menu/index.d.cts +55 -0
- package/dist/internal/dropdown-menu/index.d.ts +55 -0
- package/dist/internal/emoji-picker/index.d.cts +77 -0
- package/dist/internal/emoji-picker/index.d.ts +77 -0
- package/dist/internal/feedback-dialog/index.d.cts +55 -0
- package/dist/internal/feedback-dialog/index.d.ts +55 -0
- package/dist/internal/file-upload/index.d.cts +91 -0
- package/dist/internal/file-upload/index.d.ts +91 -0
- package/dist/internal/footer/index.d.cts +30 -0
- package/dist/internal/footer/index.d.ts +30 -0
- package/dist/internal/inline-editor/index.d.cts +52 -0
- package/dist/internal/inline-editor/index.d.ts +52 -0
- package/dist/internal/input/index.d.cts +38 -0
- package/dist/internal/input/index.d.ts +38 -0
- package/dist/internal/input-group/index.d.cts +35 -0
- package/dist/internal/input-group/index.d.ts +35 -0
- package/dist/internal/install-prompt/index.d.cts +36 -0
- package/dist/internal/install-prompt/index.d.ts +36 -0
- package/dist/internal/keyboard-shortcut/index.d.cts +49 -0
- package/dist/internal/keyboard-shortcut/index.d.ts +49 -0
- package/dist/internal/language-selector/index.d.cts +63 -0
- package/dist/internal/language-selector/index.d.ts +63 -0
- package/dist/internal/markdown-renderer/index.d.cts +40 -0
- package/dist/internal/markdown-renderer/index.d.ts +40 -0
- package/dist/internal/mobile-nav/index.d.cts +45 -0
- package/dist/internal/mobile-nav/index.d.ts +45 -0
- package/dist/internal/navbar/index.d.cts +30 -0
- package/dist/internal/navbar/index.d.ts +30 -0
- package/dist/internal/otp-input/index.d.cts +66 -0
- package/dist/internal/otp-input/index.d.ts +66 -0
- package/dist/internal/payment/index.d.cts +9 -0
- package/dist/internal/payment/index.d.ts +9 -0
- package/dist/internal/popover/index.d.cts +46 -0
- package/dist/internal/popover/index.d.ts +46 -0
- package/dist/internal/presence-indicator/index.d.cts +38 -0
- package/dist/internal/presence-indicator/index.d.ts +38 -0
- package/dist/internal/progress-display/index.d.cts +60 -0
- package/dist/internal/progress-display/index.d.ts +60 -0
- package/dist/internal/radio/index.d.ts +43 -0
- package/dist/internal/react-accordion/index.d.ts +22 -0
- package/dist/internal/react-animated-text/index.d.cts +12 -0
- package/dist/internal/react-animated-text/index.d.ts +12 -0
- package/dist/internal/react-app-shell/index.d.cts +169 -0
- package/dist/internal/react-app-shell/index.d.ts +169 -0
- package/dist/internal/react-auth/index.d.cts +59 -0
- package/dist/internal/react-auth/index.d.ts +59 -0
- package/dist/internal/react-avatar/index.d.cts +20 -0
- package/dist/internal/react-avatar/index.d.ts +20 -0
- package/dist/internal/react-avatar-group/index.d.cts +33 -0
- package/dist/internal/react-avatar-group/index.d.ts +33 -0
- package/dist/internal/react-badge/index.d.cts +17 -0
- package/dist/internal/react-badge/index.d.ts +17 -0
- package/dist/internal/react-bottom-nav/index.d.cts +19 -0
- package/dist/internal/react-bottom-nav/index.d.ts +19 -0
- package/dist/internal/react-breadcrumbs/index.d.cts +24 -0
- package/dist/internal/react-breadcrumbs/index.d.ts +24 -0
- package/dist/internal/react-button/index.d.cts +21 -0
- package/dist/internal/react-button/index.d.ts +21 -0
- package/dist/internal/react-calendar/index.d.cts +44 -0
- package/dist/internal/react-calendar/index.d.ts +44 -0
- package/dist/internal/react-callout/index.d.cts +12 -0
- package/dist/internal/react-callout/index.d.ts +12 -0
- package/dist/internal/react-card/index.d.cts +29 -0
- package/dist/internal/react-card/index.d.ts +29 -0
- package/dist/internal/react-card-grid/index.d.cts +8 -0
- package/dist/internal/react-card-grid/index.d.ts +8 -0
- package/dist/internal/react-carousel/index.d.ts +22 -0
- package/dist/internal/react-checkbox/index.d.cts +18 -0
- package/dist/internal/react-checkbox/index.d.ts +18 -0
- package/dist/internal/react-code-block/index.d.cts +7 -0
- package/dist/internal/react-code-block/index.d.ts +7 -0
- package/dist/internal/react-code-editor/index.d.cts +28 -0
- package/dist/internal/react-code-editor/index.d.ts +28 -0
- package/dist/internal/react-collapsible/index.d.cts +29 -0
- package/dist/internal/react-collapsible/index.d.ts +29 -0
- package/dist/internal/react-combobox/index.d.cts +94 -0
- package/dist/internal/react-combobox/index.d.ts +94 -0
- package/dist/internal/react-command/index.d.cts +51 -0
- package/dist/internal/react-command/index.d.ts +51 -0
- package/dist/internal/react-content-protection/index.d.cts +22 -0
- package/dist/internal/react-content-protection/index.d.ts +22 -0
- package/dist/internal/react-data-table/index.d.cts +22 -0
- package/dist/internal/react-data-table/index.d.ts +22 -0
- package/dist/internal/react-date-picker/index.d.cts +23 -0
- package/dist/internal/react-date-picker/index.d.ts +23 -0
- package/dist/internal/react-device-frame/index.d.cts +37 -0
- package/dist/internal/react-device-frame/index.d.ts +37 -0
- package/dist/internal/react-dialog/index.d.cts +49 -0
- package/dist/internal/react-dialog/index.d.ts +49 -0
- package/dist/internal/react-dropdown-menu/index.d.cts +37 -0
- package/dist/internal/react-dropdown-menu/index.d.ts +37 -0
- package/dist/internal/react-emoji-picker/index.d.cts +32 -0
- package/dist/internal/react-emoji-picker/index.d.ts +32 -0
- package/dist/internal/react-feedback-dialog/index.d.cts +40 -0
- package/dist/internal/react-feedback-dialog/index.d.ts +40 -0
- package/dist/internal/react-file-tree/index.d.cts +5 -0
- package/dist/internal/react-file-tree/index.d.ts +5 -0
- package/dist/internal/react-file-upload/index.d.cts +22 -0
- package/dist/internal/react-file-upload/index.d.ts +22 -0
- package/dist/internal/react-footer/index.d.cts +20 -0
- package/dist/internal/react-footer/index.d.ts +20 -0
- package/dist/internal/react-form/index.d.cts +85 -0
- package/dist/internal/react-form/index.d.ts +85 -0
- package/dist/internal/react-icon-system/index.d.cts +5 -0
- package/dist/internal/react-icon-system/index.d.ts +5 -0
- package/dist/internal/react-inline-editor/index.d.cts +17 -0
- package/dist/internal/react-inline-editor/index.d.ts +17 -0
- package/dist/internal/react-input/index.d.cts +31 -0
- package/dist/internal/react-input/index.d.ts +31 -0
- package/dist/internal/react-input-group/index.d.cts +34 -0
- package/dist/internal/react-input-group/index.d.ts +34 -0
- package/dist/internal/react-install-prompt/index.d.cts +24 -0
- package/dist/internal/react-install-prompt/index.d.ts +24 -0
- package/dist/internal/react-keyboard-shortcut/index.d.cts +57 -0
- package/dist/internal/react-keyboard-shortcut/index.d.ts +57 -0
- package/dist/internal/react-language-selector/index.d.cts +26 -0
- package/dist/internal/react-language-selector/index.d.ts +26 -0
- package/dist/internal/react-link-card/index.d.cts +5 -0
- package/dist/internal/react-link-card/index.d.ts +5 -0
- package/dist/internal/react-markdown-renderer/index.d.cts +20 -0
- package/dist/internal/react-markdown-renderer/index.d.ts +20 -0
- package/dist/internal/react-mobile-nav/index.d.cts +33 -0
- package/dist/internal/react-mobile-nav/index.d.ts +33 -0
- package/dist/internal/react-navbar/index.d.cts +25 -0
- package/dist/internal/react-navbar/index.d.ts +25 -0
- package/dist/internal/react-otp-input/index.d.cts +21 -0
- package/dist/internal/react-otp-input/index.d.ts +21 -0
- package/dist/internal/react-pagination/index.d.ts +7 -0
- package/dist/internal/react-payment/index.d.cts +9 -0
- package/dist/internal/react-payment/index.d.ts +9 -0
- package/dist/internal/react-popover/index.d.cts +33 -0
- package/dist/internal/react-popover/index.d.ts +33 -0
- package/dist/internal/react-presence-indicator/index.d.cts +34 -0
- package/dist/internal/react-presence-indicator/index.d.ts +34 -0
- package/dist/internal/react-progress-display/index.d.cts +21 -0
- package/dist/internal/react-progress-display/index.d.ts +21 -0
- package/dist/internal/react-radio/index.d.ts +33 -0
- package/dist/internal/react-reaction-bar/index.d.cts +34 -0
- package/dist/internal/react-reaction-bar/index.d.ts +34 -0
- package/dist/internal/react-resizable-layout/index.d.cts +36 -0
- package/dist/internal/react-resizable-layout/index.d.ts +36 -0
- package/dist/internal/react-rich-editor/index.d.cts +2 -0
- package/dist/internal/react-rich-editor/index.d.ts +2 -0
- package/dist/internal/react-search-bar/index.d.cts +32 -0
- package/dist/internal/react-search-bar/index.d.ts +32 -0
- package/dist/internal/react-select/index.d.cts +30 -0
- package/dist/internal/react-select/index.d.ts +30 -0
- package/dist/internal/react-sheet/index.d.cts +67 -0
- package/dist/internal/react-sheet/index.d.ts +67 -0
- package/dist/internal/react-sidebar/index.d.cts +23 -0
- package/dist/internal/react-sidebar/index.d.ts +23 -0
- package/dist/internal/react-skeleton/index.d.cts +31 -0
- package/dist/internal/react-skeleton/index.d.ts +31 -0
- package/dist/internal/react-skip-to-content/index.d.cts +9 -0
- package/dist/internal/react-skip-to-content/index.d.ts +9 -0
- package/dist/internal/react-slide-viewer/index.d.cts +23 -0
- package/dist/internal/react-slide-viewer/index.d.ts +23 -0
- package/dist/internal/react-slider/index.d.cts +1 -0
- package/dist/internal/react-slider/index.d.ts +1 -0
- package/dist/internal/react-status-indicator/index.d.cts +34 -0
- package/dist/internal/react-status-indicator/index.d.ts +34 -0
- package/dist/internal/react-steps/index.d.cts +19 -0
- package/dist/internal/react-steps/index.d.ts +19 -0
- package/dist/internal/react-switch/index.d.cts +17 -0
- package/dist/internal/react-switch/index.d.ts +17 -0
- package/dist/internal/react-table-of-contents/index.d.ts +10 -0
- package/dist/internal/react-tabs/index.d.cts +31 -0
- package/dist/internal/react-tabs/index.d.ts +31 -0
- package/dist/internal/react-textarea/index.d.cts +16 -0
- package/dist/internal/react-textarea/index.d.ts +16 -0
- package/dist/internal/react-theme/index.d.cts +44 -0
- package/dist/internal/react-theme/index.d.ts +44 -0
- package/dist/internal/react-thread-view/index.d.cts +34 -0
- package/dist/internal/react-thread-view/index.d.ts +34 -0
- package/dist/internal/react-toast/index.d.cts +36 -0
- package/dist/internal/react-toast/index.d.ts +36 -0
- package/dist/internal/react-tooltip/index.d.cts +33 -0
- package/dist/internal/react-tooltip/index.d.ts +33 -0
- package/dist/internal/react-version-selector/index.d.cts +24 -0
- package/dist/internal/react-version-selector/index.d.ts +24 -0
- package/dist/internal/react-video-player/index.d.cts +9 -0
- package/dist/internal/react-video-player/index.d.ts +9 -0
- package/dist/internal/react-voice-pill/index.d.cts +10 -0
- package/dist/internal/react-voice-pill/index.d.ts +10 -0
- package/dist/internal/react-waveform/index.d.cts +9 -0
- package/dist/internal/react-waveform/index.d.ts +9 -0
- package/dist/internal/reaction-bar/index.d.cts +50 -0
- package/dist/internal/reaction-bar/index.d.ts +50 -0
- package/dist/internal/resizable-layout/index.d.cts +47 -0
- package/dist/internal/resizable-layout/index.d.ts +47 -0
- package/dist/internal/search-bar/index.d.cts +51 -0
- package/dist/internal/search-bar/index.d.ts +51 -0
- package/dist/internal/select/index.d.cts +69 -0
- package/dist/internal/select/index.d.ts +69 -0
- package/dist/internal/shared/index.d.cts +249 -0
- package/dist/internal/shared/index.d.ts +249 -0
- package/dist/internal/sidebar/index.d.cts +40 -0
- package/dist/internal/sidebar/index.d.ts +40 -0
- package/dist/internal/skeleton/index.d.cts +27 -0
- package/dist/internal/skeleton/index.d.ts +27 -0
- package/dist/internal/slide-viewer/index.d.cts +72 -0
- package/dist/internal/slide-viewer/index.d.ts +72 -0
- package/dist/internal/slider/index.d.cts +4 -0
- package/dist/internal/slider/index.d.ts +4 -0
- package/dist/internal/status-indicator/index.d.cts +42 -0
- package/dist/internal/status-indicator/index.d.ts +42 -0
- package/dist/internal/switch/index.d.cts +41 -0
- package/dist/internal/switch/index.d.ts +41 -0
- package/dist/internal/tabs/index.d.cts +45 -0
- package/dist/internal/tabs/index.d.ts +45 -0
- package/dist/internal/textarea/index.d.cts +28 -0
- package/dist/internal/textarea/index.d.ts +28 -0
- package/dist/internal/theme/index.d.cts +60 -0
- package/dist/internal/theme/index.d.ts +60 -0
- package/dist/internal/thread-view/index.d.cts +95 -0
- package/dist/internal/thread-view/index.d.ts +95 -0
- package/dist/internal/toast/index.d.cts +64 -0
- package/dist/internal/toast/index.d.ts +64 -0
- package/dist/internal/tooltip/index.d.cts +45 -0
- package/dist/internal/tooltip/index.d.ts +45 -0
- package/dist/internal/version-selector/index.d.cts +68 -0
- package/dist/internal/version-selector/index.d.ts +68 -0
- package/dist/internal/video-player/index.d.cts +50 -0
- package/dist/internal/video-player/index.d.ts +50 -0
- package/dist/internal/voice-pill/index.d.cts +86 -0
- package/dist/internal/voice-pill/index.d.ts +86 -0
- package/dist/internal/waveform/index.d.cts +83 -0
- package/dist/internal/waveform/index.d.ts +83 -0
- package/dist/theme.d.cts +1 -1
- package/dist/theme.d.ts +1 -1
- package/package.json +7 -6
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
4
|
+
type PresenceStatus = 'online' | 'offline' | 'away' | 'busy' | 'dnd';
|
|
5
|
+
interface AvatarUser {
|
|
6
|
+
/** Unique identifier */
|
|
7
|
+
id: string;
|
|
8
|
+
/** Display name */
|
|
9
|
+
name: string;
|
|
10
|
+
/** Avatar image URL */
|
|
11
|
+
src?: string;
|
|
12
|
+
/** Online presence status */
|
|
13
|
+
status?: PresenceStatus;
|
|
14
|
+
}
|
|
15
|
+
interface AvatarGroupProps {
|
|
16
|
+
/** Array of users to display */
|
|
17
|
+
users: AvatarUser[];
|
|
18
|
+
/** Maximum number of visible avatars */
|
|
19
|
+
max?: number;
|
|
20
|
+
/** Avatar size */
|
|
21
|
+
size?: AvatarSize;
|
|
22
|
+
}
|
|
23
|
+
interface AvatarGroupAPI {
|
|
24
|
+
/** Users that are visible (within max limit) */
|
|
25
|
+
visibleUsers: AvatarUser[];
|
|
26
|
+
/** Number of overflow users */
|
|
27
|
+
overflowCount: number;
|
|
28
|
+
/** All overflow users (for tooltip/popup) */
|
|
29
|
+
overflowUsers: AvatarUser[];
|
|
30
|
+
/** ARIA props for the group container */
|
|
31
|
+
ariaProps: Partial<AccessibilityProps> & Record<string, unknown>;
|
|
32
|
+
/** Get ARIA props for an individual avatar */
|
|
33
|
+
getAvatarAriaProps(user: AvatarUser): Record<string, unknown>;
|
|
34
|
+
/** Get initials from a user's name */
|
|
35
|
+
getInitials(name: string): string;
|
|
36
|
+
/** Get the overflow badge ARIA props */
|
|
37
|
+
overflowBadgeProps: Record<string, unknown>;
|
|
38
|
+
/** Generated IDs */
|
|
39
|
+
ids: {
|
|
40
|
+
group: string;
|
|
41
|
+
label: string;
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
declare const AVATAR_SIZES: Record<AvatarSize, {
|
|
45
|
+
width: number;
|
|
46
|
+
fontSize: number;
|
|
47
|
+
}>;
|
|
48
|
+
declare function getInitials(name: string): string;
|
|
49
|
+
declare function createAvatarGroup(props: AvatarGroupProps): AvatarGroupAPI;
|
|
50
|
+
|
|
51
|
+
declare const avatarGroupStyles = "flex items-center -space-x-2";
|
|
52
|
+
declare const avatarVariants: (props?: ({
|
|
53
|
+
size?: "xs" | "sm" | "md" | "lg" | "xl" | undefined;
|
|
54
|
+
} & {
|
|
55
|
+
className?: string;
|
|
56
|
+
}) | undefined) => string;
|
|
57
|
+
declare const avatarOverflowBadgeVariants: (props?: ({
|
|
58
|
+
size?: "xs" | "sm" | "md" | "lg" | "xl" | undefined;
|
|
59
|
+
} & {
|
|
60
|
+
className?: string;
|
|
61
|
+
}) | undefined) => string;
|
|
62
|
+
declare const avatarImageStyles = "h-full w-full object-cover";
|
|
63
|
+
declare const avatarPresenceDotVariants: (props?: ({
|
|
64
|
+
size?: "xs" | "sm" | "md" | "lg" | "xl" | undefined;
|
|
65
|
+
status?: "online" | "offline" | "away" | "busy" | "dnd" | undefined;
|
|
66
|
+
} & {
|
|
67
|
+
className?: string;
|
|
68
|
+
}) | undefined) => string;
|
|
69
|
+
|
|
70
|
+
export { AVATAR_SIZES, type AvatarGroupAPI, type AvatarGroupProps, type AvatarSize, type AvatarUser, type PresenceStatus, avatarGroupStyles, avatarImageStyles, avatarOverflowBadgeVariants, avatarPresenceDotVariants, avatarVariants, createAvatarGroup, getInitials };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
type BadgeVariant = 'default' | 'primary' | 'secondary' | 'destructive' | 'outline' | 'success' | 'warning';
|
|
4
|
+
type BadgeSize = 'sm' | 'md';
|
|
5
|
+
interface BadgeProps {
|
|
6
|
+
variant?: BadgeVariant;
|
|
7
|
+
size?: BadgeSize;
|
|
8
|
+
}
|
|
9
|
+
interface BadgeAPI {
|
|
10
|
+
/** ARIA attributes to spread on the element */
|
|
11
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
12
|
+
/** Data attributes for CSS styling hooks */
|
|
13
|
+
dataAttributes: Record<string, string>;
|
|
14
|
+
}
|
|
15
|
+
/** Get the icon name for a badge variant (undefined for non-status variants) */
|
|
16
|
+
declare function getBadgeIcon(variant: BadgeVariant): string | undefined;
|
|
17
|
+
declare function createBadge(props?: BadgeProps): BadgeAPI;
|
|
18
|
+
|
|
19
|
+
declare const badgeVariants: (props?: ({
|
|
20
|
+
variant?: "default" | "primary" | "secondary" | "destructive" | "outline" | "success" | "warning" | undefined;
|
|
21
|
+
size?: "sm" | "md" | undefined;
|
|
22
|
+
} & {
|
|
23
|
+
className?: string;
|
|
24
|
+
}) | undefined) => string;
|
|
25
|
+
|
|
26
|
+
export { type BadgeAPI, type BadgeProps, type BadgeSize, type BadgeVariant, badgeVariants, createBadge, getBadgeIcon };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
type BadgeVariant = 'default' | 'primary' | 'secondary' | 'destructive' | 'outline' | 'success' | 'warning';
|
|
4
|
+
type BadgeSize = 'sm' | 'md';
|
|
5
|
+
interface BadgeProps {
|
|
6
|
+
variant?: BadgeVariant;
|
|
7
|
+
size?: BadgeSize;
|
|
8
|
+
}
|
|
9
|
+
interface BadgeAPI {
|
|
10
|
+
/** ARIA attributes to spread on the element */
|
|
11
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
12
|
+
/** Data attributes for CSS styling hooks */
|
|
13
|
+
dataAttributes: Record<string, string>;
|
|
14
|
+
}
|
|
15
|
+
/** Get the icon name for a badge variant (undefined for non-status variants) */
|
|
16
|
+
declare function getBadgeIcon(variant: BadgeVariant): string | undefined;
|
|
17
|
+
declare function createBadge(props?: BadgeProps): BadgeAPI;
|
|
18
|
+
|
|
19
|
+
declare const badgeVariants: (props?: ({
|
|
20
|
+
variant?: "default" | "primary" | "secondary" | "destructive" | "outline" | "success" | "warning" | undefined;
|
|
21
|
+
size?: "sm" | "md" | undefined;
|
|
22
|
+
} & {
|
|
23
|
+
className?: string;
|
|
24
|
+
}) | undefined) => string;
|
|
25
|
+
|
|
26
|
+
export { type BadgeAPI, type BadgeProps, type BadgeSize, type BadgeVariant, badgeVariants, createBadge, getBadgeIcon };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
interface NavTab {
|
|
2
|
+
label: string;
|
|
3
|
+
href: string;
|
|
4
|
+
icon?: string;
|
|
5
|
+
activeIcon?: string;
|
|
6
|
+
}
|
|
7
|
+
interface BottomNavProps {
|
|
8
|
+
tabs?: NavTab[];
|
|
9
|
+
currentPath?: string;
|
|
10
|
+
}
|
|
11
|
+
interface BottomNavAPI {
|
|
12
|
+
ariaProps: Record<string, string>;
|
|
13
|
+
isActive: (href: string) => boolean;
|
|
14
|
+
tabAriaProps: (href: string) => Record<string, string>;
|
|
15
|
+
}
|
|
16
|
+
declare function createBottomNav(props?: BottomNavProps): BottomNavAPI;
|
|
17
|
+
|
|
18
|
+
declare const bottomNavVariants: (props?: ({
|
|
19
|
+
[x: string]: string | undefined;
|
|
20
|
+
} & {
|
|
21
|
+
className?: string;
|
|
22
|
+
}) | undefined) => string;
|
|
23
|
+
declare const bottomNavTabVariants: (props?: ({
|
|
24
|
+
active?: "true" | "false" | undefined;
|
|
25
|
+
} & {
|
|
26
|
+
className?: string;
|
|
27
|
+
}) | undefined) => string;
|
|
28
|
+
|
|
29
|
+
export { type BottomNavAPI, type BottomNavProps, type NavTab, bottomNavTabVariants, bottomNavVariants, createBottomNav };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
interface NavTab {
|
|
2
|
+
label: string;
|
|
3
|
+
href: string;
|
|
4
|
+
icon?: string;
|
|
5
|
+
activeIcon?: string;
|
|
6
|
+
}
|
|
7
|
+
interface BottomNavProps {
|
|
8
|
+
tabs?: NavTab[];
|
|
9
|
+
currentPath?: string;
|
|
10
|
+
}
|
|
11
|
+
interface BottomNavAPI {
|
|
12
|
+
ariaProps: Record<string, string>;
|
|
13
|
+
isActive: (href: string) => boolean;
|
|
14
|
+
tabAriaProps: (href: string) => Record<string, string>;
|
|
15
|
+
}
|
|
16
|
+
declare function createBottomNav(props?: BottomNavProps): BottomNavAPI;
|
|
17
|
+
|
|
18
|
+
declare const bottomNavVariants: (props?: ({
|
|
19
|
+
[x: string]: string | undefined;
|
|
20
|
+
} & {
|
|
21
|
+
className?: string;
|
|
22
|
+
}) | undefined) => string;
|
|
23
|
+
declare const bottomNavTabVariants: (props?: ({
|
|
24
|
+
active?: "true" | "false" | undefined;
|
|
25
|
+
} & {
|
|
26
|
+
className?: string;
|
|
27
|
+
}) | undefined) => string;
|
|
28
|
+
|
|
29
|
+
export { type BottomNavAPI, type BottomNavProps, type NavTab, bottomNavTabVariants, bottomNavVariants, createBottomNav };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
interface BreadcrumbItem {
|
|
2
|
+
label: string;
|
|
3
|
+
href?: string;
|
|
4
|
+
}
|
|
5
|
+
interface BreadcrumbsProps {
|
|
6
|
+
/** Current pathname to auto-generate from */
|
|
7
|
+
pathname?: string;
|
|
8
|
+
/** Manual items (overrides pathname) */
|
|
9
|
+
items?: BreadcrumbItem[];
|
|
10
|
+
/** Custom label map for pathname segments */
|
|
11
|
+
labels?: Record<string, string>;
|
|
12
|
+
/** Separator character */
|
|
13
|
+
separator?: string;
|
|
14
|
+
/** Max items to show before truncating */
|
|
15
|
+
maxItems?: number;
|
|
16
|
+
}
|
|
17
|
+
interface BreadcrumbsAPI {
|
|
18
|
+
items: BreadcrumbItem[];
|
|
19
|
+
ariaProps: Record<string, string>;
|
|
20
|
+
separator: string;
|
|
21
|
+
isLast: (index: number) => boolean;
|
|
22
|
+
itemAriaProps: (index: number) => Record<string, string>;
|
|
23
|
+
}
|
|
24
|
+
declare function createBreadcrumbs(props?: BreadcrumbsProps): BreadcrumbsAPI;
|
|
25
|
+
|
|
26
|
+
declare const breadcrumbsVariants: (props?: ({
|
|
27
|
+
[x: string]: string | undefined;
|
|
28
|
+
} & {
|
|
29
|
+
className?: string;
|
|
30
|
+
}) | undefined) => string;
|
|
31
|
+
declare const breadcrumbItemVariants: (props?: ({
|
|
32
|
+
active?: "true" | "false" | undefined;
|
|
33
|
+
} & {
|
|
34
|
+
className?: string;
|
|
35
|
+
}) | undefined) => string;
|
|
36
|
+
declare const breadcrumbSeparatorStyles = "text-muted-foreground/50 select-none";
|
|
37
|
+
|
|
38
|
+
export { type BreadcrumbItem, type BreadcrumbsAPI, type BreadcrumbsProps, breadcrumbItemVariants, breadcrumbSeparatorStyles, breadcrumbsVariants, createBreadcrumbs };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
interface BreadcrumbItem {
|
|
2
|
+
label: string;
|
|
3
|
+
href?: string;
|
|
4
|
+
}
|
|
5
|
+
interface BreadcrumbsProps {
|
|
6
|
+
/** Current pathname to auto-generate from */
|
|
7
|
+
pathname?: string;
|
|
8
|
+
/** Manual items (overrides pathname) */
|
|
9
|
+
items?: BreadcrumbItem[];
|
|
10
|
+
/** Custom label map for pathname segments */
|
|
11
|
+
labels?: Record<string, string>;
|
|
12
|
+
/** Separator character */
|
|
13
|
+
separator?: string;
|
|
14
|
+
/** Max items to show before truncating */
|
|
15
|
+
maxItems?: number;
|
|
16
|
+
}
|
|
17
|
+
interface BreadcrumbsAPI {
|
|
18
|
+
items: BreadcrumbItem[];
|
|
19
|
+
ariaProps: Record<string, string>;
|
|
20
|
+
separator: string;
|
|
21
|
+
isLast: (index: number) => boolean;
|
|
22
|
+
itemAriaProps: (index: number) => Record<string, string>;
|
|
23
|
+
}
|
|
24
|
+
declare function createBreadcrumbs(props?: BreadcrumbsProps): BreadcrumbsAPI;
|
|
25
|
+
|
|
26
|
+
declare const breadcrumbsVariants: (props?: ({
|
|
27
|
+
[x: string]: string | undefined;
|
|
28
|
+
} & {
|
|
29
|
+
className?: string;
|
|
30
|
+
}) | undefined) => string;
|
|
31
|
+
declare const breadcrumbItemVariants: (props?: ({
|
|
32
|
+
active?: "true" | "false" | undefined;
|
|
33
|
+
} & {
|
|
34
|
+
className?: string;
|
|
35
|
+
}) | undefined) => string;
|
|
36
|
+
declare const breadcrumbSeparatorStyles = "text-muted-foreground/50 select-none";
|
|
37
|
+
|
|
38
|
+
export { type BreadcrumbItem, type BreadcrumbsAPI, type BreadcrumbsProps, breadcrumbItemVariants, breadcrumbSeparatorStyles, breadcrumbsVariants, createBreadcrumbs };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { AccessibilityProps, KeyboardHandlerMap, TokenContract } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
type ButtonVariant = 'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link';
|
|
4
|
+
type ButtonSize = 'xs' | 'sm' | 'default' | 'lg' | 'icon';
|
|
5
|
+
interface ButtonProps {
|
|
6
|
+
variant?: ButtonVariant;
|
|
7
|
+
size?: ButtonSize;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
loading?: boolean;
|
|
10
|
+
asChild?: boolean;
|
|
11
|
+
type?: 'button' | 'submit' | 'reset';
|
|
12
|
+
}
|
|
13
|
+
interface ButtonAPI {
|
|
14
|
+
/** ARIA attributes to spread on the element */
|
|
15
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
16
|
+
/** Keyboard handlers to attach */
|
|
17
|
+
keyboardHandlers: KeyboardHandlerMap;
|
|
18
|
+
/** Whether interaction should be blocked */
|
|
19
|
+
isInteractive: boolean;
|
|
20
|
+
/** Data attributes for CSS styling hooks */
|
|
21
|
+
dataAttributes: Record<string, string>;
|
|
22
|
+
}
|
|
23
|
+
declare function createButton(props?: ButtonProps): ButtonAPI;
|
|
24
|
+
declare function getButtonType(props: ButtonProps): string;
|
|
25
|
+
|
|
26
|
+
declare const buttonTokens: TokenContract;
|
|
27
|
+
declare const buttonVariants: (props?: ({
|
|
28
|
+
variant?: "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | undefined;
|
|
29
|
+
size?: "default" | "xs" | "sm" | "lg" | "icon" | undefined;
|
|
30
|
+
} & {
|
|
31
|
+
className?: string;
|
|
32
|
+
}) | undefined) => string;
|
|
33
|
+
|
|
34
|
+
export { type ButtonAPI, type ButtonProps, type ButtonSize, type ButtonVariant, buttonTokens, buttonVariants, createButton, getButtonType };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { AccessibilityProps, KeyboardHandlerMap, TokenContract } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
type ButtonVariant = 'default' | 'destructive' | 'outline' | 'secondary' | 'ghost' | 'link';
|
|
4
|
+
type ButtonSize = 'xs' | 'sm' | 'default' | 'lg' | 'icon';
|
|
5
|
+
interface ButtonProps {
|
|
6
|
+
variant?: ButtonVariant;
|
|
7
|
+
size?: ButtonSize;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
loading?: boolean;
|
|
10
|
+
asChild?: boolean;
|
|
11
|
+
type?: 'button' | 'submit' | 'reset';
|
|
12
|
+
}
|
|
13
|
+
interface ButtonAPI {
|
|
14
|
+
/** ARIA attributes to spread on the element */
|
|
15
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
16
|
+
/** Keyboard handlers to attach */
|
|
17
|
+
keyboardHandlers: KeyboardHandlerMap;
|
|
18
|
+
/** Whether interaction should be blocked */
|
|
19
|
+
isInteractive: boolean;
|
|
20
|
+
/** Data attributes for CSS styling hooks */
|
|
21
|
+
dataAttributes: Record<string, string>;
|
|
22
|
+
}
|
|
23
|
+
declare function createButton(props?: ButtonProps): ButtonAPI;
|
|
24
|
+
declare function getButtonType(props: ButtonProps): string;
|
|
25
|
+
|
|
26
|
+
declare const buttonTokens: TokenContract;
|
|
27
|
+
declare const buttonVariants: (props?: ({
|
|
28
|
+
variant?: "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | undefined;
|
|
29
|
+
size?: "default" | "xs" | "sm" | "lg" | "icon" | undefined;
|
|
30
|
+
} & {
|
|
31
|
+
className?: string;
|
|
32
|
+
}) | undefined) => string;
|
|
33
|
+
|
|
34
|
+
export { type ButtonAPI, type ButtonProps, type ButtonSize, type ButtonVariant, buttonTokens, buttonVariants, createButton, getButtonType };
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
interface CalendarProps {
|
|
4
|
+
/** Selected date (controlled) */
|
|
5
|
+
value?: Date;
|
|
6
|
+
/** Default selected date (uncontrolled) */
|
|
7
|
+
defaultValue?: Date;
|
|
8
|
+
/** Callback when a date is selected */
|
|
9
|
+
onSelect?: (date: Date) => void;
|
|
10
|
+
/** Displayed month (controlled) */
|
|
11
|
+
month?: Date;
|
|
12
|
+
/** Callback when the displayed month changes */
|
|
13
|
+
onMonthChange?: (month: Date) => void;
|
|
14
|
+
/** Minimum selectable date */
|
|
15
|
+
minDate?: Date;
|
|
16
|
+
/** Maximum selectable date */
|
|
17
|
+
maxDate?: Date;
|
|
18
|
+
/** Specific dates to disable */
|
|
19
|
+
disabledDates?: Date[];
|
|
20
|
+
}
|
|
21
|
+
interface CalendarDay {
|
|
22
|
+
/** The date this cell represents */
|
|
23
|
+
date: Date;
|
|
24
|
+
/** Whether the date is today */
|
|
25
|
+
isToday: boolean;
|
|
26
|
+
/** Whether the date is currently selected */
|
|
27
|
+
isSelected: boolean;
|
|
28
|
+
/** Whether the date belongs to the currently displayed month */
|
|
29
|
+
isCurrentMonth: boolean;
|
|
30
|
+
/** Whether the date is disabled */
|
|
31
|
+
isDisabled: boolean;
|
|
32
|
+
}
|
|
33
|
+
interface CalendarState {
|
|
34
|
+
/** The currently displayed month */
|
|
35
|
+
currentMonth: Date;
|
|
36
|
+
/** The currently selected date, if any */
|
|
37
|
+
selectedDate: Date | undefined;
|
|
38
|
+
}
|
|
39
|
+
interface CalendarAPI {
|
|
40
|
+
/** Current calendar state */
|
|
41
|
+
state: CalendarState;
|
|
42
|
+
/** Array of day objects for the current month grid (always 42: 6 weeks x 7 days) */
|
|
43
|
+
days: CalendarDay[];
|
|
44
|
+
/** Navigate to the previous month */
|
|
45
|
+
prevMonth(): void;
|
|
46
|
+
/** Navigate to the next month */
|
|
47
|
+
nextMonth(): void;
|
|
48
|
+
/** Select a date */
|
|
49
|
+
select(date: Date): void;
|
|
50
|
+
/** ARIA attributes for the calendar grid */
|
|
51
|
+
ariaProps: Partial<AccessibilityProps> & Record<string, unknown>;
|
|
52
|
+
/** Get ARIA attributes for a specific day cell */
|
|
53
|
+
getDayAriaProps(day: CalendarDay): Partial<AccessibilityProps> & Record<string, unknown>;
|
|
54
|
+
/** Generated IDs */
|
|
55
|
+
ids: {
|
|
56
|
+
grid: string;
|
|
57
|
+
label: string;
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
declare function createCalendar(props?: CalendarProps): CalendarAPI;
|
|
61
|
+
|
|
62
|
+
declare const calendarVariants: (props?: ({
|
|
63
|
+
[x: string]: string | undefined;
|
|
64
|
+
} & {
|
|
65
|
+
className?: string;
|
|
66
|
+
}) | undefined) => string;
|
|
67
|
+
declare const dayVariants: (props?: ({
|
|
68
|
+
state?: "default" | "selected" | "today" | "disabled" | "outside" | undefined;
|
|
69
|
+
} & {
|
|
70
|
+
className?: string;
|
|
71
|
+
}) | undefined) => string;
|
|
72
|
+
|
|
73
|
+
export { type CalendarAPI, type CalendarDay, type CalendarProps, type CalendarState, calendarVariants, createCalendar, dayVariants };
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
interface CalendarProps {
|
|
4
|
+
/** Selected date (controlled) */
|
|
5
|
+
value?: Date;
|
|
6
|
+
/** Default selected date (uncontrolled) */
|
|
7
|
+
defaultValue?: Date;
|
|
8
|
+
/** Callback when a date is selected */
|
|
9
|
+
onSelect?: (date: Date) => void;
|
|
10
|
+
/** Displayed month (controlled) */
|
|
11
|
+
month?: Date;
|
|
12
|
+
/** Callback when the displayed month changes */
|
|
13
|
+
onMonthChange?: (month: Date) => void;
|
|
14
|
+
/** Minimum selectable date */
|
|
15
|
+
minDate?: Date;
|
|
16
|
+
/** Maximum selectable date */
|
|
17
|
+
maxDate?: Date;
|
|
18
|
+
/** Specific dates to disable */
|
|
19
|
+
disabledDates?: Date[];
|
|
20
|
+
}
|
|
21
|
+
interface CalendarDay {
|
|
22
|
+
/** The date this cell represents */
|
|
23
|
+
date: Date;
|
|
24
|
+
/** Whether the date is today */
|
|
25
|
+
isToday: boolean;
|
|
26
|
+
/** Whether the date is currently selected */
|
|
27
|
+
isSelected: boolean;
|
|
28
|
+
/** Whether the date belongs to the currently displayed month */
|
|
29
|
+
isCurrentMonth: boolean;
|
|
30
|
+
/** Whether the date is disabled */
|
|
31
|
+
isDisabled: boolean;
|
|
32
|
+
}
|
|
33
|
+
interface CalendarState {
|
|
34
|
+
/** The currently displayed month */
|
|
35
|
+
currentMonth: Date;
|
|
36
|
+
/** The currently selected date, if any */
|
|
37
|
+
selectedDate: Date | undefined;
|
|
38
|
+
}
|
|
39
|
+
interface CalendarAPI {
|
|
40
|
+
/** Current calendar state */
|
|
41
|
+
state: CalendarState;
|
|
42
|
+
/** Array of day objects for the current month grid (always 42: 6 weeks x 7 days) */
|
|
43
|
+
days: CalendarDay[];
|
|
44
|
+
/** Navigate to the previous month */
|
|
45
|
+
prevMonth(): void;
|
|
46
|
+
/** Navigate to the next month */
|
|
47
|
+
nextMonth(): void;
|
|
48
|
+
/** Select a date */
|
|
49
|
+
select(date: Date): void;
|
|
50
|
+
/** ARIA attributes for the calendar grid */
|
|
51
|
+
ariaProps: Partial<AccessibilityProps> & Record<string, unknown>;
|
|
52
|
+
/** Get ARIA attributes for a specific day cell */
|
|
53
|
+
getDayAriaProps(day: CalendarDay): Partial<AccessibilityProps> & Record<string, unknown>;
|
|
54
|
+
/** Generated IDs */
|
|
55
|
+
ids: {
|
|
56
|
+
grid: string;
|
|
57
|
+
label: string;
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
declare function createCalendar(props?: CalendarProps): CalendarAPI;
|
|
61
|
+
|
|
62
|
+
declare const calendarVariants: (props?: ({
|
|
63
|
+
[x: string]: string | undefined;
|
|
64
|
+
} & {
|
|
65
|
+
className?: string;
|
|
66
|
+
}) | undefined) => string;
|
|
67
|
+
declare const dayVariants: (props?: ({
|
|
68
|
+
state?: "default" | "selected" | "today" | "disabled" | "outside" | undefined;
|
|
69
|
+
} & {
|
|
70
|
+
className?: string;
|
|
71
|
+
}) | undefined) => string;
|
|
72
|
+
|
|
73
|
+
export { type CalendarAPI, type CalendarDay, type CalendarProps, type CalendarState, calendarVariants, createCalendar, dayVariants };
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { AccessibilityProps, TokenContract } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
interface CardProps {
|
|
4
|
+
/** Optional accessible role override */
|
|
5
|
+
role?: string;
|
|
6
|
+
}
|
|
7
|
+
interface CardAPI {
|
|
8
|
+
/** ARIA attributes to spread on the element */
|
|
9
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
10
|
+
/** Data attributes for CSS styling hooks */
|
|
11
|
+
dataAttributes: Record<string, string>;
|
|
12
|
+
}
|
|
13
|
+
declare function createCard(props?: CardProps): CardAPI;
|
|
14
|
+
declare function createCardHeader(): {
|
|
15
|
+
dataAttributes: Record<string, string>;
|
|
16
|
+
};
|
|
17
|
+
declare function createCardTitle(): {
|
|
18
|
+
dataAttributes: Record<string, string>;
|
|
19
|
+
};
|
|
20
|
+
declare function createCardDescription(): {
|
|
21
|
+
dataAttributes: Record<string, string>;
|
|
22
|
+
};
|
|
23
|
+
declare function createCardContent(): {
|
|
24
|
+
dataAttributes: Record<string, string>;
|
|
25
|
+
};
|
|
26
|
+
declare function createCardFooter(): {
|
|
27
|
+
dataAttributes: Record<string, string>;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
declare const cardTokens: TokenContract;
|
|
31
|
+
declare const cardVariants: (props?: ({
|
|
32
|
+
padding?: "none" | "default" | "compact" | undefined;
|
|
33
|
+
} & {
|
|
34
|
+
className?: string;
|
|
35
|
+
}) | undefined) => string;
|
|
36
|
+
declare const cardHeaderVariants: (props?: ({
|
|
37
|
+
[x: string]: string | undefined;
|
|
38
|
+
} & {
|
|
39
|
+
className?: string;
|
|
40
|
+
}) | undefined) => string;
|
|
41
|
+
declare const cardTitleVariants: (props?: ({
|
|
42
|
+
size?: "default" | "sm" | "lg" | undefined;
|
|
43
|
+
} & {
|
|
44
|
+
className?: string;
|
|
45
|
+
}) | undefined) => string;
|
|
46
|
+
declare const cardDescriptionVariants: (props?: ({
|
|
47
|
+
[x: string]: string | undefined;
|
|
48
|
+
} & {
|
|
49
|
+
className?: string;
|
|
50
|
+
}) | undefined) => string;
|
|
51
|
+
declare const cardContentVariants: (props?: ({
|
|
52
|
+
[x: string]: string | undefined;
|
|
53
|
+
} & {
|
|
54
|
+
className?: string;
|
|
55
|
+
}) | undefined) => string;
|
|
56
|
+
declare const cardFooterVariants: (props?: ({
|
|
57
|
+
[x: string]: string | undefined;
|
|
58
|
+
} & {
|
|
59
|
+
className?: string;
|
|
60
|
+
}) | undefined) => string;
|
|
61
|
+
|
|
62
|
+
export { type CardAPI, type CardProps, cardContentVariants, cardDescriptionVariants, cardFooterVariants, cardHeaderVariants, cardTitleVariants, cardTokens, cardVariants, createCard, createCardContent, createCardDescription, createCardFooter, createCardHeader, createCardTitle };
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { AccessibilityProps, TokenContract } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
interface CardProps {
|
|
4
|
+
/** Optional accessible role override */
|
|
5
|
+
role?: string;
|
|
6
|
+
}
|
|
7
|
+
interface CardAPI {
|
|
8
|
+
/** ARIA attributes to spread on the element */
|
|
9
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
10
|
+
/** Data attributes for CSS styling hooks */
|
|
11
|
+
dataAttributes: Record<string, string>;
|
|
12
|
+
}
|
|
13
|
+
declare function createCard(props?: CardProps): CardAPI;
|
|
14
|
+
declare function createCardHeader(): {
|
|
15
|
+
dataAttributes: Record<string, string>;
|
|
16
|
+
};
|
|
17
|
+
declare function createCardTitle(): {
|
|
18
|
+
dataAttributes: Record<string, string>;
|
|
19
|
+
};
|
|
20
|
+
declare function createCardDescription(): {
|
|
21
|
+
dataAttributes: Record<string, string>;
|
|
22
|
+
};
|
|
23
|
+
declare function createCardContent(): {
|
|
24
|
+
dataAttributes: Record<string, string>;
|
|
25
|
+
};
|
|
26
|
+
declare function createCardFooter(): {
|
|
27
|
+
dataAttributes: Record<string, string>;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
declare const cardTokens: TokenContract;
|
|
31
|
+
declare const cardVariants: (props?: ({
|
|
32
|
+
padding?: "none" | "default" | "compact" | undefined;
|
|
33
|
+
} & {
|
|
34
|
+
className?: string;
|
|
35
|
+
}) | undefined) => string;
|
|
36
|
+
declare const cardHeaderVariants: (props?: ({
|
|
37
|
+
[x: string]: string | undefined;
|
|
38
|
+
} & {
|
|
39
|
+
className?: string;
|
|
40
|
+
}) | undefined) => string;
|
|
41
|
+
declare const cardTitleVariants: (props?: ({
|
|
42
|
+
size?: "default" | "sm" | "lg" | undefined;
|
|
43
|
+
} & {
|
|
44
|
+
className?: string;
|
|
45
|
+
}) | undefined) => string;
|
|
46
|
+
declare const cardDescriptionVariants: (props?: ({
|
|
47
|
+
[x: string]: string | undefined;
|
|
48
|
+
} & {
|
|
49
|
+
className?: string;
|
|
50
|
+
}) | undefined) => string;
|
|
51
|
+
declare const cardContentVariants: (props?: ({
|
|
52
|
+
[x: string]: string | undefined;
|
|
53
|
+
} & {
|
|
54
|
+
className?: string;
|
|
55
|
+
}) | undefined) => string;
|
|
56
|
+
declare const cardFooterVariants: (props?: ({
|
|
57
|
+
[x: string]: string | undefined;
|
|
58
|
+
} & {
|
|
59
|
+
className?: string;
|
|
60
|
+
}) | undefined) => string;
|
|
61
|
+
|
|
62
|
+
export { type CardAPI, type CardProps, cardContentVariants, cardDescriptionVariants, cardFooterVariants, cardHeaderVariants, cardTitleVariants, cardTokens, cardVariants, createCard, createCardContent, createCardDescription, createCardFooter, createCardHeader, createCardTitle };
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { AccessibilityProps, KeyboardHandlerMap, TokenContract } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
type CheckedState = boolean | 'indeterminate';
|
|
4
|
+
interface CheckboxProps {
|
|
5
|
+
checked?: CheckedState;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
required?: boolean;
|
|
8
|
+
name?: string;
|
|
9
|
+
value?: string;
|
|
10
|
+
}
|
|
11
|
+
interface CheckboxAPI {
|
|
12
|
+
/** ARIA attributes to spread on the element */
|
|
13
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
14
|
+
/** Keyboard handlers to attach */
|
|
15
|
+
keyboardHandlers: KeyboardHandlerMap;
|
|
16
|
+
/** Whether interaction should be blocked */
|
|
17
|
+
isInteractive: boolean;
|
|
18
|
+
/** Data attributes for CSS styling hooks */
|
|
19
|
+
dataAttributes: Record<string, string>;
|
|
20
|
+
/** Current state */
|
|
21
|
+
state: {
|
|
22
|
+
checked: CheckedState;
|
|
23
|
+
disabled: boolean;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
declare function createCheckbox(props?: CheckboxProps): CheckboxAPI;
|
|
27
|
+
/** SVG path data for the check icon */
|
|
28
|
+
declare const checkIconPath = "M20 6L9 17l-5-5";
|
|
29
|
+
/** SVG path data for the indeterminate/minus icon */
|
|
30
|
+
declare const indeterminateIconPath = "M5 12h14";
|
|
31
|
+
|
|
32
|
+
declare const checkboxTokens: TokenContract;
|
|
33
|
+
declare const checkboxVariants: (props?: ({
|
|
34
|
+
checked?: "indeterminate" | "true" | "false" | undefined;
|
|
35
|
+
size?: "sm" | "default" | "lg" | undefined;
|
|
36
|
+
} & {
|
|
37
|
+
className?: string;
|
|
38
|
+
}) | undefined) => string;
|
|
39
|
+
|
|
40
|
+
export { type CheckboxAPI, type CheckboxProps, type CheckedState, checkIconPath, checkboxTokens, checkboxVariants, createCheckbox, indeterminateIconPath };
|