@flikk/ui 1.0.0-beta.2 → 1.0.0-beta.21
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 +52 -0
- package/dist/bg/1.jpg +0 -0
- package/dist/bg/10.jpg +0 -0
- package/dist/bg/11.jpg +0 -0
- package/dist/bg/14.jpg +0 -0
- package/dist/bg/15.jpg +0 -0
- package/dist/bg/16.jpg +0 -0
- package/dist/bg/17.jpg +0 -0
- package/dist/bg/18.jpg +0 -0
- package/dist/bg/19.jpg +0 -0
- package/dist/bg/2.jpg +0 -0
- package/dist/bg/20.jpg +0 -0
- package/dist/bg/21.jpg +0 -0
- package/dist/bg/22.jpg +0 -0
- package/dist/bg/23.jpg +0 -0
- package/dist/bg/24.jpg +0 -0
- package/dist/bg/3.jpg +0 -0
- package/dist/bg/4.jpg +0 -0
- package/dist/bg/5.jpg +0 -0
- package/dist/bg/6.jpg +0 -0
- package/dist/bg/7.jpg +0 -0
- package/dist/bg/8.jpg +0 -0
- package/dist/bg/9.jpg +0 -0
- package/dist/bg/bg/1.jpg +0 -0
- package/dist/bg/bg/10.jpg +0 -0
- package/dist/bg/bg/11.jpg +0 -0
- package/dist/bg/bg/14.jpg +0 -0
- package/dist/bg/bg/15.jpg +0 -0
- package/dist/bg/bg/16.jpg +0 -0
- package/dist/bg/bg/17.jpg +0 -0
- package/dist/bg/bg/18.jpg +0 -0
- package/dist/bg/bg/19.jpg +0 -0
- package/dist/bg/bg/2.jpg +0 -0
- package/dist/bg/bg/20.jpg +0 -0
- package/dist/bg/bg/21.jpg +0 -0
- package/dist/bg/bg/22.jpg +0 -0
- package/dist/bg/bg/23.jpg +0 -0
- package/dist/bg/bg/24.jpg +0 -0
- package/dist/bg/bg/3.jpg +0 -0
- package/dist/bg/bg/4.jpg +0 -0
- package/dist/bg/bg/5.jpg +0 -0
- package/dist/bg/bg/6.jpg +0 -0
- package/dist/bg/bg/7.jpg +0 -0
- package/dist/bg/bg/8.jpg +0 -0
- package/dist/bg/bg/9.jpg +0 -0
- package/dist/components/ai/CodeBlock/CodeBlock.theme.js +3 -3
- package/dist/components/ai/PromptInput/PromptInput.animations.d.ts +25 -0
- package/dist/components/ai/PromptInput/PromptInput.animations.js +61 -0
- package/dist/components/ai/PromptInput/PromptInput.js +146 -29
- package/dist/components/ai/PromptInput/PromptInput.theme.js +6 -1
- package/dist/components/ai/PromptInput/PromptInput.types.d.ts +68 -0
- package/dist/components/ai/PromptInput/VoiceRecorder.d.ts +10 -0
- package/dist/components/ai/PromptInput/VoiceRecorder.js +181 -0
- package/dist/components/ai/PromptInput/VoiceRecorder.types.d.ts +17 -0
- package/dist/components/ai/PromptInput/index.d.ts +1 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.theme.js +4 -4
- package/dist/components/ai/StreamingResponse/AnimatedText.js +3 -3
- package/dist/components/ai/StreamingResponse/MarkdownRenderer.d.ts +5 -2
- package/dist/components/ai/StreamingResponse/MarkdownRenderer.js +59 -35
- package/dist/components/ai/StreamingResponse/StreamingCursor.d.ts +4 -5
- package/dist/components/ai/StreamingResponse/StreamingCursor.js +5 -12
- package/dist/components/ai/StreamingResponse/StreamingResponse.animations.d.ts +7 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.animations.js +27 -8
- package/dist/components/ai/StreamingResponse/StreamingResponse.js +11 -4
- package/dist/components/ai/StreamingResponse/StreamingResponse.theme.js +4 -4
- package/dist/components/ai/StreamingResponse/StreamingResponse.types.d.ts +9 -7
- package/dist/components/ai/StreamingResponse/WordAnimationContext.d.ts +27 -0
- package/dist/components/ai/StreamingResponse/WordAnimationContext.js +134 -0
- package/dist/components/ai/StreamingResponse/index.d.ts +3 -1
- package/dist/components/ai/TokenCounter/TokenCounter.theme.js +6 -6
- package/dist/components/ai/index.d.ts +0 -7
- package/dist/components/ai/index.js +10 -6
- package/dist/components/charts/ActivityRings/ActivityRings.js +1 -1
- package/dist/components/charts/ActivityRings/ActivityRings.theme.js +2 -2
- package/dist/components/charts/BarChart/BarChart.js +3 -3
- package/dist/components/charts/ChartContainer.js +1 -1
- package/dist/components/charts/ComboChart/ComboChart.js +2 -2
- package/dist/components/charts/DonutChart/DonutChart.js +1 -1
- package/dist/components/charts/DonutChart/DonutChart.theme.js +1 -1
- package/dist/components/charts/DonutChart/DonutChart.types.d.ts +1 -2
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.js +2 -2
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.theme.js +1 -1
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.types.d.ts +1 -2
- package/dist/components/charts/FunnelChart/FunnelChart.js +9 -9
- package/dist/components/charts/Heatmap/Heatmap.theme.js +1 -1
- package/dist/components/charts/Heatmap/HeatmapCell.js +1 -1
- package/dist/components/charts/Heatmap/HeatmapLegend.js +1 -1
- package/dist/components/charts/RadarChart/RadarChart.theme.js +2 -2
- package/dist/components/charts/ScatterPlot/ScatterPlot.js +1 -1
- package/dist/components/charts/ScatterPlot/ScatterPlot.theme.js +2 -2
- package/dist/components/charts/StackedBarChart/StackedBarChart.js +2 -2
- package/dist/components/charts/shared/ChartErrorBoundary/ChartErrorBoundary.js +1 -1
- package/dist/components/charts/shared/ChartLegend/ChartLegend.types.d.ts +13 -1
- package/dist/components/charts/shared/ChartLegend/ChartLegendContent.js +1 -1
- package/dist/components/charts/shared/ChartText/ChartText.js +1 -1
- package/dist/components/charts/shared/ChartText/ChartText.theme.js +1 -1
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.theme.js +4 -4
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.types.d.ts +13 -2
- package/dist/components/core/Accordion/Accordion.animations.d.ts +6 -1
- package/dist/components/core/Accordion/Accordion.animations.js +15 -1
- package/dist/components/core/Accordion/Accordion.d.ts +1 -1
- package/dist/components/core/Accordion/Accordion.js +2 -2
- package/dist/components/core/Accordion/Accordion.theme.d.ts +2 -2
- package/dist/components/core/Accordion/Accordion.theme.js +8 -8
- package/dist/components/core/Accordion/Accordion.types.d.ts +28 -4
- package/dist/components/core/Accordion/AccordionBody.d.ts +3 -0
- package/dist/components/core/Accordion/{AccordionContent.js → AccordionBody.js} +4 -4
- package/dist/components/core/Accordion/AccordionItem.js +2 -2
- package/dist/components/core/Accordion/AccordionTrigger.js +19 -7
- package/dist/components/core/Accordion/index.d.ts +2 -2
- package/dist/components/core/Alert/Alert.animations.d.ts +11 -0
- package/dist/components/core/Alert/Alert.animations.js +44 -0
- package/dist/components/core/Alert/Alert.js +22 -4
- package/dist/components/core/Alert/Alert.theme.js +4 -8
- package/dist/components/core/Alert/Alert.types.d.ts +7 -6
- package/dist/components/core/AlertDialog/AlertDialog.d.ts +1 -1
- package/dist/components/core/AlertDialog/AlertDialog.js +2 -2
- package/dist/components/core/AlertDialog/AlertDialog.types.d.ts +2 -2
- package/dist/components/core/Avatar/Avatar.js +30 -21
- package/dist/components/core/Avatar/Avatar.theme.d.ts +4 -6
- package/dist/components/core/Avatar/Avatar.theme.js +23 -13
- package/dist/components/core/Avatar/Avatar.types.d.ts +18 -8
- package/dist/components/core/AvatarGroup/AvatarGroup.animations.js +2 -2
- package/dist/components/core/AvatarGroup/AvatarGroup.js +2 -3
- package/dist/components/core/AvatarGroup/AvatarGroup.theme.js +1 -1
- package/dist/components/core/Badge/Badge.animations.js +1 -1
- package/dist/components/core/Badge/Badge.d.ts +1 -1
- package/dist/components/core/Badge/Badge.js +27 -47
- package/dist/components/core/Badge/Badge.theme.js +50 -53
- package/dist/components/core/Badge/Badge.types.d.ts +10 -29
- package/dist/components/core/Breadcrumbs/Breadcrumbs.js +7 -3
- package/dist/components/core/Breadcrumbs/Breadcrumbs.types.d.ts +1 -1
- package/dist/components/core/Button/Button.d.ts +1 -1
- package/dist/components/core/Button/Button.js +23 -25
- package/dist/components/core/Button/Button.ripple.d.ts +5 -1
- package/dist/components/core/Button/Button.ripple.js +28 -18
- package/dist/components/core/Button/Button.theme.d.ts +2 -2
- package/dist/components/core/Button/Button.theme.js +78 -45
- package/dist/components/core/Button/Button.types.d.ts +4 -4
- package/dist/components/core/Button/index.d.ts +2 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.theme.js +7 -7
- package/dist/components/core/ButtonGroup/ButtonGroupText.js +1 -3
- package/dist/components/core/Calendar/Calendar.js +33 -7
- package/dist/components/core/Calendar/Calendar.theme.js +19 -15
- package/dist/components/core/Calendar/Calendar.types.d.ts +4 -1
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.types.d.ts +5 -6
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.js +3 -3
- package/dist/components/core/Card/Card.d.ts +3 -3
- package/dist/components/core/Card/Card.js +8 -9
- package/dist/components/core/Card/Card.theme.js +5 -5
- package/dist/components/core/Card/Card.types.d.ts +11 -31
- package/dist/components/core/Card/CardBody.d.ts +3 -0
- package/dist/components/core/Card/CardBody.js +11 -0
- package/dist/components/core/Card/CardSubtitle.d.ts +3 -0
- package/dist/components/core/Card/CardSubtitle.js +11 -0
- package/dist/components/core/Card/CardTitle.d.ts +1 -1
- package/dist/components/core/Card/index.d.ts +2 -2
- package/dist/components/core/Carousel/Carousel.js +4 -4
- package/dist/components/core/Carousel/Carousel.types.d.ts +4 -4
- package/dist/components/core/Carousel/CarouselBody.d.ts +4 -0
- package/dist/components/core/Carousel/{CarouselContent.js → CarouselBody.js} +3 -4
- package/dist/components/core/Carousel/index.d.ts +2 -1
- package/dist/components/core/CommandPalette/CommandItem.d.ts +1 -1
- package/dist/components/core/CommandPalette/CommandItem.js +2 -2
- package/dist/components/core/CommandPalette/CommandPalette.js +8 -6
- package/dist/components/core/CommandPalette/CommandPalette.theme.js +7 -6
- package/dist/components/core/CommandPalette/CommandPalette.types.d.ts +8 -2
- package/dist/components/core/ContextMenu/ContextMenu.d.ts +2 -2
- package/dist/components/core/ContextMenu/ContextMenu.js +11 -10
- package/dist/components/core/ContextMenu/ContextMenu.theme.js +3 -3
- package/dist/components/core/ContextMenu/ContextMenu.types.d.ts +3 -3
- package/dist/components/core/ContextMenu/ContextMenuBody.d.ts +6 -0
- package/dist/components/core/ContextMenu/{ContextMenuContent.js → ContextMenuBody.js} +4 -4
- package/dist/components/core/ContextMenu/ContextMenuItem.js +3 -3
- package/dist/components/core/ContextMenu/ContextMenuSubBody.d.ts +6 -0
- package/dist/components/core/ContextMenu/{ContextMenuSubContent.js → ContextMenuSubBody.js} +4 -4
- package/dist/components/core/ContextMenu/ContextMenuTrigger.js +5 -6
- package/dist/components/core/ContextMenu/index.d.ts +1 -1
- package/dist/components/core/Drawer/Drawer.d.ts +15 -3
- package/dist/components/core/Drawer/Drawer.js +71 -16
- package/dist/components/core/Drawer/Drawer.theme.d.ts +2 -0
- package/dist/components/core/Drawer/Drawer.theme.js +15 -13
- package/dist/components/core/Drawer/Drawer.types.d.ts +34 -9
- package/dist/components/core/Drawer/DrawerBody.d.ts +5 -0
- package/dist/components/core/Drawer/{DrawerContent.js → DrawerBody.js} +3 -3
- package/dist/components/core/Drawer/DrawerHeader.d.ts +5 -0
- package/dist/components/core/Drawer/DrawerHeader.js +15 -0
- package/dist/components/core/Drawer/DrawerSubtitle.d.ts +5 -0
- package/dist/components/core/Drawer/DrawerSubtitle.js +11 -0
- package/dist/components/core/Drawer/DrawerTitle.d.ts +5 -0
- package/dist/components/core/Drawer/DrawerTitle.js +11 -0
- package/dist/components/core/Drawer/index.d.ts +2 -1
- package/dist/components/core/Dropdown/Dropdown.d.ts +1 -1
- package/dist/components/core/Dropdown/Dropdown.js +6 -2
- package/dist/components/core/Dropdown/Dropdown.theme.js +1 -1
- package/dist/components/core/Dropdown/Dropdown.types.d.ts +7 -6
- package/dist/components/core/Dropdown/DropdownItem.js +3 -3
- package/dist/components/core/Dropdown/DropdownMenu.js +5 -4
- package/dist/components/core/Dropdown/DropdownSection.js +4 -2
- package/dist/components/core/Dropdown/DropdownSeparator.js +1 -1
- package/dist/components/core/Dropdown/DropdownTrigger.d.ts +6 -1
- package/dist/components/core/Dropdown/DropdownTrigger.js +10 -8
- package/dist/components/core/Empty/Empty.js +2 -2
- package/dist/components/core/Empty/Empty.theme.d.ts +1 -1
- package/dist/components/core/Empty/Empty.theme.js +3 -3
- package/dist/components/core/Empty/Empty.types.d.ts +2 -2
- package/dist/components/core/FileTypeIcon/FileTypeIcon.d.ts +3 -0
- package/dist/components/core/FileTypeIcon/FileTypeIcon.js +33 -0
- package/dist/components/core/FileTypeIcon/FileTypeIcon.theme.d.ts +2 -0
- package/dist/components/core/FileTypeIcon/FileTypeIcon.theme.js +12 -0
- package/dist/components/core/FileTypeIcon/FileTypeIcon.types.d.ts +19 -0
- package/dist/components/core/FileTypeIcon/fileTypes.d.ts +7 -0
- package/dist/components/core/FileTypeIcon/fileTypes.js +30 -0
- package/dist/components/core/FileTypeIcon/index.d.ts +2 -0
- package/dist/components/core/Kbd/Kbd.theme.js +4 -4
- package/dist/components/core/Link/Link.d.ts +1 -1
- package/dist/components/core/Link/Link.js +4 -2
- package/dist/components/core/Link/Link.types.d.ts +2 -2
- package/dist/components/core/MenuItem/MenuItem.js +4 -2
- package/dist/components/core/MenuItem/MenuItem.theme.d.ts +1 -2
- package/dist/components/core/MenuItem/MenuItem.theme.js +9 -11
- package/dist/components/core/MenuItem/MenuItem.types.d.ts +1 -1
- package/dist/components/core/Message/Message.d.ts +13 -3
- package/dist/components/core/Message/Message.js +74 -27
- package/dist/components/core/Message/Message.theme.d.ts +1 -1
- package/dist/components/core/Message/Message.theme.js +44 -24
- package/dist/components/core/Message/Message.types.d.ts +122 -14
- package/dist/components/core/Message/MessageAudio.d.ts +8 -0
- package/dist/components/core/Message/MessageAudio.js +11 -0
- package/dist/components/core/Message/MessageAvatar.d.ts +2 -2
- package/dist/components/core/Message/MessageAvatar.js +3 -3
- package/dist/components/core/Message/MessageBody.d.ts +8 -0
- package/dist/components/core/Message/{MessageContent.js → MessageBody.js} +3 -3
- package/dist/components/core/Message/MessageContext.d.ts +3 -1
- package/dist/components/core/Message/MessageDateDivider.d.ts +6 -0
- package/dist/components/core/Message/MessageDateDivider.js +10 -0
- package/dist/components/core/Message/MessageFile.d.ts +9 -0
- package/dist/components/core/Message/MessageFile.js +15 -0
- package/dist/components/core/Message/MessageImage.d.ts +11 -0
- package/dist/components/core/Message/MessageImage.js +13 -0
- package/dist/components/core/Message/MessageLink.d.ts +10 -0
- package/dist/components/core/Message/MessageLink.js +15 -0
- package/dist/components/core/Message/MessageList.animations.d.ts +6 -0
- package/dist/components/core/Message/MessageList.animations.js +32 -0
- package/dist/components/core/Message/MessageList.d.ts +5 -0
- package/dist/components/core/Message/MessageList.js +78 -0
- package/dist/components/core/Message/MessageList.theme.d.ts +2 -0
- package/dist/components/core/Message/MessageList.theme.js +6 -0
- package/dist/components/core/Message/MessageList.types.d.ts +32 -0
- package/dist/components/core/Message/MessageReactions.d.ts +8 -0
- package/dist/components/core/Message/MessageReactions.js +12 -0
- package/dist/components/core/Message/MessageReply.d.ts +8 -0
- package/dist/components/core/Message/MessageReply.js +10 -0
- package/dist/components/core/Message/MessageSenderName.d.ts +6 -0
- package/dist/components/core/Message/MessageSenderName.js +10 -0
- package/dist/components/core/Message/MessageStatusIndicator.d.ts +9 -0
- package/dist/components/core/Message/MessageStatusIndicator.js +45 -0
- package/dist/components/core/Message/index.d.ts +23 -1
- package/dist/components/core/Modal/Modal.animations.d.ts +1 -0
- package/dist/components/core/Modal/Modal.animations.js +14 -11
- package/dist/components/core/Modal/Modal.d.ts +2 -2
- package/dist/components/core/Modal/Modal.js +9 -5
- package/dist/components/core/Modal/Modal.theme.js +6 -6
- package/dist/components/core/Modal/Modal.types.d.ts +9 -6
- package/dist/components/core/Modal/ModalHeader.js +2 -1
- package/dist/components/core/Modal/ModalSubtitle.d.ts +5 -0
- package/dist/components/core/Modal/ModalSubtitle.js +11 -0
- package/dist/components/core/ModalStack/ModalStack.animations.js +3 -3
- package/dist/components/core/ModalStack/ModalStackModal.js +4 -3
- package/dist/components/core/NavItem/NavItem.js +100 -52
- package/dist/components/core/NavItem/NavItem.theme.js +6 -3
- package/dist/components/core/NavItem/NavItem.types.d.ts +44 -30
- package/dist/components/core/NavItem/index.d.ts +1 -1
- package/dist/components/core/OfflineIndicator/OfflineIndicator.theme.js +3 -3
- package/dist/components/core/PageHeading/PageHeading.d.ts +8 -0
- package/dist/components/core/PageHeading/PageHeading.js +28 -0
- package/dist/components/core/PageHeading/PageHeading.theme.d.ts +2 -0
- package/dist/components/core/PageHeading/PageHeading.theme.js +11 -0
- package/dist/components/core/PageHeading/PageHeading.types.d.ts +55 -0
- package/dist/components/core/PageHeading/PageHeadingActions.d.ts +3 -0
- package/dist/components/core/PageHeading/PageHeadingActions.js +11 -0
- package/dist/components/core/PageHeading/PageHeadingBackButton.d.ts +3 -0
- package/dist/components/core/PageHeading/PageHeadingBackButton.js +14 -0
- package/dist/components/core/PageHeading/PageHeadingIcon.d.ts +3 -0
- package/dist/components/core/PageHeading/PageHeadingIcon.js +11 -0
- package/dist/components/core/PageHeading/PageHeadingSubtitle.d.ts +3 -0
- package/dist/components/core/PageHeading/PageHeadingSubtitle.js +11 -0
- package/dist/components/core/PageHeading/PageHeadingTitle.d.ts +3 -0
- package/dist/components/core/PageHeading/PageHeadingTitle.js +11 -0
- package/dist/components/core/PageHeading/index.d.ts +2 -0
- package/dist/components/core/Pagination/Pagination.theme.js +3 -3
- package/dist/components/core/Pill/Pill.theme.js +3 -3
- package/dist/components/core/Popover/Popover.d.ts +2 -2
- package/dist/components/core/Popover/Popover.js +5 -5
- package/dist/components/core/Popover/Popover.theme.d.ts +1 -1
- package/dist/components/core/Popover/Popover.theme.js +2 -2
- package/dist/components/core/Popover/Popover.types.d.ts +9 -3
- package/dist/components/core/Popover/PopoverBody.d.ts +7 -0
- package/dist/components/core/Popover/{PopoverContent.js → PopoverBody.js} +30 -13
- package/dist/components/core/Popover/PopoverTrigger.d.ts +1 -1
- package/dist/components/core/Popover/PopoverTrigger.js +11 -11
- package/dist/components/core/Popover/index.d.ts +4 -3
- package/dist/components/core/Progress/Progress.d.ts +9 -8
- package/dist/components/core/Progress/Progress.js +16 -16
- package/dist/components/core/Progress/Progress.theme.js +5 -13
- package/dist/components/core/Progress/Progress.types.d.ts +2 -19
- package/dist/components/core/Progress/index.d.ts +1 -1
- package/dist/components/core/ScrollArea/ScrollArea.js +49 -7
- package/dist/components/core/ScrollArea/ScrollArea.types.d.ts +12 -3
- package/dist/components/core/ScrollArea/index.d.ts +1 -1
- package/dist/components/core/Segmented/Segmented.js +7 -8
- package/dist/components/core/Segmented/Segmented.theme.js +6 -6
- package/dist/components/core/Segmented/SegmentedItem.js +1 -1
- package/dist/components/core/Sidebar/Sidebar.d.ts +11 -1
- package/dist/components/core/Sidebar/Sidebar.js +52 -17
- package/dist/components/core/Sidebar/Sidebar.theme.js +9 -7
- package/dist/components/core/Sidebar/Sidebar.types.d.ts +57 -0
- package/dist/components/core/Sidebar/SidebarContent.js +3 -1
- package/dist/components/core/Sidebar/SidebarContext.d.ts +14 -0
- package/dist/components/core/Sidebar/SidebarContext.js +63 -11
- package/dist/components/core/Sidebar/SidebarFooter.js +3 -1
- package/dist/components/core/Sidebar/SidebarHeader.js +6 -2
- package/dist/components/core/Sidebar/SidebarMobileTrigger.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarMobileTrigger.js +29 -0
- package/dist/components/core/Sidebar/SidebarNav.js +3 -2
- package/dist/components/core/Sidebar/SidebarNavGroup.js +4 -2
- package/dist/components/core/Sidebar/SidebarToggle.js +2 -1
- package/dist/components/core/Sidebar/SidebarUserProfile.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarUserProfile.js +35 -0
- package/dist/components/core/Sidebar/index.d.ts +3 -1
- package/dist/components/core/SocialIcon/SocialIcon.d.ts +3 -0
- package/dist/components/core/SocialIcon/SocialIcon.js +30 -0
- package/dist/components/core/SocialIcon/SocialIcon.theme.d.ts +2 -0
- package/dist/components/core/SocialIcon/SocialIcon.theme.js +12 -0
- package/dist/components/core/SocialIcon/SocialIcon.types.d.ts +18 -0
- package/dist/components/core/SocialIcon/index.d.ts +2 -0
- package/dist/components/core/SocialIcon/platforms.d.ts +17 -0
- package/dist/components/core/SocialIcon/platforms.js +234 -0
- package/dist/components/core/Sortable/Sortable.js +2 -2
- package/dist/components/core/Sortable/Sortable.theme.js +1 -1
- package/dist/components/core/Sortable/Sortable.types.d.ts +7 -5
- package/dist/components/core/Spinner/Spinner.theme.js +3 -5
- package/dist/components/core/Spinner/Spinner.types.d.ts +2 -1
- package/dist/components/core/Tabs/Tabs.animations.d.ts +2 -2
- package/dist/components/core/Tabs/Tabs.animations.js +3 -3
- package/dist/components/core/Tabs/Tabs.d.ts +1 -1
- package/dist/components/core/Tabs/Tabs.js +3 -3
- package/dist/components/core/Tabs/Tabs.theme.d.ts +2 -2
- package/dist/components/core/Tabs/Tabs.theme.js +5 -5
- package/dist/components/core/Tabs/Tabs.types.d.ts +9 -9
- package/dist/components/core/Tabs/TabsBody.d.ts +6 -0
- package/dist/components/core/Tabs/{TabsContent.js → TabsBody.js} +9 -9
- package/dist/components/core/Tabs/TabsTrigger.js +1 -1
- package/dist/components/core/Tabs/index.d.ts +2 -2
- package/dist/components/core/Tag/Tag.animations.js +0 -13
- package/dist/components/core/Tag/Tag.d.ts +2 -2
- package/dist/components/core/Tag/Tag.js +21 -4
- package/dist/components/core/Tag/Tag.theme.js +12 -4
- package/dist/components/core/Tag/Tag.types.d.ts +24 -1
- package/dist/components/core/Toast/Toast.d.ts +2 -2
- package/dist/components/core/Toast/Toast.js +31 -18
- package/dist/components/core/Toast/Toast.theme.js +4 -9
- package/dist/components/core/Toast/Toast.types.d.ts +20 -37
- package/dist/components/core/Toast/index.d.ts +1 -1
- package/dist/components/core/Toast/useToast.js +6 -6
- package/dist/components/core/Tooltip/Tooltip.js +1 -1
- package/dist/components/core/Tooltip/Tooltip.theme.js +2 -2
- package/dist/components/core/Tree/Tree.theme.js +1 -1
- package/dist/components/core/index.d.ts +3 -8
- package/dist/components/core/index.js +28 -22
- package/dist/components/data-display/DescriptionList/DescriptionList.theme.js +8 -0
- package/dist/components/data-display/Feed/Feed.animations.d.ts +40 -0
- package/dist/components/data-display/Feed/Feed.animations.js +26 -0
- package/dist/components/{core → data-display}/Feed/Feed.d.ts +5 -1
- package/dist/components/data-display/Feed/Feed.js +123 -0
- package/dist/components/data-display/Feed/Feed.theme.js +20 -0
- package/dist/components/data-display/Feed/Feed.types.d.ts +65 -0
- package/dist/components/data-display/Feed/index.d.ts +2 -0
- package/dist/components/data-display/GanttChart/GanttChart.animations.d.ts +4 -0
- package/dist/components/data-display/GanttChart/GanttChart.animations.js +21 -0
- package/dist/components/data-display/GanttChart/GanttChart.d.ts +8 -0
- package/dist/components/data-display/GanttChart/GanttChart.js +170 -0
- package/dist/components/data-display/GanttChart/GanttChart.theme.d.ts +2 -0
- package/dist/components/data-display/GanttChart/GanttChart.theme.js +23 -0
- package/dist/components/data-display/GanttChart/GanttChart.types.d.ts +162 -0
- package/dist/components/data-display/GanttChart/GanttChart.types.js +9 -0
- package/dist/components/data-display/GanttChart/GanttChart.utils.d.ts +80 -0
- package/dist/components/data-display/GanttChart/GanttChart.utils.js +274 -0
- package/dist/components/data-display/GanttChart/GanttChartPanel.d.ts +9 -0
- package/dist/components/data-display/GanttChart/GanttChartPanel.js +82 -0
- package/dist/components/data-display/GanttChart/GanttDependencyArrows.d.ts +2 -0
- package/dist/components/data-display/GanttChart/GanttDependencyArrows.js +35 -0
- package/dist/components/data-display/GanttChart/GanttGroupBar.d.ts +8 -0
- package/dist/components/data-display/GanttChart/GanttGroupBar.js +26 -0
- package/dist/components/data-display/GanttChart/GanttMilestone.d.ts +9 -0
- package/dist/components/data-display/GanttChart/GanttMilestone.js +44 -0
- package/dist/components/data-display/GanttChart/GanttProgressCircle.d.ts +9 -0
- package/dist/components/data-display/GanttChart/GanttProgressCircle.js +11 -0
- package/dist/components/data-display/GanttChart/GanttSplitter.d.ts +2 -0
- package/dist/components/data-display/GanttChart/GanttSplitter.js +39 -0
- package/dist/components/data-display/GanttChart/GanttTableGroupRow.d.ts +7 -0
- package/dist/components/data-display/GanttChart/GanttTableGroupRow.js +23 -0
- package/dist/components/data-display/GanttChart/GanttTableHeader.d.ts +2 -0
- package/dist/components/data-display/GanttChart/GanttTableHeader.js +13 -0
- package/dist/components/data-display/GanttChart/GanttTablePanel.d.ts +6 -0
- package/dist/components/data-display/GanttChart/GanttTablePanel.js +20 -0
- package/dist/components/data-display/GanttChart/GanttTableTaskRow.d.ts +8 -0
- package/dist/components/data-display/GanttChart/GanttTableTaskRow.js +30 -0
- package/dist/components/data-display/GanttChart/GanttTaskBar.d.ts +9 -0
- package/dist/components/data-display/GanttChart/GanttTaskBar.js +208 -0
- package/dist/components/data-display/GanttChart/GanttTaskContextMenu.d.ts +8 -0
- package/dist/components/data-display/GanttChart/GanttTaskContextMenu.js +17 -0
- package/dist/components/data-display/GanttChart/GanttTimelineGrid.d.ts +7 -0
- package/dist/components/data-display/GanttChart/GanttTimelineGrid.js +33 -0
- package/dist/components/data-display/GanttChart/GanttTimelineHeader.d.ts +8 -0
- package/dist/components/data-display/GanttChart/GanttTimelineHeader.js +43 -0
- package/dist/components/data-display/GanttChart/GanttToolbar.d.ts +2 -0
- package/dist/components/data-display/GanttChart/GanttToolbar.js +29 -0
- package/dist/components/data-display/GanttChart/hooks/useGanttDates.d.ts +12 -0
- package/dist/components/data-display/GanttChart/hooks/useGanttDates.js +25 -0
- package/dist/components/data-display/GanttChart/hooks/useGanttDrag.d.ts +25 -0
- package/dist/components/data-display/GanttChart/hooks/useGanttDrag.js +144 -0
- package/dist/components/data-display/GanttChart/hooks/useGanttLayout.d.ts +2 -0
- package/dist/components/data-display/GanttChart/hooks/useGanttLayout.js +33 -0
- package/dist/components/data-display/GanttChart/hooks/useGanttScrollSync.d.ts +6 -0
- package/dist/components/data-display/GanttChart/hooks/useGanttScrollSync.js +32 -0
- package/dist/components/data-display/GanttChart/index.d.ts +3 -0
- package/dist/components/{core → data-display}/KPI/KPI.js +11 -9
- package/dist/components/{core → data-display}/KPI/KPI.theme.js +12 -12
- package/dist/components/{core → data-display}/KPI/KPI.types.d.ts +8 -7
- package/dist/components/{core → data-display}/KPI/index.d.ts +1 -0
- package/dist/components/data-display/Metric/Metric.js +20 -0
- package/dist/components/{core → data-display}/Metric/Metric.theme.js +17 -13
- package/dist/components/{core → data-display}/Metric/Metric.types.d.ts +10 -9
- package/dist/components/{core → data-display}/Table/Table.theme.js +4 -4
- package/dist/components/{core → data-display}/Table/Table.types.d.ts +8 -8
- package/dist/components/{core → data-display}/Table/TableActions.js +8 -8
- package/dist/components/{core → data-display}/Table/TableActionsMenu.js +1 -1
- package/dist/components/data-display/Table/TableColumnManager.js +25 -0
- package/dist/components/{core → data-display}/Table/TableFilter.js +7 -6
- package/dist/components/{core → data-display}/Table/TableHeader.js +1 -1
- package/dist/components/data-display/Table/TablePagination.js +25 -0
- package/dist/components/{core → data-display}/Table/TableRow.js +1 -1
- package/dist/components/{core → data-display}/Table/TableSelectionHeader.js +3 -3
- package/dist/components/{core → data-display}/Timeline/Timeline.theme.js +2 -2
- package/dist/components/{core → data-display}/Timeline/TimelineMarker.js +2 -2
- package/dist/components/data-display/index.d.ts +7 -0
- package/dist/components/data-display/index.js +20 -0
- package/dist/components/effects/3d/index.d.ts +6 -0
- package/dist/components/effects/3d/index.js +3 -0
- package/dist/components/effects/AIOrb/AIOrb.d.ts +1 -0
- package/dist/components/effects/AIOrb/AIOrb.js +3 -2
- package/dist/components/effects/AIOrb/AIOrb.types.d.ts +1 -0
- package/dist/components/effects/AIOrb/hooks/index.d.ts +2 -0
- package/dist/components/effects/AIOrb/hooks/useOrbState.d.ts +20 -0
- package/dist/components/effects/AIOrb/hooks/useOrbState.js +27 -0
- package/dist/components/effects/AIOrb/index.d.ts +2 -2
- package/dist/components/effects/AIOrb/variants/Aura/Aura.d.ts +3 -0
- package/dist/components/effects/AIOrb/variants/Aura/Aura.js +75 -0
- package/dist/components/effects/AIOrb/variants/Aura/Aura.shaders.d.ts +28 -0
- package/dist/components/effects/AIOrb/variants/Aura/Aura.shaders.js +191 -0
- package/dist/components/effects/AIOrb/variants/Aura/Aura.types.d.ts +53 -0
- package/dist/components/effects/AIOrb/variants/Aura/ShaderCanvas.d.ts +17 -0
- package/dist/components/effects/AIOrb/variants/Aura/ShaderCanvas.js +149 -0
- package/dist/components/effects/AIOrb/variants/Aura/index.d.ts +2 -0
- package/dist/components/effects/AIOrb/variants/DotSphere/DotSphere.js +38 -7
- package/dist/components/effects/AIOrb/variants/DotSphere/DotSphere.types.d.ts +6 -0
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.js +34 -8
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.types.d.ts +6 -0
- package/dist/components/effects/AIOrb/variants/index.d.ts +2 -0
- package/dist/components/effects/Animated/Animated.animations.js +29 -10
- package/dist/components/effects/Animated/Animated.d.ts +2 -2
- package/dist/components/effects/Animated/Animated.js +4 -3
- package/dist/components/effects/Animated/AnimatedItem.d.ts +1 -1
- package/dist/components/effects/Animated/AnimatedItem.js +5 -4
- package/dist/components/effects/Aurora/Aurora.d.ts +24 -0
- package/dist/components/effects/Aurora/Aurora.js +119 -0
- package/dist/components/effects/Aurora/Aurora.types.d.ts +15 -0
- package/dist/components/effects/Aurora/index.d.ts +2 -0
- package/dist/components/effects/CustomCursor/CustomCursor.d.ts +4 -4
- package/dist/components/effects/CustomCursor/CustomCursor.js +50 -47
- package/dist/components/effects/CustomCursor/CustomCursor.theme.js +3 -1
- package/dist/components/effects/CustomCursor/CustomCursor.types.d.ts +5 -4
- package/dist/components/effects/DotPattern/DotPattern.d.ts +18 -0
- package/dist/components/effects/DotPattern/DotPattern.js +65 -0
- package/dist/components/effects/DotPattern/DotPattern.types.d.ts +47 -0
- package/dist/components/effects/DotPattern/index.d.ts +2 -0
- package/dist/components/effects/GlassSurface/GlassSurface.d.ts +1 -1
- package/dist/components/effects/GlassSurface/GlassSurface.js +38 -18
- package/dist/components/effects/GlassSurface/GlassSurface.types.d.ts +14 -0
- package/dist/components/effects/GridPattern/GridPattern.d.ts +18 -0
- package/dist/components/effects/GridPattern/GridPattern.js +64 -0
- package/dist/components/effects/GridPattern/GridPattern.types.d.ts +47 -0
- package/dist/components/effects/GridPattern/index.d.ts +2 -0
- package/dist/components/effects/InteractiveCharacters/InteractiveCharacters.animations.d.ts +39 -0
- package/dist/components/effects/InteractiveCharacters/InteractiveCharacters.animations.js +98 -0
- package/dist/components/effects/InteractiveCharacters/InteractiveCharacters.d.ts +3 -0
- package/dist/components/effects/InteractiveCharacters/InteractiveCharacters.js +104 -0
- package/dist/components/effects/InteractiveCharacters/InteractiveCharacters.types.d.ts +30 -0
- package/dist/components/effects/InteractiveCharacters/characters/BlobCharacter.d.ts +3 -0
- package/dist/components/effects/InteractiveCharacters/characters/BlobCharacter.js +36 -0
- package/dist/components/effects/InteractiveCharacters/characters/SmallCharacter.d.ts +3 -0
- package/dist/components/effects/InteractiveCharacters/characters/SmallCharacter.js +36 -0
- package/dist/components/effects/InteractiveCharacters/characters/TallCharacter.d.ts +3 -0
- package/dist/components/effects/InteractiveCharacters/characters/TallCharacter.js +37 -0
- package/dist/components/effects/InteractiveCharacters/hooks/useBlink.d.ts +14 -0
- package/dist/components/effects/InteractiveCharacters/hooks/useBlink.js +41 -0
- package/dist/components/effects/InteractiveCharacters/hooks/useIdleAnimation.d.ts +25 -0
- package/dist/components/effects/InteractiveCharacters/hooks/useIdleAnimation.js +84 -0
- package/dist/components/effects/InteractiveCharacters/hooks/useMouseTracking.d.ts +18 -0
- package/dist/components/effects/InteractiveCharacters/hooks/useMouseTracking.js +35 -0
- package/dist/components/effects/InteractiveCharacters/index.d.ts +2 -0
- package/dist/components/effects/MagneticElement/MagneticElement.d.ts +30 -0
- package/dist/components/effects/MagneticElement/MagneticElement.js +110 -0
- package/dist/components/effects/MagneticElement/MagneticElement.types.d.ts +44 -0
- package/dist/components/effects/MagneticElement/index.d.ts +2 -0
- package/dist/components/effects/MorphingText/MorphingText.d.ts +17 -0
- package/dist/components/effects/MorphingText/MorphingText.js +92 -0
- package/dist/components/effects/MorphingText/MorphingText.types.d.ts +18 -0
- package/dist/components/effects/MorphingText/index.d.ts +2 -0
- package/dist/components/effects/Neumorphic/InsetCircleButton.d.ts +10 -0
- package/dist/components/effects/Neumorphic/InsetCircleButton.js +10 -0
- package/dist/components/effects/Neumorphic/InsetPill.d.ts +8 -0
- package/dist/components/effects/Neumorphic/InsetPill.js +7 -0
- package/dist/components/effects/Neumorphic/index.d.ts +4 -0
- package/dist/components/effects/NoiseOverlay/NoiseOverlay.d.ts +28 -0
- package/dist/components/effects/NoiseOverlay/NoiseOverlay.js +61 -0
- package/dist/components/effects/NoiseOverlay/NoiseOverlay.types.d.ts +35 -0
- package/dist/components/effects/NoiseOverlay/index.d.ts +2 -0
- package/dist/components/effects/Overlay/Overlay.js +6 -4
- package/dist/components/effects/PageTransition/PageTransition.animations.d.ts +8 -0
- package/dist/components/effects/PageTransition/PageTransition.animations.js +53 -0
- package/dist/components/effects/PageTransition/PageTransition.d.ts +3 -0
- package/dist/components/effects/PageTransition/PageTransition.js +71 -0
- package/dist/components/effects/PageTransition/PageTransition.types.d.ts +15 -0
- package/dist/components/effects/PageTransition/index.d.ts +2 -0
- package/dist/components/effects/ParallaxSection/ParallaxSection.d.ts +26 -0
- package/dist/components/effects/ParallaxSection/ParallaxSection.js +71 -0
- package/dist/components/effects/ParallaxSection/ParallaxSection.types.d.ts +11 -0
- package/dist/components/effects/ParallaxSection/index.d.ts +2 -0
- package/dist/components/effects/Particles/Particles.d.ts +22 -0
- package/dist/components/effects/Particles/Particles.js +33 -0
- package/dist/components/effects/Particles/Particles.scene.d.ts +3 -0
- package/dist/components/effects/Particles/Particles.scene.js +284 -0
- package/dist/components/effects/Particles/Particles.types.d.ts +65 -0
- package/dist/components/effects/Particles/index.d.ts +2 -0
- package/dist/components/effects/ProgressiveBlur/ProgressiveBlur.d.ts +3 -0
- package/dist/components/effects/ProgressiveBlur/ProgressiveBlur.js +75 -0
- package/dist/components/effects/ProgressiveBlur/ProgressiveBlur.theme.d.ts +7 -0
- package/dist/components/effects/ProgressiveBlur/ProgressiveBlur.theme.js +12 -0
- package/dist/components/effects/ProgressiveBlur/ProgressiveBlur.types.d.ts +47 -0
- package/dist/components/effects/ProgressiveBlur/index.d.ts +2 -0
- package/dist/components/effects/ScrollReveal/ScrollReveal.d.ts +29 -0
- package/dist/components/effects/ScrollReveal/ScrollReveal.js +121 -0
- package/dist/components/effects/ScrollReveal/ScrollReveal.types.d.ts +25 -0
- package/dist/components/effects/ScrollReveal/index.d.ts +2 -0
- package/dist/components/effects/Spotlight/Spotlight.d.ts +36 -0
- package/dist/components/effects/Spotlight/Spotlight.js +112 -0
- package/dist/components/effects/Spotlight/Spotlight.types.d.ts +29 -0
- package/dist/components/effects/Spotlight/index.d.ts +2 -0
- package/dist/components/effects/StickyScroll/StickyScroll.d.ts +30 -0
- package/dist/components/effects/StickyScroll/StickyScroll.js +128 -0
- package/dist/components/effects/StickyScroll/StickyScroll.types.d.ts +19 -0
- package/dist/components/effects/StickyScroll/index.d.ts +2 -0
- package/dist/components/effects/index.d.ts +30 -6
- package/dist/components/effects/index.js +16 -3
- package/dist/components/forms/Checkbox/Checkbox.animations.d.ts +14 -0
- package/dist/components/forms/Checkbox/Checkbox.animations.js +53 -0
- package/dist/components/forms/Checkbox/Checkbox.d.ts +3 -4
- package/dist/components/forms/Checkbox/Checkbox.js +39 -13
- package/dist/components/forms/Checkbox/Checkbox.theme.js +10 -10
- package/dist/components/forms/Checkbox/Checkbox.types.d.ts +30 -4
- package/dist/components/forms/Checkbox/CheckboxContext.d.ts +14 -0
- package/dist/components/forms/Checkbox/CheckboxContext.js +12 -0
- package/dist/components/forms/Checkbox/CheckboxGroup.d.ts +3 -0
- package/dist/components/forms/Checkbox/CheckboxGroup.js +40 -0
- package/dist/components/forms/Checkbox/index.d.ts +1 -1
- package/dist/components/forms/ColorPicker/ColorPicker.d.ts +1 -1
- package/dist/components/forms/ColorPicker/ColorPicker.js +3 -3
- package/dist/components/forms/ColorPicker/ColorPicker.theme.js +3 -3
- package/dist/components/forms/ColorPicker/ColorPicker.types.d.ts +3 -3
- package/dist/components/forms/ColorPicker/ColorPickerBody.d.ts +7 -0
- package/dist/components/forms/ColorPicker/{ColorPickerContent.js → ColorPickerBody.js} +8 -8
- package/dist/components/forms/ColorPicker/ColorPickerInput.js +7 -7
- package/dist/components/forms/ColorPicker/index.d.ts +2 -2
- package/dist/components/forms/Combobox/Combobox.js +5 -3
- package/dist/components/forms/CronInput/CronInput.d.ts +3 -0
- package/dist/components/forms/CronInput/CronInput.js +107 -0
- package/dist/components/forms/CronInput/CronInput.theme.d.ts +6 -0
- package/dist/components/forms/CronInput/CronInput.theme.js +84 -0
- package/dist/components/forms/CronInput/CronInput.types.d.ts +98 -0
- package/dist/components/forms/CronInput/CronInput.utils.d.ts +67 -0
- package/dist/components/forms/CronInput/CronInput.utils.js +505 -0
- package/dist/components/forms/CronInput/index.d.ts +4 -0
- package/dist/components/forms/DatePicker/DatePicker.d.ts +7 -3
- package/dist/components/forms/DatePicker/DatePicker.js +6 -5
- package/dist/components/forms/DatePicker/DatePicker.theme.js +5 -5
- package/dist/components/forms/DatePicker/DatePicker.types.d.ts +9 -4
- package/dist/components/forms/DatePicker/DatePickerBody.d.ts +7 -0
- package/dist/components/forms/DatePicker/{DatePickerContent.js → DatePickerBody.js} +10 -9
- package/dist/components/forms/DatePicker/index.d.ts +2 -2
- package/dist/components/forms/DateRangePicker/DateRangePicker.animations.d.ts +1 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.d.ts +37 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.js +110 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.theme.d.ts +5 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.theme.js +52 -0
- package/dist/components/forms/DateRangePicker/DateRangePicker.types.d.ts +154 -0
- package/dist/components/forms/DateRangePicker/DateRangePickerBody.d.ts +6 -0
- package/dist/components/forms/DateRangePicker/DateRangePickerBody.js +208 -0
- package/dist/components/forms/DateRangePicker/DateRangePickerPresets.d.ts +6 -0
- package/dist/components/forms/DateRangePicker/DateRangePickerPresets.js +41 -0
- package/dist/components/forms/DateRangePicker/DateRangePickerTrigger.d.ts +6 -0
- package/dist/components/forms/DateRangePicker/DateRangePickerTrigger.js +32 -0
- package/dist/components/forms/DateRangePicker/dateRangePresets.d.ts +5 -0
- package/dist/components/forms/DateRangePicker/dateRangePresets.js +59 -0
- package/dist/components/forms/DateRangePicker/index.d.ts +4 -0
- package/dist/components/forms/FileUpload/FileUpload.js +2 -2
- package/dist/components/forms/FileUpload/FileUpload.theme.js +4 -4
- package/dist/components/forms/FileUpload/FileUploadProgress.animations.d.ts +36 -0
- package/dist/components/forms/FileUpload/FileUploadProgress.animations.js +22 -0
- package/dist/components/forms/FileUpload/FileUploadProgress.d.ts +3 -0
- package/dist/components/forms/FileUpload/FileUploadProgress.js +111 -0
- package/dist/components/forms/FileUpload/FileUploadProgress.theme.d.ts +19 -0
- package/dist/components/forms/FileUpload/FileUploadProgress.theme.js +27 -0
- package/dist/components/forms/FileUpload/FileUploadProgress.types.d.ts +33 -0
- package/dist/components/forms/FileUpload/index.d.ts +3 -0
- package/dist/components/forms/FormLabel/FormLabel.theme.js +1 -1
- package/dist/components/forms/Input/Input.js +8 -13
- package/dist/components/forms/Input/Input.theme.js +1 -1
- package/dist/components/forms/Input/Input.types.d.ts +10 -4
- package/dist/components/forms/InputAddress/InputAddress.theme.js +1 -1
- package/dist/components/forms/InputCounter/InputCounter.d.ts +1 -1
- package/dist/components/forms/InputCounter/InputCounter.js +1 -1
- package/dist/components/forms/InputCounter/InputCounter.theme.js +1 -1
- package/dist/components/forms/InputCounter/InputCounter.types.d.ts +3 -2
- package/dist/components/forms/InputCreditCard/InputCreditCard.theme.js +1 -1
- package/dist/components/forms/InputOTP/InputOTP.theme.js +2 -2
- package/dist/components/forms/InputTag/InputTag.js +1 -1
- package/dist/components/forms/Mention/Mention.d.ts +3 -0
- package/dist/components/forms/Mention/Mention.js +607 -0
- package/dist/components/forms/Mention/Mention.theme.d.ts +6 -0
- package/dist/components/forms/Mention/Mention.theme.js +55 -0
- package/dist/components/forms/Mention/Mention.types.d.ts +151 -0
- package/dist/components/forms/Mention/Mention.utils.d.ts +42 -0
- package/dist/components/forms/Mention/Mention.utils.js +285 -0
- package/dist/components/forms/Mention/index.d.ts +3 -0
- package/dist/components/forms/Radio/Radio.animations.d.ts +10 -0
- package/dist/components/forms/Radio/Radio.animations.js +37 -0
- package/dist/components/forms/Radio/Radio.d.ts +3 -4
- package/dist/components/forms/Radio/Radio.js +32 -10
- package/dist/components/forms/Radio/Radio.theme.js +35 -6
- package/dist/components/forms/Radio/Radio.types.d.ts +33 -6
- package/dist/components/forms/Radio/RadioContext.d.ts +14 -0
- package/dist/components/forms/Radio/RadioContext.js +12 -0
- package/dist/components/forms/Radio/RadioGroup.d.ts +3 -0
- package/dist/components/forms/Radio/RadioGroup.js +36 -0
- package/dist/components/forms/Radio/index.d.ts +1 -1
- package/dist/components/forms/RichTextEditor/RichTextEditor.js +25 -16
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.js +3 -3
- package/dist/components/forms/RichTextEditor/RichTextEditor.types.d.ts +11 -0
- package/dist/components/forms/Select/Select.d.ts +1 -1
- package/dist/components/forms/Select/Select.js +9 -9
- package/dist/components/forms/Select/Select.theme.js +1 -1
- package/dist/components/forms/Select/Select.types.d.ts +7 -7
- package/dist/components/forms/SelectableCard/SelectableCard.animations.d.ts +2 -0
- package/dist/components/forms/SelectableCard/SelectableCard.animations.js +9 -0
- package/dist/components/forms/SelectableCard/SelectableCard.d.ts +5 -0
- package/dist/components/forms/SelectableCard/SelectableCard.js +58 -0
- package/dist/components/forms/SelectableCard/SelectableCard.theme.d.ts +2 -0
- package/dist/components/forms/SelectableCard/SelectableCard.theme.js +38 -0
- package/dist/components/forms/SelectableCard/SelectableCard.types.d.ts +33 -0
- package/dist/components/forms/SelectableCard/SelectableCardContext.d.ts +3 -0
- package/dist/components/forms/SelectableCard/SelectableCardContext.js +12 -0
- package/dist/components/forms/SelectableCard/SelectableCardGroup.d.ts +3 -0
- package/dist/components/forms/SelectableCard/SelectableCardGroup.js +37 -0
- package/dist/components/forms/SelectableCard/index.d.ts +3 -0
- package/dist/components/forms/Signature/Signature.theme.js +1 -1
- package/dist/components/forms/Slider/Slider.js +10 -3
- package/dist/components/forms/Slider/Slider.theme.js +6 -6
- package/dist/components/forms/Switch/Switch.js +10 -2
- package/dist/components/forms/Switch/Switch.theme.js +4 -4
- package/dist/components/forms/Switch/Switch.types.d.ts +4 -4
- package/dist/components/forms/Textarea/Textarea.js +2 -2
- package/dist/components/forms/Textarea/Textarea.types.d.ts +4 -4
- package/dist/components/forms/TimePicker/TimePicker.theme.js +2 -2
- package/dist/components/forms/forms.theme.js +6 -6
- package/dist/components/forms/index.d.ts +20 -4
- package/dist/components/forms/index.js +17 -2
- package/dist/components/layout/FormLayout/FormLayout.d.ts +6 -0
- package/dist/components/layout/FormLayout/FormLayout.js +28 -0
- package/dist/components/layout/FormLayout/FormLayout.theme.d.ts +2 -0
- package/dist/components/layout/FormLayout/FormLayout.theme.js +13 -0
- package/dist/components/layout/FormLayout/FormLayout.types.d.ts +43 -0
- package/dist/components/layout/FormLayout/FormLayoutFooter.d.ts +3 -0
- package/dist/components/layout/FormLayout/FormLayoutFooter.js +12 -0
- package/dist/components/layout/FormLayout/FormLayoutSection.d.ts +3 -0
- package/dist/components/layout/FormLayout/FormLayoutSection.js +13 -0
- package/dist/components/layout/FormLayout/index.d.ts +3 -0
- package/dist/components/layout/PageLayout/PageLayout.d.ts +7 -0
- package/dist/components/layout/PageLayout/PageLayout.js +33 -0
- package/dist/components/layout/PageLayout/PageLayout.theme.d.ts +2 -0
- package/dist/components/layout/PageLayout/PageLayout.theme.js +10 -0
- package/dist/components/layout/PageLayout/PageLayout.types.d.ts +39 -0
- package/dist/components/layout/PageLayout/PageLayoutContent.d.ts +3 -0
- package/dist/components/layout/PageLayout/PageLayoutContent.js +12 -0
- package/dist/components/layout/PageLayout/PageLayoutHeader.d.ts +3 -0
- package/dist/components/layout/PageLayout/PageLayoutHeader.js +12 -0
- package/dist/components/layout/PageLayout/PageLayoutSidebar.d.ts +3 -0
- package/dist/components/layout/PageLayout/PageLayoutSidebar.js +12 -0
- package/dist/components/layout/PageLayout/index.d.ts +3 -0
- package/dist/components/layout/index.d.ts +2 -0
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/useMediaQuery.d.ts +5 -0
- package/dist/hooks/useMediaQuery.js +21 -0
- package/dist/hooks/useSelectPortal.d.ts +4 -2
- package/dist/hooks/useSelectPortal.js +139 -51
- package/dist/index.d.ts +2 -0
- package/dist/index.js +85 -27
- package/dist/styles.css +1 -1
- package/dist/utils/colorUtils.d.ts +23 -0
- package/dist/utils/colorUtils.js +45 -0
- package/dist/utils/dateUtils.d.ts +30 -0
- package/dist/utils/dateUtils.js +113 -5
- package/dist/utils/formatUtils.d.ts +10 -0
- package/dist/utils/formatUtils.js +24 -0
- package/dist/utils/index.d.ts +4 -2
- package/dist/utils/paletteGenerator.d.ts +46 -0
- package/package.json +44 -25
- package/src/global.scss +954 -0
- package/src/styles/theme.css +463 -0
- package/src/theme-plugin.css +24 -0
- package/dist/components/ai/ApprovalCard/ApprovalCard.d.ts +0 -3
- package/dist/components/ai/ApprovalCard/ApprovalCard.js +0 -15
- package/dist/components/ai/ApprovalCard/ApprovalCard.theme.d.ts +0 -13
- package/dist/components/ai/ApprovalCard/ApprovalCard.theme.js +0 -15
- package/dist/components/ai/ApprovalCard/ApprovalCard.types.d.ts +0 -43
- package/dist/components/ai/ApprovalCard/index.d.ts +0 -2
- package/dist/components/ai/MessageHistory/MessageHistory.d.ts +0 -18
- package/dist/components/ai/MessageHistory/MessageHistory.js +0 -97
- package/dist/components/ai/MessageHistory/MessageHistory.theme.d.ts +0 -2
- package/dist/components/ai/MessageHistory/MessageHistory.theme.js +0 -8
- package/dist/components/ai/MessageHistory/MessageHistory.types.d.ts +0 -94
- package/dist/components/ai/MessageHistory/index.d.ts +0 -3
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.animations.d.ts +0 -10
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.animations.js +0 -47
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.d.ts +0 -20
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.js +0 -55
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.theme.d.ts +0 -2
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.theme.js +0 -20
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.types.d.ts +0 -67
- package/dist/components/ai/ThinkingIndicator/index.d.ts +0 -3
- package/dist/components/core/Accordion/AccordionContent.d.ts +0 -3
- package/dist/components/core/Button/Button.animations.d.ts +0 -5
- package/dist/components/core/Card/CardContent.d.ts +0 -3
- package/dist/components/core/Card/CardContent.js +0 -11
- package/dist/components/core/Card/CardDescription.d.ts +0 -3
- package/dist/components/core/Card/CardDescription.js +0 -11
- package/dist/components/core/Carousel/CarouselContent.d.ts +0 -4
- package/dist/components/core/ContextMenu/ContextMenuContent.d.ts +0 -6
- package/dist/components/core/ContextMenu/ContextMenuSubContent.d.ts +0 -6
- package/dist/components/core/DescriptionList/DescriptionList.theme.js +0 -8
- package/dist/components/core/Drawer/DrawerContent.d.ts +0 -5
- package/dist/components/core/Feed/Feed.js +0 -88
- package/dist/components/core/Feed/Feed.theme.js +0 -22
- package/dist/components/core/Feed/Feed.types.d.ts +0 -64
- package/dist/components/core/Feed/index.d.ts +0 -2
- package/dist/components/core/Loader/Loader.d.ts +0 -24
- package/dist/components/core/Loader/Loader.js +0 -57
- package/dist/components/core/Loader/Loader.theme.d.ts +0 -27
- package/dist/components/core/Loader/Loader.theme.js +0 -60
- package/dist/components/core/Loader/Loader.types.d.ts +0 -71
- package/dist/components/core/Loader/index.d.ts +0 -2
- package/dist/components/core/Message/MessageContent.d.ts +0 -8
- package/dist/components/core/Metric/Metric.js +0 -23
- package/dist/components/core/Modal/ModalDescription.d.ts +0 -5
- package/dist/components/core/Modal/ModalDescription.js +0 -11
- package/dist/components/core/Popover/PopoverContent.d.ts +0 -7
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.d.ts +0 -34
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.js +0 -218
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.theme.d.ts +0 -9
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.types.d.ts +0 -48
- package/dist/components/core/ProgressiveBlur/index.d.ts +0 -2
- package/dist/components/core/Table/TableColumnManager.js +0 -23
- package/dist/components/core/Table/TablePagination.js +0 -25
- package/dist/components/core/Tabs/TabsContent.d.ts +0 -6
- package/dist/components/forms/ColorPicker/ColorPickerContent.d.ts +0 -7
- package/dist/components/forms/DatePicker/DatePickerContent.d.ts +0 -7
- package/dist/icons/Icon.d.ts +0 -24
- package/dist/icons/Icon.js +0 -30
- package/dist/icons/Index.d.ts +0 -16
- package/dist/icons/core/ChevronUpDown.d.ts +0 -1
- package/dist/icons/core/ChevronUpDown.js +0 -7
- package/dist/icons/core/DollarIcon.d.ts +0 -1
- package/dist/icons/core/DollarIcon.js +0 -5
- package/dist/icons/core/LockIcon.d.ts +0 -1
- package/dist/icons/core/LockIcon.js +0 -5
- package/dist/icons/core/MinusIcon.d.ts +0 -1
- package/dist/icons/core/MinusIcon.js +0 -7
- package/dist/icons/core/PlusIcon.d.ts +0 -1
- package/dist/icons/core/PlusIcon.js +0 -7
- package/dist/icons/core/SearchIcon.d.ts +0 -1
- package/dist/icons/core/SearchIcon.js +0 -7
- package/dist/icons/core/TickIcon.d.ts +0 -1
- package/dist/icons/core/TickIcon.js +0 -5
- package/dist/icons/core/User.d.ts +0 -1
- package/dist/utils/useClickOutside.d.ts +0 -1
- /package/dist/components/{core → data-display}/DescriptionList/DescriptionList.d.ts +0 -0
- /package/dist/components/{core → data-display}/DescriptionList/DescriptionList.js +0 -0
- /package/dist/components/{core → data-display}/DescriptionList/DescriptionList.theme.d.ts +0 -0
- /package/dist/components/{core → data-display}/DescriptionList/DescriptionList.types.d.ts +0 -0
- /package/dist/components/{core → data-display}/DescriptionList/index.d.ts +0 -0
- /package/dist/components/{core → data-display}/Feed/Feed.theme.d.ts +0 -0
- /package/dist/components/{core → data-display}/KPI/KPI.d.ts +0 -0
- /package/dist/components/{core → data-display}/KPI/KPI.theme.d.ts +0 -0
- /package/dist/components/{core → data-display}/Metric/Metric.d.ts +0 -0
- /package/dist/components/{core → data-display}/Metric/Metric.theme.d.ts +0 -0
- /package/dist/components/{core → data-display}/Metric/index.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/Table.animations.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/Table.animations.js +0 -0
- /package/dist/components/{core → data-display}/Table/Table.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/Table.filterUtils.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/Table.filterUtils.js +0 -0
- /package/dist/components/{core → data-display}/Table/Table.js +0 -0
- /package/dist/components/{core → data-display}/Table/Table.theme.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/Table.utils.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/Table.utils.js +0 -0
- /package/dist/components/{core → data-display}/Table/TableActions.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableActionsMenu.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableBody.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableBody.js +0 -0
- /package/dist/components/{core → data-display}/Table/TableCell.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableCell.js +0 -0
- /package/dist/components/{core → data-display}/Table/TableColumnManager.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableDeclarative.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableDeclarative.js +0 -0
- /package/dist/components/{core → data-display}/Table/TableFilter.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableHeader.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TablePagination.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableRow.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/TableSelectionHeader.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/index.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTableColumns.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTableColumns.js +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTableExpansion.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTableExpansion.js +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTableFilter.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTableFilter.js +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTablePagination.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTablePagination.js +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTableSelection.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/hooks/useTableSelection.js +0 -0
- /package/dist/components/{core → data-display}/Table/index.d.ts +0 -0
- /package/dist/components/{core → data-display}/Table/index.js +0 -0
- /package/dist/components/{core → data-display}/Timeline/Timeline.animations.d.ts +0 -0
- /package/dist/components/{core → data-display}/Timeline/Timeline.animations.js +0 -0
- /package/dist/components/{core → data-display}/Timeline/Timeline.d.ts +0 -0
- /package/dist/components/{core → data-display}/Timeline/Timeline.js +0 -0
- /package/dist/components/{core → data-display}/Timeline/Timeline.theme.d.ts +0 -0
- /package/dist/components/{core → data-display}/Timeline/Timeline.types.d.ts +0 -0
- /package/dist/components/{core → data-display}/Timeline/TimelineContent.d.ts +0 -0
- /package/dist/components/{core → data-display}/Timeline/TimelineContent.js +0 -0
- /package/dist/components/{core → data-display}/Timeline/TimelineItem.d.ts +0 -0
- /package/dist/components/{core → data-display}/Timeline/TimelineItem.js +0 -0
- /package/dist/components/{core → data-display}/Timeline/TimelineMarker.d.ts +0 -0
- /package/dist/components/{core → data-display}/Timeline/index.d.ts +0 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import React__default, { useState, useMemo,
|
|
2
|
+
import React__default, { useState, useMemo, useCallback } from 'react';
|
|
3
3
|
import { AnimatePresence, motion } from 'motion/react';
|
|
4
4
|
import { XMarkIcon } from '@heroicons/react/24/outline';
|
|
5
|
+
import { UserIcon } from '@heroicons/react/16/solid';
|
|
5
6
|
import { cn } from '../../../utils/cn.js';
|
|
6
7
|
import { Avatar } from '../Avatar/Avatar.js';
|
|
7
8
|
import { animationTiming, dismissVariants, badgeVariants, dismissButtonVariants, dotVariants } from './Badge.animations.js';
|
|
@@ -31,16 +32,11 @@ const getShouldAnimate = () => {
|
|
|
31
32
|
* <Badge dismissible onDismiss={handleDismiss}>Removable</Badge>
|
|
32
33
|
* ```
|
|
33
34
|
*/
|
|
34
|
-
const Badge = React__default.memo(React__default.forwardRef(({ children, variant = "filled", color = "primary", size = "md", pill = false, withDot = false, iconStart, avatar, dismissible = false, onDismiss,
|
|
35
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q
|
|
35
|
+
const Badge = React__default.memo(React__default.forwardRef(({ children, variant = "filled", color = "primary", size = "md", pill = false, withDot = false, iconStart, avatar, dismissible = false, onDismiss, disabled = false, maxWidth, className, theme: customTheme = {}, onClick, darkMode = false, ...props }, ref) => {
|
|
36
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
36
37
|
// State management
|
|
37
38
|
const [isVisible, setIsVisible] = useState(true);
|
|
38
|
-
const [isSelected, setIsSelected] = useState(selected);
|
|
39
39
|
const shouldAnimate = useMemo(getShouldAnimate, []);
|
|
40
|
-
// Sync internal state with controlled prop
|
|
41
|
-
useEffect(() => {
|
|
42
|
-
setIsSelected(selected);
|
|
43
|
-
}, [selected]);
|
|
44
40
|
// Development-only warnings
|
|
45
41
|
if (process.env.NODE_ENV !== "production") {
|
|
46
42
|
if (dismissible && !onDismiss) {
|
|
@@ -49,9 +45,6 @@ const Badge = React__default.memo(React__default.forwardRef(({ children, variant
|
|
|
49
45
|
if (avatar && iconStart) {
|
|
50
46
|
console.warn("[Badge]: Both avatar and iconStart provided. Avatar takes precedence.");
|
|
51
47
|
}
|
|
52
|
-
if (selectable && !onSelect && selected === undefined) {
|
|
53
|
-
console.warn("[Badge]: selectable is true but no onSelect callback or selected prop provided. Component will work in uncontrolled mode.");
|
|
54
|
-
}
|
|
55
48
|
}
|
|
56
49
|
// Handle dismiss button click
|
|
57
50
|
const handleDismiss = useCallback((e) => {
|
|
@@ -62,17 +55,12 @@ const Badge = React__default.memo(React__default.forwardRef(({ children, variant
|
|
|
62
55
|
onDismiss === null || onDismiss === void 0 ? void 0 : onDismiss(e);
|
|
63
56
|
}, animationTiming.dismissDelay);
|
|
64
57
|
}, [onDismiss]);
|
|
65
|
-
// Handle badge click
|
|
58
|
+
// Handle badge click
|
|
66
59
|
const handleClick = useCallback((e) => {
|
|
67
60
|
if (disabled)
|
|
68
61
|
return;
|
|
69
|
-
if (selectable) {
|
|
70
|
-
const newSelected = !isSelected;
|
|
71
|
-
setIsSelected(newSelected);
|
|
72
|
-
onSelect === null || onSelect === void 0 ? void 0 : onSelect(newSelected);
|
|
73
|
-
}
|
|
74
62
|
onClick === null || onClick === void 0 ? void 0 : onClick(e);
|
|
75
|
-
}, [
|
|
63
|
+
}, [onClick, disabled]);
|
|
76
64
|
// Merge default theme with custom theme overrides
|
|
77
65
|
const theme = {
|
|
78
66
|
...badgeTheme,
|
|
@@ -90,9 +78,9 @@ const Badge = React__default.memo(React__default.forwardRef(({ children, variant
|
|
|
90
78
|
...(_c = badgeTheme.variantColors) === null || _c === void 0 ? void 0 : _c.outline,
|
|
91
79
|
...(_d = customTheme.variantColors) === null || _d === void 0 ? void 0 : _d.outline,
|
|
92
80
|
},
|
|
93
|
-
|
|
94
|
-
...(_e = badgeTheme.variantColors) === null || _e === void 0 ? void 0 : _e.
|
|
95
|
-
...(_f = customTheme.variantColors) === null || _f === void 0 ? void 0 : _f.
|
|
81
|
+
soft: {
|
|
82
|
+
...(_e = badgeTheme.variantColors) === null || _e === void 0 ? void 0 : _e.soft,
|
|
83
|
+
...(_f = customTheme.variantColors) === null || _f === void 0 ? void 0 : _f.soft,
|
|
96
84
|
},
|
|
97
85
|
},
|
|
98
86
|
sizes: {
|
|
@@ -111,13 +99,9 @@ const Badge = React__default.memo(React__default.forwardRef(({ children, variant
|
|
|
111
99
|
...badgeTheme.avatarSizes,
|
|
112
100
|
...customTheme.avatarSizes,
|
|
113
101
|
},
|
|
114
|
-
|
|
115
|
-
...badgeTheme.
|
|
116
|
-
...customTheme.
|
|
117
|
-
},
|
|
118
|
-
dismissIconSizes: {
|
|
119
|
-
...badgeTheme.dismissIconSizes,
|
|
120
|
-
...customTheme.dismissIconSizes,
|
|
102
|
+
dismissSizes: {
|
|
103
|
+
...badgeTheme.dismissSizes,
|
|
104
|
+
...customTheme.dismissSizes,
|
|
121
105
|
},
|
|
122
106
|
dotColors: {
|
|
123
107
|
...badgeTheme.dotColors,
|
|
@@ -137,7 +121,7 @@ const Badge = React__default.memo(React__default.forwardRef(({ children, variant
|
|
|
137
121
|
: "rounded-[var(--badge-radius)]";
|
|
138
122
|
const dotColorStyle = ((_l = theme.dotColors) === null || _l === void 0 ? void 0 : _l[color]) || "";
|
|
139
123
|
// Build base styles with all states
|
|
140
|
-
const isInteractive =
|
|
124
|
+
const isInteractive = dismissible;
|
|
141
125
|
const baseStyles = cn(theme.baseStyle, shapeStyle, variantStyles, colorStyles, sizeStyle, pill && ((_m = theme.pillSizes) === null || _m === void 0 ? void 0 : _m[size]), isInteractive && "cursor-pointer", disabled && ((_o = theme.states) === null || _o === void 0 ? void 0 : _o.disabled), darkMode && "dark", className);
|
|
142
126
|
// Create data attributes for styling hooks
|
|
143
127
|
const dataAttributes = {
|
|
@@ -148,59 +132,55 @@ const Badge = React__default.memo(React__default.forwardRef(({ children, variant
|
|
|
148
132
|
"data-pill": pill ? "true" : "false",
|
|
149
133
|
"data-with-dot": withDot ? "true" : "false",
|
|
150
134
|
"data-dismissible": dismissible ? "true" : "false",
|
|
151
|
-
"data-selected": isSelected ? "true" : "false",
|
|
152
|
-
"data-selectable": selectable ? "true" : "false",
|
|
153
135
|
"data-disabled": disabled ? "true" : "false",
|
|
154
136
|
"data-interactive": isInteractive ? "true" : "false",
|
|
155
137
|
};
|
|
156
138
|
// Render left content (priority: avatar → iconStart → dot)
|
|
157
139
|
const renderLeftContent = () => {
|
|
158
|
-
var _a, _b;
|
|
140
|
+
var _a, _b, _c;
|
|
159
141
|
if (avatar) {
|
|
160
142
|
// Apply negative margin for overlap effect (scales with badge size)
|
|
161
143
|
const avatarMargin = pill
|
|
162
144
|
? {
|
|
163
|
-
sm: "-ml-1.5",
|
|
164
|
-
md: "-ml-1.5",
|
|
165
|
-
lg: "-ml-2", // Large pill: more overlap
|
|
145
|
+
sm: "-ml-1.5",
|
|
146
|
+
md: "-ml-1.5",
|
|
166
147
|
}[size]
|
|
167
148
|
: {
|
|
168
|
-
sm: "-ml-1.5",
|
|
169
|
-
md: "-ml-1",
|
|
170
|
-
lg: "-ml-1.5", // Large default: moderate overlap
|
|
149
|
+
sm: "-ml-1.5",
|
|
150
|
+
md: "-ml-1",
|
|
171
151
|
}[size];
|
|
172
|
-
return (jsx(
|
|
152
|
+
return (jsx("span", { className: cn("inline-flex items-center justify-center shrink-0 overflow-hidden", (_a = theme.avatarSizes) === null || _a === void 0 ? void 0 : _a[size], avatarMargin, pill ? "rounded-full" : "rounded-md"), children: jsx(Avatar, { src: avatar.src, name: avatar.name, fallback: (_b = avatar.fallback) !== null && _b !== void 0 ? _b : jsx(UserIcon, { className: "size-2.5" }), initialsCount: avatar.initialsCount, size: "xs", className: cn("!size-full border-0", pill ? "rounded-full" : "rounded-md ring-0") }) }));
|
|
173
153
|
}
|
|
174
154
|
if (iconStart) {
|
|
175
|
-
return (jsx("span", { className: cn("flex-shrink-0", (
|
|
155
|
+
return (jsx("span", { className: cn("inline-flex items-center justify-center flex-shrink-0", (_c = theme.iconSizes) === null || _c === void 0 ? void 0 : _c[size]), "aria-hidden": "true", children: iconStart }));
|
|
176
156
|
}
|
|
177
157
|
if (withDot) {
|
|
178
158
|
if (shouldAnimate) {
|
|
179
|
-
return (jsx(motion.span, { className: cn("badge-dot rounded-full shrink-0 size-1.5", dotColorStyle), variants: dotVariants, "aria-hidden": "true" }));
|
|
159
|
+
return (jsx(motion.span, { className: cn("badge-dot rounded-full shrink-0 size-1.5 ring-2 ring-current/20", dotColorStyle), variants: dotVariants, "aria-hidden": "true" }));
|
|
180
160
|
}
|
|
181
161
|
return (jsx("span", { className: cn("badge-dot rounded-full shrink-0 size-1.5", dotColorStyle), "aria-hidden": "true" }));
|
|
182
162
|
}
|
|
183
163
|
return null;
|
|
184
164
|
};
|
|
185
165
|
if (!shouldAnimate) {
|
|
186
|
-
//
|
|
187
|
-
const
|
|
166
|
+
// Spread props directly — Badge only receives HTMLSpanElement attributes
|
|
167
|
+
const restHtmlProps = props;
|
|
188
168
|
// Non-animated render for Storybook or reduced-motion environments
|
|
189
|
-
return isVisible ? (jsxs("span", { ref: ref, className: baseStyles, onClick: handleClick,
|
|
169
|
+
return isVisible ? (jsxs("span", { ref: ref, className: baseStyles, onClick: handleClick, "aria-disabled": disabled || undefined, ...dataAttributes, ...restHtmlProps, children: [renderLeftContent(), jsx("span", { className: cn("badge-content", maxWidth && "truncate"), style: maxWidth
|
|
190
170
|
? {
|
|
191
171
|
maxWidth: typeof maxWidth === "number"
|
|
192
172
|
? `${maxWidth}px`
|
|
193
173
|
: maxWidth,
|
|
194
174
|
}
|
|
195
|
-
: undefined, children: children }), dismissible && (jsx("button", { type: "button", onClick: handleDismiss, className:
|
|
175
|
+
: undefined, children: children }), dismissible && (jsx("button", { type: "button", onClick: handleDismiss, className: "badge-dismiss-btn -ml-1 -mr-1 rounded-full p-0.5 cursor-pointer", "aria-label": "Dismiss", disabled: disabled, children: jsx(XMarkIcon, { className: cn("badge-dismiss-icon", (_p = theme.dismissSizes) === null || _p === void 0 ? void 0 : _p[size]), "aria-hidden": "true" }) }))] })) : null;
|
|
196
176
|
}
|
|
197
|
-
return (jsx(AnimatePresence, { mode: "wait", children: isVisible && (jsxs(motion.span, { ref: ref, className: baseStyles, onClick: handleClick,
|
|
177
|
+
return (jsx(AnimatePresence, { mode: "wait", children: isVisible && (jsxs(motion.span, { ref: ref, className: baseStyles, onClick: handleClick, "aria-disabled": disabled || undefined, variants: dismissible ? dismissVariants : badgeVariants, initial: "initial", animate: "animate", exit: "exit", ...dataAttributes, ...props, children: [renderLeftContent(), jsx("span", { className: cn("badge-content", maxWidth && "truncate"), style: maxWidth
|
|
198
178
|
? {
|
|
199
179
|
maxWidth: typeof maxWidth === "number"
|
|
200
180
|
? `${maxWidth}px`
|
|
201
181
|
: maxWidth,
|
|
202
182
|
}
|
|
203
|
-
: undefined, children: children }), dismissible && (jsx(motion.button, { type: "button", onClick: handleDismiss, className:
|
|
183
|
+
: undefined, children: children }), dismissible && (jsx(motion.button, { type: "button", onClick: handleDismiss, className: "badge-dismiss-btn -ml-1 -mr-1 rounded-full p-0.5 cursor-pointer", "aria-label": "Dismiss", disabled: disabled, variants: dismissButtonVariants, initial: "initial", whileHover: "hover", whileTap: "tap", children: jsx(XMarkIcon, { className: cn("badge-dismiss-icon", (_q = theme.dismissSizes) === null || _q === void 0 ? void 0 : _q[size]), "aria-hidden": "true", strokeWidth: 2 }) }))] })) }));
|
|
204
184
|
}));
|
|
205
185
|
Badge.displayName = "Badge";
|
|
206
186
|
|
|
@@ -4,34 +4,39 @@
|
|
|
4
4
|
*/
|
|
5
5
|
const badgeTheme = {
|
|
6
6
|
// Base styles applied to all badges
|
|
7
|
-
baseStyle: "inline-flex items-center
|
|
7
|
+
baseStyle: "inline-flex items-center align-middle select-none whitespace-nowrap transition-all duration-300 h-fit w-fit tracking-tight font-semibold border",
|
|
8
8
|
// Visual style variants (structure only, no colors)
|
|
9
|
+
// All variants get `border` via baseStyle for consistent box sizing
|
|
9
10
|
variants: {
|
|
10
|
-
filled: "",
|
|
11
|
-
outline: "bg-transparent
|
|
12
|
-
|
|
11
|
+
filled: "border-transparent",
|
|
12
|
+
outline: "bg-transparent",
|
|
13
|
+
soft: "",
|
|
13
14
|
},
|
|
14
15
|
// Color styles organized PER VARIANT
|
|
15
16
|
// This structure enables reliable dark: variants and className overrides
|
|
16
17
|
variantColors: {
|
|
17
|
-
// Filled variant - solid backgrounds
|
|
18
|
+
// Filled variant - solid backgrounds, no visible border
|
|
18
19
|
filled: {
|
|
19
|
-
neutral: "bg-[var(--color-neutral-900)] text-white
|
|
20
|
-
"dark:bg-[var(--color-neutral-700)]
|
|
21
|
-
primary: "bg-[var(--color-primary)] text-
|
|
22
|
-
"dark:bg-[var(--color-primary-600)]
|
|
23
|
-
|
|
24
|
-
"dark:bg-[var(--color-
|
|
25
|
-
|
|
26
|
-
"dark:bg-[var(--color-
|
|
27
|
-
|
|
28
|
-
"dark:bg-[var(--color-
|
|
20
|
+
neutral: "bg-[var(--color-neutral-900)] text-white " +
|
|
21
|
+
"dark:bg-[var(--color-neutral-700)]",
|
|
22
|
+
primary: "bg-[var(--color-primary)] text-[var(--color-primary-contrast)] " +
|
|
23
|
+
"dark:bg-[var(--color-primary-600)]",
|
|
24
|
+
secondary: "bg-[var(--color-secondary)] text-[var(--color-secondary-contrast)] " +
|
|
25
|
+
"dark:bg-[var(--color-secondary-600)]",
|
|
26
|
+
success: "bg-[var(--color-success-600)] text-[var(--color-success-contrast)] " +
|
|
27
|
+
"dark:bg-[var(--color-success-600)]",
|
|
28
|
+
warning: "bg-[var(--color-warning)] text-[var(--color-warning-contrast)] " +
|
|
29
|
+
"dark:bg-[var(--color-warning-600)]",
|
|
30
|
+
danger: "bg-[var(--color-danger)] text-[var(--color-danger-contrast)] " +
|
|
31
|
+
"dark:bg-[var(--color-danger-600)]",
|
|
29
32
|
},
|
|
30
33
|
// Outline variant - transparent bg with colored border
|
|
31
34
|
outline: {
|
|
32
35
|
neutral: "text-[var(--color-text-primary)] border-[var(--color-border)] " + "",
|
|
33
36
|
primary: "text-[var(--color-primary)] border-[var(--color-border)] " +
|
|
34
37
|
"dark:text-[var(--color-primary-400)]",
|
|
38
|
+
secondary: "text-[var(--color-secondary)] border-[var(--color-border)] " +
|
|
39
|
+
"dark:text-[var(--color-secondary-400)]",
|
|
35
40
|
success: "text-[var(--color-success)] border-[var(--color-border)] " +
|
|
36
41
|
"dark:text-[var(--color-success-400)]",
|
|
37
42
|
warning: "text-[var(--color-warning)] border-[var(--color-border)] " +
|
|
@@ -39,63 +44,55 @@ const badgeTheme = {
|
|
|
39
44
|
danger: "text-[var(--color-danger)] border-[var(--color-border)] " +
|
|
40
45
|
"dark:text-[var(--color-danger-400)]",
|
|
41
46
|
},
|
|
42
|
-
//
|
|
43
|
-
|
|
44
|
-
neutral: "bg-[var(--color-neutral-
|
|
45
|
-
"dark:bg-[var(--color-neutral-900)]
|
|
46
|
-
primary: "bg-[var(--color-primary-100)] text-[var(--color-primary-
|
|
47
|
-
"dark:bg-[var(--color-primary-
|
|
48
|
-
|
|
49
|
-
"dark:bg-[var(--color-
|
|
50
|
-
|
|
51
|
-
"dark:bg-[var(--color-
|
|
52
|
-
|
|
53
|
-
"dark:bg-[var(--color-
|
|
47
|
+
// Soft variant - subtle background tints (Preline-style: 800 text, 500/20 dark bg)
|
|
48
|
+
soft: {
|
|
49
|
+
neutral: "bg-[var(--color-neutral-100)] text-[var(--color-text-primary)] border-[var(--color-text-primary)]/10 " +
|
|
50
|
+
"dark:bg-[var(--color-neutral-900)]",
|
|
51
|
+
primary: "bg-[var(--color-primary-100)] text-[var(--color-primary-800)] border-[var(--color-primary-800)]/20 " +
|
|
52
|
+
"dark:bg-[var(--color-primary-500)]/20 dark:text-[var(--color-primary-300)]",
|
|
53
|
+
secondary: "bg-[var(--color-secondary-100)] text-[var(--color-secondary-800)] border-[var(--color-secondary-800)]/10 " +
|
|
54
|
+
"dark:bg-[var(--color-secondary-500)]/20 dark:text-[var(--color-secondary-400)]",
|
|
55
|
+
success: "bg-[var(--color-success-100)] text-[var(--color-success-800)] border-[var(--color-success-800)]/20 " +
|
|
56
|
+
"dark:bg-[var(--color-success-500)]/20 dark:text-[var(--color-success-400)]",
|
|
57
|
+
warning: "bg-[var(--color-warning-100)] text-[var(--color-warning-800)] border-[var(--color-warning-800)]/20 " +
|
|
58
|
+
"dark:bg-[var(--color-warning-500)]/20 dark:text-[var(--color-warning-400)]",
|
|
59
|
+
danger: "bg-[var(--color-danger-100)] text-[var(--color-danger-800)] border-[var(--color-danger-800)]/20 " +
|
|
60
|
+
"dark:bg-[var(--color-danger-500)]/20 dark:text-[var(--color-danger-400)]",
|
|
54
61
|
},
|
|
55
62
|
},
|
|
56
63
|
// Flat size structure (no nested objects)
|
|
57
64
|
sizes: {
|
|
58
|
-
sm: "text-
|
|
59
|
-
md: "text-
|
|
60
|
-
lg: "text-sm px-2.5 py-1 gap-1",
|
|
65
|
+
sm: "text-sm px-1.5 py-0.25 gap-1",
|
|
66
|
+
md: "text-base px-2 py-0.25 gap-1",
|
|
61
67
|
},
|
|
62
68
|
// Additional padding for pill shape
|
|
63
69
|
pillSizes: {
|
|
64
70
|
sm: "px-2",
|
|
65
71
|
md: "px-2.5",
|
|
66
|
-
lg: "px-3",
|
|
67
72
|
},
|
|
68
|
-
// Icon sizes
|
|
73
|
+
// Icon sizes — applies to wrapper span; [&>svg] selector ensures SVG scales to fit
|
|
69
74
|
iconSizes: {
|
|
70
|
-
sm: "size-3",
|
|
71
|
-
md: "size-
|
|
72
|
-
lg: "size-4",
|
|
75
|
+
sm: "size-3.5 [&>svg]:size-3.5",
|
|
76
|
+
md: "size-4 [&>svg]:size-4",
|
|
73
77
|
},
|
|
74
78
|
// Avatar sizes (base sizes without negative margin)
|
|
75
79
|
avatarSizes: {
|
|
76
80
|
sm: "size-4",
|
|
77
|
-
md: "size-
|
|
78
|
-
lg: "size-5",
|
|
81
|
+
md: "size-5",
|
|
79
82
|
},
|
|
80
|
-
// Dismiss button
|
|
81
|
-
|
|
82
|
-
sm: "size-3
|
|
83
|
+
// Dismiss icon sizes (button sizes itself from icon + padding)
|
|
84
|
+
dismissSizes: {
|
|
85
|
+
sm: "size-3",
|
|
83
86
|
md: "size-4",
|
|
84
|
-
lg: "size-4.5",
|
|
85
|
-
},
|
|
86
|
-
// Dismiss icon sizes (inside button)
|
|
87
|
-
dismissIconSizes: {
|
|
88
|
-
sm: "size-2.5",
|
|
89
|
-
md: "size-3",
|
|
90
|
-
lg: "size-3.5",
|
|
91
87
|
},
|
|
92
|
-
// Dot
|
|
88
|
+
// Dot inherits text color via currentColor — works across all variants/colors
|
|
93
89
|
dotColors: {
|
|
94
|
-
neutral: "bg-
|
|
95
|
-
primary: "bg-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
90
|
+
neutral: "bg-current",
|
|
91
|
+
primary: "bg-current",
|
|
92
|
+
secondary: "bg-current",
|
|
93
|
+
success: "bg-current",
|
|
94
|
+
warning: "bg-current",
|
|
95
|
+
danger: "bg-current",
|
|
99
96
|
},
|
|
100
97
|
// State styles
|
|
101
98
|
states: {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ReactNode, MouseEvent } from "react";
|
|
2
|
-
import {
|
|
3
|
-
export type BadgeVariant = "filled" | "outline" | "
|
|
4
|
-
export type BadgeColor =
|
|
5
|
-
export type BadgeSize = "sm" | "md"
|
|
1
|
+
import React, { ReactNode, MouseEvent } from "react";
|
|
2
|
+
import { SemanticColor } from "../../../utils/colorUtils";
|
|
3
|
+
export type BadgeVariant = "filled" | "outline" | "soft";
|
|
4
|
+
export type BadgeColor = SemanticColor;
|
|
5
|
+
export type BadgeSize = "sm" | "md";
|
|
6
6
|
/**
|
|
7
7
|
* Theme configuration for Badge component
|
|
8
8
|
*/
|
|
@@ -37,13 +37,9 @@ export interface BadgeTheme {
|
|
|
37
37
|
*/
|
|
38
38
|
avatarSizes: Record<BadgeSize, string>;
|
|
39
39
|
/**
|
|
40
|
-
* Dismiss button sizes
|
|
40
|
+
* Dismiss icon sizes (button sizes itself from icon + padding)
|
|
41
41
|
*/
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Dismiss icon sizes for each badge size
|
|
45
|
-
*/
|
|
46
|
-
dismissIconSizes: Record<BadgeSize, string>;
|
|
42
|
+
dismissSizes: Record<BadgeSize, string>;
|
|
47
43
|
/**
|
|
48
44
|
* Color styles for dot indicators
|
|
49
45
|
*/
|
|
@@ -67,15 +63,14 @@ export interface BadgeThemeOverrides {
|
|
|
67
63
|
pillSizes?: Partial<Record<BadgeSize, string>>;
|
|
68
64
|
iconSizes?: Partial<Record<BadgeSize, string>>;
|
|
69
65
|
avatarSizes?: Partial<Record<BadgeSize, string>>;
|
|
70
|
-
|
|
71
|
-
dismissIconSizes?: Partial<Record<BadgeSize, string>>;
|
|
66
|
+
dismissSizes?: Partial<Record<BadgeSize, string>>;
|
|
72
67
|
dotColors?: Partial<Record<BadgeColor, string>>;
|
|
73
68
|
states?: Partial<{
|
|
74
69
|
disabled: string;
|
|
75
70
|
hover: string;
|
|
76
71
|
}>;
|
|
77
72
|
}
|
|
78
|
-
export interface BadgeProps extends Omit<
|
|
73
|
+
export interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, "inputMode"> {
|
|
79
74
|
/**
|
|
80
75
|
* The content to be displayed inside the badge
|
|
81
76
|
*/
|
|
@@ -117,7 +112,7 @@ export interface BadgeProps extends Omit<HTMLMotionProps<"span">, "onSelect" | "
|
|
|
117
112
|
*/
|
|
118
113
|
avatar?: {
|
|
119
114
|
src?: string;
|
|
120
|
-
|
|
115
|
+
name: string;
|
|
121
116
|
fallback?: ReactNode;
|
|
122
117
|
initialsCount?: number;
|
|
123
118
|
};
|
|
@@ -131,20 +126,6 @@ export interface BadgeProps extends Omit<HTMLMotionProps<"span">, "onSelect" | "
|
|
|
131
126
|
* Required when dismissible is true
|
|
132
127
|
*/
|
|
133
128
|
onDismiss?: (event: MouseEvent<HTMLButtonElement>) => void;
|
|
134
|
-
/**
|
|
135
|
-
* Whether the badge is selectable/toggleable
|
|
136
|
-
* @default false
|
|
137
|
-
*/
|
|
138
|
-
selectable?: boolean;
|
|
139
|
-
/**
|
|
140
|
-
* Whether the badge is currently selected (controlled)
|
|
141
|
-
* @default false
|
|
142
|
-
*/
|
|
143
|
-
selected?: boolean;
|
|
144
|
-
/**
|
|
145
|
-
* Callback when badge selection changes (for selectable badges)
|
|
146
|
-
*/
|
|
147
|
-
onSelect?: (selected: boolean) => void;
|
|
148
129
|
/**
|
|
149
130
|
* Whether the badge is disabled
|
|
150
131
|
* @default false
|
|
@@ -42,8 +42,10 @@ const Breadcrumbs = ({ items, separator, maxItems = 4, variant = "default", clas
|
|
|
42
42
|
// Render individual breadcrumb item
|
|
43
43
|
const renderItem = (item, index, isLast) => {
|
|
44
44
|
const isCurrentPage = isLast || !item.href;
|
|
45
|
-
const itemContent = (jsxs(Fragment, { children: [showIcons && item.iconStart && (jsx("span", { className: "mr-1.5 flex-shrink-0", children: item.iconStart })), item.label
|
|
46
|
-
|
|
45
|
+
const itemContent = (jsxs(Fragment, { children: [showIcons && item.iconStart && (jsx("span", { className: "mr-1.5 flex-shrink-0", children: item.iconStart })), typeof item.label === 'string'
|
|
46
|
+
? jsx("span", { children: item.label })
|
|
47
|
+
: item.label] }));
|
|
48
|
+
return (jsx("span", { className: "flex items-center text-base", children: isCurrentPage ? (jsx("span", { className: cn("flex items-center", theme.current), "aria-current": "page", children: itemContent })) : (jsx("a", { href: item.href, className: cn("flex items-center", theme.link), "aria-label": typeof item.label === 'string' ? `Navigate to ${item.label}` : undefined, children: itemContent })) }, `breadcrumb-${index}`));
|
|
47
49
|
};
|
|
48
50
|
// Render separator
|
|
49
51
|
const renderSeparator = (index) => {
|
|
@@ -60,7 +62,9 @@ const Breadcrumbs = ({ items, separator, maxItems = 4, variant = "default", clas
|
|
|
60
62
|
window.location.href = selectedItem.href;
|
|
61
63
|
}
|
|
62
64
|
};
|
|
63
|
-
return (jsxs(Dropdown, { isOpen: isEllipsisOpen, onOpenChange: setIsEllipsisOpen, onAction: handleEllipsisAction, placement: "bottom-start", offset: 8, children: [jsx(Dropdown.Trigger, { children: jsx("button", { type: "button", className: cn(theme.ellipsis), "aria-label": `Navigate to one of ${hiddenItems.length} hidden breadcrumbs`, children: "..." }) }), jsx(Dropdown.Menu, { "aria-label": "Hidden breadcrumb items", children: hiddenItems.map((item, index) => (jsx(Dropdown.Item, { itemKey: `hidden-${index}`, startContent: showIcons && item.iconStart, children: item.label
|
|
65
|
+
return (jsxs(Dropdown, { isOpen: isEllipsisOpen, onOpenChange: setIsEllipsisOpen, onAction: handleEllipsisAction, placement: "bottom-start", offset: 8, children: [jsx(Dropdown.Trigger, { children: jsx("button", { type: "button", className: cn(theme.ellipsis), "aria-label": `Navigate to one of ${hiddenItems.length} hidden breadcrumbs`, children: "..." }) }), jsx(Dropdown.Menu, { "aria-label": "Hidden breadcrumb items", children: hiddenItems.map((item, index) => (jsx(Dropdown.Item, { itemKey: `hidden-${index}`, startContent: showIcons && item.iconStart, children: typeof item.label === 'string'
|
|
66
|
+
? jsx("span", { children: item.label })
|
|
67
|
+
: item.label }, `hidden-${index}`))) })] }, "ellipsis"));
|
|
64
68
|
};
|
|
65
69
|
// Build the breadcrumb elements
|
|
66
70
|
const breadcrumbElements = [];
|
|
@@ -4,7 +4,7 @@ import React from "react";
|
|
|
4
4
|
*/
|
|
5
5
|
export interface BreadcrumbItem {
|
|
6
6
|
/** The display text for the breadcrumb item */
|
|
7
|
-
label:
|
|
7
|
+
label: React.ReactNode;
|
|
8
8
|
/** Optional href for navigation. If not provided, item is treated as current page */
|
|
9
9
|
href?: string;
|
|
10
10
|
/** Optional icon to display at the start (before the label) */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ButtonProps } from "./Button.types";
|
|
3
|
-
declare const Button: React.ForwardRefExoticComponent<
|
|
3
|
+
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
4
4
|
export { Button };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import React__default, { useCallback } from 'react';
|
|
2
|
+
import React__default, { useCallback, useRef } from 'react';
|
|
3
3
|
import { useReducedMotion, motion } from 'motion/react';
|
|
4
4
|
import { buttonTheme } from './Button.theme.js';
|
|
5
5
|
import { cn } from '../../../utils/cn.js';
|
|
@@ -18,7 +18,7 @@ const BUTTON_TAP_ANIMATION = {
|
|
|
18
18
|
},
|
|
19
19
|
},
|
|
20
20
|
};
|
|
21
|
-
const Button = React__default.forwardRef(({ children, className = "", iconOnly = false, state = "default", size = "md", color, variant, block = false, onClick, enableRipple = true, rippleEffect = "default", rippleClassName, rippleScale = 10, showReflection = true, darkMode = false, ...
|
|
21
|
+
const Button = React__default.forwardRef(({ children, className = "", iconOnly = false, state = "default", size = "md", color, variant, block = false, onClick, enableRipple = true, rippleEffect = "default", rippleClassName, rippleScale = 10, showReflection = true, darkMode = false, disabled: disabledProp, "aria-label": ariaLabelProp, onAnimationStart: _onAnimationStart, onAnimationEnd: _onAnimationEnd, onDrag: _onDrag, onDragStart: _onDragStart, onDragEnd: _onDragEnd, ...restProps }, ref) => {
|
|
22
22
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
23
23
|
const shouldReduceMotion = useReducedMotion();
|
|
24
24
|
const shouldDisableAnimations = !!shouldReduceMotion;
|
|
@@ -33,18 +33,18 @@ const Button = React__default.forwardRef(({ children, className = "", iconOnly =
|
|
|
33
33
|
const resolvedVariant = variant || "filled";
|
|
34
34
|
// Derived state flags (direct computation - faster than useMemo)
|
|
35
35
|
const isLoading = state === "loading";
|
|
36
|
-
const isDisabled = state === "disabled" || state === "loading";
|
|
36
|
+
const isDisabled = state === "disabled" || state === "loading" || !!disabledProp;
|
|
37
37
|
const isError = state === "error";
|
|
38
38
|
// Dev-time a11y warning for iconOnly buttons without aria-label
|
|
39
39
|
if (process.env.NODE_ENV !== "production") {
|
|
40
|
-
if (iconOnly && !
|
|
40
|
+
if (iconOnly && !ariaLabelProp) {
|
|
41
41
|
// eslint-disable-next-line no-console
|
|
42
42
|
console.warn("Button(iconOnly) requires 'aria-label' for accessibility.");
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
// Safe onClick handler - respect both state="disabled" and disabled={true}
|
|
46
46
|
const handleClick = useCallback((event) => {
|
|
47
|
-
if (isDisabled
|
|
47
|
+
if (isDisabled)
|
|
48
48
|
return;
|
|
49
49
|
// Create ripple effect if enabled
|
|
50
50
|
if (enableRipple && !shouldReduceMotion) {
|
|
@@ -59,19 +59,12 @@ const Button = React__default.forwardRef(({ children, className = "", iconOnly =
|
|
|
59
59
|
console.error("Error in button click handler:", error);
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
|
-
}, [
|
|
63
|
-
onClick,
|
|
64
|
-
isDisabled,
|
|
65
|
-
props.disabled,
|
|
66
|
-
enableRipple,
|
|
67
|
-
shouldReduceMotion,
|
|
68
|
-
createRipple,
|
|
69
|
-
]);
|
|
62
|
+
}, [onClick, isDisabled, enableRipple, shouldReduceMotion, createRipple]);
|
|
70
63
|
// Compute theme classes (direct computation - faster than useMemo)
|
|
71
64
|
const sizeClasses = ((_b = (_a = buttonTheme.sizes) === null || _a === void 0 ? void 0 : _a[size]) === null || _b === void 0 ? void 0 : _b[iconOnly ? "iconOnly" : resolvedVariant === "link" ? "link" : "default"]) || "";
|
|
72
65
|
const colorClasses = ((_c = buttonTheme.variantColors[resolvedVariant]) === null || _c === void 0 ? void 0 : _c[resolvedColor]) || "";
|
|
73
66
|
const variantClasses = ((_d = buttonTheme.variantStyles) === null || _d === void 0 ? void 0 : _d[resolvedVariant]) || "";
|
|
74
|
-
const stateClasses =
|
|
67
|
+
const stateClasses = isDisabled
|
|
75
68
|
? ((_e = buttonTheme.states) === null || _e === void 0 ? void 0 : _e.disabled) || ""
|
|
76
69
|
: isError
|
|
77
70
|
? ((_f = buttonTheme.states) === null || _f === void 0 ? void 0 : _f.error) || ""
|
|
@@ -80,7 +73,7 @@ const Button = React__default.forwardRef(({ children, className = "", iconOnly =
|
|
|
80
73
|
: "";
|
|
81
74
|
const blockStyle = block ? buttonTheme.blockStyle : "";
|
|
82
75
|
// Generate default aria-label for icon-only buttons if not provided (fallback only)
|
|
83
|
-
const ariaLabel = iconOnly && !
|
|
76
|
+
const ariaLabel = iconOnly && !ariaLabelProp ? "Button" : ariaLabelProp;
|
|
84
77
|
// Determine animation props (user props will override due to spread order)
|
|
85
78
|
const animationProps = shouldDisableAnimations
|
|
86
79
|
? {}
|
|
@@ -92,26 +85,31 @@ const Button = React__default.forwardRef(({ children, className = "", iconOnly =
|
|
|
92
85
|
const spinnerClassName = resolvedVariant === "filled" && color !== "neutral"
|
|
93
86
|
? "border-t-white border-l-white"
|
|
94
87
|
: "";
|
|
95
|
-
//
|
|
96
|
-
const
|
|
88
|
+
// Track the latest forwarded ref to avoid mergedRef recreation on inline callback refs
|
|
89
|
+
const forwardedRef = useRef(ref);
|
|
90
|
+
forwardedRef.current = ref;
|
|
91
|
+
// Merge refs - stable callback that won't cause DOM detach/attach cycles
|
|
92
|
+
const mergedRef = useCallback((node) => {
|
|
97
93
|
// Set ripple's buttonRef
|
|
98
94
|
if (buttonRef) {
|
|
99
95
|
buttonRef.current = node;
|
|
100
96
|
}
|
|
101
97
|
// Set forwarded ref
|
|
102
|
-
|
|
103
|
-
|
|
98
|
+
const fRef = forwardedRef.current;
|
|
99
|
+
if (typeof fRef === "function") {
|
|
100
|
+
fRef(node);
|
|
104
101
|
}
|
|
105
|
-
else if (
|
|
106
|
-
|
|
102
|
+
else if (fRef) {
|
|
103
|
+
fRef.current =
|
|
107
104
|
node;
|
|
108
105
|
}
|
|
109
|
-
}, [
|
|
110
|
-
return (jsxs(motion.button, {
|
|
106
|
+
}, [buttonRef]);
|
|
107
|
+
return (jsxs(motion.button, { type: "button", ...restProps, ...animationProps, ref: mergedRef, className: cn(buttonTheme.baseStyle, colorClasses, variantClasses, sizeClasses, blockStyle, stateClasses, darkMode && "dark", className), disabled: isDisabled, "data-state": state, "data-color": resolvedColor, "data-variant": resolvedVariant, "data-size": size, "data-icon-only": iconOnly ? "true" : "false", "data-block": block ? "true" : "false", "aria-disabled": isDisabled || undefined, "aria-invalid": isError || undefined, "aria-label": ariaLabel, onClick: handleClick, children: [showReflection &&
|
|
111
108
|
resolvedVariant !== "link" &&
|
|
112
|
-
resolvedVariant !== "
|
|
109
|
+
resolvedVariant !== "ghost" &&
|
|
110
|
+
resolvedVariant !== "outline" && (jsx("div", { className: "absolute top-0.25 right-0.25 left-0.25 h-3 border-t-[0.5px] border-white/40 rounded-t-[calc(var(--button-radius)-1.25px)] opacity-60" })), isLoading && (jsx("div", { className: "absolute inset-0 flex items-center justify-center", children: jsx(Spinner, { size: "sm", color: color, className: spinnerClassName }) })), jsx("span", { className: cn("inline-flex items-center gap-2 whitespace-nowrap", isLoading && "opacity-0"), children: children }), enableRipple &&
|
|
113
111
|
ripples.map((ripple) => {
|
|
114
|
-
const animation = getRippleAnimation(effect, ripple
|
|
112
|
+
const animation = getRippleAnimation(effect, ripple, rippleScale);
|
|
115
113
|
return (jsx(motion.span, { initial: animation.initial, animate: animation.animate, transition: animation.transition, className: cn("absolute rounded-full size-5 pointer-events-none ", animation.className, rippleClassName ||
|
|
116
114
|
getRippleColorClass(resolvedVariant, resolvedColor)), style: {
|
|
117
115
|
top: ripple.y - 10,
|
|
@@ -12,6 +12,10 @@ export interface Ripple {
|
|
|
12
12
|
x: number;
|
|
13
13
|
y: number;
|
|
14
14
|
layer?: number;
|
|
15
|
+
/** Pre-computed random scale factor for particle effect (0-1 range) */
|
|
16
|
+
randomScale?: number;
|
|
17
|
+
/** Pre-computed random duration offset for particle effect (0-1 range) */
|
|
18
|
+
randomDuration?: number;
|
|
15
19
|
}
|
|
16
20
|
export interface RippleConfig {
|
|
17
21
|
/** Scale multiplier for ripple expansion (default: 10) */
|
|
@@ -53,7 +57,7 @@ export declare function getRippleColorClass(variant?: string, color?: string): s
|
|
|
53
57
|
/**
|
|
54
58
|
* Get animation properties for specific ripple effect and layer
|
|
55
59
|
*/
|
|
56
|
-
export declare function getRippleAnimation(effect: RippleEffectType,
|
|
60
|
+
export declare function getRippleAnimation(effect: RippleEffectType, ripple: Ripple, baseScale: number): {
|
|
57
61
|
initial: {
|
|
58
62
|
scale: number;
|
|
59
63
|
opacity: number;
|