turash/bugulma/frontend/components/ui/index.ts

262 lines
4.5 KiB
TypeScript

/**
* UI Primitive Components
*
* Centralized exports for all UI primitive components.
* These components are designed to be reusable, accessible, and responsive.
*/
// Table components (div-based for better responsiveness)
export {
Table,
TableHeader,
TableRow,
TableHead,
TableCell,
TableBody,
TableEmpty,
ResponsiveTable,
type TableProps,
type TableHeaderProps,
type TableRowProps,
type TableHeadProps,
type TableCellProps,
type TableBodyProps,
type TableEmptyProps,
type ResponsiveTableProps,
} from './Table';
// Dialog/Modal components
export {
Dialog,
DialogHeader,
DialogTitle,
DialogDescription,
DialogContent,
DialogFooter,
DialogClose,
type DialogProps,
type DialogHeaderProps,
type DialogTitleProps,
type DialogDescriptionProps,
type DialogContentProps,
type DialogFooterProps,
type DialogCloseProps,
} from './Dialog';
// Pagination
export {
Pagination,
type PaginationProps,
} from './Pagination';
// Breadcrumbs
export {
Breadcrumbs,
type BreadcrumbItem,
type BreadcrumbsProps,
} from './Breadcrumbs';
// Toast/Notification system
export {
Toast,
ToastContainer,
useToast,
type ToastType,
type ToastProps,
type ToastContainerProps,
} from './Toast';
// Switch/Toggle
export {
Switch,
type SwitchProps,
} from './Switch';
// Progress indicator
export {
Progress,
type ProgressProps,
} from './Progress';
// Empty state
export {
EmptyState,
type EmptyStateType,
type EmptyStateProps,
} from './EmptyState';
// Confirm dialog
export {
ConfirmDialog,
type ConfirmDialogProps,
} from './ConfirmDialog';
// Search bar
export {
SearchBar,
type SearchBarProps,
} from './SearchBar';
// Status indicator
export {
StatusIndicator,
type StatusVariant,
type StatusIndicatorProps,
} from './StatusIndicator';
// Avatar
export {
Avatar,
type AvatarProps,
} from './Avatar';
// Dropdown menu
export {
DropdownMenu,
SelectDropdown,
type DropdownMenuItem,
type DropdownMenuProps,
type SelectDropdownProps,
} from './DropdownMenu';
// Tooltip
export {
Tooltip,
type TooltipProps,
} from './Tooltip';
// Radio group
export {
RadioGroup,
type RadioOption,
type RadioGroupProps,
} from './RadioGroup';
// Form field
export {
FormField,
type FormFieldProps,
} from './FormField';
// Accordion
export {
Accordion,
type AccordionItem,
type AccordionProps,
} from './Accordion';
// Alert
export {
Alert,
type AlertVariant,
type AlertProps,
} from './Alert';
// Sheet/Drawer
export {
Sheet,
SheetHeader,
SheetTitle,
SheetDescription,
SheetContent,
SheetFooter,
SheetClose,
type SheetProps,
type SheetHeaderProps,
type SheetTitleProps,
type SheetDescriptionProps,
type SheetContentProps,
type SheetFooterProps,
type SheetCloseProps,
} from './Sheet';
// Popover
export {
Popover,
type PopoverProps,
} from './Popover';
// Checkbox Group
export {
CheckboxGroup,
type CheckboxOption,
type CheckboxGroupProps,
} from './CheckboxGroup';
// Combobox
export {
Combobox,
type ComboboxOption,
type ComboboxProps,
} from './Combobox';
// Slider
export {
Slider,
type SliderProps,
} from './Slider';
// Label
export {
Label,
type LabelProps,
} from './Label';
// Kbd (Keyboard shortcut display)
export {
Kbd,
type KbdProps,
} from './Kbd';
// Typography components
export {
Heading,
Text,
Price,
type HeadingLevel,
type HeadingProps,
type TextVariant,
type TextProps,
type PriceProps,
type TranslationReplacements,
} from './Typography';
// Loading state
export {
LoadingState,
type LoadingStateProps,
} from './LoadingState';
// Activity card
export {
ActivityCard,
type ActivityCardProps,
} from './ActivityCard';
// Price display
export {
PriceDisplay,
type PriceType,
type PriceDisplayProps,
} from './PriceDisplay';
// Centered content
export {
CenteredContent,
type CenteredContentProps,
} from './CenteredContent';
// Re-export existing components for convenience
export { default as Button } from './Button';
export { default as Input } from './Input';
export { default as Textarea } from './Textarea';
export { default as Select } from './Select';
export { default as Checkbox, type CheckboxProps } from './Checkbox';
export { default as Badge } from './Badge';
export { Card, CardHeader, CardTitle, CardContent, CardDescription } from './Card';
export { Tabs, TabsList, TabsTrigger, TabsContent } from './Tabs';
export { default as Spinner } from './Spinner';
export { default as Skeleton } from './Skeleton';
export { default as Separator } from './Separator';