flikkui 0.1.0-beta.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +155 -0
- package/dist/_virtual/jsx-runtime.js +5 -0
- package/dist/_virtual/jsx-runtime2.js +3 -0
- package/dist/_virtual/react-jsx-runtime.development.js +3 -0
- package/dist/_virtual/react-jsx-runtime.production.js +3 -0
- package/dist/components/ai/Message/Message.d.ts +8 -0
- package/dist/components/ai/Message/Message.theme.d.ts +2 -0
- package/dist/components/ai/Message/Message.types.d.ts +110 -0
- package/dist/components/ai/Message/MessageActions.d.ts +8 -0
- package/dist/components/ai/Message/MessageAvatar.d.ts +16 -0
- package/dist/components/ai/Message/MessageContent.d.ts +8 -0
- package/dist/components/ai/Message/MessageContext.d.ts +8 -0
- package/dist/components/ai/Message/MessageTimestamp.d.ts +8 -0
- package/dist/components/ai/Message/TypeWriter.d.ts +38 -0
- package/dist/components/ai/Message/index.d.ts +9 -0
- package/dist/components/ai/PromptInput/PromptInput.d.ts +24 -0
- package/dist/components/ai/PromptInput/PromptInput.theme.d.ts +8 -0
- package/dist/components/ai/PromptInput/PromptInput.types.d.ts +152 -0
- package/dist/components/ai/PromptInput/index.d.ts +3 -0
- package/dist/components/charts/ActivityRings/ActivityRings.d.ts +9 -0
- package/dist/components/charts/ActivityRings/ActivityRings.theme.d.ts +7 -0
- package/dist/components/charts/ActivityRings/ActivityRings.types.d.ts +62 -0
- package/dist/components/charts/ActivityRings/index.d.ts +4 -0
- package/dist/components/charts/AreaChart/AreaChart.d.ts +3 -0
- package/dist/components/charts/AreaChart/AreaChart.theme.d.ts +24 -0
- package/dist/components/charts/AreaChart/AreaChart.types.d.ts +39 -0
- package/dist/components/charts/AreaChart/index.d.ts +4 -0
- package/dist/components/charts/BarChart/BarChart.d.ts +3 -0
- package/dist/components/charts/BarChart/BarChart.types.d.ts +35 -0
- package/dist/components/charts/BarChart/index.d.ts +2 -0
- package/dist/components/charts/ChartContainer.d.ts +9 -0
- package/dist/components/charts/ComboChart/ComboChart.d.ts +9 -0
- package/dist/components/charts/ComboChart/ComboChart.theme.d.ts +7 -0
- package/dist/components/charts/ComboChart/ComboChart.types.d.ts +51 -0
- package/dist/components/charts/ComboChart/index.d.ts +4 -0
- package/dist/components/charts/DonutChart/DonutChart.d.ts +7 -0
- package/dist/components/charts/DonutChart/DonutChart.theme.d.ts +127 -0
- package/dist/components/charts/DonutChart/DonutChart.types.d.ts +129 -0
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.d.ts +7 -0
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.theme.d.ts +50 -0
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.types.d.ts +124 -0
- package/dist/components/charts/DonutChart/donut-utils.d.ts +40 -0
- package/dist/components/charts/DonutChart/index.d.ts +9 -0
- package/dist/components/charts/FunnelChart/FunnelChart.animations.d.ts +35 -0
- package/dist/components/charts/FunnelChart/FunnelChart.d.ts +9 -0
- package/dist/components/charts/FunnelChart/FunnelChart.theme.d.ts +2 -0
- package/dist/components/charts/FunnelChart/FunnelChart.types.d.ts +105 -0
- package/dist/components/charts/FunnelChart/index.d.ts +4 -0
- package/dist/components/charts/Heatmap/Heatmap.d.ts +7 -0
- package/dist/components/charts/Heatmap/Heatmap.theme.d.ts +12 -0
- package/dist/components/charts/Heatmap/Heatmap.types.d.ts +134 -0
- package/dist/components/charts/Heatmap/HeatmapCell.d.ts +6 -0
- package/dist/components/charts/Heatmap/HeatmapLegend.d.ts +19 -0
- package/dist/components/charts/Heatmap/index.d.ts +7 -0
- package/dist/components/charts/Heatmap/utils/heatmapUtils.d.ts +30 -0
- package/dist/components/charts/LineChart/LineChart.d.ts +3 -0
- package/dist/components/charts/LineChart/LineChart.types.d.ts +33 -0
- package/dist/components/charts/LineChart/index.d.ts +2 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.d.ts +9 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.theme.d.ts +22 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.types.d.ts +71 -0
- package/dist/components/charts/ScatterPlot/index.d.ts +3 -0
- package/dist/components/charts/hooks/index.d.ts +6 -0
- package/dist/components/charts/hooks/useChartAccessibility.d.ts +39 -0
- package/dist/components/charts/hooks/useChartScales.d.ts +87 -0
- package/dist/components/charts/hooks/useChartTheme.d.ts +16 -0
- package/dist/components/charts/hooks/useChartValidation.d.ts +74 -0
- package/dist/components/charts/hooks/useTooltipPosition.d.ts +98 -0
- package/dist/components/charts/index.d.ts +49 -0
- package/dist/components/charts/shared/BarRenderer/BarRenderer.d.ts +9 -0
- package/dist/components/charts/shared/BarRenderer/BarRenderer.types.d.ts +85 -0
- package/dist/components/charts/shared/BarRenderer/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartAxis/ChartAxis.types.d.ts +92 -0
- package/dist/components/charts/shared/ChartAxis/XAxis.d.ts +7 -0
- package/dist/components/charts/shared/ChartAxis/YAxis.d.ts +7 -0
- package/dist/components/charts/shared/ChartAxis/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartContainer/ChartContainer.d.ts +85 -0
- package/dist/components/charts/shared/ChartContainer/ChartContainer.types.d.ts +91 -0
- package/dist/components/charts/shared/ChartContainer/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartCrosshair/ChartCrosshair.d.ts +7 -0
- package/dist/components/charts/shared/ChartCrosshair/ChartCrosshair.theme.d.ts +6 -0
- package/dist/components/charts/shared/ChartCrosshair/ChartCrosshair.types.d.ts +35 -0
- package/dist/components/charts/shared/ChartCrosshair/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartErrorBoundary/ChartErrorBoundary.d.ts +34 -0
- package/dist/components/charts/shared/ChartErrorBoundary/index.d.ts +1 -0
- package/dist/components/charts/shared/ChartGrid/HorizontalGrid.d.ts +26 -0
- package/dist/components/charts/shared/ChartGrid/index.d.ts +2 -0
- package/dist/components/charts/shared/ChartLegend/ChartLegend.d.ts +7 -0
- package/dist/components/charts/shared/ChartLegend/ChartLegend.types.d.ts +15 -0
- package/dist/components/charts/shared/ChartLegend/ChartLegendContent.d.ts +7 -0
- package/dist/components/charts/shared/ChartLegend/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartMarker/ChartMarker.d.ts +7 -0
- package/dist/components/charts/shared/ChartMarker/ChartMarker.theme.d.ts +6 -0
- package/dist/components/charts/shared/ChartMarker/ChartMarker.types.d.ts +21 -0
- package/dist/components/charts/shared/ChartMarker/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartText/ChartText.d.ts +7 -0
- package/dist/components/charts/shared/ChartText/ChartText.theme.d.ts +6 -0
- package/dist/components/charts/shared/ChartText/ChartText.types.d.ts +21 -0
- package/dist/components/charts/shared/ChartText/index.d.ts +2 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.d.ts +19 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.theme.d.ts +7 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.types.d.ts +74 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltipContent.d.ts +3 -0
- package/dist/components/charts/shared/ChartTooltip/index.d.ts +4 -0
- package/dist/components/charts/shared/LineRenderer/LineRenderer.d.ts +9 -0
- package/dist/components/charts/shared/LineRenderer/LineRenderer.types.d.ts +83 -0
- package/dist/components/charts/shared/LineRenderer/index.d.ts +2 -0
- package/dist/components/charts/shared/index.d.ts +14 -0
- package/dist/components/charts/theme/chart.theme.d.ts +6 -0
- package/dist/components/charts/types/chart.types.d.ts +176 -0
- package/dist/components/charts/utils/animation-utils.d.ts +111 -0
- package/dist/components/charts/utils/chart-validation.d.ts +79 -0
- package/dist/components/charts/utils/color-utils.d.ts +78 -0
- package/dist/components/charts/utils/index.d.ts +3 -0
- package/dist/components/core/Accordion/Accordion.animations.d.ts +9 -0
- package/dist/components/core/Accordion/Accordion.animations.js +45 -0
- package/dist/components/core/Accordion/Accordion.d.ts +11 -0
- package/dist/components/core/Accordion/Accordion.js +55 -0
- package/dist/components/core/Accordion/Accordion.theme.d.ts +10 -0
- package/dist/components/core/Accordion/Accordion.theme.js +18 -0
- package/dist/components/core/Accordion/Accordion.types.d.ts +100 -0
- package/dist/components/core/Accordion/AccordionContent.d.ts +3 -0
- package/dist/components/core/Accordion/AccordionContent.js +21 -0
- package/dist/components/core/Accordion/AccordionItem.d.ts +4 -0
- package/dist/components/core/Accordion/AccordionItem.js +54 -0
- package/dist/components/core/Accordion/AccordionTrigger.d.ts +3 -0
- package/dist/components/core/Accordion/AccordionTrigger.js +23 -0
- package/dist/components/core/Accordion/index.d.ts +4 -0
- package/dist/components/core/Alert/Alert.d.ts +3 -0
- package/dist/components/core/Alert/Alert.js +39 -0
- package/dist/components/core/Alert/Alert.theme.d.ts +2 -0
- package/dist/components/core/Alert/Alert.theme.js +24 -0
- package/dist/components/core/Alert/Alert.types.d.ts +43 -0
- package/dist/components/core/Alert/index.d.ts +3 -0
- package/dist/components/core/AlertDialog/AlertDialog.d.ts +6 -0
- package/dist/components/core/AlertDialog/AlertDialog.types.d.ts +18 -0
- package/dist/components/core/AlertDialog/index.d.ts +2 -0
- package/dist/components/core/Avatar/Avatar.d.ts +3 -0
- package/dist/components/core/Avatar/Avatar.js +100 -0
- package/dist/components/core/Avatar/Avatar.theme.d.ts +14 -0
- package/dist/components/core/Avatar/Avatar.theme.js +25 -0
- package/dist/components/core/Avatar/Avatar.types.d.ts +69 -0
- package/dist/components/core/Avatar/index.d.ts +2 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.animations.d.ts +12 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.animations.js +79 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.d.ts +3 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.js +67 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.theme.d.ts +15 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.theme.js +23 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.types.d.ts +44 -0
- package/dist/components/core/AvatarGroup/index.d.ts +2 -0
- package/dist/components/core/Badge/Badge.animations.d.ts +8 -0
- package/dist/components/core/Badge/Badge.animations.js +109 -0
- package/dist/components/core/Badge/Badge.d.ts +14 -0
- package/dist/components/core/Badge/Badge.js +164 -0
- package/dist/components/core/Badge/Badge.theme.d.ts +6 -0
- package/dist/components/core/Badge/Badge.theme.js +93 -0
- package/dist/components/core/Badge/Badge.types.d.ts +165 -0
- package/dist/components/core/Badge/index.d.ts +2 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.d.ts +17 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.js +104 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.theme.d.ts +19 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.theme.js +32 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.types.d.ts +58 -0
- package/dist/components/core/Breadcrumbs/index.d.ts +3 -0
- package/dist/components/core/Button/Button.animations.d.ts +5 -0
- package/dist/components/core/Button/Button.d.ts +4 -0
- package/dist/components/core/Button/Button.js +112 -0
- package/dist/components/core/Button/Button.ripple.d.ts +67 -0
- package/dist/components/core/Button/Button.ripple.js +229 -0
- package/dist/components/core/Button/Button.theme.d.ts +21 -0
- package/dist/components/core/Button/Button.theme.js +52 -0
- package/dist/components/core/Button/Button.types.d.ts +46 -0
- package/dist/components/core/Button/index.d.ts +2 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.d.ts +4 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.js +12 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.theme.d.ts +18 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.theme.js +48 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.types.d.ts +36 -0
- package/dist/components/core/ButtonGroup/ButtonGroupSeparator.d.ts +4 -0
- package/dist/components/core/ButtonGroup/ButtonGroupSeparator.js +14 -0
- package/dist/components/core/ButtonGroup/ButtonGroupText.d.ts +4 -0
- package/dist/components/core/ButtonGroup/ButtonGroupText.js +18 -0
- package/dist/components/core/ButtonGroup/index.d.ts +4 -0
- package/dist/components/core/Calendar/Calendar.animations.d.ts +12 -0
- package/dist/components/core/Calendar/Calendar.animations.js +25 -0
- package/dist/components/core/Calendar/Calendar.d.ts +3 -0
- package/dist/components/core/Calendar/Calendar.js +478 -0
- package/dist/components/core/Calendar/Calendar.theme.d.ts +6 -0
- package/dist/components/core/Calendar/Calendar.theme.js +21 -0
- package/dist/components/core/Calendar/Calendar.types.d.ts +124 -0
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.d.ts +4 -0
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.theme.d.ts +12 -0
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.types.d.ts +24 -0
- package/dist/components/core/Calendar/CalendarEvent/index.d.ts +2 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.animations.d.ts +4 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.d.ts +3 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.theme.d.ts +2 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.types.d.ts +93 -0
- package/dist/components/core/Calendar/CalendarMini/index.d.ts +2 -0
- package/dist/components/core/Calendar/calendar.utils.d.ts +19 -0
- package/dist/components/core/Calendar/calendar.utils.js +44 -0
- package/dist/components/core/Calendar/index.d.ts +5 -0
- package/dist/components/core/Card/Card.d.ts +8 -0
- package/dist/components/core/Card/Card.js +26 -0
- package/dist/components/core/Card/Card.theme.d.ts +2 -0
- package/dist/components/core/Card/Card.theme.js +10 -0
- package/dist/components/core/Card/Card.types.d.ts +58 -0
- package/dist/components/core/Card/CardContent.d.ts +3 -0
- package/dist/components/core/Card/CardContent.js +12 -0
- package/dist/components/core/Card/CardDescription.d.ts +3 -0
- package/dist/components/core/Card/CardDescription.js +12 -0
- package/dist/components/core/Card/CardFooter.d.ts +3 -0
- package/dist/components/core/Card/CardFooter.js +12 -0
- package/dist/components/core/Card/CardHeader.d.ts +3 -0
- package/dist/components/core/Card/CardHeader.js +12 -0
- package/dist/components/core/Card/CardTitle.d.ts +3 -0
- package/dist/components/core/Card/CardTitle.js +12 -0
- package/dist/components/core/Card/index.d.ts +2 -0
- package/dist/components/core/Carousel/Carousel.d.ts +3 -0
- package/dist/components/core/Carousel/Carousel.js +87 -0
- package/dist/components/core/Carousel/Carousel.theme.d.ts +10 -0
- package/dist/components/core/Carousel/Carousel.theme.js +11 -0
- package/dist/components/core/Carousel/Carousel.types.d.ts +113 -0
- package/dist/components/core/Carousel/CarouselContent.d.ts +4 -0
- package/dist/components/core/Carousel/CarouselContent.js +53 -0
- package/dist/components/core/Carousel/CarouselContext.d.ts +3 -0
- package/dist/components/core/Carousel/CarouselContext.js +12 -0
- package/dist/components/core/Carousel/CarouselItem.d.ts +4 -0
- package/dist/components/core/Carousel/CarouselItem.js +12 -0
- package/dist/components/core/Carousel/CarouselNext.d.ts +4 -0
- package/dist/components/core/Carousel/CarouselNext.js +17 -0
- package/dist/components/core/Carousel/CarouselPrevious.d.ts +4 -0
- package/dist/components/core/Carousel/CarouselPrevious.js +17 -0
- package/dist/components/core/Carousel/index.d.ts +2 -0
- package/dist/components/core/ChatMessage/ChatMessage.d.ts +3 -0
- package/dist/components/core/ChatMessage/ChatMessage.js +62 -0
- package/dist/components/core/ChatMessage/ChatMessage.theme.d.ts +6 -0
- package/dist/components/core/ChatMessage/ChatMessage.theme.js +31 -0
- package/dist/components/core/ChatMessage/ChatMessage.types.d.ts +120 -0
- package/dist/components/core/ChatMessage/index.d.ts +2 -0
- package/dist/components/core/CommandPalette/CommandItem.d.ts +51 -0
- package/dist/components/core/CommandPalette/CommandPalette.animations.d.ts +6 -0
- package/dist/components/core/CommandPalette/CommandPalette.d.ts +29 -0
- package/dist/components/core/CommandPalette/CommandPalette.theme.d.ts +2 -0
- package/dist/components/core/CommandPalette/CommandPalette.types.d.ts +89 -0
- package/dist/components/core/CommandPalette/index.d.ts +3 -0
- package/dist/components/core/ContextMenu/ContextMenu.d.ts +15 -0
- package/dist/components/core/ContextMenu/ContextMenu.theme.d.ts +11 -0
- package/dist/components/core/ContextMenu/ContextMenu.types.d.ts +83 -0
- package/dist/components/core/ContextMenu/ContextMenuContent.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuContext.d.ts +5 -0
- package/dist/components/core/ContextMenu/ContextMenuItem.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuLabel.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuSeparator.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuSub.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuSubContent.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuSubTrigger.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuTrigger.d.ts +6 -0
- package/dist/components/core/ContextMenu/index.d.ts +4 -0
- package/dist/components/core/Divider/Divider.d.ts +3 -0
- package/dist/components/core/Divider/Divider.js +21 -0
- package/dist/components/core/Divider/Divider.theme.d.ts +2 -0
- package/dist/components/core/Divider/Divider.theme.js +19 -0
- package/dist/components/core/Divider/Divider.types.d.ts +40 -0
- package/dist/components/core/Divider/index.d.ts +2 -0
- package/dist/components/core/DragDrop/DragDrop.d.ts +9 -0
- package/dist/components/core/DragDrop/DragDrop.js +178 -0
- package/dist/components/core/DragDrop/DragDrop.theme.d.ts +2 -0
- package/dist/components/core/DragDrop/DragDrop.theme.js +8 -0
- package/dist/components/core/DragDrop/DragDrop.types.d.ts +55 -0
- package/dist/components/core/DragDrop/index.d.ts +2 -0
- package/dist/components/core/Drawer/Drawer.animations.d.ts +10 -0
- package/dist/components/core/Drawer/Drawer.animations.js +104 -0
- package/dist/components/core/Drawer/Drawer.d.ts +20 -0
- package/dist/components/core/Drawer/Drawer.js +84 -0
- package/dist/components/core/Drawer/Drawer.theme.d.ts +32 -0
- package/dist/components/core/Drawer/Drawer.theme.js +40 -0
- package/dist/components/core/Drawer/Drawer.types.d.ts +56 -0
- package/dist/components/core/Drawer/DrawerContent.d.ts +6 -0
- package/dist/components/core/Drawer/DrawerContent.js +13 -0
- package/dist/components/core/Drawer/DrawerFooter.d.ts +6 -0
- package/dist/components/core/Drawer/DrawerFooter.js +13 -0
- package/dist/components/core/Drawer/DrawerHeader.d.ts +6 -0
- package/dist/components/core/Drawer/DrawerHeader.js +18 -0
- package/dist/components/core/Drawer/index.d.ts +2 -0
- package/dist/components/core/Dropdown/Dropdown.d.ts +15 -0
- package/dist/components/core/Dropdown/Dropdown.js +92 -0
- package/dist/components/core/Dropdown/Dropdown.theme.d.ts +9 -0
- package/dist/components/core/Dropdown/Dropdown.theme.js +16 -0
- package/dist/components/core/Dropdown/Dropdown.types.d.ts +83 -0
- package/dist/components/core/Dropdown/DropdownContext.d.ts +3 -0
- package/dist/components/core/Dropdown/DropdownContext.js +12 -0
- package/dist/components/core/Dropdown/DropdownItem.d.ts +6 -0
- package/dist/components/core/Dropdown/DropdownItem.js +77 -0
- package/dist/components/core/Dropdown/DropdownMenu.d.ts +6 -0
- package/dist/components/core/Dropdown/DropdownMenu.js +179 -0
- package/dist/components/core/Dropdown/DropdownSection.d.ts +6 -0
- package/dist/components/core/Dropdown/DropdownSection.js +20 -0
- package/dist/components/core/Dropdown/DropdownSeparator.d.ts +6 -0
- package/dist/components/core/Dropdown/DropdownSeparator.js +16 -0
- package/dist/components/core/Dropdown/DropdownTrigger.d.ts +9 -0
- package/dist/components/core/Dropdown/DropdownTrigger.js +45 -0
- package/dist/components/core/Dropdown/index.d.ts +9 -0
- package/dist/components/core/Empty/Empty.d.ts +4 -0
- package/dist/components/core/Empty/Empty.js +26 -0
- package/dist/components/core/Empty/Empty.theme.d.ts +12 -0
- package/dist/components/core/Empty/Empty.theme.js +13 -0
- package/dist/components/core/Empty/Empty.types.d.ts +28 -0
- package/dist/components/core/Empty/index.d.ts +3 -0
- package/dist/components/core/Kbd/Kbd.d.ts +14 -0
- package/dist/components/core/Kbd/Kbd.js +71 -0
- package/dist/components/core/Kbd/Kbd.theme.d.ts +10 -0
- package/dist/components/core/Kbd/Kbd.theme.js +13 -0
- package/dist/components/core/Kbd/Kbd.types.d.ts +22 -0
- package/dist/components/core/Kbd/index.d.ts +2 -0
- package/dist/components/core/Link/Link.d.ts +4 -0
- package/dist/components/core/Link/Link.js +42 -0
- package/dist/components/core/Link/Link.types.d.ts +22 -0
- package/dist/components/core/Link/index.d.ts +2 -0
- package/dist/components/core/Loader/Loader.d.ts +24 -0
- package/dist/components/core/Loader/Loader.theme.d.ts +27 -0
- package/dist/components/core/Loader/Loader.types.d.ts +71 -0
- package/dist/components/core/Loader/index.d.ts +2 -0
- package/dist/components/core/Masonry/Masonry.d.ts +4 -0
- package/dist/components/core/Masonry/Masonry.js +215 -0
- package/dist/components/core/Masonry/Masonry.theme.d.ts +9 -0
- package/dist/components/core/Masonry/Masonry.theme.js +36 -0
- package/dist/components/core/Masonry/Masonry.types.d.ts +49 -0
- package/dist/components/core/Masonry/index.d.ts +3 -0
- package/dist/components/core/Metric/Metric.d.ts +3 -0
- package/dist/components/core/Metric/Metric.js +32 -0
- package/dist/components/core/Metric/Metric.theme.d.ts +6 -0
- package/dist/components/core/Metric/Metric.theme.js +68 -0
- package/dist/components/core/Metric/Metric.types.d.ts +73 -0
- package/dist/components/core/Metric/index.d.ts +3 -0
- package/dist/components/core/Modal/Modal.animations.d.ts +9 -0
- package/dist/components/core/Modal/Modal.animations.js +51 -0
- package/dist/components/core/Modal/Modal.d.ts +28 -0
- package/dist/components/core/Modal/Modal.js +85 -0
- package/dist/components/core/Modal/Modal.theme.d.ts +9 -0
- package/dist/components/core/Modal/Modal.theme.js +20 -0
- package/dist/components/core/Modal/Modal.types.d.ts +66 -0
- package/dist/components/core/Modal/ModalBody.d.ts +6 -0
- package/dist/components/core/Modal/ModalBody.js +42 -0
- package/dist/components/core/Modal/ModalDescription.d.ts +6 -0
- package/dist/components/core/Modal/ModalDescription.js +13 -0
- package/dist/components/core/Modal/ModalFooter.d.ts +6 -0
- package/dist/components/core/Modal/ModalFooter.js +13 -0
- package/dist/components/core/Modal/ModalHeader.d.ts +6 -0
- package/dist/components/core/Modal/ModalHeader.js +21 -0
- package/dist/components/core/Modal/ModalTitle.d.ts +6 -0
- package/dist/components/core/Modal/ModalTitle.js +13 -0
- package/dist/components/core/Modal/index.d.ts +2 -0
- package/dist/components/core/NavItem/NavItem.d.ts +3 -0
- package/dist/components/core/NavItem/NavItem.js +93 -0
- package/dist/components/core/NavItem/NavItem.theme.d.ts +2 -0
- package/dist/components/core/NavItem/NavItem.theme.js +27 -0
- package/dist/components/core/NavItem/NavItem.types.d.ts +113 -0
- package/dist/components/core/NavItem/index.d.ts +2 -0
- package/dist/components/core/Notification/Notification.d.ts +3 -0
- package/dist/components/core/Notification/Notification.js +121 -0
- package/dist/components/core/Notification/Notification.theme.d.ts +16 -0
- package/dist/components/core/Notification/Notification.theme.js +61 -0
- package/dist/components/core/Notification/Notification.types.d.ts +46 -0
- package/dist/components/core/Notification/index.d.ts +3 -0
- package/dist/components/core/Pagination/Pagination.d.ts +7 -0
- package/dist/components/core/Pagination/Pagination.js +111 -0
- package/dist/components/core/Pagination/Pagination.theme.d.ts +14 -0
- package/dist/components/core/Pagination/Pagination.theme.js +18 -0
- package/dist/components/core/Pagination/Pagination.types.d.ts +48 -0
- package/dist/components/core/Pagination/index.d.ts +2 -0
- package/dist/components/core/Pill/Pill.animations.d.ts +32 -0
- package/dist/components/core/Pill/Pill.d.ts +43 -0
- package/dist/components/core/Pill/Pill.theme.d.ts +8 -0
- package/dist/components/core/Pill/Pill.types.d.ts +95 -0
- package/dist/components/core/Pill/index.d.ts +3 -0
- package/dist/components/core/Popover/Popover.animations.d.ts +36 -0
- package/dist/components/core/Popover/Popover.animations.js +19 -0
- package/dist/components/core/Popover/Popover.d.ts +6 -0
- package/dist/components/core/Popover/Popover.js +68 -0
- package/dist/components/core/Popover/Popover.theme.d.ts +12 -0
- package/dist/components/core/Popover/Popover.theme.js +13 -0
- package/dist/components/core/Popover/Popover.types.d.ts +53 -0
- package/dist/components/core/Popover/PopoverContent.d.ts +7 -0
- package/dist/components/core/Popover/PopoverContent.js +90 -0
- package/dist/components/core/Popover/PopoverContext.d.ts +4 -0
- package/dist/components/core/Popover/PopoverContext.js +14 -0
- package/dist/components/core/Popover/PopoverTrigger.d.ts +3 -0
- package/dist/components/core/Popover/PopoverTrigger.js +66 -0
- package/dist/components/core/Popover/index.d.ts +5 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.d.ts +4 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.js +35 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.theme.d.ts +15 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.theme.js +17 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.types.d.ts +42 -0
- package/dist/components/core/ProgressiveBlur/index.d.ts +2 -0
- package/dist/components/core/Segmented/Segmented.d.ts +5 -0
- package/dist/components/core/Segmented/Segmented.js +71 -0
- package/dist/components/core/Segmented/Segmented.theme.d.ts +30 -0
- package/dist/components/core/Segmented/Segmented.theme.js +40 -0
- package/dist/components/core/Segmented/Segmented.types.d.ts +52 -0
- package/dist/components/core/Segmented/SegmentedContext.d.ts +16 -0
- package/dist/components/core/Segmented/SegmentedContext.js +8 -0
- package/dist/components/core/Segmented/SegmentedItem.d.ts +3 -0
- package/dist/components/core/Segmented/SegmentedItem.js +30 -0
- package/dist/components/core/Segmented/index.d.ts +2 -0
- package/dist/components/core/Sidebar/Sidebar.d.ts +3 -0
- package/dist/components/core/Sidebar/Sidebar.js +28 -0
- package/dist/components/core/Sidebar/Sidebar.theme.d.ts +2 -0
- package/dist/components/core/Sidebar/Sidebar.theme.js +16 -0
- package/dist/components/core/Sidebar/Sidebar.types.d.ts +129 -0
- package/dist/components/core/Sidebar/SidebarContent.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarContent.js +12 -0
- package/dist/components/core/Sidebar/SidebarContext.d.ts +17 -0
- package/dist/components/core/Sidebar/SidebarContext.js +38 -0
- package/dist/components/core/Sidebar/SidebarFooter.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarFooter.js +11 -0
- package/dist/components/core/Sidebar/SidebarHeader.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarHeader.js +22 -0
- package/dist/components/core/Sidebar/SidebarNav.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarNav.js +11 -0
- package/dist/components/core/Sidebar/SidebarNavGroup.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarNavGroup.js +19 -0
- package/dist/components/core/Sidebar/SidebarToggle.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarToggle.js +28 -0
- package/dist/components/core/Sidebar/index.d.ts +9 -0
- package/dist/components/core/Skeleton/Skeleton.d.ts +24 -0
- package/dist/components/core/Skeleton/Skeleton.theme.d.ts +15 -0
- package/dist/components/core/Skeleton/Skeleton.types.d.ts +45 -0
- package/dist/components/core/Skeleton/index.d.ts +2 -0
- package/dist/components/core/SlidingNumber/SlidingNumber.d.ts +16 -0
- package/dist/components/core/SlidingNumber/SlidingNumber.js +63 -0
- package/dist/components/core/SlidingNumber/SlidingNumber.types.d.ts +36 -0
- package/dist/components/core/SlidingNumber/index.d.ts +2 -0
- package/dist/components/core/Sortable/Sortable.animations.js +74 -0
- package/dist/components/core/Sortable/Sortable.d.ts +4 -0
- package/dist/components/core/Sortable/Sortable.js +220 -0
- package/dist/components/core/Sortable/Sortable.theme.d.ts +2 -0
- package/dist/components/core/Sortable/Sortable.theme.js +7 -0
- package/dist/components/core/Sortable/Sortable.types.d.ts +71 -0
- package/dist/components/core/Sortable/index.d.ts +2 -0
- package/dist/components/core/Spinner/Spinner.d.ts +4 -0
- package/dist/components/core/Spinner/Spinner.js +14 -0
- package/dist/components/core/Spinner/Spinner.theme.d.ts +15 -0
- package/dist/components/core/Spinner/Spinner.theme.js +26 -0
- package/dist/components/core/Spinner/Spinner.types.d.ts +31 -0
- package/dist/components/core/Spinner/index.d.ts +2 -0
- package/dist/components/core/Stepper/Stepper.animations.d.ts +9 -0
- package/dist/components/core/Stepper/Stepper.d.ts +21 -0
- package/dist/components/core/Stepper/Stepper.js +60 -0
- package/dist/components/core/Stepper/Stepper.theme.d.ts +19 -0
- package/dist/components/core/Stepper/Stepper.theme.js +24 -0
- package/dist/components/core/Stepper/Stepper.types.d.ts +31 -0
- package/dist/components/core/Stepper/StepperItem.d.ts +26 -0
- package/dist/components/core/Stepper/StepperItem.js +90 -0
- package/dist/components/core/Stepper/index.d.ts +2 -0
- package/dist/components/core/Table/Table.animations.d.ts +21 -0
- package/dist/components/core/Table/Table.d.ts +54 -0
- package/dist/components/core/Table/Table.js +223 -0
- package/dist/components/core/Table/Table.theme.d.ts +2 -0
- package/dist/components/core/Table/Table.theme.js +28 -0
- package/dist/components/core/Table/Table.types.d.ts +268 -0
- package/dist/components/core/Table/Table.utils.d.ts +8 -0
- package/dist/components/core/Table/Table.utils.js +30 -0
- package/dist/components/core/Table/components/DeclarativeComponents.d.ts +7 -0
- package/dist/components/core/Table/components/DeclarativeComponents.js +123 -0
- package/dist/components/core/Table/components/TableActions/TableActions.d.ts +8 -0
- package/dist/components/core/Table/components/TableActions/TableActions.js +56 -0
- package/dist/components/core/Table/components/TableActions/TableActions.types.d.ts +40 -0
- package/dist/components/core/Table/components/TableActions/TableActionsMenu.d.ts +6 -0
- package/dist/components/core/Table/components/TableActions/TableActionsMenu.js +29 -0
- package/dist/components/core/Table/components/TableActions/index.d.ts +3 -0
- package/dist/components/core/Table/components/TableActionsMenu.d.ts +6 -0
- package/dist/components/core/Table/components/TablePagination/TablePagination.d.ts +17 -0
- package/dist/components/core/Table/components/TablePagination/TablePagination.js +51 -0
- package/dist/components/core/Table/components/TablePagination/TablePagination.types.d.ts +21 -0
- package/dist/components/core/Table/components/TablePagination/index.d.ts +2 -0
- package/dist/components/core/Table/components/TableSelectionHeader/TableSelectionHeader.d.ts +15 -0
- package/dist/components/core/Table/components/TableSelectionHeader/TableSelectionHeader.js +29 -0
- package/dist/components/core/Table/components/TableSelectionHeader/index.d.ts +3 -0
- package/dist/components/core/Table/components/core/TableBody.d.ts +3 -0
- package/dist/components/core/Table/components/core/TableBody.js +32 -0
- package/dist/components/core/Table/components/core/TableCell.d.ts +22 -0
- package/dist/components/core/Table/components/core/TableCell.js +47 -0
- package/dist/components/core/Table/components/core/TableHeader.d.ts +3 -0
- package/dist/components/core/Table/components/core/TableHeader.js +77 -0
- package/dist/components/core/Table/components/core/TableRow.d.ts +3 -0
- package/dist/components/core/Table/components/core/TableRow.js +46 -0
- package/dist/components/core/Table/components/core/index.d.ts +4 -0
- package/dist/components/core/Table/index.d.ts +20 -0
- package/dist/components/core/Table/index.js +20 -0
- package/dist/components/core/Tabs/Tabs.animations.d.ts +23 -0
- package/dist/components/core/Tabs/Tabs.animations.js +86 -0
- package/dist/components/core/Tabs/Tabs.d.ts +7 -0
- package/dist/components/core/Tabs/Tabs.js +92 -0
- package/dist/components/core/Tabs/Tabs.theme.d.ts +16 -0
- package/dist/components/core/Tabs/Tabs.theme.js +22 -0
- package/dist/components/core/Tabs/Tabs.types.d.ts +134 -0
- package/dist/components/core/Tabs/TabsContent.d.ts +6 -0
- package/dist/components/core/Tabs/TabsContent.js +53 -0
- package/dist/components/core/Tabs/TabsContext.d.ts +10 -0
- package/dist/components/core/Tabs/TabsContext.js +18 -0
- package/dist/components/core/Tabs/TabsList.d.ts +6 -0
- package/dist/components/core/Tabs/TabsList.js +91 -0
- package/dist/components/core/Tabs/TabsTrigger.d.ts +6 -0
- package/dist/components/core/Tabs/TabsTrigger.js +143 -0
- package/dist/components/core/Tabs/index.d.ts +6 -0
- package/dist/components/core/Toast/Toast.animations.d.ts +31 -0
- package/dist/components/core/Toast/Toast.animations.js +58 -0
- package/dist/components/core/Toast/Toast.d.ts +3 -0
- package/dist/components/core/Toast/Toast.js +68 -0
- package/dist/components/core/Toast/Toast.theme.d.ts +2 -0
- package/dist/components/core/Toast/Toast.theme.js +22 -0
- package/dist/components/core/Toast/Toast.types.d.ts +108 -0
- package/dist/components/core/Toast/ToastProvider.d.ts +4 -0
- package/dist/components/core/Toast/ToastProvider.js +73 -0
- package/dist/components/core/Toast/index.d.ts +5 -0
- package/dist/components/core/Toast/useToast.d.ts +2 -0
- package/dist/components/core/Toast/useToast.js +97 -0
- package/dist/components/core/Tooltip/Tooltip.animations.d.ts +32 -0
- package/dist/components/core/Tooltip/Tooltip.animations.js +46 -0
- package/dist/components/core/Tooltip/Tooltip.d.ts +7 -0
- package/dist/components/core/Tooltip/Tooltip.js +84 -0
- package/dist/components/core/Tooltip/Tooltip.theme.d.ts +3 -0
- package/dist/components/core/Tooltip/Tooltip.theme.js +6 -0
- package/dist/components/core/Tooltip/Tooltip.types.d.ts +81 -0
- package/dist/components/core/Tooltip/index.d.ts +3 -0
- package/dist/components/core/Tooltip/useTooltipPositioning.d.ts +12 -0
- package/dist/components/core/Tree/Tree.animations.d.ts +6 -0
- package/dist/components/core/Tree/Tree.animations.js +77 -0
- package/dist/components/core/Tree/Tree.d.ts +2 -0
- package/dist/components/core/Tree/Tree.js +213 -0
- package/dist/components/core/Tree/Tree.theme.d.ts +2 -0
- package/dist/components/core/Tree/Tree.theme.js +10 -0
- package/dist/components/core/Tree/Tree.types.d.ts +62 -0
- package/dist/components/core/Tree/index.d.ts +3 -0
- package/dist/components/core/index.d.ts +42 -0
- package/dist/components/effects/CustomCursor/CustomCursor.animations.d.ts +16 -0
- package/dist/components/effects/CustomCursor/CustomCursor.animations.js +46 -0
- package/dist/components/effects/CustomCursor/CustomCursor.d.ts +48 -0
- package/dist/components/effects/CustomCursor/CustomCursor.js +316 -0
- package/dist/components/effects/CustomCursor/CustomCursor.theme.d.ts +6 -0
- package/dist/components/effects/CustomCursor/CustomCursor.theme.js +32 -0
- package/dist/components/effects/CustomCursor/CustomCursor.types.d.ts +88 -0
- package/dist/components/effects/CustomCursor/index.d.ts +4 -0
- package/dist/components/effects/GlassEffect/GlassEffect.d.ts +15 -0
- package/dist/components/effects/GlassEffect/GlassEffect.js +40 -0
- package/dist/components/effects/GlassEffect/GlassEffect.types.d.ts +19 -0
- package/dist/components/effects/GlassEffect/index.d.ts +2 -0
- package/dist/components/effects/Overlay/Overlay.d.ts +31 -0
- package/dist/components/effects/Overlay/Overlay.js +131 -0
- package/dist/components/effects/Overlay/Overlay.types.d.ts +49 -0
- package/dist/components/effects/Overlay/index.d.ts +2 -0
- package/dist/components/effects/index.d.ts +6 -0
- package/dist/components/forms/Checkbox/Checkbox.d.ts +6 -0
- package/dist/components/forms/Checkbox/Checkbox.js +45 -0
- package/dist/components/forms/Checkbox/Checkbox.theme.d.ts +5 -0
- package/dist/components/forms/Checkbox/Checkbox.theme.js +15 -0
- package/dist/components/forms/Checkbox/Checkbox.types.d.ts +35 -0
- package/dist/components/forms/Checkbox/index.d.ts +3 -0
- package/dist/components/forms/ColorPicker/ColorPicker.animations.d.ts +17 -0
- package/dist/components/forms/ColorPicker/ColorPicker.d.ts +27 -0
- package/dist/components/forms/ColorPicker/ColorPicker.theme.d.ts +6 -0
- package/dist/components/forms/ColorPicker/ColorPicker.types.d.ts +219 -0
- package/dist/components/forms/ColorPicker/ColorPicker2DCanvas.d.ts +10 -0
- package/dist/components/forms/ColorPicker/ColorPickerContent.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerEyeDropper.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerFormatSelector.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerInput.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerPresets.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerSliders.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerSwatch.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerTrigger.d.ts +7 -0
- package/dist/components/forms/ColorPicker/colorUtils.d.ts +121 -0
- package/dist/components/forms/ColorPicker/index.d.ts +17 -0
- package/dist/components/forms/DatePicker/DatePicker.animations.d.ts +13 -0
- package/dist/components/forms/DatePicker/DatePicker.animations.js +33 -0
- package/dist/components/forms/DatePicker/DatePicker.d.ts +38 -0
- package/dist/components/forms/DatePicker/DatePicker.js +140 -0
- package/dist/components/forms/DatePicker/DatePicker.theme.d.ts +9 -0
- package/dist/components/forms/DatePicker/DatePicker.theme.js +35 -0
- package/dist/components/forms/DatePicker/DatePicker.types.d.ts +146 -0
- package/dist/components/forms/DatePicker/DatePickerContent.d.ts +7 -0
- package/dist/components/forms/DatePicker/DatePickerContent.js +182 -0
- package/dist/components/forms/DatePicker/DatePickerPresets.d.ts +12 -0
- package/dist/components/forms/DatePicker/DatePickerPresets.js +41 -0
- package/dist/components/forms/DatePicker/DatePickerTrigger.d.ts +7 -0
- package/dist/components/forms/DatePicker/DatePickerTrigger.js +37 -0
- package/dist/components/forms/DatePicker/index.d.ts +3 -0
- package/dist/components/forms/FileUpload/FileUpload.d.ts +23 -0
- package/dist/components/forms/FileUpload/FileUpload.theme.d.ts +25 -0
- package/dist/components/forms/FileUpload/FileUpload.types.d.ts +90 -0
- package/dist/components/forms/FileUpload/index.d.ts +3 -0
- package/dist/components/forms/FormLabel/FormLabel.d.ts +6 -0
- package/dist/components/forms/FormLabel/FormLabel.js +16 -0
- package/dist/components/forms/FormLabel/FormLabel.theme.d.ts +5 -0
- package/dist/components/forms/FormLabel/FormLabel.theme.js +17 -0
- package/dist/components/forms/FormLabel/FormLabel.types.d.ts +28 -0
- package/dist/components/forms/FormLabel/index.d.ts +3 -0
- package/dist/components/forms/Input/Input.d.ts +3 -0
- package/dist/components/forms/Input/Input.js +324 -0
- package/dist/components/forms/Input/Input.theme.d.ts +6 -0
- package/dist/components/forms/Input/Input.theme.js +86 -0
- package/dist/components/forms/Input/Input.types.d.ts +147 -0
- package/dist/components/forms/Input/index.d.ts +3 -0
- package/dist/components/forms/Input/inputMasks.d.ts +82 -0
- package/dist/components/forms/Input/inputMasks.js +363 -0
- package/dist/components/forms/InputAddress/InputAddress.d.ts +19 -0
- package/dist/components/forms/InputAddress/InputAddress.js +77 -0
- package/dist/components/forms/InputAddress/InputAddress.theme.d.ts +26 -0
- package/dist/components/forms/InputAddress/InputAddress.theme.js +30 -0
- package/dist/components/forms/InputAddress/InputAddress.types.d.ts +93 -0
- package/dist/components/forms/InputAddress/index.d.ts +3 -0
- package/dist/components/forms/InputCounter/InputCounter.d.ts +29 -0
- package/dist/components/forms/InputCounter/InputCounter.theme.d.ts +6 -0
- package/dist/components/forms/InputCounter/InputCounter.types.d.ts +54 -0
- package/dist/components/forms/InputCounter/index.d.ts +3 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.animations.d.ts +9 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.d.ts +19 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.js +74 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.theme.d.ts +31 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.theme.js +35 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.types.d.ts +88 -0
- package/dist/components/forms/InputCreditCard/index.d.ts +4 -0
- package/dist/components/forms/InputDate/InputDate.d.ts +28 -0
- package/dist/components/forms/InputDate/InputDate.js +157 -0
- package/dist/components/forms/InputDate/InputDate.theme.d.ts +11 -0
- package/dist/components/forms/InputDate/InputDate.theme.js +13 -0
- package/dist/components/forms/InputDate/InputDate.types.d.ts +25 -0
- package/dist/components/forms/InputDate/index.d.ts +3 -0
- package/dist/components/forms/InputOTP/InputOTP.d.ts +18 -0
- package/dist/components/forms/InputOTP/InputOTP.js +182 -0
- package/dist/components/forms/InputOTP/InputOTP.theme.d.ts +6 -0
- package/dist/components/forms/InputOTP/InputOTP.theme.js +22 -0
- package/dist/components/forms/InputOTP/InputOTP.types.d.ts +49 -0
- package/dist/components/forms/InputOTP/index.d.ts +3 -0
- package/dist/components/forms/Radio/Radio.d.ts +6 -0
- package/dist/components/forms/Radio/Radio.js +35 -0
- package/dist/components/forms/Radio/Radio.theme.d.ts +5 -0
- package/dist/components/forms/Radio/Radio.theme.js +16 -0
- package/dist/components/forms/Radio/Radio.types.d.ts +35 -0
- package/dist/components/forms/Radio/index.d.ts +3 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.animations.d.ts +7 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.animations.js +31 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.d.ts +3 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.js +717 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.d.ts +9 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.js +54 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.types.d.ts +137 -0
- package/dist/components/forms/RichTextEditor/index.d.ts +3 -0
- package/dist/components/forms/Select/Select.animations.d.ts +12 -0
- package/dist/components/forms/Select/Select.animations.js +32 -0
- package/dist/components/forms/Select/Select.d.ts +18 -0
- package/dist/components/forms/Select/Select.js +393 -0
- package/dist/components/forms/Select/Select.theme.d.ts +6 -0
- package/dist/components/forms/Select/Select.theme.js +56 -0
- package/dist/components/forms/Select/Select.types.d.ts +196 -0
- package/dist/components/forms/Select/index.d.ts +4 -0
- package/dist/components/forms/Signature/Signature.d.ts +3 -0
- package/dist/components/forms/Signature/Signature.js +156 -0
- package/dist/components/forms/Signature/Signature.theme.d.ts +6 -0
- package/dist/components/forms/Signature/Signature.theme.js +32 -0
- package/dist/components/forms/Signature/Signature.types.d.ts +93 -0
- package/dist/components/forms/Signature/index.d.ts +3 -0
- package/dist/components/forms/Slider/Slider.d.ts +3 -0
- package/dist/components/forms/Slider/Slider.js +230 -0
- package/dist/components/forms/Slider/Slider.theme.d.ts +17 -0
- package/dist/components/forms/Slider/Slider.theme.js +26 -0
- package/dist/components/forms/Slider/Slider.types.d.ts +109 -0
- package/dist/components/forms/Slider/index.d.ts +3 -0
- package/dist/components/forms/Switch/Switch.d.ts +6 -0
- package/dist/components/forms/Switch/Switch.js +59 -0
- package/dist/components/forms/Switch/Switch.theme.d.ts +18 -0
- package/dist/components/forms/Switch/Switch.theme.js +18 -0
- package/dist/components/forms/Switch/Switch.types.d.ts +47 -0
- package/dist/components/forms/Switch/index.d.ts +3 -0
- package/dist/components/forms/Textarea/Textarea.d.ts +3 -0
- package/dist/components/forms/Textarea/Textarea.js +58 -0
- package/dist/components/forms/Textarea/Textarea.theme.d.ts +6 -0
- package/dist/components/forms/Textarea/Textarea.theme.js +26 -0
- package/dist/components/forms/Textarea/Textarea.types.d.ts +57 -0
- package/dist/components/forms/Textarea/index.d.ts +3 -0
- package/dist/components/forms/TimePicker/TimePicker.animations.d.ts +177 -0
- package/dist/components/forms/TimePicker/TimePicker.d.ts +17 -0
- package/dist/components/forms/TimePicker/TimePicker.js +285 -0
- package/dist/components/forms/TimePicker/TimePicker.theme.d.ts +9 -0
- package/dist/components/forms/TimePicker/TimePicker.theme.js +70 -0
- package/dist/components/forms/TimePicker/TimePicker.types.d.ts +203 -0
- package/dist/components/forms/TimePicker/TimePickerContent.d.ts +15 -0
- package/dist/components/forms/TimePicker/TimePickerContent.js +48 -0
- package/dist/components/forms/TimePicker/TimePickerTrigger.d.ts +8 -0
- package/dist/components/forms/TimePicker/TimePickerTrigger.js +49 -0
- package/dist/components/forms/TimePicker/index.d.ts +6 -0
- package/dist/components/forms/forms.theme.d.ts +54 -0
- package/dist/components/forms/forms.theme.js +67 -0
- package/dist/components/forms/index.d.ts +55 -0
- package/dist/hooks/index.d.ts +5 -0
- package/dist/hooks/useOverlay.d.ts +47 -0
- package/dist/hooks/useOverlay.js +72 -0
- package/dist/hooks/useSelectPortal.d.ts +28 -0
- package/dist/hooks/useSelectPortal.js +326 -0
- package/dist/hooks/useSlidingNumber.d.ts +60 -0
- package/dist/hooks/useTypewriter.d.ts +51 -0
- package/dist/icons/Icon.d.ts +17 -0
- package/dist/icons/Icon.js +28 -0
- package/dist/icons/Index.d.ts +16 -0
- package/dist/icons/core/ChevronUpDown.d.ts +1 -0
- package/dist/icons/core/ChevronUpDown.js +10 -0
- package/dist/icons/core/DollarIcon.d.ts +1 -0
- package/dist/icons/core/DollarIcon.js +8 -0
- package/dist/icons/core/LockIcon.d.ts +1 -0
- package/dist/icons/core/LockIcon.js +8 -0
- package/dist/icons/core/MinusIcon.d.ts +1 -0
- package/dist/icons/core/MinusIcon.js +9 -0
- package/dist/icons/core/PlusIcon.d.ts +1 -0
- package/dist/icons/core/PlusIcon.js +10 -0
- package/dist/icons/core/SearchIcon.d.ts +1 -0
- package/dist/icons/core/SearchIcon.js +10 -0
- package/dist/icons/core/TickIcon.d.ts +1 -0
- package/dist/icons/core/TickIcon.js +9 -0
- package/dist/icons/core/User.d.ts +1 -0
- package/dist/index.d.ts +124 -0
- package/dist/index.js +108 -0
- package/dist/node_modules/@heroicons/react/16/solid/esm/CheckIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/16/solid/esm/LockClosedIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/20/solid/esm/ChevronDownIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/20/solid/esm/ChevronRightIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/20/solid/esm/PaperAirplaneIcon.js +24 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowTrendingDownIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowTrendingUpIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowUturnLeftIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ArrowUturnRightIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/Bars3BottomLeftIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/Bars3BottomRightIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/Bars3Icon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/BoldIcon.js +27 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/CalendarIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/CheckIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ChevronDoubleLeftIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ChevronDoubleRightIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ChevronDownIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ChevronLeftIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ChevronRightIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ChevronUpDownIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ChevronUpIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ClockIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/Cog6ToothIcon.js +32 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/DocumentIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/EllipsisVerticalIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/ItalicIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/LockClosedIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/MagnifyingGlassIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/MinusIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/PlusIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/UnderlineIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/XMarkIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/ArrowPathIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/BellIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/CheckCircleIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/ExclamationTriangleIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/EyeIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/EyeSlashIcon.js +28 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/InformationCircleIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/LockClosedIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/PaintBrushIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/XCircleIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/solid/esm/XMarkIcon.js +26 -0
- package/dist/node_modules/clsx/dist/clsx.js +3 -0
- package/dist/node_modules/framer-motion/dist/es/animation/animate/single-value.js +11 -0
- package/dist/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.js +11 -0
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.js +103 -0
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.js +85 -0
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.js +59 -0
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/visual-element.js +26 -0
- package/dist/node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.js +6 -0
- package/dist/node_modules/framer-motion/dist/es/animation/optimized-appear/get-appear-id.js +7 -0
- package/dist/node_modules/framer-motion/dist/es/animation/utils/calc-child-stagger.js +15 -0
- package/dist/node_modules/framer-motion/dist/es/animation/utils/default-transitions.js +40 -0
- package/dist/node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.js +7 -0
- package/dist/node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.js +5 -0
- package/dist/node_modules/framer-motion/dist/es/animation/utils/is-transition-defined.js +10 -0
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.js +87 -0
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.js +63 -0
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/index.js +165 -0
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.js +44 -0
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/utils.js +14 -0
- package/dist/node_modules/framer-motion/dist/es/components/Reorder/Group.js +52 -0
- package/dist/node_modules/framer-motion/dist/es/components/Reorder/Item.js +33 -0
- package/dist/node_modules/framer-motion/dist/es/components/Reorder/utils/check-reorder.js +24 -0
- package/dist/node_modules/framer-motion/dist/es/context/LayoutGroupContext.js +5 -0
- package/dist/node_modules/framer-motion/dist/es/context/LazyContext.js +5 -0
- package/dist/node_modules/framer-motion/dist/es/context/MotionConfigContext.js +12 -0
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/create.js +13 -0
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/index.js +5 -0
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/utils.js +17 -0
- package/dist/node_modules/framer-motion/dist/es/context/PresenceContext.js +9 -0
- package/dist/node_modules/framer-motion/dist/es/context/ReorderContext.js +5 -0
- package/dist/node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.js +8 -0
- package/dist/node_modules/framer-motion/dist/es/events/add-dom-event.js +6 -0
- package/dist/node_modules/framer-motion/dist/es/events/add-pointer-event.js +8 -0
- package/dist/node_modules/framer-motion/dist/es/events/event-info.js +15 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.js +501 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/index.js +27 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.js +116 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.js +129 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/focus.js +41 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/hover.js +30 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/pan/PanSession.js +157 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/pan/index.js +50 -0
- package/dist/node_modules/framer-motion/dist/es/gestures/press.js +33 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/Feature.js +9 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/animation/exit.js +36 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/animation/index.js +40 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/animations.js +13 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/definitions.js +28 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/drag.js +17 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/gestures.js +21 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.js +147 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/layout.js +11 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/load-features.js +12 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/index.js +72 -0
- package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/observers.js +49 -0
- package/dist/node_modules/framer-motion/dist/es/motion/index.js +107 -0
- package/dist/node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.js +11 -0
- package/dist/node_modules/framer-motion/dist/es/motion/utils/symbol.js +3 -0
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.js +38 -0
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.js +139 -0
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.js +79 -0
- package/dist/node_modules/framer-motion/dist/es/motion/utils/valid-prop.js +57 -0
- package/dist/node_modules/framer-motion/dist/es/projection/animation/mix-values.js +91 -0
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/conversion.js +33 -0
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/copy.js +31 -0
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-apply.js +119 -0
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-calc.js +52 -0
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-remove.js +54 -0
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/models.js +17 -0
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/utils.js +31 -0
- package/dist/node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.js +13 -0
- package/dist/node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.js +27 -0
- package/dist/node_modules/framer-motion/dist/es/projection/node/create-projection-node.js +1582 -0
- package/dist/node_modules/framer-motion/dist/es/projection/node/state.js +19 -0
- package/dist/node_modules/framer-motion/dist/es/projection/shared/stack.js +112 -0
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.js +41 -0
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.js +35 -0
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-correction.js +13 -0
- package/dist/node_modules/framer-motion/dist/es/projection/styles/transform.js +49 -0
- package/dist/node_modules/framer-motion/dist/es/projection/utils/each-axis.js +5 -0
- package/dist/node_modules/framer-motion/dist/es/projection/utils/has-transform.js +26 -0
- package/dist/node_modules/framer-motion/dist/es/projection/utils/measure.js +17 -0
- package/dist/node_modules/framer-motion/dist/es/render/VisualElement.js +489 -0
- package/dist/node_modules/framer-motion/dist/es/render/components/create-proxy.js +45 -0
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/feature-bundle.js +13 -0
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/proxy.js +7 -0
- package/dist/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.js +43 -0
- package/dist/node_modules/framer-motion/dist/es/render/dom/create-visual-element.js +14 -0
- package/dist/node_modules/framer-motion/dist/es/render/dom/use-render.js +28 -0
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.js +6 -0
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/filter-props.js +59 -0
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.js +30 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.js +44 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/use-html-visual-state.js +10 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/use-props.js +57 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/build-styles.js +65 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/build-transform.js +62 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/create-render-state.js +8 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/render.js +17 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.js +19 -0
- package/dist/node_modules/framer-motion/dist/es/render/store.js +3 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.js +45 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/lowercase-elements.js +33 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/use-props.js +24 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/use-svg-visual-state.js +10 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.js +57 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.js +30 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.js +8 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.js +3 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/path.js +32 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/render.js +12 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.js +19 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/animation-state.js +357 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/compare-by-depth.js +3 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/flat-tree.js +24 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/get-variant-context.js +28 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.js +13 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/is-variant-label.js +8 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/motion-values.js +51 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.js +8 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/resolve-variants.js +36 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/setters.js +31 -0
- package/dist/node_modules/framer-motion/dist/es/render/utils/variant-props.js +12 -0
- package/dist/node_modules/framer-motion/dist/es/utils/delay.js +20 -0
- package/dist/node_modules/framer-motion/dist/es/utils/distance.js +9 -0
- package/dist/node_modules/framer-motion/dist/es/utils/get-context-window.js +6 -0
- package/dist/node_modules/framer-motion/dist/es/utils/is-browser.js +3 -0
- package/dist/node_modules/framer-motion/dist/es/utils/is-ref-object.js +7 -0
- package/dist/node_modules/framer-motion/dist/es/utils/reduced-motion/index.js +19 -0
- package/dist/node_modules/framer-motion/dist/es/utils/reduced-motion/state.js +5 -0
- package/dist/node_modules/framer-motion/dist/es/utils/reduced-motion/use-reduced-motion.js +47 -0
- package/dist/node_modules/framer-motion/dist/es/utils/shallow-compare.js +14 -0
- package/dist/node_modules/framer-motion/dist/es/utils/use-constant.js +18 -0
- package/dist/node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.js +6 -0
- package/dist/node_modules/framer-motion/dist/es/value/use-combine-values.js +37 -0
- package/dist/node_modules/framer-motion/dist/es/value/use-computed.js +19 -0
- package/dist/node_modules/framer-motion/dist/es/value/use-motion-value.js +38 -0
- package/dist/node_modules/framer-motion/dist/es/value/use-spring.js +22 -0
- package/dist/node_modules/framer-motion/dist/es/value/use-transform.js +29 -0
- package/dist/node_modules/framer-motion/dist/es/value/use-will-change/add-will-change.js +20 -0
- package/dist/node_modules/framer-motion/dist/es/value/use-will-change/is.js +7 -0
- package/dist/node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.js +12 -0
- package/dist/node_modules/motion-dom/dist/es/animation/AsyncMotionValueAnimation.js +176 -0
- package/dist/node_modules/motion-dom/dist/es/animation/JSAnimation.js +341 -0
- package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimation.js +158 -0
- package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimationExtended.js +65 -0
- package/dist/node_modules/motion-dom/dist/es/animation/drivers/frame.js +17 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/inertia.js +87 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/keyframes.js +51 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/defaults.js +27 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/find.js +86 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/index.js +176 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/calc-duration.js +17 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/create-generator-easing.js +19 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/is-generator.js +5 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/velocity.js +9 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/DOMKeyframesResolver.js +131 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/KeyframesResolver.js +147 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/get-final.js +11 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/default.js +9 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/fill.js +12 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/time.js +5 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/fill-wildcards.js +7 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/is-none.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/make-none-animatable.js +30 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/unit-conversion.js +36 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/WithPromise.js +26 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/can-animate.js +42 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/css-variables-conversion.js +42 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/get-value-transition.js +7 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-animatable.js +30 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-css-variable.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/make-animation-instant.js +6 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/replace-transition-type.js +18 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/cubic-bezier.js +3 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/map-easing.js +28 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/supported.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/start-waapi-animation.js +29 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/supports/waapi.js +43 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/apply-generator.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/linear.js +12 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/unsupported-easing.js +20 -0
- package/dist/node_modules/motion-dom/dist/es/frameloop/batcher.js +71 -0
- package/dist/node_modules/motion-dom/dist/es/frameloop/frame.js +6 -0
- package/dist/node_modules/motion-dom/dist/es/frameloop/microtask.js +6 -0
- package/dist/node_modules/motion-dom/dist/es/frameloop/order.js +12 -0
- package/dist/node_modules/motion-dom/dist/es/frameloop/render-step.js +81 -0
- package/dist/node_modules/motion-dom/dist/es/frameloop/sync-time.js +31 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/drag/state/is-active.js +9 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/drag/state/set-active.js +28 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/hover.js +37 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/press/index.js +83 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/is-keyboard-accessible.js +13 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/keyboard.js +38 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/state.js +3 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/is-node-or-child.js +20 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/is-primary-pointer.js +18 -0
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/setup.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/render/dom/is-css-var.js +3 -0
- package/dist/node_modules/motion-dom/dist/es/render/dom/parse-transform.js +83 -0
- package/dist/node_modules/motion-dom/dist/es/render/dom/style-set.js +9 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/keys-position.js +13 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/keys-transform.js +28 -0
- package/dist/node_modules/motion-dom/dist/es/utils/interpolate.js +79 -0
- package/dist/node_modules/motion-dom/dist/es/utils/is-html-element.js +11 -0
- package/dist/node_modules/motion-dom/dist/es/utils/is-svg-element.js +11 -0
- package/dist/node_modules/motion-dom/dist/es/utils/is-svg-svg-element.js +11 -0
- package/dist/node_modules/motion-dom/dist/es/utils/mix/color.js +47 -0
- package/dist/node_modules/motion-dom/dist/es/utils/mix/complex.js +93 -0
- package/dist/node_modules/motion-dom/dist/es/utils/mix/immediate.js +5 -0
- package/dist/node_modules/motion-dom/dist/es/utils/mix/index.js +14 -0
- package/dist/node_modules/motion-dom/dist/es/utils/mix/number.js +26 -0
- package/dist/node_modules/motion-dom/dist/es/utils/mix/visibility.js +16 -0
- package/dist/node_modules/motion-dom/dist/es/utils/resolve-elements.js +14 -0
- package/dist/node_modules/motion-dom/dist/es/utils/supports/flags.js +7 -0
- package/dist/node_modules/motion-dom/dist/es/utils/supports/linear-easing.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/utils/supports/memo.js +9 -0
- package/dist/node_modules/motion-dom/dist/es/utils/supports/scroll-timeline.js +5 -0
- package/dist/node_modules/motion-dom/dist/es/utils/transform.js +14 -0
- package/dist/node_modules/motion-dom/dist/es/value/index.js +325 -0
- package/dist/node_modules/motion-dom/dist/es/value/spring-value.js +54 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/auto.js +9 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hex.js +40 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hsla-to-rgba.js +42 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hsla.js +22 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/color/index.js +32 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/color/rgba.js +25 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/color/utils.js +29 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/filter.js +30 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/index.js +91 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/dimensions.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/int.js +8 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/defaults.js +30 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/number.js +50 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/transform.js +31 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/numbers/index.js +17 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/numbers/units.js +18 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/test.js +6 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/animatable-none.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/color-regex.js +3 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/find.js +15 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/float-regex.js +3 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/get-as-type.js +10 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/is-nullish.js +5 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/sanitize.js +5 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/single-color-regex.js +3 -0
- package/dist/node_modules/motion-dom/dist/es/value/utils/is-motion-value.js +3 -0
- package/dist/node_modules/motion-utils/dist/es/array.js +21 -0
- package/dist/node_modules/motion-utils/dist/es/clamp.js +9 -0
- package/dist/node_modules/motion-utils/dist/es/easing/anticipate.js +5 -0
- package/dist/node_modules/motion-utils/dist/es/easing/back.js +9 -0
- package/dist/node_modules/motion-utils/dist/es/easing/circ.js +8 -0
- package/dist/node_modules/motion-utils/dist/es/easing/cubic-bezier.js +51 -0
- package/dist/node_modules/motion-utils/dist/es/easing/ease.js +7 -0
- package/dist/node_modules/motion-utils/dist/es/easing/modifiers/mirror.js +5 -0
- package/dist/node_modules/motion-utils/dist/es/easing/modifiers/reverse.js +5 -0
- package/dist/node_modules/motion-utils/dist/es/easing/utils/is-bezier-definition.js +3 -0
- package/dist/node_modules/motion-utils/dist/es/easing/utils/is-easing-array.js +5 -0
- package/dist/node_modules/motion-utils/dist/es/easing/utils/map.js +41 -0
- package/dist/node_modules/motion-utils/dist/es/errors.js +18 -0
- package/dist/node_modules/motion-utils/dist/es/format-error-message.js +7 -0
- package/dist/node_modules/motion-utils/dist/es/global-config.js +3 -0
- package/dist/node_modules/motion-utils/dist/es/is-numerical-string.js +6 -0
- package/dist/node_modules/motion-utils/dist/es/is-object.js +5 -0
- package/dist/node_modules/motion-utils/dist/es/is-zero-value-string.js +6 -0
- package/dist/node_modules/motion-utils/dist/es/memo.js +11 -0
- package/dist/node_modules/motion-utils/dist/es/noop.js +4 -0
- package/dist/node_modules/motion-utils/dist/es/pipe.js +11 -0
- package/dist/node_modules/motion-utils/dist/es/progress.js +19 -0
- package/dist/node_modules/motion-utils/dist/es/subscription-manager.js +40 -0
- package/dist/node_modules/motion-utils/dist/es/time-conversion.js +12 -0
- package/dist/node_modules/motion-utils/dist/es/velocity-per-second.js +11 -0
- package/dist/node_modules/motion-utils/dist/es/warn-once.js +11 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.js +368 -0
- package/dist/node_modules/react/cjs/react-jsx-runtime.production.js +44 -0
- package/dist/node_modules/react/jsx-runtime.js +19 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +2956 -0
- package/dist/node_modules/tslib/tslib.es6.js +56 -0
- package/dist/styles.css +2 -0
- package/dist/theme/ThemeContext.d.ts +15 -0
- package/dist/types/button.types.d.ts +28 -0
- package/dist/utils/calendarUtils.d.ts +60 -0
- package/dist/utils/cn.d.ts +2 -0
- package/dist/utils/cn.js +12 -0
- package/dist/utils/dateUtils.d.ts +118 -0
- package/dist/utils/dateUtils.js +86 -0
- package/dist/utils/debounce.d.ts +9 -0
- package/dist/utils/debounce.js +21 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/typeaheadUtils.d.ts +35 -0
- package/dist/utils/typeaheadUtils.js +60 -0
- package/dist/utils/useClickOutside.d.ts +7 -0
- package/dist/utils/useClickOutside.js +26 -0
- package/package.json +92 -0
- package/tailwind.preset.cjs +102 -0
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
import { __assign, __spreadArray } from '../../../node_modules/tslib/tslib.es6.js';
|
|
2
|
+
import React__default, { createContext, useState, useRef, useEffect, useContext } from 'react';
|
|
3
|
+
import { createPortal } from 'react-dom';
|
|
4
|
+
import { selectTheme } from './Select.theme.js';
|
|
5
|
+
import { FormLabel } from '../FormLabel/FormLabel.js';
|
|
6
|
+
import { Input } from '../Input/Input.js';
|
|
7
|
+
import '../Input/Input.theme.js';
|
|
8
|
+
import { createDropdownAnimations } from './Select.animations.js';
|
|
9
|
+
import { ChevronUpDownIcon } from '../../../icons/core/ChevronUpDown.js';
|
|
10
|
+
import { useSelectPortal } from '../../../hooks/useSelectPortal.js';
|
|
11
|
+
import { cn } from '../../../utils/cn.js';
|
|
12
|
+
import { isValidTypeaheadChar, findNextMatchingOption, TYPEAHEAD_TIMEOUT_MS } from '../../../utils/typeaheadUtils.js';
|
|
13
|
+
import ForwardRef from '../../../node_modules/@heroicons/react/24/outline/esm/MagnifyingGlassIcon.js';
|
|
14
|
+
import { AnimatePresence } from '../../../node_modules/framer-motion/dist/es/components/AnimatePresence/index.js';
|
|
15
|
+
import { motion } from '../../../node_modules/framer-motion/dist/es/render/components/motion/proxy.js';
|
|
16
|
+
|
|
17
|
+
var SelectContext = createContext(undefined);
|
|
18
|
+
var useSelectContext = function () {
|
|
19
|
+
var context = useContext(SelectContext);
|
|
20
|
+
if (!context) {
|
|
21
|
+
throw new Error("Select components must be used within a SelectContainer");
|
|
22
|
+
}
|
|
23
|
+
return context;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Select Button Component
|
|
27
|
+
*/
|
|
28
|
+
var SelectButton = function (_a) {
|
|
29
|
+
var _b, _c, _d, _e, _f, _g;
|
|
30
|
+
var id = _a.id, disabled = _a.disabled, isOpen = _a.isOpen, _h = _a.state, state = _h === void 0 ? "default" : _h, _j = _a.size, size = _j === void 0 ? "md" : _j, iconStart = _a.iconStart, iconEnd = _a.iconEnd, _k = _a.className, className = _k === void 0 ? "" : _k, onClick = _a.onClick, onFocus = _a.onFocus, onBlur = _a.onBlur, children = _a.children;
|
|
31
|
+
var _l = useSelectContext(), theme = _l.theme, buttonRef = _l.buttonRef;
|
|
32
|
+
var baseStyle = theme.baseStyle || "";
|
|
33
|
+
var sizeStyle = ((_b = theme.sizes) === null || _b === void 0 ? void 0 : _b[size]) || "";
|
|
34
|
+
var stateStyle = ((_c = theme.states) === null || _c === void 0 ? void 0 : _c[state]) || "";
|
|
35
|
+
var hoverStateStyle = ((_d = theme.hoverStates) === null || _d === void 0 ? void 0 : _d[state]) || "";
|
|
36
|
+
var focusStateStyle = ((_e = theme.focusStates) === null || _e === void 0 ? void 0 : _e[state]) || "";
|
|
37
|
+
var buttonWrapperStyle = theme.buttonWrapperStyle || "";
|
|
38
|
+
var buttonStyle = theme.buttonStyle || "";
|
|
39
|
+
var iconStartStyle = theme.iconStartStyle || "";
|
|
40
|
+
var iconEndStyle = theme.iconEndStyle || "";
|
|
41
|
+
var iconStartPadding = iconStart ? ((_f = theme.iconPadding) === null || _f === void 0 ? void 0 : _f.left) || "" : "";
|
|
42
|
+
var iconEndPadding = iconEnd ? ((_g = theme.iconPadding) === null || _g === void 0 ? void 0 : _g.right) || "" : "";
|
|
43
|
+
// Use either the themed focus state or directly apply the focus classes if the theme is not working
|
|
44
|
+
var activeFocusState = isOpen
|
|
45
|
+
? focusStateStyle || "outline-2 outline-[var(--color-primary)] -outline-offset-1 ring-4 ring-[var(--color-primary)]/10"
|
|
46
|
+
: "";
|
|
47
|
+
return (React__default.createElement("div", { className: cn(buttonWrapperStyle) },
|
|
48
|
+
React__default.createElement("button", { ref: buttonRef, id: id, type: "button", className: cn(baseStyle, sizeStyle, stateStyle, hoverStateStyle, activeFocusState, iconStartPadding, iconEndPadding, buttonStyle, className // User overrides take highest precedence
|
|
49
|
+
), onClick: onClick, onFocus: onFocus, onBlur: onBlur, disabled: disabled, "aria-expanded": isOpen, "aria-haspopup": "listbox" },
|
|
50
|
+
iconStart && React__default.createElement("span", { className: iconStartStyle }, iconStart),
|
|
51
|
+
children,
|
|
52
|
+
iconEnd && React__default.createElement("span", { className: iconEndStyle }, iconEnd))));
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Select Options Component
|
|
56
|
+
*/
|
|
57
|
+
var SelectOptions = function (_a) {
|
|
58
|
+
var _b;
|
|
59
|
+
var isOpen = _a.isOpen, _c = _a.maxHeight, maxHeight = _c === void 0 ? "15rem" : _c, _d = _a.className, className = _d === void 0 ? "" : _d, onClose = _a.onClose, children = _a.children, _e = _a.portal, portal = _e === void 0 ? true : _e, _f = _a.placement, placement = _f === void 0 ? "bottom-start" : _f, _g = _a.offset, offset = _g === void 0 ? 4 : _g;
|
|
60
|
+
var _h = useSelectContext(), optionsRef = _h.optionsRef, buttonRef = _h.buttonRef, highlightedIndex = _h.highlightedIndex, setHighlightedIndex = _h.setHighlightedIndex; _h.options; var filteredOptions = _h.filteredOptions, searchable = _h.searchable, searchValue = _h.searchValue, setSearchValue = _h.setSearchValue, enableTypeahead = _h.enableTypeahead, typeaheadValue = _h.typeaheadValue, setTypeaheadValue = _h.setTypeaheadValue, typeaheadTimeoutRef = _h.typeaheadTimeoutRef, theme = _h.theme;
|
|
61
|
+
var searchInputRef = useRef(null);
|
|
62
|
+
// Use enhanced dropdown positioning hook with direction-aware animations
|
|
63
|
+
// Pass trigger width so dropdown matches trigger size
|
|
64
|
+
var triggerWidth = ((_b = buttonRef.current) === null || _b === void 0 ? void 0 : _b.getBoundingClientRect().width) || 0;
|
|
65
|
+
var _j = useSelectPortal({
|
|
66
|
+
triggerRef: buttonRef,
|
|
67
|
+
isOpen: isOpen || false,
|
|
68
|
+
placement: placement,
|
|
69
|
+
offset: offset,
|
|
70
|
+
estimatedWidth: triggerWidth,
|
|
71
|
+
}), position = _j.position, cssVariables = _j.cssVariables, contentRef = _j.contentRef, isFlipped = _j.isFlipped;
|
|
72
|
+
// Create direction-aware animations based on actual placement
|
|
73
|
+
var animations = createDropdownAnimations(isFlipped);
|
|
74
|
+
var optionsContainerStyle = theme.optionsContainerStyle || "";
|
|
75
|
+
var searchInputStyle = theme.searchInputStyle || "";
|
|
76
|
+
// Convert maxHeight to a valid CSS value
|
|
77
|
+
var maxHeightValue = typeof maxHeight === "number" ? "".concat(maxHeight, "px") : maxHeight;
|
|
78
|
+
// Combine refs for portal and legacy usage
|
|
79
|
+
var combinedRef = React__default.useCallback(function (el) {
|
|
80
|
+
if (optionsRef && typeof optionsRef === 'object' && 'current' in optionsRef) {
|
|
81
|
+
optionsRef.current = el;
|
|
82
|
+
}
|
|
83
|
+
if (contentRef && typeof contentRef === 'object' && 'current' in contentRef) {
|
|
84
|
+
contentRef.current = el;
|
|
85
|
+
}
|
|
86
|
+
}, [optionsRef, contentRef]);
|
|
87
|
+
// Handle click outside to close options
|
|
88
|
+
useEffect(function () {
|
|
89
|
+
if (!isOpen)
|
|
90
|
+
return;
|
|
91
|
+
var handleClickOutside = function (event) {
|
|
92
|
+
var currentContentRef = portal ? contentRef.current : optionsRef.current;
|
|
93
|
+
if (currentContentRef &&
|
|
94
|
+
!currentContentRef.contains(event.target) &&
|
|
95
|
+
buttonRef.current &&
|
|
96
|
+
!buttonRef.current.contains(event.target)) {
|
|
97
|
+
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
101
|
+
return function () {
|
|
102
|
+
document.removeEventListener("mousedown", handleClickOutside);
|
|
103
|
+
};
|
|
104
|
+
}, [isOpen, onClose, optionsRef, buttonRef, contentRef, portal]);
|
|
105
|
+
// Handle keyboard navigation
|
|
106
|
+
useEffect(function () {
|
|
107
|
+
if (!isOpen)
|
|
108
|
+
return;
|
|
109
|
+
var handleKeyDown = function (event) {
|
|
110
|
+
// Handle typeahead if enabled and not in search input
|
|
111
|
+
if (enableTypeahead && isValidTypeaheadChar(event.key)) {
|
|
112
|
+
// Only do typeahead when not typing in search input
|
|
113
|
+
if (!(event.target instanceof HTMLInputElement)) {
|
|
114
|
+
event.preventDefault();
|
|
115
|
+
// Clear existing timeout
|
|
116
|
+
if (typeaheadTimeoutRef.current) {
|
|
117
|
+
clearTimeout(typeaheadTimeoutRef.current);
|
|
118
|
+
}
|
|
119
|
+
// Build search string
|
|
120
|
+
var newTypeaheadValue = typeaheadValue + event.key.toLowerCase();
|
|
121
|
+
setTypeaheadValue(newTypeaheadValue);
|
|
122
|
+
// Find matching option
|
|
123
|
+
var matchingIndex_1 = findNextMatchingOption({
|
|
124
|
+
options: filteredOptions,
|
|
125
|
+
searchChar: event.key.toLowerCase(),
|
|
126
|
+
currentIndex: highlightedIndex,
|
|
127
|
+
previousSearch: typeaheadValue,
|
|
128
|
+
});
|
|
129
|
+
if (matchingIndex_1 >= 0) {
|
|
130
|
+
setHighlightedIndex(matchingIndex_1);
|
|
131
|
+
// Scroll to highlighted option
|
|
132
|
+
setTimeout(function () {
|
|
133
|
+
var _a;
|
|
134
|
+
var optionElement = (_a = optionsRef.current) === null || _a === void 0 ? void 0 : _a.querySelector("[data-option-index=\"".concat(matchingIndex_1, "\"]"));
|
|
135
|
+
if (optionElement) {
|
|
136
|
+
optionElement.scrollIntoView({ block: 'nearest' });
|
|
137
|
+
}
|
|
138
|
+
}, 0);
|
|
139
|
+
}
|
|
140
|
+
// Set timeout to reset typeahead
|
|
141
|
+
typeaheadTimeoutRef.current = setTimeout(function () {
|
|
142
|
+
setTypeaheadValue("");
|
|
143
|
+
}, TYPEAHEAD_TIMEOUT_MS);
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
// Handle navigation keys
|
|
148
|
+
if (!["ArrowUp", "ArrowDown", "Enter", "Escape", "Tab"].includes(event.key))
|
|
149
|
+
return;
|
|
150
|
+
if (event.target instanceof HTMLInputElement) {
|
|
151
|
+
// Don't navigate with arrow keys when typing in search input
|
|
152
|
+
if (["ArrowUp", "ArrowDown"].includes(event.key)) {
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
event.preventDefault();
|
|
157
|
+
if (event.key === "Escape" || event.key === "Tab") {
|
|
158
|
+
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
if (event.key === "ArrowUp") {
|
|
162
|
+
setHighlightedIndex(function (prev) {
|
|
163
|
+
return prev <= 0 ? filteredOptions.length - 1 : prev - 1;
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
else if (event.key === "ArrowDown") {
|
|
167
|
+
setHighlightedIndex(function (prev) {
|
|
168
|
+
return prev >= filteredOptions.length - 1 ? 0 : prev + 1;
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
else if (event.key === "Enter") {
|
|
172
|
+
if (highlightedIndex >= 0 &&
|
|
173
|
+
highlightedIndex < filteredOptions.length) {
|
|
174
|
+
var highlightedOption = filteredOptions[highlightedIndex];
|
|
175
|
+
if (!highlightedOption.disabled) {
|
|
176
|
+
var value = highlightedOption.value;
|
|
177
|
+
var context = useSelectContext();
|
|
178
|
+
context.selectOption(value);
|
|
179
|
+
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
document.addEventListener("keydown", handleKeyDown);
|
|
185
|
+
return function () {
|
|
186
|
+
document.removeEventListener("keydown", handleKeyDown);
|
|
187
|
+
};
|
|
188
|
+
}, [isOpen, onClose, highlightedIndex, filteredOptions, setHighlightedIndex, enableTypeahead, typeaheadValue, setTypeaheadValue, typeaheadTimeoutRef, optionsRef]);
|
|
189
|
+
// Reset search and highlighted index when closing
|
|
190
|
+
useEffect(function () {
|
|
191
|
+
if (!isOpen) {
|
|
192
|
+
setSearchValue("");
|
|
193
|
+
setHighlightedIndex(-1);
|
|
194
|
+
setTypeaheadValue("");
|
|
195
|
+
// Clear any pending typeahead timeout
|
|
196
|
+
if (typeaheadTimeoutRef.current) {
|
|
197
|
+
clearTimeout(typeaheadTimeoutRef.current);
|
|
198
|
+
typeaheadTimeoutRef.current = null;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}, [isOpen, setSearchValue, setHighlightedIndex, setTypeaheadValue, typeaheadTimeoutRef]);
|
|
202
|
+
// Autofocus search input on open for searchable selects
|
|
203
|
+
useEffect(function () {
|
|
204
|
+
if (isOpen && searchable && searchInputRef.current) {
|
|
205
|
+
searchInputRef.current.focus({ preventScroll: true });
|
|
206
|
+
searchInputRef.current.select();
|
|
207
|
+
}
|
|
208
|
+
}, [isOpen, searchable]);
|
|
209
|
+
// Add effect to measure content after render for improved positioning
|
|
210
|
+
useEffect(function () {
|
|
211
|
+
if (isOpen && contentRef.current) {
|
|
212
|
+
// Trigger recalculation after content renders
|
|
213
|
+
var timer_1 = setTimeout(function () {
|
|
214
|
+
// Hook will remeasure automatically due to contentRef dependency
|
|
215
|
+
}, 0);
|
|
216
|
+
return function () { return clearTimeout(timer_1); };
|
|
217
|
+
}
|
|
218
|
+
}, [isOpen, children, filteredOptions.length]);
|
|
219
|
+
// Handle search input change
|
|
220
|
+
var handleSearchChange = function (e) {
|
|
221
|
+
setSearchValue(e.target.value);
|
|
222
|
+
setHighlightedIndex(-1); // Reset highlighted index when search changes
|
|
223
|
+
};
|
|
224
|
+
var optionsContent = (React__default.createElement(AnimatePresence, { mode: "wait" }, isOpen && (React__default.createElement(motion.div, { ref: combinedRef, className: cn(optionsContainerStyle, className), style: __assign(__assign(__assign({}, cssVariables), { overscrollBehavior: "contain" }), (portal ? {
|
|
225
|
+
top: "".concat(position.top, "px"),
|
|
226
|
+
left: "".concat(position.left, "px"),
|
|
227
|
+
width: "".concat(position.width, "px"),
|
|
228
|
+
maxHeight: maxHeightValue,
|
|
229
|
+
} : {
|
|
230
|
+
maxHeight: searchable ? "none" : maxHeightValue,
|
|
231
|
+
})), role: "listbox", tabIndex: -1, variants: animations, initial: "initial", animate: "visible", exit: "exit" },
|
|
232
|
+
searchable && (React__default.createElement("div", { className: "sticky top-0 py-1 bg-white z-[10000] border-b border-[var(--color-border)] ".concat(searchInputStyle), style: {
|
|
233
|
+
'--form-rounded': '0',
|
|
234
|
+
} },
|
|
235
|
+
React__default.createElement(Input, { placeholder: "Search...", value: searchValue, onChange: handleSearchChange, type: "search", ref: searchInputRef, className: "w-full block bg-white border-none outline-none !min-h-8 py-2 ring-0 shadow-none [&:focus]:outline-none [&:focus]:ring-0 [&:focus]:border-none [&:focus-visible]:outline-none [&:focus-visible]:ring-0 [&:focus-visible]:border-none", iconStart: React__default.createElement(ForwardRef, { strokeWidth: 2, className: "size-4 text-[var(--color-text-muted)] group-focus-within:text-[var(--color-primary)]" }), wrapperClassName: "!border-none !outline-none !ring-0 !shadow-none", inputGroupClassName: "!border-none !outline-none !ring-0 !shadow-none flex items-center", style: {
|
|
236
|
+
border: "none",
|
|
237
|
+
outline: "none",
|
|
238
|
+
boxShadow: "none"
|
|
239
|
+
} }))),
|
|
240
|
+
children))));
|
|
241
|
+
// Use portal if enabled and client-side
|
|
242
|
+
return portal && typeof document !== 'undefined'
|
|
243
|
+
? createPortal(optionsContent, document.body)
|
|
244
|
+
: optionsContent;
|
|
245
|
+
};
|
|
246
|
+
/**
|
|
247
|
+
* Select Option Component
|
|
248
|
+
*/
|
|
249
|
+
var SelectOption = function (_a) {
|
|
250
|
+
var _b;
|
|
251
|
+
var value = _a.value, isSelected = _a.isSelected, disabled = _a.disabled, _c = _a.className, className = _c === void 0 ? "" : _c, onSelect = _a.onSelect, children = _a.children;
|
|
252
|
+
var _d = useSelectContext(), highlightedIndex = _d.highlightedIndex, setHighlightedIndex = _d.setHighlightedIndex; _d.options; var filteredOptions = _d.filteredOptions, theme = _d.theme, selectOption = _d.selectOption;
|
|
253
|
+
var optionStyle = theme.optionStyle || "";
|
|
254
|
+
var selectedOptionStyle = theme.selectedOptionStyle || "";
|
|
255
|
+
var disabledOptionStyle = theme.disabledOptionStyle || "";
|
|
256
|
+
// Find index of this option in filteredOptions (not options, to support create option)
|
|
257
|
+
var optionIndex = filteredOptions.findIndex(function (option) { return option.value === value; });
|
|
258
|
+
var isHighlighted = optionIndex === highlightedIndex;
|
|
259
|
+
// Check if this is the create option
|
|
260
|
+
var isCreateOption = ((_b = filteredOptions[optionIndex]) === null || _b === void 0 ? void 0 : _b.id) === "__create__";
|
|
261
|
+
var handleClick = function () {
|
|
262
|
+
if (disabled)
|
|
263
|
+
return;
|
|
264
|
+
selectOption(value, isCreateOption);
|
|
265
|
+
onSelect === null || onSelect === void 0 ? void 0 : onSelect(value);
|
|
266
|
+
};
|
|
267
|
+
// Apply the hover style directly when keyboard navigating
|
|
268
|
+
var keyboardHighlightStyle = isHighlighted ? "text-[var(--color-primary)] bg-[var(--color-primary-50)]/50" : "";
|
|
269
|
+
// Style create option differently
|
|
270
|
+
var createOptionStyle = isCreateOption ? "font-medium text-[var(--color-primary)]" : "";
|
|
271
|
+
return (React__default.createElement("div", { className: cn(optionStyle, isSelected && selectedOptionStyle, disabled && disabledOptionStyle, keyboardHighlightStyle, createOptionStyle, className // User overrides take highest precedence
|
|
272
|
+
), role: "option", "aria-selected": isSelected, "aria-disabled": disabled, "data-option-index": optionIndex, onMouseEnter: function () { return !disabled && setHighlightedIndex(optionIndex); }, onClick: handleClick }, children));
|
|
273
|
+
};
|
|
274
|
+
/**
|
|
275
|
+
* Main Select Component
|
|
276
|
+
*/
|
|
277
|
+
var Select = function (_a) {
|
|
278
|
+
var _b;
|
|
279
|
+
var id = _a.id, name = _a.name, _c = _a.size, size = _c === void 0 ? "md" : _c, _d = _a.state, state = _d === void 0 ? "default" : _d, value = _a.value, displayValue = _a.displayValue, _e = _a.placeholder, placeholder = _e === void 0 ? "Select an option" : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, _g = _a.required, required = _g === void 0 ? false : _g, _h = _a.options, options = _h === void 0 ? [] : _h, label = _a.label, helperText = _a.helperText, onChange = _a.onChange, onFocus = _a.onFocus, onBlur = _a.onBlur, iconStart = _a.iconStart, iconEnd = _a.iconEnd, themeOverrides = _a.theme, _j = _a.className, className = _j === void 0 ? "" : _j, _k = _a.wrapperClassName, wrapperClassName = _k === void 0 ? "" : _k, _l = _a.searchable, searchable = _l === void 0 ? false : _l; _a.searchPlaceholder; var _o = _a.portal, portal = _o === void 0 ? true : _o, _p = _a.placement, placement = _p === void 0 ? "bottom-start" : _p, _q = _a.offset, offset = _q === void 0 ? 8 : _q, _r = _a.enableTypeahead, enableTypeahead = _r === void 0 ? true : _r, _s = _a.creatable, creatable = _s === void 0 ? false : _s, onCreateOption = _a.onCreateOption, createLabel = _a.createLabel, children = _a.children;
|
|
280
|
+
// Merge theme with overrides
|
|
281
|
+
var theme = __assign(__assign({}, selectTheme), (themeOverrides || {}));
|
|
282
|
+
// State
|
|
283
|
+
var _t = useState(false), isOpen = _t[0], setIsOpen = _t[1];
|
|
284
|
+
var _u = useState(value), selectedValue = _u[0], setSelectedValue = _u[1];
|
|
285
|
+
var _v = useState(-1), highlightedIndex = _v[0], setHighlightedIndex = _v[1];
|
|
286
|
+
var _w = useState(""), searchValue = _w[0], setSearchValue = _w[1];
|
|
287
|
+
// Typeahead state
|
|
288
|
+
var _x = useState(""), typeaheadValue = _x[0], setTypeaheadValue = _x[1];
|
|
289
|
+
var typeaheadTimeoutRef = useRef(null);
|
|
290
|
+
// Refs
|
|
291
|
+
var buttonRef = useRef(null);
|
|
292
|
+
var optionsRef = useRef(null);
|
|
293
|
+
// Update internal state when prop value changes
|
|
294
|
+
useEffect(function () {
|
|
295
|
+
setSelectedValue(value);
|
|
296
|
+
}, [value]);
|
|
297
|
+
// Get display value for the selected option
|
|
298
|
+
var getOptionByValue = function (searchValue) {
|
|
299
|
+
return options.find(function (option) { return option.value === searchValue; });
|
|
300
|
+
};
|
|
301
|
+
// Filter options based on search query
|
|
302
|
+
var baseFilteredOptions = searchValue
|
|
303
|
+
? options.filter(function (option) {
|
|
304
|
+
return option.label.toLowerCase().includes(searchValue.toLowerCase());
|
|
305
|
+
})
|
|
306
|
+
: options;
|
|
307
|
+
// Check if we should show the create option
|
|
308
|
+
var shouldShowCreateOption = creatable &&
|
|
309
|
+
searchable &&
|
|
310
|
+
searchValue.trim() !== "" &&
|
|
311
|
+
!baseFilteredOptions.some(function (option) { return option.label.toLowerCase() === searchValue.toLowerCase(); });
|
|
312
|
+
// Add create option if needed
|
|
313
|
+
var filteredOptions = shouldShowCreateOption
|
|
314
|
+
? __spreadArray([
|
|
315
|
+
{
|
|
316
|
+
id: "__create__",
|
|
317
|
+
label: typeof createLabel === "function"
|
|
318
|
+
? createLabel(searchValue)
|
|
319
|
+
: createLabel || "Create \"".concat(searchValue, "\""),
|
|
320
|
+
value: searchValue,
|
|
321
|
+
}
|
|
322
|
+
], baseFilteredOptions, true) : baseFilteredOptions;
|
|
323
|
+
var selectedOption = getOptionByValue(selectedValue);
|
|
324
|
+
var computedDisplayValue = displayValue || (selectedOption ? selectedOption.label : placeholder);
|
|
325
|
+
// Function to select an option
|
|
326
|
+
var selectOption = function (newValue, isCreateAction) {
|
|
327
|
+
if (isCreateAction === void 0) { isCreateAction = false; }
|
|
328
|
+
if (isCreateAction && onCreateOption) {
|
|
329
|
+
// Call onCreateOption callback if provided
|
|
330
|
+
onCreateOption(String(newValue));
|
|
331
|
+
}
|
|
332
|
+
if (newValue !== selectedValue) {
|
|
333
|
+
setSelectedValue(newValue);
|
|
334
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
|
|
335
|
+
}
|
|
336
|
+
setIsOpen(false);
|
|
337
|
+
setSearchValue(""); // Clear search value after selection
|
|
338
|
+
};
|
|
339
|
+
// Button click handler
|
|
340
|
+
var handleButtonClick = function () {
|
|
341
|
+
if (!disabled) {
|
|
342
|
+
setIsOpen(function (prev) { return !prev; });
|
|
343
|
+
}
|
|
344
|
+
};
|
|
345
|
+
// Helper text state style
|
|
346
|
+
var helperTextStateStyle = ((_b = theme.helperTextStates) === null || _b === void 0 ? void 0 : _b[state]) || "";
|
|
347
|
+
var helperTextStyle = theme.helperTextStyle || "";
|
|
348
|
+
// Container style
|
|
349
|
+
var containerStyle = theme.containerStyle || "";
|
|
350
|
+
// Default chevron icon if no iconEnd provided
|
|
351
|
+
var defaultChevronIcon = (React__default.createElement(ChevronUpDownIcon, { size: 16, className: "" }));
|
|
352
|
+
// Generate a unique ID if not provided
|
|
353
|
+
var selectId = id || "select-".concat(Math.random().toString(36).substring(2, 9));
|
|
354
|
+
return (React__default.createElement(SelectContext.Provider, { value: {
|
|
355
|
+
isOpen: isOpen,
|
|
356
|
+
setIsOpen: setIsOpen,
|
|
357
|
+
selectedValue: selectedValue,
|
|
358
|
+
setSelectedValue: setSelectedValue,
|
|
359
|
+
highlightedIndex: highlightedIndex,
|
|
360
|
+
setHighlightedIndex: setHighlightedIndex,
|
|
361
|
+
options: options,
|
|
362
|
+
filteredOptions: filteredOptions,
|
|
363
|
+
searchValue: searchValue,
|
|
364
|
+
setSearchValue: setSearchValue,
|
|
365
|
+
getOptionByValue: getOptionByValue,
|
|
366
|
+
selectOption: selectOption,
|
|
367
|
+
size: size,
|
|
368
|
+
state: state,
|
|
369
|
+
theme: theme,
|
|
370
|
+
searchable: searchable,
|
|
371
|
+
enableTypeahead: enableTypeahead,
|
|
372
|
+
typeaheadValue: typeaheadValue,
|
|
373
|
+
setTypeaheadValue: setTypeaheadValue,
|
|
374
|
+
typeaheadTimeoutRef: typeaheadTimeoutRef,
|
|
375
|
+
buttonRef: buttonRef,
|
|
376
|
+
optionsRef: optionsRef,
|
|
377
|
+
creatable: creatable,
|
|
378
|
+
createLabel: createLabel,
|
|
379
|
+
onCreateOption: onCreateOption,
|
|
380
|
+
hasCreateOption: shouldShowCreateOption,
|
|
381
|
+
} },
|
|
382
|
+
React__default.createElement("div", { className: cn("relative", containerStyle, wrapperClassName) },
|
|
383
|
+
label && (React__default.createElement(FormLabel, { htmlFor: selectId, required: required }, label)),
|
|
384
|
+
React__default.createElement(SelectButton, { id: selectId, disabled: disabled, isOpen: isOpen, state: state, size: size, iconStart: iconStart, iconEnd: iconEnd || defaultChevronIcon, onClick: handleButtonClick, onFocus: onFocus, onBlur: onBlur, className: className },
|
|
385
|
+
React__default.createElement("span", { className: "block truncate" }, computedDisplayValue)),
|
|
386
|
+
React__default.createElement(SelectOptions, { isOpen: isOpen, onClose: function () { return setIsOpen(false); }, portal: portal, placement: placement, offset: offset }, children ||
|
|
387
|
+
filteredOptions.map(function (option) { return (React__default.createElement(SelectOption, { key: option.id, value: option.value, isSelected: option.value === selectedValue, disabled: option.disabled || false },
|
|
388
|
+
React__default.createElement("span", { className: "block truncate" }, option.label))); })),
|
|
389
|
+
helperText && (React__default.createElement("p", { className: cn(helperTextStyle, helperTextStateStyle) }, helperText)),
|
|
390
|
+
name && (React__default.createElement("input", { type: "hidden", name: name, value: selectedValue !== undefined ? String(selectedValue) : "" })))));
|
|
391
|
+
};
|
|
392
|
+
|
|
393
|
+
export { Select, SelectButton, SelectOption, SelectOptions };
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { formsBaseTheme } from '../forms.theme.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Default theme for the Select component
|
|
5
|
+
* Extends the common forms base theme
|
|
6
|
+
*/
|
|
7
|
+
var selectTheme = {
|
|
8
|
+
// Container style for the entire select component
|
|
9
|
+
containerStyle: formsBaseTheme.wrapperStyle,
|
|
10
|
+
// Base styles for the button element - extends the common input group style
|
|
11
|
+
baseStyle: formsBaseTheme.inputGroupBaseStyle + " items-center justify-between",
|
|
12
|
+
// Button wrapper style
|
|
13
|
+
buttonWrapperStyle: "relative w-full",
|
|
14
|
+
// Button style
|
|
15
|
+
buttonStyle: "w-full cursor-pointer bg-white",
|
|
16
|
+
// Size variants - composed from atomic tokens
|
|
17
|
+
sizes: {
|
|
18
|
+
sm: "".concat(formsBaseTheme.sizes.sm.text, " ").concat(formsBaseTheme.sizes.sm.padding, " ").concat(formsBaseTheme.sizes.sm.height),
|
|
19
|
+
md: "".concat(formsBaseTheme.sizes.md.text, " ").concat(formsBaseTheme.sizes.md.padding, " ").concat(formsBaseTheme.sizes.md.height),
|
|
20
|
+
lg: "".concat(formsBaseTheme.sizes.lg.text, " ").concat(formsBaseTheme.sizes.lg.padding, " ").concat(formsBaseTheme.sizes.lg.height),
|
|
21
|
+
},
|
|
22
|
+
// State variants - inherited from common form theme
|
|
23
|
+
states: formsBaseTheme.states,
|
|
24
|
+
// Focus state variants - inherited from common form theme
|
|
25
|
+
focusStates: formsBaseTheme.focusStates,
|
|
26
|
+
// Hover state variants - inherited from common form theme
|
|
27
|
+
hoverStates: formsBaseTheme.hoverStates,
|
|
28
|
+
// Options container style - Uses position: fixed for proper scroll behavior with standardized z-index
|
|
29
|
+
// Width is controlled by trigger size via estimatedWidth parameter
|
|
30
|
+
optionsContainerStyle: "fixed z-[1000] max-h-[var(--select-content-available-height,20rem)] overflow-auto overscroll-contain rounded-[var(--form-rounded)] bg-white/90 backdrop-blur-md py-0 text-sm shadow-real-lg ring-1 ring-slate-200 focus:outline-none",
|
|
31
|
+
// Search input style
|
|
32
|
+
searchInputStyle: "group",
|
|
33
|
+
// Individual option style
|
|
34
|
+
optionStyle: "relative cursor-pointer select-none py-2 px-3 text-[var(--color-neutral-900)] hover:text-[var(--color-primary)] hover:bg-[var(--color-primary-50)]/50",
|
|
35
|
+
// Selected option style
|
|
36
|
+
selectedOptionStyle: "font-medium text-[var(--color-primary)]",
|
|
37
|
+
// Disabled option style
|
|
38
|
+
disabledOptionStyle: "cursor-not-allowed opacity-50 hover:bg-transparent hover:text-[var(--color-text-primary)]",
|
|
39
|
+
// Helper text style - inherited from common form theme
|
|
40
|
+
helperTextStyle: formsBaseTheme.helperText,
|
|
41
|
+
// Helper text state variants
|
|
42
|
+
helperTextStates: {
|
|
43
|
+
default: "text-[var(--color-text-muted)]",
|
|
44
|
+
disabled: "text-[var(--color-text-disabled)]",
|
|
45
|
+
},
|
|
46
|
+
// Left icon style - inherited from common form theme
|
|
47
|
+
iconStartStyle: formsBaseTheme.iconStyles.left,
|
|
48
|
+
// Right icon style - inherited from common form theme
|
|
49
|
+
iconEndStyle: formsBaseTheme.iconStyles.right,
|
|
50
|
+
// Check icon style for selected options
|
|
51
|
+
checkIconStyle: "absolute inset-y-0 right-0 flex items-center pr-3 text-[var(--color-primary)]",
|
|
52
|
+
// Icon padding styles - inherited from common form theme
|
|
53
|
+
iconPadding: formsBaseTheme.iconStyles.padding,
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
export { selectTheme };
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { SelectPlacement } from '../../../hooks/useSelectPortal';
|
|
3
|
+
/**
|
|
4
|
+
* Select value option type
|
|
5
|
+
* @template T The type of the option value
|
|
6
|
+
*/
|
|
7
|
+
export interface SelectOption<T = any> {
|
|
8
|
+
/** Unique identifier for the option */
|
|
9
|
+
id: string | number;
|
|
10
|
+
/** Display label for the option */
|
|
11
|
+
label: string;
|
|
12
|
+
/** Option value */
|
|
13
|
+
value: T;
|
|
14
|
+
/** Whether the option is disabled */
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Base props for all Select subcomponents
|
|
19
|
+
*/
|
|
20
|
+
export interface SelectBaseProps {
|
|
21
|
+
/** Additional class names */
|
|
22
|
+
className?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Select component props
|
|
26
|
+
* @template T The type of the select value
|
|
27
|
+
*/
|
|
28
|
+
export interface SelectProps<T = any> extends SelectBaseProps {
|
|
29
|
+
/** ID for the select component */
|
|
30
|
+
id?: string;
|
|
31
|
+
/** Name for the select component */
|
|
32
|
+
name?: string;
|
|
33
|
+
/** Size of the select component */
|
|
34
|
+
size?: SelectSize;
|
|
35
|
+
/** Current state of the select component */
|
|
36
|
+
state?: SelectState;
|
|
37
|
+
/** Currently selected option */
|
|
38
|
+
value?: T;
|
|
39
|
+
/** Custom display value to show in trigger (overrides selected option label) */
|
|
40
|
+
displayValue?: string;
|
|
41
|
+
/** Placeholder text when no option is selected */
|
|
42
|
+
placeholder?: string;
|
|
43
|
+
/** Whether the select is disabled */
|
|
44
|
+
disabled?: boolean;
|
|
45
|
+
/** Whether the select is required */
|
|
46
|
+
required?: boolean;
|
|
47
|
+
/** Array of options to display */
|
|
48
|
+
options: SelectOption<T>[];
|
|
49
|
+
/** Label text for the select */
|
|
50
|
+
label?: string;
|
|
51
|
+
/** Helper text displayed below the select */
|
|
52
|
+
helperText?: string;
|
|
53
|
+
/** Called when the selection changes */
|
|
54
|
+
onChange?: (value: T) => void;
|
|
55
|
+
/** Called when the select receives focus */
|
|
56
|
+
onFocus?: (event: React.FocusEvent<HTMLButtonElement>) => void;
|
|
57
|
+
/** Called when the select loses focus */
|
|
58
|
+
onBlur?: (event: React.FocusEvent<HTMLButtonElement>) => void;
|
|
59
|
+
/** Left icon to display in the select button */
|
|
60
|
+
iconStart?: React.ReactNode;
|
|
61
|
+
/** Right icon to display in the select button (default is chevron) */
|
|
62
|
+
iconEnd?: React.ReactNode;
|
|
63
|
+
/** Children to render instead of default options */
|
|
64
|
+
children?: React.ReactNode;
|
|
65
|
+
/** Component-level theme overrides */
|
|
66
|
+
theme?: SelectThemeOverrides;
|
|
67
|
+
/** Whether the select is searchable */
|
|
68
|
+
searchable?: boolean;
|
|
69
|
+
/** Placeholder text for the search input */
|
|
70
|
+
searchPlaceholder?: string;
|
|
71
|
+
/** Whether to use portal rendering for dropdown (default: true) */
|
|
72
|
+
portal?: boolean;
|
|
73
|
+
/** Placement of the dropdown relative to trigger */
|
|
74
|
+
placement?: SelectPlacement;
|
|
75
|
+
/** Offset between trigger and dropdown in pixels */
|
|
76
|
+
offset?: number;
|
|
77
|
+
/** Whether to enable typeahead functionality (default: true) */
|
|
78
|
+
enableTypeahead?: boolean;
|
|
79
|
+
/** Additional class name for the container wrapper */
|
|
80
|
+
wrapperClassName?: string;
|
|
81
|
+
/** Whether to allow creating new options (requires searchable: true) */
|
|
82
|
+
creatable?: boolean;
|
|
83
|
+
/** Called when a new option is created */
|
|
84
|
+
onCreateOption?: (inputValue: string) => void;
|
|
85
|
+
/** Custom label for the create option (default: "Create '{inputValue}'") */
|
|
86
|
+
createLabel?: string | ((inputValue: string) => string);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Select button props
|
|
90
|
+
*/
|
|
91
|
+
export interface SelectButtonProps extends SelectBaseProps {
|
|
92
|
+
/** ID for the select button */
|
|
93
|
+
id?: string;
|
|
94
|
+
/** Whether the button is disabled */
|
|
95
|
+
disabled?: boolean;
|
|
96
|
+
/** Whether the button is open */
|
|
97
|
+
isOpen?: boolean;
|
|
98
|
+
/** Current state of the select */
|
|
99
|
+
state?: SelectState;
|
|
100
|
+
/** Size of the select */
|
|
101
|
+
size?: SelectSize;
|
|
102
|
+
/** Left icon to display */
|
|
103
|
+
iconStart?: React.ReactNode;
|
|
104
|
+
/** Right icon to display (default is chevron) */
|
|
105
|
+
iconEnd?: React.ReactNode;
|
|
106
|
+
/** Called when the button is clicked */
|
|
107
|
+
onClick?: () => void;
|
|
108
|
+
/** Called when the button receives focus */
|
|
109
|
+
onFocus?: (event: React.FocusEvent<HTMLButtonElement>) => void;
|
|
110
|
+
/** Called when the button loses focus */
|
|
111
|
+
onBlur?: (event: React.FocusEvent<HTMLButtonElement>) => void;
|
|
112
|
+
/** Children to render inside the button */
|
|
113
|
+
children?: React.ReactNode;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Select options container props
|
|
117
|
+
*/
|
|
118
|
+
export interface SelectOptionsProps extends SelectBaseProps {
|
|
119
|
+
/** Whether the options are visible */
|
|
120
|
+
isOpen?: boolean;
|
|
121
|
+
/** Maximum height of the options container */
|
|
122
|
+
maxHeight?: string | number;
|
|
123
|
+
/** Called when the options should close */
|
|
124
|
+
onClose?: () => void;
|
|
125
|
+
/** Children to render inside the options container */
|
|
126
|
+
children?: React.ReactNode;
|
|
127
|
+
/** Whether to use portal rendering (default: true) */
|
|
128
|
+
portal?: boolean;
|
|
129
|
+
/** Placement of the dropdown relative to trigger */
|
|
130
|
+
placement?: SelectPlacement;
|
|
131
|
+
/** Offset between trigger and dropdown in pixels */
|
|
132
|
+
offset?: number;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Select option props
|
|
136
|
+
*/
|
|
137
|
+
export interface SelectOptionProps<T = any> extends SelectBaseProps {
|
|
138
|
+
/** Option value */
|
|
139
|
+
value: T;
|
|
140
|
+
/** Whether the option is currently selected */
|
|
141
|
+
isSelected?: boolean;
|
|
142
|
+
/** Whether the option is disabled */
|
|
143
|
+
disabled?: boolean;
|
|
144
|
+
/** Called when the option is selected */
|
|
145
|
+
onSelect?: (value: T) => void;
|
|
146
|
+
/** Children to render inside the option */
|
|
147
|
+
children?: React.ReactNode;
|
|
148
|
+
}
|
|
149
|
+
export type SelectSize = 'sm' | 'md' | 'lg';
|
|
150
|
+
export type SelectState = 'default' | 'disabled';
|
|
151
|
+
/**
|
|
152
|
+
* Theme overrides for the Select component
|
|
153
|
+
*/
|
|
154
|
+
export interface SelectThemeOverrides {
|
|
155
|
+
/** Base style for the select button */
|
|
156
|
+
baseStyle?: string;
|
|
157
|
+
/** Container style for the entire select component */
|
|
158
|
+
containerStyle?: string;
|
|
159
|
+
/** Size styles for the select button */
|
|
160
|
+
sizes?: Partial<Record<SelectSize, string>>;
|
|
161
|
+
/** State styles for the select button */
|
|
162
|
+
states?: Partial<Record<SelectState, string>>;
|
|
163
|
+
/** Focus state styles for the select button */
|
|
164
|
+
focusStates?: Partial<Record<SelectState, string>>;
|
|
165
|
+
/** Hover state styles for the select button */
|
|
166
|
+
hoverStates?: Partial<Record<SelectState, string>>;
|
|
167
|
+
/** Style for the select button wrapper */
|
|
168
|
+
buttonWrapperStyle?: string;
|
|
169
|
+
/** Style for the select button */
|
|
170
|
+
buttonStyle?: string;
|
|
171
|
+
/** Style for the options container */
|
|
172
|
+
optionsContainerStyle?: string;
|
|
173
|
+
/** Style for the search input container */
|
|
174
|
+
searchInputStyle?: string;
|
|
175
|
+
/** Style for individual options */
|
|
176
|
+
optionStyle?: string;
|
|
177
|
+
/** Style for selected options */
|
|
178
|
+
selectedOptionStyle?: string;
|
|
179
|
+
/** Style for disabled options */
|
|
180
|
+
disabledOptionStyle?: string;
|
|
181
|
+
/** Style for the helper text */
|
|
182
|
+
helperTextStyle?: string;
|
|
183
|
+
/** State styles for the helper text */
|
|
184
|
+
helperTextStates?: Partial<Record<SelectState, string>>;
|
|
185
|
+
/** Left icon style */
|
|
186
|
+
iconStartStyle?: string;
|
|
187
|
+
/** Right icon style */
|
|
188
|
+
iconEndStyle?: string;
|
|
189
|
+
/** Style for the check icon in selected options */
|
|
190
|
+
checkIconStyle?: string;
|
|
191
|
+
/** Icon padding styles */
|
|
192
|
+
iconPadding?: {
|
|
193
|
+
left?: string;
|
|
194
|
+
right?: string;
|
|
195
|
+
};
|
|
196
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { SelectButton, SelectOptions, SelectOption, Select } from './Select';
|
|
2
|
+
export { SelectButton, SelectOptions, SelectOption, Select };
|
|
3
|
+
export type { SelectProps, SelectOption as SelectOptionType, SelectSize, SelectState, SelectThemeOverrides } from './Select.types';
|
|
4
|
+
export { selectTheme } from './Select.theme';
|