flikkui 0.1.0-beta.2
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/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/charts/AreaChart/AreaChart.d.ts +3 -0
- package/dist/components/charts/AreaChart/AreaChart.types.d.ts +32 -0
- package/dist/components/charts/AreaChart/index.d.ts +2 -0
- package/dist/components/charts/BarChart/BarChart.d.ts +3 -0
- package/dist/components/charts/BarChart/BarChart.types.d.ts +26 -0
- package/dist/components/charts/BarChart/index.d.ts +2 -0
- package/dist/components/charts/ChartContainer.d.ts +9 -0
- package/dist/components/charts/DonutChart/DonutChart.d.ts +7 -0
- package/dist/components/charts/DonutChart/DonutChart.theme.d.ts +164 -0
- package/dist/components/charts/DonutChart/DonutChart.types.d.ts +113 -0
- package/dist/components/charts/Heatmap/Heatmap.d.ts +7 -0
- package/dist/components/charts/Heatmap/Heatmap.types.d.ts +151 -0
- package/dist/components/charts/Heatmap/HeatmapCell.d.ts +6 -0
- package/dist/components/charts/Heatmap/HeatmapLegend.d.ts +20 -0
- package/dist/components/charts/Heatmap/index.d.ts +6 -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 +27 -0
- package/dist/components/charts/LineChart/index.d.ts +2 -0
- package/dist/components/charts/hooks/index.d.ts +4 -0
- package/dist/components/charts/hooks/useChartAccessibility.d.ts +39 -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 +35 -0
- package/dist/components/charts/shared/ChartAxis/ChartAxis.types.d.ts +90 -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/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.types.d.ts +15 -0
- package/dist/components/charts/shared/ChartLegend/index.d.ts +1 -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.types.d.ts +48 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltipContent.d.ts +3 -0
- package/dist/components/charts/shared/ChartTooltip/index.d.ts +3 -0
- package/dist/components/charts/shared/index.d.ts +7 -0
- package/dist/components/charts/theme/chart.theme.d.ts +6 -0
- package/dist/components/charts/types/chart.types.d.ts +171 -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 +2 -0
- package/dist/components/core/Accordion/Accordion.animations.d.ts +9 -0
- package/dist/components/core/Accordion/Accordion.d.ts +12 -0
- package/dist/components/core/Accordion/Accordion.theme.d.ts +7 -0
- package/dist/components/core/Accordion/Accordion.types.d.ts +93 -0
- package/dist/components/core/Accordion/AccordionContent.d.ts +3 -0
- package/dist/components/core/Accordion/AccordionItem.d.ts +4 -0
- package/dist/components/core/Accordion/AccordionTrigger.d.ts +3 -0
- package/dist/components/core/Accordion/index.d.ts +5 -0
- package/dist/components/core/Avatar/Avatar.d.ts +4 -0
- package/dist/components/core/Avatar/Avatar.theme.d.ts +14 -0
- package/dist/components/core/Avatar/Avatar.types.d.ts +64 -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.d.ts +4 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.theme.d.ts +14 -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.d.ts +14 -0
- package/dist/components/core/Badge/Badge.theme.d.ts +5 -0
- package/dist/components/core/Badge/Badge.types.d.ts +98 -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 +101 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.theme.d.ts +17 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.theme.js +34 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.types.d.ts +69 -0
- package/dist/components/core/Breadcrumbs/index.d.ts +4 -0
- package/dist/components/core/Button/Button.animations.d.ts +17 -0
- package/dist/components/core/Button/Button.animations.js +35 -0
- package/dist/components/core/Button/Button.d.ts +4 -0
- package/dist/components/core/Button/Button.js +72 -0
- package/dist/components/core/Button/Button.theme.d.ts +24 -0
- package/dist/components/core/Button/Button.theme.js +41 -0
- package/dist/components/core/Button/Button.types.d.ts +29 -0
- package/dist/components/core/Button/index.d.ts +2 -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/DayView/DayViewCell.d.ts +20 -0
- package/dist/components/core/Calendar/MonthView/MonthView.d.ts +2 -0
- package/dist/components/core/Calendar/MonthView/components/CalendarCell/CalendarCell.d.ts +4 -0
- package/dist/components/core/Calendar/MonthView/components/CalendarCell/CalendarCell.theme.d.ts +29 -0
- package/dist/components/core/Calendar/MonthView/components/CalendarCell/CalendarCell.types.d.ts +41 -0
- package/dist/components/core/Calendar/MonthView/components/CalendarCell/index.d.ts +3 -0
- package/dist/components/core/Calendar/MonthView/components/MontViewHeader/MonthViewHeader.d.ts +2 -0
- package/dist/components/core/Card/Card.d.ts +8 -0
- package/dist/components/core/Card/Card.theme.d.ts +2 -0
- package/dist/components/core/Card/Card.types.d.ts +48 -0
- package/dist/components/core/Card/index.d.ts +2 -0
- package/dist/components/core/Carousel/Carousel.animations.d.ts +33 -0
- package/dist/components/core/Carousel/Carousel.animations.js +353 -0
- package/dist/components/core/Carousel/Carousel.d.ts +3 -0
- package/dist/components/core/Carousel/Carousel.js +94 -0
- package/dist/components/core/Carousel/Carousel.theme.d.ts +2 -0
- package/dist/components/core/Carousel/Carousel.theme.js +16 -0
- package/dist/components/core/Carousel/Carousel.types.d.ts +164 -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/components/CarouselControlButton.d.ts +4 -0
- package/dist/components/core/Carousel/components/CarouselControlButton.js +26 -0
- package/dist/components/core/Carousel/components/CarouselControls.d.ts +4 -0
- package/dist/components/core/Carousel/components/CarouselControls.js +17 -0
- package/dist/components/core/Carousel/components/CarouselSlide.d.ts +4 -0
- package/dist/components/core/Carousel/components/CarouselSlide.js +74 -0
- package/dist/components/core/Carousel/components/index.d.ts +3 -0
- package/dist/components/core/Carousel/index.d.ts +4 -0
- package/dist/components/core/Carousel/index.js +5 -0
- package/dist/components/core/Divider/Divider.d.ts +3 -0
- package/dist/components/core/Divider/Divider.theme.d.ts +2 -0
- package/dist/components/core/Divider/Divider.types.d.ts +34 -0
- package/dist/components/core/Divider/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 +21 -0
- package/dist/components/core/Drawer/Drawer.js +80 -0
- package/dist/components/core/Drawer/Drawer.theme.d.ts +30 -0
- package/dist/components/core/Drawer/Drawer.theme.js +37 -0
- package/dist/components/core/Drawer/Drawer.types.d.ts +56 -0
- package/dist/components/core/Drawer/DrawerBody.d.ts +6 -0
- package/dist/components/core/Drawer/DrawerBody.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/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 +21 -0
- package/dist/components/core/Modal/Modal.js +74 -0
- package/dist/components/core/Modal/Modal.theme.d.ts +9 -0
- package/dist/components/core/Modal/Modal.theme.js +19 -0
- package/dist/components/core/Modal/Modal.types.d.ts +53 -0
- package/dist/components/core/Modal/ModalBody.d.ts +6 -0
- package/dist/components/core/Modal/ModalBody.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 +18 -0
- package/dist/components/core/Modal/index.d.ts +2 -0
- package/dist/components/core/Pagination/Pagination.d.ts +7 -0
- package/dist/components/core/Pagination/Pagination.theme.d.ts +23 -0
- package/dist/components/core/Pagination/Pagination.types.d.ts +57 -0
- package/dist/components/core/Pagination/index.d.ts +2 -0
- package/dist/components/core/Popover/Popover.animations.d.ts +5 -0
- package/dist/components/core/Popover/Popover.d.ts +25 -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 +190 -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 +65 -0
- package/dist/components/core/Popover/index.d.ts +6 -0
- package/dist/components/core/Popover/index.js +6 -0
- package/dist/components/core/Popover/test-popover.d.ts +3 -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 +6 -0
- package/dist/components/core/Segmented/Segmented.theme.d.ts +30 -0
- package/dist/components/core/Segmented/Segmented.types.d.ts +35 -0
- package/dist/components/core/Segmented/SegmentedContext.d.ts +16 -0
- package/dist/components/core/Segmented/SegmentedItem.d.ts +4 -0
- package/dist/components/core/Segmented/index.d.ts +4 -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.theme.d.ts +36 -0
- package/dist/components/core/Stepper/Stepper.types.d.ts +29 -0
- package/dist/components/core/Stepper/components/ConnectorLine.d.ts +21 -0
- package/dist/components/core/Stepper/components/IconCircle.d.ts +19 -0
- package/dist/components/core/Stepper/components/ProgressIndicator.d.ts +7 -0
- package/dist/components/core/Stepper/components/StepContent.d.ts +20 -0
- package/dist/components/core/Stepper/components/StepperItem.d.ts +24 -0
- package/dist/components/core/Stepper/index.d.ts +2 -0
- package/dist/components/core/Tabs/Tabs.d.ts +8 -0
- package/dist/components/core/Tabs/Tabs.js +52 -0
- package/dist/components/core/Tabs/Tabs.theme.d.ts +52 -0
- package/dist/components/core/Tabs/Tabs.theme.js +70 -0
- package/dist/components/core/Tabs/Tabs.types.d.ts +100 -0
- package/dist/components/core/Tabs/TabsContent.d.ts +6 -0
- package/dist/components/core/Tabs/TabsContent.js +29 -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 +24 -0
- package/dist/components/core/Tabs/TabsTrigger.d.ts +6 -0
- package/dist/components/core/Tabs/TabsTrigger.js +84 -0
- package/dist/components/core/Tabs/index.d.ts +9 -0
- package/dist/components/core/Tabs/index.js +9 -0
- package/dist/components/core/Tabs/test-tabs.d.ts +3 -0
- package/dist/components/core/Tooltip/Tooltip.animations.d.ts +32 -0
- package/dist/components/core/Tooltip/Tooltip.d.ts +7 -0
- package/dist/components/core/Tooltip/Tooltip.theme.d.ts +8 -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/Tree/Tree.animations.d.ts +5 -0
- package/dist/components/core/Tree/Tree.d.ts +2 -0
- package/dist/components/core/Tree/Tree.theme.d.ts +2 -0
- package/dist/components/core/Tree/Tree.types.d.ts +101 -0
- package/dist/components/core/Tree/TreeIcon.d.ts +3 -0
- package/dist/components/core/Tree/TreeNode.d.ts +6 -0
- package/dist/components/core/Tree/index.d.ts +5 -0
- package/dist/components/data-display/Masonry/Masonry.d.ts +4 -0
- package/dist/components/data-display/Masonry/Masonry.js +184 -0
- package/dist/components/data-display/Masonry/Masonry.theme.d.ts +9 -0
- package/dist/components/data-display/Masonry/Masonry.theme.js +40 -0
- package/dist/components/data-display/Masonry/Masonry.types.d.ts +53 -0
- package/dist/components/data-display/Masonry/index.d.ts +3 -0
- package/dist/components/data-display/Table/Table.d.ts +54 -0
- package/dist/components/data-display/Table/Table.theme.d.ts +2 -0
- package/dist/components/data-display/Table/Table.types.d.ts +254 -0
- package/dist/components/data-display/Table/Table.utils.d.ts +8 -0
- package/dist/components/data-display/Table/components/DeclarativeComponents.d.ts +7 -0
- package/dist/components/data-display/Table/components/TableActions/TableActions.d.ts +8 -0
- package/dist/components/data-display/Table/components/TableActions/TableActions.types.d.ts +40 -0
- package/dist/components/data-display/Table/components/TableActions/TableActionsMenu.d.ts +6 -0
- package/dist/components/data-display/Table/components/TableActions/index.d.ts +3 -0
- package/dist/components/data-display/Table/components/TableActionsMenu.d.ts +6 -0
- package/dist/components/data-display/Table/components/TableColumnManager/TableColumnManager.d.ts +3 -0
- package/dist/components/data-display/Table/components/TableColumnManager/TableColumnManager.theme.d.ts +4 -0
- package/dist/components/data-display/Table/components/TableColumnManager/index.d.ts +1 -0
- package/dist/components/data-display/Table/components/TableSelectionHeader/TableSelectionHeader.d.ts +16 -0
- package/dist/components/data-display/Table/components/TableSelectionHeader/index.d.ts +3 -0
- package/dist/components/data-display/Table/components/core/TableBody.d.ts +3 -0
- package/dist/components/data-display/Table/components/core/TableCell.d.ts +22 -0
- package/dist/components/data-display/Table/components/core/TableHeader.d.ts +3 -0
- package/dist/components/data-display/Table/components/core/TableRow.d.ts +3 -0
- package/dist/components/data-display/Table/components/core/index.d.ts +4 -0
- package/dist/components/data-display/Table/index.d.ts +18 -0
- package/dist/components/feedback/Alert/Alert.d.ts +3 -0
- package/dist/components/feedback/Alert/Alert.theme.d.ts +2 -0
- package/dist/components/feedback/Alert/Alert.types.d.ts +40 -0
- package/dist/components/feedback/Alert/index.d.ts +3 -0
- package/dist/components/feedback/ChatMessage/ChatMessage.d.ts +3 -0
- package/dist/components/feedback/ChatMessage/ChatMessage.theme.d.ts +2 -0
- package/dist/components/feedback/ChatMessage/ChatMessage.types.d.ts +66 -0
- package/dist/components/feedback/ChatMessage/index.d.ts +2 -0
- package/dist/components/feedback/Empty/Empty.d.ts +4 -0
- package/dist/components/feedback/Empty/Empty.theme.d.ts +22 -0
- package/dist/components/feedback/Empty/Empty.types.d.ts +40 -0
- package/dist/components/feedback/Empty/index.d.ts +3 -0
- package/dist/components/feedback/Notification/Notification.d.ts +3 -0
- package/dist/components/feedback/Notification/Notification.theme.d.ts +2 -0
- package/dist/components/feedback/Notification/Notification.types.d.ts +55 -0
- package/dist/components/feedback/Notification/index.d.ts +3 -0
- package/dist/components/feedback/Spinner/Spinner.d.ts +4 -0
- package/dist/components/feedback/Spinner/Spinner.js +14 -0
- package/dist/components/feedback/Spinner/Spinner.theme.d.ts +15 -0
- package/dist/components/feedback/Spinner/Spinner.theme.js +26 -0
- package/dist/components/feedback/Spinner/Spinner.types.d.ts +31 -0
- package/dist/components/feedback/Spinner/index.d.ts +2 -0
- package/dist/components/feedback/Toast/Toast.d.ts +3 -0
- package/dist/components/feedback/Toast/Toast.theme.d.ts +2 -0
- package/dist/components/feedback/Toast/Toast.types.d.ts +99 -0
- package/dist/components/feedback/Toast/ToastProvider.d.ts +4 -0
- package/dist/components/feedback/Toast/index.d.ts +5 -0
- package/dist/components/feedback/Toast/useToast.d.ts +2 -0
- package/dist/components/feedback/index.d.ts +11 -0
- package/dist/components/forms/Checkbox/Checkbox.d.ts +7 -0
- package/dist/components/forms/Checkbox/Checkbox.js +51 -0
- package/dist/components/forms/Checkbox/Checkbox.theme.d.ts +5 -0
- package/dist/components/forms/Checkbox/Checkbox.theme.js +13 -0
- package/dist/components/forms/Checkbox/Checkbox.types.d.ts +52 -0
- package/dist/components/forms/Checkbox/index.d.ts +3 -0
- package/dist/components/forms/DatePicker/DatePicker.animations.d.ts +34 -0
- package/dist/components/forms/DatePicker/DatePicker.d.ts +4 -0
- package/dist/components/forms/DatePicker/DatePicker.theme.d.ts +6 -0
- package/dist/components/forms/DatePicker/DatePicker.types.d.ts +106 -0
- package/dist/components/forms/DatePicker/components/CalendarHeader/CalendarHeader.d.ts +7 -0
- package/dist/components/forms/DatePicker/components/CalendarHeader/CalendarHeader.theme.d.ts +6 -0
- package/dist/components/forms/DatePicker/components/CalendarHeader/CalendarHeader.types.d.ts +42 -0
- package/dist/components/forms/DatePicker/components/CalendarHeader/index.d.ts +3 -0
- package/dist/components/forms/DatePicker/components/DateInput/DateInput.d.ts +7 -0
- package/dist/components/forms/DatePicker/components/DateInput/DateInput.types.d.ts +25 -0
- package/dist/components/forms/DatePicker/components/DateInput/index.d.ts +2 -0
- package/dist/components/forms/DatePicker/components/MonthPicker/MonthPicker.d.ts +7 -0
- package/dist/components/forms/DatePicker/components/MonthPicker/MonthPicker.theme.d.ts +6 -0
- package/dist/components/forms/DatePicker/components/MonthPicker/MonthPicker.types.d.ts +64 -0
- package/dist/components/forms/DatePicker/components/MonthPicker/index.d.ts +3 -0
- package/dist/components/forms/DatePicker/components/YearPicker/YearPicker.d.ts +7 -0
- package/dist/components/forms/DatePicker/components/YearPicker/YearPicker.theme.d.ts +6 -0
- package/dist/components/forms/DatePicker/components/YearPicker/YearPicker.types.d.ts +62 -0
- package/dist/components/forms/DatePicker/components/YearPicker/index.d.ts +3 -0
- package/dist/components/forms/DatePicker/components/index.d.ts +8 -0
- package/dist/components/forms/DatePicker/index.d.ts +5 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.d.ts +7 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.theme.d.ts +6 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.types.d.ts +129 -0
- package/dist/components/forms/DateRangePicker/index.d.ts +3 -0
- package/dist/components/forms/FormLabel/FormLabel.d.ts +7 -0
- package/dist/components/forms/FormLabel/FormLabel.js +23 -0
- package/dist/components/forms/FormLabel/FormLabel.theme.d.ts +6 -0
- package/dist/components/forms/FormLabel/FormLabel.theme.js +17 -0
- package/dist/components/forms/FormLabel/FormLabel.types.d.ts +36 -0
- package/dist/components/forms/FormLabel/index.d.ts +3 -0
- package/dist/components/forms/Input/Input.AdvancedStories.d.ts +13 -0
- package/dist/components/forms/Input/Input.d.ts +4 -0
- package/dist/components/forms/Input/Input.js +346 -0
- package/dist/components/forms/Input/Input.theme.d.ts +7 -0
- package/dist/components/forms/Input/Input.theme.js +82 -0
- package/dist/components/forms/Input/Input.types.d.ts +162 -0
- package/dist/components/forms/Input/index.d.ts +3 -0
- package/dist/components/forms/Input/inputMasks.d.ts +67 -0
- package/dist/components/forms/Input/inputMasks.js +198 -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/InputCreditCard/InputCreditCard.animations.d.ts +9 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.d.ts +19 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.theme.d.ts +31 -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/InputOTP/InputOTP.d.ts +18 -0
- package/dist/components/forms/InputOTP/InputOTP.js +177 -0
- package/dist/components/forms/InputOTP/InputOTP.theme.d.ts +2 -0
- package/dist/components/forms/InputOTP/InputOTP.theme.js +11 -0
- package/dist/components/forms/InputOTP/InputOTP.types.d.ts +50 -0
- package/dist/components/forms/InputOTP/index.d.ts +3 -0
- package/dist/components/forms/Radio/Radio.d.ts +7 -0
- package/dist/components/forms/Radio/Radio.js +41 -0
- package/dist/components/forms/Radio/Radio.theme.d.ts +21 -0
- package/dist/components/forms/Radio/Radio.theme.js +25 -0
- package/dist/components/forms/Radio/Radio.types.d.ts +51 -0
- package/dist/components/forms/Radio/index.d.ts +3 -0
- package/dist/components/forms/Select/Select.animations.d.ts +5 -0
- package/dist/components/forms/Select/Select.animations.js +30 -0
- package/dist/components/forms/Select/Select.d.ts +22 -0
- package/dist/components/forms/Select/Select.js +277 -0
- package/dist/components/forms/Select/Select.theme.d.ts +6 -0
- package/dist/components/forms/Select/Select.theme.js +55 -0
- package/dist/components/forms/Select/Select.types.d.ts +184 -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 +120 -0
- package/dist/components/forms/Signature/Signature.theme.d.ts +2 -0
- package/dist/components/forms/Signature/Signature.theme.js +8 -0
- package/dist/components/forms/Signature/Signature.types.d.ts +37 -0
- package/dist/components/forms/Signature/index.d.ts +2 -0
- package/dist/components/forms/Slider/Slider.d.ts +4 -0
- package/dist/components/forms/Slider/Slider.theme.d.ts +7 -0
- package/dist/components/forms/Slider/Slider.types.d.ts +131 -0
- package/dist/components/forms/Slider/index.d.ts +3 -0
- package/dist/components/forms/Switch/Switch.d.ts +7 -0
- package/dist/components/forms/Switch/Switch.js +61 -0
- package/dist/components/forms/Switch/Switch.theme.d.ts +34 -0
- package/dist/components/forms/Switch/Switch.theme.js +43 -0
- package/dist/components/forms/Switch/Switch.types.d.ts +66 -0
- package/dist/components/forms/Switch/index.d.ts +3 -0
- package/dist/components/forms/Textarea/Textarea.d.ts +4 -0
- package/dist/components/forms/Textarea/Textarea.js +46 -0
- package/dist/components/forms/Textarea/Textarea.theme.d.ts +7 -0
- package/dist/components/forms/Textarea/Textarea.theme.js +26 -0
- package/dist/components/forms/Textarea/Textarea.types.d.ts +55 -0
- package/dist/components/forms/Textarea/index.d.ts +3 -0
- package/dist/components/forms/TimePicker/TimePicker.animations.d.ts +178 -0
- package/dist/components/forms/TimePicker/TimePicker.animations.js +188 -0
- package/dist/components/forms/TimePicker/TimePicker.d.ts +7 -0
- package/dist/components/forms/TimePicker/TimePicker.js +413 -0
- package/dist/components/forms/TimePicker/TimePicker.theme.d.ts +9 -0
- package/dist/components/forms/TimePicker/TimePicker.theme.js +113 -0
- package/dist/components/forms/TimePicker/TimePicker.types.d.ts +158 -0
- package/dist/components/forms/TimePicker/index.d.ts +4 -0
- package/dist/components/forms/forms.theme.d.ts +49 -0
- package/dist/components/forms/forms.theme.js +61 -0
- package/dist/components/forms/index.d.ts +12 -0
- package/dist/components/layout/DragDrop/DragDrop.d.ts +4 -0
- package/dist/components/layout/DragDrop/DragDrop.theme.d.ts +2 -0
- package/dist/components/layout/DragDrop/DragDrop.types.d.ts +50 -0
- package/dist/components/layout/DragDrop/index.d.ts +2 -0
- package/dist/components/layout/Sortable/Sortable.d.ts +4 -0
- package/dist/components/layout/Sortable/Sortable.theme.d.ts +2 -0
- package/dist/components/layout/Sortable/Sortable.types.d.ts +67 -0
- package/dist/components/layout/Sortable/index.d.ts +2 -0
- package/dist/components/layout/index.d.ts +2 -0
- package/dist/components/navigation/NavItem/NavItem.d.ts +3 -0
- package/dist/components/navigation/NavItem/NavItem.theme.d.ts +2 -0
- package/dist/components/navigation/NavItem/NavItem.types.d.ts +113 -0
- package/dist/components/navigation/NavItem/index.d.ts +2 -0
- package/dist/components/navigation/Sidebar/Sidebar.d.ts +3 -0
- package/dist/components/navigation/Sidebar/Sidebar.theme.d.ts +2 -0
- package/dist/components/navigation/Sidebar/Sidebar.types.d.ts +129 -0
- package/dist/components/navigation/Sidebar/SidebarContent.d.ts +3 -0
- package/dist/components/navigation/Sidebar/SidebarContext.d.ts +17 -0
- package/dist/components/navigation/Sidebar/SidebarFooter.d.ts +3 -0
- package/dist/components/navigation/Sidebar/SidebarHeader.d.ts +3 -0
- package/dist/components/navigation/Sidebar/SidebarNav.d.ts +3 -0
- package/dist/components/navigation/Sidebar/SidebarNavGroup.d.ts +3 -0
- package/dist/components/navigation/Sidebar/SidebarToggle.d.ts +3 -0
- package/dist/components/navigation/Sidebar/index.d.ts +9 -0
- package/dist/components/navigation/index.d.ts +4 -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 +7 -0
- package/dist/icons/core/User.d.ts +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.js +40 -0
- package/dist/node_modules/@heroicons/react/20/solid/esm/ChevronRightIcon.js +26 -0
- package/dist/node_modules/@heroicons/react/24/outline/esm/CheckIcon.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/ClockIcon.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/XMarkIcon.js +28 -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/LockClosedIcon.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/hooks/animation-controls.js +80 -0
- package/dist/node_modules/framer-motion/dist/es/animation/hooks/use-animation.js +41 -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/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/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/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 +27 -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 +11 -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 +58 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/useClickOutside.d.ts +7 -0
- package/dist/utils/useClickOutside.js +26 -0
- package/package.json +87 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State variants for the radio component
|
|
3
|
+
*/
|
|
4
|
+
export type RadioState = 'default' | 'disabled' | 'invalid';
|
|
5
|
+
/**
|
|
6
|
+
* Radio component props
|
|
7
|
+
* @property {string} id - Unique identifier for the radio input
|
|
8
|
+
* @property {string} name - Name for the radio input group
|
|
9
|
+
* @property {string} value - Value for the radio input
|
|
10
|
+
* @property {boolean} checked - Whether the radio is checked
|
|
11
|
+
* @property {(checked: boolean, value: string) => void} onChange - Function called when the radio state changes
|
|
12
|
+
* @property {string} label - Label text for the radio
|
|
13
|
+
* @property {string} description - Optional description text
|
|
14
|
+
* @property {RadioState} state - The state of the radio (default, disabled, invalid)
|
|
15
|
+
* @property {RadioThemeOverrides} theme - Optional theme overrides
|
|
16
|
+
*/
|
|
17
|
+
export interface RadioProps {
|
|
18
|
+
id: string;
|
|
19
|
+
name: string;
|
|
20
|
+
value: string;
|
|
21
|
+
checked?: boolean;
|
|
22
|
+
onChange?: (checked: boolean, value: string) => void;
|
|
23
|
+
label?: string;
|
|
24
|
+
description?: string;
|
|
25
|
+
state?: RadioState;
|
|
26
|
+
theme?: RadioThemeOverrides;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Radio theme configuration
|
|
30
|
+
*/
|
|
31
|
+
export interface RadioThemeConfig {
|
|
32
|
+
baseStyle: {
|
|
33
|
+
container: string;
|
|
34
|
+
inputContainer: string;
|
|
35
|
+
labelContainer: string;
|
|
36
|
+
input: string;
|
|
37
|
+
dot: string;
|
|
38
|
+
description: string;
|
|
39
|
+
states?: {
|
|
40
|
+
default: string;
|
|
41
|
+
disabled: string;
|
|
42
|
+
invalid: string;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Radio theme overrides
|
|
48
|
+
*/
|
|
49
|
+
export interface RadioThemeOverrides {
|
|
50
|
+
baseStyle?: Partial<RadioThemeConfig['baseStyle']>;
|
|
51
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dropdown animation variants for the Select component
|
|
3
|
+
*/
|
|
4
|
+
var dropdownAnimations = {
|
|
5
|
+
initial: {
|
|
6
|
+
opacity: 0,
|
|
7
|
+
y: -10,
|
|
8
|
+
scale: 0.95,
|
|
9
|
+
},
|
|
10
|
+
visible: {
|
|
11
|
+
opacity: 1,
|
|
12
|
+
y: 0,
|
|
13
|
+
scale: 1,
|
|
14
|
+
transition: {
|
|
15
|
+
duration: 0.2,
|
|
16
|
+
ease: 'easeOut'
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
exit: {
|
|
20
|
+
opacity: 0,
|
|
21
|
+
y: -10,
|
|
22
|
+
scale: 0.95,
|
|
23
|
+
transition: {
|
|
24
|
+
duration: 0.15,
|
|
25
|
+
ease: 'easeIn'
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export { dropdownAnimations };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { SelectProps, SelectButtonProps, SelectOptionsProps, SelectOptionProps, SelectLabelProps } from "./Select.types";
|
|
3
|
+
/**
|
|
4
|
+
* Select Label Component
|
|
5
|
+
*/
|
|
6
|
+
export declare const SelectLabel: React.FC<SelectLabelProps>;
|
|
7
|
+
/**
|
|
8
|
+
* Select Button Component
|
|
9
|
+
*/
|
|
10
|
+
export declare const SelectButton: React.FC<SelectButtonProps>;
|
|
11
|
+
/**
|
|
12
|
+
* Select Options Component
|
|
13
|
+
*/
|
|
14
|
+
export declare const SelectOptions: React.FC<SelectOptionsProps>;
|
|
15
|
+
/**
|
|
16
|
+
* Select Option Component
|
|
17
|
+
*/
|
|
18
|
+
export declare const SelectOption: <T extends any>({ value, isSelected, disabled, className, onSelect, children, }: SelectOptionProps<T>) => React.JSX.Element;
|
|
19
|
+
/**
|
|
20
|
+
* Main Select Component
|
|
21
|
+
*/
|
|
22
|
+
export declare const Select: <T extends any>({ id, name, size, state, value, placeholder, disabled, required, options, label, helperText, onChange, onFocus, onBlur, leftIcon, rightIcon, theme: themeOverrides, className, searchable, searchPlaceholder, children, }: SelectProps<T>) => React.JSX.Element;
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
import { __assign } from '../../../node_modules/tslib/tslib.es6.js';
|
|
2
|
+
import React__default, { createContext, useEffect, useState, useRef, useContext } from 'react';
|
|
3
|
+
import { selectTheme } from './Select.theme.js';
|
|
4
|
+
import { FormLabel } from '../FormLabel/FormLabel.js';
|
|
5
|
+
import { Input } from '../Input/Input.js';
|
|
6
|
+
import '../Input/Input.theme.js';
|
|
7
|
+
import '../../../icons/core/PlusIcon.js';
|
|
8
|
+
import '../../../icons/core/MinusIcon.js';
|
|
9
|
+
import { SearchIcon } from '../../../icons/core/SearchIcon.js';
|
|
10
|
+
import '../../../icons/core/LockIcon.js';
|
|
11
|
+
import '../../../icons/core/DollarIcon.js';
|
|
12
|
+
import '../../../icons/core/TickIcon.js';
|
|
13
|
+
import { dropdownAnimations } from './Select.animations.js';
|
|
14
|
+
import { ChevronUpDownIcon } from '../../../icons/core/ChevronUpDown.js';
|
|
15
|
+
import { AnimatePresence } from '../../../node_modules/framer-motion/dist/es/components/AnimatePresence/index.js';
|
|
16
|
+
import { motion } from '../../../node_modules/framer-motion/dist/es/render/components/motion/proxy.js';
|
|
17
|
+
|
|
18
|
+
var SelectContext = createContext(undefined);
|
|
19
|
+
var useSelectContext = function () {
|
|
20
|
+
var context = useContext(SelectContext);
|
|
21
|
+
if (!context) {
|
|
22
|
+
throw new Error("Select components must be used within a SelectContainer");
|
|
23
|
+
}
|
|
24
|
+
return context;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Select Label Component
|
|
28
|
+
*/
|
|
29
|
+
var SelectLabel = function (_a) {
|
|
30
|
+
var htmlFor = _a.htmlFor, required = _a.required, _b = _a.className, className = _b === void 0 ? "" : _b, children = _a.children;
|
|
31
|
+
var theme = useSelectContext().theme;
|
|
32
|
+
var labelStyle = theme.labelStyle || "";
|
|
33
|
+
return (React__default.createElement("label", { htmlFor: htmlFor, className: "".concat(labelStyle, " ").concat(className) },
|
|
34
|
+
children,
|
|
35
|
+
required && React__default.createElement("span", { className: "text-danger-base ml-1" }, "*")));
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* Select Button Component
|
|
39
|
+
*/
|
|
40
|
+
var SelectButton = function (_a) {
|
|
41
|
+
var _b, _c, _d, _e, _f, _g;
|
|
42
|
+
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, leftIcon = _a.leftIcon, rightIcon = _a.rightIcon, _k = _a.className, className = _k === void 0 ? "" : _k, onClick = _a.onClick, onFocus = _a.onFocus, onBlur = _a.onBlur, children = _a.children;
|
|
43
|
+
var _l = useSelectContext(), theme = _l.theme, buttonRef = _l.buttonRef;
|
|
44
|
+
var baseStyle = theme.baseStyle || "";
|
|
45
|
+
var sizeStyle = ((_b = theme.sizes) === null || _b === void 0 ? void 0 : _b[size]) || "";
|
|
46
|
+
var stateStyle = ((_c = theme.states) === null || _c === void 0 ? void 0 : _c[state]) || "";
|
|
47
|
+
var hoverStateStyle = ((_d = theme.hoverStates) === null || _d === void 0 ? void 0 : _d[state]) || "";
|
|
48
|
+
var focusStateStyle = ((_e = theme.focusStates) === null || _e === void 0 ? void 0 : _e[state]) || "";
|
|
49
|
+
var buttonWrapperStyle = theme.buttonWrapperStyle || "";
|
|
50
|
+
var buttonStyle = theme.buttonStyle || "";
|
|
51
|
+
var leftIconStyle = theme.leftIconStyle || "";
|
|
52
|
+
var rightIconStyle = theme.rightIconStyle || "";
|
|
53
|
+
var leftIconPadding = leftIcon ? ((_f = theme.iconPadding) === null || _f === void 0 ? void 0 : _f.left) || "" : "";
|
|
54
|
+
var rightIconPadding = rightIcon ? ((_g = theme.iconPadding) === null || _g === void 0 ? void 0 : _g.right) || "" : "";
|
|
55
|
+
// Use either the themed focus state or directly apply the focus classes if the theme is not working
|
|
56
|
+
var activeFocusState = isOpen
|
|
57
|
+
? focusStateStyle || "outline-2 outline-primary-600 -outline-offset-1 ring-4 ring-primary-base/10"
|
|
58
|
+
: "";
|
|
59
|
+
return (React__default.createElement("div", { className: "".concat(buttonWrapperStyle) },
|
|
60
|
+
React__default.createElement("button", { ref: buttonRef, id: id, type: "button", className: "".concat(baseStyle, " ").concat(sizeStyle, " ").concat(stateStyle, " ").concat(hoverStateStyle, " ").concat(activeFocusState, " ").concat(leftIconPadding, " ").concat(rightIconPadding, " ").concat(buttonStyle, " ").concat(className), onClick: onClick, onFocus: onFocus, onBlur: onBlur, disabled: disabled, "aria-expanded": isOpen, "aria-haspopup": "listbox" },
|
|
61
|
+
leftIcon && React__default.createElement("span", { className: leftIconStyle }, leftIcon),
|
|
62
|
+
children,
|
|
63
|
+
rightIcon && React__default.createElement("span", { className: rightIconStyle }, rightIcon))));
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Select Options Component
|
|
67
|
+
*/
|
|
68
|
+
var SelectOptions = function (_a) {
|
|
69
|
+
var isOpen = _a.isOpen, _b = _a.maxHeight, maxHeight = _b === void 0 ? "15rem" : _b, _c = _a.className, className = _c === void 0 ? "" : _c, onClose = _a.onClose, children = _a.children;
|
|
70
|
+
var _d = useSelectContext(), optionsRef = _d.optionsRef, buttonRef = _d.buttonRef, highlightedIndex = _d.highlightedIndex, setHighlightedIndex = _d.setHighlightedIndex; _d.options; var filteredOptions = _d.filteredOptions, searchable = _d.searchable, searchValue = _d.searchValue, setSearchValue = _d.setSearchValue, theme = _d.theme;
|
|
71
|
+
var optionsContainerStyle = theme.optionsContainerStyle || "";
|
|
72
|
+
var searchInputStyle = theme.searchInputStyle || "";
|
|
73
|
+
// Convert maxHeight to a valid CSS value
|
|
74
|
+
var maxHeightValue = typeof maxHeight === "number" ? "".concat(maxHeight, "px") : maxHeight;
|
|
75
|
+
// Handle click outside to close options
|
|
76
|
+
useEffect(function () {
|
|
77
|
+
if (!isOpen)
|
|
78
|
+
return;
|
|
79
|
+
var handleClickOutside = function (event) {
|
|
80
|
+
if (optionsRef.current &&
|
|
81
|
+
!optionsRef.current.contains(event.target) &&
|
|
82
|
+
buttonRef.current &&
|
|
83
|
+
!buttonRef.current.contains(event.target)) {
|
|
84
|
+
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
88
|
+
return function () {
|
|
89
|
+
document.removeEventListener("mousedown", handleClickOutside);
|
|
90
|
+
};
|
|
91
|
+
}, [isOpen, onClose, optionsRef, buttonRef]);
|
|
92
|
+
// Handle keyboard navigation
|
|
93
|
+
useEffect(function () {
|
|
94
|
+
if (!isOpen)
|
|
95
|
+
return;
|
|
96
|
+
var handleKeyDown = function (event) {
|
|
97
|
+
if (!["ArrowUp", "ArrowDown", "Enter", "Escape", "Tab"].includes(event.key))
|
|
98
|
+
return;
|
|
99
|
+
if (event.target instanceof HTMLInputElement) {
|
|
100
|
+
// Don't navigate with arrow keys when typing in search input
|
|
101
|
+
if (["ArrowUp", "ArrowDown"].includes(event.key)) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
event.preventDefault();
|
|
106
|
+
if (event.key === "Escape" || event.key === "Tab") {
|
|
107
|
+
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
if (event.key === "ArrowUp") {
|
|
111
|
+
setHighlightedIndex(function (prev) {
|
|
112
|
+
return prev <= 0 ? filteredOptions.length - 1 : prev - 1;
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
else if (event.key === "ArrowDown") {
|
|
116
|
+
setHighlightedIndex(function (prev) {
|
|
117
|
+
return prev >= filteredOptions.length - 1 ? 0 : prev + 1;
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
else if (event.key === "Enter") {
|
|
121
|
+
if (highlightedIndex >= 0 &&
|
|
122
|
+
highlightedIndex < filteredOptions.length) {
|
|
123
|
+
var highlightedOption = filteredOptions[highlightedIndex];
|
|
124
|
+
if (!highlightedOption.disabled) {
|
|
125
|
+
var value = highlightedOption.value;
|
|
126
|
+
var context = useSelectContext();
|
|
127
|
+
context.selectOption(value);
|
|
128
|
+
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
document.addEventListener("keydown", handleKeyDown);
|
|
134
|
+
return function () {
|
|
135
|
+
document.removeEventListener("keydown", handleKeyDown);
|
|
136
|
+
};
|
|
137
|
+
}, [isOpen, onClose, highlightedIndex, filteredOptions, setHighlightedIndex]);
|
|
138
|
+
// Reset search and highlighted index when closing
|
|
139
|
+
useEffect(function () {
|
|
140
|
+
if (!isOpen) {
|
|
141
|
+
setSearchValue("");
|
|
142
|
+
setHighlightedIndex(-1);
|
|
143
|
+
}
|
|
144
|
+
}, [isOpen, setSearchValue, setHighlightedIndex]);
|
|
145
|
+
// Handle search input change
|
|
146
|
+
var handleSearchChange = function (e) {
|
|
147
|
+
setSearchValue(e.target.value);
|
|
148
|
+
setHighlightedIndex(-1); // Reset highlighted index when search changes
|
|
149
|
+
};
|
|
150
|
+
return (React__default.createElement(AnimatePresence, { mode: "wait" }, isOpen && (React__default.createElement(motion.div, { ref: optionsRef, className: "".concat(optionsContainerStyle, " ").concat(className), style: { maxHeight: searchable ? "none" : maxHeightValue }, role: "listbox", tabIndex: -1, variants: dropdownAnimations, initial: "initial", animate: "visible", exit: "exit" },
|
|
151
|
+
searchable && (React__default.createElement("div", { className: "sticky top-0 py-1 bg-white z-10 border-b border-neutral-100 ".concat(searchInputStyle), style: {
|
|
152
|
+
'--form-rounded': '0',
|
|
153
|
+
} },
|
|
154
|
+
React__default.createElement(Input, { placeholder: "Search...", value: searchValue, onChange: handleSearchChange, type: "search", className: "border-none outline-none 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", leftIcon: React__default.createElement(SearchIcon, { size: "sm", className: "text-neutral-400 group-focus-within:text-neutral-900" }), wrapperClassName: "!border-none !outline-none !ring-0 !shadow-none", style: {
|
|
155
|
+
border: "none",
|
|
156
|
+
outline: "none",
|
|
157
|
+
boxShadow: "none"
|
|
158
|
+
}, theme: {
|
|
159
|
+
baseStyle: "w-full block bg-white",
|
|
160
|
+
states: {
|
|
161
|
+
default: "!border-none !outline-none !ring-0 !shadow-none",
|
|
162
|
+
disabled: "!border-none !outline-none !ring-0 !shadow-none",
|
|
163
|
+
},
|
|
164
|
+
inputGroupStyle: "!border-none !outline-none !ring-0 !shadow-none flex items-center",
|
|
165
|
+
wrapperStyle: "!border-none !outline-none !ring-0 !shadow-none"
|
|
166
|
+
} }))),
|
|
167
|
+
React__default.createElement("div", { style: { maxHeight: maxHeightValue, overflow: "auto" } }, children)))));
|
|
168
|
+
};
|
|
169
|
+
/**
|
|
170
|
+
* Select Option Component
|
|
171
|
+
*/
|
|
172
|
+
var SelectOption = function (_a) {
|
|
173
|
+
var value = _a.value, isSelected = _a.isSelected, disabled = _a.disabled, _b = _a.className, className = _b === void 0 ? "" : _b, onSelect = _a.onSelect, children = _a.children;
|
|
174
|
+
var _c = useSelectContext(), highlightedIndex = _c.highlightedIndex, setHighlightedIndex = _c.setHighlightedIndex, options = _c.options, theme = _c.theme, selectOption = _c.selectOption;
|
|
175
|
+
var optionStyle = theme.optionStyle || "";
|
|
176
|
+
var selectedOptionStyle = theme.selectedOptionStyle || "";
|
|
177
|
+
var disabledOptionStyle = theme.disabledOptionStyle || "";
|
|
178
|
+
// Find index of this option
|
|
179
|
+
var optionIndex = options.findIndex(function (option) { return option.value === value; });
|
|
180
|
+
var isHighlighted = optionIndex === highlightedIndex;
|
|
181
|
+
var handleClick = function () {
|
|
182
|
+
if (disabled)
|
|
183
|
+
return;
|
|
184
|
+
selectOption(value);
|
|
185
|
+
onSelect === null || onSelect === void 0 ? void 0 : onSelect(value);
|
|
186
|
+
};
|
|
187
|
+
// Apply the hover style directly when keyboard navigating
|
|
188
|
+
var keyboardHighlightStyle = isHighlighted ? "text-primary-base bg-primary-50/50" : "";
|
|
189
|
+
return (React__default.createElement("div", { className: "\n ".concat(optionStyle, "\n ").concat(isSelected ? selectedOptionStyle : "", "\n ").concat(disabled ? disabledOptionStyle : "", "\n ").concat(keyboardHighlightStyle, "\n ").concat(className, "\n "), role: "option", "aria-selected": isSelected, "aria-disabled": disabled, onMouseEnter: function () { return !disabled && setHighlightedIndex(optionIndex); }, onClick: handleClick }, children));
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* Main Select Component
|
|
193
|
+
*/
|
|
194
|
+
var Select = function (_a) {
|
|
195
|
+
var _b;
|
|
196
|
+
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, _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, leftIcon = _a.leftIcon, rightIcon = _a.rightIcon, themeOverrides = _a.theme, _j = _a.className, className = _j === void 0 ? "" : _j, _k = _a.searchable, searchable = _k === void 0 ? false : _k; _a.searchPlaceholder; var children = _a.children;
|
|
197
|
+
// Merge theme with overrides
|
|
198
|
+
var theme = __assign(__assign({}, selectTheme), (themeOverrides || {}));
|
|
199
|
+
// State
|
|
200
|
+
var _m = useState(false), isOpen = _m[0], setIsOpen = _m[1];
|
|
201
|
+
var _o = useState(value), selectedValue = _o[0], setSelectedValue = _o[1];
|
|
202
|
+
var _p = useState(-1), highlightedIndex = _p[0], setHighlightedIndex = _p[1];
|
|
203
|
+
var _q = useState(""), searchValue = _q[0], setSearchValue = _q[1];
|
|
204
|
+
// Refs
|
|
205
|
+
var buttonRef = useRef(null);
|
|
206
|
+
var optionsRef = useRef(null);
|
|
207
|
+
// Update internal state when prop value changes
|
|
208
|
+
useEffect(function () {
|
|
209
|
+
setSelectedValue(value);
|
|
210
|
+
}, [value]);
|
|
211
|
+
// Get display value for the selected option
|
|
212
|
+
var getOptionByValue = function (searchValue) {
|
|
213
|
+
return options.find(function (option) { return option.value === searchValue; });
|
|
214
|
+
};
|
|
215
|
+
// Filter options based on search query
|
|
216
|
+
var filteredOptions = searchValue
|
|
217
|
+
? options.filter(function (option) {
|
|
218
|
+
return option.label.toLowerCase().includes(searchValue.toLowerCase());
|
|
219
|
+
})
|
|
220
|
+
: options;
|
|
221
|
+
var selectedOption = getOptionByValue(selectedValue);
|
|
222
|
+
var displayValue = selectedOption ? selectedOption.label : placeholder;
|
|
223
|
+
// Function to select an option
|
|
224
|
+
var selectOption = function (newValue) {
|
|
225
|
+
if (newValue !== selectedValue) {
|
|
226
|
+
setSelectedValue(newValue);
|
|
227
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
|
|
228
|
+
}
|
|
229
|
+
setIsOpen(false);
|
|
230
|
+
};
|
|
231
|
+
// Button click handler
|
|
232
|
+
var handleButtonClick = function () {
|
|
233
|
+
if (!disabled) {
|
|
234
|
+
setIsOpen(function (prev) { return !prev; });
|
|
235
|
+
}
|
|
236
|
+
};
|
|
237
|
+
// Helper text state style
|
|
238
|
+
var helperTextStateStyle = ((_b = theme.helperTextStates) === null || _b === void 0 ? void 0 : _b[state]) || "";
|
|
239
|
+
var helperTextStyle = theme.helperTextStyle || "";
|
|
240
|
+
// Container style
|
|
241
|
+
var containerStyle = theme.containerStyle || "";
|
|
242
|
+
// Default chevron icon if no rightIcon provided
|
|
243
|
+
var defaultChevronIcon = (React__default.createElement(ChevronUpDownIcon, { size: 16, className: "" }));
|
|
244
|
+
// Generate a unique ID if not provided
|
|
245
|
+
var selectId = id || "select-".concat(Math.random().toString(36).substring(2, 9));
|
|
246
|
+
return (React__default.createElement(SelectContext.Provider, { value: {
|
|
247
|
+
isOpen: isOpen,
|
|
248
|
+
setIsOpen: setIsOpen,
|
|
249
|
+
selectedValue: selectedValue,
|
|
250
|
+
setSelectedValue: setSelectedValue,
|
|
251
|
+
highlightedIndex: highlightedIndex,
|
|
252
|
+
setHighlightedIndex: setHighlightedIndex,
|
|
253
|
+
options: options,
|
|
254
|
+
filteredOptions: filteredOptions,
|
|
255
|
+
searchValue: searchValue,
|
|
256
|
+
setSearchValue: setSearchValue,
|
|
257
|
+
getOptionByValue: getOptionByValue,
|
|
258
|
+
selectOption: selectOption,
|
|
259
|
+
size: size,
|
|
260
|
+
state: state,
|
|
261
|
+
theme: theme,
|
|
262
|
+
searchable: searchable,
|
|
263
|
+
buttonRef: buttonRef,
|
|
264
|
+
optionsRef: optionsRef,
|
|
265
|
+
} },
|
|
266
|
+
React__default.createElement("div", { className: "relative ".concat(containerStyle, " ").concat(className) },
|
|
267
|
+
label && (React__default.createElement(FormLabel, { htmlFor: selectId, required: required }, label)),
|
|
268
|
+
React__default.createElement(SelectButton, { id: selectId, disabled: disabled, isOpen: isOpen, state: state, size: size, leftIcon: leftIcon, rightIcon: rightIcon || defaultChevronIcon, onClick: handleButtonClick, onFocus: onFocus, onBlur: onBlur },
|
|
269
|
+
React__default.createElement("span", { className: "block truncate" }, displayValue)),
|
|
270
|
+
React__default.createElement(SelectOptions, { isOpen: isOpen, onClose: function () { return setIsOpen(false); } }, children ||
|
|
271
|
+
filteredOptions.map(function (option) { return (React__default.createElement(SelectOption, { key: option.id, value: option.value, isSelected: option.value === selectedValue, disabled: option.disabled || false },
|
|
272
|
+
React__default.createElement("span", { className: "block truncate" }, option.label))); })),
|
|
273
|
+
helperText && (React__default.createElement("p", { className: "".concat(helperTextStyle, " ").concat(helperTextStateStyle) }, helperText)),
|
|
274
|
+
name && (React__default.createElement("input", { type: "hidden", name: name, value: selectedValue !== undefined ? String(selectedValue) : "" })))));
|
|
275
|
+
};
|
|
276
|
+
|
|
277
|
+
export { Select, SelectButton, SelectLabel, SelectOption, SelectOptions };
|
|
@@ -0,0 +1,55 @@
|
|
|
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 + " 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 - uses base sizes from common theme
|
|
17
|
+
sizes: {
|
|
18
|
+
sm: formsBaseTheme.sizes.sm.base,
|
|
19
|
+
md: formsBaseTheme.sizes.md.base,
|
|
20
|
+
lg: formsBaseTheme.sizes.lg.base,
|
|
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
|
|
29
|
+
optionsContainerStyle: "absolute z-10 mt-1.5 w-full min-w-[14rem] max-h-60 overflow-auto rounded-[var(--form-rounded)] bg-white py-0 text-sm shadow-xl ring-1 ring-slate-200 focus:outline-none scrollbar-thin scrollbar-thumb-neutral-300 scrollbar-track-neutral-100",
|
|
30
|
+
// Search input style
|
|
31
|
+
searchInputStyle: "group",
|
|
32
|
+
// Individual option style
|
|
33
|
+
optionStyle: "relative cursor-pointer select-none py-2 px-3 text-neutral-900 hover:text-primary-base hover:bg-primary-50/50",
|
|
34
|
+
// Selected option style
|
|
35
|
+
selectedOptionStyle: "font-medium text-primary-base",
|
|
36
|
+
// Disabled option style
|
|
37
|
+
disabledOptionStyle: "cursor-not-allowed opacity-50 hover:bg-transparent hover:text-neutral-900",
|
|
38
|
+
// Helper text style - inherited from common form theme
|
|
39
|
+
helperTextStyle: formsBaseTheme.helperText,
|
|
40
|
+
// Helper text state variants
|
|
41
|
+
helperTextStates: {
|
|
42
|
+
default: "text-gray-500",
|
|
43
|
+
disabled: "text-gray-400",
|
|
44
|
+
},
|
|
45
|
+
// Left icon style - inherited from common form theme
|
|
46
|
+
leftIconStyle: formsBaseTheme.iconStyles.left,
|
|
47
|
+
// Right icon style - inherited from common form theme
|
|
48
|
+
rightIconStyle: formsBaseTheme.iconStyles.right,
|
|
49
|
+
// Check icon style for selected options
|
|
50
|
+
checkIconStyle: "absolute inset-y-0 right-0 flex items-center pr-3 text-primary-600",
|
|
51
|
+
// Icon padding styles - inherited from common form theme
|
|
52
|
+
iconPadding: formsBaseTheme.iconStyles.padding,
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
export { selectTheme };
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Select value option type
|
|
4
|
+
* @template T The type of the option value
|
|
5
|
+
*/
|
|
6
|
+
export interface SelectOption<T = any> {
|
|
7
|
+
/** Unique identifier for the option */
|
|
8
|
+
id: string | number;
|
|
9
|
+
/** Display label for the option */
|
|
10
|
+
label: string;
|
|
11
|
+
/** Option value */
|
|
12
|
+
value: T;
|
|
13
|
+
/** Whether the option is disabled */
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Base props for all Select subcomponents
|
|
18
|
+
*/
|
|
19
|
+
export interface SelectBaseProps {
|
|
20
|
+
/** Additional class names */
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Select component props
|
|
25
|
+
* @template T The type of the select value
|
|
26
|
+
*/
|
|
27
|
+
export interface SelectProps<T = any> extends SelectBaseProps {
|
|
28
|
+
/** ID for the select component */
|
|
29
|
+
id?: string;
|
|
30
|
+
/** Name for the select component */
|
|
31
|
+
name?: string;
|
|
32
|
+
/** Size of the select component */
|
|
33
|
+
size?: SelectSize;
|
|
34
|
+
/** Current state of the select component */
|
|
35
|
+
state?: SelectState;
|
|
36
|
+
/** Currently selected option */
|
|
37
|
+
value?: T;
|
|
38
|
+
/** Placeholder text when no option is selected */
|
|
39
|
+
placeholder?: string;
|
|
40
|
+
/** Whether the select is disabled */
|
|
41
|
+
disabled?: boolean;
|
|
42
|
+
/** Whether the select is required */
|
|
43
|
+
required?: boolean;
|
|
44
|
+
/** Array of options to display */
|
|
45
|
+
options: SelectOption<T>[];
|
|
46
|
+
/** Label text for the select */
|
|
47
|
+
label?: string;
|
|
48
|
+
/** Helper text displayed below the select */
|
|
49
|
+
helperText?: string;
|
|
50
|
+
/** Called when the selection changes */
|
|
51
|
+
onChange?: (value: T) => void;
|
|
52
|
+
/** Called when the select receives focus */
|
|
53
|
+
onFocus?: (event: React.FocusEvent<HTMLButtonElement>) => void;
|
|
54
|
+
/** Called when the select loses focus */
|
|
55
|
+
onBlur?: (event: React.FocusEvent<HTMLButtonElement>) => void;
|
|
56
|
+
/** Left icon to display in the select button */
|
|
57
|
+
leftIcon?: React.ReactNode;
|
|
58
|
+
/** Right icon to display in the select button (default is chevron) */
|
|
59
|
+
rightIcon?: React.ReactNode;
|
|
60
|
+
/** Children to render instead of default options */
|
|
61
|
+
children?: React.ReactNode;
|
|
62
|
+
/** Component-level theme overrides */
|
|
63
|
+
theme?: SelectThemeOverrides;
|
|
64
|
+
/** Whether the select is searchable */
|
|
65
|
+
searchable?: boolean;
|
|
66
|
+
/** Placeholder text for the search input */
|
|
67
|
+
searchPlaceholder?: string;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Select button props
|
|
71
|
+
*/
|
|
72
|
+
export interface SelectButtonProps extends SelectBaseProps {
|
|
73
|
+
/** ID for the select button */
|
|
74
|
+
id?: string;
|
|
75
|
+
/** Whether the button is disabled */
|
|
76
|
+
disabled?: boolean;
|
|
77
|
+
/** Whether the button is open */
|
|
78
|
+
isOpen?: boolean;
|
|
79
|
+
/** Current state of the select */
|
|
80
|
+
state?: SelectState;
|
|
81
|
+
/** Size of the select */
|
|
82
|
+
size?: SelectSize;
|
|
83
|
+
/** Left icon to display */
|
|
84
|
+
leftIcon?: React.ReactNode;
|
|
85
|
+
/** Right icon to display (default is chevron) */
|
|
86
|
+
rightIcon?: React.ReactNode;
|
|
87
|
+
/** Called when the button is clicked */
|
|
88
|
+
onClick?: () => void;
|
|
89
|
+
/** Called when the button receives focus */
|
|
90
|
+
onFocus?: (event: React.FocusEvent<HTMLButtonElement>) => void;
|
|
91
|
+
/** Called when the button loses focus */
|
|
92
|
+
onBlur?: (event: React.FocusEvent<HTMLButtonElement>) => void;
|
|
93
|
+
/** Children to render inside the button */
|
|
94
|
+
children?: React.ReactNode;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Select options container props
|
|
98
|
+
*/
|
|
99
|
+
export interface SelectOptionsProps extends SelectBaseProps {
|
|
100
|
+
/** Whether the options are visible */
|
|
101
|
+
isOpen?: boolean;
|
|
102
|
+
/** Maximum height of the options container */
|
|
103
|
+
maxHeight?: string | number;
|
|
104
|
+
/** Called when the options should close */
|
|
105
|
+
onClose?: () => void;
|
|
106
|
+
/** Children to render inside the options container */
|
|
107
|
+
children?: React.ReactNode;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Select option props
|
|
111
|
+
*/
|
|
112
|
+
export interface SelectOptionProps<T = any> extends SelectBaseProps {
|
|
113
|
+
/** Option value */
|
|
114
|
+
value: T;
|
|
115
|
+
/** Whether the option is currently selected */
|
|
116
|
+
isSelected?: boolean;
|
|
117
|
+
/** Whether the option is disabled */
|
|
118
|
+
disabled?: boolean;
|
|
119
|
+
/** Called when the option is selected */
|
|
120
|
+
onSelect?: (value: T) => void;
|
|
121
|
+
/** Children to render inside the option */
|
|
122
|
+
children?: React.ReactNode;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Select label props
|
|
126
|
+
*/
|
|
127
|
+
export interface SelectLabelProps extends SelectBaseProps {
|
|
128
|
+
/** ID of the select this label is for */
|
|
129
|
+
htmlFor?: string;
|
|
130
|
+
/** Whether the select is required */
|
|
131
|
+
required?: boolean;
|
|
132
|
+
/** Children to render inside the label */
|
|
133
|
+
children?: React.ReactNode;
|
|
134
|
+
}
|
|
135
|
+
export type SelectSize = 'sm' | 'md' | 'lg';
|
|
136
|
+
export type SelectState = 'default' | 'disabled';
|
|
137
|
+
/**
|
|
138
|
+
* Theme overrides for the Select component
|
|
139
|
+
*/
|
|
140
|
+
export interface SelectThemeOverrides {
|
|
141
|
+
/** Base style for the select button */
|
|
142
|
+
baseStyle?: string;
|
|
143
|
+
/** Container style for the entire select component */
|
|
144
|
+
containerStyle?: string;
|
|
145
|
+
/** Size styles for the select button */
|
|
146
|
+
sizes?: Partial<Record<SelectSize, string>>;
|
|
147
|
+
/** State styles for the select button */
|
|
148
|
+
states?: Partial<Record<SelectState, string>>;
|
|
149
|
+
/** Focus state styles for the select button */
|
|
150
|
+
focusStates?: Partial<Record<SelectState, string>>;
|
|
151
|
+
/** Hover state styles for the select button */
|
|
152
|
+
hoverStates?: Partial<Record<SelectState, string>>;
|
|
153
|
+
/** Style for the select button wrapper */
|
|
154
|
+
buttonWrapperStyle?: string;
|
|
155
|
+
/** Style for the select button */
|
|
156
|
+
buttonStyle?: string;
|
|
157
|
+
/** Style for the options container */
|
|
158
|
+
optionsContainerStyle?: string;
|
|
159
|
+
/** Style for the search input container */
|
|
160
|
+
searchInputStyle?: string;
|
|
161
|
+
/** Style for individual options */
|
|
162
|
+
optionStyle?: string;
|
|
163
|
+
/** Style for selected options */
|
|
164
|
+
selectedOptionStyle?: string;
|
|
165
|
+
/** Style for disabled options */
|
|
166
|
+
disabledOptionStyle?: string;
|
|
167
|
+
/** Style for the label */
|
|
168
|
+
labelStyle?: string;
|
|
169
|
+
/** Style for the helper text */
|
|
170
|
+
helperTextStyle?: string;
|
|
171
|
+
/** State styles for the helper text */
|
|
172
|
+
helperTextStates?: Partial<Record<SelectState, string>>;
|
|
173
|
+
/** Left icon style */
|
|
174
|
+
leftIconStyle?: string;
|
|
175
|
+
/** Right icon style */
|
|
176
|
+
rightIconStyle?: string;
|
|
177
|
+
/** Style for the check icon in selected options */
|
|
178
|
+
checkIconStyle?: string;
|
|
179
|
+
/** Icon padding styles */
|
|
180
|
+
iconPadding?: {
|
|
181
|
+
left?: string;
|
|
182
|
+
right?: string;
|
|
183
|
+
};
|
|
184
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { SelectLabel, SelectButton, SelectOptions, SelectOption, Select } from './Select';
|
|
2
|
+
export { SelectLabel, SelectButton, SelectOptions, SelectOption, Select };
|
|
3
|
+
export type { SelectProps, SelectOption as SelectOptionType, SelectSize, SelectState, SelectThemeOverrides } from './Select.types';
|
|
4
|
+
export { selectTheme } from './Select.theme';
|