@true-tech-team/react-components 0.0.4 → 0.0.6

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 (213) hide show
  1. package/index.css +1 -1
  2. package/index.d.ts +10 -0
  3. package/index.js +1 -1
  4. package/index.mjs +15961 -6871
  5. package/lib/components/buttons/ButtonToggleGroup/ButtonToggleGroup.d.ts +79 -0
  6. package/lib/components/buttons/ButtonToggleGroup/ButtonToggleGroupContext.d.ts +38 -0
  7. package/lib/components/buttons/ButtonToggleGroup/ButtonToggleGroupItem.d.ts +37 -0
  8. package/lib/components/buttons/ButtonToggleGroup/index.d.ts +7 -0
  9. package/lib/components/buttons/ToggleButton/ToggleButton.d.ts +96 -0
  10. package/lib/components/buttons/ToggleButton/index.d.ts +3 -0
  11. package/lib/components/display/Icon/icons/BookmarkFilled.d.ts +3 -0
  12. package/lib/components/display/Icon/icons/ChevronsLeft.d.ts +3 -0
  13. package/lib/components/display/Icon/icons/ChevronsRight.d.ts +3 -0
  14. package/lib/components/display/Icon/icons/HeartFilled.d.ts +3 -0
  15. package/lib/components/display/Icon/icons/More.d.ts +3 -0
  16. package/lib/components/display/Icon/icons/StarFilled.d.ts +3 -0
  17. package/lib/components/display/Icon/icons/ThumbsUpFilled.d.ts +3 -0
  18. package/lib/components/display/Icon/icons/index.d.ts +15 -1
  19. package/lib/components/display/List/List.d.ts +6 -0
  20. package/lib/components/display/List/ListContext.d.ts +15 -0
  21. package/lib/components/display/List/ListEmpty.d.ts +25 -0
  22. package/lib/components/display/List/ListGroup.d.ts +36 -0
  23. package/lib/components/display/List/ListHeader.d.ts +62 -0
  24. package/lib/components/display/List/ListItem.d.ts +19 -0
  25. package/lib/components/display/List/ListSearch.d.ts +32 -0
  26. package/lib/components/display/List/ListSkeleton.d.ts +27 -0
  27. package/lib/components/display/List/hooks/index.d.ts +5 -0
  28. package/lib/components/display/List/hooks/useListExpand.d.ts +6 -0
  29. package/lib/components/display/List/hooks/useListFilter.d.ts +6 -0
  30. package/lib/components/display/List/hooks/useListGroups.d.ts +6 -0
  31. package/lib/components/display/List/hooks/useListKeyboardNav.d.ts +6 -0
  32. package/lib/components/display/List/hooks/useListSelection.d.ts +6 -0
  33. package/lib/components/display/List/index.d.ts +11 -0
  34. package/lib/components/display/List/types.d.ts +485 -0
  35. package/lib/components/display/List/utils.d.ts +47 -0
  36. package/lib/components/display/OverflowText/OverflowText.d.ts +81 -0
  37. package/lib/components/display/OverflowText/index.d.ts +2 -0
  38. package/lib/components/display/ScrollArea/ScrollArea.d.ts +112 -0
  39. package/lib/components/display/ScrollArea/index.d.ts +3 -0
  40. package/lib/components/display/Table/Table.d.ts +6 -0
  41. package/lib/components/display/Table/TableBody.d.ts +4 -0
  42. package/lib/components/display/Table/TableCell.d.ts +12 -0
  43. package/lib/components/display/Table/TableContext.d.ts +10 -0
  44. package/lib/components/display/Table/TableHeader.d.ts +4 -0
  45. package/lib/components/display/Table/TableRow.d.ts +9 -0
  46. package/lib/components/display/Table/TableSearch.d.ts +32 -0
  47. package/lib/components/display/Table/TableSkeleton.d.ts +12 -0
  48. package/lib/components/display/Table/hooks/index.d.ts +10 -0
  49. package/lib/components/display/Table/hooks/useInfiniteScroll.d.ts +11 -0
  50. package/lib/components/display/Table/hooks/useTableExpand.d.ts +10 -0
  51. package/lib/components/display/Table/hooks/useTableFilter.d.ts +22 -0
  52. package/lib/components/display/Table/hooks/useTableSelection.d.ts +16 -0
  53. package/lib/components/display/Table/hooks/useTableSort.d.ts +11 -0
  54. package/lib/components/display/Table/index.d.ts +13 -0
  55. package/lib/components/display/Table/types.d.ts +295 -0
  56. package/lib/components/display/Table/utils.d.ts +37 -0
  57. package/lib/components/display/Tabs/Tab.d.ts +41 -0
  58. package/lib/components/display/Tabs/TabList.d.ts +27 -0
  59. package/lib/components/display/Tabs/TabPanel.d.ts +31 -0
  60. package/lib/components/display/Tabs/Tabs.d.ts +90 -0
  61. package/lib/components/display/Tabs/TabsContext.d.ts +63 -0
  62. package/lib/components/display/Tabs/index.d.ts +11 -0
  63. package/lib/components/display/TruncatedList/TruncatedList.d.ts +69 -0
  64. package/lib/components/display/TruncatedList/index.d.ts +2 -0
  65. package/lib/components/display/index.d.ts +4 -0
  66. package/lib/components/dnd/DndProvider/DndContext.d.ts +91 -0
  67. package/lib/components/dnd/DndProvider/DndProvider.d.ts +37 -0
  68. package/lib/components/dnd/DndProvider/index.d.ts +3 -0
  69. package/lib/components/dnd/DragHandle/DragHandle.d.ts +41 -0
  70. package/lib/components/dnd/DragHandle/index.d.ts +2 -0
  71. package/lib/components/dnd/DragOverlay/DragOverlay.d.ts +39 -0
  72. package/lib/components/dnd/DragOverlay/index.d.ts +2 -0
  73. package/lib/components/dnd/KanbanBoard/KanbanBoard.d.ts +126 -0
  74. package/lib/components/dnd/KanbanBoard/KanbanBoardContext.d.ts +62 -0
  75. package/lib/components/dnd/KanbanBoard/KanbanCard.d.ts +76 -0
  76. package/lib/components/dnd/KanbanBoard/KanbanColumn.d.ts +43 -0
  77. package/lib/components/dnd/KanbanBoard/index.d.ts +5 -0
  78. package/lib/components/dnd/ResizablePanels/ResizablePanel.d.ts +53 -0
  79. package/lib/components/dnd/ResizablePanels/ResizablePanels.d.ts +43 -0
  80. package/lib/components/dnd/ResizablePanels/ResizablePanelsContext.d.ts +64 -0
  81. package/lib/components/dnd/ResizablePanels/ResizeHandle.d.ts +28 -0
  82. package/lib/components/dnd/ResizablePanels/index.d.ts +5 -0
  83. package/lib/components/dnd/SortableGrid/SortableGrid.d.ts +76 -0
  84. package/lib/components/dnd/SortableGrid/SortableGridItem.d.ts +47 -0
  85. package/lib/components/dnd/SortableGrid/index.d.ts +3 -0
  86. package/lib/components/dnd/SortableList/SortableItem.d.ts +76 -0
  87. package/lib/components/dnd/SortableList/SortableList.d.ts +98 -0
  88. package/lib/components/dnd/SortableList/SortableListContext.d.ts +42 -0
  89. package/lib/components/dnd/SortableList/index.d.ts +4 -0
  90. package/lib/components/dnd/hooks/index.d.ts +3 -0
  91. package/lib/components/dnd/hooks/useDraggable.d.ts +66 -0
  92. package/lib/components/dnd/hooks/useDroppable.d.ts +73 -0
  93. package/lib/components/dnd/hooks/useSortable.d.ts +94 -0
  94. package/lib/components/dnd/index.d.ts +8 -0
  95. package/lib/components/filters/FilterContext.d.ts +34 -0
  96. package/lib/components/filters/core/ActiveFilters/ActiveFilters.d.ts +16 -0
  97. package/lib/components/filters/core/ActiveFilters/index.d.ts +2 -0
  98. package/lib/components/filters/core/FilterField/FilterField.d.ts +17 -0
  99. package/lib/components/filters/core/FilterField/index.d.ts +2 -0
  100. package/lib/components/filters/core/FilterProvider/FilterProvider.d.ts +4 -0
  101. package/lib/components/filters/core/FilterProvider/index.d.ts +2 -0
  102. package/lib/components/filters/core/FilterSection/FilterSection.d.ts +16 -0
  103. package/lib/components/filters/core/FilterSection/index.d.ts +2 -0
  104. package/lib/components/filters/core/index.d.ts +7 -0
  105. package/lib/components/filters/fields/CheckboxFilter.d.ts +17 -0
  106. package/lib/components/filters/fields/DateFilter.d.ts +21 -0
  107. package/lib/components/filters/fields/DateRangeFilter.d.ts +19 -0
  108. package/lib/components/filters/fields/ListSelectFilter.d.ts +19 -0
  109. package/lib/components/filters/fields/MultiSelectFilter.d.ts +19 -0
  110. package/lib/components/filters/fields/NumberFilter.d.ts +19 -0
  111. package/lib/components/filters/fields/NumberRangeFilter.d.ts +19 -0
  112. package/lib/components/filters/fields/RatingFilter.d.ts +19 -0
  113. package/lib/components/filters/fields/SelectFilter.d.ts +21 -0
  114. package/lib/components/filters/fields/TextFilter.d.ts +21 -0
  115. package/lib/components/filters/fields/ToggleFilter.d.ts +17 -0
  116. package/lib/components/filters/fields/index.d.ts +25 -0
  117. package/lib/components/filters/hooks/index.d.ts +9 -0
  118. package/lib/components/filters/hooks/useFilter.d.ts +57 -0
  119. package/lib/components/filters/hooks/useFilterDependencies.d.ts +40 -0
  120. package/lib/components/filters/hooks/useFilterOptions.d.ts +70 -0
  121. package/lib/components/filters/index.d.ts +43 -0
  122. package/lib/components/filters/layouts/FilterAccordion/FilterAccordion.d.ts +15 -0
  123. package/lib/components/filters/layouts/FilterAccordion/index.d.ts +2 -0
  124. package/lib/components/filters/layouts/FilterBar/FilterBar.d.ts +18 -0
  125. package/lib/components/filters/layouts/FilterBar/index.d.ts +2 -0
  126. package/lib/components/filters/layouts/FilterModal/FilterModal.d.ts +24 -0
  127. package/lib/components/filters/layouts/FilterModal/index.d.ts +2 -0
  128. package/lib/components/filters/layouts/FilterPopover/FilterPopover.d.ts +19 -0
  129. package/lib/components/filters/layouts/FilterPopover/index.d.ts +2 -0
  130. package/lib/components/filters/layouts/FilterSidebar/FilterSidebar.d.ts +20 -0
  131. package/lib/components/filters/layouts/FilterSidebar/index.d.ts +2 -0
  132. package/lib/components/filters/layouts/index.d.ts +8 -0
  133. package/lib/components/filters/types.d.ts +937 -0
  134. package/lib/components/index.d.ts +52 -0
  135. package/lib/components/inputs/Checkbox/Checkbox.d.ts +2 -2
  136. package/lib/components/inputs/CheckboxGroup/CheckboxGroup.d.ts +122 -0
  137. package/lib/components/inputs/CheckboxGroup/CheckboxGroupContext.d.ts +42 -0
  138. package/lib/components/inputs/CheckboxGroup/CheckboxGroupItem.d.ts +50 -0
  139. package/lib/components/inputs/CheckboxGroup/index.d.ts +7 -0
  140. package/lib/components/inputs/NumberInput/NumberInput.d.ts +3 -1
  141. package/lib/components/layout/AdaptiveGrid/AdaptiveGrid.d.ts +100 -0
  142. package/lib/components/layout/AdaptiveGrid/index.d.ts +2 -0
  143. package/lib/components/layout/MasonryLayout/MasonryLayout.d.ts +74 -0
  144. package/lib/components/layout/MasonryLayout/index.d.ts +2 -0
  145. package/lib/components/layout/Panes/Pane.d.ts +72 -0
  146. package/lib/components/layout/Panes/Panes.d.ts +75 -0
  147. package/lib/components/layout/Panes/PanesContext.d.ts +60 -0
  148. package/lib/components/layout/Panes/index.d.ts +6 -0
  149. package/lib/components/layout/ResponsiveStack/ResponsiveStack.d.ts +99 -0
  150. package/lib/components/layout/ResponsiveStack/index.d.ts +2 -0
  151. package/lib/components/layout/index.d.ts +4 -0
  152. package/lib/components/navigation/BottomNavigation/BottomNavigation.d.ts +53 -0
  153. package/lib/components/navigation/BottomNavigation/BottomNavigationContext.d.ts +27 -0
  154. package/lib/components/navigation/BottomNavigation/BottomNavigationItem.d.ts +59 -0
  155. package/lib/components/navigation/BottomNavigation/index.d.ts +7 -0
  156. package/lib/components/navigation/Breadcrumbs/BreadcrumbItem.d.ts +37 -0
  157. package/lib/components/navigation/Breadcrumbs/BreadcrumbSeparator.d.ts +22 -0
  158. package/lib/components/navigation/Breadcrumbs/Breadcrumbs.d.ts +96 -0
  159. package/lib/components/navigation/Breadcrumbs/index.d.ts +9 -0
  160. package/lib/components/navigation/Breadcrumbs/useBreadcrumbsFromPath.d.ts +73 -0
  161. package/lib/components/navigation/CollapsibleSidebar/CollapsibleSidebar.d.ts +113 -0
  162. package/lib/components/navigation/CollapsibleSidebar/index.d.ts +2 -0
  163. package/lib/components/navigation/NavLink/NavLink.d.ts +74 -0
  164. package/lib/components/navigation/NavLink/index.d.ts +3 -0
  165. package/lib/components/navigation/Navbar/Navbar.d.ts +81 -0
  166. package/lib/components/navigation/Navbar/NavbarActions.d.ts +21 -0
  167. package/lib/components/navigation/Navbar/NavbarBrand.d.ts +29 -0
  168. package/lib/components/navigation/Navbar/NavbarCollapse.d.ts +26 -0
  169. package/lib/components/navigation/Navbar/NavbarContext.d.ts +50 -0
  170. package/lib/components/navigation/Navbar/NavbarNav.d.ts +22 -0
  171. package/lib/components/navigation/Navbar/NavbarToggle.d.ts +21 -0
  172. package/lib/components/navigation/Navbar/index.d.ts +15 -0
  173. package/lib/components/navigation/Pagination/Pagination.d.ts +99 -0
  174. package/lib/components/navigation/Pagination/index.d.ts +3 -0
  175. package/lib/components/navigation/SideNav/SideNav.d.ts +89 -0
  176. package/lib/components/navigation/SideNav/SideNavContext.d.ts +43 -0
  177. package/lib/components/navigation/SideNav/SideNavDivider.d.ts +22 -0
  178. package/lib/components/navigation/SideNav/SideNavGroup.d.ts +44 -0
  179. package/lib/components/navigation/SideNav/SideNavItem.d.ts +71 -0
  180. package/lib/components/navigation/SideNav/index.d.ts +11 -0
  181. package/lib/components/navigation/Stepper/Step.d.ts +57 -0
  182. package/lib/components/navigation/Stepper/Stepper.d.ts +80 -0
  183. package/lib/components/navigation/Stepper/StepperContext.d.ts +58 -0
  184. package/lib/components/navigation/Stepper/index.d.ts +7 -0
  185. package/lib/components/navigation/index.d.ts +16 -0
  186. package/lib/components/overlays/Alert/Alert.d.ts +102 -0
  187. package/lib/components/overlays/Alert/AlertContext.d.ts +94 -0
  188. package/lib/components/overlays/Alert/AlertPresets.d.ts +42 -0
  189. package/lib/components/overlays/Alert/AlertProvider.d.ts +40 -0
  190. package/lib/components/overlays/Alert/index.d.ts +11 -0
  191. package/lib/components/overlays/Dialog/Dialog.d.ts +197 -0
  192. package/lib/components/overlays/Dialog/DialogContext.d.ts +75 -0
  193. package/lib/components/overlays/Dialog/DialogProvider.d.ts +30 -0
  194. package/lib/components/overlays/Dialog/index.d.ts +9 -0
  195. package/lib/components/overlays/Toast/Toast.d.ts +103 -0
  196. package/lib/components/overlays/Toast/ToastContainer.d.ts +37 -0
  197. package/lib/components/overlays/Toast/ToastContext.d.ts +126 -0
  198. package/lib/components/overlays/Toast/ToastProvider.d.ts +71 -0
  199. package/lib/components/overlays/Toast/index.d.ts +11 -0
  200. package/lib/hooks/index.d.ts +10 -0
  201. package/lib/hooks/useAlert/index.d.ts +2 -0
  202. package/lib/hooks/useAlert/useAlert.d.ts +99 -0
  203. package/lib/hooks/useAsyncToast/index.d.ts +2 -0
  204. package/lib/hooks/useAsyncToast/useAsyncToast.d.ts +93 -0
  205. package/lib/hooks/useDialog/index.d.ts +2 -0
  206. package/lib/hooks/useDialog/useDialog.d.ts +58 -0
  207. package/lib/hooks/useResizeObserver/index.d.ts +2 -0
  208. package/lib/hooks/useResizeObserver/useResizeObserver.d.ts +69 -0
  209. package/lib/hooks/useToast/index.d.ts +2 -0
  210. package/lib/hooks/useToast/useToast.d.ts +97 -0
  211. package/lib/providers/GlobalProvider/GlobalProvider.d.ts +16 -1
  212. package/package.json +1 -1
  213. package/README.md +0 -688
