@neut/ui 0.0.15 → 0.0.17
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/components/accordion/Accordion/Accordion.context.d.ts +1 -1
- package/dist/components/accordion/Accordion/Accordion.context.js.map +1 -1
- package/dist/components/accordion/Accordion/Accordion.d.ts +1 -1
- package/dist/components/accordion/Accordion/Accordion.js.map +1 -1
- package/dist/components/accordion/Accordion/Accordion.styles.js.map +1 -1
- package/dist/components/accordion/Accordion/useAccordion.js.map +1 -1
- package/dist/components/accordion/AccordionContent/AccordionContent.d.ts +1 -1
- package/dist/components/accordion/AccordionContent/AccordionContent.js.map +1 -1
- package/dist/components/accordion/AccordionContent/AccordionContent.styles.js.map +1 -1
- package/dist/components/accordion/AccordionItem/AccordionItem.context.js.map +1 -1
- package/dist/components/accordion/AccordionItem/AccordionItem.d.ts +1 -1
- package/dist/components/accordion/AccordionItem/AccordionItem.js.map +1 -1
- package/dist/components/accordion/AccordionItem/AccordionItem.styles.js.map +1 -1
- package/dist/components/accordion/AccordionTrigger/AccordionTrigger.d.ts +1 -1
- package/dist/components/accordion/AccordionTrigger/AccordionTrigger.js.map +1 -1
- package/dist/components/accordion/AccordionTrigger/AccordionTrigger.styles.js.map +1 -1
- package/dist/components/alert/Alert/Alert.d.ts +1 -1
- package/dist/components/alert/Alert/Alert.js.map +1 -1
- package/dist/components/alert/Alert/Alert.styles.js.map +1 -1
- package/dist/components/alert/AlertAction/AlertAction.d.ts +1 -1
- package/dist/components/alert/AlertAction/AlertAction.js.map +1 -1
- package/dist/components/alert/AlertAction/AlertAction.styles.js.map +1 -1
- package/dist/components/alert/AlertDescription/AlertDescription.d.ts +1 -1
- package/dist/components/alert/AlertDescription/AlertDescription.js.map +1 -1
- package/dist/components/alert/AlertDescription/AlertDescription.styles.js.map +1 -1
- package/dist/components/alert/AlertTitle/AlertTitle.d.ts +1 -1
- package/dist/components/alert/AlertTitle/AlertTitle.js.map +1 -1
- package/dist/components/alert/AlertTitle/AlertTitle.styles.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.d.ts +6 -1
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.js +4 -19
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.types.d.ts +6 -2
- package/dist/components/alert-dialog/AlertDialog/index.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.js +13 -4
- package/dist/components/alert-dialog/AlertDialogAction/AlertDialogAction.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.js +1 -1
- package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.js +19 -53
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.js +1 -1
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.styles.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.types.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogContent/index.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.js +1 -1
- package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.styles.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.styles.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.styles.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.styles.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.js +4 -22
- package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.js +4 -6
- package/dist/components/alert-dialog/AlertDialogPortal/AlertDialogPortal.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.d.ts +1 -1
- package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.js +1 -1
- package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.styles.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.d.ts +8 -2
- package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.js +27 -6
- package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogTrigger/AlertDialogTrigger.types.d.ts +4 -0
- package/dist/components/alert-dialog/AlertDialogTrigger/index.d.ts +1 -0
- package/dist/components/alert-dialog/index.js +13 -15
- package/dist/components/aspect-ratio/AspectRatio.d.ts +1 -1
- package/dist/components/aspect-ratio/AspectRatio.js.map +1 -1
- package/dist/components/aspect-ratio/AspectRatio.styles.js.map +1 -1
- package/dist/components/attachment/Attachment/Attachment.d.ts +6 -0
- package/dist/components/attachment/Attachment/Attachment.js +46 -0
- package/dist/components/attachment/Attachment/Attachment.js.map +1 -0
- package/dist/components/attachment/Attachment/Attachment.styles.d.ts +4 -0
- package/dist/components/attachment/Attachment/Attachment.styles.js +17 -0
- package/dist/components/attachment/Attachment/Attachment.styles.js.map +1 -0
- package/dist/components/attachment/Attachment/Attachment.types.d.ts +8 -0
- package/dist/components/attachment/Attachment/index.d.ts +2 -0
- package/dist/components/attachment/AttachmentAction/AttachmentAction.d.ts +3 -0
- package/dist/components/attachment/AttachmentAction/AttachmentAction.js +15 -0
- package/dist/components/attachment/AttachmentAction/AttachmentAction.js.map +1 -0
- package/dist/components/attachment/AttachmentAction/AttachmentAction.types.d.ts +2 -0
- package/dist/components/attachment/AttachmentAction/index.d.ts +2 -0
- package/dist/components/attachment/AttachmentActions/AttachmentActions.d.ts +3 -0
- package/dist/components/attachment/AttachmentActions/AttachmentActions.js +24 -0
- package/dist/components/attachment/AttachmentActions/AttachmentActions.js.map +1 -0
- package/dist/components/attachment/AttachmentActions/AttachmentActions.styles.d.ts +1 -0
- package/dist/components/attachment/AttachmentActions/AttachmentActions.styles.js +6 -0
- package/dist/components/attachment/AttachmentActions/AttachmentActions.styles.js.map +1 -0
- package/dist/components/attachment/AttachmentActions/AttachmentActions.types.d.ts +2 -0
- package/dist/components/attachment/AttachmentActions/index.d.ts +2 -0
- package/dist/components/attachment/AttachmentContent/AttachmentContent.d.ts +3 -0
- package/dist/components/attachment/AttachmentContent/AttachmentContent.js +23 -0
- package/dist/components/attachment/AttachmentContent/AttachmentContent.js.map +1 -0
- package/dist/components/attachment/AttachmentContent/AttachmentContent.types.d.ts +2 -0
- package/dist/components/attachment/AttachmentContent/index.d.ts +2 -0
- package/dist/components/attachment/AttachmentDescription/AttachmentDescription.d.ts +3 -0
- package/dist/components/attachment/AttachmentDescription/AttachmentDescription.js +24 -0
- package/dist/components/attachment/AttachmentDescription/AttachmentDescription.js.map +1 -0
- package/dist/components/attachment/AttachmentDescription/AttachmentDescription.styles.d.ts +1 -0
- package/dist/components/attachment/AttachmentDescription/AttachmentDescription.styles.js +6 -0
- package/dist/components/attachment/AttachmentDescription/AttachmentDescription.styles.js.map +1 -0
- package/dist/components/attachment/AttachmentDescription/AttachmentDescription.types.d.ts +2 -0
- package/dist/components/attachment/AttachmentDescription/index.d.ts +2 -0
- package/dist/components/attachment/AttachmentGroup/AttachmentGroup.d.ts +3 -0
- package/dist/components/attachment/AttachmentGroup/AttachmentGroup.js +24 -0
- package/dist/components/attachment/AttachmentGroup/AttachmentGroup.js.map +1 -0
- package/dist/components/attachment/AttachmentGroup/AttachmentGroup.styles.d.ts +1 -0
- package/dist/components/attachment/AttachmentGroup/AttachmentGroup.styles.js +6 -0
- package/dist/components/attachment/AttachmentGroup/AttachmentGroup.styles.js.map +1 -0
- package/dist/components/attachment/AttachmentGroup/AttachmentGroup.types.d.ts +2 -0
- package/dist/components/attachment/AttachmentGroup/index.d.ts +2 -0
- package/dist/components/attachment/AttachmentMedia/AttachmentMedia.d.ts +3 -0
- package/dist/components/attachment/AttachmentMedia/AttachmentMedia.js +31 -0
- package/dist/components/attachment/AttachmentMedia/AttachmentMedia.js.map +1 -0
- package/dist/components/attachment/AttachmentMedia/AttachmentMedia.styles.d.ts +3 -0
- package/dist/components/attachment/AttachmentMedia/AttachmentMedia.styles.js +13 -0
- package/dist/components/attachment/AttachmentMedia/AttachmentMedia.styles.js.map +1 -0
- package/dist/components/attachment/AttachmentMedia/AttachmentMedia.types.d.ts +4 -0
- package/dist/components/attachment/AttachmentMedia/index.d.ts +2 -0
- package/dist/components/attachment/AttachmentTitle/AttachmentTitle.d.ts +3 -0
- package/dist/components/attachment/AttachmentTitle/AttachmentTitle.js +24 -0
- package/dist/components/attachment/AttachmentTitle/AttachmentTitle.js.map +1 -0
- package/dist/components/attachment/AttachmentTitle/AttachmentTitle.styles.d.ts +1 -0
- package/dist/components/attachment/AttachmentTitle/AttachmentTitle.styles.js +6 -0
- package/dist/components/attachment/AttachmentTitle/AttachmentTitle.styles.js.map +1 -0
- package/dist/components/attachment/AttachmentTitle/AttachmentTitle.types.d.ts +2 -0
- package/dist/components/attachment/AttachmentTitle/index.d.ts +2 -0
- package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.d.ts +7 -0
- package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.js +18 -0
- package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.js.map +1 -0
- package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.types.d.ts +5 -0
- package/dist/components/attachment/AttachmentTrigger/index.d.ts +2 -0
- package/dist/components/attachment/index.d.ts +18 -0
- package/dist/components/attachment/index.js +10 -0
- package/dist/components/avatar/Avatar/Avatar.context.js.map +1 -1
- package/dist/components/avatar/Avatar/Avatar.d.ts +1 -1
- package/dist/components/avatar/Avatar/Avatar.js.map +1 -1
- package/dist/components/avatar/AvatarBadge/AvatarBadge.d.ts +1 -1
- package/dist/components/avatar/AvatarBadge/AvatarBadge.js.map +1 -1
- package/dist/components/avatar/AvatarFallback/AvatarFallback.d.ts +1 -1
- package/dist/components/avatar/AvatarFallback/AvatarFallback.js.map +1 -1
- package/dist/components/avatar/AvatarGroup/AvatarGroup.d.ts +1 -1
- package/dist/components/avatar/AvatarGroup/AvatarGroup.js.map +1 -1
- package/dist/components/avatar/AvatarGroupCount/AvatarGroupCount.d.ts +1 -1
- package/dist/components/avatar/AvatarGroupCount/AvatarGroupCount.js.map +1 -1
- package/dist/components/avatar/AvatarImage/AvatarImage.d.ts +1 -1
- package/dist/components/avatar/AvatarImage/AvatarImage.js.map +1 -1
- package/dist/components/badge/Badge.d.ts +1 -1
- package/dist/components/badge/Badge.js.map +1 -1
- package/dist/components/badge/Badge.styles.js.map +1 -1
- package/dist/components/breadcrumb/Breadcrumb/Breadcrumb.d.ts +1 -1
- package/dist/components/breadcrumb/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.d.ts +1 -1
- package/dist/components/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.styles.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbItem/BreadcrumbItem.d.ts +1 -1
- package/dist/components/breadcrumb/BreadcrumbItem/BreadcrumbItem.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbItem/BreadcrumbItem.styles.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbLink/BreadcrumbLink.d.ts +1 -1
- package/dist/components/breadcrumb/BreadcrumbLink/BreadcrumbLink.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbLink/BreadcrumbLink.styles.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbList/BreadcrumbList.d.ts +1 -1
- package/dist/components/breadcrumb/BreadcrumbList/BreadcrumbList.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbList/BreadcrumbList.styles.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbPage/BreadcrumbPage.d.ts +1 -1
- package/dist/components/breadcrumb/BreadcrumbPage/BreadcrumbPage.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbPage/BreadcrumbPage.styles.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.d.ts +1 -1
- package/dist/components/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.styles.js.map +1 -1
- package/dist/components/bubble/Bubble/Bubble.d.ts +3 -0
- package/dist/components/bubble/Bubble/Bubble.js +39 -0
- package/dist/components/bubble/Bubble/Bubble.js.map +1 -0
- package/dist/components/bubble/Bubble/Bubble.styles.d.ts +7 -0
- package/dist/components/bubble/Bubble/Bubble.styles.js +18 -0
- package/dist/components/bubble/Bubble/Bubble.styles.js.map +1 -0
- package/dist/components/bubble/Bubble/Bubble.types.d.ts +8 -0
- package/dist/components/bubble/Bubble/index.d.ts +2 -0
- package/dist/components/bubble/BubbleContent/BubbleContent.d.ts +7 -0
- package/dist/components/bubble/BubbleContent/BubbleContent.js +17 -0
- package/dist/components/bubble/BubbleContent/BubbleContent.js.map +1 -0
- package/dist/components/bubble/BubbleContent/BubbleContent.styles.d.ts +1 -0
- package/dist/components/bubble/BubbleContent/BubbleContent.styles.js +6 -0
- package/dist/components/bubble/BubbleContent/BubbleContent.styles.js.map +1 -0
- package/dist/components/bubble/BubbleContent/BubbleContent.types.d.ts +3 -0
- package/dist/components/bubble/BubbleContent/index.d.ts +2 -0
- package/dist/components/bubble/BubbleGroup/BubbleGroup.d.ts +3 -0
- package/dist/components/bubble/BubbleGroup/BubbleGroup.js +24 -0
- package/dist/components/bubble/BubbleGroup/BubbleGroup.js.map +1 -0
- package/dist/components/bubble/BubbleGroup/BubbleGroup.types.d.ts +2 -0
- package/dist/components/bubble/BubbleGroup/index.d.ts +2 -0
- package/dist/components/bubble/BubbleReactions/BubbleReactions.d.ts +6 -0
- package/dist/components/bubble/BubbleReactions/BubbleReactions.js +42 -0
- package/dist/components/bubble/BubbleReactions/BubbleReactions.js.map +1 -0
- package/dist/components/bubble/BubbleReactions/BubbleReactions.styles.d.ts +4 -0
- package/dist/components/bubble/BubbleReactions/BubbleReactions.styles.js +22 -0
- package/dist/components/bubble/BubbleReactions/BubbleReactions.styles.js.map +1 -0
- package/dist/components/bubble/BubbleReactions/BubbleReactions.types.d.ts +4 -0
- package/dist/components/bubble/BubbleReactions/index.d.ts +2 -0
- package/dist/components/bubble/index.d.ts +8 -0
- package/dist/components/bubble/index.js +5 -0
- package/dist/components/button/Button.d.ts +1 -1
- package/dist/components/button/Button.js +1 -1
- package/dist/components/button/Button.js.map +1 -1
- package/dist/components/button/Button.styles.js.map +1 -1
- package/dist/components/button-group/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/dist/components/button-group/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/button-group/ButtonGroup/ButtonGroup.styles.js.map +1 -1
- package/dist/components/button-group/ButtonGroupSeparator/ButtonGroupSeparator.d.ts +1 -1
- package/dist/components/button-group/ButtonGroupSeparator/ButtonGroupSeparator.js.map +1 -1
- package/dist/components/button-group/ButtonGroupSeparator/ButtonGroupSeparator.styles.js.map +1 -1
- package/dist/components/button-group/ButtonGroupText/ButtonGroupText.d.ts +1 -1
- package/dist/components/button-group/ButtonGroupText/ButtonGroupText.js.map +1 -1
- package/dist/components/button-group/ButtonGroupText/ButtonGroupText.styles.js.map +1 -1
- package/dist/components/calendar/Calendar/Calendar.js.map +1 -1
- package/dist/components/calendar/Calendar/Calendar.utils.js.map +1 -1
- package/dist/components/card/Card/Card.d.ts +1 -1
- package/dist/components/card/Card/Card.js.map +1 -1
- package/dist/components/card/Card/Card.styles.js.map +1 -1
- package/dist/components/card/CardAction/CardAction.d.ts +1 -1
- package/dist/components/card/CardAction/CardAction.js.map +1 -1
- package/dist/components/card/CardAction/CardAction.styles.js.map +1 -1
- package/dist/components/card/CardContent/CardContent.d.ts +1 -1
- package/dist/components/card/CardContent/CardContent.js.map +1 -1
- package/dist/components/card/CardContent/CardContent.styles.js.map +1 -1
- package/dist/components/card/CardDescription/CardDescription.d.ts +1 -1
- package/dist/components/card/CardDescription/CardDescription.js.map +1 -1
- package/dist/components/card/CardDescription/CardDescription.styles.js.map +1 -1
- package/dist/components/card/CardFooter/CardFooter.d.ts +1 -1
- package/dist/components/card/CardFooter/CardFooter.js.map +1 -1
- package/dist/components/card/CardFooter/CardFooter.styles.js.map +1 -1
- package/dist/components/card/CardHeader/CardHeader.d.ts +1 -1
- package/dist/components/card/CardHeader/CardHeader.js.map +1 -1
- package/dist/components/card/CardHeader/CardHeader.styles.js.map +1 -1
- package/dist/components/card/CardTitle/CardTitle.d.ts +1 -1
- package/dist/components/card/CardTitle/CardTitle.js.map +1 -1
- package/dist/components/card/CardTitle/CardTitle.styles.js.map +1 -1
- package/dist/components/carousel/Carousel/Carousel.context.js.map +1 -1
- package/dist/components/carousel/Carousel/Carousel.d.ts +1 -1
- package/dist/components/carousel/Carousel/Carousel.js.map +1 -1
- package/dist/components/carousel/Carousel/Carousel.styles.js.map +1 -1
- package/dist/components/carousel/Carousel/useAutoPlay.js.map +1 -1
- package/dist/components/carousel/Carousel/useCarousel.js.map +1 -1
- package/dist/components/carousel/Carousel/useKeyboardNavigation.js.map +1 -1
- package/dist/components/carousel/CarouselContent/CarouselContent.d.ts +1 -1
- package/dist/components/carousel/CarouselContent/CarouselContent.js.map +1 -1
- package/dist/components/carousel/CarouselContent/useItemSizeMeasure.js.map +1 -1
- package/dist/components/carousel/CarouselDots/CarouselDots.d.ts +1 -1
- package/dist/components/carousel/CarouselDots/CarouselDots.js.map +1 -1
- package/dist/components/carousel/CarouselItem/CarouselItem.d.ts +1 -1
- package/dist/components/carousel/CarouselItem/CarouselItem.js.map +1 -1
- package/dist/components/carousel/CarouselNext/CarouselNext.d.ts +1 -1
- package/dist/components/carousel/CarouselNext/CarouselNext.js.map +1 -1
- package/dist/components/carousel/CarouselPrevious/CarouselPrevious.d.ts +1 -1
- package/dist/components/carousel/CarouselPrevious/CarouselPrevious.js.map +1 -1
- package/dist/components/checkbox/Checkbox/Checkbox.d.ts +1 -1
- package/dist/components/checkbox/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/checkbox/Checkbox/Checkbox.styles.js.map +1 -1
- package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.d.ts +1 -1
- package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.js.map +1 -1
- package/dist/components/checkbox/CheckboxIndicator/CheckboxIndicator.styles.js.map +1 -1
- package/dist/components/collapsible/Collapsible/Collapsible.context.js.map +1 -1
- package/dist/components/collapsible/Collapsible/Collapsible.d.ts +1 -1
- package/dist/components/collapsible/Collapsible/Collapsible.js.map +1 -1
- package/dist/components/collapsible/CollapsibleContent/CollapsibleContent.d.ts +1 -1
- package/dist/components/collapsible/CollapsibleContent/CollapsibleContent.js.map +1 -1
- package/dist/components/collapsible/CollapsibleTrigger/CollapsibleTrigger.d.ts +1 -1
- package/dist/components/collapsible/CollapsibleTrigger/CollapsibleTrigger.js.map +1 -1
- package/dist/components/combobox/Combobox/Combobox.context.js.map +1 -1
- package/dist/components/combobox/Combobox/Combobox.js +50 -47
- package/dist/components/combobox/Combobox/Combobox.js.map +1 -1
- package/dist/components/combobox/Combobox/Combobox.types.d.ts +5 -0
- package/dist/components/combobox/ComboboxChip/ComboboxChip.js.map +1 -1
- package/dist/components/combobox/ComboboxChips/ComboboxChips.js.map +1 -1
- package/dist/components/combobox/ComboboxChipsInput/ComboboxChipsInput.d.ts +1 -1
- package/dist/components/combobox/ComboboxChipsInput/ComboboxChipsInput.js.map +1 -1
- package/dist/components/combobox/ComboboxClear/ComboboxClear.d.ts +1 -1
- package/dist/components/combobox/ComboboxClear/ComboboxClear.js.map +1 -1
- package/dist/components/combobox/ComboboxCollection/ComboboxCollection.js.map +1 -1
- package/dist/components/combobox/ComboboxContent/ComboboxContent.d.ts +1 -1
- package/dist/components/combobox/ComboboxContent/ComboboxContent.js.map +1 -1
- package/dist/components/combobox/ComboboxContent/ComboboxContent.utils.js.map +1 -1
- package/dist/components/combobox/ComboboxContent/useComboboxContent.js.map +1 -1
- package/dist/components/combobox/ComboboxEmpty/ComboboxEmpty.js.map +1 -1
- package/dist/components/combobox/ComboboxGroup/ComboboxGroup.js.map +1 -1
- package/dist/components/combobox/ComboboxInput/ComboboxInput.js.map +1 -1
- package/dist/components/combobox/ComboboxItem/ComboboxItem.js.map +1 -1
- package/dist/components/combobox/ComboboxLabel/ComboboxLabel.js.map +1 -1
- package/dist/components/combobox/ComboboxList/ComboboxList.js +13 -12
- package/dist/components/combobox/ComboboxList/ComboboxList.js.map +1 -1
- package/dist/components/combobox/ComboboxSeparator/ComboboxSeparator.d.ts +1 -1
- package/dist/components/combobox/ComboboxSeparator/ComboboxSeparator.js.map +1 -1
- package/dist/components/combobox/ComboboxTrigger/ComboboxTrigger.js.map +1 -1
- package/dist/components/combobox/ComboboxValue/ComboboxValue.js.map +1 -1
- package/dist/components/combobox/useComboboxAnchor/useComboboxAnchor.js.map +1 -1
- package/dist/components/context-menu/ContextMenu/ContextMenu.context.d.ts +3 -0
- package/dist/components/context-menu/ContextMenu/ContextMenu.context.js +12 -0
- package/dist/components/context-menu/ContextMenu/ContextMenu.context.js.map +1 -0
- package/dist/components/context-menu/ContextMenu/ContextMenu.d.ts +23 -0
- package/dist/components/context-menu/ContextMenu/ContextMenu.js +73 -0
- package/dist/components/context-menu/ContextMenu/ContextMenu.js.map +1 -0
- package/dist/components/context-menu/ContextMenu/ContextMenu.types.d.ts +28 -0
- package/dist/components/context-menu/ContextMenu/index.d.ts +3 -0
- package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.js +78 -0
- package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.js.map +1 -0
- package/dist/components/context-menu/ContextMenuCheckboxItem/ContextMenuCheckboxItem.types.d.ts +20 -0
- package/dist/components/context-menu/ContextMenuCheckboxItem/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.d.ts +9 -0
- package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.js +64 -0
- package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.js.map +1 -0
- package/dist/components/context-menu/ContextMenuContent/ContextMenuContent.types.d.ts +26 -0
- package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.d.ts +31 -0
- package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.js +102 -0
- package/dist/components/context-menu/ContextMenuContent/ContextMenuPopupSurface.js.map +1 -0
- package/dist/components/context-menu/ContextMenuContent/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.d.ts +52 -0
- package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.js +153 -0
- package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.js.map +1 -0
- package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.js +29 -0
- package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.js.map +1 -0
- package/dist/components/context-menu/ContextMenuGroup/ContextMenuGroup.types.d.ts +9 -0
- package/dist/components/context-menu/ContextMenuGroup/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.js +59 -0
- package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.js.map +1 -0
- package/dist/components/context-menu/ContextMenuItem/ContextMenuItem.types.d.ts +22 -0
- package/dist/components/context-menu/ContextMenuItem/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.js +31 -0
- package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.js.map +1 -0
- package/dist/components/context-menu/ContextMenuLabel/ContextMenuLabel.types.d.ts +8 -0
- package/dist/components/context-menu/ContextMenuLabel/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.d.ts +16 -0
- package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.js +18 -0
- package/dist/components/context-menu/ContextMenuPortal/ContextMenuPortal.js.map +1 -0
- package/dist/components/context-menu/ContextMenuPortal/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.d.ts +12 -0
- package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.js +48 -0
- package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.js.map +1 -0
- package/dist/components/context-menu/ContextMenuRadioGroup/ContextMenuRadioGroup.types.d.ts +14 -0
- package/dist/components/context-menu/ContextMenuRadioGroup/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.js +74 -0
- package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.js.map +1 -0
- package/dist/components/context-menu/ContextMenuRadioItem/ContextMenuRadioItem.types.d.ts +16 -0
- package/dist/components/context-menu/ContextMenuRadioItem/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.d.ts +9 -0
- package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.js +25 -0
- package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.js.map +1 -0
- package/dist/components/context-menu/ContextMenuSeparator/ContextMenuSeparator.types.d.ts +8 -0
- package/dist/components/context-menu/ContextMenuSeparator/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.js +19 -0
- package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.js.map +1 -0
- package/dist/components/context-menu/ContextMenuShortcut/ContextMenuShortcut.types.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuShortcut/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.d.ts +7 -0
- package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.js +55 -0
- package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.js.map +1 -0
- package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.types.d.ts +18 -0
- package/dist/components/context-menu/ContextMenuSub/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.js +83 -0
- package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.js.map +1 -0
- package/dist/components/context-menu/ContextMenuSubContent/ContextMenuSubContent.types.d.ts +17 -0
- package/dist/components/context-menu/ContextMenuSubContent/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.d.ts +6 -0
- package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.js +96 -0
- package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.js.map +1 -0
- package/dist/components/context-menu/ContextMenuSubTrigger/ContextMenuSubTrigger.types.d.ts +21 -0
- package/dist/components/context-menu/ContextMenuSubTrigger/index.d.ts +2 -0
- package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.d.ts +13 -0
- package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.js +34 -0
- package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.js.map +1 -0
- package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.types.d.ts +15 -0
- package/dist/components/context-menu/ContextMenuTrigger/index.d.ts +4 -0
- package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.d.ts +23 -0
- package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.js +47 -0
- package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.js.map +1 -0
- package/dist/components/context-menu/context-menu.context.d.ts +14 -0
- package/dist/components/context-menu/context-menu.context.js +25 -0
- package/dist/components/context-menu/context-menu.context.js.map +1 -0
- package/dist/components/context-menu/context-menu.entry.d.ts +28 -0
- package/dist/components/context-menu/context-menu.entry.js +31 -0
- package/dist/components/context-menu/context-menu.entry.js.map +1 -0
- package/dist/components/context-menu/context-menu.styles.d.ts +18 -0
- package/dist/components/context-menu/context-menu.styles.js +6 -0
- package/dist/components/context-menu/context-menu.styles.js.map +1 -0
- package/dist/components/context-menu/context-menu.types.d.ts +151 -0
- package/dist/components/context-menu/context-menu.utils.d.ts +28 -0
- package/dist/components/context-menu/context-menu.utils.js +51 -0
- package/dist/components/context-menu/context-menu.utils.js.map +1 -0
- package/dist/components/context-menu/index.d.ts +31 -0
- package/dist/components/context-menu/index.js +16 -0
- package/dist/components/data-table/createRowModel.d.ts +20 -0
- package/dist/components/data-table/createRowModel.js +46 -0
- package/dist/components/data-table/createRowModel.js.map +1 -0
- package/dist/components/data-table/createTable.d.ts +16 -0
- package/dist/components/data-table/createTable.js +94 -0
- package/dist/components/data-table/createTable.js.map +1 -0
- package/dist/components/data-table/createTableColumns.d.ts +19 -0
- package/dist/components/data-table/createTableColumns.js +68 -0
- package/dist/components/data-table/createTableColumns.js.map +1 -0
- package/dist/components/data-table/createTableHeaders.d.ts +10 -0
- package/dist/components/data-table/createTableHeaders.js +26 -0
- package/dist/components/data-table/createTableHeaders.js.map +1 -0
- package/dist/components/data-table/createTableRows.d.ts +16 -0
- package/dist/components/data-table/createTableRows.js +57 -0
- package/dist/components/data-table/createTableRows.js.map +1 -0
- package/dist/components/data-table/createTableSelection.d.ts +12 -0
- package/dist/components/data-table/createTableSelection.js +23 -0
- package/dist/components/data-table/createTableSelection.js.map +1 -0
- package/dist/components/data-table/createTableState.d.ts +16 -0
- package/dist/components/data-table/createTableState.js +34 -0
- package/dist/components/data-table/createTableState.js.map +1 -0
- package/dist/components/data-table/data-table.types.d.ts +123 -0
- package/dist/components/data-table/data-table.utils.d.ts +4 -0
- package/dist/components/data-table/data-table.utils.js +11 -0
- package/dist/components/data-table/data-table.utils.js.map +1 -0
- package/dist/components/data-table/index.d.ts +2 -0
- package/dist/components/data-table/index.js +2 -0
- package/dist/components/date-picker/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/dialog/Dialog/Dialog.context.js.map +1 -1
- package/dist/components/dialog/Dialog/Dialog.d.ts +1 -1
- package/dist/components/dialog/Dialog/Dialog.js +18 -16
- package/dist/components/dialog/Dialog/Dialog.js.map +1 -1
- package/dist/components/dialog/Dialog/Dialog.types.d.ts +5 -0
- package/dist/components/dialog/DialogClose/DialogClose.d.ts +1 -1
- package/dist/components/dialog/DialogClose/DialogClose.js +5 -5
- package/dist/components/dialog/DialogClose/DialogClose.js.map +1 -1
- package/dist/components/dialog/DialogClose/DialogClose.styles.js.map +1 -1
- package/dist/components/dialog/DialogContent/DialogContent.context.js.map +1 -1
- package/dist/components/dialog/DialogContent/DialogContent.d.ts +1 -1
- package/dist/components/dialog/DialogContent/DialogContent.js +23 -55
- package/dist/components/dialog/DialogContent/DialogContent.js.map +1 -1
- package/dist/components/dialog/DialogContent/DialogContent.styles.js.map +1 -1
- package/dist/components/dialog/DialogDescription/DialogDescription.d.ts +1 -1
- package/dist/components/dialog/DialogDescription/DialogDescription.js.map +1 -1
- package/dist/components/dialog/DialogDescription/DialogDescription.styles.js.map +1 -1
- package/dist/components/dialog/DialogFooter/DialogFooter.d.ts +1 -1
- package/dist/components/dialog/DialogFooter/DialogFooter.js.map +1 -1
- package/dist/components/dialog/DialogFooter/DialogFooter.styles.js.map +1 -1
- package/dist/components/dialog/DialogHeader/DialogHeader.d.ts +1 -1
- package/dist/components/dialog/DialogHeader/DialogHeader.js.map +1 -1
- package/dist/components/dialog/DialogHeader/DialogHeader.styles.js.map +1 -1
- package/dist/components/dialog/DialogOverlay/DialogOverlay.d.ts +1 -1
- package/dist/components/dialog/DialogOverlay/DialogOverlay.js +18 -10
- package/dist/components/dialog/DialogOverlay/DialogOverlay.js.map +1 -1
- package/dist/components/dialog/DialogOverlay/DialogOverlay.styles.js.map +1 -1
- package/dist/components/dialog/DialogOverlay/DialogOverlay.types.d.ts +4 -1
- package/dist/components/dialog/DialogPortal/DialogPortal.d.ts +1 -1
- package/dist/components/dialog/DialogPortal/DialogPortal.js.map +1 -1
- package/dist/components/dialog/DialogSurface/DialogSurface.d.ts +2 -0
- package/dist/components/dialog/DialogSurface/DialogSurface.js +77 -0
- package/dist/components/dialog/DialogSurface/DialogSurface.js.map +1 -0
- package/dist/components/dialog/DialogSurface/DialogSurface.types.d.ts +15 -0
- package/dist/components/dialog/DialogSurface/index.d.ts +2 -0
- package/dist/components/dialog/DialogTitle/DialogTitle.d.ts +1 -1
- package/dist/components/dialog/DialogTitle/DialogTitle.js.map +1 -1
- package/dist/components/dialog/DialogTitle/DialogTitle.styles.js.map +1 -1
- package/dist/components/dialog/DialogTrigger/DialogTrigger.d.ts +1 -1
- package/dist/components/dialog/DialogTrigger/DialogTrigger.js.map +1 -1
- package/dist/components/dialog/DialogTrigger/useDialogTrigger.js.map +1 -1
- package/dist/components/dialog/index.d.ts +1 -0
- package/dist/components/dialog/index.js +9 -8
- package/dist/components/drawer/Drawer/Drawer.context.d.ts +3 -0
- package/dist/components/drawer/Drawer/Drawer.context.js +12 -0
- package/dist/components/drawer/Drawer/Drawer.context.js.map +1 -0
- package/dist/components/drawer/Drawer/Drawer.d.ts +7 -0
- package/dist/components/drawer/Drawer/Drawer.js +63 -0
- package/dist/components/drawer/Drawer/Drawer.js.map +1 -0
- package/dist/components/drawer/Drawer/Drawer.types.d.ts +50 -0
- package/dist/components/drawer/Drawer/create-change-event-details.d.ts +3 -0
- package/dist/components/drawer/Drawer/create-change-event-details.js +25 -0
- package/dist/components/drawer/Drawer/create-change-event-details.js.map +1 -0
- package/dist/components/drawer/Drawer/index.d.ts +3 -0
- package/dist/components/drawer/DrawerClose/DrawerClose.d.ts +5 -0
- package/dist/components/drawer/DrawerClose/DrawerClose.js +26 -0
- package/dist/components/drawer/DrawerClose/DrawerClose.js.map +1 -0
- package/dist/components/drawer/DrawerClose/index.d.ts +1 -0
- package/dist/components/drawer/DrawerContent/DrawerContent.d.ts +6 -0
- package/dist/components/drawer/DrawerContent/DrawerContent.js +103 -0
- package/dist/components/drawer/DrawerContent/DrawerContent.js.map +1 -0
- package/dist/components/drawer/DrawerContent/DrawerContent.styles.d.ts +10 -0
- package/dist/components/drawer/DrawerContent/DrawerContent.styles.js +25 -0
- package/dist/components/drawer/DrawerContent/DrawerContent.styles.js.map +1 -0
- package/dist/components/drawer/DrawerContent/DrawerContent.types.d.ts +2 -0
- package/dist/components/drawer/DrawerContent/index.d.ts +2 -0
- package/dist/components/drawer/DrawerContent/useDrawerSwipe.d.ts +11 -0
- package/dist/components/drawer/DrawerContent/useDrawerSwipe.js +56 -0
- package/dist/components/drawer/DrawerContent/useDrawerSwipe.js.map +1 -0
- package/dist/components/drawer/DrawerDescription/DrawerDescription.d.ts +2 -0
- package/dist/components/drawer/DrawerDescription/DrawerDescription.js +28 -0
- package/dist/components/drawer/DrawerDescription/DrawerDescription.js.map +1 -0
- package/dist/components/drawer/DrawerDescription/DrawerDescription.types.d.ts +2 -0
- package/dist/components/drawer/DrawerDescription/index.d.ts +2 -0
- package/dist/components/drawer/DrawerFooter/DrawerFooter.d.ts +2 -0
- package/dist/components/drawer/DrawerFooter/DrawerFooter.js +24 -0
- package/dist/components/drawer/DrawerFooter/DrawerFooter.js.map +1 -0
- package/dist/components/drawer/DrawerFooter/DrawerFooter.types.d.ts +2 -0
- package/dist/components/drawer/DrawerFooter/index.d.ts +2 -0
- package/dist/components/drawer/DrawerHeader/DrawerHeader.d.ts +2 -0
- package/dist/components/drawer/DrawerHeader/DrawerHeader.js +24 -0
- package/dist/components/drawer/DrawerHeader/DrawerHeader.js.map +1 -0
- package/dist/components/drawer/DrawerHeader/DrawerHeader.types.d.ts +2 -0
- package/dist/components/drawer/DrawerHeader/index.d.ts +2 -0
- package/dist/components/drawer/DrawerOverlay/DrawerOverlay.d.ts +3 -0
- package/dist/components/drawer/DrawerOverlay/DrawerOverlay.js +43 -0
- package/dist/components/drawer/DrawerOverlay/DrawerOverlay.js.map +1 -0
- package/dist/components/drawer/DrawerOverlay/DrawerOverlay.types.d.ts +2 -0
- package/dist/components/drawer/DrawerOverlay/index.d.ts +2 -0
- package/dist/components/drawer/DrawerPortal/DrawerPortal.d.ts +2 -0
- package/dist/components/drawer/DrawerPortal/DrawerPortal.js +10 -0
- package/dist/components/drawer/DrawerPortal/DrawerPortal.js.map +1 -0
- package/dist/components/drawer/DrawerPortal/DrawerPortal.types.d.ts +2 -0
- package/dist/components/drawer/DrawerPortal/index.d.ts +2 -0
- package/dist/components/drawer/DrawerSwipeHandle/DrawerSwipeHandle.d.ts +6 -0
- package/dist/components/drawer/DrawerSwipeHandle/DrawerSwipeHandle.js +27 -0
- package/dist/components/drawer/DrawerSwipeHandle/DrawerSwipeHandle.js.map +1 -0
- package/dist/components/drawer/DrawerSwipeHandle/DrawerSwipeHandle.types.d.ts +2 -0
- package/dist/components/drawer/DrawerSwipeHandle/index.d.ts +2 -0
- package/dist/components/drawer/DrawerTitle/DrawerTitle.d.ts +2 -0
- package/dist/components/drawer/DrawerTitle/DrawerTitle.js +28 -0
- package/dist/components/drawer/DrawerTitle/DrawerTitle.js.map +1 -0
- package/dist/components/drawer/DrawerTitle/DrawerTitle.types.d.ts +2 -0
- package/dist/components/drawer/DrawerTitle/index.d.ts +2 -0
- package/dist/components/drawer/DrawerTrigger/DrawerTrigger.d.ts +5 -0
- package/dist/components/drawer/DrawerTrigger/DrawerTrigger.js +38 -0
- package/dist/components/drawer/DrawerTrigger/DrawerTrigger.js.map +1 -0
- package/dist/components/drawer/DrawerTrigger/index.d.ts +1 -0
- package/dist/components/drawer/index.d.ts +20 -0
- package/dist/components/drawer/index.js +13 -0
- package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.d.ts +3 -0
- package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.js +12 -0
- package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.context.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.d.ts +9 -0
- package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.js +82 -0
- package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenu/DropdownMenu.types.d.ts +26 -0
- package/dist/components/dropdown-menu/DropdownMenu/index.d.ts +3 -0
- package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.js +78 -0
- package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/DropdownMenuCheckboxItem.types.d.ts +14 -0
- package/dist/components/dropdown-menu/DropdownMenuCheckboxItem/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.d.ts +6 -0
- package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.js +64 -0
- package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuContent/DropdownMenuContent.types.d.ts +13 -0
- package/dist/components/dropdown-menu/DropdownMenuContent/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.js +29 -0
- package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuGroup/DropdownMenuGroup.types.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuGroup/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.js +59 -0
- package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuItem/DropdownMenuItem.types.d.ts +14 -0
- package/dist/components/dropdown-menu/DropdownMenuItem/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.js +31 -0
- package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuLabel/DropdownMenuLabel.types.d.ts +4 -0
- package/dist/components/dropdown-menu/DropdownMenuLabel/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.js +10 -0
- package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuPortal/DropdownMenuPortal.types.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuPortal/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.js +48 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioGroup/DropdownMenuRadioGroup.types.d.ts +10 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioGroup/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.js +74 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioItem/DropdownMenuRadioItem.types.d.ts +11 -0
- package/dist/components/dropdown-menu/DropdownMenuRadioItem/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.js +25 -0
- package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuSeparator/DropdownMenuSeparator.types.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSeparator/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.js +19 -0
- package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuShortcut/DropdownMenuShortcut.types.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuShortcut/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.d.ts +4 -0
- package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.js +10 -0
- package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuSub/DropdownMenuSub.types.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSub/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.js +82 -0
- package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuSubContent/DropdownMenuSubContent.types.d.ts +15 -0
- package/dist/components/dropdown-menu/DropdownMenuSubContent/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.js +96 -0
- package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuSubTrigger/DropdownMenuSubTrigger.types.d.ts +12 -0
- package/dist/components/dropdown-menu/DropdownMenuSubTrigger/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.d.ts +5 -0
- package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.js +42 -0
- package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.js.map +1 -0
- package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.types.d.ts +4 -0
- package/dist/components/dropdown-menu/DropdownMenuTrigger/index.d.ts +2 -0
- package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.d.ts +4 -0
- package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.js +30 -0
- package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.js.map +1 -0
- package/dist/components/dropdown-menu/dropdown-menu.styles.d.ts +11 -0
- package/dist/components/dropdown-menu/dropdown-menu.styles.js +6 -0
- package/dist/components/dropdown-menu/dropdown-menu.styles.js.map +1 -0
- package/dist/components/dropdown-menu/index.d.ts +30 -0
- package/dist/components/dropdown-menu/index.js +16 -0
- package/dist/components/empty/Empty/Empty.d.ts +1 -1
- package/dist/components/empty/Empty/Empty.js.map +1 -1
- package/dist/components/empty/EmptyContent/EmptyContent.d.ts +1 -1
- package/dist/components/empty/EmptyContent/EmptyContent.js.map +1 -1
- package/dist/components/empty/EmptyDescription/EmptyDescription.d.ts +1 -1
- package/dist/components/empty/EmptyDescription/EmptyDescription.js.map +1 -1
- package/dist/components/empty/EmptyHeader/EmptyHeader.d.ts +1 -1
- package/dist/components/empty/EmptyHeader/EmptyHeader.js.map +1 -1
- package/dist/components/empty/EmptyMedia/EmptyMedia.d.ts +1 -1
- package/dist/components/empty/EmptyMedia/EmptyMedia.js.map +1 -1
- package/dist/components/empty/EmptyMedia/EmptyMedia.styles.js.map +1 -1
- package/dist/components/empty/EmptyTitle/EmptyTitle.d.ts +1 -1
- package/dist/components/empty/EmptyTitle/EmptyTitle.js.map +1 -1
- package/dist/components/field/Field/Field.d.ts +1 -1
- package/dist/components/field/Field/Field.js.map +1 -1
- package/dist/components/field/Field/Field.styles.js.map +1 -1
- package/dist/components/field/FieldContent/FieldContent.d.ts +1 -1
- package/dist/components/field/FieldContent/FieldContent.js.map +1 -1
- package/dist/components/field/FieldDescription/FieldDescription.d.ts +1 -1
- package/dist/components/field/FieldDescription/FieldDescription.js.map +1 -1
- package/dist/components/field/FieldError/FieldError.d.ts +1 -1
- package/dist/components/field/FieldError/FieldError.js.map +1 -1
- package/dist/components/field/FieldGroup/FieldGroup.d.ts +1 -1
- package/dist/components/field/FieldGroup/FieldGroup.js.map +1 -1
- package/dist/components/field/FieldLabel/FieldLabel.d.ts +1 -1
- package/dist/components/field/FieldLabel/FieldLabel.js.map +1 -1
- package/dist/components/field/FieldLegend/FieldLegend.d.ts +1 -1
- package/dist/components/field/FieldLegend/FieldLegend.js.map +1 -1
- package/dist/components/field/FieldSeparator/FieldSeparator.d.ts +1 -1
- package/dist/components/field/FieldSeparator/FieldSeparator.js.map +1 -1
- package/dist/components/field/FieldSet/FieldSet.d.ts +1 -1
- package/dist/components/field/FieldSet/FieldSet.js.map +1 -1
- package/dist/components/field/FieldTitle/FieldTitle.d.ts +1 -1
- package/dist/components/field/FieldTitle/FieldTitle.js.map +1 -1
- package/dist/components/hover-card/HoverCard/HoverCard.d.ts +7 -0
- package/dist/components/hover-card/HoverCard/HoverCard.js +47 -0
- package/dist/components/hover-card/HoverCard/HoverCard.js.map +1 -0
- package/dist/components/hover-card/HoverCard/index.d.ts +1 -0
- package/dist/components/hover-card/HoverCardContent/HoverCardContent.d.ts +6 -0
- package/dist/components/hover-card/HoverCardContent/HoverCardContent.js +74 -0
- package/dist/components/hover-card/HoverCardContent/HoverCardContent.js.map +1 -0
- package/dist/components/hover-card/HoverCardContent/index.d.ts +1 -0
- package/dist/components/hover-card/HoverCardContent/useHoverCardContent.d.ts +16 -0
- package/dist/components/hover-card/HoverCardContent/useHoverCardContent.js +58 -0
- package/dist/components/hover-card/HoverCardContent/useHoverCardContent.js.map +1 -0
- package/dist/components/hover-card/HoverCardTrigger/HoverCardTrigger.d.ts +4 -0
- package/dist/components/hover-card/HoverCardTrigger/HoverCardTrigger.js +40 -0
- package/dist/components/hover-card/HoverCardTrigger/HoverCardTrigger.js.map +1 -0
- package/dist/components/hover-card/HoverCardTrigger/index.d.ts +1 -0
- package/dist/components/hover-card/HoverCardTrigger/useHoverCardTrigger.d.ts +18 -0
- package/dist/components/hover-card/HoverCardTrigger/useHoverCardTrigger.js +34 -0
- package/dist/components/hover-card/HoverCardTrigger/useHoverCardTrigger.js.map +1 -0
- package/dist/components/hover-card/hover-card.context.d.ts +3 -0
- package/dist/components/hover-card/hover-card.context.js +12 -0
- package/dist/components/hover-card/hover-card.context.js.map +1 -0
- package/dist/components/hover-card/hover-card.types.d.ts +50 -0
- package/dist/components/hover-card/hover-card.utils.d.ts +6 -0
- package/dist/components/hover-card/index.d.ts +4 -0
- package/dist/components/hover-card/index.js +4 -0
- package/dist/components/image/Image.config.js.map +1 -1
- package/dist/components/image/Image.js.map +1 -1
- package/dist/components/image/Image.utils.js +2 -2
- package/dist/components/image/Image.utils.js.map +1 -1
- package/dist/components/image/ImageElement.js.map +1 -1
- package/dist/components/image/ImagePreload.js.map +1 -1
- package/dist/components/input/Input.js.map +1 -1
- package/dist/components/input-group/InputGroup/InputGroup.d.ts +1 -1
- package/dist/components/input-group/InputGroup/InputGroup.js.map +1 -1
- package/dist/components/input-group/InputGroupAddon/InputGroupAddon.d.ts +1 -1
- package/dist/components/input-group/InputGroupAddon/InputGroupAddon.js.map +1 -1
- package/dist/components/input-group/InputGroupAddon/InputGroupAddon.styles.js.map +1 -1
- package/dist/components/input-group/InputGroupButton/InputGroupButton.d.ts +1 -1
- package/dist/components/input-group/InputGroupButton/InputGroupButton.js.map +1 -1
- package/dist/components/input-group/InputGroupButton/InputGroupButton.styles.js.map +1 -1
- package/dist/components/input-group/InputGroupInput/InputGroupInput.d.ts +1 -1
- package/dist/components/input-group/InputGroupInput/InputGroupInput.js.map +1 -1
- package/dist/components/input-group/InputGroupText/InputGroupText.d.ts +1 -1
- package/dist/components/input-group/InputGroupText/InputGroupText.js.map +1 -1
- package/dist/components/input-group/InputGroupTextarea/InputGroupTextarea.d.ts +1 -1
- package/dist/components/input-group/InputGroupTextarea/InputGroupTextarea.js.map +1 -1
- package/dist/components/item/Item/Item.d.ts +1 -1
- package/dist/components/item/Item/Item.js.map +1 -1
- package/dist/components/item/Item/Item.styles.js.map +1 -1
- package/dist/components/item/ItemActions/ItemActions.d.ts +1 -1
- package/dist/components/item/ItemActions/ItemActions.js.map +1 -1
- package/dist/components/item/ItemContent/ItemContent.d.ts +1 -1
- package/dist/components/item/ItemContent/ItemContent.js.map +1 -1
- package/dist/components/item/ItemDescription/ItemDescription.d.ts +1 -1
- package/dist/components/item/ItemDescription/ItemDescription.js.map +1 -1
- package/dist/components/item/ItemFooter/ItemFooter.d.ts +1 -1
- package/dist/components/item/ItemFooter/ItemFooter.js.map +1 -1
- package/dist/components/item/ItemGroup/ItemGroup.d.ts +1 -1
- package/dist/components/item/ItemGroup/ItemGroup.js.map +1 -1
- package/dist/components/item/ItemHeader/ItemHeader.d.ts +1 -1
- package/dist/components/item/ItemHeader/ItemHeader.js.map +1 -1
- package/dist/components/item/ItemMedia/ItemMedia.d.ts +1 -1
- package/dist/components/item/ItemMedia/ItemMedia.js.map +1 -1
- package/dist/components/item/ItemMedia/ItemMedia.styles.js.map +1 -1
- package/dist/components/item/ItemSeparator/ItemSeparator.d.ts +1 -1
- package/dist/components/item/ItemSeparator/ItemSeparator.js.map +1 -1
- package/dist/components/item/ItemTitle/ItemTitle.d.ts +1 -1
- package/dist/components/item/ItemTitle/ItemTitle.js.map +1 -1
- package/dist/components/kbd/Kbd.d.ts +2 -2
- package/dist/components/kbd/Kbd.js.map +1 -1
- package/dist/components/label/Label.d.ts +1 -1
- package/dist/components/label/Label.js.map +1 -1
- package/dist/components/marker/Marker/Marker.d.ts +7 -0
- package/dist/components/marker/Marker/Marker.js +35 -0
- package/dist/components/marker/Marker/Marker.js.map +1 -0
- package/dist/components/marker/Marker/Marker.styles.d.ts +3 -0
- package/dist/components/marker/Marker/Marker.styles.js +14 -0
- package/dist/components/marker/Marker/Marker.styles.js.map +1 -0
- package/dist/components/marker/Marker/Marker.types.d.ts +5 -0
- package/dist/components/marker/Marker/index.d.ts +3 -0
- package/dist/components/marker/MarkerContent/MarkerContent.d.ts +2 -0
- package/dist/components/marker/MarkerContent/MarkerContent.js +24 -0
- package/dist/components/marker/MarkerContent/MarkerContent.js.map +1 -0
- package/dist/components/marker/MarkerContent/MarkerContent.types.d.ts +2 -0
- package/dist/components/marker/MarkerContent/index.d.ts +2 -0
- package/dist/components/marker/MarkerIcon/MarkerIcon.d.ts +3 -0
- package/dist/components/marker/MarkerIcon/MarkerIcon.js +25 -0
- package/dist/components/marker/MarkerIcon/MarkerIcon.js.map +1 -0
- package/dist/components/marker/MarkerIcon/MarkerIcon.types.d.ts +2 -0
- package/dist/components/marker/MarkerIcon/index.d.ts +2 -0
- package/dist/components/marker/index.d.ts +6 -0
- package/dist/components/marker/index.js +5 -0
- package/dist/components/message/Message/Message.d.ts +3 -0
- package/dist/components/message/Message/Message.js +31 -0
- package/dist/components/message/Message/Message.js.map +1 -0
- package/dist/components/message/Message/Message.types.d.ts +5 -0
- package/dist/components/message/Message/index.d.ts +2 -0
- package/dist/components/message/MessageAvatar/MessageAvatar.d.ts +5 -0
- package/dist/components/message/MessageAvatar/MessageAvatar.js +24 -0
- package/dist/components/message/MessageAvatar/MessageAvatar.js.map +1 -0
- package/dist/components/message/MessageAvatar/MessageAvatar.types.d.ts +2 -0
- package/dist/components/message/MessageAvatar/index.d.ts +2 -0
- package/dist/components/message/MessageContent/MessageContent.d.ts +3 -0
- package/dist/components/message/MessageContent/MessageContent.js +24 -0
- package/dist/components/message/MessageContent/MessageContent.js.map +1 -0
- package/dist/components/message/MessageContent/MessageContent.types.d.ts +2 -0
- package/dist/components/message/MessageContent/index.d.ts +2 -0
- package/dist/components/message/MessageFooter/MessageFooter.d.ts +3 -0
- package/dist/components/message/MessageFooter/MessageFooter.js +24 -0
- package/dist/components/message/MessageFooter/MessageFooter.js.map +1 -0
- package/dist/components/message/MessageFooter/MessageFooter.types.d.ts +2 -0
- package/dist/components/message/MessageFooter/index.d.ts +2 -0
- package/dist/components/message/MessageGroup/MessageGroup.d.ts +3 -0
- package/dist/components/message/MessageGroup/MessageGroup.js +24 -0
- package/dist/components/message/MessageGroup/MessageGroup.js.map +1 -0
- package/dist/components/message/MessageGroup/MessageGroup.types.d.ts +2 -0
- package/dist/components/message/MessageGroup/index.d.ts +2 -0
- package/dist/components/message/MessageHeader/MessageHeader.d.ts +3 -0
- package/dist/components/message/MessageHeader/MessageHeader.js +24 -0
- package/dist/components/message/MessageHeader/MessageHeader.js.map +1 -0
- package/dist/components/message/MessageHeader/MessageHeader.types.d.ts +2 -0
- package/dist/components/message/MessageHeader/index.d.ts +2 -0
- package/dist/components/message/index.d.ts +12 -0
- package/dist/components/message/index.js +7 -0
- package/dist/components/message-scroller/MessageScroller/MessageScroller.d.ts +3 -0
- package/dist/components/message-scroller/MessageScroller/MessageScroller.js +35 -0
- package/dist/components/message-scroller/MessageScroller/MessageScroller.js.map +1 -0
- package/dist/components/message-scroller/MessageScroller/index.d.ts +1 -0
- package/dist/components/message-scroller/MessageScrollerButton/MessageScrollerButton.d.ts +6 -0
- package/dist/components/message-scroller/MessageScrollerButton/MessageScrollerButton.js +90 -0
- package/dist/components/message-scroller/MessageScrollerButton/MessageScrollerButton.js.map +1 -0
- package/dist/components/message-scroller/MessageScrollerButton/index.d.ts +1 -0
- package/dist/components/message-scroller/MessageScrollerContent/MessageScrollerContent.d.ts +6 -0
- package/dist/components/message-scroller/MessageScrollerContent/MessageScrollerContent.js +46 -0
- package/dist/components/message-scroller/MessageScrollerContent/MessageScrollerContent.js.map +1 -0
- package/dist/components/message-scroller/MessageScrollerContent/index.d.ts +1 -0
- package/dist/components/message-scroller/MessageScrollerItem/MessageScrollerItem.d.ts +6 -0
- package/dist/components/message-scroller/MessageScrollerItem/MessageScrollerItem.js +42 -0
- package/dist/components/message-scroller/MessageScrollerItem/MessageScrollerItem.js.map +1 -0
- package/dist/components/message-scroller/MessageScrollerItem/index.d.ts +1 -0
- package/dist/components/message-scroller/MessageScrollerProvider/MessageScrollerProvider.d.ts +4 -0
- package/dist/components/message-scroller/MessageScrollerProvider/MessageScrollerProvider.js +37 -0
- package/dist/components/message-scroller/MessageScrollerProvider/MessageScrollerProvider.js.map +1 -0
- package/dist/components/message-scroller/MessageScrollerProvider/index.d.ts +1 -0
- package/dist/components/message-scroller/MessageScrollerViewport/MessageScrollerViewport.d.ts +6 -0
- package/dist/components/message-scroller/MessageScrollerViewport/MessageScrollerViewport.js +55 -0
- package/dist/components/message-scroller/MessageScrollerViewport/MessageScrollerViewport.js.map +1 -0
- package/dist/components/message-scroller/MessageScrollerViewport/index.d.ts +1 -0
- package/dist/components/message-scroller/index.d.ts +10 -0
- package/dist/components/message-scroller/index.js +10 -0
- package/dist/components/message-scroller/message-scroller.context.d.ts +3 -0
- package/dist/components/message-scroller/message-scroller.context.js +12 -0
- package/dist/components/message-scroller/message-scroller.context.js.map +1 -0
- package/dist/components/message-scroller/message-scroller.types.d.ts +92 -0
- package/dist/components/message-scroller/message-scroller.utils.d.ts +7 -0
- package/dist/components/message-scroller/message-scroller.utils.js +9 -0
- package/dist/components/message-scroller/message-scroller.utils.js.map +1 -0
- package/dist/components/message-scroller/useMessageScroller.d.ts +6 -0
- package/dist/components/message-scroller/useMessageScroller.js +14 -0
- package/dist/components/message-scroller/useMessageScroller.js.map +1 -0
- package/dist/components/message-scroller/useMessageScrollerEngine.d.ts +15 -0
- package/dist/components/message-scroller/useMessageScrollerEngine.js +375 -0
- package/dist/components/message-scroller/useMessageScrollerEngine.js.map +1 -0
- package/dist/components/message-scroller/useMessageScrollerScrollable.d.ts +5 -0
- package/dist/components/message-scroller/useMessageScrollerScrollable.js +13 -0
- package/dist/components/message-scroller/useMessageScrollerScrollable.js.map +1 -0
- package/dist/components/message-scroller/useMessageScrollerVisibility.d.ts +7 -0
- package/dist/components/message-scroller/useMessageScrollerVisibility.js +17 -0
- package/dist/components/message-scroller/useMessageScrollerVisibility.js.map +1 -0
- package/dist/components/number-input/NumberInput/NumberInput.d.ts +19 -0
- package/dist/components/number-input/NumberInput/NumberInput.js +153 -0
- package/dist/components/number-input/NumberInput/NumberInput.js.map +1 -0
- package/dist/components/number-input/NumberInput/NumberInput.types.d.ts +41 -0
- package/dist/components/number-input/NumberInput/NumberInput.utils.d.ts +10 -0
- package/dist/components/number-input/NumberInput/NumberInput.utils.js +24 -0
- package/dist/components/number-input/NumberInput/NumberInput.utils.js.map +1 -0
- package/dist/components/number-input/NumberInput/create-change-event-details.d.ts +8 -0
- package/dist/components/number-input/NumberInput/create-change-event-details.js +25 -0
- package/dist/components/number-input/NumberInput/create-change-event-details.js.map +1 -0
- package/dist/components/number-input/NumberInput/index.d.ts +2 -0
- package/dist/components/number-input/index.d.ts +2 -0
- package/dist/components/number-input/index.js +2 -0
- package/dist/components/pagination/Pagination/Pagination.d.ts +1 -1
- package/dist/components/pagination/Pagination/Pagination.js.map +1 -1
- package/dist/components/pagination/PaginationContent/PaginationContent.d.ts +1 -1
- package/dist/components/pagination/PaginationContent/PaginationContent.js.map +1 -1
- package/dist/components/pagination/PaginationEllipsis/PaginationEllipsis.d.ts +1 -1
- package/dist/components/pagination/PaginationEllipsis/PaginationEllipsis.js.map +1 -1
- package/dist/components/pagination/PaginationItem/PaginationItem.d.ts +1 -1
- package/dist/components/pagination/PaginationItem/PaginationItem.js.map +1 -1
- package/dist/components/pagination/PaginationLink/PaginationLink.d.ts +1 -1
- package/dist/components/pagination/PaginationLink/PaginationLink.js +1 -1
- package/dist/components/pagination/PaginationLink/PaginationLink.js.map +1 -1
- package/dist/components/pagination/PaginationNext/PaginationNext.d.ts +1 -1
- package/dist/components/pagination/PaginationNext/PaginationNext.js.map +1 -1
- package/dist/components/pagination/PaginationPrevious/PaginationPrevious.d.ts +1 -1
- package/dist/components/pagination/PaginationPrevious/PaginationPrevious.js.map +1 -1
- package/dist/components/popover/Popover/Popover.context.js.map +1 -1
- package/dist/components/popover/Popover/Popover.js +25 -22
- package/dist/components/popover/Popover/Popover.js.map +1 -1
- package/dist/components/popover/Popover/Popover.types.d.ts +5 -0
- package/dist/components/popover/PopoverContent/PopoverContent.d.ts +1 -1
- package/dist/components/popover/PopoverContent/PopoverContent.js.map +1 -1
- package/dist/components/popover/PopoverContent/PopoverContent.utils.d.ts +6 -13
- package/dist/components/popover/PopoverContent/PopoverContent.utils.js +7 -30
- package/dist/components/popover/PopoverContent/PopoverContent.utils.js.map +1 -1
- package/dist/components/popover/PopoverContent/usePopoverContent.js.map +1 -1
- package/dist/components/popover/PopoverDescription/PopoverDescription.d.ts +1 -1
- package/dist/components/popover/PopoverDescription/PopoverDescription.js.map +1 -1
- package/dist/components/popover/PopoverHeader/PopoverHeader.d.ts +1 -1
- package/dist/components/popover/PopoverHeader/PopoverHeader.js.map +1 -1
- package/dist/components/popover/PopoverTitle/PopoverTitle.d.ts +1 -1
- package/dist/components/popover/PopoverTitle/PopoverTitle.js.map +1 -1
- package/dist/components/popover/PopoverTrigger/PopoverTrigger.d.ts +1 -1
- package/dist/components/popover/PopoverTrigger/PopoverTrigger.js.map +1 -1
- package/dist/components/popover/PopoverTrigger/usePopoverTrigger.js.map +1 -1
- package/dist/components/progress/Progress/Progress.context.js.map +1 -1
- package/dist/components/progress/Progress/Progress.d.ts +1 -1
- package/dist/components/progress/Progress/Progress.js.map +1 -1
- package/dist/components/progress/Progress/Progress.styles.js.map +1 -1
- package/dist/components/progress/ProgressIndicator/ProgressIndicator.d.ts +1 -1
- package/dist/components/progress/ProgressIndicator/ProgressIndicator.js.map +1 -1
- package/dist/components/progress/ProgressIndicator/ProgressIndicator.styles.js.map +1 -1
- package/dist/components/progress/ProgressLabel/ProgressLabel.d.ts +1 -1
- package/dist/components/progress/ProgressLabel/ProgressLabel.js.map +1 -1
- package/dist/components/progress/ProgressLabel/ProgressLabel.styles.js.map +1 -1
- package/dist/components/progress/ProgressTrack/ProgressTrack.d.ts +1 -1
- package/dist/components/progress/ProgressTrack/ProgressTrack.js.map +1 -1
- package/dist/components/progress/ProgressTrack/ProgressTrack.styles.js.map +1 -1
- package/dist/components/progress/ProgressValue/ProgressValue.d.ts +1 -1
- package/dist/components/progress/ProgressValue/ProgressValue.js.map +1 -1
- package/dist/components/progress/ProgressValue/ProgressValue.styles.js.map +1 -1
- package/dist/components/questionnaire/Questionnaire/Questionnaire.d.ts +3 -0
- package/dist/components/questionnaire/Questionnaire/Questionnaire.js +68 -0
- package/dist/components/questionnaire/Questionnaire/Questionnaire.js.map +1 -0
- package/dist/components/questionnaire/Questionnaire/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireActions/QuestionnaireActions.d.ts +3 -0
- package/dist/components/questionnaire/QuestionnaireActions/QuestionnaireActions.js +24 -0
- package/dist/components/questionnaire/QuestionnaireActions/QuestionnaireActions.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireActions/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireChoice/QuestionnaireChoice.d.ts +3 -0
- package/dist/components/questionnaire/QuestionnaireChoice/QuestionnaireChoice.js +99 -0
- package/dist/components/questionnaire/QuestionnaireChoice/QuestionnaireChoice.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireChoice/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireChoice/useQuestionnaireChoice.d.ts +38 -0
- package/dist/components/questionnaire/QuestionnaireChoice/useQuestionnaireChoice.js +67 -0
- package/dist/components/questionnaire/QuestionnaireChoice/useQuestionnaireChoice.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireChoices/QuestionnaireChoices.d.ts +3 -0
- package/dist/components/questionnaire/QuestionnaireChoices/QuestionnaireChoices.js +28 -0
- package/dist/components/questionnaire/QuestionnaireChoices/QuestionnaireChoices.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireChoices/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireDescription/QuestionnaireDescription.d.ts +4 -0
- package/dist/components/questionnaire/QuestionnaireDescription/QuestionnaireDescription.js +30 -0
- package/dist/components/questionnaire/QuestionnaireDescription/QuestionnaireDescription.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireDescription/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireError/QuestionnaireError.d.ts +4 -0
- package/dist/components/questionnaire/QuestionnaireError/QuestionnaireError.js +43 -0
- package/dist/components/questionnaire/QuestionnaireError/QuestionnaireError.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireError/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireInput/QuestionnaireInput.d.ts +3 -0
- package/dist/components/questionnaire/QuestionnaireInput/QuestionnaireInput.js +78 -0
- package/dist/components/questionnaire/QuestionnaireInput/QuestionnaireInput.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireInput/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireInput/useQuestionnaireInput.d.ts +37 -0
- package/dist/components/questionnaire/QuestionnaireInput/useQuestionnaireInput.js +58 -0
- package/dist/components/questionnaire/QuestionnaireInput/useQuestionnaireInput.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireItem/QuestionnaireItem.d.ts +3 -0
- package/dist/components/questionnaire/QuestionnaireItem/QuestionnaireItem.js +89 -0
- package/dist/components/questionnaire/QuestionnaireItem/QuestionnaireItem.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireItem/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireNavigation/QuestionnaireNavigation.d.ts +5 -0
- package/dist/components/questionnaire/QuestionnaireNavigation/QuestionnaireNavigation.js +104 -0
- package/dist/components/questionnaire/QuestionnaireNavigation/QuestionnaireNavigation.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireNavigation/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireProgress/QuestionnaireProgress.d.ts +4 -0
- package/dist/components/questionnaire/QuestionnaireProgress/QuestionnaireProgress.js +62 -0
- package/dist/components/questionnaire/QuestionnaireProgress/QuestionnaireProgress.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireProgress/index.d.ts +1 -0
- package/dist/components/questionnaire/QuestionnaireTitle/QuestionnaireTitle.d.ts +4 -0
- package/dist/components/questionnaire/QuestionnaireTitle/QuestionnaireTitle.js +27 -0
- package/dist/components/questionnaire/QuestionnaireTitle/QuestionnaireTitle.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireTitle/index.d.ts +1 -0
- package/dist/components/questionnaire/index.d.ts +12 -0
- package/dist/components/questionnaire/index.js +12 -0
- package/dist/components/questionnaire/questionnaire.context.d.ts +65 -0
- package/dist/components/questionnaire/questionnaire.context.js +18 -0
- package/dist/components/questionnaire/questionnaire.context.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.types.d.ts +82 -0
- package/dist/components/questionnaire/questionnaire.utils.d.ts +24 -0
- package/dist/components/questionnaire/questionnaire.utils.js +38 -0
- package/dist/components/questionnaire/questionnaire.utils.js.map +1 -0
- package/dist/components/questionnaire/useQuestionnaireItem.d.ts +34 -0
- package/dist/components/questionnaire/useQuestionnaireItem.js +141 -0
- package/dist/components/questionnaire/useQuestionnaireItem.js.map +1 -0
- package/dist/components/questionnaire/useQuestionnaireRoot.d.ts +30 -0
- package/dist/components/questionnaire/useQuestionnaireRoot.js +144 -0
- package/dist/components/questionnaire/useQuestionnaireRoot.js.map +1 -0
- package/dist/components/radio-group/RadioGroup/RadioGroup.context.js.map +1 -1
- package/dist/components/radio-group/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/components/radio-group/RadioGroupItem/RadioGroupItem.d.ts +1 -1
- package/dist/components/radio-group/RadioGroupItem/RadioGroupItem.js.map +1 -1
- package/dist/components/resizable/ResizableHandle/ResizableHandle.d.ts +6 -0
- package/dist/components/resizable/ResizableHandle/ResizableHandle.js +92 -0
- package/dist/components/resizable/ResizableHandle/ResizableHandle.js.map +1 -0
- package/dist/components/resizable/ResizableHandle/ResizableHandle.styles.d.ts +3 -0
- package/dist/components/resizable/ResizableHandle/ResizableHandle.styles.js +6 -0
- package/dist/components/resizable/ResizableHandle/ResizableHandle.styles.js.map +1 -0
- package/dist/components/resizable/ResizableHandle/index.d.ts +1 -0
- package/dist/components/resizable/ResizableHandle/useResizableHandle.d.ts +17 -0
- package/dist/components/resizable/ResizableHandle/useResizableHandle.js +72 -0
- package/dist/components/resizable/ResizableHandle/useResizableHandle.js.map +1 -0
- package/dist/components/resizable/ResizablePanel/ResizablePanel.d.ts +6 -0
- package/dist/components/resizable/ResizablePanel/ResizablePanel.js +91 -0
- package/dist/components/resizable/ResizablePanel/ResizablePanel.js.map +1 -0
- package/dist/components/resizable/ResizablePanel/index.d.ts +1 -0
- package/dist/components/resizable/ResizablePanelGroup/ResizablePanelGroup.d.ts +6 -0
- package/dist/components/resizable/ResizablePanelGroup/ResizablePanelGroup.js +66 -0
- package/dist/components/resizable/ResizablePanelGroup/ResizablePanelGroup.js.map +1 -0
- package/dist/components/resizable/ResizablePanelGroup/index.d.ts +1 -0
- package/dist/components/resizable/index.d.ts +4 -0
- package/dist/components/resizable/index.js +4 -0
- package/dist/components/resizable/resizable.context.d.ts +38 -0
- package/dist/components/resizable/resizable.context.js +12 -0
- package/dist/components/resizable/resizable.context.js.map +1 -0
- package/dist/components/resizable/resizable.types.d.ts +76 -0
- package/dist/components/resizable/resizable.utils.d.ts +16 -0
- package/dist/components/resizable/resizable.utils.js +45 -0
- package/dist/components/resizable/resizable.utils.js.map +1 -0
- package/dist/components/resizable/useResizablePanelGroup.d.ts +22 -0
- package/dist/components/resizable/useResizablePanelGroup.js +176 -0
- package/dist/components/resizable/useResizablePanelGroup.js.map +1 -0
- package/dist/components/scroll-area/ScrollArea/ScrollArea.context.js.map +1 -1
- package/dist/components/scroll-area/ScrollArea/ScrollArea.d.ts +1 -1
- package/dist/components/scroll-area/ScrollArea/ScrollArea.js.map +1 -1
- package/dist/components/scroll-area/ScrollArea/ScrollArea.utils.js.map +1 -1
- package/dist/components/scroll-area/ScrollBar/ScrollBar.d.ts +1 -1
- package/dist/components/scroll-area/ScrollBar/ScrollBar.js.map +1 -1
- package/dist/components/scroll-arrows/ScrollArrowButton.d.ts +12 -0
- package/dist/components/scroll-arrows/ScrollArrowButton.js +60 -0
- package/dist/components/scroll-arrows/ScrollArrowButton.js.map +1 -0
- package/dist/components/scroll-arrows/ScrollArrows.d.ts +11 -0
- package/dist/components/scroll-arrows/ScrollArrows.js +41 -0
- package/dist/components/scroll-arrows/ScrollArrows.js.map +1 -0
- package/dist/components/scroll-arrows/ScrollArrows.types.d.ts +24 -0
- package/dist/components/scroll-arrows/index.d.ts +2 -0
- package/dist/components/scroll-arrows/index.js +2 -0
- package/dist/components/select/Select/Select.context.js.map +1 -1
- package/dist/components/select/Select/Select.js +36 -33
- package/dist/components/select/Select/Select.js.map +1 -1
- package/dist/components/select/Select/Select.types.d.ts +5 -0
- package/dist/components/select/SelectContent/SelectContent.d.ts +1 -1
- package/dist/components/select/SelectContent/SelectContent.js +45 -40
- package/dist/components/select/SelectContent/SelectContent.js.map +1 -1
- package/dist/components/select/SelectContent/SelectContent.utils.js.map +1 -1
- package/dist/components/select/SelectContent/useSelectContent.js.map +1 -1
- package/dist/components/select/SelectGroup/SelectGroup.d.ts +1 -1
- package/dist/components/select/SelectGroup/SelectGroup.js.map +1 -1
- package/dist/components/select/SelectItem/SelectItem.d.ts +1 -1
- package/dist/components/select/SelectItem/SelectItem.js.map +1 -1
- package/dist/components/select/SelectItem/useSelectItem.js.map +1 -1
- package/dist/components/select/SelectLabel/SelectLabel.d.ts +1 -1
- package/dist/components/select/SelectLabel/SelectLabel.js.map +1 -1
- package/dist/components/select/SelectSeparator/SelectSeparator.d.ts +1 -1
- package/dist/components/select/SelectSeparator/SelectSeparator.js.map +1 -1
- package/dist/components/select/SelectTrigger/SelectTrigger.d.ts +1 -1
- package/dist/components/select/SelectTrigger/SelectTrigger.js.map +1 -1
- package/dist/components/select/SelectTrigger/useSelectTrigger.js.map +1 -1
- package/dist/components/select/SelectValue/SelectValue.d.ts +1 -1
- package/dist/components/select/SelectValue/SelectValue.js.map +1 -1
- package/dist/components/separator/Separator.d.ts +1 -1
- package/dist/components/separator/Separator.js.map +1 -1
- package/dist/components/separator/Separator.styles.js.map +1 -1
- package/dist/components/sheet/Sheet/Sheet.d.ts +6 -0
- package/dist/components/sheet/Sheet/Sheet.js +10 -0
- package/dist/components/sheet/Sheet/Sheet.js.map +1 -0
- package/dist/components/sheet/Sheet/index.d.ts +1 -0
- package/dist/components/sheet/SheetClose/SheetClose.d.ts +6 -0
- package/dist/components/sheet/SheetClose/SheetClose.js +39 -0
- package/dist/components/sheet/SheetClose/SheetClose.js.map +1 -0
- package/dist/components/sheet/SheetClose/index.d.ts +1 -0
- package/dist/components/sheet/SheetContent/SheetContent.d.ts +6 -0
- package/dist/components/sheet/SheetContent/SheetContent.js +48 -0
- package/dist/components/sheet/SheetContent/SheetContent.js.map +1 -0
- package/dist/components/sheet/SheetContent/SheetContent.styles.d.ts +10 -0
- package/dist/components/sheet/SheetContent/SheetContent.styles.js +17 -0
- package/dist/components/sheet/SheetContent/SheetContent.styles.js.map +1 -0
- package/dist/components/sheet/SheetContent/index.d.ts +1 -0
- package/dist/components/sheet/SheetDescription/SheetDescription.d.ts +2 -0
- package/dist/components/sheet/SheetDescription/SheetDescription.js +25 -0
- package/dist/components/sheet/SheetDescription/SheetDescription.js.map +1 -0
- package/dist/components/sheet/SheetDescription/SheetDescription.styles.d.ts +1 -0
- package/dist/components/sheet/SheetDescription/SheetDescription.styles.js +6 -0
- package/dist/components/sheet/SheetDescription/SheetDescription.styles.js.map +1 -0
- package/dist/components/sheet/SheetDescription/index.d.ts +1 -0
- package/dist/components/sheet/SheetFooter/SheetFooter.d.ts +2 -0
- package/dist/components/sheet/SheetFooter/SheetFooter.js +24 -0
- package/dist/components/sheet/SheetFooter/SheetFooter.js.map +1 -0
- package/dist/components/sheet/SheetFooter/index.d.ts +1 -0
- package/dist/components/sheet/SheetHeader/SheetHeader.d.ts +2 -0
- package/dist/components/sheet/SheetHeader/SheetHeader.js +24 -0
- package/dist/components/sheet/SheetHeader/SheetHeader.js.map +1 -0
- package/dist/components/sheet/SheetHeader/index.d.ts +1 -0
- package/dist/components/sheet/SheetTitle/SheetTitle.d.ts +3 -0
- package/dist/components/sheet/SheetTitle/SheetTitle.js +25 -0
- package/dist/components/sheet/SheetTitle/SheetTitle.js.map +1 -0
- package/dist/components/sheet/SheetTitle/SheetTitle.styles.d.ts +1 -0
- package/dist/components/sheet/SheetTitle/SheetTitle.styles.js +6 -0
- package/dist/components/sheet/SheetTitle/SheetTitle.styles.js.map +1 -0
- package/dist/components/sheet/SheetTitle/index.d.ts +1 -0
- package/dist/components/sheet/SheetTrigger/SheetTrigger.d.ts +8 -0
- package/dist/components/sheet/SheetTrigger/SheetTrigger.js +32 -0
- package/dist/components/sheet/SheetTrigger/SheetTrigger.js.map +1 -0
- package/dist/components/sheet/SheetTrigger/index.d.ts +1 -0
- package/dist/components/sheet/index.d.ts +9 -0
- package/dist/components/sheet/index.js +9 -0
- package/dist/components/sheet/sheet.types.d.ts +19 -0
- package/dist/components/sidebar/Sidebar/Sidebar.d.ts +1 -1
- package/dist/components/sidebar/Sidebar/Sidebar.js.map +1 -1
- package/dist/components/sidebar/SidebarContent/SidebarContent.d.ts +1 -1
- package/dist/components/sidebar/SidebarContent/SidebarContent.js.map +1 -1
- package/dist/components/sidebar/SidebarFooter/SidebarFooter.d.ts +1 -1
- package/dist/components/sidebar/SidebarFooter/SidebarFooter.js.map +1 -1
- package/dist/components/sidebar/SidebarGroup/SidebarGroup.d.ts +1 -1
- package/dist/components/sidebar/SidebarGroup/SidebarGroup.js.map +1 -1
- package/dist/components/sidebar/SidebarGroupAction/SidebarGroupAction.d.ts +1 -1
- package/dist/components/sidebar/SidebarGroupAction/SidebarGroupAction.js.map +1 -1
- package/dist/components/sidebar/SidebarGroupContent/SidebarGroupContent.d.ts +1 -1
- package/dist/components/sidebar/SidebarGroupContent/SidebarGroupContent.js.map +1 -1
- package/dist/components/sidebar/SidebarGroupLabel/SidebarGroupLabel.d.ts +1 -1
- package/dist/components/sidebar/SidebarGroupLabel/SidebarGroupLabel.js.map +1 -1
- package/dist/components/sidebar/SidebarHeader/SidebarHeader.d.ts +1 -1
- package/dist/components/sidebar/SidebarHeader/SidebarHeader.js.map +1 -1
- package/dist/components/sidebar/SidebarInput/SidebarInput.d.ts +1 -1
- package/dist/components/sidebar/SidebarInput/SidebarInput.js.map +1 -1
- package/dist/components/sidebar/SidebarInset/SidebarInset.d.ts +1 -1
- package/dist/components/sidebar/SidebarInset/SidebarInset.js.map +1 -1
- package/dist/components/sidebar/SidebarMenu/SidebarMenu.d.ts +1 -1
- package/dist/components/sidebar/SidebarMenu/SidebarMenu.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuBadge/SidebarMenuBadge.d.ts +1 -1
- package/dist/components/sidebar/SidebarMenuBadge/SidebarMenuBadge.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.d.ts +1 -1
- package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.styles.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuItem/SidebarMenuItem.d.ts +1 -1
- package/dist/components/sidebar/SidebarMenuItem/SidebarMenuItem.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuSkeleton/SidebarMenuSkeleton.d.ts +1 -1
- package/dist/components/sidebar/SidebarMenuSkeleton/SidebarMenuSkeleton.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuSub/SidebarMenuSub.d.ts +1 -1
- package/dist/components/sidebar/SidebarMenuSub/SidebarMenuSub.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuSubButton/SidebarMenuSubButton.d.ts +1 -1
- package/dist/components/sidebar/SidebarMenuSubButton/SidebarMenuSubButton.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuSubItem/SidebarMenuSubItem.d.ts +1 -1
- package/dist/components/sidebar/SidebarMenuSubItem/SidebarMenuSubItem.js.map +1 -1
- package/dist/components/sidebar/SidebarProvider/SidebarProvider.consts.js.map +1 -1
- package/dist/components/sidebar/SidebarProvider/SidebarProvider.context.js.map +1 -1
- package/dist/components/sidebar/SidebarProvider/SidebarProvider.d.ts +1 -1
- package/dist/components/sidebar/SidebarProvider/SidebarProvider.js.map +1 -1
- package/dist/components/sidebar/SidebarRail/SidebarRail.d.ts +1 -1
- package/dist/components/sidebar/SidebarRail/SidebarRail.js.map +1 -1
- package/dist/components/sidebar/SidebarSeparator/SidebarSeparator.d.ts +1 -1
- package/dist/components/sidebar/SidebarSeparator/SidebarSeparator.js.map +1 -1
- package/dist/components/sidebar/SidebarTrigger/SidebarTrigger.d.ts +1 -1
- package/dist/components/sidebar/SidebarTrigger/SidebarTrigger.js.map +1 -1
- package/dist/components/skeleton/Skeleton.d.ts +1 -1
- package/dist/components/skeleton/Skeleton.js.map +1 -1
- package/dist/components/slider/Slider/Slider.context.js.map +1 -1
- package/dist/components/slider/Slider/Slider.d.ts +1 -1
- package/dist/components/slider/Slider/Slider.js.map +1 -1
- package/dist/components/slider/Slider/Slider.styles.js.map +1 -1
- package/dist/components/slider/Slider/useSlider.js.map +1 -1
- package/dist/components/slider/SliderControl/SliderControl.d.ts +1 -1
- package/dist/components/slider/SliderControl/SliderControl.js.map +1 -1
- package/dist/components/slider/SliderControl/SliderControl.styles.js.map +1 -1
- package/dist/components/slider/SliderControl/useSliderControl.js.map +1 -1
- package/dist/components/slider/SliderIndicator/SliderIndicator.d.ts +1 -1
- package/dist/components/slider/SliderIndicator/SliderIndicator.js.map +1 -1
- package/dist/components/slider/SliderIndicator/SliderIndicator.styles.js.map +1 -1
- package/dist/components/slider/SliderIndicator/useSliderIndicator.js.map +1 -1
- package/dist/components/slider/SliderThumb/SliderThumb.d.ts +1 -1
- package/dist/components/slider/SliderThumb/SliderThumb.js.map +1 -1
- package/dist/components/slider/SliderThumb/SliderThumb.styles.js.map +1 -1
- package/dist/components/slider/SliderThumb/useSliderThumb.js.map +1 -1
- package/dist/components/slider/SliderTrack/SliderTrack.d.ts +1 -1
- package/dist/components/slider/SliderTrack/SliderTrack.js.map +1 -1
- package/dist/components/slider/SliderTrack/SliderTrack.styles.js.map +1 -1
- package/dist/components/spinner/Spinner.d.ts +1 -1
- package/dist/components/spinner/Spinner.js.map +1 -1
- package/dist/components/spinner/Spinner.styles.js.map +1 -1
- package/dist/components/switch/Switch.d.ts +1 -1
- package/dist/components/switch/Switch.js.map +1 -1
- package/dist/components/switch/Switch.styles.js.map +1 -1
- package/dist/components/table/Table/Table.d.ts +3 -0
- package/dist/components/table/Table/Table.js +24 -0
- package/dist/components/table/Table/Table.js.map +1 -0
- package/dist/components/table/Table/Table.types.d.ts +2 -0
- package/dist/components/table/Table/index.d.ts +2 -0
- package/dist/components/table/TableBody/TableBody.d.ts +2 -0
- package/dist/components/table/TableBody/TableBody.js +24 -0
- package/dist/components/table/TableBody/TableBody.js.map +1 -0
- package/dist/components/table/TableBody/TableBody.types.d.ts +2 -0
- package/dist/components/table/TableBody/index.d.ts +2 -0
- package/dist/components/table/TableCaption/TableCaption.d.ts +2 -0
- package/dist/components/table/TableCaption/TableCaption.js +24 -0
- package/dist/components/table/TableCaption/TableCaption.js.map +1 -0
- package/dist/components/table/TableCaption/TableCaption.types.d.ts +2 -0
- package/dist/components/table/TableCaption/index.d.ts +2 -0
- package/dist/components/table/TableCell/TableCell.d.ts +2 -0
- package/dist/components/table/TableCell/TableCell.js +24 -0
- package/dist/components/table/TableCell/TableCell.js.map +1 -0
- package/dist/components/table/TableCell/TableCell.types.d.ts +2 -0
- package/dist/components/table/TableCell/index.d.ts +2 -0
- package/dist/components/table/TableFooter/TableFooter.d.ts +2 -0
- package/dist/components/table/TableFooter/TableFooter.js +24 -0
- package/dist/components/table/TableFooter/TableFooter.js.map +1 -0
- package/dist/components/table/TableFooter/TableFooter.types.d.ts +2 -0
- package/dist/components/table/TableFooter/index.d.ts +2 -0
- package/dist/components/table/TableHead/TableHead.d.ts +2 -0
- package/dist/components/table/TableHead/TableHead.js +24 -0
- package/dist/components/table/TableHead/TableHead.js.map +1 -0
- package/dist/components/table/TableHead/TableHead.types.d.ts +2 -0
- package/dist/components/table/TableHead/index.d.ts +2 -0
- package/dist/components/table/TableHeader/TableHeader.d.ts +2 -0
- package/dist/components/table/TableHeader/TableHeader.js +24 -0
- package/dist/components/table/TableHeader/TableHeader.js.map +1 -0
- package/dist/components/table/TableHeader/TableHeader.types.d.ts +2 -0
- package/dist/components/table/TableHeader/index.d.ts +2 -0
- package/dist/components/table/TableRow/TableRow.d.ts +2 -0
- package/dist/components/table/TableRow/TableRow.js +24 -0
- package/dist/components/table/TableRow/TableRow.js.map +1 -0
- package/dist/components/table/TableRow/TableRow.types.d.ts +2 -0
- package/dist/components/table/TableRow/index.d.ts +2 -0
- package/dist/components/table/index.d.ts +16 -0
- package/dist/components/table/index.js +9 -0
- package/dist/components/tabs/Tabs/Tabs.context.d.ts +1 -1
- package/dist/components/tabs/Tabs/Tabs.context.js.map +1 -1
- package/dist/components/tabs/Tabs/Tabs.d.ts +1 -1
- package/dist/components/tabs/Tabs/Tabs.js.map +1 -1
- package/dist/components/tabs/Tabs/call-event-handler.js.map +1 -1
- package/dist/components/tabs/Tabs/useTabsKeyboard.js.map +1 -1
- package/dist/components/tabs/TabsContent/TabsContent.js.map +1 -1
- package/dist/components/tabs/TabsList/TabsList.context.js.map +1 -1
- package/dist/components/tabs/TabsList/TabsList.d.ts +1 -1
- package/dist/components/tabs/TabsList/TabsList.js.map +1 -1
- package/dist/components/tabs/TabsList/TabsList.styles.js.map +1 -1
- package/dist/components/tabs/TabsTrigger/TabsTrigger.d.ts +1 -1
- package/dist/components/tabs/TabsTrigger/TabsTrigger.js.map +1 -1
- package/dist/components/tabs/TabsTrigger/TabsTrigger.styles.js.map +1 -1
- package/dist/components/textarea/Textarea.d.ts +1 -1
- package/dist/components/textarea/Textarea.js.map +1 -1
- package/dist/components/time-picker/TimePicker/TimePicker.context.d.ts +29 -0
- package/dist/components/time-picker/TimePicker/TimePicker.context.js +49 -0
- package/dist/components/time-picker/TimePicker/TimePicker.context.js.map +1 -0
- package/dist/components/time-picker/TimePicker/TimePicker.d.ts +23 -0
- package/dist/components/time-picker/TimePicker/TimePicker.js +52 -0
- package/dist/components/time-picker/TimePicker/TimePicker.js.map +1 -0
- package/dist/components/time-picker/TimePicker/TimePicker.types.d.ts +91 -0
- package/dist/components/time-picker/TimePicker/create-change-event-details.d.ts +8 -0
- package/dist/components/time-picker/TimePicker/create-change-event-details.js +25 -0
- package/dist/components/time-picker/TimePicker/create-change-event-details.js.map +1 -0
- package/dist/components/time-picker/TimePicker/index.d.ts +4 -0
- package/dist/components/time-picker/TimePicker/time-picker.utils.d.ts +28 -0
- package/dist/components/time-picker/TimePicker/time-picker.utils.js +103 -0
- package/dist/components/time-picker/TimePicker/time-picker.utils.js.map +1 -0
- package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.d.ts +10 -0
- package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.js +60 -0
- package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.js.map +1 -0
- package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.types.d.ts +8 -0
- package/dist/components/time-picker/TimePickerColumn/index.d.ts +2 -0
- package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.d.ts +16 -0
- package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.js +75 -0
- package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.js.map +1 -0
- package/dist/components/time-picker/TimePickerContent/TimePickerContent.d.ts +7 -0
- package/dist/components/time-picker/TimePickerContent/TimePickerContent.js +48 -0
- package/dist/components/time-picker/TimePickerContent/TimePickerContent.js.map +1 -0
- package/dist/components/time-picker/TimePickerContent/TimePickerContent.types.d.ts +11 -0
- package/dist/components/time-picker/TimePickerContent/index.d.ts +2 -0
- package/dist/components/time-picker/TimePickerOption/TimePickerOption.d.ts +9 -0
- package/dist/components/time-picker/TimePickerOption/TimePickerOption.js +52 -0
- package/dist/components/time-picker/TimePickerOption/TimePickerOption.js.map +1 -0
- package/dist/components/time-picker/TimePickerOption/TimePickerOption.types.d.ts +11 -0
- package/dist/components/time-picker/TimePickerOption/index.d.ts +2 -0
- package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.d.ts +9 -0
- package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.js +37 -0
- package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.js.map +1 -0
- package/dist/components/time-picker/TimePickerTrigger/TimePickerTrigger.types.d.ts +5 -0
- package/dist/components/time-picker/TimePickerTrigger/index.d.ts +2 -0
- package/dist/components/time-picker/index.d.ts +10 -0
- package/dist/components/time-picker/index.js +7 -0
- package/dist/components/toast/Toast/Toast.js.map +1 -1
- package/dist/components/toast/Toast/Toast.styles.js.map +1 -1
- package/dist/components/toast/Toast/Toast.types.js.map +1 -1
- package/dist/components/toast/Toaster/Toaster.js.map +1 -1
- package/dist/components/toast/Toaster/Toaster.styles.js.map +1 -1
- package/dist/components/toast/Toaster/Toaster.utils.js.map +1 -1
- package/dist/components/toast/state/toast.js.map +1 -1
- package/dist/components/toggle/Toggle/Toggle.js.map +1 -1
- package/dist/components/toggle/Toggle/Toggle.styles.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroup/ToggleGroup.context.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroup/ToggleGroup.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroup/ToggleGroup.styles.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroup/create-change-event-details.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.styles.js.map +1 -1
- package/dist/components/toggle-group/call-event-handler.js.map +1 -1
- package/dist/components/tooltip/Tooltip/Tooltip.context.js.map +1 -1
- package/dist/components/tooltip/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/tooltip/TooltipArrow/TooltipArrow.d.ts +1 -1
- package/dist/components/tooltip/TooltipArrow/TooltipArrow.js.map +1 -1
- package/dist/components/tooltip/TooltipContent/TooltipContent.context.js.map +1 -1
- package/dist/components/tooltip/TooltipContent/TooltipContent.d.ts +1 -1
- package/dist/components/tooltip/TooltipContent/TooltipContent.js +1 -1
- package/dist/components/tooltip/TooltipContent/TooltipContent.js.map +1 -1
- package/dist/components/tooltip/TooltipContent/TooltipContent.utils.d.ts +5 -49
- package/dist/components/tooltip/TooltipContent/TooltipContent.utils.js +10 -39
- package/dist/components/tooltip/TooltipContent/TooltipContent.utils.js.map +1 -1
- package/dist/components/tooltip/TooltipContent/useTooltipContent.js +6 -5
- package/dist/components/tooltip/TooltipContent/useTooltipContent.js.map +1 -1
- package/dist/components/tooltip/TooltipGroup/TooltipGroup.context.js.map +1 -1
- package/dist/components/tooltip/TooltipGroup/TooltipGroup.d.ts +1 -1
- package/dist/components/tooltip/TooltipGroup/TooltipGroup.js.map +1 -1
- package/dist/components/tooltip/TooltipProvider/TooltipProvider.context.js.map +1 -1
- package/dist/components/tooltip/TooltipProvider/TooltipProvider.js.map +1 -1
- package/dist/components/tooltip/TooltipTrigger/TooltipTrigger.d.ts +1 -1
- package/dist/components/tooltip/TooltipTrigger/TooltipTrigger.js.map +1 -1
- package/dist/components/tooltip/TooltipTrigger/useTooltipTrigger.js.map +1 -1
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.js +3 -1
- package/dist/hooks/useFontLoader.js.map +1 -1
- package/dist/hooks/useScrollEdges.d.ts +19 -0
- package/dist/hooks/useScrollEdges.js +36 -0
- package/dist/hooks/useScrollEdges.js.map +1 -0
- package/dist/hooks/useScrollLock.d.ts +16 -0
- package/dist/hooks/useScrollLock.js +61 -0
- package/dist/hooks/useScrollLock.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +311 -194
- package/dist/lib/positioner/auto-update.js.map +1 -1
- package/dist/lib/positioner/core/compute-position.js.map +1 -1
- package/dist/lib/positioner/core/placement.js.map +1 -1
- package/dist/lib/positioner/create-positioner.js.map +1 -1
- package/dist/lib/positioner/index.d.ts +1 -0
- package/dist/lib/positioner/middleware/arrow.js.map +1 -1
- package/dist/lib/positioner/middleware/containing-block-offset.js.map +1 -1
- package/dist/lib/positioner/middleware/flip.js.map +1 -1
- package/dist/lib/positioner/middleware/hide.js.map +1 -1
- package/dist/lib/positioner/middleware/offset.js.map +1 -1
- package/dist/lib/positioner/middleware/shift.js.map +1 -1
- package/dist/lib/positioner/middleware/size.js.map +1 -1
- package/dist/lib/positioner/utils/dom.js.map +1 -1
- package/dist/lib/positioner/utils/floating.d.ts +25 -0
- package/dist/lib/positioner/utils/floating.js +42 -0
- package/dist/lib/positioner/utils/floating.js.map +1 -0
- package/dist/lib/positioner/virtual-element.js +18 -0
- package/dist/lib/positioner/virtual-element.js.map +1 -0
- package/dist/ui.css +1 -1
- package/dist/utils/clsx.js.map +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/ref.js.map +1 -1
- package/dist/utils/warn-once.js.map +1 -1
- package/package.json +6 -6
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.d.ts +0 -10
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.js +0 -11
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.context.js.map +0 -1
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.d.ts +0 -8
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.js +0 -11
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.context.js.map +0 -1
- package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.d.ts +0 -2
- package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.js +0 -6
- package/dist/components/alert-dialog/AlertDialogOverlay/AlertDialogOverlay.styles.js.map +0 -1
- package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.d.ts +0 -2
- package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.js +0 -26
- package/dist/components/alert-dialog/AlertDialogTrigger/useAlertDialogTrigger.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.js","names":["Show","JSX","createEffect","createMemo","createSignal","onCleanup","onMount","splitProps","CircleCheck","CircleX","Info","LoaderCircle","TriangleAlert","X","clsx","toastIconVariants","toastVariants","isAction","ToastIcons","ToastProps","ToastT","ToastTypes","TOAST_LIFETIME","EXIT_ANIMATION_MS","getDefaultIcon","type","_$createComponent","undefined","resolveContent","value","Toast","props","local","animationState","setAnimationState","toast","toastType","richColors","defaultRichColors","dismissible","isBusy","raf","requestAnimationFrame","cancelAnimationFrame","close","onDismiss","setTimeout","onRemove","id","delete","current","duration","Infinity","delay","timer","onAutoClose","clearTimeout","icon","icons","isFront","index","yPosition","position","startsWith","collapsedTransform","lift","scale","Math","max","gap","toastStyle","style","total","expanded","transform","CSSProperties","slideInClass","slideOutClass","animationClasses","_el$","_tmpl$","_$insert","when","jsx","fallback","children","_el$2","_tmpl$2","_$effect","_$className","classes","_el$3","_tmpl$4","_el$4","firstChild","title","description","_el$5","_tmpl$3","descriptionClass","_p$","_v$7","content","_v$8","e","t","_$memo","action","_el$6","_tmpl$5","$$click","onClick","defaultPrevented","Extract","label","actionButton","cancel","_el$7","_tmpl$6","cancelButton","Element","closeButton","_el$8","_tmpl$7","_v$9","closeButtonAriaLabel","_v$0","_$setAttribute","_v$","_v$2","_v$3","_v$4","testId","_v$5","class","_v$6","a","o","i","n","_$style","_$delegateEvents"],"sources":["../../../../src/components/toast/Toast/Toast.tsx"],"sourcesContent":["import {\n Show,\n type JSX,\n createEffect,\n createMemo,\n createSignal,\n onCleanup,\n onMount,\n splitProps,\n} from \"solid-js\";\nimport {\n CircleCheck,\n CircleX,\n Info,\n LoaderCircle,\n TriangleAlert,\n X,\n} from \"lucide-solid\";\nimport { clsx } from \"~/utils\";\nimport { toastIconVariants, toastVariants } from \"./Toast.styles\";\nimport {\n isAction,\n type ToastIcons,\n type ToastProps,\n type ToastT,\n type ToastTypes,\n} from \"./Toast.types\";\n\nconst TOAST_LIFETIME = 4000;\nconst EXIT_ANIMATION_MS = 200;\n\nfunction getDefaultIcon(type: ToastTypes) {\n switch (type) {\n case \"success\":\n return <CircleCheck />;\n case \"info\":\n return <Info />;\n case \"warning\":\n return <TriangleAlert />;\n case \"error\":\n return <CircleX />;\n case \"loading\":\n return <LoaderCircle class=\"animate-spin\" />;\n default:\n return undefined;\n }\n}\n\nfunction resolveContent(value: ToastT[\"title\"]) {\n return typeof value === \"function\" ? value() : value;\n}\n\nexport function Toast(props: ToastProps) {\n const [local] = splitProps(props, [\n \"toast\",\n \"closeButton\",\n \"duration\",\n \"class\",\n \"icons\",\n \"closeButtonAriaLabel\",\n \"defaultRichColors\",\n \"onRemove\",\n \"index\",\n \"total\",\n \"expanded\",\n \"position\",\n \"gap\",\n ]);\n\n const [animationState, setAnimationState] = createSignal<\"open\" | \"closed\">(\n \"closed\",\n );\n\n const toast = () => local.toast;\n const toastType = createMemo(() => toast().type ?? \"default\");\n const richColors = createMemo(\n () => toast().richColors ?? local.defaultRichColors ?? false,\n );\n const dismissible = createMemo(() => toast().dismissible !== false);\n const isBusy = createMemo(() => toastType() === \"loading\");\n\n onMount(() => {\n const raf = requestAnimationFrame(() => setAnimationState(\"open\"));\n onCleanup(() => cancelAnimationFrame(raf));\n });\n\n const close = () => {\n if (animationState() !== \"open\") return;\n setAnimationState(\"closed\");\n toast().onDismiss?.(toast());\n setTimeout(() => local.onRemove(toast().id), EXIT_ANIMATION_MS);\n };\n\n // 外部 dismiss:把 delete 标记转换成退场动画\n createEffect(() => {\n if (toast().delete && animationState() === \"open\") {\n close();\n }\n });\n\n // 自动关闭计时器\n createEffect(() => {\n const current = toast();\n if (\n current.delete ||\n current.type === \"loading\" ||\n current.duration === Infinity ||\n current.duration === 0\n ) {\n return;\n }\n\n const delay = current.duration ?? local.duration ?? TOAST_LIFETIME;\n const timer = setTimeout(() => {\n current.onAutoClose?.(current);\n close();\n }, delay);\n\n onCleanup(() => clearTimeout(timer));\n });\n\n const icon = () => {\n if (toast().icon !== undefined) return toast().icon;\n return (\n local.icons?.[toastType() as keyof ToastIcons] ??\n getDefaultIcon(toastType())\n );\n };\n\n const isFront = () => local.index === 0;\n const yPosition = () => (local.position.startsWith(\"top\") ? \"top\" : \"bottom\");\n\n const collapsedTransform = () => {\n if (isFront()) return undefined;\n const lift = yPosition() === \"bottom\" ? -1 : 1;\n const scale = Math.max(0.8, 1 - local.index * 0.05);\n return `translateY(calc(${lift * local.gap * local.index}px)) scale(${scale})`;\n };\n\n const toastStyle = () =>\n ({\n ...toast().style,\n \"z-index\": local.total - local.index,\n ...(local.expanded\n ? {}\n : {\n \"grid-area\": \"1 / 1\",\n \"align-self\": yPosition() === \"bottom\" ? \"end\" : \"start\",\n transform: collapsedTransform(),\n \"pointer-events\": isFront() ? \"auto\" : \"none\",\n }),\n }) as JSX.CSSProperties;\n\n const slideInClass = () =>\n yPosition() === \"bottom\"\n ? \"data-[state=open]:slide-in-from-bottom-2\"\n : \"data-[state=open]:slide-in-from-top-2\";\n\n const slideOutClass = () =>\n yPosition() === \"bottom\"\n ? \"data-[state=closed]:slide-out-to-bottom\"\n : \"data-[state=closed]:slide-out-to-top\";\n\n const animationClasses = () =>\n isFront() || local.expanded\n ? `${slideInClass()} ${slideOutClass()} data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:fill-mode-both data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:fill-mode-both`\n : \"\";\n\n return (\n <li\n data-slot=\"toast\"\n data-type={toastType()}\n data-state={animationState()}\n data-rich-colors={richColors()}\n data-testid={toast().testId}\n class={clsx(\n toastVariants({ type: toastType() }),\n local.closeButton && \"pr-8\",\n animationClasses(),\n local.class,\n toast().class,\n toast().classes?.toast,\n toast().classes?.[toastType()],\n )}\n style={toastStyle()}\n >\n <Show\n when={toast().jsx}\n fallback={\n <>\n <Show when={icon()}>\n <div\n data-slot=\"toast-icon\"\n class={clsx(\n toastIconVariants({ type: toastType() }),\n toast().classes?.icon,\n )}\n >\n {icon()}\n </div>\n </Show>\n\n <div\n data-slot=\"toast-content\"\n class={clsx(\n \"flex min-w-0 flex-1 flex-col gap-0.5\",\n toast().classes?.content,\n )}\n >\n <div\n data-slot=\"toast-title\"\n class={clsx(\n \"text-sm font-medium leading-snug\",\n toast().classes?.title,\n )}\n >\n {resolveContent(toast().title)}\n </div>\n <Show when={toast().description}>\n <div\n data-slot=\"toast-description\"\n class={clsx(\n \"text-sm leading-relaxed text-muted-foreground\",\n toast().descriptionClass,\n toast().classes?.description,\n )}\n >\n {resolveContent(toast().description)}\n </div>\n </Show>\n </div>\n\n <Show when={toast().action && isAction(toast().action)}>\n <button\n type=\"button\"\n data-slot=\"toast-action\"\n class={clsx(\n \"shrink-0 rounded-md bg-foreground px-2.5 py-1 text-xs font-medium text-background outline-none transition-colors hover:bg-foreground/80\",\n toast().classes?.actionButton,\n )}\n onClick={(e) => {\n const action = toast().action;\n if (!isAction(action)) return;\n action.onClick?.(e);\n if (!e.defaultPrevented) close();\n }}\n >\n {\n (\n toast().action as Extract<\n ToastT[\"action\"],\n { label: unknown }\n >\n ).label\n }\n </button>\n </Show>\n\n <Show when={toast().cancel && isAction(toast().cancel)}>\n <button\n type=\"button\"\n data-slot=\"toast-cancel\"\n class={clsx(\n \"shrink-0 rounded-md bg-foreground/10 px-2.5 py-1 text-xs font-medium text-foreground outline-none transition-colors hover:bg-foreground/15\",\n toast().classes?.cancelButton,\n )}\n onClick={(e) => {\n const cancel = toast().cancel;\n if (!isAction(cancel)) return;\n cancel.onClick?.(e);\n if (!e.defaultPrevented) close();\n }}\n >\n {\n (\n toast().cancel as Extract<\n ToastT[\"action\"],\n { label: unknown }\n >\n ).label\n }\n </button>\n </Show>\n\n <Show when={toast().action && !isAction(toast().action)}>\n {toast().action as JSX.Element}\n </Show>\n <Show when={toast().cancel && !isAction(toast().cancel)}>\n {toast().cancel as JSX.Element}\n </Show>\n\n <Show when={local.closeButton && dismissible() && !isBusy()}>\n <button\n type=\"button\"\n data-slot=\"toast-close\"\n aria-label={local.closeButtonAriaLabel ?? \"Close toast\"}\n class={clsx(\n \"absolute top-2.5 right-2.5 flex size-5 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:text-foreground\",\n toast().classes?.closeButton,\n )}\n onClick={close}\n >\n <X class=\"size-3.5\" />\n </button>\n </Show>\n </>\n }\n >\n {toast().jsx}\n </Show>\n </li>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Toast.js","names":["Show","JSX","createEffect","createMemo","createSignal","onCleanup","onMount","splitProps","CircleCheck","CircleX","Info","LoaderCircle","TriangleAlert","X","clsx","toastIconVariants","toastVariants","isAction","ToastIcons","ToastProps","ToastT","ToastTypes","TOAST_LIFETIME","EXIT_ANIMATION_MS","getDefaultIcon","type","_$createComponent","undefined","resolveContent","value","Toast","props","local","animationState","setAnimationState","toast","toastType","richColors","defaultRichColors","dismissible","isBusy","raf","requestAnimationFrame","cancelAnimationFrame","close","onDismiss","setTimeout","onRemove","id","delete","current","duration","Infinity","delay","timer","onAutoClose","clearTimeout","icon","icons","isFront","index","yPosition","position","startsWith","collapsedTransform","lift","scale","Math","max","gap","toastStyle","style","total","expanded","transform","CSSProperties","slideInClass","slideOutClass","animationClasses","_el$","_tmpl$","_$insert","when","jsx","fallback","children","_el$2","_tmpl$2","_$effect","_$className","classes","_el$3","_tmpl$4","_el$4","firstChild","title","description","_el$5","_tmpl$3","descriptionClass","_p$","_v$7","content","_v$8","e","t","_$memo","action","_el$6","_tmpl$5","$$click","onClick","defaultPrevented","Extract","label","actionButton","cancel","_el$7","_tmpl$6","cancelButton","Element","closeButton","_el$8","_tmpl$7","_v$9","closeButtonAriaLabel","_v$0","_$setAttribute","_v$","_v$2","_v$3","_v$4","testId","_v$5","class","_v$6","a","o","i","n","_$style","_$delegateEvents","_$createComponent","_$className","_$memo","_$setAttribute","_$style","_$delegateEvents","_tmpl$","_tmpl$2","_tmpl$3","_tmpl$4","_tmpl$5","_tmpl$6","_tmpl$7","TOAST_LIFETIME","EXIT_ANIMATION_MS","getDefaultIcon","type","createComponent","CircleCheck","Info","TriangleAlert","CircleX","LoaderCircle","\"class\"","resolveContent","value","Toast","local","splitProps","props","animationState","setAnimationState","createSignal","toast","toastType","createMemo","richColors","dismissible","isBusy","raf","close","createEffect","current","delay","timer","icon","isFront","yPosition","collapsedTransform","lift","scale","toastStyle","slideInClass","slideOutClass","animationClasses","_el$","insert","Show","_el$2","effect","className","clsx","toastIconVariants","_el$3","_el$4","_el$5","_v$7","_v$8","_p$","memo","isAction","_el$6","action","_el$7","cancel","_el$8","X","_v$9","_v$0","setAttribute","_v$","_v$2","_v$3","_v$4","_v$5","toastVariants","_v$6","style","delegateEvents"],"sources":["../../../../src/components/toast/Toast/Toast.tsx"],"sourcesContent":["import {\n Show,\n type JSX,\n createEffect,\n createMemo,\n createSignal,\n onCleanup,\n onMount,\n splitProps,\n} from \"solid-js\";\nimport {\n CircleCheck,\n CircleX,\n Info,\n LoaderCircle,\n TriangleAlert,\n X,\n} from \"lucide-solid\";\nimport { clsx } from \"~/utils\";\nimport { toastIconVariants, toastVariants } from \"./Toast.styles\";\nimport {\n isAction,\n type ToastIcons,\n type ToastProps,\n type ToastT,\n type ToastTypes,\n} from \"./Toast.types\";\n\nconst TOAST_LIFETIME = 4000;\nconst EXIT_ANIMATION_MS = 200;\n\nfunction getDefaultIcon(type: ToastTypes) {\n switch (type) {\n case \"success\":\n return <CircleCheck />;\n case \"info\":\n return <Info />;\n case \"warning\":\n return <TriangleAlert />;\n case \"error\":\n return <CircleX />;\n case \"loading\":\n return <LoaderCircle class=\"animate-spin\" />;\n default:\n return undefined;\n }\n}\n\nfunction resolveContent(value: ToastT[\"title\"]) {\n return typeof value === \"function\" ? value() : value;\n}\n\nexport function Toast(props: ToastProps) {\n const [local] = splitProps(props, [\n \"toast\",\n \"closeButton\",\n \"duration\",\n \"class\",\n \"icons\",\n \"closeButtonAriaLabel\",\n \"defaultRichColors\",\n \"onRemove\",\n \"index\",\n \"total\",\n \"expanded\",\n \"position\",\n \"gap\",\n ]);\n\n const [animationState, setAnimationState] = createSignal<\"open\" | \"closed\">(\n \"closed\",\n );\n\n const toast = () => local.toast;\n const toastType = createMemo(() => toast().type ?? \"default\");\n const richColors = createMemo(\n () => toast().richColors ?? local.defaultRichColors ?? false,\n );\n const dismissible = createMemo(() => toast().dismissible !== false);\n const isBusy = createMemo(() => toastType() === \"loading\");\n\n onMount(() => {\n const raf = requestAnimationFrame(() => setAnimationState(\"open\"));\n onCleanup(() => cancelAnimationFrame(raf));\n });\n\n const close = () => {\n if (animationState() !== \"open\") return;\n setAnimationState(\"closed\");\n toast().onDismiss?.(toast());\n setTimeout(() => local.onRemove(toast().id), EXIT_ANIMATION_MS);\n };\n\n // 外部 dismiss:把 delete 标记转换成退场动画\n createEffect(() => {\n if (toast().delete && animationState() === \"open\") {\n close();\n }\n });\n\n // 自动关闭计时器\n createEffect(() => {\n const current = toast();\n if (\n current.delete ||\n current.type === \"loading\" ||\n current.duration === Infinity ||\n current.duration === 0\n ) {\n return;\n }\n\n const delay = current.duration ?? local.duration ?? TOAST_LIFETIME;\n const timer = setTimeout(() => {\n current.onAutoClose?.(current);\n close();\n }, delay);\n\n onCleanup(() => clearTimeout(timer));\n });\n\n const icon = () => {\n if (toast().icon !== undefined) return toast().icon;\n return (\n local.icons?.[toastType() as keyof ToastIcons] ??\n getDefaultIcon(toastType())\n );\n };\n\n const isFront = () => local.index === 0;\n const yPosition = () => (local.position.startsWith(\"top\") ? \"top\" : \"bottom\");\n\n const collapsedTransform = () => {\n if (isFront()) return undefined;\n const lift = yPosition() === \"bottom\" ? -1 : 1;\n const scale = Math.max(0.8, 1 - local.index * 0.05);\n return `translateY(calc(${lift * local.gap * local.index}px)) scale(${scale})`;\n };\n\n const toastStyle = () =>\n ({\n ...toast().style,\n \"z-index\": local.total - local.index,\n ...(local.expanded\n ? {}\n : {\n \"grid-area\": \"1 / 1\",\n \"align-self\": yPosition() === \"bottom\" ? \"end\" : \"start\",\n transform: collapsedTransform(),\n \"pointer-events\": isFront() ? \"auto\" : \"none\",\n }),\n }) as JSX.CSSProperties;\n\n const slideInClass = () =>\n yPosition() === \"bottom\"\n ? \"data-[state=open]:slide-in-from-bottom-2\"\n : \"data-[state=open]:slide-in-from-top-2\";\n\n const slideOutClass = () =>\n yPosition() === \"bottom\"\n ? \"data-[state=closed]:slide-out-to-bottom\"\n : \"data-[state=closed]:slide-out-to-top\";\n\n const animationClasses = () =>\n isFront() || local.expanded\n ? `${slideInClass()} ${slideOutClass()} data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:fill-mode-both data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:fill-mode-both`\n : \"\";\n\n return (\n <li\n data-slot=\"toast\"\n data-type={toastType()}\n data-state={animationState()}\n data-rich-colors={richColors()}\n data-testid={toast().testId}\n class={clsx(\n toastVariants({ type: toastType() }),\n local.closeButton && \"pr-8\",\n animationClasses(),\n local.class,\n toast().class,\n toast().classes?.toast,\n toast().classes?.[toastType()],\n )}\n style={toastStyle()}\n >\n <Show\n when={toast().jsx}\n fallback={\n <>\n <Show when={icon()}>\n <div\n data-slot=\"toast-icon\"\n class={clsx(\n toastIconVariants({ type: toastType() }),\n toast().classes?.icon,\n )}\n >\n {icon()}\n </div>\n </Show>\n\n <div\n data-slot=\"toast-content\"\n class={clsx(\n \"flex min-w-0 flex-1 flex-col gap-0.5\",\n toast().classes?.content,\n )}\n >\n <div\n data-slot=\"toast-title\"\n class={clsx(\n \"text-sm font-medium leading-snug\",\n toast().classes?.title,\n )}\n >\n {resolveContent(toast().title)}\n </div>\n <Show when={toast().description}>\n <div\n data-slot=\"toast-description\"\n class={clsx(\n \"text-sm leading-relaxed text-muted-foreground\",\n toast().descriptionClass,\n toast().classes?.description,\n )}\n >\n {resolveContent(toast().description)}\n </div>\n </Show>\n </div>\n\n <Show when={toast().action && isAction(toast().action)}>\n <button\n type=\"button\"\n data-slot=\"toast-action\"\n class={clsx(\n \"shrink-0 rounded-md bg-foreground px-2.5 py-1 text-xs font-medium text-background outline-none transition-colors hover:bg-foreground/80\",\n toast().classes?.actionButton,\n )}\n onClick={(e) => {\n const action = toast().action;\n if (!isAction(action)) return;\n action.onClick?.(e);\n if (!e.defaultPrevented) close();\n }}\n >\n {\n (\n toast().action as Extract<\n ToastT[\"action\"],\n { label: unknown }\n >\n ).label\n }\n </button>\n </Show>\n\n <Show when={toast().cancel && isAction(toast().cancel)}>\n <button\n type=\"button\"\n data-slot=\"toast-cancel\"\n class={clsx(\n \"shrink-0 rounded-md bg-foreground/10 px-2.5 py-1 text-xs font-medium text-foreground outline-none transition-colors hover:bg-foreground/15\",\n toast().classes?.cancelButton,\n )}\n onClick={(e) => {\n const cancel = toast().cancel;\n if (!isAction(cancel)) return;\n cancel.onClick?.(e);\n if (!e.defaultPrevented) close();\n }}\n >\n {\n (\n toast().cancel as Extract<\n ToastT[\"action\"],\n { label: unknown }\n >\n ).label\n }\n </button>\n </Show>\n\n <Show when={toast().action && !isAction(toast().action)}>\n {toast().action as JSX.Element}\n </Show>\n <Show when={toast().cancel && !isAction(toast().cancel)}>\n {toast().cancel as JSX.Element}\n </Show>\n\n <Show when={local.closeButton && dismissible() && !isBusy()}>\n <button\n type=\"button\"\n data-slot=\"toast-close\"\n aria-label={local.closeButtonAriaLabel ?? \"Close toast\"}\n class={clsx(\n \"absolute top-2.5 right-2.5 flex size-5 shrink-0 items-center justify-center rounded-full text-muted-foreground transition-colors hover:text-foreground\",\n toast().classes?.closeButton,\n )}\n onClick={close}\n >\n <X class=\"size-3.5\" />\n </button>\n </Show>\n </>\n }\n >\n {toast().jsx}\n </Show>\n </li>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.styles.js","names":[],"sources":["../../../../src/components/toast/Toast/Toast.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const toastVariants = cva(\n \"pointer-events-auto relative flex w-full items-center gap-2.5 rounded-lg border bg-popover p-4 text-sm text-popover-foreground shadow-md outline-none\",\n {\n variants: {\n type: {\n default: \"border-border\",\n success: \"border-emerald-500/60\",\n info: \"border-blue-500/60\",\n warning: \"border-amber-500/60\",\n error: \"border-red-500/60\",\n loading: \"border-border\",\n },\n },\n defaultVariants: {\n type: \"default\",\n },\n },\n);\n\nexport const toastIconVariants = cva(\n \"flex size-5 shrink-0 items-center justify-center\",\n {\n variants: {\n type: {\n default: \"text-muted-foreground\",\n success: \"text-emerald-500\",\n info: \"text-blue-500\",\n warning: \"text-amber-500\",\n error: \"text-red-500\",\n loading: \"text-muted-foreground\",\n },\n },\n defaultVariants: {\n type: \"default\",\n },\n },\n);\n"],"mappings":";;AAEA,
|
|
1
|
+
{"version":3,"file":"Toast.styles.js","names":["toastVariants","cva","toastIconVariants"],"sources":["../../../../src/components/toast/Toast/Toast.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const toastVariants = cva(\n \"pointer-events-auto relative flex w-full items-center gap-2.5 rounded-lg border bg-popover p-4 text-sm text-popover-foreground shadow-md outline-none\",\n {\n variants: {\n type: {\n default: \"border-border\",\n success: \"border-emerald-500/60\",\n info: \"border-blue-500/60\",\n warning: \"border-amber-500/60\",\n error: \"border-red-500/60\",\n loading: \"border-border\",\n },\n },\n defaultVariants: {\n type: \"default\",\n },\n },\n);\n\nexport const toastIconVariants = cva(\n \"flex size-5 shrink-0 items-center justify-center\",\n {\n variants: {\n type: {\n default: \"text-muted-foreground\",\n success: \"text-emerald-500\",\n info: \"text-blue-500\",\n warning: \"text-amber-500\",\n error: \"text-red-500\",\n loading: \"text-muted-foreground\",\n },\n },\n defaultVariants: {\n type: \"default\",\n },\n },\n);\n"],"mappings":";;AAEA,IAAaA,IAAgBC,EAC3B,yJACA;CACE,UAAU,EACR,MAAM;EACJ,SAAS;EACT,SAAS;EACT,MAAM;EACN,SAAS;EACT,OAAO;EACP,SAAS;CACX,EACF;CACA,iBAAiB,EACf,MAAM,UACR;AACF,CACF,GAEaC,IAAoBD,EAC/B,oDACA;CACE,UAAU,EACR,MAAM;EACJ,SAAS;EACT,SAAS;EACT,MAAM;EACN,SAAS;EACT,OAAO;EACP,SAAS;CACX,EACF;CACA,iBAAiB,EACf,MAAM,UACR;AACF,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.types.js","names":[],"sources":["../../../../src/components/toast/Toast/Toast.types.ts"],"sourcesContent":["import type { JSX, JSXElement } from \"solid-js\";\n\nexport type ToastTypes =\n | \"success\"\n | \"info\"\n | \"warning\"\n | \"error\"\n | \"loading\"\n | \"default\";\n\nexport type Position =\n | \"top-left\"\n | \"top-right\"\n | \"bottom-left\"\n | \"bottom-right\"\n | \"top-center\"\n | \"bottom-center\";\n\nexport type Theme = \"light\" | \"dark\";\nexport type SwipeDirection = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nexport interface Action {\n label: JSXElement;\n onClick: JSX.EventHandler<HTMLButtonElement, MouseEvent>;\n actionButtonStyle?: JSX.CSSProperties;\n}\n\nexport interface ToastIcons {\n success?: JSXElement;\n info?: JSXElement;\n warning?: JSXElement;\n error?: JSXElement;\n loading?: JSXElement;\n close?: JSXElement;\n}\n\nexport interface ToastClassnames {\n toast?: string;\n title?: string;\n description?: string;\n loader?: string;\n cancelButton?: string;\n actionButton?: string;\n closeButton?: string;\n success?: string;\n error?: string;\n info?: string;\n warning?: string;\n loading?: string;\n default?: string;\n content?: string;\n icon?: string;\n}\n\nexport type PromiseT<Data = any> = Promise<Data> | (() => Promise<Data>);\n\nexport type PromiseTResult<Data = any> =\n | string\n | JSXElement\n | ((data: Data) => JSXElement | string | Promise<JSXElement | string>);\n\nexport interface PromiseData<ToastData = any> {\n loading?: string | JSXElement;\n success?: PromiseTResult<ToastData>;\n error?: PromiseTResult;\n description?: PromiseTResult;\n finally?: () => void | Promise<void>;\n}\n\nexport interface ToastT {\n id: string;\n toasterId?: string;\n title?: JSXElement | (() => JSXElement);\n description?: JSXElement | (() => JSXElement);\n type?: ToastTypes;\n icon?: JSXElement;\n jsx?: JSXElement;\n richColors?: boolean;\n invert?: boolean;\n closeButton?: boolean;\n dismissible?: boolean;\n duration?: number;\n delete?: boolean;\n action?: Action | JSXElement;\n cancel?: Action | JSXElement;\n onDismiss?: (toast: ToastT) => void;\n onAutoClose?: (toast: ToastT) => void;\n promise?: PromiseT;\n style?: JSX.CSSProperties;\n class?: string;\n classes?: ToastClassnames;\n descriptionClass?: string;\n position?: Position;\n testId?: string;\n}\n\nexport type ExternalToast = Omit<\n ToastT,\n \"id\" | \"type\" | \"title\" | \"jsx\" | \"delete\" | \"promise\"\n> & {\n id?: string;\n toasterId?: string;\n};\n\nexport interface ToastProps {\n toast: ToastT;\n closeButton: boolean;\n duration?: number;\n class?: string;\n icons?: ToastIcons;\n closeButtonAriaLabel?: string;\n defaultRichColors?: boolean;\n onRemove: (id: string) => void;\n index: number;\n total: number;\n expanded: boolean;\n position: Position;\n gap: number;\n}\n\nexport const isAction = (action: Action | JSXElement): action is Action => {\n return (action as Action)?.label !== undefined;\n};\n"],"mappings":";AAwHA,
|
|
1
|
+
{"version":3,"file":"Toast.types.js","names":["isAction","action"],"sources":["../../../../src/components/toast/Toast/Toast.types.ts"],"sourcesContent":["import type { JSX, JSXElement } from \"solid-js\";\n\nexport type ToastTypes =\n | \"success\"\n | \"info\"\n | \"warning\"\n | \"error\"\n | \"loading\"\n | \"default\";\n\nexport type Position =\n | \"top-left\"\n | \"top-right\"\n | \"bottom-left\"\n | \"bottom-right\"\n | \"top-center\"\n | \"bottom-center\";\n\nexport type Theme = \"light\" | \"dark\";\nexport type SwipeDirection = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nexport interface Action {\n label: JSXElement;\n onClick: JSX.EventHandler<HTMLButtonElement, MouseEvent>;\n actionButtonStyle?: JSX.CSSProperties;\n}\n\nexport interface ToastIcons {\n success?: JSXElement;\n info?: JSXElement;\n warning?: JSXElement;\n error?: JSXElement;\n loading?: JSXElement;\n close?: JSXElement;\n}\n\nexport interface ToastClassnames {\n toast?: string;\n title?: string;\n description?: string;\n loader?: string;\n cancelButton?: string;\n actionButton?: string;\n closeButton?: string;\n success?: string;\n error?: string;\n info?: string;\n warning?: string;\n loading?: string;\n default?: string;\n content?: string;\n icon?: string;\n}\n\nexport type PromiseT<Data = any> = Promise<Data> | (() => Promise<Data>);\n\nexport type PromiseTResult<Data = any> =\n | string\n | JSXElement\n | ((data: Data) => JSXElement | string | Promise<JSXElement | string>);\n\nexport interface PromiseData<ToastData = any> {\n loading?: string | JSXElement;\n success?: PromiseTResult<ToastData>;\n error?: PromiseTResult;\n description?: PromiseTResult;\n finally?: () => void | Promise<void>;\n}\n\nexport interface ToastT {\n id: string;\n toasterId?: string;\n title?: JSXElement | (() => JSXElement);\n description?: JSXElement | (() => JSXElement);\n type?: ToastTypes;\n icon?: JSXElement;\n jsx?: JSXElement;\n richColors?: boolean;\n invert?: boolean;\n closeButton?: boolean;\n dismissible?: boolean;\n duration?: number;\n delete?: boolean;\n action?: Action | JSXElement;\n cancel?: Action | JSXElement;\n onDismiss?: (toast: ToastT) => void;\n onAutoClose?: (toast: ToastT) => void;\n promise?: PromiseT;\n style?: JSX.CSSProperties;\n class?: string;\n classes?: ToastClassnames;\n descriptionClass?: string;\n position?: Position;\n testId?: string;\n}\n\nexport type ExternalToast = Omit<\n ToastT,\n \"id\" | \"type\" | \"title\" | \"jsx\" | \"delete\" | \"promise\"\n> & {\n id?: string;\n toasterId?: string;\n};\n\nexport interface ToastProps {\n toast: ToastT;\n closeButton: boolean;\n duration?: number;\n class?: string;\n icons?: ToastIcons;\n closeButtonAriaLabel?: string;\n defaultRichColors?: boolean;\n onRemove: (id: string) => void;\n index: number;\n total: number;\n expanded: boolean;\n position: Position;\n gap: number;\n}\n\nexport const isAction = (action: Action | JSXElement): action is Action => {\n return (action as Action)?.label !== undefined;\n};\n"],"mappings":";AAwHA,IAAaA,KAAY,MACfC,GAAmB,UAAU,KAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toaster.js","names":["For","createMemo","createSignal","mergeProps","onCleanup","onMount","Show","Component","Portal","clsx","Toast","Position","ToastT","removeToast","useSonner","ToasterProps","toasterContainerClass","getDocumentDirection","getPositionClass","resolveOffsetStyle","Toaster","props","merged","position","gap","visibleToasts","dir","containerAriaLabel","hotkey","const","toasts","expanded","setExpanded","filteredToasts","id","filter","toast","toasterId","possiblePositions","Array","from","Set","concat","map","toastsForPosition","visibleToastsForPosition","list","expand","slice","onKeyDown","e","KeyboardEvent","hotkeyPressed","length","every","key","code","document","addEventListener","removeEventListener","offsetStyle","offset","mobileOffset","_$createComponent","children","_el$","_tmpl$","_$insert","each","when","_el$2","_tmpl$2","_$setAttribute","index","total","closeButton","toastOptions","duration","class","icons","closeButtonAriaLabel","defaultRichColors","richColors","onRemove","_$effect","_p$","_v$","customAriaLabel","_v$2","startsWith","_v$3","style","Record","t","_$className","a","_$style","undefined"],"sources":["../../../../src/components/toast/Toaster/Toaster.tsx"],"sourcesContent":["import {\n For,\n createMemo,\n createSignal,\n mergeProps,\n onCleanup,\n onMount,\n Show,\n type Component,\n} from \"solid-js\";\nimport { Portal } from \"solid-js/web\";\nimport { clsx } from \"~/utils\";\nimport { Toast } from \"../Toast\";\nimport type { Position, ToastT } from \"../Toast/Toast.types\";\nimport { removeToast, useSonner } from \"../state/toast\";\nimport type { ToasterProps } from \"./Toaster.types\";\nimport { toasterContainerClass } from \"./Toaster.styles\";\nimport {\n getDocumentDirection,\n getPositionClass,\n resolveOffsetStyle,\n} from \"./Toaster.utils\";\n\nexport const Toaster: Component<ToasterProps> = (props) => {\n const merged = mergeProps(\n {\n position: \"bottom-right\",\n gap: 14,\n visibleToasts: 3,\n dir: getDocumentDirection(),\n containerAriaLabel: \"Notifications\",\n hotkey: [\"altKey\", \"KeyT\"] as string[],\n } as const,\n props,\n );\n\n const { toasts } = useSonner();\n const [expanded, setExpanded] = createSignal(false);\n\n const filteredToasts = createMemo(() => {\n const id = merged.id;\n return id\n ? toasts.filter((toast) => toast.toasterId === id)\n : toasts.filter((toast) => !toast.toasterId);\n });\n\n const possiblePositions = createMemo(() =>\n Array.from(\n new Set(\n [merged.position].concat(\n filteredToasts()\n .filter((toast) => toast.position)\n .map((toast) => toast.position as Position),\n ),\n ),\n ),\n );\n\n const toastsForPosition = (position: Position) =>\n filteredToasts().filter((toast) => {\n if (toast.position) return toast.position === position;\n return position === merged.position;\n });\n\n const visibleToastsForPosition = (position: Position) => {\n const list = toastsForPosition(position);\n if (merged.expand) return list;\n return list.slice(0, merged.visibleToasts);\n };\n\n onMount(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const hotkeyPressed =\n merged.hotkey.length > 0 &&\n merged.hotkey.every((key) => (e as any)[key] || e.code === key);\n if (hotkeyPressed) setExpanded(true);\n if (e.code === \"Escape\") setExpanded(false);\n };\n document.addEventListener(\"keydown\", onKeyDown);\n onCleanup(() => document.removeEventListener(\"keydown\", onKeyDown));\n });\n\n const offsetStyle = (position: Position) =>\n resolveOffsetStyle(position, merged.offset, merged.mobileOffset);\n\n return (\n <Portal>\n <div\n data-slot=\"toaster\"\n dir={merged.dir === \"auto\" ? getDocumentDirection() : merged.dir}\n >\n <For each={possiblePositions()}>\n {(position) => (\n <Show when={visibleToastsForPosition(position).length > 0}>\n <ol\n data-slot=\"toaster-viewport\"\n data-position={position}\n aria-live=\"polite\"\n aria-relevant=\"additions text\"\n aria-atomic=\"false\"\n aria-label={merged.customAriaLabel ?? merged.containerAriaLabel}\n tabIndex={-1}\n class={clsx(\n toasterContainerClass,\n getPositionClass(position),\n expanded()\n ? position.startsWith(\"top\")\n ? \"flex flex-col\"\n : \"flex flex-col-reverse\"\n : \"grid\",\n )}\n style={{\n gap: `${merged.gap}px`,\n ...offsetStyle(position),\n ...(merged.style as Record<string, string | number>),\n }}\n onMouseEnter={() => setExpanded(true)}\n onMouseLeave={() => setExpanded(false)}\n >\n <For each={visibleToastsForPosition(position)}>\n {(toast: ToastT, index) => (\n <Toast\n toast={toast}\n index={index()}\n total={visibleToastsForPosition(position).length}\n expanded={expanded()}\n position={position}\n gap={merged.gap}\n closeButton={\n toast.closeButton ??\n merged.toastOptions?.closeButton ??\n merged.closeButton ??\n false\n }\n duration={\n merged.toastOptions?.duration ?? merged.duration\n }\n class={merged.toastOptions?.class}\n icons={merged.icons}\n closeButtonAriaLabel={\n merged.toastOptions?.closeButtonAriaLabel\n }\n defaultRichColors={merged.richColors}\n onRemove={removeToast}\n />\n )}\n </For>\n </ol>\n </Show>\n )}\n </For>\n </div>\n </Portal>\n );\n};\n"],"mappings":";;;;;;;;2LAuBaoB,KAAoCC,MAAU;CACzD,IAAMC,IAASnB,EACb;EACEoB,UAAU;EACVC,KAAK;EACLC,eAAe;EACfC,KAAKT,EAAqB;EAC1BU,oBAAoB;EACpBC,QAAQ,CAAC,UAAU,MAAM;CAC3B,GACAP,CACF,GAEM,EAAES,cAAWhB,EAAU,GACvB,CAACiB,GAAUC,KAAe9B,EAAa,EAAK,GAE5C+B,IAAiBhC,QAAiB;EACtC,IAAMiC,IAAKZ,EAAOY;EAClB,OAAOA,IACHJ,EAAOK,QAAQC,MAAUA,EAAMC,cAAcH,CAAE,IAC/CJ,EAAOK,QAAQC,MAAU,CAACA,EAAMC,SAAS;CAC/C,CAAC,GAEKC,IAAoBrC,QACxBsC,MAAMC,KACJ,IAAIC,IACF,CAACnB,EAAOC,QAAQ,CAAC,CAACmB,OAChBT,EAAe,CAAC,CACbE,QAAQC,MAAUA,EAAMb,QAAQ,CAAC,CACjCoB,KAAKP,MAAUA,EAAMb,QAAoB,CAC9C,CACF,CACF,CACF,GAEMqB,KAAqBrB,MACzBU,EAAe,CAAC,CAACE,QAAQC,MACnBA,EAAMb,WAAiBa,EAAMb,aAAaA,IACvCA,MAAaD,EAAOC,QAC5B,GAEGsB,KAA4BtB,MAAuB;EACvD,IAAMuB,IAAOF,EAAkBrB,CAAQ;EAEvC,OADID,EAAOyB,SAAeD,IACnBA,EAAKE,MAAM,GAAG1B,EAAOG,aAAa;CAC3C;CAEApB,QAAc;EACZ,IAAM4C,KAAaC,MAAqB;GAKtC,AAHE5B,EAAOM,OAAOyB,SAAS,KACvB/B,EAAOM,OAAO0B,OAAOC,MAASL,EAAUK,MAAQL,EAAEM,SAASD,CAAG,KAC7CvB,EAAY,EAAI,GAC/BkB,EAAEM,SAAS,YAAUxB,EAAY,EAAK;EAC5C;EAEA5B,AADAqD,SAASC,iBAAiB,WAAWT,CAAS,GAC9C7C,QAAgBqD,SAASE,oBAAoB,WAAWV,CAAS,CAAC;CACpE,CAAC;CAED,IAAMW,KAAerC,MACnBJ,EAAmBI,GAAUD,EAAOuC,QAAQvC,EAAOwC,YAAY;CAEjE,OAAAC,EACGvD,GAAM,EAAA,IAAAwD,WAAA;EAAA,IAAAC,IAAAC,EAAA;EAG6D,OAH7DC,EAAAF,GAAAF,EAKF/D,GAAG;GAAA,IAACoE,OAAI;IAAA,OAAE9B,EAAkB;GAAC;GAAA0B,WAC1BzC,MAAQwC,EACPzD,GAAI;IAAA,IAAC+D,OAAI;KAAA,OAAExB,EAAyBtB,CAAQ,CAAC,CAAC8B,SAAS;IAAC;IAAA,IAAAW,WAAA;KAAA,IAAAM,IAAAC,EAAA;KAsBpD,OAtBoDD,EAAAZ,iBAAA,oBAwBjC1B,EAAY,EAAK,CAAC,GAAAsC,EAAAZ,iBAAA,oBADlB1B,EAAY,EAAI,CAAC,GAAAwC,EAAAF,GAAA,iBApBtB/C,CAAQ,GAAA4C,EAAAG,GAAAP,EAuBtB/D,GAAG;MAAA,IAACoE,OAAI;OAAA,OAAEvB,EAAyBtB,CAAQ;MAAC;MAAAyC,WACzC5B,GAAeqC,MAAKV,EACnBrD,GAAK;OACG0B;OAAK,IACZqC,QAAK;QAAA,OAAEA,EAAM;OAAC;OAAA,IACdC,QAAK;QAAA,OAAE7B,EAAyBtB,CAAQ,CAAC,CAAC8B;OAAM;OAAA,IAChDtB,WAAQ;QAAA,OAAEA,EAAS;OAAC;OACVR;OAAQ,IAClBC,MAAG;QAAA,OAAEF,EAAOE;OAAG;OAAA,IACfmD,cAAW;QAAA,OACTvC,EAAMuC,eACNrD,EAAOsD,cAAcD,eACrBrD,EAAOqD,eACP;OAAK;OAAA,IAEPE,WAAQ;QAAA,OACNvD,EAAOsD,cAAcC,YAAYvD,EAAOuD;OAAQ;OAAA,
|
|
1
|
+
{"version":3,"file":"Toaster.js","names":["For","createMemo","createSignal","mergeProps","onCleanup","onMount","Show","Component","Portal","clsx","Toast","Position","ToastT","removeToast","useSonner","ToasterProps","toasterContainerClass","getDocumentDirection","getPositionClass","resolveOffsetStyle","Toaster","props","merged","position","gap","visibleToasts","dir","containerAriaLabel","hotkey","const","toasts","expanded","setExpanded","filteredToasts","id","filter","toast","toasterId","possiblePositions","Array","from","Set","concat","map","toastsForPosition","visibleToastsForPosition","list","expand","slice","onKeyDown","e","KeyboardEvent","hotkeyPressed","length","every","key","code","document","addEventListener","removeEventListener","offsetStyle","offset","mobileOffset","_$createComponent","children","_el$","_tmpl$","_$insert","each","when","_el$2","_tmpl$2","_$setAttribute","index","total","closeButton","toastOptions","duration","class","icons","closeButtonAriaLabel","defaultRichColors","richColors","onRemove","_$effect","_p$","_v$","customAriaLabel","_v$2","startsWith","_v$3","style","Record","t","_$className","a","_$style","undefined","mergeProps","_$createComponent","_$setAttribute","_$className","_$style","mergeProps$1","_tmpl$","_tmpl$2","Toaster","merged","getDocumentDirection","props","useSonner","expanded","setExpanded","createSignal","filteredToasts","createMemo","id","toasts","toast","possiblePositions","toastsForPosition","position","visibleToastsForPosition","list","onKeyDown","key","onCleanup","offsetStyle","resolveOffsetStyle","createComponent","Portal","_el$","insert","For","Show","_el$2","setAttribute","Toast","index","\"class\"","removeToast","effect","_v$","_v$2","clsx","toasterContainerClass","getPositionClass","_v$3","_p$","className","style"],"sources":["../../../../src/components/toast/Toaster/Toaster.tsx"],"sourcesContent":["import {\n For,\n createMemo,\n createSignal,\n mergeProps,\n onCleanup,\n onMount,\n Show,\n type Component,\n} from \"solid-js\";\nimport { Portal } from \"solid-js/web\";\nimport { clsx } from \"~/utils\";\nimport { Toast } from \"../Toast\";\nimport type { Position, ToastT } from \"../Toast/Toast.types\";\nimport { removeToast, useSonner } from \"../state/toast\";\nimport type { ToasterProps } from \"./Toaster.types\";\nimport { toasterContainerClass } from \"./Toaster.styles\";\nimport {\n getDocumentDirection,\n getPositionClass,\n resolveOffsetStyle,\n} from \"./Toaster.utils\";\n\nexport const Toaster: Component<ToasterProps> = (props) => {\n const merged = mergeProps(\n {\n position: \"bottom-right\",\n gap: 14,\n visibleToasts: 3,\n dir: getDocumentDirection(),\n containerAriaLabel: \"Notifications\",\n hotkey: [\"altKey\", \"KeyT\"] as string[],\n } as const,\n props,\n );\n\n const { toasts } = useSonner();\n const [expanded, setExpanded] = createSignal(false);\n\n const filteredToasts = createMemo(() => {\n const id = merged.id;\n return id\n ? toasts.filter((toast) => toast.toasterId === id)\n : toasts.filter((toast) => !toast.toasterId);\n });\n\n const possiblePositions = createMemo(() =>\n Array.from(\n new Set(\n [merged.position].concat(\n filteredToasts()\n .filter((toast) => toast.position)\n .map((toast) => toast.position as Position),\n ),\n ),\n ),\n );\n\n const toastsForPosition = (position: Position) =>\n filteredToasts().filter((toast) => {\n if (toast.position) return toast.position === position;\n return position === merged.position;\n });\n\n const visibleToastsForPosition = (position: Position) => {\n const list = toastsForPosition(position);\n if (merged.expand) return list;\n return list.slice(0, merged.visibleToasts);\n };\n\n onMount(() => {\n const onKeyDown = (e: KeyboardEvent) => {\n const hotkeyPressed =\n merged.hotkey.length > 0 &&\n merged.hotkey.every((key) => (e as any)[key] || e.code === key);\n if (hotkeyPressed) setExpanded(true);\n if (e.code === \"Escape\") setExpanded(false);\n };\n document.addEventListener(\"keydown\", onKeyDown);\n onCleanup(() => document.removeEventListener(\"keydown\", onKeyDown));\n });\n\n const offsetStyle = (position: Position) =>\n resolveOffsetStyle(position, merged.offset, merged.mobileOffset);\n\n return (\n <Portal>\n <div\n data-slot=\"toaster\"\n dir={merged.dir === \"auto\" ? getDocumentDirection() : merged.dir}\n >\n <For each={possiblePositions()}>\n {(position) => (\n <Show when={visibleToastsForPosition(position).length > 0}>\n <ol\n data-slot=\"toaster-viewport\"\n data-position={position}\n aria-live=\"polite\"\n aria-relevant=\"additions text\"\n aria-atomic=\"false\"\n aria-label={merged.customAriaLabel ?? merged.containerAriaLabel}\n tabIndex={-1}\n class={clsx(\n toasterContainerClass,\n getPositionClass(position),\n expanded()\n ? position.startsWith(\"top\")\n ? \"flex flex-col\"\n : \"flex flex-col-reverse\"\n : \"grid\",\n )}\n style={{\n gap: `${merged.gap}px`,\n ...offsetStyle(position),\n ...(merged.style as Record<string, string | number>),\n }}\n onMouseEnter={() => setExpanded(true)}\n onMouseLeave={() => setExpanded(false)}\n >\n <For each={visibleToastsForPosition(position)}>\n {(toast: ToastT, index) => (\n <Toast\n toast={toast}\n index={index()}\n total={visibleToastsForPosition(position).length}\n expanded={expanded()}\n position={position}\n gap={merged.gap}\n closeButton={\n toast.closeButton ??\n merged.toastOptions?.closeButton ??\n merged.closeButton ??\n false\n }\n duration={\n merged.toastOptions?.duration ?? merged.duration\n }\n class={merged.toastOptions?.class}\n icons={merged.icons}\n closeButtonAriaLabel={\n merged.toastOptions?.closeButtonAriaLabel\n }\n defaultRichColors={merged.richColors}\n onRemove={removeToast}\n />\n )}\n </For>\n </ol>\n </Show>\n )}\n </For>\n </div>\n </Portal>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toaster.styles.js","names":[],"sources":["../../../../src/components/toast/Toaster/Toaster.styles.ts"],"sourcesContent":["export const toasterContainerClass =\n \"fixed z-100 w-[356px] max-w-[calc(100vw-2rem)]\";\n"],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"Toaster.styles.js","names":["toasterContainerClass"],"sources":["../../../../src/components/toast/Toaster/Toaster.styles.ts"],"sourcesContent":["export const toasterContainerClass =\n \"fixed z-100 w-[356px] max-w-[calc(100vw-2rem)]\";\n"],"mappings":";AAAA,IAAaA,IACX"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toaster.utils.js","names":[],"sources":["../../../../src/components/toast/Toaster/Toaster.utils.ts"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport type { Position, SwipeDirection } from \"../Toast/Toast.types\";\nimport type { Offset } from \"./Toaster.types\";\n\nconst VIEWPORT_OFFSET = \"24px\";\nconst MOBILE_VIEWPORT_OFFSET = \"16px\";\n\nexport function getPositionClass(position: Position): string {\n switch (position) {\n case \"top-left\":\n return \"top-0 left-0\";\n case \"top-right\":\n return \"top-0 right-0\";\n case \"top-center\":\n return \"top-0 left-1/2 -translate-x-1/2\";\n case \"bottom-left\":\n return \"bottom-0 left-0\";\n case \"bottom-right\":\n return \"bottom-0 right-0\";\n case \"bottom-center\":\n return \"bottom-0 left-1/2 -translate-x-1/2\";\n }\n}\n\nfunction toPx(value: string | number): string {\n return typeof value === \"number\" ? `${value}px` : value;\n}\n\nexport function resolveOffsetStyle(\n position: Position,\n offset?: Offset,\n mobileOffset?: Offset,\n): JSX.CSSProperties {\n const style: JSX.CSSProperties = {};\n const [y, x] = position.split(\"-\");\n\n const normalize = (value: Offset | undefined, fallback: string) =>\n typeof value === \"object\" && value !== null\n ? value\n : {\n top: value ?? fallback,\n right: value ?? fallback,\n bottom: value ?? fallback,\n left: value ?? fallback,\n };\n\n const desktop = normalize(offset, VIEWPORT_OFFSET);\n const mobile = normalize(mobileOffset, MOBILE_VIEWPORT_OFFSET);\n\n if (y === \"top\") {\n style.top = toPx(desktop.top ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-top\"] = toPx(mobile.top ?? MOBILE_VIEWPORT_OFFSET);\n } else {\n style.bottom = toPx(desktop.bottom ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-bottom\"] = toPx(\n mobile.bottom ?? MOBILE_VIEWPORT_OFFSET,\n );\n }\n\n if (x === \"left\") {\n style.left = toPx(desktop.left ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-left\"] = toPx(mobile.left ?? MOBILE_VIEWPORT_OFFSET);\n } else if (x === \"right\") {\n style.right = toPx(desktop.right ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-right\"] = toPx(\n mobile.right ?? MOBILE_VIEWPORT_OFFSET,\n );\n }\n\n return style;\n}\n\nexport function getDefaultSwipeDirections(\n position: Position,\n): SwipeDirection[] {\n const [y, x] = position.split(\"-\");\n const directions: SwipeDirection[] = [];\n if (y) directions.push(y as SwipeDirection);\n if (x) directions.push(x as SwipeDirection);\n return directions;\n}\n\nexport function getDocumentDirection(): \"rtl\" | \"ltr\" | \"auto\" {\n if (typeof document === \"undefined\") return \"ltr\";\n const dir = document.documentElement.getAttribute(\"dir\");\n if (dir === \"auto\" || !dir) {\n return getComputedStyle(document.documentElement).direction as\n | \"rtl\"\n | \"ltr\"\n | \"auto\";\n }\n return dir as \"rtl\" | \"ltr\" | \"auto\";\n}\n"],"mappings":";AAIA,
|
|
1
|
+
{"version":3,"file":"Toaster.utils.js","names":["VIEWPORT_OFFSET","MOBILE_VIEWPORT_OFFSET","getPositionClass","position","toPx","value","resolveOffsetStyle","style","y","x","normalize","fallback","desktop","offset","mobile","mobileOffset","getDocumentDirection","dir"],"sources":["../../../../src/components/toast/Toaster/Toaster.utils.ts"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport type { Position, SwipeDirection } from \"../Toast/Toast.types\";\nimport type { Offset } from \"./Toaster.types\";\n\nconst VIEWPORT_OFFSET = \"24px\";\nconst MOBILE_VIEWPORT_OFFSET = \"16px\";\n\nexport function getPositionClass(position: Position): string {\n switch (position) {\n case \"top-left\":\n return \"top-0 left-0\";\n case \"top-right\":\n return \"top-0 right-0\";\n case \"top-center\":\n return \"top-0 left-1/2 -translate-x-1/2\";\n case \"bottom-left\":\n return \"bottom-0 left-0\";\n case \"bottom-right\":\n return \"bottom-0 right-0\";\n case \"bottom-center\":\n return \"bottom-0 left-1/2 -translate-x-1/2\";\n }\n}\n\nfunction toPx(value: string | number): string {\n return typeof value === \"number\" ? `${value}px` : value;\n}\n\nexport function resolveOffsetStyle(\n position: Position,\n offset?: Offset,\n mobileOffset?: Offset,\n): JSX.CSSProperties {\n const style: JSX.CSSProperties = {};\n const [y, x] = position.split(\"-\");\n\n const normalize = (value: Offset | undefined, fallback: string) =>\n typeof value === \"object\" && value !== null\n ? value\n : {\n top: value ?? fallback,\n right: value ?? fallback,\n bottom: value ?? fallback,\n left: value ?? fallback,\n };\n\n const desktop = normalize(offset, VIEWPORT_OFFSET);\n const mobile = normalize(mobileOffset, MOBILE_VIEWPORT_OFFSET);\n\n if (y === \"top\") {\n style.top = toPx(desktop.top ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-top\"] = toPx(mobile.top ?? MOBILE_VIEWPORT_OFFSET);\n } else {\n style.bottom = toPx(desktop.bottom ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-bottom\"] = toPx(\n mobile.bottom ?? MOBILE_VIEWPORT_OFFSET,\n );\n }\n\n if (x === \"left\") {\n style.left = toPx(desktop.left ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-left\"] = toPx(mobile.left ?? MOBILE_VIEWPORT_OFFSET);\n } else if (x === \"right\") {\n style.right = toPx(desktop.right ?? VIEWPORT_OFFSET);\n style[\"--mobile-offset-right\"] = toPx(\n mobile.right ?? MOBILE_VIEWPORT_OFFSET,\n );\n }\n\n return style;\n}\n\nexport function getDefaultSwipeDirections(\n position: Position,\n): SwipeDirection[] {\n const [y, x] = position.split(\"-\");\n const directions: SwipeDirection[] = [];\n if (y) directions.push(y as SwipeDirection);\n if (x) directions.push(x as SwipeDirection);\n return directions;\n}\n\nexport function getDocumentDirection(): \"rtl\" | \"ltr\" | \"auto\" {\n if (typeof document === \"undefined\") return \"ltr\";\n const dir = document.documentElement.getAttribute(\"dir\");\n if (dir === \"auto\" || !dir) {\n return getComputedStyle(document.documentElement).direction as\n | \"rtl\"\n | \"ltr\"\n | \"auto\";\n }\n return dir as \"rtl\" | \"ltr\" | \"auto\";\n}\n"],"mappings":";AAIA,IAAMA,IAAkB,QAClBC,IAAyB;AAE/B,SAAgBC,EAAiB,GAA4B;CAC3D,QAAQC,GAAR;EACE,KAAK,YACH,OAAO;EACT,KAAK,aACH,OAAO;EACT,KAAK,cACH,OAAO;EACT,KAAK,eACH,OAAO;EACT,KAAK,gBACH,OAAO;EACT,KAAK,iBACH,OAAO;CACX;AACF;AAEA,SAASC,EAAK,GAAgC;CAC5C,OAAO,OAAOC,KAAU,WAAW,GAAGA,EAAM,MAAMA;AACpD;AAEA,SAAgBC,EACd,GACA,GACA,GACmB;CACnB,IAAMC,IAA2B,CAAC,GAC5B,CAACC,GAAGC,KAAKN,EAAS,MAAM,GAAG,GAE3BO,KAAa,GAA2B,MAC5C,OAAOL,KAAU,YAAYA,IACzBA,IACA;EACE,KAAKA,KAASM;EACd,OAAON,KAASM;EAChB,QAAQN,KAASM;EACjB,MAAMN,KAASM;CACjB,GAEAC,IAAUF,EAAUG,GAAQb,CAAe,GAC3Cc,IAASJ,EAAUK,GAAcd,CAAsB;CAsB7D,OApBIO,MAAM,SACR,EAAM,MAAMJ,EAAKQ,EAAQ,OAAOZ,CAAe,GAC/C,EAAM,yBAAyBI,EAAKU,EAAO,OAAOb,CAAsB,MAExE,EAAM,SAASG,EAAKQ,EAAQ,UAAUZ,CAAe,GACrD,EAAM,4BAA4BI,EAChCU,EAAO,UAAUb,CACnB,IAGEQ,MAAM,UACR,EAAM,OAAOL,EAAKQ,EAAQ,QAAQZ,CAAe,GACjD,EAAM,0BAA0BI,EAAKU,EAAO,QAAQb,CAAsB,KACjEQ,MAAM,YACf,EAAM,QAAQL,EAAKQ,EAAQ,SAASZ,CAAe,GACnD,EAAM,2BAA2BI,EAC/BU,EAAO,SAASb,CAClB,IAGKM;AACT;AAYA,SAAgBS,IAA+C;CAC7D,IAAI,OAAO,WAAa,KAAa,OAAO;CAC5C,IAAMC,IAAM,SAAS,gBAAgB,aAAa,KAAK;CAOvD,OANIA,MAAQ,UAAU,CAACA,IACd,iBAAiB,SAAS,eAAe,CAAC,CAAC,YAK7CA;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toast.js","names":[],"sources":["../../../../src/components/toast/state/toast.ts"],"sourcesContent":["import { createUniqueId, type JSXElement } from \"solid-js\";\nimport { createStore, produce } from \"solid-js/store\";\nimport type {\n ExternalToast,\n PromiseData,\n PromiseT,\n ToastT,\n ToastTypes,\n} from \"../Toast/Toast.types\";\n\nconst [toasts, setToasts] = createStore<ToastT[]>([]);\n\nexport function useSonner() {\n return { toasts };\n}\n\nexport function getToasts() {\n return toasts;\n}\n\nexport function getHistory() {\n return toasts;\n}\n\nfunction createToast(\n data: ExternalToast & {\n message?: JSXElement;\n type?: ToastTypes;\n jsx?: JSXElement;\n promise?: PromiseT;\n },\n): string {\n const id = data.id ?? createUniqueId();\n\n setToasts(\n produce((list) => {\n const existing = list.find((toast) => toast.id === id);\n const next: ToastT = {\n ...data,\n id,\n title: data.message,\n dismissible: data.dismissible ?? true,\n } as ToastT;\n\n if (existing) {\n Object.assign(existing, next, {\n title: data.message ?? existing.title,\n });\n } else {\n list.unshift(next);\n }\n }),\n );\n\n return id;\n}\n\nfunction dismissToast(id?: string) {\n if (id !== undefined) {\n setToasts(\n produce((list) => {\n const toast = list.find((item) => item.id === id);\n if (toast) toast.delete = true;\n }),\n );\n } else {\n setToasts(\n produce((list) => {\n for (const toast of list) toast.delete = true;\n }),\n );\n }\n return id;\n}\n\nfunction removeToast(id: string) {\n setToasts(\n produce((list) => {\n const index = list.findIndex((toast) => toast.id === id);\n if (index !== -1) list.splice(index, 1);\n }),\n );\n}\n\nconst toastFunction = (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, message });\n\nexport const toast = Object.assign(toastFunction, {\n success: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"success\", message }),\n info: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"info\", message }),\n warning: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"warning\", message }),\n error: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"error\", message }),\n loading: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"loading\", message }),\n message: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, message }),\n custom: (jsx: (id: string) => JSXElement, data?: ExternalToast) => {\n const id = data?.id ?? createUniqueId();\n return createToast({ ...data, id, jsx: jsx(id) });\n },\n dismiss: dismissToast,\n promise: <Data = any>(promise: PromiseT<Data>, data?: PromiseData<Data>) => {\n if (!data) return;\n\n let id: string | undefined;\n if (data.loading !== undefined) {\n id = createToast({\n ...data,\n type: \"loading\",\n message: data.loading,\n } as any);\n }\n\n Promise.resolve(typeof promise === \"function\" ? promise() : promise)\n .then(async (result) => {\n const message =\n typeof data.success === \"function\"\n ? await data.success(result)\n : data.success;\n\n if (message !== undefined) {\n createToast({\n id,\n type: \"success\",\n message: message as JSXElement,\n description:\n typeof data.description === \"function\"\n ? await data.description(result)\n : data.description,\n } as any);\n } else if (id !== undefined) {\n dismissToast(id);\n }\n })\n .catch(async (error) => {\n const message =\n typeof data.error === \"function\"\n ? await data.error(error)\n : data.error;\n\n if (message !== undefined) {\n createToast({\n id,\n type: \"error\",\n message: message as JSXElement,\n description:\n typeof data.description === \"function\"\n ? await data.description(error)\n : data.description,\n } as any);\n } else if (id !== undefined) {\n dismissToast(id);\n }\n })\n .finally(() => {\n data.finally?.();\n });\n\n return id as string;\n },\n getToasts,\n getHistory,\n remove: removeToast,\n});\n\nexport { dismissToast, removeToast };\n"],"mappings":";;;AAUA,IAAM,
|
|
1
|
+
{"version":3,"file":"toast.js","names":["toasts","setToasts","createStore","useSonner","getToasts","getHistory","createToast","id","data","createUniqueId","produce","existing","list","toast","next","dismissToast","item","removeToast","index","jsx","promise","message","result","error"],"sources":["../../../../src/components/toast/state/toast.ts"],"sourcesContent":["import { createUniqueId, type JSXElement } from \"solid-js\";\nimport { createStore, produce } from \"solid-js/store\";\nimport type {\n ExternalToast,\n PromiseData,\n PromiseT,\n ToastT,\n ToastTypes,\n} from \"../Toast/Toast.types\";\n\nconst [toasts, setToasts] = createStore<ToastT[]>([]);\n\nexport function useSonner() {\n return { toasts };\n}\n\nexport function getToasts() {\n return toasts;\n}\n\nexport function getHistory() {\n return toasts;\n}\n\nfunction createToast(\n data: ExternalToast & {\n message?: JSXElement;\n type?: ToastTypes;\n jsx?: JSXElement;\n promise?: PromiseT;\n },\n): string {\n const id = data.id ?? createUniqueId();\n\n setToasts(\n produce((list) => {\n const existing = list.find((toast) => toast.id === id);\n const next: ToastT = {\n ...data,\n id,\n title: data.message,\n dismissible: data.dismissible ?? true,\n } as ToastT;\n\n if (existing) {\n Object.assign(existing, next, {\n title: data.message ?? existing.title,\n });\n } else {\n list.unshift(next);\n }\n }),\n );\n\n return id;\n}\n\nfunction dismissToast(id?: string) {\n if (id !== undefined) {\n setToasts(\n produce((list) => {\n const toast = list.find((item) => item.id === id);\n if (toast) toast.delete = true;\n }),\n );\n } else {\n setToasts(\n produce((list) => {\n for (const toast of list) toast.delete = true;\n }),\n );\n }\n return id;\n}\n\nfunction removeToast(id: string) {\n setToasts(\n produce((list) => {\n const index = list.findIndex((toast) => toast.id === id);\n if (index !== -1) list.splice(index, 1);\n }),\n );\n}\n\nconst toastFunction = (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, message });\n\nexport const toast = Object.assign(toastFunction, {\n success: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"success\", message }),\n info: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"info\", message }),\n warning: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"warning\", message }),\n error: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"error\", message }),\n loading: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, type: \"loading\", message }),\n message: (message: JSXElement, data?: ExternalToast) =>\n createToast({ ...data, message }),\n custom: (jsx: (id: string) => JSXElement, data?: ExternalToast) => {\n const id = data?.id ?? createUniqueId();\n return createToast({ ...data, id, jsx: jsx(id) });\n },\n dismiss: dismissToast,\n promise: <Data = any>(promise: PromiseT<Data>, data?: PromiseData<Data>) => {\n if (!data) return;\n\n let id: string | undefined;\n if (data.loading !== undefined) {\n id = createToast({\n ...data,\n type: \"loading\",\n message: data.loading,\n } as any);\n }\n\n Promise.resolve(typeof promise === \"function\" ? promise() : promise)\n .then(async (result) => {\n const message =\n typeof data.success === \"function\"\n ? await data.success(result)\n : data.success;\n\n if (message !== undefined) {\n createToast({\n id,\n type: \"success\",\n message: message as JSXElement,\n description:\n typeof data.description === \"function\"\n ? await data.description(result)\n : data.description,\n } as any);\n } else if (id !== undefined) {\n dismissToast(id);\n }\n })\n .catch(async (error) => {\n const message =\n typeof data.error === \"function\"\n ? await data.error(error)\n : data.error;\n\n if (message !== undefined) {\n createToast({\n id,\n type: \"error\",\n message: message as JSXElement,\n description:\n typeof data.description === \"function\"\n ? await data.description(error)\n : data.description,\n } as any);\n } else if (id !== undefined) {\n dismissToast(id);\n }\n })\n .finally(() => {\n data.finally?.();\n });\n\n return id as string;\n },\n getToasts,\n getHistory,\n remove: removeToast,\n});\n\nexport { dismissToast, removeToast };\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toggle.js","names":["createMemo","createSignal","mergeProps","splitProps","JSX","clsx","toggleVariants","ToggleProps","Toggle","props","Element","merged","type","const","local","rest","internalPressed","setInternalPressed","defaultPressed","pressed","undefined","setPressed","next","onPressedChange","_el$","_tmpl$","$$click","e","onClick","defaultPrevented","_$spread","_$mergeProps","data-state","aria-pressed","class","variant","size","_$delegateEvents"],"sources":["../../../../src/components/toggle/Toggle/Toggle.tsx"],"sourcesContent":["import {\n createMemo,\n createSignal,\n mergeProps,\n splitProps,\n type JSX,\n} from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { toggleVariants } from \"./Toggle.styles\";\nimport type { ToggleProps } from \"./Toggle.types\";\n\nexport function Toggle(props: ToggleProps): JSX.Element {\n const merged = mergeProps({ type: \"button\" as const }, props);\n\n const [local, rest] = splitProps(merged, [\n \"pressed\",\n \"defaultPressed\",\n \"onPressedChange\",\n \"variant\",\n \"size\",\n \"class\",\n \"value\",\n \"type\",\n \"onClick\",\n ]);\n\n const [internalPressed, setInternalPressed] = createSignal(\n local.defaultPressed ?? false,\n );\n const pressed = createMemo(() =>\n local.pressed !== undefined ? local.pressed : internalPressed(),\n );\n\n const setPressed = (next: boolean) => {\n if (local.pressed === undefined) setInternalPressed(next);\n local.onPressedChange?.(next);\n };\n\n return (\n <button\n type={local.type as \"button\"}\n data-slot=\"toggle\"\n data-state={pressed() ? \"on\" : \"off\"}\n aria-pressed={pressed()}\n class={clsx(\n toggleVariants({\n variant: local.variant,\n size: local.size,\n class: local.class,\n }),\n )}\n onClick={(e) => {\n (local.onClick as any)?.(e);\n if (!e.defaultPrevented) setPressed(!pressed());\n }}\n {...rest}\n />\n );\n}\n"],"mappings":";;;;;;AAWA,SAAgBQ,EAAOC,GAAiC;CACtD,IAAME,IAAST,EAAW,EAAEU,MAAM,SAAkB,GAAGH,CAAK,GAEtD,CAACK,GAAOC,KAAQZ,EAAWQ,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAS,CACV,GAEK,CAACK,GAAiBC,KAAsBhB,EAC5Ca,EAAMI,kBAAkB,EAC1B,GACMC,IAAUnB,QACdc,EAAMK,YAAYC,KAAAA,IAA4BJ,EAAgB,IAAhCF,EAAMK,OACtC,GAEME,KAAcC,MAAkB;EAEpCR,AADIA,EAAMK,YAAYC,KAAAA,KAAWH,EAAmBK,CAAI,GACxDR,EAAMS,kBAAkBD,CAAI;CAC9B;CAEA,cAAA;EAAA,IAAAE,IAAAC,EAAA;EAiBY,OAjBZD,EAAAE,WAacC,MAAM;GAEd,
|
|
1
|
+
{"version":3,"file":"Toggle.js","names":["createMemo","createSignal","mergeProps","splitProps","JSX","clsx","toggleVariants","ToggleProps","Toggle","props","Element","merged","type","const","local","rest","internalPressed","setInternalPressed","defaultPressed","pressed","undefined","setPressed","next","onPressedChange","_el$","_tmpl$","$$click","e","onClick","defaultPrevented","_$spread","_$mergeProps","data-state","aria-pressed","class","variant","size","_$delegateEvents","mergeProps","_$mergeProps","_$delegateEvents","mergeProps$1","_tmpl$","Toggle","merged","props","local","rest","splitProps","internalPressed","setInternalPressed","createSignal","pressed","createMemo","setPressed","next","_el$","spread","mergeProps","\"class\"","clsx","toggleVariants","delegateEvents"],"sources":["../../../../src/components/toggle/Toggle/Toggle.tsx"],"sourcesContent":["import {\n createMemo,\n createSignal,\n mergeProps,\n splitProps,\n type JSX,\n} from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { toggleVariants } from \"./Toggle.styles\";\nimport type { ToggleProps } from \"./Toggle.types\";\n\nexport function Toggle(props: ToggleProps): JSX.Element {\n const merged = mergeProps({ type: \"button\" as const }, props);\n\n const [local, rest] = splitProps(merged, [\n \"pressed\",\n \"defaultPressed\",\n \"onPressedChange\",\n \"variant\",\n \"size\",\n \"class\",\n \"value\",\n \"type\",\n \"onClick\",\n ]);\n\n const [internalPressed, setInternalPressed] = createSignal(\n local.defaultPressed ?? false,\n );\n const pressed = createMemo(() =>\n local.pressed !== undefined ? local.pressed : internalPressed(),\n );\n\n const setPressed = (next: boolean) => {\n if (local.pressed === undefined) setInternalPressed(next);\n local.onPressedChange?.(next);\n };\n\n return (\n <button\n type={local.type as \"button\"}\n data-slot=\"toggle\"\n data-state={pressed() ? \"on\" : \"off\"}\n aria-pressed={pressed()}\n class={clsx(\n toggleVariants({\n variant: local.variant,\n size: local.size,\n class: local.class,\n }),\n )}\n onClick={(e) => {\n (local.onClick as any)?.(e);\n if (!e.defaultPrevented) setPressed(!pressed());\n }}\n {...rest}\n />\n );\n}\n"],"mappings":";;;;;;AAWA,SAAgBQ,EAAOC,GAAiC;CACtD,IAAME,IAAST,EAAW,EAAEU,MAAM,SAAkB,GAAGH,CAAK,GAEtD,CAACK,GAAOC,KAAQZ,EAAWQ,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAS,CACV,GAEK,CAACK,GAAiBC,KAAsBhB,EAC5Ca,EAAMI,kBAAkB,EAC1B,GACMC,IAAUnB,QACdc,EAAMK,YAAYC,KAAAA,IAA4BJ,EAAgB,IAAhCF,EAAMK,OACtC,GAEME,KAAcC,MAAkB;EAEpCR,AADIA,EAAMK,YAAYC,KAAAA,KAAWH,EAAmBK,CAAI,GACxDR,EAAMS,kBAAkBD,CAAI;CAC9B;CAEA,cAAA;EAAA,IAAAE,IAAAC,EAAA;EAiBY,OAjBZD,EAAAE,WAacC,MAAM;GAEd,AADAmB,EAAOlB,UAAkBD,CAAC,GACrBA,EAAEE,oBAAkBR,EAAW,CAACF,EAAQ,CAAC;EAChD,GAACW,EAAAN,GAAAO,EAAA;GAAA,IAdDnB,OAAI;IAAA,OAAEE,EAAMF;GAAgB;GAAA,IAAA,eAAA;IAAA,OAEhBO,EAAQ,IAAI,OAAO;GAAK;GAAA,IAAA,iBAAA;IAAA,OACtBA,EAAQ;GAAC;GAAA,IAAAwC,QAAA;IAAA,OAChBtD,EACLC,EAAe;KACb6B,SAASrB,EAAMqB;KACfC,MAAMtB,EAAMsB;KACZF,OAAOpB,EAAMoB;IACf,CAAC,CACH;GAAC;EAAA,GAKGnB,CAAI,GAAA,IAAA,EAAA,GAAAS;CAAA,EAAA,CAAA;AAGd;AAACa,EAAA,CAAA,OAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toggle.styles.js","names":[],"sources":["../../../../src/components/toggle/Toggle/Toggle.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const toggleVariants = cva(\n \"group/toggle inline-flex items-center justify-center gap-1 rounded-lg text-sm font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline: \"border border-input bg-transparent hover:bg-muted\",\n },\n size: {\n default:\n \"h-8 min-w-8 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n sm: \"h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 min-w-9 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n"],"mappings":";;AAEA,
|
|
1
|
+
{"version":3,"file":"Toggle.styles.js","names":["toggleVariants","cva"],"sources":["../../../../src/components/toggle/Toggle/Toggle.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const toggleVariants = cva(\n \"group/toggle inline-flex items-center justify-center gap-1 rounded-lg text-sm font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline: \"border border-input bg-transparent hover:bg-muted\",\n },\n size: {\n default:\n \"h-8 min-w-8 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n sm: \"h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 min-w-9 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n"],"mappings":";;AAEA,IAAaA,IAAiBC,EAC5B,uhBACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SAAS;EACX;EACA,MAAM;GACJ,SACE;GACF,IAAI;GACJ,IAAI;EACN;CACF;CACA,iBAAiB;EACf,SAAS;EACT,MAAM;CACR;AACF,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleGroup.context.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.context.ts"],"sourcesContent":["import { createContext, createSignal, useContext } from \"solid-js\";\nimport { createChangeEventDetails } from \"./create-change-event-details\";\nimport type {\n ToggleGroupChangeHandler,\n ToggleGroupContextValue,\n ToggleGroupItemEntry,\n ToggleGroupMultipleProps,\n ToggleGroupOrientation,\n ToggleGroupSingleProps,\n ToggleGroupSize,\n ToggleGroupValue,\n ToggleGroupVariant,\n} from \"./ToggleGroup.types\";\n\nconst ToggleGroupContext = createContext<ToggleGroupContextValue>();\n\n/** 单选/多选的 onValueChange 签名(从 props 类型派生,保持单一事实来源) */\ntype SingleChangeHandler<TValue extends ToggleGroupValue> = NonNullable<\n ToggleGroupSingleProps<TValue>[\"onValueChange\"]\n>;\ntype MultipleChangeHandler<TValue extends ToggleGroupValue> = NonNullable<\n ToggleGroupMultipleProps<TValue>[\"onValueChange\"]\n>;\n\n/**\n * createToggleGroupState 的输入:ToggleGroupProps 的运行时形态。\n *\n * 受控值时单选给标量、多选给数组,内部统一规范化成数组;\n * `multiple` 同时决定 onValueChange 用哪种签名回调。\n */\nexport interface ToggleGroupStateProps<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n> {\n value?: TValue | readonly TValue[];\n defaultValue?: TValue | readonly TValue[];\n onValueChange?: ToggleGroupChangeHandler<TValue>;\n multiple?: boolean;\n disabled?: boolean;\n orientation?: ToggleGroupOrientation;\n loopFocus?: boolean;\n dir?: \"ltr\" | \"rtl\" | \"auto\";\n spacing?: number;\n variant?: ToggleGroupVariant;\n size?: ToggleGroupSize;\n}\n\n/**\n * ToggleGroup 的唯一状态源:选中值(受控/非受控)、焦点高亮、item 注册表。\n *\n * 返回的 context 值里所有字段都是 accessor,因此传入的 `props` 可以是\n * splitProps 得到的响应式代理,读取始终是最新值。\n * 组件根只负责输出 DOM 与 data-* 样式钩子,状态与交互算法收敛在这里。\n *\n * 值类型由泛型参数决定;内部只用 `===` / `includes` 做同一性比较,\n * 因此 string 与 number 都能正常工作。\n */\nexport function createToggleGroupState<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(props: ToggleGroupStateProps<TValue>): ToggleGroupContextValue<TValue> {\n const multiple = () => props.multiple === true;\n\n /** 单选传标量、多选传数组,内部统一成数组 */\n const toArray = (v: TValue | readonly TValue[] | undefined): TValue[] => {\n if (v === undefined) return [];\n return Array.isArray(v) ? [...(v as readonly TValue[])] : [v as TValue];\n };\n\n const [internalValue, setInternalValue] = createSignal<TValue[]>(\n toArray(props.defaultValue),\n );\n const [highlightedValue, setHighlightedValue] = createSignal<\n TValue | undefined\n >();\n const [itemOrder, setItemOrder] = createSignal<\n ToggleGroupItemEntry<TValue>[]\n >([]);\n\n const isControlled = () => props.value !== undefined;\n // 受控优先:props.value 存在时读外部值,否则读内部状态\n const value = (): readonly TValue[] =>\n isControlled() ? toArray(props.value) : internalValue();\n\n const isPressed = (v: TValue) => value().includes(v);\n\n const toggleItem = (\n itemValue: TValue,\n event: Event,\n trigger?: Element,\n ): void => {\n const current = value();\n const pressed = current.includes(itemValue);\n\n // 单选时再次点击已按下项会取消选中(next = [])\n let next: TValue[];\n if (multiple()) {\n next = pressed\n ? current.filter((v) => v !== itemValue)\n : [...current, itemValue];\n } else {\n next = pressed ? [] : [itemValue];\n }\n\n // 先通知外部:onValueChange 中 cancel() 可阻止组件提交本次变更\n // 单选回调标量(取消时是 undefined),多选回调数组\n const details = createChangeEventDetails(event, trigger);\n if (multiple()) {\n (props.onValueChange as MultipleChangeHandler<TValue> | undefined)?.(\n next,\n details,\n );\n } else {\n (props.onValueChange as SingleChangeHandler<TValue> | undefined)?.(\n next[0],\n details,\n );\n }\n if (details.isCanceled) return;\n\n // 受控模式只通知外部,不改内部状态\n if (!isControlled()) setInternalValue(next);\n };\n\n const registerItem = (entry: ToggleGroupItemEntry<TValue>) => {\n setItemOrder((prev) => [...prev, entry]);\n return () => setItemOrder((prev) => prev.filter((item) => item !== entry));\n };\n\n const isFirstEnabled = (v: TValue) =>\n itemOrder().find((item) => !item.disabled())?.value === v;\n\n const isUsable = (v: TValue) =>\n itemOrder().some((item) => item.value === v && !item.disabled());\n\n return {\n value,\n multiple,\n disabled: () => props.disabled === true,\n orientation: () => props.orientation ?? \"horizontal\",\n loopFocus: () => props.loopFocus ?? true,\n dir: () => props.dir,\n spacing: () => props.spacing ?? 2,\n variant: () => props.variant,\n size: () => props.size,\n highlightedValue,\n isPressed,\n toggleItem,\n setHighlightedValue,\n registerItem,\n getItems: () => itemOrder(),\n isFirstEnabled,\n isUsable,\n };\n}\n\n/**\n * 读取 ToggleGroup 的 context。\n *\n * 泛型参数是**调用方标注**:组件本身无法从子节点推导所属 group 的值类型,\n * 自定义 item 时请显式传入与 ToggleGroup 一致的类型,例如\n * `useToggleGroupContext<\"bold\" | \"italic\">(\"MyToggle\")`。\n */\nexport function useToggleGroupContext<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(component: string): ToggleGroupContextValue<TValue> {\n const ctx = useContext(ToggleGroupContext);\n if (!ctx) {\n throw new Error(`<${component}> 必须渲染在 <ToggleGroup> 内部`);\n }\n return ctx as ToggleGroupContextValue<TValue>;\n}\n\nexport { ToggleGroupContext };\n"],"mappings":";;;AAcA,
|
|
1
|
+
{"version":3,"file":"ToggleGroup.context.js","names":["ToggleGroupContext","createContext","createToggleGroupState","multiple","props","toArray","v","internalValue","setInternalValue","createSignal","highlightedValue","setHighlightedValue","itemOrder","setItemOrder","isControlled","value","current","pressed","itemValue","next","details","createChangeEventDetails","event","trigger","prev","entry","item","useToggleGroupContext","ctx","useContext","component"],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.context.ts"],"sourcesContent":["import { createContext, createSignal, useContext } from \"solid-js\";\nimport { createChangeEventDetails } from \"./create-change-event-details\";\nimport type {\n ToggleGroupChangeHandler,\n ToggleGroupContextValue,\n ToggleGroupItemEntry,\n ToggleGroupMultipleProps,\n ToggleGroupOrientation,\n ToggleGroupSingleProps,\n ToggleGroupSize,\n ToggleGroupValue,\n ToggleGroupVariant,\n} from \"./ToggleGroup.types\";\n\nconst ToggleGroupContext = createContext<ToggleGroupContextValue>();\n\n/** 单选/多选的 onValueChange 签名(从 props 类型派生,保持单一事实来源) */\ntype SingleChangeHandler<TValue extends ToggleGroupValue> = NonNullable<\n ToggleGroupSingleProps<TValue>[\"onValueChange\"]\n>;\ntype MultipleChangeHandler<TValue extends ToggleGroupValue> = NonNullable<\n ToggleGroupMultipleProps<TValue>[\"onValueChange\"]\n>;\n\n/**\n * createToggleGroupState 的输入:ToggleGroupProps 的运行时形态。\n *\n * 受控值时单选给标量、多选给数组,内部统一规范化成数组;\n * `multiple` 同时决定 onValueChange 用哪种签名回调。\n */\nexport interface ToggleGroupStateProps<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n> {\n value?: TValue | readonly TValue[];\n defaultValue?: TValue | readonly TValue[];\n onValueChange?: ToggleGroupChangeHandler<TValue>;\n multiple?: boolean;\n disabled?: boolean;\n orientation?: ToggleGroupOrientation;\n loopFocus?: boolean;\n dir?: \"ltr\" | \"rtl\" | \"auto\";\n spacing?: number;\n variant?: ToggleGroupVariant;\n size?: ToggleGroupSize;\n}\n\n/**\n * ToggleGroup 的唯一状态源:选中值(受控/非受控)、焦点高亮、item 注册表。\n *\n * 返回的 context 值里所有字段都是 accessor,因此传入的 `props` 可以是\n * splitProps 得到的响应式代理,读取始终是最新值。\n * 组件根只负责输出 DOM 与 data-* 样式钩子,状态与交互算法收敛在这里。\n *\n * 值类型由泛型参数决定;内部只用 `===` / `includes` 做同一性比较,\n * 因此 string 与 number 都能正常工作。\n */\nexport function createToggleGroupState<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(props: ToggleGroupStateProps<TValue>): ToggleGroupContextValue<TValue> {\n const multiple = () => props.multiple === true;\n\n /** 单选传标量、多选传数组,内部统一成数组 */\n const toArray = (v: TValue | readonly TValue[] | undefined): TValue[] => {\n if (v === undefined) return [];\n return Array.isArray(v) ? [...(v as readonly TValue[])] : [v as TValue];\n };\n\n const [internalValue, setInternalValue] = createSignal<TValue[]>(\n toArray(props.defaultValue),\n );\n const [highlightedValue, setHighlightedValue] = createSignal<\n TValue | undefined\n >();\n const [itemOrder, setItemOrder] = createSignal<\n ToggleGroupItemEntry<TValue>[]\n >([]);\n\n const isControlled = () => props.value !== undefined;\n // 受控优先:props.value 存在时读外部值,否则读内部状态\n const value = (): readonly TValue[] =>\n isControlled() ? toArray(props.value) : internalValue();\n\n const isPressed = (v: TValue) => value().includes(v);\n\n const toggleItem = (\n itemValue: TValue,\n event: Event,\n trigger?: Element,\n ): void => {\n const current = value();\n const pressed = current.includes(itemValue);\n\n // 单选时再次点击已按下项会取消选中(next = [])\n let next: TValue[];\n if (multiple()) {\n next = pressed\n ? current.filter((v) => v !== itemValue)\n : [...current, itemValue];\n } else {\n next = pressed ? [] : [itemValue];\n }\n\n // 先通知外部:onValueChange 中 cancel() 可阻止组件提交本次变更\n // 单选回调标量(取消时是 undefined),多选回调数组\n const details = createChangeEventDetails(event, trigger);\n if (multiple()) {\n (props.onValueChange as MultipleChangeHandler<TValue> | undefined)?.(\n next,\n details,\n );\n } else {\n (props.onValueChange as SingleChangeHandler<TValue> | undefined)?.(\n next[0],\n details,\n );\n }\n if (details.isCanceled) return;\n\n // 受控模式只通知外部,不改内部状态\n if (!isControlled()) setInternalValue(next);\n };\n\n const registerItem = (entry: ToggleGroupItemEntry<TValue>) => {\n setItemOrder((prev) => [...prev, entry]);\n return () => setItemOrder((prev) => prev.filter((item) => item !== entry));\n };\n\n const isFirstEnabled = (v: TValue) =>\n itemOrder().find((item) => !item.disabled())?.value === v;\n\n const isUsable = (v: TValue) =>\n itemOrder().some((item) => item.value === v && !item.disabled());\n\n return {\n value,\n multiple,\n disabled: () => props.disabled === true,\n orientation: () => props.orientation ?? \"horizontal\",\n loopFocus: () => props.loopFocus ?? true,\n dir: () => props.dir,\n spacing: () => props.spacing ?? 2,\n variant: () => props.variant,\n size: () => props.size,\n highlightedValue,\n isPressed,\n toggleItem,\n setHighlightedValue,\n registerItem,\n getItems: () => itemOrder(),\n isFirstEnabled,\n isUsable,\n };\n}\n\n/**\n * 读取 ToggleGroup 的 context。\n *\n * 泛型参数是**调用方标注**:组件本身无法从子节点推导所属 group 的值类型,\n * 自定义 item 时请显式传入与 ToggleGroup 一致的类型,例如\n * `useToggleGroupContext<\"bold\" | \"italic\">(\"MyToggle\")`。\n */\nexport function useToggleGroupContext<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(component: string): ToggleGroupContextValue<TValue> {\n const ctx = useContext(ToggleGroupContext);\n if (!ctx) {\n throw new Error(`<${component}> 必须渲染在 <ToggleGroup> 内部`);\n }\n return ctx as ToggleGroupContextValue<TValue>;\n}\n\nexport { ToggleGroupContext };\n"],"mappings":";;;AAcA,IAAMA,IAAqBC,EAAuC;AA0ClE,SAAgBC,EAEd,GAAuE;CACvE,IAAMC,UAAiBC,EAAM,aAAa,IAGpCC,KAAW,MACXC,MAAM,KAAA,IAAkB,CAAC,IACtB,MAAM,QAAQA,CAAC,IAAI,CAAC,GAAIA,CAAuB,IAAI,CAACA,CAAW,GAGlE,CAACC,GAAeC,KAAoBC,EACxCJ,EAAQD,EAAM,YAAY,CAC5B,GACM,CAACM,GAAkBC,KAAuBF,EAE9C,GACI,CAACG,GAAWC,KAAgBJ,EAEhC,CAAC,CAAC,GAEEK,UAAqBV,EAAM,UAAU,KAAA,GAErCW,UACJD,EAAa,IAAIT,EAAQD,EAAM,KAAK,IAAIG,EAAc;CAqDxD,OAAO;EACL;EACA;EACA,gBAAgBH,EAAM,aAAa;EACnC,mBAAmBA,EAAM,eAAe;EACxC,iBAAiBA,EAAM,aAAa;EACpC,WAAWA,EAAM;EACjB,eAAeA,EAAM,WAAW;EAChC,eAAeA,EAAM;EACrB,YAAYA,EAAM;EAClB;EACA,YA9DiB,MAAcW,EAAM,CAAC,CAAC,SAAST,CAAC;EA+DjD,aA5DA,GACA,GACA,MACS;GACT,IAAMU,IAAUD,EAAM,GAChBE,IAAUD,EAAQ,SAASE,CAAS,GAGtCC;GACJ,AAKEA,IALEhB,EAAS,IACJc,IACHD,EAAQ,QAAQ,MAAMV,MAAMY,CAAS,IACrC,CAAC,GAAGF,GAASE,CAAS,IAEnBD,IAAU,CAAC,IAAI,CAACC,CAAS;GAKlC,IAAME,IAAUC,EAAyBC,GAAOC,CAAO;GAYvD,AAXIpB,EAAS,IACXC,EAAO,gBACLe,GACAC,CACF,IAEAhB,EAAO,gBACLe,EAAK,IACLC,CACF,GAEE,GAAQ,eAGPN,EAAa,KAAGN,EAAiBW,CAAI;EAC5C;EA0BE;EACA,eAzBoB,OACpBN,GAAc,MAAS,CAAC,GAAGW,GAAMC,CAAK,CAAC,SAC1BZ,GAAc,MAASW,EAAK,QAAQ,MAASE,MAASD,CAAK,CAAC;EAwBzE,gBAAgBb,EAAU;EAC1B,iBAtBsB,MACtBA,EAAU,CAAC,CAAC,MAAM,MAAS,CAACc,EAAK,SAAS,CAAC,CAAC,EAAE,UAAUpB;EAsBxD,WApBgB,MAChBM,EAAU,CAAC,CAAC,MAAM,MAASc,EAAK,UAAUpB,KAAK,CAACoB,EAAK,SAAS,CAAC;CAoBjE;AACF;AASA,SAAgBC,EAEd,GAAoD;CACpD,IAAMC,IAAMC,EAAW7B,CAAkB;CACzC,IAAI,CAAC4B,GACH,MAAU,MAAM,IAAIE,EAAU,yBAAyB;CAEzD,OAAOF;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleGroup.js","names":["splitProps","JSX","clsx","callEventHandler","createToggleGroupState","ToggleGroupContext","toggleGroupVariants","ToggleGroupProps","ToggleGroupValue","useToggleGroupKeyboard","ToggleGroup","props","TValue","Element","local","rest","ctx","handleKeyDown","isVertical","orientation","_el$","_tmpl$","$$keydown","e","onKeyDown","defaultPrevented","_$spread","_$mergeProps","data-variant","variant","data-size","size","data-spacing","spacing","data-orientation","data-vertical","data-horizontal","data-multiple","multiple","data-disabled","disabled","aria-disabled","undefined","dir","style","CSSProperties","class","classList","_$insert","_$createComponent","Provider","value","children","_$delegateEvents"],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.tsx"],"sourcesContent":["import { splitProps, type JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { callEventHandler } from \"../call-event-handler\";\nimport {\n createToggleGroupState,\n ToggleGroupContext,\n} from \"./ToggleGroup.context\";\nimport { toggleGroupVariants } from \"./ToggleGroup.styles\";\nimport type { ToggleGroupProps, ToggleGroupValue } from \"./ToggleGroup.types\";\nimport { useToggleGroupKeyboard } from \"./useToggleGroupKeyboard\";\n\n/**\n * ToggleGroup 根组件:渲染 `<div role=\"group\">`,输出样式与语义钩子\n * (`data-orientation` / `data-vertical` / `data-horizontal` / `data-multiple`\n * / `data-disabled` / `data-spacing` / `data-variant` / `data-size`),\n * 并挂载 roving focus 键盘导航。\n *\n * 单选模式(默认)的 value 是标量,多选模式(`multiple`)才是数组:\n *\n * @example\n * ```tsx\n * // 单选\n * <ToggleGroup defaultValue=\"bold\" onValueChange={(v) => ...}>\n * <ToggleGroupItem value=\"bold\">Bold</ToggleGroupItem>\n * </ToggleGroup>\n *\n * // 多选\n * <ToggleGroup multiple value={[\"bold\"]} onValueChange={(v) => ...}>\n * <ToggleGroupItem value=\"bold\">Bold</ToggleGroupItem>\n * </ToggleGroup>\n * ```\n */\nexport function ToggleGroup<TValue extends ToggleGroupValue = ToggleGroupValue>(\n props: ToggleGroupProps<TValue>,\n): JSX.Element {\n const [local, rest] = splitProps(props, [\n \"value\",\n \"defaultValue\",\n \"onValueChange\",\n \"multiple\",\n \"disabled\",\n \"orientation\",\n \"loopFocus\",\n \"spacing\",\n \"variant\",\n \"size\",\n \"class\",\n \"classList\",\n \"style\",\n \"dir\",\n \"onKeyDown\",\n \"children\",\n ]);\n\n // 默认值与单选/多选的差异统一由状态层处理,渲染用 ctx 里的已解析值\n const ctx = createToggleGroupState<TValue>(local);\n const { handleKeyDown } = useToggleGroupKeyboard(ctx);\n const isVertical = () => ctx.orientation() === \"vertical\";\n\n return (\n <div\n role=\"group\"\n data-slot=\"toggle-group\"\n data-variant={ctx.variant()}\n data-size={ctx.size()}\n data-spacing={ctx.spacing()}\n data-orientation={ctx.orientation()}\n // 拼接态样式依赖 data-vertical / data-horizontal(与 tabs 根保持一致)\n data-vertical={isVertical() ? \"\" : null}\n data-horizontal={isVertical() ? null : \"\"}\n data-multiple={ctx.multiple() ? \"\" : null}\n data-disabled={ctx.disabled() ? \"\" : null}\n aria-disabled={ctx.disabled() ? \"true\" : undefined}\n dir={local.dir}\n // --gap 作为 spacing 的样式入口,用户 style 可覆盖\n style={{ \"--gap\": ctx.spacing(), ...local.style } as JSX.CSSProperties}\n class={clsx(toggleGroupVariants(), local.class)}\n classList={local.classList}\n onKeyDown={(e) => {\n callEventHandler(local.onKeyDown, e);\n if (!e.defaultPrevented) handleKeyDown(e);\n }}\n {...rest}\n >\n <ToggleGroupContext.Provider value={ctx}>\n {local.children}\n </ToggleGroupContext.Provider>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;AAgCA,SAAgBU,EACdC,GACa;CACb,IAAM,CAACG,GAAOC,KAAQf,EAAWW,GAAO;EACtC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAU,CACX,GAGKK,IAAMZ,EAA+BU,CAAK,GAC1C,EAAEG,qBAAkBR,EAAuBO,CAAG,GAC9CE,UAAmBF,EAAIG,YAAY,MAAM;CAE/C,cAAA;EAAA,IAAAC,IAAAC,EAAA;EA0BqB,OA1BrBD,EAAAE,aAmBgBC,MAAM;GAEhB,AADApB,EAAiBW,EAAMU,WAAWD,CAAC,GAC9BA,EAAEE,oBAAkBR,EAAcM,CAAC;EAC1C,GAACG,EAAAN,GAAAO,EAAA;GAAA,IAAA,iBAAA;IAAA,OAlBaX,EAAIa,QAAQ;GAAC;GAAA,IAAA,cAAA;IAAA,OAChBb,EAAIe,KAAK;GAAC;GAAA,IAAA,iBAAA;IAAA,OACPf,EAAIiB,QAAQ;GAAC;GAAA,IAAA,qBAAA;IAAA,OACTjB,EAAIG,YAAY;GAAC;GAAA,IAAA,kBAAA;IAAA,OAEpBD,EAAW,IAAI,KAAK;GAAI;GAAA,IAAA,oBAAA;IAAA,OACtBA,EAAW,IAAI,OAAO;GAAE;GAAA,IAAA,kBAAA;IAAA,OAC1BF,EAAIsB,SAAS,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OAC1BtB,EAAIwB,SAAS,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OAC1BxB,EAAIwB,SAAS,IAAI,SAASE,KAAAA;GAAS;GAAA,IAClDC,MAAG;IAAA,OAAE7B,EAAM6B;GAAG;GAAA,IAEdC,QAAK;IAAA,OAAE;KAAE,SAAS5B,EAAIiB,QAAQ;KAAG,GAAGnB,EAAM8B;IAAM;GAAsB;GAAA,
|
|
1
|
+
{"version":3,"file":"ToggleGroup.js","names":["splitProps","JSX","clsx","callEventHandler","createToggleGroupState","ToggleGroupContext","toggleGroupVariants","ToggleGroupProps","ToggleGroupValue","useToggleGroupKeyboard","ToggleGroup","props","TValue","Element","local","rest","ctx","handleKeyDown","isVertical","orientation","_el$","_tmpl$","$$keydown","e","onKeyDown","defaultPrevented","_$spread","_$mergeProps","data-variant","variant","data-size","size","data-spacing","spacing","data-orientation","data-vertical","data-horizontal","data-multiple","multiple","data-disabled","disabled","aria-disabled","undefined","dir","style","CSSProperties","class","classList","_$insert","_$createComponent","Provider","value","children","_$delegateEvents","_$mergeProps","_$createComponent","_$delegateEvents","_tmpl$","ToggleGroup","local","rest","splitProps","props","ctx","createToggleGroupState","useToggleGroupKeyboard","isVertical","_el$","callEventHandler","handleKeyDown","spread","mergeProps","\"class\"","clsx","toggleGroupVariants","insert","createComponent","ToggleGroupContext","delegateEvents"],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.tsx"],"sourcesContent":["import { splitProps, type JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { callEventHandler } from \"../call-event-handler\";\nimport {\n createToggleGroupState,\n ToggleGroupContext,\n} from \"./ToggleGroup.context\";\nimport { toggleGroupVariants } from \"./ToggleGroup.styles\";\nimport type { ToggleGroupProps, ToggleGroupValue } from \"./ToggleGroup.types\";\nimport { useToggleGroupKeyboard } from \"./useToggleGroupKeyboard\";\n\n/**\n * ToggleGroup 根组件:渲染 `<div role=\"group\">`,输出样式与语义钩子\n * (`data-orientation` / `data-vertical` / `data-horizontal` / `data-multiple`\n * / `data-disabled` / `data-spacing` / `data-variant` / `data-size`),\n * 并挂载 roving focus 键盘导航。\n *\n * 单选模式(默认)的 value 是标量,多选模式(`multiple`)才是数组:\n *\n * @example\n * ```tsx\n * // 单选\n * <ToggleGroup defaultValue=\"bold\" onValueChange={(v) => ...}>\n * <ToggleGroupItem value=\"bold\">Bold</ToggleGroupItem>\n * </ToggleGroup>\n *\n * // 多选\n * <ToggleGroup multiple value={[\"bold\"]} onValueChange={(v) => ...}>\n * <ToggleGroupItem value=\"bold\">Bold</ToggleGroupItem>\n * </ToggleGroup>\n * ```\n */\nexport function ToggleGroup<TValue extends ToggleGroupValue = ToggleGroupValue>(\n props: ToggleGroupProps<TValue>,\n): JSX.Element {\n const [local, rest] = splitProps(props, [\n \"value\",\n \"defaultValue\",\n \"onValueChange\",\n \"multiple\",\n \"disabled\",\n \"orientation\",\n \"loopFocus\",\n \"spacing\",\n \"variant\",\n \"size\",\n \"class\",\n \"classList\",\n \"style\",\n \"dir\",\n \"onKeyDown\",\n \"children\",\n ]);\n\n // 默认值与单选/多选的差异统一由状态层处理,渲染用 ctx 里的已解析值\n const ctx = createToggleGroupState<TValue>(local);\n const { handleKeyDown } = useToggleGroupKeyboard(ctx);\n const isVertical = () => ctx.orientation() === \"vertical\";\n\n return (\n <div\n role=\"group\"\n data-slot=\"toggle-group\"\n data-variant={ctx.variant()}\n data-size={ctx.size()}\n data-spacing={ctx.spacing()}\n data-orientation={ctx.orientation()}\n // 拼接态样式依赖 data-vertical / data-horizontal(与 tabs 根保持一致)\n data-vertical={isVertical() ? \"\" : null}\n data-horizontal={isVertical() ? null : \"\"}\n data-multiple={ctx.multiple() ? \"\" : null}\n data-disabled={ctx.disabled() ? \"\" : null}\n aria-disabled={ctx.disabled() ? \"true\" : undefined}\n dir={local.dir}\n // --gap 作为 spacing 的样式入口,用户 style 可覆盖\n style={{ \"--gap\": ctx.spacing(), ...local.style } as JSX.CSSProperties}\n class={clsx(toggleGroupVariants(), local.class)}\n classList={local.classList}\n onKeyDown={(e) => {\n callEventHandler(local.onKeyDown, e);\n if (!e.defaultPrevented) handleKeyDown(e);\n }}\n {...rest}\n >\n <ToggleGroupContext.Provider value={ctx}>\n {local.children}\n </ToggleGroupContext.Provider>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;AAgCA,SAAgBU,EACdC,GACa;CACb,IAAM,CAACG,GAAOC,KAAQf,EAAWW,GAAO;EACtC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAU,CACX,GAGKK,IAAMZ,EAA+BU,CAAK,GAC1C,EAAEG,qBAAkBR,EAAuBO,CAAG,GAC9CE,UAAmBF,EAAIG,YAAY,MAAM;CAE/C,cAAA;EAAA,IAAAC,IAAAC,EAAA;EA0BqB,OA1BrBD,EAAAE,aAmBgBC,MAAM;GAEhB,AADApB,EAAiBW,EAAMU,WAAWD,CAAC,GAC9BA,EAAEE,oBAAkBR,EAAcM,CAAC;EAC1C,GAACG,EAAAN,GAAAO,EAAA;GAAA,IAAA,iBAAA;IAAA,OAlBaX,EAAIa,QAAQ;GAAC;GAAA,IAAA,cAAA;IAAA,OAChBb,EAAIe,KAAK;GAAC;GAAA,IAAA,iBAAA;IAAA,OACPf,EAAIiB,QAAQ;GAAC;GAAA,IAAA,qBAAA;IAAA,OACTjB,EAAIG,YAAY;GAAC;GAAA,IAAA,kBAAA;IAAA,OAEpBD,EAAW,IAAI,KAAK;GAAI;GAAA,IAAA,oBAAA;IAAA,OACtBA,EAAW,IAAI,OAAO;GAAE;GAAA,IAAA,kBAAA;IAAA,OAC1BF,EAAIsB,SAAS,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OAC1BtB,EAAIwB,SAAS,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OAC1BxB,EAAIwB,SAAS,IAAI,SAASE,KAAAA;GAAS;GAAA,IAClDC,MAAG;IAAA,OAAE7B,EAAM6B;GAAG;GAAA,IAEdC,QAAK;IAAA,OAAE;KAAE,SAAS5B,EAAIiB,QAAQ;KAAG,GAAGnB,EAAM8B;IAAM;GAAsB;GAAA,IAAA4B,QAAA;IAAA,OAC/DtE,EAAKI,EAAoB,GAAGQ,EAAMgC,KAAK;GAAC;GAAA,IAC/CC,YAAS;IAAA,OAAEjC,EAAMiC;GAAS;EAAA,GAKtBhC,CAAI,GAAA,IAAA,EAAA,GAAAiC,EAAA5B,GAAA6B,EAEP5C,EAAmB6C,UAAQ;GAACC,OAAOnC;GAAG,IAAAoC,WAAA;IAAA,OACpCtC,EAAMsC;GAAQ;EAAA,CAAA,CAAA,GAAAhC;CAAA,EAAA,CAAA;AAIvB;AAACiC,EAAA,CAAA,SAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleGroup.styles.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * ToggleGroup 根容器样式。\n *\n * 根元素同时输出 `data-vertical` / `data-horizontal`(见 ToggleGroup.tsx),\n * 使 `data-vertical:*`、`group-data-vertical/toggle-group:*` 这类选择器生效 ——\n * item 的“拼接态”样式依赖后两者。\n */\nexport const toggleGroupVariants = cva(\n \"group/toggle-group flex w-fit flex-row items-center gap-[--spacing(var(--gap))] rounded-lg data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-vertical:flex-col data-vertical:items-stretch\",\n);\n"],"mappings":";;AASA,
|
|
1
|
+
{"version":3,"file":"ToggleGroup.styles.js","names":["toggleGroupVariants","cva"],"sources":["../../../../src/components/toggle-group/ToggleGroup/ToggleGroup.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * ToggleGroup 根容器样式。\n *\n * 根元素同时输出 `data-vertical` / `data-horizontal`(见 ToggleGroup.tsx),\n * 使 `data-vertical:*`、`group-data-vertical/toggle-group:*` 这类选择器生效 ——\n * item 的“拼接态”样式依赖后两者。\n */\nexport const toggleGroupVariants = cva(\n \"group/toggle-group flex w-fit flex-row items-center gap-[--spacing(var(--gap))] rounded-lg data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-vertical:flex-col data-vertical:items-stretch\",\n);\n"],"mappings":";;AASA,IAAaA,IAAsBC,EACjC,mMACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-change-event-details.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroup/create-change-event-details.ts"],"sourcesContent":["import type { ToggleGroupChangeEventDetails } from \"./ToggleGroup.types\";\n\n/**\n * 构造 onValueChange 的事件详情(对齐 base-ui 的 `ChangeEventDetails`)。\n *\n * `isCanceled` / `isPropagationAllowed` 用 getter 暴露:回调内部可以即时读到\n * `cancel()` / `allowPropagation()` 之后的最新值,而不是创建时的快照。\n */\nexport function createChangeEventDetails(\n event: Event,\n trigger?: Element,\n): ToggleGroupChangeEventDetails {\n let canceled = false;\n let propagationAllowed = false;\n\n return {\n reason: \"none\",\n event,\n trigger,\n cancel: () => {\n canceled = true;\n },\n allowPropagation: () => {\n propagationAllowed = true;\n },\n get isCanceled() {\n return canceled;\n },\n get isPropagationAllowed() {\n return propagationAllowed;\n },\n };\n}\n"],"mappings":";AAQA,
|
|
1
|
+
{"version":3,"file":"create-change-event-details.js","names":["createChangeEventDetails","canceled","propagationAllowed"],"sources":["../../../../src/components/toggle-group/ToggleGroup/create-change-event-details.ts"],"sourcesContent":["import type { ToggleGroupChangeEventDetails } from \"./ToggleGroup.types\";\n\n/**\n * 构造 onValueChange 的事件详情(对齐 base-ui 的 `ChangeEventDetails`)。\n *\n * `isCanceled` / `isPropagationAllowed` 用 getter 暴露:回调内部可以即时读到\n * `cancel()` / `allowPropagation()` 之后的最新值,而不是创建时的快照。\n */\nexport function createChangeEventDetails(\n event: Event,\n trigger?: Element,\n): ToggleGroupChangeEventDetails {\n let canceled = false;\n let propagationAllowed = false;\n\n return {\n reason: \"none\",\n event,\n trigger,\n cancel: () => {\n canceled = true;\n },\n allowPropagation: () => {\n propagationAllowed = true;\n },\n get isCanceled() {\n return canceled;\n },\n get isPropagationAllowed() {\n return propagationAllowed;\n },\n };\n}\n"],"mappings":";AAQA,SAAgBA,EACd,GACA,GAC+B;CAC/B,IAAIC,IAAW,IACXC,IAAqB;CAEzB,OAAO;EACL,QAAQ;EACR;EACA;EACA,cAAc;GACZ,IAAW;EACb;EACA,wBAAwB;GACtB,IAAqB;EACvB;EACA,IAAI,aAAa;GACf,OAAOD;EACT;EACA,IAAI,uBAAuB;GACzB,OAAOC;EACT;CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useToggleGroupKeyboard.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.ts"],"sourcesContent":["import type {\n ToggleGroupContextValue,\n ToggleGroupValue,\n} from \"./ToggleGroup.types\";\n\n/** 键盘导航按键:方向键 + Home/End(对齐 base-ui CompositeRoot 的 enableHomeAndEndKeys) */\nconst NAV_KEYS = new Set([\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"ArrowDown\",\n \"Home\",\n \"End\",\n]);\n\n/**\n * ToggleGroup 的 roving focus 键盘导航(纯逻辑,可独立单测)。\n *\n * 方向映射:\n * - horizontal + ltr: ArrowRight → next, ArrowLeft → prev\n * - horizontal + rtl: 左右反转\n * - vertical: ArrowDown → next, ArrowUp → prev\n * - Home → 第一个,End → 最后一个\n * - loopFocus=true 环绕,false 边界停止;跳过 disabled 的 item\n *\n * 只有焦点已经在某个 item 上时才接管按键,避免影响外部其它元素;\n * 移动焦点后由 item 的 onFocus 更新高亮。\n */\nexport function useToggleGroupKeyboard<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(ctx: ToggleGroupContextValue<TValue>) {\n const handleKeyDown = (e: KeyboardEvent) => {\n if (ctx.disabled()) return;\n if (!NAV_KEYS.has(e.key)) return;\n\n const activeEl = document.activeElement as HTMLElement | null;\n const items = ctx.getItems().filter((item) => !item.disabled());\n if (items.length === 0) return;\n\n const currentIndex = items.findIndex((item) => item.element === activeEl);\n if (currentIndex === -1) return;\n\n const isVertical = ctx.orientation() === \"vertical\";\n // dir 未指定/auto 时,按根元素的实际书写方向判断(兼容祖先节点上的 dir)\n const dir = ctx.dir();\n const isRTL =\n dir === \"rtl\" ||\n (dir !== \"ltr\" &&\n typeof document !== \"undefined\" &&\n getComputedStyle(e.currentTarget as Element).direction === \"rtl\");\n\n let nextIndex: number | undefined;\n switch (e.key) {\n case \"Home\":\n nextIndex = 0;\n break;\n case \"End\":\n nextIndex = items.length - 1;\n break;\n case \"ArrowLeft\":\n if (isVertical) return;\n nextIndex = currentIndex + (isRTL ? 1 : -1);\n break;\n case \"ArrowRight\":\n if (isVertical) return;\n nextIndex = currentIndex + (isRTL ? -1 : 1);\n break;\n case \"ArrowUp\":\n if (!isVertical) return;\n nextIndex = currentIndex - 1;\n break;\n case \"ArrowDown\":\n if (!isVertical) return;\n nextIndex = currentIndex + 1;\n break;\n }\n\n if (nextIndex === undefined) return;\n\n // 方向键与当前布局匹配,接管默认滚动行为\n e.preventDefault();\n\n if (ctx.loopFocus()) {\n nextIndex = (nextIndex + items.length) % items.length;\n } else {\n nextIndex = Math.min(items.length - 1, Math.max(0, nextIndex));\n }\n\n items[nextIndex].element.focus();\n ctx.setHighlightedValue(items[nextIndex].value);\n };\n\n return { handleKeyDown };\n}\n"],"mappings":";AAMA,
|
|
1
|
+
{"version":3,"file":"useToggleGroupKeyboard.js","names":["NAV_KEYS","useToggleGroupKeyboard","ctx","e","activeEl","items","item","currentIndex","isVertical","dir","isRTL","nextIndex"],"sources":["../../../../src/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.ts"],"sourcesContent":["import type {\n ToggleGroupContextValue,\n ToggleGroupValue,\n} from \"./ToggleGroup.types\";\n\n/** 键盘导航按键:方向键 + Home/End(对齐 base-ui CompositeRoot 的 enableHomeAndEndKeys) */\nconst NAV_KEYS = new Set([\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"ArrowDown\",\n \"Home\",\n \"End\",\n]);\n\n/**\n * ToggleGroup 的 roving focus 键盘导航(纯逻辑,可独立单测)。\n *\n * 方向映射:\n * - horizontal + ltr: ArrowRight → next, ArrowLeft → prev\n * - horizontal + rtl: 左右反转\n * - vertical: ArrowDown → next, ArrowUp → prev\n * - Home → 第一个,End → 最后一个\n * - loopFocus=true 环绕,false 边界停止;跳过 disabled 的 item\n *\n * 只有焦点已经在某个 item 上时才接管按键,避免影响外部其它元素;\n * 移动焦点后由 item 的 onFocus 更新高亮。\n */\nexport function useToggleGroupKeyboard<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(ctx: ToggleGroupContextValue<TValue>) {\n const handleKeyDown = (e: KeyboardEvent) => {\n if (ctx.disabled()) return;\n if (!NAV_KEYS.has(e.key)) return;\n\n const activeEl = document.activeElement as HTMLElement | null;\n const items = ctx.getItems().filter((item) => !item.disabled());\n if (items.length === 0) return;\n\n const currentIndex = items.findIndex((item) => item.element === activeEl);\n if (currentIndex === -1) return;\n\n const isVertical = ctx.orientation() === \"vertical\";\n // dir 未指定/auto 时,按根元素的实际书写方向判断(兼容祖先节点上的 dir)\n const dir = ctx.dir();\n const isRTL =\n dir === \"rtl\" ||\n (dir !== \"ltr\" &&\n typeof document !== \"undefined\" &&\n getComputedStyle(e.currentTarget as Element).direction === \"rtl\");\n\n let nextIndex: number | undefined;\n switch (e.key) {\n case \"Home\":\n nextIndex = 0;\n break;\n case \"End\":\n nextIndex = items.length - 1;\n break;\n case \"ArrowLeft\":\n if (isVertical) return;\n nextIndex = currentIndex + (isRTL ? 1 : -1);\n break;\n case \"ArrowRight\":\n if (isVertical) return;\n nextIndex = currentIndex + (isRTL ? -1 : 1);\n break;\n case \"ArrowUp\":\n if (!isVertical) return;\n nextIndex = currentIndex - 1;\n break;\n case \"ArrowDown\":\n if (!isVertical) return;\n nextIndex = currentIndex + 1;\n break;\n }\n\n if (nextIndex === undefined) return;\n\n // 方向键与当前布局匹配,接管默认滚动行为\n e.preventDefault();\n\n if (ctx.loopFocus()) {\n nextIndex = (nextIndex + items.length) % items.length;\n } else {\n nextIndex = Math.min(items.length - 1, Math.max(0, nextIndex));\n }\n\n items[nextIndex].element.focus();\n ctx.setHighlightedValue(items[nextIndex].value);\n };\n\n return { handleKeyDown };\n}\n"],"mappings":";AAMA,IAAMA,oBAAW,IAAI,IAAI;CACvB;CACA;CACA;CACA;CACA;CACA;AACF,CAAC;AAeD,SAAgBC,EAEd,GAAsC;CA8DtC,OAAO,EAAE,gBA7Dc,MAAqB;EAE1C,IADIC,EAAI,SAAS,KACb,CAACF,EAAS,IAAIG,EAAE,GAAG,GAAG;EAE1B,IAAMC,IAAW,SAAS,eACpBC,IAAQH,EAAI,SAAS,CAAC,CAAC,QAAQ,MAAS,CAACI,EAAK,SAAS,CAAC;EAC9D,IAAID,EAAM,WAAW,GAAG;EAExB,IAAME,IAAeF,EAAM,WAAW,MAASC,EAAK,YAAYF,CAAQ;EACxE,IAAIG,MAAiB,IAAI;EAEzB,IAAMC,IAAaN,EAAI,YAAY,MAAM,YAEnCO,IAAMP,EAAI,IAAI,GACdQ,IACJD,MAAQ,SACPA,MAAQ,SACP,OAAO,WAAa,OACpB,iBAAiBN,EAAE,aAAwB,CAAC,CAAC,cAAc,OAE3DQ;EACJ,QAAQR,EAAE,KAAV;GACE,KAAK;IACH,IAAY;IACZ;GACF,KAAK;IACH,IAAYE,EAAM,SAAS;IAC3B;GACF,KAAK;IACH,IAAIG,GAAY;IAChB,IAAYD,KAAgBG,IAAQ,IAAI;IACxC;GACF,KAAK;IACH,IAAIF,GAAY;IAChB,IAAYD,KAAgBG,IAAQ,KAAK;IACzC;GACF,KAAK;IACH,IAAI,CAACF,GAAY;IACjB,IAAYD,IAAe;IAC3B;GACF,KAAK;IACH,IAAI,CAACC,GAAY;IACjB,IAAYD,IAAe;EAE/B;EAEA,AAAII,MAAc,KAAA,MAGlBR,EAAE,eAAe,GAEjB,AAGEQ,IAHET,EAAI,UAAU,KACHS,IAAYN,EAAM,UAAUA,EAAM,SAEnC,KAAK,IAAIA,EAAM,SAAS,GAAG,KAAK,IAAI,GAAGM,CAAS,CAAC,GAG/DN,EAAMM,EAAU,CAAC,QAAQ,MAAM,GAC/BT,EAAI,oBAAoBG,EAAMM,EAAU,CAAC,KAAK;CAChD,EAEuB;AACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleGroupItem.js","names":["mergeProps","onCleanup","onMount","splitProps","JSX","clsx","toggleVariants","callEventHandler","useToggleGroupContext","ToggleGroupValue","toggleGroupItemVariants","ToggleGroupItemProps","ToggleGroupItem","props","TValue","Element","ctx","merged","type","const","local","rest","elementRef","HTMLButtonElement","variant","size","pressed","isPressed","value","disabled","tabIndex","highlighted","highlightedValue","isUsable","undefined","isFirstEnabled","registerItem","element","_el$","_tmpl$","addEventListener","e","setHighlightedValue","onFocus","$$click","onClick","defaultPrevented","toggleItem","currentTarget","_$use","el","_$spread","_$mergeProps","tabindex","data-variant","data-size","data-spacing","spacing","data-pressed","data-disabled","data-state","aria-pressed","class","classList","_$insert","children","_$delegateEvents"],"sources":["../../../../src/components/toggle-group/ToggleGroupItem/ToggleGroupItem.tsx"],"sourcesContent":["import { mergeProps, onCleanup, onMount, splitProps, type JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { toggleVariants } from \"~/components/toggle/Toggle/Toggle.styles\";\nimport { callEventHandler } from \"../call-event-handler\";\nimport { useToggleGroupContext } from \"../ToggleGroup/ToggleGroup.context\";\nimport type { ToggleGroupValue } from \"../ToggleGroup/ToggleGroup.types\";\nimport { toggleGroupItemVariants } from \"./ToggleGroupItem.styles\";\nimport type { ToggleGroupItemProps } from \"./ToggleGroupItem.types\";\n\n/**\n * ToggleGroupItem:ToggleGroup 内的两态按钮。\n *\n * - 选中值由 ToggleGroup 统一持有,点击通过 `ctx.toggleItem` 触发变更\n * - disabled 继承整组状态,可在 item 上单独禁用\n * - roving tabindex:整组只有一个 tab 停靠点,方向键在同组内移动焦点\n */\nexport function ToggleGroupItem<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(props: ToggleGroupItemProps<TValue>): JSX.Element {\n // context 用宽值类型读取:item 无法从父级推导 group 的值类型,\n // 自己的 TValue 始终可以传给宽类型参数\n const ctx = useToggleGroupContext(\"ToggleGroupItem\");\n const merged = mergeProps({ type: \"button\" as const }, props);\n\n const [local, rest] = splitProps(merged, [\n \"value\",\n \"variant\",\n \"size\",\n \"class\",\n \"classList\",\n \"disabled\",\n \"type\",\n \"onClick\",\n \"onFocus\",\n \"children\",\n ]);\n\n let elementRef: HTMLButtonElement | undefined;\n\n // 组级未显式指定 variant/size 时,item 可单独覆盖\n const variant = () => ctx.variant() ?? local.variant ?? \"default\";\n const size = () => ctx.size() ?? local.size ?? \"default\";\n const pressed = () => ctx.isPressed(local.value);\n const disabled = () => ctx.disabled() || !!local.disabled;\n\n // roving tabindex:高亮 item 持 0;高亮缺失或指向不可用 item(disabled/卸载)时,\n // 首个可用 item 持 0 作为键盘起点,避免整组键盘不可达\n const tabIndex = () => {\n if (disabled()) return -1;\n const highlighted = ctx.highlightedValue();\n if (highlighted === local.value && ctx.isUsable(local.value)) return 0;\n if (\n (highlighted === undefined || !ctx.isUsable(highlighted)) &&\n ctx.isFirstEnabled(local.value)\n ) {\n return 0;\n }\n return -1;\n };\n\n onMount(() => {\n onCleanup(\n ctx.registerItem({\n value: local.value,\n disabled,\n element: elementRef!,\n }),\n );\n });\n\n return (\n <button\n ref={(el) => {\n elementRef = el;\n }}\n type={local.type}\n disabled={disabled()}\n tabindex={tabIndex()}\n data-slot=\"toggle-group-item\"\n data-variant={variant()}\n data-size={size()}\n data-spacing={ctx.spacing()}\n data-pressed={pressed() ? \"\" : null}\n data-disabled={disabled() ? \"\" : null}\n data-state={pressed() ? \"on\" : \"off\"}\n aria-pressed={pressed()}\n class={clsx(\n toggleVariants({ variant: variant(), size: size() }),\n toggleGroupItemVariants(),\n local.class,\n )}\n classList={local.classList}\n onClick={(e) => {\n // 用户回调优先,可用 preventDefault() 阻止本次选中\n callEventHandler(local.onClick, e);\n if (!e.defaultPrevented && !disabled()) {\n ctx.toggleItem(local.value, e, e.currentTarget);\n }\n }}\n onFocus={(e) => {\n // 聚焦更新高亮(roving focus 起点)\n if (!disabled()) ctx.setHighlightedValue(local.value);\n callEventHandler(local.onFocus, e);\n }}\n {...rest}\n >\n {local.children}\n </button>\n );\n}\n"],"mappings":";;;;;;;;;AAgBA,SAAgBY,EAEdC,GAAkD;CAGlD,IAAMG,IAAMR,EAAsB,iBAAiB,GAC7CS,IAASjB,EAAW,EAAEkB,MAAM,SAAkB,GAAGL,CAAK,GAEtD,CAACO,GAAOC,KAAQlB,EAAWc,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAU,CACX,GAEGK,GAGEE,UAAgBR,EAAIQ,QAAQ,KAAKJ,EAAMI,WAAW,WAClDC,UAAaT,EAAIS,KAAK,KAAKL,EAAMK,QAAQ,WACzCC,UAAgBV,EAAIW,UAAUP,EAAMQ,KAAK,GACzCC,UAAiBb,EAAIa,SAAS,KAAK,CAAC,CAACT,EAAMS,UAI3CC,UAAiB;EACrB,IAAID,EAAS,GAAG,OAAO;EACvB,IAAME,IAAcf,EAAIgB,iBAAiB;EAQzC,OAPID,MAAgBX,EAAMQ,SAASZ,EAAIiB,SAASb,EAAMQ,KAAK,MAExDG,MAAgBG,KAAAA,KAAa,CAAClB,EAAIiB,SAASF,CAAW,MACvDf,EAAImB,eAAef,EAAMQ,KAAK,IAEvB,IAEF;CACT;CAYA,OAVA1B,QAAc;EACZD,EACEe,EAAIoB,aAAa;GACfR,OAAOR,EAAMQ;GACbC;GACAQ,SAASf;EACX,CAAC,CACH;CACF,CAAC,UAED;EAAA,IAAAgB,IAAAC,EAAA;EAoCmB,OApCnBD,EAAAE,iBAAA,UA6BcC,MAAM;GAGdlC,AADKsB,EAAS,KAAGb,EAAI0B,oBAAoBtB,EAAMQ,KAAK,GACpDrB,EAAiBa,EAAMuB,SAASF,CAAC;EACnC,CAAC,GAAAH,EAAAM,WAXSH,MAAM;GAGd,AADAlC,EAAiBa,EAAMyB,SAASJ,CAAC,GAC7B,CAACA,EAAEK,oBAAoB,CAACjB,EAAS,KACnCb,EAAI+B,WAAW3B,EAAMQ,OAAOa,GAAGA,EAAEO,aAAa;EAElD,GAACC,GA1BKC,MAAO;GACX5B,IAAa4B;EACf,GAACZ,CAAA,GAAAa,EAAAb,GAAAc,EAAA;GAAA,IACDlC,OAAI;IAAA,OAAEE,EAAMF;GAAI;GAAA,IAChBW,WAAQ;IAAA,OAAEA,EAAS;GAAC;GAAA,IACpBwB,WAAQ;IAAA,OAAEvB,EAAS;GAAC;GAAA,IAAA,iBAAA;IAAA,OAENN,EAAQ;GAAC;GAAA,IAAA,cAAA;IAAA,OACZC,EAAK;GAAC;GAAA,IAAA,iBAAA;IAAA,OACHT,EAAIyC,QAAQ;GAAC;GAAA,IAAA,iBAAA;IAAA,OACb/B,EAAQ,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OACpBG,EAAS,IAAI,KAAK;GAAI;GAAA,IAAA,eAAA;IAAA,OACzBH,EAAQ,IAAI,OAAO;GAAK;GAAA,IAAA,iBAAA;IAAA,OACtBA,EAAQ;GAAC;GAAA,
|
|
1
|
+
{"version":3,"file":"ToggleGroupItem.js","names":["mergeProps","onCleanup","onMount","splitProps","JSX","clsx","toggleVariants","callEventHandler","useToggleGroupContext","ToggleGroupValue","toggleGroupItemVariants","ToggleGroupItemProps","ToggleGroupItem","props","TValue","Element","ctx","merged","type","const","local","rest","elementRef","HTMLButtonElement","variant","size","pressed","isPressed","value","disabled","tabIndex","highlighted","highlightedValue","isUsable","undefined","isFirstEnabled","registerItem","element","_el$","_tmpl$","addEventListener","e","setHighlightedValue","onFocus","$$click","onClick","defaultPrevented","toggleItem","currentTarget","_$use","el","_$spread","_$mergeProps","tabindex","data-variant","data-size","data-spacing","spacing","data-pressed","data-disabled","data-state","aria-pressed","class","classList","_$insert","children","_$delegateEvents","mergeProps","_$mergeProps","_$delegateEvents","mergeProps$1","_tmpl$","ToggleGroupItem","ctx","useToggleGroupContext","merged","props","local","rest","splitProps","elementRef","variant","size","pressed","disabled","tabIndex","highlighted","onMount","_el$","callEventHandler","use","el","spread","mergeProps","\"class\"","clsx","toggleVariants","toggleGroupItemVariants","insert","delegateEvents"],"sources":["../../../../src/components/toggle-group/ToggleGroupItem/ToggleGroupItem.tsx"],"sourcesContent":["import { mergeProps, onCleanup, onMount, splitProps, type JSX } from \"solid-js\";\nimport { clsx } from \"~/utils\";\nimport { toggleVariants } from \"~/components/toggle/Toggle/Toggle.styles\";\nimport { callEventHandler } from \"../call-event-handler\";\nimport { useToggleGroupContext } from \"../ToggleGroup/ToggleGroup.context\";\nimport type { ToggleGroupValue } from \"../ToggleGroup/ToggleGroup.types\";\nimport { toggleGroupItemVariants } from \"./ToggleGroupItem.styles\";\nimport type { ToggleGroupItemProps } from \"./ToggleGroupItem.types\";\n\n/**\n * ToggleGroupItem:ToggleGroup 内的两态按钮。\n *\n * - 选中值由 ToggleGroup 统一持有,点击通过 `ctx.toggleItem` 触发变更\n * - disabled 继承整组状态,可在 item 上单独禁用\n * - roving tabindex:整组只有一个 tab 停靠点,方向键在同组内移动焦点\n */\nexport function ToggleGroupItem<\n TValue extends ToggleGroupValue = ToggleGroupValue,\n>(props: ToggleGroupItemProps<TValue>): JSX.Element {\n // context 用宽值类型读取:item 无法从父级推导 group 的值类型,\n // 自己的 TValue 始终可以传给宽类型参数\n const ctx = useToggleGroupContext(\"ToggleGroupItem\");\n const merged = mergeProps({ type: \"button\" as const }, props);\n\n const [local, rest] = splitProps(merged, [\n \"value\",\n \"variant\",\n \"size\",\n \"class\",\n \"classList\",\n \"disabled\",\n \"type\",\n \"onClick\",\n \"onFocus\",\n \"children\",\n ]);\n\n let elementRef: HTMLButtonElement | undefined;\n\n // 组级未显式指定 variant/size 时,item 可单独覆盖\n const variant = () => ctx.variant() ?? local.variant ?? \"default\";\n const size = () => ctx.size() ?? local.size ?? \"default\";\n const pressed = () => ctx.isPressed(local.value);\n const disabled = () => ctx.disabled() || !!local.disabled;\n\n // roving tabindex:高亮 item 持 0;高亮缺失或指向不可用 item(disabled/卸载)时,\n // 首个可用 item 持 0 作为键盘起点,避免整组键盘不可达\n const tabIndex = () => {\n if (disabled()) return -1;\n const highlighted = ctx.highlightedValue();\n if (highlighted === local.value && ctx.isUsable(local.value)) return 0;\n if (\n (highlighted === undefined || !ctx.isUsable(highlighted)) &&\n ctx.isFirstEnabled(local.value)\n ) {\n return 0;\n }\n return -1;\n };\n\n onMount(() => {\n onCleanup(\n ctx.registerItem({\n value: local.value,\n disabled,\n element: elementRef!,\n }),\n );\n });\n\n return (\n <button\n ref={(el) => {\n elementRef = el;\n }}\n type={local.type}\n disabled={disabled()}\n tabindex={tabIndex()}\n data-slot=\"toggle-group-item\"\n data-variant={variant()}\n data-size={size()}\n data-spacing={ctx.spacing()}\n data-pressed={pressed() ? \"\" : null}\n data-disabled={disabled() ? \"\" : null}\n data-state={pressed() ? \"on\" : \"off\"}\n aria-pressed={pressed()}\n class={clsx(\n toggleVariants({ variant: variant(), size: size() }),\n toggleGroupItemVariants(),\n local.class,\n )}\n classList={local.classList}\n onClick={(e) => {\n // 用户回调优先,可用 preventDefault() 阻止本次选中\n callEventHandler(local.onClick, e);\n if (!e.defaultPrevented && !disabled()) {\n ctx.toggleItem(local.value, e, e.currentTarget);\n }\n }}\n onFocus={(e) => {\n // 聚焦更新高亮(roving focus 起点)\n if (!disabled()) ctx.setHighlightedValue(local.value);\n callEventHandler(local.onFocus, e);\n }}\n {...rest}\n >\n {local.children}\n </button>\n );\n}\n"],"mappings":";;;;;;;;;AAgBA,SAAgBY,EAEdC,GAAkD;CAGlD,IAAMG,IAAMR,EAAsB,iBAAiB,GAC7CS,IAASjB,EAAW,EAAEkB,MAAM,SAAkB,GAAGL,CAAK,GAEtD,CAACO,GAAOC,KAAQlB,EAAWc,GAAQ;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAAU,CACX,GAEGK,GAGEE,UAAgBR,EAAIQ,QAAQ,KAAKJ,EAAMI,WAAW,WAClDC,UAAaT,EAAIS,KAAK,KAAKL,EAAMK,QAAQ,WACzCC,UAAgBV,EAAIW,UAAUP,EAAMQ,KAAK,GACzCC,UAAiBb,EAAIa,SAAS,KAAK,CAAC,CAACT,EAAMS,UAI3CC,UAAiB;EACrB,IAAID,EAAS,GAAG,OAAO;EACvB,IAAME,IAAcf,EAAIgB,iBAAiB;EAQzC,OAPID,MAAgBX,EAAMQ,SAASZ,EAAIiB,SAASb,EAAMQ,KAAK,MAExDG,MAAgBG,KAAAA,KAAa,CAAClB,EAAIiB,SAASF,CAAW,MACvDf,EAAImB,eAAef,EAAMQ,KAAK,IAEvB,IAEF;CACT;CAYA,OAVA1B,QAAc;EACZD,EACEe,EAAIoB,aAAa;GACfR,OAAOR,EAAMQ;GACbC;GACAQ,SAASf;EACX,CAAC,CACH;CACF,CAAC,UAED;EAAA,IAAAgB,IAAAC,EAAA;EAoCmB,OApCnBD,EAAAE,iBAAA,UA6BcC,MAAM;GAGdlC,AADKsB,EAAS,KAAGb,EAAI0B,oBAAoBtB,EAAMQ,KAAK,GACpDrB,EAAiBa,EAAMuB,SAASF,CAAC;EACnC,CAAC,GAAAH,EAAAM,WAXSH,MAAM;GAGd,AADAlC,EAAiBa,EAAMyB,SAASJ,CAAC,GAC7B,CAACA,EAAEK,oBAAoB,CAACjB,EAAS,KACnCb,EAAI+B,WAAW3B,EAAMQ,OAAOa,GAAGA,EAAEO,aAAa;EAElD,GAACC,GA1BKC,MAAO;GACX5B,IAAa4B;EACf,GAACZ,CAAA,GAAAa,EAAAb,GAAAc,EAAA;GAAA,IACDlC,OAAI;IAAA,OAAEE,EAAMF;GAAI;GAAA,IAChBW,WAAQ;IAAA,OAAEA,EAAS;GAAC;GAAA,IACpBwB,WAAQ;IAAA,OAAEvB,EAAS;GAAC;GAAA,IAAA,iBAAA;IAAA,OAENN,EAAQ;GAAC;GAAA,IAAA,cAAA;IAAA,OACZC,EAAK;GAAC;GAAA,IAAA,iBAAA;IAAA,OACHT,EAAIyC,QAAQ;GAAC;GAAA,IAAA,iBAAA;IAAA,OACb/B,EAAQ,IAAI,KAAK;GAAI;GAAA,IAAA,kBAAA;IAAA,OACpBG,EAAS,IAAI,KAAK;GAAI;GAAA,IAAA,eAAA;IAAA,OACzBH,EAAQ,IAAI,OAAO;GAAK;GAAA,IAAA,iBAAA;IAAA,OACtBA,EAAQ;GAAC;GAAA,IAAAoE,QAAA;IAAA,OAChBzF,EACLC,EAAe;KAAEkB,SAASA,EAAQ;KAAGC,MAAMA,EAAK;IAAE,CAAC,GACnDf,EAAwB,GACxBU,EAAM0C,KACR;GAAC;GAAA,IACDC,YAAS;IAAA,OAAE3C,EAAM2C;GAAS;EAAA,GAatB1C,CAAI,GAAA,IAAA,EAAA,GAAA2C,EAAA1B,SAEPlB,EAAM6C,QAAQ,GAAA3B;CAAA,EAAA,CAAA;AAGrB;AAAC4B,EAAA,CAAA,OAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleGroupItem.styles.js","names":[],"sources":["../../../../src/components/toggle-group/ToggleGroupItem/ToggleGroupItem.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * ToggleGroupItem 位于 ToggleGroup 内时需要的“拼接态”样式。\n *\n * 依赖根元素上的钩子:\n * - `group-data-[spacing=0]/toggle-group`:spacing 为 0 时相邻 item 拼接为整体\n * - `data-[spacing=0]`:item 自身的 data-spacing(shadcn 同样在 item 上输出)\n * - `group-data-horizontal|vertical/toggle-group`:按方向决定首尾圆角/边框\n * - `data-[variant=outline]`:outline 拼接时只保留内侧边框\n *\n * variant / size 的基础样式仍由 `toggleVariants` 提供,这里只补“组合关系”。\n */\nexport const toggleGroupItemVariants = cva(\n \"shrink-0 focus:z-10 focus-visible:z-10 group-data-[spacing=0]/toggle-group:rounded-none group-data-[spacing=0]/toggle-group:px-2 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-end]:pr-1.5 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-start]:pl-1.5 group-data-horizontal/toggle-group:data-[spacing=0]:first:rounded-l-lg group-data-vertical/toggle-group:data-[spacing=0]:first:rounded-t-lg group-data-horizontal/toggle-group:data-[spacing=0]:last:rounded-r-lg group-data-vertical/toggle-group:data-[spacing=0]:last:rounded-b-lg group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:border-l-0 group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:border-t-0 group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-l group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-t\",\n);\n"],"mappings":";;AAaA,
|
|
1
|
+
{"version":3,"file":"ToggleGroupItem.styles.js","names":["toggleGroupItemVariants","cva"],"sources":["../../../../src/components/toggle-group/ToggleGroupItem/ToggleGroupItem.styles.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\n\n/**\n * ToggleGroupItem 位于 ToggleGroup 内时需要的“拼接态”样式。\n *\n * 依赖根元素上的钩子:\n * - `group-data-[spacing=0]/toggle-group`:spacing 为 0 时相邻 item 拼接为整体\n * - `data-[spacing=0]`:item 自身的 data-spacing(shadcn 同样在 item 上输出)\n * - `group-data-horizontal|vertical/toggle-group`:按方向决定首尾圆角/边框\n * - `data-[variant=outline]`:outline 拼接时只保留内侧边框\n *\n * variant / size 的基础样式仍由 `toggleVariants` 提供,这里只补“组合关系”。\n */\nexport const toggleGroupItemVariants = cva(\n \"shrink-0 focus:z-10 focus-visible:z-10 group-data-[spacing=0]/toggle-group:rounded-none group-data-[spacing=0]/toggle-group:px-2 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-end]:pr-1.5 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-start]:pl-1.5 group-data-horizontal/toggle-group:data-[spacing=0]:first:rounded-l-lg group-data-vertical/toggle-group:data-[spacing=0]:first:rounded-t-lg group-data-horizontal/toggle-group:data-[spacing=0]:last:rounded-r-lg group-data-vertical/toggle-group:data-[spacing=0]:last:rounded-b-lg group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:border-l-0 group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:border-t-0 group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-l group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-t\",\n);\n"],"mappings":";;AAaA,IAAaA,IAA0BC,EACrC,k4BACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-event-handler.js","names":[],"sources":["../../../src/components/toggle-group/call-event-handler.ts"],"sourcesContent":["/**\n * 调用用户传入的事件处理器(兼容 Solid 的函数 / 函数数组 / bound 对象形式)。\n * splitProps 提取出的事件类型是 EventHandlerUnion,不能直接调用。\n */\nexport function callEventHandler<E extends Event>(\n handler: unknown,\n event: E,\n): void {\n const list = Array.isArray(handler) ? handler : [handler];\n for (const h of list) {\n if (typeof h === \"function\") (h as (e: E) => void)(event);\n }\n}\n"],"mappings":";AAIA,
|
|
1
|
+
{"version":3,"file":"call-event-handler.js","names":["callEventHandler","list","handler","h","event"],"sources":["../../../src/components/toggle-group/call-event-handler.ts"],"sourcesContent":["/**\n * 调用用户传入的事件处理器(兼容 Solid 的函数 / 函数数组 / bound 对象形式)。\n * splitProps 提取出的事件类型是 EventHandlerUnion,不能直接调用。\n */\nexport function callEventHandler<E extends Event>(\n handler: unknown,\n event: E,\n): void {\n const list = Array.isArray(handler) ? handler : [handler];\n for (const h of list) {\n if (typeof h === \"function\") (h as (e: E) => void)(event);\n }\n}\n"],"mappings":";AAIA,SAAgBA,EACd,GACA,GACM;CACN,IAAMC,IAAO,MAAM,QAAQC,CAAO,IAAIA,IAAU,CAACA,CAAO;CACxD,KAAK,IAAMC,KAAKF,GACd,AAAI,OAAOE,KAAM,cAAYA,EAAsBC,CAAK;AAE5D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.context.js","names":[],"sources":["../../../../src/components/tooltip/Tooltip/Tooltip.context.ts"],"sourcesContent":["import { createContext, useContext } from \"solid-js\";\nimport type { TooltipContextValue } from \"./Tooltip.types\";\n\nexport const TooltipContext = createContext<TooltipContextValue>();\n\nexport function useTooltipContext(component: string): TooltipContextValue {\n const ctx = useContext(TooltipContext);\n if (!ctx) {\n throw new Error(`<${component}> 必须渲染在 <Tooltip> 内部`);\n }\n return ctx;\n}\n"],"mappings":";;AAGA,
|
|
1
|
+
{"version":3,"file":"Tooltip.context.js","names":["TooltipContext","createContext","useTooltipContext","ctx","useContext","component"],"sources":["../../../../src/components/tooltip/Tooltip/Tooltip.context.ts"],"sourcesContent":["import { createContext, useContext } from \"solid-js\";\nimport type { TooltipContextValue } from \"./Tooltip.types\";\n\nexport const TooltipContext = createContext<TooltipContextValue>();\n\nexport function useTooltipContext(component: string): TooltipContextValue {\n const ctx = useContext(TooltipContext);\n if (!ctx) {\n throw new Error(`<${component}> 必须渲染在 <Tooltip> 内部`);\n }\n return ctx;\n}\n"],"mappings":";;AAGA,IAAaA,IAAiBC,EAAmC;AAEjE,SAAgBC,EAAkB,GAAwC;CACxE,IAAMC,IAAMC,EAAWJ,CAAc;CACrC,IAAI,CAACG,GACH,MAAU,MAAM,IAAIE,EAAU,qBAAqB;CAErD,OAAOF;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","names":["createSignal","createMemo","createUniqueId","createEffect","onCleanup","JSX","TooltipContext","useTooltipProviderContext","useTooltipGroupContext","TooltipContextValue","TooltipProps","Rect","DEFAULT_OPEN_DELAY","DEFAULT_CLOSE_DELAY","Tooltip","props","Element","group","provider","internalOpen","setInternalOpen","defaultOpen","open","undefined","disabled","reference","setReference","floating","setFloating","HTMLElement","pendingSlideFrom","setPendingSlideFrom","suppressExitAnimation","setSuppressExitAnimation","commit","next","onOpenChange","openTimer","closeTimer","clearTimers","window","clearTimeout","requestOpen","claimedRect","claim","setTimeout","openDelay","delay","requestClose","closeDelay","openImmediate","closeImmediate","forceCloseForGroup","keepOpen","unregister","registerActive","rect","getBoundingClientRect","forceClose","contentId","ctx","clearPendingSlideFrom","consumeSuppressExitAnimation","value","_$createComponent","Provider","children"],"sources":["../../../../src/components/tooltip/Tooltip/Tooltip.tsx"],"sourcesContent":["import {\n createSignal,\n createMemo,\n createUniqueId,\n createEffect,\n onCleanup,\n type JSX,\n} from \"solid-js\";\nimport { TooltipContext } from \"./Tooltip.context\";\nimport { useTooltipProviderContext } from \"../TooltipProvider/TooltipProvider.context\";\nimport { useTooltipGroupContext } from \"../TooltipGroup/TooltipGroup.context\";\nimport type { TooltipContextValue, TooltipProps } from \"./Tooltip.types\";\nimport type { Rect } from \"~/lib\";\n\nconst DEFAULT_OPEN_DELAY = 0;\nconst DEFAULT_CLOSE_DELAY = 150;\n\n/**\n * Tooltip 根组件:不渲染任何 DOM,只负责状态管理 + 提供 context。\n * 真正的展示交给 <TooltipTrigger>/<TooltipContent>/<TooltipArrow>。\n *\n * 如果外面包了 <TooltipGroup>,组内相邻 trigger 之间切换 hover 会跳过\n * openDelay,并触发\"从旧位置滑到新位置\"的过渡(细节见 TooltipGroup.context.ts)。\n *\n * @example\n * ```tsx\n * <Tooltip openDelay={300}>\n * <TooltipTrigger>悬停我</TooltipTrigger>\n * <TooltipContent>\n * 提示内容\n * <TooltipArrow />\n * </TooltipContent>\n * </Tooltip>\n * ```\n */\nexport function Tooltip(props: TooltipProps): JSX.Element {\n const group = useTooltipGroupContext(); // undefined 是正常情况,代表没用 TooltipGroup\n const provider = useTooltipProviderContext();\n\n const [internalOpen, setInternalOpen] = createSignal(\n props.defaultOpen ?? false,\n );\n const open = createMemo(() =>\n props.open !== undefined ? props.open : internalOpen(),\n );\n const disabled = createMemo(() => !!props.disabled);\n\n const [reference, setReference] = createSignal<Element>();\n const [floating, setFloating] = createSignal<HTMLElement>();\n const [pendingSlideFrom, setPendingSlideFrom] = createSignal<Rect>();\n const [suppressExitAnimation, setSuppressExitAnimation] = createSignal(false);\n\n const commit = (next: boolean) => {\n if (props.open === undefined) setInternalOpen(next);\n props.onOpenChange?.(next);\n };\n\n // 用 window.setTimeout/clearTimeout(而不是裸的全局 setTimeout)显式拿到\n // DOM lib 的重载(返回 number),避免和 @types/node 的 NodeJS.Timeout 重载冲突。\n let openTimer: number | undefined;\n let closeTimer: number | undefined;\n\n const clearTimers = () => {\n if (openTimer !== undefined) {\n window.clearTimeout(openTimer);\n openTimer = undefined;\n }\n if (closeTimer !== undefined) {\n window.clearTimeout(closeTimer);\n closeTimer = undefined;\n }\n };\n\n const requestOpen = () => {\n clearTimers();\n if (disabled() || open()) return;\n\n // 组内抢占:如果当前组里已经有一个活跃的 tooltip(哪怕它还在自己的\n // closeDelay 倒计时里,还没真正关闭),claim() 会立即强制关闭它、\n // 把它此刻的矩形要回来——这里直接跳过 openDelay,走\"滑入\"路径。\n const claimedRect = group?.claim();\n if (claimedRect) {\n setPendingSlideFrom(claimedRect);\n commit(true);\n return;\n }\n\n openTimer = window.setTimeout(\n () => commit(true),\n props.openDelay ?? provider?.delay() ?? DEFAULT_OPEN_DELAY,\n );\n };\n\n const requestClose = () => {\n clearTimers();\n closeTimer = window.setTimeout(\n () => commit(false),\n props.closeDelay ?? provider?.closeDelay() ?? DEFAULT_CLOSE_DELAY,\n );\n };\n\n const openImmediate = () => {\n if (disabled()) return;\n clearTimers();\n commit(true);\n };\n\n const closeImmediate = () => {\n clearTimers();\n commit(false);\n };\n\n /**\n * 专门给 <TooltipGroup> 抢占用的关闭方式:和 closeImmediate 的区别是,\n * 这里会额外标记 suppressExitAnimation,告诉 TooltipContent 的 Presence\n * 逻辑跳过退场动画、立即卸载——因为这次关闭是\"被新 tooltip 取代\",而不是\n * 用户主动关闭,旧的应该立刻让位,不该和正在滑入的新 tooltip 同时可见。\n * Escape/blur 等正常关闭场景依然走 closeImmediate,退场动画不受影响。\n */\n const forceCloseForGroup = () => {\n setSuppressExitAnimation(true);\n clearTimers();\n commit(false);\n };\n\n const keepOpen = () => {\n if (closeTimer !== undefined) {\n window.clearTimeout(closeTimer);\n closeTimer = undefined;\n }\n };\n\n onCleanup(clearTimers);\n\n // 打开期间把自己登记成\"组内当前活跃的 tooltip\",供其他 trigger 打开时\n // claim 走(触发平移过渡)。关闭或卸载时自动取消登记。\n createEffect(() => {\n if (!group || !open()) return;\n const unregister = group.registerActive({\n rect: () => floating()?.getBoundingClientRect(),\n forceClose: forceCloseForGroup,\n });\n onCleanup(unregister);\n });\n\n const contentId = `tooltip-${createUniqueId()}`;\n\n const ctx: TooltipContextValue = {\n open,\n disabled,\n contentId,\n reference,\n setReference,\n floating,\n setFloating,\n requestOpen,\n requestClose,\n openImmediate,\n closeImmediate,\n keepOpen,\n pendingSlideFrom,\n clearPendingSlideFrom: () => setPendingSlideFrom(undefined),\n suppressExitAnimation,\n consumeSuppressExitAnimation: () => {\n const value = suppressExitAnimation();\n if (value) setSuppressExitAnimation(false);\n return value;\n },\n };\n\n return (\n <TooltipContext.Provider value={ctx}>\n {props.children}\n </TooltipContext.Provider>\n );\n}\n"],"mappings":";;;;;;AAcA,IAAMY,IAAqB,GACrBC,IAAsB;AAoB5B,SAAgBC,EAAQC,GAAkC;CACxD,IAAME,IAAQT,EAAuB,GAC/BU,IAAWX,EAA0B,GAErC,CAACY,GAAcC,KAAmBpB,EACtCe,EAAMM,eAAe,EACvB,GACMC,IAAOrB,QACXc,EAAMO,SAASC,KAAAA,IAAyBJ,EAAa,IAA1BJ,EAAMO,IACnC,GACME,IAAWvB,QAAiB,CAAC,CAACc,EAAMS,QAAQ,GAE5C,CAACC,GAAWC,KAAgB1B,EAAsB,GAClD,CAAC2B,GAAUC,KAAe5B,EAA0B,GACpD,CAAC8B,GAAkBC,KAAuB/B,EAAmB,GAC7D,CAACgC,GAAuBC,KAA4BjC,EAAa,EAAK,GAEtEkC,KAAUC,MAAkB;EAEhCpB,AADIA,EAAMO,SAASC,KAAAA,KAAWH,EAAgBe,CAAI,GAClDpB,EAAMqB,eAAeD,CAAI;CAC3B,GAIIE,GACAC,GAEEC,UAAoB;EAKxB,AAJIF,MAAcd,KAAAA,MAChBiB,OAAOC,aAAaJ,CAAS,GAC7BA,IAAYd,KAAAA,IAEVe,MAAef,KAAAA,MACjBiB,OAAOC,aAAaH,CAAU,GAC9BA,IAAaf,KAAAA;CAEjB,GAEMmB,UAAoB;EAExB,IADAH,EAAY,GACRf,EAAS,KAAKF,EAAK,GAAG;EAK1B,IAAMqB,IAAc1B,GAAO2B,MAAM;EACjC,IAAID,GAAa;GAEfT,AADAH,EAAoBY,CAAW,GAC/BT,EAAO,EAAI;GACX;EACF;EAEAG,IAAYG,OAAOK,iBACXX,EAAO,EAAI,GACjBnB,EAAM+B,aAAa5B,GAAU6B,MAAM,KAAKnC,CAC1C;CACF,GAEMoC,UAAqB;EAEzBV,AADAC,EAAY,GACZD,IAAaE,OAAOK,iBACZX,EAAO,EAAK,GAClBnB,EAAMkC,cAAc/B,GAAU+B,WAAW,KAAKpC,CAChD;CACF,GAEMqC,UAAsB;
|
|
1
|
+
{"version":3,"file":"Tooltip.js","names":["createSignal","createMemo","createUniqueId","createEffect","onCleanup","JSX","TooltipContext","useTooltipProviderContext","useTooltipGroupContext","TooltipContextValue","TooltipProps","Rect","DEFAULT_OPEN_DELAY","DEFAULT_CLOSE_DELAY","Tooltip","props","Element","group","provider","internalOpen","setInternalOpen","defaultOpen","open","undefined","disabled","reference","setReference","floating","setFloating","HTMLElement","pendingSlideFrom","setPendingSlideFrom","suppressExitAnimation","setSuppressExitAnimation","commit","next","onOpenChange","openTimer","closeTimer","clearTimers","window","clearTimeout","requestOpen","claimedRect","claim","setTimeout","openDelay","delay","requestClose","closeDelay","openImmediate","closeImmediate","forceCloseForGroup","keepOpen","unregister","registerActive","rect","getBoundingClientRect","forceClose","contentId","ctx","clearPendingSlideFrom","consumeSuppressExitAnimation","value","_$createComponent","Provider","children","_$createComponent","DEFAULT_OPEN_DELAY","DEFAULT_CLOSE_DELAY","Tooltip","group","useTooltipGroupContext","provider","useTooltipProviderContext","internalOpen","setInternalOpen","createSignal","props","open","createMemo","disabled","reference","setReference","floating","setFloating","pendingSlideFrom","setPendingSlideFrom","suppressExitAnimation","setSuppressExitAnimation","commit","next","openTimer","closeTimer","clearTimers","requestOpen","claimedRect","requestClose","openImmediate","closeImmediate","forceCloseForGroup","keepOpen","onCleanup","createEffect","unregister","ctx","createUniqueId","value","createComponent","TooltipContext"],"sources":["../../../../src/components/tooltip/Tooltip/Tooltip.tsx"],"sourcesContent":["import {\n createSignal,\n createMemo,\n createUniqueId,\n createEffect,\n onCleanup,\n type JSX,\n} from \"solid-js\";\nimport { TooltipContext } from \"./Tooltip.context\";\nimport { useTooltipProviderContext } from \"../TooltipProvider/TooltipProvider.context\";\nimport { useTooltipGroupContext } from \"../TooltipGroup/TooltipGroup.context\";\nimport type { TooltipContextValue, TooltipProps } from \"./Tooltip.types\";\nimport type { Rect } from \"~/lib\";\n\nconst DEFAULT_OPEN_DELAY = 0;\nconst DEFAULT_CLOSE_DELAY = 150;\n\n/**\n * Tooltip 根组件:不渲染任何 DOM,只负责状态管理 + 提供 context。\n * 真正的展示交给 <TooltipTrigger>/<TooltipContent>/<TooltipArrow>。\n *\n * 如果外面包了 <TooltipGroup>,组内相邻 trigger 之间切换 hover 会跳过\n * openDelay,并触发\"从旧位置滑到新位置\"的过渡(细节见 TooltipGroup.context.ts)。\n *\n * @example\n * ```tsx\n * <Tooltip openDelay={300}>\n * <TooltipTrigger>悬停我</TooltipTrigger>\n * <TooltipContent>\n * 提示内容\n * <TooltipArrow />\n * </TooltipContent>\n * </Tooltip>\n * ```\n */\nexport function Tooltip(props: TooltipProps): JSX.Element {\n const group = useTooltipGroupContext(); // undefined 是正常情况,代表没用 TooltipGroup\n const provider = useTooltipProviderContext();\n\n const [internalOpen, setInternalOpen] = createSignal(\n props.defaultOpen ?? false,\n );\n const open = createMemo(() =>\n props.open !== undefined ? props.open : internalOpen(),\n );\n const disabled = createMemo(() => !!props.disabled);\n\n const [reference, setReference] = createSignal<Element>();\n const [floating, setFloating] = createSignal<HTMLElement>();\n const [pendingSlideFrom, setPendingSlideFrom] = createSignal<Rect>();\n const [suppressExitAnimation, setSuppressExitAnimation] = createSignal(false);\n\n const commit = (next: boolean) => {\n if (props.open === undefined) setInternalOpen(next);\n props.onOpenChange?.(next);\n };\n\n // 用 window.setTimeout/clearTimeout(而不是裸的全局 setTimeout)显式拿到\n // DOM lib 的重载(返回 number),避免和 @types/node 的 NodeJS.Timeout 重载冲突。\n let openTimer: number | undefined;\n let closeTimer: number | undefined;\n\n const clearTimers = () => {\n if (openTimer !== undefined) {\n window.clearTimeout(openTimer);\n openTimer = undefined;\n }\n if (closeTimer !== undefined) {\n window.clearTimeout(closeTimer);\n closeTimer = undefined;\n }\n };\n\n const requestOpen = () => {\n clearTimers();\n if (disabled() || open()) return;\n\n // 组内抢占:如果当前组里已经有一个活跃的 tooltip(哪怕它还在自己的\n // closeDelay 倒计时里,还没真正关闭),claim() 会立即强制关闭它、\n // 把它此刻的矩形要回来——这里直接跳过 openDelay,走\"滑入\"路径。\n const claimedRect = group?.claim();\n if (claimedRect) {\n setPendingSlideFrom(claimedRect);\n commit(true);\n return;\n }\n\n openTimer = window.setTimeout(\n () => commit(true),\n props.openDelay ?? provider?.delay() ?? DEFAULT_OPEN_DELAY,\n );\n };\n\n const requestClose = () => {\n clearTimers();\n closeTimer = window.setTimeout(\n () => commit(false),\n props.closeDelay ?? provider?.closeDelay() ?? DEFAULT_CLOSE_DELAY,\n );\n };\n\n const openImmediate = () => {\n if (disabled()) return;\n clearTimers();\n commit(true);\n };\n\n const closeImmediate = () => {\n clearTimers();\n commit(false);\n };\n\n /**\n * 专门给 <TooltipGroup> 抢占用的关闭方式:和 closeImmediate 的区别是,\n * 这里会额外标记 suppressExitAnimation,告诉 TooltipContent 的 Presence\n * 逻辑跳过退场动画、立即卸载——因为这次关闭是\"被新 tooltip 取代\",而不是\n * 用户主动关闭,旧的应该立刻让位,不该和正在滑入的新 tooltip 同时可见。\n * Escape/blur 等正常关闭场景依然走 closeImmediate,退场动画不受影响。\n */\n const forceCloseForGroup = () => {\n setSuppressExitAnimation(true);\n clearTimers();\n commit(false);\n };\n\n const keepOpen = () => {\n if (closeTimer !== undefined) {\n window.clearTimeout(closeTimer);\n closeTimer = undefined;\n }\n };\n\n onCleanup(clearTimers);\n\n // 打开期间把自己登记成\"组内当前活跃的 tooltip\",供其他 trigger 打开时\n // claim 走(触发平移过渡)。关闭或卸载时自动取消登记。\n createEffect(() => {\n if (!group || !open()) return;\n const unregister = group.registerActive({\n rect: () => floating()?.getBoundingClientRect(),\n forceClose: forceCloseForGroup,\n });\n onCleanup(unregister);\n });\n\n const contentId = `tooltip-${createUniqueId()}`;\n\n const ctx: TooltipContextValue = {\n open,\n disabled,\n contentId,\n reference,\n setReference,\n floating,\n setFloating,\n requestOpen,\n requestClose,\n openImmediate,\n closeImmediate,\n keepOpen,\n pendingSlideFrom,\n clearPendingSlideFrom: () => setPendingSlideFrom(undefined),\n suppressExitAnimation,\n consumeSuppressExitAnimation: () => {\n const value = suppressExitAnimation();\n if (value) setSuppressExitAnimation(false);\n return value;\n },\n };\n\n return (\n <TooltipContext.Provider value={ctx}>\n {props.children}\n </TooltipContext.Provider>\n );\n}\n"],"mappings":";;;;;;AAcA,IAAMY,IAAqB,GACrBC,IAAsB;AAoB5B,SAAgBC,EAAQC,GAAkC;CACxD,IAAME,IAAQT,EAAuB,GAC/BU,IAAWX,EAA0B,GAErC,CAACY,GAAcC,KAAmBpB,EACtCe,EAAMM,eAAe,EACvB,GACMC,IAAOrB,QACXc,EAAMO,SAASC,KAAAA,IAAyBJ,EAAa,IAA1BJ,EAAMO,IACnC,GACME,IAAWvB,QAAiB,CAAC,CAACc,EAAMS,QAAQ,GAE5C,CAACC,GAAWC,KAAgB1B,EAAsB,GAClD,CAAC2B,GAAUC,KAAe5B,EAA0B,GACpD,CAAC8B,GAAkBC,KAAuB/B,EAAmB,GAC7D,CAACgC,GAAuBC,KAA4BjC,EAAa,EAAK,GAEtEkC,KAAUC,MAAkB;EAEhCpB,AADIA,EAAMO,SAASC,KAAAA,KAAWH,EAAgBe,CAAI,GAClDpB,EAAMqB,eAAeD,CAAI;CAC3B,GAIIE,GACAC,GAEEC,UAAoB;EAKxB,AAJIF,MAAcd,KAAAA,MAChBiB,OAAOC,aAAaJ,CAAS,GAC7BA,IAAYd,KAAAA,IAEVe,MAAef,KAAAA,MACjBiB,OAAOC,aAAaH,CAAU,GAC9BA,IAAaf,KAAAA;CAEjB,GAEMmB,UAAoB;EAExB,IADAH,EAAY,GACRf,EAAS,KAAKF,EAAK,GAAG;EAK1B,IAAMqB,IAAc1B,GAAO2B,MAAM;EACjC,IAAID,GAAa;GAEfT,AADAH,EAAoBY,CAAW,GAC/BT,EAAO,EAAI;GACX;EACF;EAEAG,IAAYG,OAAOK,iBACXX,EAAO,EAAI,GACjBnB,EAAM+B,aAAa5B,GAAU6B,MAAM,KAAKnC,CAC1C;CACF,GAEMoC,UAAqB;EAEzBV,AADAC,EAAY,GACZD,IAAaE,OAAOK,iBACZX,EAAO,EAAK,GAClBnB,EAAMkC,cAAc/B,GAAU+B,WAAW,KAAKpC,CAChD;CACF,GAEMqC,UAAsB;EAC1B,AAAI1B,EAAS,MACbe,EAAY,GACZL,EAAO,EAAI;CACb,GAEMiB,UAAuB;EAE3BjB,AADAK,EAAY,GACZL,EAAO,EAAK;CACd,GASMkB,UAA2B;EAG/BlB,AAFAD,EAAyB,EAAI,GAC7BM,EAAY,GACZL,EAAO,EAAK;CACd,GAEMmB,UAAiB;EACrB,AAAIf,MAAef,KAAAA,MACjBiB,OAAOC,aAAaH,CAAU,GAC9BA,IAAaf,KAAAA;CAEjB;CAMApB,AAJAC,EAAUmC,CAAW,GAIrBpC,QAAmB;EACjB,IAAI,CAACc,KAAS,CAACK,EAAK,GAAG;EACvB,IAAMgC,IAAarC,EAAMsC,eAAe;GACtCC,YAAY7B,EAAS,CAAC,EAAE8B,sBAAsB;GAC9CC,YAAYN;EACd,CAAC;EACDhD,EAAUkD,CAAU;CACtB,CAAC;CAID,IAAMM,IAA2B;EAC/BtC;EACAE;EACAmC,WAAAA,WAL2BzD,EAAe;EAM1CuB;EACAC;EACAC;EACAC;EACAc;EACAM;EACAE;EACAC;EACAE;EACAvB;EACA+B,6BAA6B9B,EAAoBR,KAAAA,CAAS;EAC1DS;EACA8B,oCAAoC;GAClC,IAAMC,IAAQ/B,EAAsB;GAEpC,OADI+B,KAAO9B,EAAyB,EAAK,GAClC8B;EACT;CACF;CAEA,OAAAC,EACG1D,EAAe2D,UAAQ;EAACF,OAAOH;EAAG,IAAAM,WAAA;GAAA,OAChCnD,EAAMmD;EAAQ;CAAA,CAAA;AAGrB"}
|
|
@@ -6,4 +6,4 @@ export interface TooltipArrowProps {
|
|
|
6
6
|
* 采用 shadcn Base UI 的定位方式:通过 data-side / data-align 和 CSS 变量
|
|
7
7
|
* 完成贴边与对齐,不手动计算 top/left。
|
|
8
8
|
*/
|
|
9
|
-
export declare function TooltipArrow(props: TooltipArrowProps): import(
|
|
9
|
+
export declare function TooltipArrow(props: TooltipArrowProps): import('solid-js').JSX.Element;
|