@aspect-ops/exon-ui 0.0.2 → 0.0.3

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.
Files changed (177) hide show
  1. package/dist/components/ActionSheet/ActionSheet.svelte +270 -0
  2. package/dist/components/ActionSheet/ActionSheet.svelte.d.ts +12 -0
  3. package/dist/components/ActionSheet/ActionSheetItem.svelte +151 -0
  4. package/dist/components/ActionSheet/ActionSheetItem.svelte.d.ts +10 -0
  5. package/dist/components/ActionSheet/index.d.ts +3 -0
  6. package/dist/components/ActionSheet/index.js +2 -0
  7. package/dist/components/Alert/Alert.svelte +165 -0
  8. package/dist/components/Alert/Alert.svelte.d.ts +11 -0
  9. package/dist/components/Alert/index.d.ts +1 -0
  10. package/dist/components/Alert/index.js +1 -0
  11. package/dist/components/AspectRatio/AspectRatio.svelte +42 -0
  12. package/dist/components/AspectRatio/AspectRatio.svelte.d.ts +9 -0
  13. package/dist/components/AspectRatio/index.d.ts +1 -0
  14. package/dist/components/AspectRatio/index.js +1 -0
  15. package/dist/components/Avatar/Avatar.svelte +147 -0
  16. package/dist/components/Avatar/Avatar.svelte.d.ts +12 -0
  17. package/dist/components/Avatar/AvatarGroup.svelte +153 -0
  18. package/dist/components/Avatar/AvatarGroup.svelte.d.ts +12 -0
  19. package/dist/components/Avatar/index.d.ts +2 -0
  20. package/dist/components/Avatar/index.js +2 -0
  21. package/dist/components/BottomSheet/BottomSheet.svelte +230 -0
  22. package/dist/components/BottomSheet/BottomSheet.svelte.d.ts +7 -0
  23. package/dist/components/BottomSheet/BottomSheetBody.svelte +20 -0
  24. package/dist/components/BottomSheet/BottomSheetBody.svelte.d.ts +7 -0
  25. package/dist/components/BottomSheet/BottomSheetHeader.svelte +27 -0
  26. package/dist/components/BottomSheet/BottomSheetHeader.svelte.d.ts +7 -0
  27. package/dist/components/BottomSheet/index.d.ts +3 -0
  28. package/dist/components/BottomSheet/index.js +3 -0
  29. package/dist/components/Box/Box.svelte +41 -0
  30. package/dist/components/Box/Box.svelte.d.ts +7 -0
  31. package/dist/components/Box/index.d.ts +1 -0
  32. package/dist/components/Box/index.js +1 -0
  33. package/dist/components/Card/Card.svelte +95 -0
  34. package/dist/components/Card/Card.svelte.d.ts +10 -0
  35. package/dist/components/Card/CardBody.svelte +32 -0
  36. package/dist/components/Card/CardBody.svelte.d.ts +7 -0
  37. package/dist/components/Card/CardFooter.svelte +34 -0
  38. package/dist/components/Card/CardFooter.svelte.d.ts +7 -0
  39. package/dist/components/Card/CardHeader.svelte +67 -0
  40. package/dist/components/Card/CardHeader.svelte.d.ts +9 -0
  41. package/dist/components/Card/index.d.ts +4 -0
  42. package/dist/components/Card/index.js +4 -0
  43. package/dist/components/Center/Center.svelte +28 -0
  44. package/dist/components/Center/Center.svelte.d.ts +8 -0
  45. package/dist/components/Center/index.d.ts +1 -0
  46. package/dist/components/Center/index.js +1 -0
  47. package/dist/components/Container/Container.svelte +58 -0
  48. package/dist/components/Container/Container.svelte.d.ts +10 -0
  49. package/dist/components/Container/index.d.ts +1 -0
  50. package/dist/components/Container/index.js +1 -0
  51. package/dist/components/Divider/Divider.svelte +38 -0
  52. package/dist/components/Divider/Divider.svelte.d.ts +9 -0
  53. package/dist/components/Divider/index.d.ts +1 -0
  54. package/dist/components/Divider/index.js +1 -0
  55. package/dist/components/EmptyState/EmptyState.svelte +164 -0
  56. package/dist/components/EmptyState/EmptyState.svelte.d.ts +12 -0
  57. package/dist/components/EmptyState/index.d.ts +1 -0
  58. package/dist/components/EmptyState/index.js +1 -0
  59. package/dist/components/FAB/FAB.svelte +242 -0
  60. package/dist/components/FAB/FAB.svelte.d.ts +9 -0
  61. package/dist/components/FAB/FABGroup.svelte +449 -0
  62. package/dist/components/FAB/FABGroup.svelte.d.ts +9 -0
  63. package/dist/components/FAB/index.d.ts +3 -0
  64. package/dist/components/FAB/index.js +2 -0
  65. package/dist/components/Grid/Grid.svelte +136 -0
  66. package/dist/components/Grid/Grid.svelte.d.ts +12 -0
  67. package/dist/components/Grid/GridItem.svelte +21 -0
  68. package/dist/components/Grid/GridItem.svelte.d.ts +7 -0
  69. package/dist/components/Grid/index.d.ts +2 -0
  70. package/dist/components/Grid/index.js +2 -0
  71. package/dist/components/List/List.svelte +42 -0
  72. package/dist/components/List/List.svelte.d.ts +18 -0
  73. package/dist/components/List/ListItem.svelte +139 -0
  74. package/dist/components/List/ListItem.svelte.d.ts +36 -0
  75. package/dist/components/List/index.d.ts +2 -0
  76. package/dist/components/List/index.js +2 -0
  77. package/dist/components/Modal/Modal.svelte +204 -0
  78. package/dist/components/Modal/Modal.svelte.d.ts +7 -0
  79. package/dist/components/Modal/ModalBody.svelte +50 -0
  80. package/dist/components/Modal/ModalBody.svelte.d.ts +7 -0
  81. package/dist/components/Modal/ModalFooter.svelte +37 -0
  82. package/dist/components/Modal/ModalFooter.svelte.d.ts +7 -0
  83. package/dist/components/Modal/ModalHeader.svelte +73 -0
  84. package/dist/components/Modal/ModalHeader.svelte.d.ts +7 -0
  85. package/dist/components/Modal/index.d.ts +4 -0
  86. package/dist/components/Modal/index.js +4 -0
  87. package/dist/components/Popover/Popover.svelte +14 -0
  88. package/dist/components/Popover/Popover.svelte.d.ts +7 -0
  89. package/dist/components/Popover/PopoverContent.svelte +63 -0
  90. package/dist/components/Popover/PopoverContent.svelte.d.ts +7 -0
  91. package/dist/components/Popover/PopoverTrigger.svelte +14 -0
  92. package/dist/components/Popover/PopoverTrigger.svelte.d.ts +7 -0
  93. package/dist/components/Popover/index.d.ts +3 -0
  94. package/dist/components/Popover/index.js +3 -0
  95. package/dist/components/Progress/ProgressBar.svelte +86 -0
  96. package/dist/components/Progress/ProgressBar.svelte.d.ts +11 -0
  97. package/dist/components/Progress/ProgressCircle.svelte +134 -0
  98. package/dist/components/Progress/ProgressCircle.svelte.d.ts +12 -0
  99. package/dist/components/Progress/Spinner.svelte +68 -0
  100. package/dist/components/Progress/Spinner.svelte.d.ts +8 -0
  101. package/dist/components/Progress/index.d.ts +3 -0
  102. package/dist/components/Progress/index.js +3 -0
  103. package/dist/components/PullToRefresh/PullToRefresh.svelte +304 -0
  104. package/dist/components/PullToRefresh/PullToRefresh.svelte.d.ts +20 -0
  105. package/dist/components/PullToRefresh/index.d.ts +1 -0
  106. package/dist/components/PullToRefresh/index.js +1 -0
  107. package/dist/components/SafeArea/SafeArea.svelte +33 -0
  108. package/dist/components/SafeArea/SafeArea.svelte.d.ts +7 -0
  109. package/dist/components/Select/Select.svelte +55 -12
  110. package/dist/components/Skeleton/Skeleton.svelte +59 -0
  111. package/dist/components/Skeleton/Skeleton.svelte.d.ts +10 -0
  112. package/dist/components/Skeleton/index.d.ts +1 -0
  113. package/dist/components/Skeleton/index.js +1 -0
  114. package/dist/components/Spacer/Spacer.svelte +56 -0
  115. package/dist/components/Spacer/Spacer.svelte.d.ts +6 -0
  116. package/dist/components/Spacer/index.d.ts +1 -0
  117. package/dist/components/Spacer/index.js +1 -0
  118. package/dist/components/Stack/Stack.svelte +117 -0
  119. package/dist/components/Stack/Stack.svelte.d.ts +13 -0
  120. package/dist/components/Stack/index.d.ts +1 -0
  121. package/dist/components/Stack/index.js +1 -0
  122. package/dist/components/SwipeActions/SwipeAction.svelte +43 -0
  123. package/dist/components/SwipeActions/SwipeAction.svelte.d.ts +8 -0
  124. package/dist/components/SwipeActions/SwipeActions.svelte +193 -0
  125. package/dist/components/SwipeActions/SwipeActions.svelte.d.ts +9 -0
  126. package/dist/components/SwipeActions/index.d.ts +2 -0
  127. package/dist/components/SwipeActions/index.js +2 -0
  128. package/dist/components/Switch/Switch.svelte +29 -9
  129. package/dist/components/Table/Table.svelte +175 -0
  130. package/dist/components/Table/Table.svelte.d.ts +38 -0
  131. package/dist/components/Table/TableBody.svelte +26 -0
  132. package/dist/components/Table/TableBody.svelte.d.ts +13 -0
  133. package/dist/components/Table/TableCell.svelte +85 -0
  134. package/dist/components/Table/TableCell.svelte.d.ts +28 -0
  135. package/dist/components/Table/TableHead.svelte +36 -0
  136. package/dist/components/Table/TableHead.svelte.d.ts +13 -0
  137. package/dist/components/Table/TableHeader.svelte +217 -0
  138. package/dist/components/Table/TableHeader.svelte.d.ts +32 -0
  139. package/dist/components/Table/TableRow.svelte +92 -0
  140. package/dist/components/Table/TableRow.svelte.d.ts +28 -0
  141. package/dist/components/Table/index.d.ts +6 -0
  142. package/dist/components/Table/index.js +6 -0
  143. package/dist/components/Tag/Tag.svelte +189 -0
  144. package/dist/components/Tag/Tag.svelte.d.ts +13 -0
  145. package/dist/components/Tag/index.d.ts +1 -0
  146. package/dist/components/Tag/index.js +1 -0
  147. package/dist/components/Toast/Toast.svelte +241 -0
  148. package/dist/components/Toast/Toast.svelte.d.ts +18 -0
  149. package/dist/components/Toast/ToastContainer.svelte +110 -0
  150. package/dist/components/Toast/ToastContainer.svelte.d.ts +8 -0
  151. package/dist/components/Toast/index.d.ts +3 -0
  152. package/dist/components/Toast/index.js +3 -0
  153. package/dist/components/Toast/toast.d.ts +13 -0
  154. package/dist/components/Toast/toast.js +55 -0
  155. package/dist/components/Tooltip/Tooltip.svelte +71 -0
  156. package/dist/components/Tooltip/Tooltip.svelte.d.ts +7 -0
  157. package/dist/components/Tooltip/index.d.ts +2 -0
  158. package/dist/components/Tooltip/index.js +1 -0
  159. package/dist/index.d.ts +29 -1
  160. package/dist/index.js +32 -0
  161. package/dist/styles/tokens.css +5 -0
  162. package/dist/types/data-display.d.ts +93 -0
  163. package/dist/types/data-display.js +1 -0
  164. package/dist/types/feedback.d.ts +92 -0
  165. package/dist/types/feedback.js +1 -0
  166. package/dist/types/index.d.ts +4 -0
  167. package/dist/types/layout.d.ts +57 -0
  168. package/dist/types/layout.js +1 -0
  169. package/dist/types/mobile.d.ts +91 -0
  170. package/dist/types/mobile.js +1 -0
  171. package/dist/utils/gestures.d.ts +219 -0
  172. package/dist/utils/gestures.js +492 -0
  173. package/dist/utils/haptics.d.ts +89 -0
  174. package/dist/utils/haptics.js +198 -0
  175. package/dist/utils/platform.d.ts +47 -0
  176. package/dist/utils/platform.js +156 -0
  177. package/package.json +1 -1