@@ -0,0 +1,113 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps } from '../../../types';
3
+ /**
4
+ * Props for the CollapsibleSidebar component
5
+ */
6
+ export interface CollapsibleSidebarProps extends BaseComponentProps {
7
+ /**
8
+ * Controlled collapsed state
9
+ */
10
+ collapsed?: boolean;
11
+ /**
12
+ * Default collapsed state (uncontrolled)
13
+ * @default false
14
+ */
15
+ defaultCollapsed?: boolean;
16
+ /**
17
+ * Width when expanded (px)
18
+ * @default 240
19
+ */
20
+ expandedWidth?: number;
21
+ /**
22
+ * Width when collapsed (px)
23
+ * @default 64
24
+ */
25
+ collapsedWidth?: number;
26
+ /**
27
+ * Auto-collapse below this container width (px)
28
+ * Uses parent container width, not viewport
29
+ */
30
+ collapseBreakpoint?: number;
31
+ /**
32
+ * Auto-hide below this container width (px)
33
+ * Uses parent container width, not viewport
34
+ */
35
+ hideBreakpoint?: number;
36
+ /**
37
+ * Position of the sidebar
38
+ * @default 'left'
39
+ */
40
+ position?: 'left' | 'right';
41
+ /**
42
+ * Callback when collapsed state changes
43
+ */
44
+ onCollapsedChange?: (collapsed: boolean) => void;
45
+ /**
46
+ * Callback when hidden state changes (due to hideBreakpoint)
47
+ */
48
+ onHiddenChange?: (hidden: boolean) => void;
49
+ /**
50
+ * Animation duration (ms)
51
+ * @default 250
52
+ */
53
+ animationDuration?: number;
54
+ /**
55
+ * Animation easing
56
+ * @default 'ease-in-out'
57
+ */
58
+ animationEasing?: string;
59
+ /**
60
+ * Header content (always visible, above scrollable content)
61
+ */
62
+ header?: React.ReactNode;
63
+ /**
64
+ * Footer content (always visible, below scrollable content)
65
+ */
66
+ footer?: React.ReactNode;
67
+ /**
68
+ * Main content of the sidebar
69
+ */
70
+ children: React.ReactNode;
71
+ }
72
+ /**
73
+ * CollapsibleSidebar - A sidebar that collapses based on container width or user interaction
74
+ *
75
+ * @example
76
+ * Basic usage:
77
+ * ```tsx
78
+ * <CollapsibleSidebar
79
+ * header={<Logo />}
80
+ * footer={<UserProfile />}
81
+ * >
82
+ * <NavItem icon={<HomeIcon />}>Home</NavItem>
83
+ * <NavItem icon={<SettingsIcon />}>Settings</NavItem>
84
+ * </CollapsibleSidebar>
85
+ * ```
86
+ *
87
+ * @example
88
+ * Controlled collapsed state:
89
+ * ```tsx
90
+ * const [collapsed, setCollapsed] = useState(false);
91
+ *
92
+ * <CollapsibleSidebar
93
+ * collapsed={collapsed}
94
+ * onCollapsedChange={setCollapsed}
95
+ * collapseBreakpoint={768}
96
+ * >
97
+ * {navItems}
98
+ * </CollapsibleSidebar>
99
+ * ```
100
+ *
101
+ * @example
102
+ * Auto-hide on small screens:
103
+ * ```tsx
104
+ * <CollapsibleSidebar
105
+ * collapseBreakpoint={1024}
106
+ * hideBreakpoint={768}
107
+ * >
108
+ * {navItems}
109
+ * </CollapsibleSidebar>
110
+ * ```
111
+ */
112
+ export declare const CollapsibleSidebar: React.ForwardRefExoticComponent<CollapsibleSidebarProps & React.RefAttributes<HTMLDivElement>>;
113
+ export default CollapsibleSidebar;
@@ -0,0 +1,2 @@
1
+ export { CollapsibleSidebar } from './CollapsibleSidebar';
2
+ export type { CollapsibleSidebarProps } from './CollapsibleSidebar';
@@ -0,0 +1,74 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps, ComponentSize } from '../../../types';
3
+ import { IconName } from '../../display/Icon';
4
+ export type NavLinkVariant = 'default' | 'underline' | 'pill' | 'ghost';
5
+ export interface NavLinkProps extends BaseComponentProps {
6
+ /**
7
+ * Link destination
8
+ */
9
+ href: string;
10
+ /**
11
+ * Whether link is active
12
+ */
13
+ active?: boolean;
14
+ /**
15
+ * Icon to display
16
+ */
17
+ icon?: React.ReactNode | IconName;
18
+ /**
19
+ * Icon position
20
+ * @default 'start'
21
+ */
22
+ iconPosition?: 'start' | 'end';
23
+ /**
24
+ * Visual variant
25
+ * @default 'default'
26
+ */
27
+ variant?: NavLinkVariant;
28
+ /**
29
+ * Size
30
+ * @default 'md'
31
+ */
32
+ size?: ComponentSize;
33
+ /**
34
+ * Whether link is disabled
35
+ */
36
+ disabled?: boolean;
37
+ /**
38
+ * Click handler
39
+ */
40
+ onClick?: (e: React.MouseEvent<HTMLAnchorElement>) => void;
41
+ /**
42
+ * Link content
43
+ */
44
+ children: React.ReactNode;
45
+ /**
46
+ * Target attribute
47
+ */
48
+ target?: string;
49
+ /**
50
+ * Rel attribute (defaults to 'noopener noreferrer' when target='_blank')
51
+ */
52
+ rel?: string;
53
+ }
54
+ /**
55
+ * NavLink - Reusable navigation link with active state support
56
+ *
57
+ * @example
58
+ * ```tsx
59
+ * // Basic usage
60
+ * <NavLink href="/home">Home</NavLink>
61
+ *
62
+ * // With icon
63
+ * <NavLink href="/settings" icon="settings">Settings</NavLink>
64
+ *
65
+ * // Active state
66
+ * <NavLink href="/dashboard" active>Dashboard</NavLink>
67
+ *
68
+ * // Different variants
69
+ * <NavLink href="/about" variant="underline">About</NavLink>
70
+ * <NavLink href="/profile" variant="pill" active>Profile</NavLink>
71
+ * ```
72
+ */
73
+ export declare const NavLink: React.ForwardRefExoticComponent<NavLinkProps & React.RefAttributes<HTMLAnchorElement>>;
74
+ export default NavLink;
@@ -0,0 +1,3 @@
1
+ export { NavLink } from './NavLink';
2
+ export type { NavLinkProps, NavLinkVariant } from './NavLink';
3
+ export { default } from './NavLink';
@@ -0,0 +1,81 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps, ComponentSize } from '../../../types';
3
+ import { NavbarVariant, NavbarPosition } from './NavbarContext';
4
+ export interface NavbarProps extends BaseComponentProps {
5
+ /**
6
+ * Visual variant
7
+ * @default 'solid'
8
+ */
9
+ variant?: NavbarVariant;
10
+ /**
11
+ * Position behavior
12
+ * @default 'sticky'
13
+ */
14
+ position?: NavbarPosition;
15
+ /**
16
+ * Size (height)
17
+ * @default 'md'
18
+ */
19
+ size?: ComponentSize;
20
+ /**
21
+ * Alignment of nav items
22
+ * @default 'left'
23
+ */
24
+ alignment?: 'left' | 'center';
25
+ /**
26
+ * Controlled expanded state (mobile menu)
27
+ */
28
+ expanded?: boolean;
29
+ /**
30
+ * Default expanded state
31
+ * @default false
32
+ */
33
+ defaultExpanded?: boolean;
34
+ /**
35
+ * Callback when mobile menu toggles
36
+ */
37
+ onExpandedChange?: (expanded: boolean) => void;
38
+ /**
39
+ * Breakpoint for mobile collapse (px)
40
+ * @default 768
41
+ */
42
+ collapseBreakpoint?: number;
43
+ /**
44
+ * Children (NavbarBrand, NavbarNav, NavbarActions)
45
+ */
46
+ children: React.ReactNode;
47
+ }
48
+ /**
49
+ * Navbar - Top navigation bar for branding and primary navigation
50
+ *
51
+ * @example
52
+ * ```tsx
53
+ * // Basic usage
54
+ * <Navbar>
55
+ * <NavbarBrand href="/">
56
+ * <Logo />
57
+ * <span>My App</span>
58
+ * </NavbarBrand>
59
+ * <NavbarNav>
60
+ * <NavLink href="/home">Home</NavLink>
61
+ * <NavLink href="/about">About</NavLink>
62
+ * </NavbarNav>
63
+ * <NavbarActions>
64
+ * <Button>Sign In</Button>
65
+ * </NavbarActions>
66
+ * </Navbar>
67
+ *
68
+ * // With mobile menu
69
+ * <Navbar>
70
+ * <NavbarBrand href="/">Logo</NavbarBrand>
71
+ * <NavbarToggle />
72
+ * <NavbarCollapse>
73
+ * <NavbarNav>
74
+ * <NavLink href="/home">Home</NavLink>
75
+ * </NavbarNav>
76
+ * </NavbarCollapse>
77
+ * </Navbar>
78
+ * ```
79
+ */
80
+ export declare const Navbar: React.ForwardRefExoticComponent<NavbarProps & React.RefAttributes<HTMLElement>>;
81
+ export default Navbar;
@@ -0,0 +1,21 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps } from '../../../types';
3
+ export interface NavbarActionsProps extends BaseComponentProps {
4
+ /**
5
+ * Action elements (buttons, menu, etc.)
6
+ */
7
+ children: React.ReactNode;
8
+ }
9
+ /**
10
+ * NavbarActions - Actions slot for buttons, user menu, etc.
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <NavbarActions>
15
+ * <Button variant="ghost">Sign In</Button>
16
+ * <Button variant="primary">Sign Up</Button>
17
+ * </NavbarActions>
18
+ * ```
19
+ */
20
+ export declare const NavbarActions: React.ForwardRefExoticComponent<NavbarActionsProps & React.RefAttributes<HTMLDivElement>>;
21
+ export default NavbarActions;
@@ -0,0 +1,29 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps } from '../../../types';
3
+ export interface NavbarBrandProps extends BaseComponentProps {
4
+ /**
5
+ * Brand content (logo, text, etc.)
6
+ */
7
+ children: React.ReactNode;
8
+ /**
9
+ * Link href
10
+ */
11
+ href?: string;
12
+ /**
13
+ * Click handler
14
+ */
15
+ onClick?: (e: React.MouseEvent<HTMLAnchorElement | HTMLDivElement>) => void;
16
+ }
17
+ /**
18
+ * NavbarBrand - Logo/branding slot for the Navbar
19
+ *
20
+ * @example
21
+ * ```tsx
22
+ * <NavbarBrand href="/">
23
+ * <Logo />
24
+ * <span>My App</span>
25
+ * </NavbarBrand>
26
+ * ```
27
+ */
28
+ export declare const NavbarBrand: React.ForwardRefExoticComponent<NavbarBrandProps & React.RefAttributes<HTMLDivElement>>;
29
+ export default NavbarBrand;
@@ -0,0 +1,26 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps } from '../../../types';
3
+ export interface NavbarCollapseProps extends BaseComponentProps {
4
+ /**
5
+ * Content to show in collapsed mobile menu
6
+ */
7
+ children: React.ReactNode;
8
+ }
9
+ /**
10
+ * NavbarCollapse - Collapsible container for mobile menu content
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <NavbarCollapse>
15
+ * <NavbarNav>
16
+ * <NavLink href="/home">Home</NavLink>
17
+ * <NavLink href="/about">About</NavLink>
18
+ * </NavbarNav>
19
+ * <NavbarActions>
20
+ * <Button>Sign In</Button>
21
+ * </NavbarActions>
22
+ * </NavbarCollapse>
23
+ * ```
24
+ */
25
+ export declare const NavbarCollapse: React.ForwardRefExoticComponent<NavbarCollapseProps & React.RefAttributes<HTMLDivElement>>;
26
+ export default NavbarCollapse;
@@ -0,0 +1,50 @@
1
+ import { ComponentSize } from '../../../types';
2
+ export type NavbarVariant = 'solid' | 'transparent' | 'blur';
3
+ export type NavbarPosition = 'fixed' | 'sticky' | 'static';
4
+ export interface NavbarContextValue {
5
+ /**
6
+ * Unique ID for this navbar instance
7
+ */
8
+ navbarId: string;
9
+ /**
10
+ * Visual variant
11
+ */
12
+ variant: NavbarVariant;
13
+ /**
14
+ * Size (height)
15
+ */
16
+ size: ComponentSize;
17
+ /**
18
+ * Position behavior
19
+ */
20
+ position: NavbarPosition;
21
+ /**
22
+ * Whether mobile menu is expanded
23
+ */
24
+ isExpanded: boolean;
25
+ /**
26
+ * Toggle mobile menu
27
+ */
28
+ setExpanded: (expanded: boolean) => void;
29
+ /**
30
+ * Toggle function for convenience
31
+ */
32
+ toggle: () => void;
33
+ /**
34
+ * Alignment of nav items
35
+ */
36
+ alignment: 'left' | 'center';
37
+ /**
38
+ * Whether navbar is in mobile mode
39
+ */
40
+ isMobile: boolean;
41
+ }
42
+ export declare const NavbarContext: import('react').Context<NavbarContextValue | null>;
43
+ /**
44
+ * Hook to access navbar context (returns null if outside Navbar)
45
+ */
46
+ export declare function useNavbarContext(): NavbarContextValue | null;
47
+ /**
48
+ * Hook to access navbar context (throws if outside Navbar)
49
+ */
50
+ export declare function useNavbarContextStrict(): NavbarContextValue;
@@ -0,0 +1,22 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps } from '../../../types';
3
+ export interface NavbarNavProps extends BaseComponentProps {
4
+ /**
5
+ * Navigation items
6
+ */
7
+ children: React.ReactNode;
8
+ }
9
+ /**
10
+ * NavbarNav - Navigation links container for the Navbar
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <NavbarNav>
15
+ * <NavLink href="/home">Home</NavLink>
16
+ * <NavLink href="/about">About</NavLink>
17
+ * <NavLink href="/contact">Contact</NavLink>
18
+ * </NavbarNav>
19
+ * ```
20
+ */
21
+ export declare const NavbarNav: React.ForwardRefExoticComponent<NavbarNavProps & React.RefAttributes<HTMLElement>>;
22
+ export default NavbarNav;
@@ -0,0 +1,21 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps } from '../../../types';
3
+ export interface NavbarToggleProps extends BaseComponentProps {
4
+ /**
5
+ * Custom toggle icon
6
+ */
7
+ icon?: React.ReactNode;
8
+ }
9
+ /**
10
+ * NavbarToggle - Mobile hamburger menu button
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * <NavbarToggle />
15
+ *
16
+ * // With custom icon
17
+ * <NavbarToggle icon={<CustomIcon />} />
18
+ * ```
19
+ */
20
+ export declare const NavbarToggle: React.ForwardRefExoticComponent<NavbarToggleProps & React.RefAttributes<HTMLButtonElement>>;
21
+ export default NavbarToggle;
@@ -0,0 +1,15 @@
1
+ export { Navbar } from './Navbar';
2
+ export type { NavbarProps } from './Navbar';
3
+ export { default } from './Navbar';
4
+ export { NavbarBrand } from './NavbarBrand';
5
+ export type { NavbarBrandProps } from './NavbarBrand';
6
+ export { NavbarNav } from './NavbarNav';
7
+ export type { NavbarNavProps } from './NavbarNav';
8
+ export { NavbarActions } from './NavbarActions';
9
+ export type { NavbarActionsProps } from './NavbarActions';
10
+ export { NavbarToggle } from './NavbarToggle';
11
+ export type { NavbarToggleProps } from './NavbarToggle';
12
+ export { NavbarCollapse } from './NavbarCollapse';
13
+ export type { NavbarCollapseProps } from './NavbarCollapse';
14
+ export { NavbarContext, useNavbarContext, useNavbarContextStrict } from './NavbarContext';
15
+ export type { NavbarContextValue, NavbarVariant, NavbarPosition } from './NavbarContext';
@@ -0,0 +1,99 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps, ComponentSize } from '../../../types';
3
+ export type PaginationVariant = 'default' | 'outlined' | 'minimal';
4
+ export type PaginationShape = 'rounded' | 'circular' | 'square';
5
+ export interface PaginationProps extends BaseComponentProps {
6
+ /**
7
+ * Total number of pages
8
+ */
9
+ totalPages: number;
10
+ /**
11
+ * Current page (1-indexed)
12
+ */
13
+ currentPage: number;
14
+ /**
15
+ * Callback when page changes
16
+ */
17
+ onPageChange: (page: number) => void;
18
+ /**
19
+ * Number of page buttons to show on each side of current page
20
+ * @default 1
21
+ */
22
+ siblingCount?: number;
23
+ /**
24
+ * Number of boundary pages to show at start and end
25
+ * @default 1
26
+ */
27
+ boundaryCount?: number;
28
+ /**
29
+ * Show first/last page buttons
30
+ * @default true
31
+ */
32
+ showFirstLast?: boolean;
33
+ /**
34
+ * Show prev/next buttons
35
+ * @default true
36
+ */
37
+ showPrevNext?: boolean;
38
+ /**
39
+ * Size
40
+ * @default 'md'
41
+ */
42
+ size?: ComponentSize;
43
+ /**
44
+ * Visual variant
45
+ * @default 'default'
46
+ */
47
+ variant?: PaginationVariant;
48
+ /**
49
+ * Shape of page buttons
50
+ * @default 'rounded'
51
+ */
52
+ shape?: PaginationShape;
53
+ /**
54
+ * Whether to disable component
55
+ */
56
+ disabled?: boolean;
57
+ /**
58
+ * Custom labels
59
+ */
60
+ labels?: {
61
+ first?: string;
62
+ last?: string;
63
+ prev?: string;
64
+ next?: string;
65
+ page?: (page: number) => string;
66
+ };
67
+ }
68
+ /**
69
+ * Pagination - Page navigation for paginated content
70
+ *
71
+ * @example
72
+ * ```tsx
73
+ * // Basic usage
74
+ * <Pagination
75
+ * totalPages={10}
76
+ * currentPage={currentPage}
77
+ * onPageChange={setCurrentPage}
78
+ * />
79
+ *
80
+ * // With custom sibling count
81
+ * <Pagination
82
+ * totalPages={20}
83
+ * currentPage={currentPage}
84
+ * onPageChange={setCurrentPage}
85
+ * siblingCount={2}
86
+ * />
87
+ *
88
+ * // Minimal style without first/last
89
+ * <Pagination
90
+ * totalPages={10}
91
+ * currentPage={currentPage}
92
+ * onPageChange={setCurrentPage}
93
+ * variant="minimal"
94
+ * showFirstLast={false}
95
+ * />
96
+ * ```
97
+ */
98
+ export declare const Pagination: React.ForwardRefExoticComponent<PaginationProps & React.RefAttributes<HTMLElement>>;
99
+ export default Pagination;
@@ -0,0 +1,3 @@
1
+ export { Pagination } from './Pagination';
2
+ export type { PaginationProps, PaginationVariant, PaginationShape } from './Pagination';
3
+ export { default } from './Pagination';
@@ -0,0 +1,89 @@
1
+ import { default as React } from 'react';
2
+ import { BaseComponentProps } from '../../../types';
3
+ export interface SideNavProps extends BaseComponentProps {
4
+ /**
5
+ * Position of the sidebar
6
+ * @default 'left'
7
+ */
8
+ position?: 'left' | 'right';
9
+ /**
10
+ * Controlled collapsed state (icon-only mode)
11
+ */
12
+ collapsed?: boolean;
13
+ /**
14
+ * Default collapsed state
15
+ * @default false
16
+ */
17
+ defaultCollapsed?: boolean;
18
+ /**
19
+ * Callback when collapse state changes
20
+ */
21
+ onCollapsedChange?: (collapsed: boolean) => void;
22
+ /**
23
+ * Width when expanded (px)
24
+ * @default 240
25
+ */
26
+ expandedWidth?: number;
27
+ /**
28
+ * Width when collapsed (px)
29
+ * @default 64
30
+ */
31
+ collapsedWidth?: number;
32
+ /**
33
+ * Currently selected item value (controlled)
34
+ */
35
+ selectedValue?: string;
36
+ /**
37
+ * Default selected item value
38
+ */
39
+ defaultSelectedValue?: string;
40
+ /**
41
+ * Callback when selection changes
42
+ */
43
+ onSelect?: (value: string) => void;
44
+ /**
45
+ * Header content
46
+ */
47
+ header?: React.ReactNode;
48
+ /**
49
+ * Footer content
50
+ */
51
+ footer?: React.ReactNode;
52
+ /**
53
+ * Navigation items
54
+ */
55
+ children: React.ReactNode;
56
+ }
57
+ /**
58
+ * SideNav - Side navigation panel with icons, labels, and nesting support
59
+ *
60
+ * @example
61
+ * ```tsx
62
+ * // Basic usage
63
+ * <SideNav>
64
+ * <SideNavItem value="home" icon="Home" label="Home" />
65
+ * <SideNavItem value="settings" icon="Settings" label="Settings" />
66
+ * </SideNav>
67
+ *
68
+ * // With groups
69
+ * <SideNav selectedValue="profile" onSelect={handleSelect}>
70
+ * <SideNavItem value="dashboard" icon="Home" label="Dashboard" />
71
+ * <SideNavGroup groupId="settings" label="Settings" icon="Settings">
72
+ * <SideNavItem value="profile" label="Profile" />
73
+ * <SideNavItem value="security" label="Security" />
74
+ * </SideNavGroup>
75
+ * <SideNavDivider label="Other" />
76
+ * <SideNavItem value="help" icon="HelpCircle" label="Help" />
77
+ * </SideNav>
78
+ *
79
+ * // With header and footer
80
+ * <SideNav
81
+ * header={<Logo />}
82
+ * footer={<UserProfile />}
83
+ * >
84
+ * {navItems}
85
+ * </SideNav>
86
+ * ```
87
+ */
88
+ export declare const SideNav: React.ForwardRefExoticComponent<SideNavProps & React.RefAttributes<HTMLElement>>;
89
+ export default SideNav;