@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.
- package/index.css +1 -1
- package/index.d.ts +10 -0
- package/index.js +1 -1
- package/index.mjs +15961 -6871
- package/lib/components/buttons/ButtonToggleGroup/ButtonToggleGroup.d.ts +79 -0
- package/lib/components/buttons/ButtonToggleGroup/ButtonToggleGroupContext.d.ts +38 -0
- package/lib/components/buttons/ButtonToggleGroup/ButtonToggleGroupItem.d.ts +37 -0
- package/lib/components/buttons/ButtonToggleGroup/index.d.ts +7 -0
- package/lib/components/buttons/ToggleButton/ToggleButton.d.ts +96 -0
- package/lib/components/buttons/ToggleButton/index.d.ts +3 -0
- package/lib/components/display/Icon/icons/BookmarkFilled.d.ts +3 -0
- package/lib/components/display/Icon/icons/ChevronsLeft.d.ts +3 -0
- package/lib/components/display/Icon/icons/ChevronsRight.d.ts +3 -0
- package/lib/components/display/Icon/icons/HeartFilled.d.ts +3 -0
- package/lib/components/display/Icon/icons/More.d.ts +3 -0
- package/lib/components/display/Icon/icons/StarFilled.d.ts +3 -0
- package/lib/components/display/Icon/icons/ThumbsUpFilled.d.ts +3 -0
- package/lib/components/display/Icon/icons/index.d.ts +15 -1
- package/lib/components/display/List/List.d.ts +6 -0
- package/lib/components/display/List/ListContext.d.ts +15 -0
- package/lib/components/display/List/ListEmpty.d.ts +25 -0
- package/lib/components/display/List/ListGroup.d.ts +36 -0
- package/lib/components/display/List/ListHeader.d.ts +62 -0
- package/lib/components/display/List/ListItem.d.ts +19 -0
- package/lib/components/display/List/ListSearch.d.ts +32 -0
- package/lib/components/display/List/ListSkeleton.d.ts +27 -0
- package/lib/components/display/List/hooks/index.d.ts +5 -0
- package/lib/components/display/List/hooks/useListExpand.d.ts +6 -0
- package/lib/components/display/List/hooks/useListFilter.d.ts +6 -0
- package/lib/components/display/List/hooks/useListGroups.d.ts +6 -0
- package/lib/components/display/List/hooks/useListKeyboardNav.d.ts +6 -0
- package/lib/components/display/List/hooks/useListSelection.d.ts +6 -0
- package/lib/components/display/List/index.d.ts +11 -0
- package/lib/components/display/List/types.d.ts +485 -0
- package/lib/components/display/List/utils.d.ts +47 -0
- package/lib/components/display/OverflowText/OverflowText.d.ts +81 -0
- package/lib/components/display/OverflowText/index.d.ts +2 -0
- package/lib/components/display/ScrollArea/ScrollArea.d.ts +112 -0
- package/lib/components/display/ScrollArea/index.d.ts +3 -0
- package/lib/components/display/Table/Table.d.ts +6 -0
- package/lib/components/display/Table/TableBody.d.ts +4 -0
- package/lib/components/display/Table/TableCell.d.ts +12 -0
- package/lib/components/display/Table/TableContext.d.ts +10 -0
- package/lib/components/display/Table/TableHeader.d.ts +4 -0
- package/lib/components/display/Table/TableRow.d.ts +9 -0
- package/lib/components/display/Table/TableSearch.d.ts +32 -0
- package/lib/components/display/Table/TableSkeleton.d.ts +12 -0
- package/lib/components/display/Table/hooks/index.d.ts +10 -0
- package/lib/components/display/Table/hooks/useInfiniteScroll.d.ts +11 -0
- package/lib/components/display/Table/hooks/useTableExpand.d.ts +10 -0
- package/lib/components/display/Table/hooks/useTableFilter.d.ts +22 -0
- package/lib/components/display/Table/hooks/useTableSelection.d.ts +16 -0
- package/lib/components/display/Table/hooks/useTableSort.d.ts +11 -0
- package/lib/components/display/Table/index.d.ts +13 -0
- package/lib/components/display/Table/types.d.ts +295 -0
- package/lib/components/display/Table/utils.d.ts +37 -0
- package/lib/components/display/Tabs/Tab.d.ts +41 -0
- package/lib/components/display/Tabs/TabList.d.ts +27 -0
- package/lib/components/display/Tabs/TabPanel.d.ts +31 -0
- package/lib/components/display/Tabs/Tabs.d.ts +90 -0
- package/lib/components/display/Tabs/TabsContext.d.ts +63 -0
- package/lib/components/display/Tabs/index.d.ts +11 -0
- package/lib/components/display/TruncatedList/TruncatedList.d.ts +69 -0
- package/lib/components/display/TruncatedList/index.d.ts +2 -0
- package/lib/components/display/index.d.ts +4 -0
- package/lib/components/dnd/DndProvider/DndContext.d.ts +91 -0
- package/lib/components/dnd/DndProvider/DndProvider.d.ts +37 -0
- package/lib/components/dnd/DndProvider/index.d.ts +3 -0
- package/lib/components/dnd/DragHandle/DragHandle.d.ts +41 -0
- package/lib/components/dnd/DragHandle/index.d.ts +2 -0
- package/lib/components/dnd/DragOverlay/DragOverlay.d.ts +39 -0
- package/lib/components/dnd/DragOverlay/index.d.ts +2 -0
- package/lib/components/dnd/KanbanBoard/KanbanBoard.d.ts +126 -0
- package/lib/components/dnd/KanbanBoard/KanbanBoardContext.d.ts +62 -0
- package/lib/components/dnd/KanbanBoard/KanbanCard.d.ts +76 -0
- package/lib/components/dnd/KanbanBoard/KanbanColumn.d.ts +43 -0
- package/lib/components/dnd/KanbanBoard/index.d.ts +5 -0
- package/lib/components/dnd/ResizablePanels/ResizablePanel.d.ts +53 -0
- package/lib/components/dnd/ResizablePanels/ResizablePanels.d.ts +43 -0
- package/lib/components/dnd/ResizablePanels/ResizablePanelsContext.d.ts +64 -0
- package/lib/components/dnd/ResizablePanels/ResizeHandle.d.ts +28 -0
- package/lib/components/dnd/ResizablePanels/index.d.ts +5 -0
- package/lib/components/dnd/SortableGrid/SortableGrid.d.ts +76 -0
- package/lib/components/dnd/SortableGrid/SortableGridItem.d.ts +47 -0
- package/lib/components/dnd/SortableGrid/index.d.ts +3 -0
- package/lib/components/dnd/SortableList/SortableItem.d.ts +76 -0
- package/lib/components/dnd/SortableList/SortableList.d.ts +98 -0
- package/lib/components/dnd/SortableList/SortableListContext.d.ts +42 -0
- package/lib/components/dnd/SortableList/index.d.ts +4 -0
- package/lib/components/dnd/hooks/index.d.ts +3 -0
- package/lib/components/dnd/hooks/useDraggable.d.ts +66 -0
- package/lib/components/dnd/hooks/useDroppable.d.ts +73 -0
- package/lib/components/dnd/hooks/useSortable.d.ts +94 -0
- package/lib/components/dnd/index.d.ts +8 -0
- package/lib/components/filters/FilterContext.d.ts +34 -0
- package/lib/components/filters/core/ActiveFilters/ActiveFilters.d.ts +16 -0
- package/lib/components/filters/core/ActiveFilters/index.d.ts +2 -0
- package/lib/components/filters/core/FilterField/FilterField.d.ts +17 -0
- package/lib/components/filters/core/FilterField/index.d.ts +2 -0
- package/lib/components/filters/core/FilterProvider/FilterProvider.d.ts +4 -0
- package/lib/components/filters/core/FilterProvider/index.d.ts +2 -0
- package/lib/components/filters/core/FilterSection/FilterSection.d.ts +16 -0
- package/lib/components/filters/core/FilterSection/index.d.ts +2 -0
- package/lib/components/filters/core/index.d.ts +7 -0
- package/lib/components/filters/fields/CheckboxFilter.d.ts +17 -0
- package/lib/components/filters/fields/DateFilter.d.ts +21 -0
- package/lib/components/filters/fields/DateRangeFilter.d.ts +19 -0
- package/lib/components/filters/fields/ListSelectFilter.d.ts +19 -0
- package/lib/components/filters/fields/MultiSelectFilter.d.ts +19 -0
- package/lib/components/filters/fields/NumberFilter.d.ts +19 -0
- package/lib/components/filters/fields/NumberRangeFilter.d.ts +19 -0
- package/lib/components/filters/fields/RatingFilter.d.ts +19 -0
- package/lib/components/filters/fields/SelectFilter.d.ts +21 -0
- package/lib/components/filters/fields/TextFilter.d.ts +21 -0
- package/lib/components/filters/fields/ToggleFilter.d.ts +17 -0
- package/lib/components/filters/fields/index.d.ts +25 -0
- package/lib/components/filters/hooks/index.d.ts +9 -0
- package/lib/components/filters/hooks/useFilter.d.ts +57 -0
- package/lib/components/filters/hooks/useFilterDependencies.d.ts +40 -0
- package/lib/components/filters/hooks/useFilterOptions.d.ts +70 -0
- package/lib/components/filters/index.d.ts +43 -0
- package/lib/components/filters/layouts/FilterAccordion/FilterAccordion.d.ts +15 -0
- package/lib/components/filters/layouts/FilterAccordion/index.d.ts +2 -0
- package/lib/components/filters/layouts/FilterBar/FilterBar.d.ts +18 -0
- package/lib/components/filters/layouts/FilterBar/index.d.ts +2 -0
- package/lib/components/filters/layouts/FilterModal/FilterModal.d.ts +24 -0
- package/lib/components/filters/layouts/FilterModal/index.d.ts +2 -0
- package/lib/components/filters/layouts/FilterPopover/FilterPopover.d.ts +19 -0
- package/lib/components/filters/layouts/FilterPopover/index.d.ts +2 -0
- package/lib/components/filters/layouts/FilterSidebar/FilterSidebar.d.ts +20 -0
- package/lib/components/filters/layouts/FilterSidebar/index.d.ts +2 -0
- package/lib/components/filters/layouts/index.d.ts +8 -0
- package/lib/components/filters/types.d.ts +937 -0
- package/lib/components/index.d.ts +52 -0
- package/lib/components/inputs/Checkbox/Checkbox.d.ts +2 -2
- package/lib/components/inputs/CheckboxGroup/CheckboxGroup.d.ts +122 -0
- package/lib/components/inputs/CheckboxGroup/CheckboxGroupContext.d.ts +42 -0
- package/lib/components/inputs/CheckboxGroup/CheckboxGroupItem.d.ts +50 -0
- package/lib/components/inputs/CheckboxGroup/index.d.ts +7 -0
- package/lib/components/inputs/NumberInput/NumberInput.d.ts +3 -1
- package/lib/components/layout/AdaptiveGrid/AdaptiveGrid.d.ts +100 -0
- package/lib/components/layout/AdaptiveGrid/index.d.ts +2 -0
- package/lib/components/layout/MasonryLayout/MasonryLayout.d.ts +74 -0
- package/lib/components/layout/MasonryLayout/index.d.ts +2 -0
- package/lib/components/layout/Panes/Pane.d.ts +72 -0
- package/lib/components/layout/Panes/Panes.d.ts +75 -0
- package/lib/components/layout/Panes/PanesContext.d.ts +60 -0
- package/lib/components/layout/Panes/index.d.ts +6 -0
- package/lib/components/layout/ResponsiveStack/ResponsiveStack.d.ts +99 -0
- package/lib/components/layout/ResponsiveStack/index.d.ts +2 -0
- package/lib/components/layout/index.d.ts +4 -0
- package/lib/components/navigation/BottomNavigation/BottomNavigation.d.ts +53 -0
- package/lib/components/navigation/BottomNavigation/BottomNavigationContext.d.ts +27 -0
- package/lib/components/navigation/BottomNavigation/BottomNavigationItem.d.ts +59 -0
- package/lib/components/navigation/BottomNavigation/index.d.ts +7 -0
- package/lib/components/navigation/Breadcrumbs/BreadcrumbItem.d.ts +37 -0
- package/lib/components/navigation/Breadcrumbs/BreadcrumbSeparator.d.ts +22 -0
- package/lib/components/navigation/Breadcrumbs/Breadcrumbs.d.ts +96 -0
- package/lib/components/navigation/Breadcrumbs/index.d.ts +9 -0
- package/lib/components/navigation/Breadcrumbs/useBreadcrumbsFromPath.d.ts +73 -0
- package/lib/components/navigation/CollapsibleSidebar/CollapsibleSidebar.d.ts +113 -0
- package/lib/components/navigation/CollapsibleSidebar/index.d.ts +2 -0
- package/lib/components/navigation/NavLink/NavLink.d.ts +74 -0
- package/lib/components/navigation/NavLink/index.d.ts +3 -0
- package/lib/components/navigation/Navbar/Navbar.d.ts +81 -0
- package/lib/components/navigation/Navbar/NavbarActions.d.ts +21 -0
- package/lib/components/navigation/Navbar/NavbarBrand.d.ts +29 -0
- package/lib/components/navigation/Navbar/NavbarCollapse.d.ts +26 -0
- package/lib/components/navigation/Navbar/NavbarContext.d.ts +50 -0
- package/lib/components/navigation/Navbar/NavbarNav.d.ts +22 -0
- package/lib/components/navigation/Navbar/NavbarToggle.d.ts +21 -0
- package/lib/components/navigation/Navbar/index.d.ts +15 -0
- package/lib/components/navigation/Pagination/Pagination.d.ts +99 -0
- package/lib/components/navigation/Pagination/index.d.ts +3 -0
- package/lib/components/navigation/SideNav/SideNav.d.ts +89 -0
- package/lib/components/navigation/SideNav/SideNavContext.d.ts +43 -0
- package/lib/components/navigation/SideNav/SideNavDivider.d.ts +22 -0
- package/lib/components/navigation/SideNav/SideNavGroup.d.ts +44 -0
- package/lib/components/navigation/SideNav/SideNavItem.d.ts +71 -0
- package/lib/components/navigation/SideNav/index.d.ts +11 -0
- package/lib/components/navigation/Stepper/Step.d.ts +57 -0
- package/lib/components/navigation/Stepper/Stepper.d.ts +80 -0
- package/lib/components/navigation/Stepper/StepperContext.d.ts +58 -0
- package/lib/components/navigation/Stepper/index.d.ts +7 -0
- package/lib/components/navigation/index.d.ts +16 -0
- package/lib/components/overlays/Alert/Alert.d.ts +102 -0
- package/lib/components/overlays/Alert/AlertContext.d.ts +94 -0
- package/lib/components/overlays/Alert/AlertPresets.d.ts +42 -0
- package/lib/components/overlays/Alert/AlertProvider.d.ts +40 -0
- package/lib/components/overlays/Alert/index.d.ts +11 -0
- package/lib/components/overlays/Dialog/Dialog.d.ts +197 -0
- package/lib/components/overlays/Dialog/DialogContext.d.ts +75 -0
- package/lib/components/overlays/Dialog/DialogProvider.d.ts +30 -0
- package/lib/components/overlays/Dialog/index.d.ts +9 -0
- package/lib/components/overlays/Toast/Toast.d.ts +103 -0
- package/lib/components/overlays/Toast/ToastContainer.d.ts +37 -0
- package/lib/components/overlays/Toast/ToastContext.d.ts +126 -0
- package/lib/components/overlays/Toast/ToastProvider.d.ts +71 -0
- package/lib/components/overlays/Toast/index.d.ts +11 -0
- package/lib/hooks/index.d.ts +10 -0
- package/lib/hooks/useAlert/index.d.ts +2 -0
- package/lib/hooks/useAlert/useAlert.d.ts +99 -0
- package/lib/hooks/useAsyncToast/index.d.ts +2 -0
- package/lib/hooks/useAsyncToast/useAsyncToast.d.ts +93 -0
- package/lib/hooks/useDialog/index.d.ts +2 -0
- package/lib/hooks/useDialog/useDialog.d.ts +58 -0
- package/lib/hooks/useResizeObserver/index.d.ts +2 -0
- package/lib/hooks/useResizeObserver/useResizeObserver.d.ts +69 -0
- package/lib/hooks/useToast/index.d.ts +2 -0
- package/lib/hooks/useToast/useToast.d.ts +97 -0
- package/lib/providers/GlobalProvider/GlobalProvider.d.ts +16 -1
- package/package.json +1 -1
- package/README.md +0 -688
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
export { Button } from './buttons/Button';
|
|
2
2
|
export type { ButtonProps } from './buttons/Button';
|
|
3
|
+
export { ToggleButton } from './buttons/ToggleButton';
|
|
4
|
+
export type { ToggleButtonProps } from './buttons/ToggleButton';
|
|
5
|
+
export { ButtonToggleGroup, ButtonToggleGroupItem, ButtonToggleGroupContext, useButtonToggleGroup, } from './buttons/ButtonToggleGroup';
|
|
6
|
+
export type { ButtonToggleGroupProps, ButtonToggleGroupItemProps, ButtonToggleGroupContextValue, } from './buttons/ButtonToggleGroup';
|
|
3
7
|
export { Icon } from './display/Icon';
|
|
4
8
|
export type { IconProps } from './display/Icon';
|
|
5
9
|
export { Badge } from './display/Badge';
|
|
@@ -22,6 +26,10 @@ export { KPI } from './display/KPI';
|
|
|
22
26
|
export type { KPIProps } from './display/KPI';
|
|
23
27
|
export { Skeleton } from './display/Skeleton';
|
|
24
28
|
export type { SkeletonProps } from './display/Skeleton';
|
|
29
|
+
export { OverflowText } from './display/OverflowText';
|
|
30
|
+
export type { OverflowTextProps } from './display/OverflowText';
|
|
31
|
+
export { TruncatedList } from './display/TruncatedList';
|
|
32
|
+
export type { TruncatedListProps } from './display/TruncatedList';
|
|
25
33
|
export { Spinner } from './display/Spinner';
|
|
26
34
|
export type { SpinnerProps, SpinnerStyle, SpinnerVariant, SpinnerSpeed } from './display/Spinner';
|
|
27
35
|
export { Collapse } from './display/Collapse';
|
|
@@ -38,9 +46,17 @@ export { Reveal } from './display/Reveal';
|
|
|
38
46
|
export type { RevealProps, RevealAnimation } from './display/Reveal';
|
|
39
47
|
export { Carousel } from './display/Carousel';
|
|
40
48
|
export type { CarouselProps } from './display/Carousel';
|
|
49
|
+
export { Tabs, TabList, Tab, TabPanel, TabsContext, useTabsContext, useTabsContextStrict, } from './display/Tabs';
|
|
50
|
+
export type { TabsProps, TabListProps, TabProps, TabPanelProps, TabsContextValue, TabsVariant, } from './display/Tabs';
|
|
51
|
+
export { ScrollArea } from './display/ScrollArea';
|
|
52
|
+
export type { ScrollAreaProps, ScrollAreaRef } from './display/ScrollArea';
|
|
41
53
|
export { PageMessages } from './display/PageMessages';
|
|
42
54
|
export type { PageMessagesProps, PageMessageState, PageMessageStateConfig, PageMessageAction, LoadingStateConfig, } from './display/PageMessages';
|
|
43
55
|
export { getActiveState } from './display/PageMessages';
|
|
56
|
+
export { Table, TableHeader, TableBody, TableRow, TableCell, TableContext, useTableContext, useTableContextStrict, autoGenerateColumns, getCellValue, sortData, formatCellValue, useTableSelection, useTableSort, useTableExpand, useInfiniteScroll, } from './display/Table';
|
|
57
|
+
export type { TableProps, TableContextValue, ColumnConfig, ColumnAlign, SortState, SortDirection, SelectionMode as TableSelectionMode, TablePaginationConfig, TableInfiniteScrollConfig, UseTableSelectionOptions, UseTableSelectionReturn, UseTableSortOptions, UseTableSortReturn, UseTableExpandOptions, UseTableExpandReturn, UseInfiniteScrollOptions, UseInfiniteScrollReturn, } from './display/Table';
|
|
58
|
+
export { List, ListItem, ListHeader, ListGroup, ListSearch, ListSkeleton, ListEmpty, ListContext, useListContext, useListContextStrict, useListSelection, useListExpand, useListFilter, useListKeyboardNav, useListGroups, getNestedValue, formatValue, generateItemKey, searchItems, groupItems, sortItems, } from './display/List';
|
|
59
|
+
export type { ListProps, ListItemRenderContext, ListContextValue, SelectionMode as ListSelectionMode, SelectionState, BulkAction, ItemAction, ListInfiniteScrollConfig, ListSkeletonConfig, ResponsiveColumns, UseListSelectionOptions, UseListSelectionReturn, UseListExpandOptions, UseListExpandReturn, UseListFilterOptions, UseListFilterReturn, UseListKeyboardNavOptions, UseListKeyboardNavReturn, UseListGroupsOptions, UseListGroupsReturn, ListGroup as ListGroupType, } from './display/List';
|
|
44
60
|
export { Portal } from './overlays/Portal';
|
|
45
61
|
export type { PortalProps } from './overlays/Portal';
|
|
46
62
|
export { Popover } from './overlays/Popover';
|
|
@@ -53,6 +69,12 @@ export { Dropdown } from './overlays/Dropdown';
|
|
|
53
69
|
export type { DropdownProps } from './overlays/Dropdown';
|
|
54
70
|
export { LoadingOverlay } from './overlays/LoadingOverlay';
|
|
55
71
|
export type { LoadingOverlayProps, LoadingOverlayMode } from './overlays/LoadingOverlay';
|
|
72
|
+
export { Dialog, DialogHeader, DialogBody, DialogFooter, DialogProvider, DialogContext, useDialogContext, useDialogContextStrict, } from './overlays/Dialog';
|
|
73
|
+
export type { DialogProps, DialogSize, DialogHeaderProps, DialogBodyProps, DialogFooterProps, DialogProviderProps, DialogContextValue, DialogStackItem, } from './overlays/Dialog';
|
|
74
|
+
export { Alert, AlertProvider, AlertContext, useAlertContext, useAlertContextStrict, ALERT_PRESETS, getAlertPreset, } from './overlays/Alert';
|
|
75
|
+
export type { AlertProps, AlertVariant, AlertPreset, AlertProviderProps, AlertContextValue, AlertQueueItem, } from './overlays/Alert';
|
|
76
|
+
export { Toast, ToastContainer, ToastProvider, ToastContext, useToastContext, useToastContextStrict, } from './overlays/Toast';
|
|
77
|
+
export type { ToastProps, ToastData, ToastVariant, ToastPosition, ToastAnimationState, ToastContainerProps, ToastProviderProps, ToastContextValue, ToastInstance, PromiseToastOptions, } from './overlays/Toast';
|
|
56
78
|
export { Input } from './inputs/Input';
|
|
57
79
|
export type { InputProps, ValidationResult, FormatMask, ValidationTiming, InputType, } from './inputs/Input';
|
|
58
80
|
export { Autocomplete } from './inputs/Autocomplete';
|
|
@@ -63,6 +85,8 @@ export { Checkbox } from './inputs/Checkbox';
|
|
|
63
85
|
export type { CheckboxProps } from './inputs/Checkbox';
|
|
64
86
|
export { Radio, RadioGroup, useRadioGroup, RadioGroupContext } from './inputs/Radio';
|
|
65
87
|
export type { RadioProps, RadioGroupProps, RadioGroupContextValue } from './inputs/Radio';
|
|
88
|
+
export { CheckboxGroup, CheckboxGroupItem, CheckboxGroupContext, useCheckboxGroup, useCheckboxGroupStrict, } from './inputs/CheckboxGroup';
|
|
89
|
+
export type { CheckboxGroupProps, CheckboxGroupItemProps, CheckboxGroupContextValue, } from './inputs/CheckboxGroup';
|
|
66
90
|
export { Textarea } from './inputs/Textarea';
|
|
67
91
|
export type { TextareaProps } from './inputs/Textarea';
|
|
68
92
|
export { Select } from './inputs/Select';
|
|
@@ -85,7 +109,35 @@ export { DatePicker } from './inputs/DatePicker';
|
|
|
85
109
|
export type { DatePickerProps } from './inputs/DatePicker';
|
|
86
110
|
export { DateRangePicker } from './inputs/DateRangePicker';
|
|
87
111
|
export type { DateRangePickerProps, DateRangePreset } from './inputs/DateRangePicker';
|
|
112
|
+
export { Panes, Pane, usePanesContext } from './layout/Panes';
|
|
113
|
+
export type { PanesProps, PaneProps, PanesContextValue, PaneConfig } from './layout/Panes';
|
|
114
|
+
export { ResponsiveStack } from './layout/ResponsiveStack';
|
|
115
|
+
export type { ResponsiveStackProps } from './layout/ResponsiveStack';
|
|
116
|
+
export { AdaptiveGrid } from './layout/AdaptiveGrid';
|
|
117
|
+
export type { AdaptiveGridProps } from './layout/AdaptiveGrid';
|
|
118
|
+
export { MasonryLayout } from './layout/MasonryLayout';
|
|
119
|
+
export type { MasonryLayoutProps } from './layout/MasonryLayout';
|
|
120
|
+
export { CollapsibleSidebar } from './navigation/CollapsibleSidebar';
|
|
121
|
+
export type { CollapsibleSidebarProps } from './navigation/CollapsibleSidebar';
|
|
122
|
+
export { NavLink } from './navigation/NavLink';
|
|
123
|
+
export type { NavLinkProps, NavLinkVariant } from './navigation/NavLink';
|
|
124
|
+
export { Navbar, NavbarBrand, NavbarNav, NavbarActions, NavbarToggle, NavbarCollapse, NavbarContext, useNavbarContext, useNavbarContextStrict, } from './navigation/Navbar';
|
|
125
|
+
export type { NavbarProps, NavbarBrandProps, NavbarNavProps, NavbarActionsProps, NavbarToggleProps, NavbarCollapseProps, NavbarContextValue, NavbarVariant, NavbarPosition, } from './navigation/Navbar';
|
|
126
|
+
export { SideNav, SideNavItem, SideNavGroup, SideNavDivider, SideNavContext, useSideNavContext, useSideNavContextStrict, } from './navigation/SideNav';
|
|
127
|
+
export type { SideNavProps, SideNavItemProps, SideNavGroupProps, SideNavDividerProps, SideNavContextValue, } from './navigation/SideNav';
|
|
128
|
+
export { Breadcrumbs, BreadcrumbItem, BreadcrumbSeparator, useBreadcrumbsFromPath, } from './navigation/Breadcrumbs';
|
|
129
|
+
export type { BreadcrumbsProps, BreadcrumbItemProps, BreadcrumbItemConfig, BreadcrumbSeparatorProps, UseBreadcrumbsFromPathOptions, } from './navigation/Breadcrumbs';
|
|
130
|
+
export { Pagination } from './navigation/Pagination';
|
|
131
|
+
export type { PaginationProps, PaginationVariant, PaginationShape } from './navigation/Pagination';
|
|
132
|
+
export { Stepper, Step, StepperContext, useStepperContext, useStepperContextStrict, } from './navigation/Stepper';
|
|
133
|
+
export type { StepperProps, StepProps, StepperContextValue, StepperVariant, StepperOrientation, } from './navigation/Stepper';
|
|
134
|
+
export { BottomNavigation, BottomNavigationItem, BottomNavigationContext, useBottomNavigationContext, useBottomNavigationContextStrict, } from './navigation/BottomNavigation';
|
|
135
|
+
export type { BottomNavigationProps, BottomNavigationItemProps, BottomNavigationContextValue, } from './navigation/BottomNavigation';
|
|
88
136
|
export { FormBuilder, useFormContext } from './forms/FormBuilder';
|
|
89
137
|
export type { FormBuilderProps } from './forms/FormBuilder';
|
|
90
138
|
export { useFormState, useFormValidation } from './forms/FormBuilder';
|
|
91
139
|
export type { FormFieldType, FormFieldConfig, FormFieldValidation, FormFieldDependency, FormValues, FormErrors, FormTouched, FormState, FormActions, FormContext, UseFormStateOptions, } from './forms/FormBuilder';
|
|
140
|
+
export { DndProvider, DndContext, useDndContext, useDndContextOptional, useDraggable, useDroppable, useSortable, DragHandle, DragOverlay, SortableList, SortableItem, SortableListContext, useSortableListContext, useSortableListContextOptional, KanbanBoard, KanbanColumn, KanbanCard, KanbanBoardContext, useKanbanBoardContext, useKanbanBoardContextOptional, SortableGrid, SortableGridItemComponent, ResizablePanels, ResizablePanel, ResizeHandle, ResizablePanelsContext, useResizablePanelsContext, useResizablePanelsContextOptional, } from './dnd';
|
|
141
|
+
export type { DndProviderProps, DndContextValue, ActiveDrag, DragData, DragEndEvent, DragStartEvent, DragOverEvent, UseDraggableOptions, UseDraggableReturn, UseDroppableOptions, UseDroppableReturn, UseSortableOptions, UseSortableReturn, DragHandleProps, DragOverlayProps, SortableListProps, SortableListItem, SortableItemProps, SortableItemRenderProps, SortableListContextValue, KanbanBoardProps, KanbanCardData, KanbanColumnData, KanbanColumnProps, KanbanCardProps, KanbanCardRenderProps, KanbanBoardContextValue, CardMoveEvent, SortableGridProps, SortableGridItemData, SortableGridItemProps, SortableGridItemRenderProps, ResizablePanelsProps, ResizablePanelProps, ResizeHandleProps, ResizablePanelsContextValue, } from './dnd';
|
|
142
|
+
export { FilterContext, useFilterContext, useFilterContextStrict, useFilter, useFilterDependencies, useFilterOptions, getDependencyValues, clearOptionsCache, FilterProvider, FilterField, FilterSection, ActiveFilters, SelectFilter, MultiSelectFilter, CheckboxFilter, ToggleFilter, TextFilter, DateFilter, DateRangeFilter, NumberFilter, NumberRangeFilter, RatingFilter, ListSelectFilter, FilterSidebar, FilterBar, FilterPopover, FilterModal, FilterAccordion, } from './filters';
|
|
143
|
+
export type { FilterType, FilterValue, FilterValueWithMeta, FilterOption, FilterOptionsLoader, FilterOptionsLoaderParams, FilterOptionsLoadResult, FilterDependency, FilterDependencyAction, FilterDefinition, FilterGroup, FilterState, FilterActions, FilterContextValue, FilterOptionsState, NumberRangeValue, DateRangeValue, SelectFilterConfig, MultiSelectFilterConfig, MultiSelectDisplayMode, TextFilterConfig, NumberFilterConfig, NumberRangeFilterConfig, NumberRangeDisplayMode, DateFilterConfig, DateRangeFilterConfig, DateRangePreset as FilterDateRangePreset, RatingFilterConfig, ListSelectFilterConfig, FilterTypeConfig, FilterProviderProps, FilterFieldProps, FilterSectionProps, ActiveFiltersProps, FilterLayoutProps, FilterSidebarProps, FilterBarProps, FilterPopoverProps, FilterModalProps, FilterAccordionProps, UseFilterOptions, UseFilterReturn, UseFilterDependenciesOptions, UseFilterDependenciesReturn, UseFilterOptionsOptions, UseFilterOptionsReturn, SelectFilterProps, MultiSelectFilterProps, CheckboxFilterProps, ToggleFilterProps, TextFilterProps, DateFilterProps, DateRangeFilterProps, NumberFilterProps, NumberRangeFilterProps, RatingFilterProps, ListSelectFilterProps, } from './filters';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { default as React } from 'react';
|
|
1
|
+
import { default as React, ReactNode } from 'react';
|
|
2
2
|
import { ComponentSize, ComponentVariant, InputBaseProps } from '../../../types';
|
|
3
3
|
import { IconName } from '../../display/Icon/icons';
|
|
4
4
|
export interface CheckboxProps extends Omit<InputBaseProps, 'value' | 'onChange' | 'placeholder'> {
|
|
@@ -34,7 +34,7 @@ export interface CheckboxProps extends Omit<InputBaseProps, 'value' | 'onChange'
|
|
|
34
34
|
/**
|
|
35
35
|
* Label text to display next to checkbox
|
|
36
36
|
*/
|
|
37
|
-
label?:
|
|
37
|
+
label?: ReactNode;
|
|
38
38
|
/**
|
|
39
39
|
* Label placement relative to checkbox
|
|
40
40
|
* @default 'end'
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { BaseComponentProps, ComponentSize, ComponentVariant } from '../../../types';
|
|
3
|
+
export interface CheckboxGroupProps extends Omit<BaseComponentProps, 'onChange'> {
|
|
4
|
+
/**
|
|
5
|
+
* Array of selected values (controlled)
|
|
6
|
+
*/
|
|
7
|
+
value?: string[];
|
|
8
|
+
/**
|
|
9
|
+
* Default selected values (uncontrolled)
|
|
10
|
+
* @default []
|
|
11
|
+
*/
|
|
12
|
+
defaultValue?: string[];
|
|
13
|
+
/**
|
|
14
|
+
* Callback when selection changes
|
|
15
|
+
* @param values - Array of currently selected values
|
|
16
|
+
*/
|
|
17
|
+
onChange?: (values: string[]) => void;
|
|
18
|
+
/**
|
|
19
|
+
* Variant style for all checkboxes
|
|
20
|
+
* @default 'primary'
|
|
21
|
+
*/
|
|
22
|
+
variant?: ComponentVariant;
|
|
23
|
+
/**
|
|
24
|
+
* Size for all checkboxes
|
|
25
|
+
* @default 'md'
|
|
26
|
+
*/
|
|
27
|
+
size?: ComponentSize;
|
|
28
|
+
/**
|
|
29
|
+
* Layout orientation
|
|
30
|
+
* @default 'vertical'
|
|
31
|
+
*/
|
|
32
|
+
orientation?: 'horizontal' | 'vertical';
|
|
33
|
+
/**
|
|
34
|
+
* Group label
|
|
35
|
+
*/
|
|
36
|
+
label?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Helper text below the group
|
|
39
|
+
*/
|
|
40
|
+
helperText?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Error message when in error state
|
|
43
|
+
*/
|
|
44
|
+
errorMessage?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Whether the group is in error state
|
|
47
|
+
* @default false
|
|
48
|
+
*/
|
|
49
|
+
error?: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Whether all checkboxes are disabled
|
|
52
|
+
* @default false
|
|
53
|
+
*/
|
|
54
|
+
disabled?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Whether all checkboxes are read-only
|
|
57
|
+
* @default false
|
|
58
|
+
*/
|
|
59
|
+
readOnly?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Whether at least one selection is required
|
|
62
|
+
* @default false
|
|
63
|
+
*/
|
|
64
|
+
required?: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Minimum number of selections required
|
|
67
|
+
*/
|
|
68
|
+
min?: number;
|
|
69
|
+
/**
|
|
70
|
+
* Maximum number of selections allowed
|
|
71
|
+
*/
|
|
72
|
+
max?: number;
|
|
73
|
+
/**
|
|
74
|
+
* Gap between checkboxes (in spacing units)
|
|
75
|
+
* @default 2
|
|
76
|
+
*/
|
|
77
|
+
gap?: number;
|
|
78
|
+
/**
|
|
79
|
+
* Name attribute for form submission
|
|
80
|
+
*/
|
|
81
|
+
name?: string;
|
|
82
|
+
/**
|
|
83
|
+
* ID for the fieldset element
|
|
84
|
+
*/
|
|
85
|
+
id?: string;
|
|
86
|
+
/**
|
|
87
|
+
* CheckboxGroupItem children
|
|
88
|
+
*/
|
|
89
|
+
children: React.ReactNode;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* CheckboxGroup component - container for multiple checkboxes with multi-select
|
|
93
|
+
*
|
|
94
|
+
* A group component that manages multiple checkbox selections with support
|
|
95
|
+
* for min/max constraints, validation, and accessibility.
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* ```tsx
|
|
99
|
+
* // Basic usage
|
|
100
|
+
* <CheckboxGroup value={selected} onChange={setSelected} label="Select options">
|
|
101
|
+
* <CheckboxGroupItem value="option1" label="Option 1" />
|
|
102
|
+
* <CheckboxGroupItem value="option2" label="Option 2" />
|
|
103
|
+
* <CheckboxGroupItem value="option3" label="Option 3" />
|
|
104
|
+
* </CheckboxGroup>
|
|
105
|
+
*
|
|
106
|
+
* // With constraints
|
|
107
|
+
* <CheckboxGroup
|
|
108
|
+
* value={selected}
|
|
109
|
+
* onChange={setSelected}
|
|
110
|
+
* label="Select 1-3 options"
|
|
111
|
+
* min={1}
|
|
112
|
+
* max={3}
|
|
113
|
+
* >
|
|
114
|
+
* <CheckboxGroupItem value="a" label="Option A" />
|
|
115
|
+
* <CheckboxGroupItem value="b" label="Option B" />
|
|
116
|
+
* <CheckboxGroupItem value="c" label="Option C" />
|
|
117
|
+
* <CheckboxGroupItem value="d" label="Option D" />
|
|
118
|
+
* </CheckboxGroup>
|
|
119
|
+
* ```
|
|
120
|
+
*/
|
|
121
|
+
export declare const CheckboxGroup: React.ForwardRefExoticComponent<CheckboxGroupProps & React.RefAttributes<HTMLFieldSetElement>>;
|
|
122
|
+
export default CheckboxGroup;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ComponentSize, ComponentVariant } from '../../../types';
|
|
2
|
+
export interface CheckboxGroupContextValue {
|
|
3
|
+
/**
|
|
4
|
+
* Group name for form submission
|
|
5
|
+
*/
|
|
6
|
+
name: string;
|
|
7
|
+
/**
|
|
8
|
+
* Array of currently selected values
|
|
9
|
+
*/
|
|
10
|
+
values: string[];
|
|
11
|
+
/**
|
|
12
|
+
* Callback when selection changes
|
|
13
|
+
*/
|
|
14
|
+
onChange: (value: string, checked: boolean, event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
15
|
+
/**
|
|
16
|
+
* Whether the group is disabled
|
|
17
|
+
*/
|
|
18
|
+
disabled?: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Whether the group is read-only
|
|
21
|
+
*/
|
|
22
|
+
readOnly?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Size for all checkboxes
|
|
25
|
+
*/
|
|
26
|
+
size?: ComponentSize;
|
|
27
|
+
/**
|
|
28
|
+
* Variant style for all checkboxes
|
|
29
|
+
*/
|
|
30
|
+
variant?: ComponentVariant;
|
|
31
|
+
}
|
|
32
|
+
export declare const CheckboxGroupContext: import('react').Context<CheckboxGroupContextValue | null>;
|
|
33
|
+
/**
|
|
34
|
+
* Hook to optionally access CheckboxGroup context
|
|
35
|
+
* Returns null if not within a CheckboxGroup (allows standalone Checkbox usage)
|
|
36
|
+
*/
|
|
37
|
+
export declare const useCheckboxGroup: () => CheckboxGroupContextValue | null;
|
|
38
|
+
/**
|
|
39
|
+
* Hook to access CheckboxGroup context
|
|
40
|
+
* @throws Error if used outside of CheckboxGroup
|
|
41
|
+
*/
|
|
42
|
+
export declare const useCheckboxGroupStrict: () => CheckboxGroupContextValue;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { BaseComponentProps } from '../../../types';
|
|
3
|
+
import { IconName } from '../../display/Icon/icons';
|
|
4
|
+
export interface CheckboxGroupItemProps extends Omit<BaseComponentProps, 'children'> {
|
|
5
|
+
/**
|
|
6
|
+
* Value for this checkbox (required in group)
|
|
7
|
+
*/
|
|
8
|
+
value: string;
|
|
9
|
+
/**
|
|
10
|
+
* Label text to display next to checkbox
|
|
11
|
+
*/
|
|
12
|
+
label?: string;
|
|
13
|
+
/**
|
|
14
|
+
* Label placement relative to checkbox
|
|
15
|
+
* @default 'end'
|
|
16
|
+
*/
|
|
17
|
+
labelPlacement?: 'start' | 'end';
|
|
18
|
+
/**
|
|
19
|
+
* Whether this specific checkbox is disabled
|
|
20
|
+
* @default false
|
|
21
|
+
*/
|
|
22
|
+
disabled?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Helper text to display below the checkbox
|
|
25
|
+
*/
|
|
26
|
+
helperText?: string;
|
|
27
|
+
/**
|
|
28
|
+
* Custom check icon
|
|
29
|
+
*/
|
|
30
|
+
checkIcon?: React.ReactNode | IconName;
|
|
31
|
+
/**
|
|
32
|
+
* ID for the input element
|
|
33
|
+
*/
|
|
34
|
+
id?: string;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* CheckboxGroupItem component - individual checkbox within a CheckboxGroup
|
|
38
|
+
*
|
|
39
|
+
* Must be used as a child of CheckboxGroup.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```tsx
|
|
43
|
+
* <CheckboxGroup value={selected} onChange={setSelected}>
|
|
44
|
+
* <CheckboxGroupItem value="option1" label="Option 1" />
|
|
45
|
+
* <CheckboxGroupItem value="option2" label="Option 2" />
|
|
46
|
+
* </CheckboxGroup>
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export declare const CheckboxGroupItem: React.ForwardRefExoticComponent<CheckboxGroupItemProps & React.RefAttributes<HTMLInputElement>>;
|
|
50
|
+
export default CheckboxGroupItem;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { CheckboxGroup } from './CheckboxGroup';
|
|
2
|
+
export type { CheckboxGroupProps } from './CheckboxGroup';
|
|
3
|
+
export { CheckboxGroupItem } from './CheckboxGroupItem';
|
|
4
|
+
export type { CheckboxGroupItemProps } from './CheckboxGroupItem';
|
|
5
|
+
export { CheckboxGroupContext, useCheckboxGroup, useCheckboxGroupStrict, } from './CheckboxGroupContext';
|
|
6
|
+
export type { CheckboxGroupContextValue } from './CheckboxGroupContext';
|
|
7
|
+
export { default } from './CheckboxGroup';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
export interface NumberInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'type' | 'onChange' | 'onBlur'> {
|
|
2
|
+
export interface NumberInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'type' | 'onChange' | 'onBlur' | 'width'> {
|
|
3
3
|
value?: number;
|
|
4
4
|
defaultValue?: number;
|
|
5
5
|
onChange?: (value: number) => void;
|
|
@@ -12,6 +12,8 @@ export interface NumberInputProps extends Omit<React.InputHTMLAttributes<HTMLInp
|
|
|
12
12
|
errorMessage?: string;
|
|
13
13
|
error?: boolean;
|
|
14
14
|
formatDisplay?: (value: number) => string;
|
|
15
|
+
/** Width of the input (e.g., '100px', '6rem', 120) */
|
|
16
|
+
width?: number | string;
|
|
15
17
|
id?: string;
|
|
16
18
|
'data-testid'?: string;
|
|
17
19
|
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { BaseComponentProps } from '../../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Props for the AdaptiveGrid component
|
|
5
|
+
*/
|
|
6
|
+
export interface AdaptiveGridProps extends BaseComponentProps {
|
|
7
|
+
/**
|
|
8
|
+
* Minimum width for each grid item (px)
|
|
9
|
+
* @default 200
|
|
10
|
+
*/
|
|
11
|
+
minItemWidth?: number;
|
|
12
|
+
/**
|
|
13
|
+
* Maximum columns (regardless of available space)
|
|
14
|
+
*/
|
|
15
|
+
maxColumns?: number;
|
|
16
|
+
/**
|
|
17
|
+
* Minimum columns
|
|
18
|
+
* @default 1
|
|
19
|
+
*/
|
|
20
|
+
minColumns?: number;
|
|
21
|
+
/**
|
|
22
|
+
* Gap between items (px)
|
|
23
|
+
* @default 16
|
|
24
|
+
*/
|
|
25
|
+
gap?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Row gap (defaults to gap)
|
|
28
|
+
*/
|
|
29
|
+
rowGap?: number;
|
|
30
|
+
/**
|
|
31
|
+
* Column gap (defaults to gap)
|
|
32
|
+
*/
|
|
33
|
+
columnGap?: number;
|
|
34
|
+
/**
|
|
35
|
+
* How items fill available space
|
|
36
|
+
* - 'auto-fill': Creates as many columns as will fit
|
|
37
|
+
* - 'auto-fit': Collapses empty columns
|
|
38
|
+
* @default 'auto-fill'
|
|
39
|
+
*/
|
|
40
|
+
fillMode?: 'auto-fill' | 'auto-fit';
|
|
41
|
+
/**
|
|
42
|
+
* Item alignment within cells
|
|
43
|
+
* @default 'stretch'
|
|
44
|
+
*/
|
|
45
|
+
alignItems?: 'start' | 'center' | 'end' | 'stretch';
|
|
46
|
+
/**
|
|
47
|
+
* Content justification
|
|
48
|
+
* @default 'start'
|
|
49
|
+
*/
|
|
50
|
+
justifyItems?: 'start' | 'center' | 'end' | 'stretch';
|
|
51
|
+
/**
|
|
52
|
+
* Callback when column count changes
|
|
53
|
+
*/
|
|
54
|
+
onColumnCountChange?: (count: number) => void;
|
|
55
|
+
/**
|
|
56
|
+
* Content to render
|
|
57
|
+
*/
|
|
58
|
+
children: React.ReactNode;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* AdaptiveGrid - A CSS grid that auto-adjusts columns based on container width
|
|
62
|
+
*
|
|
63
|
+
* @example
|
|
64
|
+
* Basic usage:
|
|
65
|
+
* ```tsx
|
|
66
|
+
* <AdaptiveGrid minItemWidth={250} gap={16}>
|
|
67
|
+
* {products.map(product => (
|
|
68
|
+
* <ProductCard key={product.id} {...product} />
|
|
69
|
+
* ))}
|
|
70
|
+
* </AdaptiveGrid>
|
|
71
|
+
* ```
|
|
72
|
+
*
|
|
73
|
+
* @example
|
|
74
|
+
* With column limits:
|
|
75
|
+
* ```tsx
|
|
76
|
+
* <AdaptiveGrid
|
|
77
|
+
* minItemWidth={200}
|
|
78
|
+
* maxColumns={4}
|
|
79
|
+
* minColumns={2}
|
|
80
|
+
* gap={24}
|
|
81
|
+
* >
|
|
82
|
+
* {items.map(item => <Card key={item.id} {...item} />)}
|
|
83
|
+
* </AdaptiveGrid>
|
|
84
|
+
* ```
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* Different row and column gaps:
|
|
88
|
+
* ```tsx
|
|
89
|
+
* <AdaptiveGrid
|
|
90
|
+
* minItemWidth={300}
|
|
91
|
+
* rowGap={32}
|
|
92
|
+
* columnGap={16}
|
|
93
|
+
* fillMode="auto-fit"
|
|
94
|
+
* >
|
|
95
|
+
* {cards.map(card => <Card key={card.id} {...card} />)}
|
|
96
|
+
* </AdaptiveGrid>
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
99
|
+
export declare const AdaptiveGrid: React.ForwardRefExoticComponent<AdaptiveGridProps & React.RefAttributes<HTMLDivElement>>;
|
|
100
|
+
export default AdaptiveGrid;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { BaseComponentProps } from '../../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Props for the MasonryLayout component
|
|
5
|
+
*/
|
|
6
|
+
export interface MasonryLayoutProps extends BaseComponentProps {
|
|
7
|
+
/**
|
|
8
|
+
* Target column width (px) - determines number of columns
|
|
9
|
+
* @default 250
|
|
10
|
+
*/
|
|
11
|
+
columnWidth?: number;
|
|
12
|
+
/**
|
|
13
|
+
* Gap between items (px)
|
|
14
|
+
* @default 16
|
|
15
|
+
*/
|
|
16
|
+
gap?: number;
|
|
17
|
+
/**
|
|
18
|
+
* Maximum columns
|
|
19
|
+
*/
|
|
20
|
+
maxColumns?: number;
|
|
21
|
+
/**
|
|
22
|
+
* Minimum columns
|
|
23
|
+
* @default 1
|
|
24
|
+
*/
|
|
25
|
+
minColumns?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Animation duration for layout changes (ms)
|
|
28
|
+
* @default 250
|
|
29
|
+
*/
|
|
30
|
+
animationDuration?: number;
|
|
31
|
+
/**
|
|
32
|
+
* Animation easing function
|
|
33
|
+
* @default 'ease-out'
|
|
34
|
+
*/
|
|
35
|
+
animationEasing?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Callback when column count changes
|
|
38
|
+
*/
|
|
39
|
+
onColumnCountChange?: (count: number) => void;
|
|
40
|
+
/**
|
|
41
|
+
* Content to render
|
|
42
|
+
*/
|
|
43
|
+
children: React.ReactNode;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* MasonryLayout - Pinterest-style masonry layout that responds to container width
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* Basic usage:
|
|
50
|
+
* ```tsx
|
|
51
|
+
* <MasonryLayout columnWidth={250} gap={16}>
|
|
52
|
+
* {images.map(img => (
|
|
53
|
+
* <img key={img.id} src={img.url} alt={img.alt} />
|
|
54
|
+
* ))}
|
|
55
|
+
* </MasonryLayout>
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* With column constraints:
|
|
60
|
+
* ```tsx
|
|
61
|
+
* <MasonryLayout
|
|
62
|
+
* columnWidth={200}
|
|
63
|
+
* gap={24}
|
|
64
|
+
* minColumns={2}
|
|
65
|
+
* maxColumns={5}
|
|
66
|
+
* >
|
|
67
|
+
* {cards.map(card => (
|
|
68
|
+
* <Card key={card.id} {...card} />
|
|
69
|
+
* ))}
|
|
70
|
+
* </MasonryLayout>
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
export declare const MasonryLayout: React.ForwardRefExoticComponent<MasonryLayoutProps & React.RefAttributes<HTMLDivElement>>;
|
|
74
|
+
export default MasonryLayout;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { BaseComponentProps } from '../../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Props for the Pane component
|
|
5
|
+
*/
|
|
6
|
+
export interface PaneProps extends BaseComponentProps {
|
|
7
|
+
/**
|
|
8
|
+
* Minimum width of the pane in pixels
|
|
9
|
+
* @default 200
|
|
10
|
+
*/
|
|
11
|
+
minWidth?: number;
|
|
12
|
+
/**
|
|
13
|
+
* Maximum width of the pane in pixels
|
|
14
|
+
*/
|
|
15
|
+
maxWidth?: number;
|
|
16
|
+
/**
|
|
17
|
+
* Preferred width of the pane (flex-basis)
|
|
18
|
+
* Can be pixels, percentage, or 'auto'
|
|
19
|
+
* @default 'auto'
|
|
20
|
+
*/
|
|
21
|
+
preferredWidth?: number | string;
|
|
22
|
+
/**
|
|
23
|
+
* Flex grow factor
|
|
24
|
+
* @default 1
|
|
25
|
+
*/
|
|
26
|
+
grow?: number;
|
|
27
|
+
/**
|
|
28
|
+
* Flex shrink factor
|
|
29
|
+
* @default 1
|
|
30
|
+
*/
|
|
31
|
+
shrink?: number;
|
|
32
|
+
/**
|
|
33
|
+
* Priority for visibility (higher = shown first when space is limited)
|
|
34
|
+
* By default, uses the index (later children = higher priority)
|
|
35
|
+
*/
|
|
36
|
+
priority?: number;
|
|
37
|
+
/**
|
|
38
|
+
* Unique identifier for the pane
|
|
39
|
+
*/
|
|
40
|
+
id?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Content of the pane
|
|
43
|
+
*/
|
|
44
|
+
children: React.ReactNode;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Internal props passed from Panes to Pane
|
|
48
|
+
*/
|
|
49
|
+
export interface PaneInternalProps {
|
|
50
|
+
/** Index of this pane within Panes children */
|
|
51
|
+
_index?: number;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Pane - A child component of Panes that represents a single pane
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```tsx
|
|
58
|
+
* <Panes>
|
|
59
|
+
* <Pane minWidth={200} maxWidth={400}>
|
|
60
|
+
* Left sidebar
|
|
61
|
+
* </Pane>
|
|
62
|
+
* <Pane minWidth={400} grow={2}>
|
|
63
|
+
* Main content
|
|
64
|
+
* </Pane>
|
|
65
|
+
* <Pane minWidth={200}>
|
|
66
|
+
* Right sidebar
|
|
67
|
+
* </Pane>
|
|
68
|
+
* </Panes>
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
export declare const Pane: React.ForwardRefExoticComponent<PaneProps & PaneInternalProps & React.RefAttributes<HTMLDivElement>>;
|
|
72
|
+
export default Pane;
|