@@ -0,0 +1,71 @@
1
+ <script lang="ts">
2
+ import type { TooltipProps } from '../../types/index.js';
3
+ import { Tooltip as BitsTooltip } from 'bits-ui';
4
+
5
+ interface Props extends TooltipProps {
6
+ children?: import('svelte').Snippet;
7
+ }
8
+
9
+ let { content, side = 'top', delay = 300, class: className = '', children }: Props = $props();
10
+ </script>
11
+
12
+ <BitsTooltip.Provider>
13
+ <BitsTooltip.Root delayDuration={delay}>
14
+ <BitsTooltip.Trigger child={children}></BitsTooltip.Trigger>
15
+ <BitsTooltip.Portal>
16
+ <BitsTooltip.Content {side} class="tooltip-content {className}">
17
+ {content}
18
+ </BitsTooltip.Content>
19
+ </BitsTooltip.Portal>
20
+ </BitsTooltip.Root>
21
+ </BitsTooltip.Provider>
22
+
23
+ <style>
24
+ /* Tooltip content */
25
+ :global(.tooltip-content) {
26
+ /* MUST set font-family explicitly - portal doesn't inherit (F33) */
27
+ font-family: var(--font-family, system-ui, -apple-system, sans-serif);
28
+ background: var(--exon-tooltip-bg, var(--exon-color-neutral-900, #1f2937));
29
+ color: var(--exon-tooltip-text, white);
30
+ font-size: 0.75rem;
31
+ padding: 0.375rem 0.625rem;
32
+ border-radius: var(--exon-radius-sm, 0.25rem);
33
+ max-width: 15rem;
34
+ box-shadow: var(--shadow-md, 0 4px 6px rgba(0, 0, 0, 0.1));
35
+ z-index: 200;
36
+ /* Prevent text wrapping issues */
37
+ word-wrap: break-word;
38
+ line-height: 1.4;
39
+ }
40
+
41
+ /* Fade-in animation */
42
+ :global(.tooltip-content[data-state='delayed-open']) {
43
+ animation: tooltip-fade-in 150ms ease-out;
44
+ }
45
+
46
+ :global(.tooltip-content[data-state='closed']) {
47
+ animation: tooltip-fade-out 100ms ease-in;
48
+ }
49
+
50
+ @keyframes -global-tooltip-fade-in {
51
+ from {
52
+ opacity: 0;
53
+ transform: scale(0.95);
54
+ }
55
+ to {
56
+ opacity: 1;
57
+ transform: scale(1);
58
+ }
59
+ }
60
+
61
+ @keyframes -global-tooltip-fade-out {
62
+ from {
63
+ opacity: 1;
64
+ transform: scale(1);
65
+ }
66
+ to {
67
+ opacity: 0;
68
+ transform: scale(0.95);
69
+ }
70
+ }
71
+ </style>
@@ -0,0 +1,7 @@
1
+ import type { TooltipProps } from '../../types/index.js';
2
+ interface Props extends TooltipProps {
3
+ children?: import('svelte').Snippet;
4
+ }
5
+ declare const Tooltip: import("svelte").Component<Props, {}, "">;
6
+ type Tooltip = ReturnType<typeof Tooltip>;
7
+ export default Tooltip;
@@ -0,0 +1,2 @@
1
+ export { default as Tooltip } from './Tooltip.svelte';
2
+ export type { TooltipProps, TooltipSide } from '../../types/feedback.js';
@@ -0,0 +1 @@
1
+ export { default as Tooltip } from './Tooltip.svelte';
package/dist/index.d.ts CHANGED
@@ -34,4 +34,32 @@ export { default as NavItem } from './components/Navbar/NavItem.svelte';
34
34
  export { default as Sidebar } from './components/Sidebar/Sidebar.svelte';
35
35
  export { default as SidebarItem } from './components/Sidebar/SidebarItem.svelte';
36
36
  export { default as SidebarGroup } from './components/Sidebar/SidebarGroup.svelte';
37
- export type { ButtonProps, ButtonVariant, ButtonSize, TypographyProps, TypographyVariant, IconProps, IconSize, BadgeProps, BadgeVariant, LinkProps, InputSize, TextInputType, FormFieldProps, TextInputProps, TextareaProps, SelectOption, SelectProps, CheckboxProps, RadioProps, RadioGroupProps, SwitchProps, TabsOrientation, TabsProps, TabListProps, TabTriggerProps, TabContentProps, MenuProps, MenuTriggerProps, MenuContentProps, MenuItemProps, MenuSeparatorProps, MenuSubProps, MenuSubTriggerProps, MenuSubContentProps, BreadcrumbItemData, BreadcrumbsProps, BreadcrumbItemProps, BottomNavItemData, BottomNavProps, BottomNavItemProps, NavItemProps, NavbarProps, SidebarItemData, SidebarProps, SidebarItemProps, SidebarGroupProps } from './types/index.js';
37
+ export { default as Alert } from './components/Alert/Alert.svelte';
38
+ export { Toast, ToastContainer, toast } from './components/Toast/index.js';
39
+ export { Modal, ModalHeader, ModalBody, ModalFooter } from './components/Modal/index.js';
40
+ export { ProgressBar, ProgressCircle, Spinner } from './components/Progress/index.js';
41
+ export { Tooltip } from './components/Tooltip/index.js';
42
+ export { Popover, PopoverTrigger, PopoverContent } from './components/Popover/index.js';
43
+ export { Skeleton } from './components/Skeleton/index.js';
44
+ export { Card, CardHeader, CardBody, CardFooter } from './components/Card/index.js';
45
+ export { Avatar, AvatarGroup } from './components/Avatar/index.js';
46
+ export { Tag } from './components/Tag/index.js';
47
+ export { EmptyState } from './components/EmptyState/index.js';
48
+ export { List, ListItem } from './components/List/index.js';
49
+ export { Table, TableHead, TableHeader, TableBody, TableRow, TableCell } from './components/Table/index.js';
50
+ export { Container } from './components/Container/index.js';
51
+ export { Grid } from './components/Grid/index.js';
52
+ export { GridItem } from './components/Grid/index.js';
53
+ export { Stack } from './components/Stack/index.js';
54
+ export { Divider } from './components/Divider/index.js';
55
+ export { Spacer } from './components/Spacer/index.js';
56
+ export { AspectRatio } from './components/AspectRatio/index.js';
57
+ export { Center } from './components/Center/index.js';
58
+ export { Box } from './components/Box/index.js';
59
+ export { default as SafeArea } from './components/SafeArea/SafeArea.svelte';
60
+ export { BottomSheet, BottomSheetHeader, BottomSheetBody } from './components/BottomSheet/index.js';
61
+ export { ActionSheet, ActionSheetItem } from './components/ActionSheet/index.js';
62
+ export { PullToRefresh } from './components/PullToRefresh/index.js';
63
+ export { SwipeActions, SwipeAction } from './components/SwipeActions/index.js';
64
+ export { FAB, FABGroup } from './components/FAB/index.js';
65
+ export type { ButtonProps, ButtonVariant, ButtonSize, TypographyProps, TypographyVariant, IconProps, IconSize, BadgeProps, BadgeVariant, LinkProps, InputSize, TextInputType, FormFieldProps, TextInputProps, TextareaProps, SelectOption, SelectProps, CheckboxProps, RadioProps, RadioGroupProps, SwitchProps, TabsOrientation, TabsProps, TabListProps, TabTriggerProps, TabContentProps, MenuProps, MenuTriggerProps, MenuContentProps, MenuItemProps, MenuSeparatorProps, MenuSubProps, MenuSubTriggerProps, MenuSubContentProps, BreadcrumbItemData, BreadcrumbsProps, BreadcrumbItemProps, BottomNavItemData, BottomNavProps, BottomNavItemProps, NavItemProps, NavbarProps, SidebarItemData, SidebarProps, SidebarItemProps, SidebarGroupProps, AlertVariant, AlertProps, ToastVariant, ToastPosition, ToastData, ToastProps, ToastContainerProps, ModalSize, ModalProps, ModalHeaderProps, ModalBodyProps, ModalFooterProps, ProgressSize, ProgressBarProps, ProgressCircleProps, SpinnerProps, TooltipSide, TooltipProps, PopoverSide, PopoverProps, PopoverTriggerProps, PopoverContentProps, SkeletonVariant, SkeletonProps, CardVariant, CardProps, CardHeaderProps, CardBodyProps, CardFooterProps, AvatarSize, AvatarShape, AvatarProps, AvatarGroupProps, TagVariant, TagSize, TagProps, EmptyStateSize, EmptyStateProps, ListProps, ListItemProps, TableProps, TableHeadProps, TableHeaderAlign, TableHeaderSortDirection, TableHeaderProps, TableBodyProps, TableRowProps, TableCellAlign, TableCellProps, ContainerSize, ContainerProps, GridAlign, GridJustify, SpacingToken, GridProps, GridItemProps, StackDirection, StackProps, DividerOrientation, DividerProps, SpacerSize, SpacerProps, AspectRatioPreset, AspectRatioProps, CenterProps, BoxProps, SafeAreaEdge, SafeAreaProps, BottomSheetSnapPoint, BottomSheetProps, BottomSheetHeaderProps, BottomSheetBodyProps, ActionSheetAction, ActionSheetProps, ActionSheetItemProps, PullToRefreshProps, SwipeActionSide, SwipeActionData, SwipeActionsProps, SwipeActionProps, FABSize, FABPosition, FABProps, FABAction, FABGroupProps } from './types/index.js';
package/dist/index.js CHANGED
@@ -39,3 +39,35 @@ export { default as NavItem } from './components/Navbar/NavItem.svelte';
39
39
  export { default as Sidebar } from './components/Sidebar/Sidebar.svelte';
40
40
  export { default as SidebarItem } from './components/Sidebar/SidebarItem.svelte';
41
41
  export { default as SidebarGroup } from './components/Sidebar/SidebarGroup.svelte';
42
+ // Feedback Components
43
+ export { default as Alert } from './components/Alert/Alert.svelte';
44
+ export { Toast, ToastContainer, toast } from './components/Toast/index.js';
45
+ export { Modal, ModalHeader, ModalBody, ModalFooter } from './components/Modal/index.js';
46
+ export { ProgressBar, ProgressCircle, Spinner } from './components/Progress/index.js';
47
+ export { Tooltip } from './components/Tooltip/index.js';
48
+ export { Popover, PopoverTrigger, PopoverContent } from './components/Popover/index.js';
49
+ export { Skeleton } from './components/Skeleton/index.js';
50
+ // Data Display Components
51
+ export { Card, CardHeader, CardBody, CardFooter } from './components/Card/index.js';
52
+ export { Avatar, AvatarGroup } from './components/Avatar/index.js';
53
+ export { Tag } from './components/Tag/index.js';
54
+ export { EmptyState } from './components/EmptyState/index.js';
55
+ export { List, ListItem } from './components/List/index.js';
56
+ export { Table, TableHead, TableHeader, TableBody, TableRow, TableCell } from './components/Table/index.js';
57
+ // Layout Components
58
+ export { Container } from './components/Container/index.js';
59
+ export { Grid } from './components/Grid/index.js';
60
+ export { GridItem } from './components/Grid/index.js';
61
+ export { Stack } from './components/Stack/index.js';
62
+ export { Divider } from './components/Divider/index.js';
63
+ export { Spacer } from './components/Spacer/index.js';
64
+ export { AspectRatio } from './components/AspectRatio/index.js';
65
+ export { Center } from './components/Center/index.js';
66
+ export { Box } from './components/Box/index.js';
67
+ // Mobile Components
68
+ export { default as SafeArea } from './components/SafeArea/SafeArea.svelte';
69
+ export { BottomSheet, BottomSheetHeader, BottomSheetBody } from './components/BottomSheet/index.js';
70
+ export { ActionSheet, ActionSheetItem } from './components/ActionSheet/index.js';
71
+ export { PullToRefresh } from './components/PullToRefresh/index.js';
72
+ export { SwipeActions, SwipeAction } from './components/SwipeActions/index.js';
73
+ export { FAB, FABGroup } from './components/FAB/index.js';
@@ -94,6 +94,7 @@
94
94
  --color-bg-hover: var(--gray-4);
95
95
  --color-bg-active: var(--gray-5);
96
96
  --color-bg-elevated: #ffffff;
97
+ --color-bg-card: #ffffff;
97
98
 
98
99
  /* Text */
99
100
  --color-text: var(--gray-12);
@@ -339,6 +340,8 @@
339
340
 
340
341
  /* Semantic overrides for dark mode */
341
342
  --color-bg-elevated: var(--gray-2);
343
+ --color-bg-card: var(--gray-3);
344
+ --color-bg-muted: var(--gray-4);
342
345
  --color-text-inverse: var(--gray-12);
343
346
 
344
347
  /* Shadows for dark mode */
@@ -426,6 +429,8 @@
426
429
 
427
430
  /* Semantic overrides */
428
431
  --color-bg-elevated: var(--gray-2);
432
+ --color-bg-card: var(--gray-3);
433
+ --color-bg-muted: var(--gray-4);
429
434
  --color-text-inverse: var(--gray-12);
430
435
  }
431
436
  }
@@ -0,0 +1,93 @@
1
+ export type CardVariant = 'elevated' | 'outlined' | 'filled';
2
+ export interface CardProps {
3
+ variant?: CardVariant;
4
+ clickable?: boolean;
5
+ class?: string;
6
+ }
7
+ export interface CardHeaderProps {
8
+ class?: string;
9
+ }
10
+ export interface CardBodyProps {
11
+ class?: string;
12
+ }
13
+ export interface CardFooterProps {
14
+ class?: string;
15
+ }
16
+ export type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
17
+ export type AvatarShape = 'circle' | 'square';
18
+ export interface AvatarProps {
19
+ src?: string;
20
+ alt?: string;
21
+ name?: string;
22
+ size?: AvatarSize;
23
+ shape?: AvatarShape;
24
+ class?: string;
25
+ }
26
+ export interface AvatarGroupProps {
27
+ max?: number;
28
+ size?: AvatarSize;
29
+ spacing?: string;
30
+ class?: string;
31
+ }
32
+ export type TagVariant = 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'error';
33
+ export type TagSize = 'sm' | 'md' | 'lg';
34
+ export interface TagProps {
35
+ variant?: TagVariant;
36
+ size?: TagSize;
37
+ dismissible?: boolean;
38
+ ondismiss?: () => void;
39
+ class?: string;
40
+ }
41
+ export type EmptyStateSize = 'sm' | 'md' | 'lg';
42
+ export interface EmptyStateProps {
43
+ title: string;
44
+ description?: string;
45
+ size?: EmptyStateSize;
46
+ class?: string;
47
+ }
48
+ export interface ListProps {
49
+ dividers?: boolean;
50
+ class?: string;
51
+ }
52
+ export interface ListItemProps {
53
+ clickable?: boolean;
54
+ selected?: boolean;
55
+ disabled?: boolean;
56
+ class?: string;
57
+ }
58
+ export interface TableProps {
59
+ striped?: boolean;
60
+ bordered?: boolean;
61
+ hoverable?: boolean;
62
+ compact?: boolean;
63
+ stickyHeader?: boolean;
64
+ class?: string;
65
+ }
66
+ export interface TableHeadProps {
67
+ class?: string;
68
+ }
69
+ export type TableHeaderAlign = 'left' | 'center' | 'right';
70
+ export type TableHeaderSortDirection = 'asc' | 'desc' | null;
71
+ export interface TableHeaderProps {
72
+ sortable?: boolean;
73
+ sortDirection?: TableHeaderSortDirection;
74
+ onsort?: () => void;
75
+ align?: TableHeaderAlign;
76
+ class?: string;
77
+ }
78
+ export interface TableBodyProps {
79
+ class?: string;
80
+ }
81
+ export interface TableRowProps {
82
+ selected?: boolean;
83
+ clickable?: boolean;
84
+ disabled?: boolean;
85
+ class?: string;
86
+ }
87
+ export type TableCellAlign = 'left' | 'center' | 'right';
88
+ export interface TableCellProps {
89
+ align?: TableCellAlign;
90
+ truncate?: boolean;
91
+ nowrap?: boolean;
92
+ class?: string;
93
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,92 @@
1
+ export type AlertVariant = 'info' | 'success' | 'warning' | 'error';
2
+ export interface AlertProps {
3
+ variant?: AlertVariant;
4
+ dismissible?: boolean;
5
+ icon?: string;
6
+ class?: string;
7
+ }
8
+ export type ToastVariant = 'info' | 'success' | 'warning' | 'error';
9
+ export type ToastPosition = 'top' | 'top-left' | 'top-right' | 'bottom' | 'bottom-left' | 'bottom-right';
10
+ export interface ToastData {
11
+ id: string;
12
+ message: string;
13
+ variant?: ToastVariant;
14
+ duration?: number;
15
+ action?: {
16
+ label: string;
17
+ onClick: () => void;
18
+ };
19
+ dismissible?: boolean;
20
+ }
21
+ export interface ToastProps {
22
+ variant?: ToastVariant;
23
+ dismissible?: boolean;
24
+ progress?: boolean;
25
+ class?: string;
26
+ }
27
+ export interface ToastContainerProps {
28
+ position?: ToastPosition;
29
+ class?: string;
30
+ }
31
+ export type ModalSize = 'sm' | 'md' | 'lg' | 'full';
32
+ export interface ModalProps {
33
+ open?: boolean;
34
+ size?: ModalSize;
35
+ closeOnEscape?: boolean;
36
+ closeOnBackdrop?: boolean;
37
+ class?: string;
38
+ }
39
+ export interface ModalHeaderProps {
40
+ class?: string;
41
+ }
42
+ export interface ModalBodyProps {
43
+ class?: string;
44
+ }
45
+ export interface ModalFooterProps {
46
+ class?: string;
47
+ }
48
+ export type ProgressSize = 'sm' | 'md' | 'lg';
49
+ export interface ProgressBarProps {
50
+ value?: number;
51
+ max?: number;
52
+ indeterminate?: boolean;
53
+ size?: ProgressSize;
54
+ class?: string;
55
+ }
56
+ export interface ProgressCircleProps {
57
+ value?: number;
58
+ max?: number;
59
+ indeterminate?: boolean;
60
+ size?: ProgressSize;
61
+ strokeWidth?: number;
62
+ class?: string;
63
+ }
64
+ export interface SpinnerProps {
65
+ size?: ProgressSize;
66
+ class?: string;
67
+ }
68
+ export type TooltipSide = 'top' | 'right' | 'bottom' | 'left';
69
+ export interface TooltipProps {
70
+ content: string;
71
+ side?: TooltipSide;
72
+ delay?: number;
73
+ class?: string;
74
+ }
75
+ export type PopoverSide = 'top' | 'right' | 'bottom' | 'left';
76
+ export interface PopoverProps {
77
+ class?: string;
78
+ }
79
+ export interface PopoverTriggerProps {
80
+ class?: string;
81
+ }
82
+ export interface PopoverContentProps {
83
+ side?: PopoverSide;
84
+ class?: string;
85
+ }
86
+ export type SkeletonVariant = 'text' | 'circle' | 'rectangle';
87
+ export interface SkeletonProps {
88
+ variant?: SkeletonVariant;
89
+ width?: string;
90
+ height?: string;
91
+ class?: string;
92
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -127,3 +127,7 @@ export interface SwitchProps {
127
127
  class?: string;
128
128
  }
129
129
  export type { TabsOrientation, TabsProps, TabListProps, TabTriggerProps, TabContentProps, MenuProps, MenuTriggerProps, MenuContentProps, MenuItemProps, MenuSeparatorProps, MenuSubProps, MenuSubTriggerProps, MenuSubContentProps, BreadcrumbItemData, BreadcrumbsProps, BreadcrumbItemProps, BottomNavItemData, BottomNavProps, BottomNavItemProps, NavItemProps, NavbarProps, SidebarItemData, SidebarProps, SidebarItemProps, SidebarGroupProps } from './navigation.js';
130
+ export type { AlertVariant, AlertProps, ToastVariant, ToastPosition, ToastData, ToastProps, ToastContainerProps, ModalSize, ModalProps, ModalHeaderProps, ModalBodyProps, ModalFooterProps, ProgressSize, ProgressBarProps, ProgressCircleProps, SpinnerProps, TooltipSide, TooltipProps, PopoverSide, PopoverProps, PopoverTriggerProps, PopoverContentProps, SkeletonVariant, SkeletonProps } from './feedback.js';
131
+ export type { CardVariant, CardProps, CardHeaderProps, CardBodyProps, CardFooterProps, AvatarSize, AvatarShape, AvatarProps, AvatarGroupProps, TagVariant, TagSize, TagProps, EmptyStateSize, EmptyStateProps, ListProps, ListItemProps, TableProps, TableHeadProps, TableHeaderAlign, TableHeaderSortDirection, TableHeaderProps, TableBodyProps, TableRowProps, TableCellAlign, TableCellProps } from './data-display.js';
132
+ export type { ContainerSize, ContainerProps, GridAlign, GridJustify, SpacingToken, GridProps, GridItemProps, StackDirection, StackProps, DividerOrientation, DividerProps, SpacerSize, SpacerProps, AspectRatioPreset, AspectRatioProps, CenterProps, BoxProps } from './layout.js';
133
+ export type { SafeAreaEdge, SafeAreaProps, BottomSheetSnapPoint, BottomSheetProps, BottomSheetHeaderProps, BottomSheetBodyProps, ActionSheetAction, ActionSheetProps, ActionSheetItemProps, PullToRefreshProps, SwipeActionSide, SwipeActionData, SwipeActionsProps, SwipeActionProps, FABSize, FABPosition, FABProps, FABAction, FABGroupProps } from './mobile.js';
@@ -0,0 +1,57 @@
1
+ export type ContainerSize = 'sm' | 'md' | 'lg' | 'xl' | 'full';
2
+ export interface ContainerProps {
3
+ size?: ContainerSize;
4
+ centered?: boolean;
5
+ class?: string;
6
+ }
7
+ export type GridAlign = 'start' | 'center' | 'end' | 'stretch';
8
+ export type GridJustify = 'start' | 'center' | 'end' | 'space-between' | 'space-around' | 'space-evenly';
9
+ export type SpacingToken = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl';
10
+ export interface GridProps {
11
+ columns?: number;
12
+ gap?: SpacingToken;
13
+ align?: GridAlign;
14
+ justify?: GridJustify;
15
+ class?: string;
16
+ }
17
+ export interface GridItemProps {
18
+ colSpan?: number;
19
+ rowSpan?: number;
20
+ class?: string;
21
+ }
22
+ export type StackDirection = 'row' | 'column';
23
+ export interface StackProps {
24
+ direction?: StackDirection;
25
+ gap?: SpacingToken;
26
+ align?: GridAlign;
27
+ justify?: GridJustify;
28
+ wrap?: boolean;
29
+ class?: string;
30
+ }
31
+ export type DividerOrientation = 'horizontal' | 'vertical';
32
+ export interface DividerProps {
33
+ orientation?: DividerOrientation;
34
+ decorative?: boolean;
35
+ class?: string;
36
+ }
37
+ export type SpacerSize = SpacingToken | 'fill';
38
+ export interface SpacerProps {
39
+ size?: SpacerSize;
40
+ class?: string;
41
+ }
42
+ export type AspectRatioPreset = '1:1' | '16:9' | '4:3' | '21:9' | '3:2';
43
+ export interface AspectRatioProps {
44
+ ratio?: number | AspectRatioPreset;
45
+ class?: string;
46
+ }
47
+ export interface CenterProps {
48
+ inline?: boolean;
49
+ class?: string;
50
+ }
51
+ export interface BoxProps {
52
+ padding?: SpacingToken;
53
+ margin?: SpacingToken;
54
+ radius?: SpacingToken;
55
+ as?: keyof HTMLElementTagNameMap;
56
+ class?: string;
57
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,91 @@
1
+ export type SafeAreaEdge = 'top' | 'right' | 'bottom' | 'left';
2
+ export interface SafeAreaProps {
3
+ edges?: SafeAreaEdge[];
4
+ class?: string;
5
+ }
6
+ export type BottomSheetSnapPoint = 'min' | 'half' | 'full' | number;
7
+ export interface BottomSheetProps {
8
+ open?: boolean;
9
+ snapPoints?: BottomSheetSnapPoint[];
10
+ defaultSnapPoint?: BottomSheetSnapPoint;
11
+ showHandle?: boolean;
12
+ closeOnBackdrop?: boolean;
13
+ closeOnEscape?: boolean;
14
+ class?: string;
15
+ }
16
+ export interface BottomSheetHeaderProps {
17
+ sticky?: boolean;
18
+ class?: string;
19
+ }
20
+ export interface BottomSheetBodyProps {
21
+ class?: string;
22
+ }
23
+ export interface ActionSheetAction {
24
+ label: string;
25
+ icon?: string;
26
+ destructive?: boolean;
27
+ disabled?: boolean;
28
+ onSelect?: () => void;
29
+ }
30
+ export interface ActionSheetProps {
31
+ open?: boolean;
32
+ title?: string;
33
+ description?: string;
34
+ cancelLabel?: string;
35
+ showCancel?: boolean;
36
+ closeOnSelect?: boolean;
37
+ class?: string;
38
+ }
39
+ export interface ActionSheetItemProps {
40
+ destructive?: boolean;
41
+ disabled?: boolean;
42
+ icon?: string;
43
+ class?: string;
44
+ }
45
+ export interface PullToRefreshProps {
46
+ refreshing?: boolean;
47
+ threshold?: number;
48
+ maxPull?: number;
49
+ disabled?: boolean;
50
+ class?: string;
51
+ }
52
+ export type SwipeActionSide = 'left' | 'right';
53
+ export interface SwipeActionData {
54
+ label: string;
55
+ icon?: string;
56
+ color?: string;
57
+ onAction?: () => void;
58
+ }
59
+ export interface SwipeActionsProps {
60
+ leftActions?: SwipeActionData[];
61
+ rightActions?: SwipeActionData[];
62
+ threshold?: number;
63
+ disabled?: boolean;
64
+ class?: string;
65
+ }
66
+ export interface SwipeActionProps {
67
+ color?: string;
68
+ class?: string;
69
+ }
70
+ export type FABSize = 'sm' | 'md' | 'lg';
71
+ export type FABPosition = 'bottom-right' | 'bottom-left' | 'bottom-center' | 'top-right' | 'top-left';
72
+ export interface FABProps {
73
+ size?: FABSize;
74
+ position?: FABPosition;
75
+ extended?: boolean;
76
+ disabled?: boolean;
77
+ class?: string;
78
+ }
79
+ export interface FABAction {
80
+ label: string;
81
+ icon: string;
82
+ onAction?: () => void;
83
+ }
84
+ export interface FABGroupProps {
85
+ actions: FABAction[];
86
+ icon?: string;
87
+ closeIcon?: string;
88
+ position?: FABPosition;
89
+ direction?: 'up' | 'down' | 'left' | 'right';
90
+ class?: string;
91
+ }
@@ -0,0 +1 @@
1
+ export {};