@neut/ui 0.0.17 → 0.0.18
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.js +3 -0
- package/dist/components/accordion/Accordion/Accordion.js.map +1 -1
- package/dist/components/accordion/AccordionContent/AccordionContent.js +27 -21
- package/dist/components/accordion/AccordionContent/AccordionContent.js.map +1 -1
- package/dist/components/accordion/AccordionItem/AccordionItem.js +3 -0
- package/dist/components/accordion/AccordionItem/AccordionItem.js.map +1 -1
- package/dist/components/accordion/AccordionTrigger/AccordionTrigger.js +19 -18
- package/dist/components/accordion/AccordionTrigger/AccordionTrigger.js.map +1 -1
- package/dist/components/alert/Alert/Alert.js +8 -3
- package/dist/components/alert/Alert/Alert.js.map +1 -1
- package/dist/components/alert/AlertAction/AlertAction.js +8 -3
- package/dist/components/alert/AlertAction/AlertAction.js.map +1 -1
- package/dist/components/alert/AlertDescription/AlertDescription.js +8 -3
- package/dist/components/alert/AlertDescription/AlertDescription.js.map +1 -1
- package/dist/components/alert/AlertTitle/AlertTitle.js +8 -3
- package/dist/components/alert/AlertTitle/AlertTitle.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.d.ts +3 -1
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.js +6 -1
- package/dist/components/alert-dialog/AlertDialog/AlertDialog.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.js +9 -7
- package/dist/components/alert-dialog/AlertDialogCancel/AlertDialogCancel.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogContent/AlertDialogContent.types.d.ts +9 -3
- package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.js +8 -3
- package/dist/components/alert-dialog/AlertDialogDescription/AlertDialogDescription.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.js +8 -3
- package/dist/components/alert-dialog/AlertDialogFooter/AlertDialogFooter.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.js +8 -3
- package/dist/components/alert-dialog/AlertDialogHeader/AlertDialogHeader.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.js +8 -3
- package/dist/components/alert-dialog/AlertDialogMedia/AlertDialogMedia.js.map +1 -1
- package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.js +8 -3
- package/dist/components/alert-dialog/AlertDialogTitle/AlertDialogTitle.js.map +1 -1
- package/dist/components/aspect-ratio/AspectRatio.js +3 -0
- package/dist/components/aspect-ratio/AspectRatio.js.map +1 -1
- package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.js +15 -7
- package/dist/components/attachment/AttachmentTrigger/AttachmentTrigger.js.map +1 -1
- package/dist/components/avatar/Avatar/Avatar.context.d.ts +7 -0
- package/dist/components/avatar/Avatar/Avatar.context.js +1 -1
- package/dist/components/avatar/Avatar/Avatar.context.js.map +1 -1
- package/dist/components/avatar/Avatar/Avatar.js +7 -2
- package/dist/components/avatar/Avatar/Avatar.js.map +1 -1
- package/dist/components/avatar/AvatarBadge/AvatarBadge.js +8 -3
- package/dist/components/avatar/AvatarBadge/AvatarBadge.js.map +1 -1
- package/dist/components/avatar/AvatarFallback/AvatarFallback.js +10 -5
- package/dist/components/avatar/AvatarFallback/AvatarFallback.js.map +1 -1
- package/dist/components/avatar/AvatarGroup/AvatarGroup.js +8 -3
- package/dist/components/avatar/AvatarGroup/AvatarGroup.js.map +1 -1
- package/dist/components/avatar/AvatarGroupCount/AvatarGroupCount.js +8 -3
- package/dist/components/avatar/AvatarGroupCount/AvatarGroupCount.js.map +1 -1
- package/dist/components/avatar/AvatarImage/AvatarImage.js +19 -12
- package/dist/components/avatar/AvatarImage/AvatarImage.js.map +1 -1
- package/dist/components/badge/Badge.js +9 -4
- package/dist/components/badge/Badge.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.js +8 -3
- package/dist/components/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbItem/BreadcrumbItem.js +8 -3
- package/dist/components/breadcrumb/BreadcrumbItem/BreadcrumbItem.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbLink/BreadcrumbLink.js +3 -0
- package/dist/components/breadcrumb/BreadcrumbLink/BreadcrumbLink.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbList/BreadcrumbList.js +8 -3
- package/dist/components/breadcrumb/BreadcrumbList/BreadcrumbList.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbPage/BreadcrumbPage.js +8 -3
- package/dist/components/breadcrumb/BreadcrumbPage/BreadcrumbPage.js.map +1 -1
- package/dist/components/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.js +8 -3
- package/dist/components/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.js.map +1 -1
- package/dist/components/bubble/BubbleContent/BubbleContent.js +21 -10
- package/dist/components/bubble/BubbleContent/BubbleContent.js.map +1 -1
- package/dist/components/button/Button.js +3 -0
- package/dist/components/button/Button.js.map +1 -1
- package/dist/components/button-group/ButtonGroup/ButtonGroup.js +3 -0
- package/dist/components/button-group/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/button-group/ButtonGroupText/ButtonGroupText.js +16 -7
- package/dist/components/button-group/ButtonGroupText/ButtonGroupText.js.map +1 -1
- package/dist/components/calendar/Calendar/Calendar.d.ts +2 -3
- package/dist/components/calendar/Calendar/Calendar.js +89 -264
- package/dist/components/calendar/Calendar/Calendar.js.map +1 -1
- package/dist/components/calendar/Calendar/Calendar.options.d.ts +43 -0
- package/dist/components/calendar/Calendar/Calendar.options.js +38 -0
- package/dist/components/calendar/Calendar/Calendar.options.js.map +1 -0
- package/dist/components/calendar/Calendar/Calendar.selection.d.ts +16 -0
- package/dist/components/calendar/Calendar/Calendar.selection.js +50 -0
- package/dist/components/calendar/Calendar/Calendar.selection.js.map +1 -0
- package/dist/components/calendar/Calendar/Calendar.styles.d.ts +8 -0
- package/dist/components/calendar/Calendar/Calendar.styles.js +32 -0
- package/dist/components/calendar/Calendar/Calendar.styles.js.map +1 -0
- package/dist/components/calendar/Calendar/Calendar.utils.d.ts +3 -1
- package/dist/components/calendar/Calendar/Calendar.utils.js +4 -1
- package/dist/components/calendar/Calendar/Calendar.utils.js.map +1 -1
- package/dist/components/calendar/Calendar/CalendarDay.d.ts +28 -0
- package/dist/components/calendar/Calendar/CalendarDay.js +41 -0
- package/dist/components/calendar/Calendar/CalendarDay.js.map +1 -0
- package/dist/components/calendar/Calendar/CalendarMonth.d.ts +35 -0
- package/dist/components/calendar/Calendar/CalendarMonth.js +127 -0
- package/dist/components/calendar/Calendar/CalendarMonth.js.map +1 -0
- package/dist/components/calendar/Calendar/CalendarMonthCaption.d.ts +22 -0
- package/dist/components/calendar/Calendar/CalendarMonthCaption.js +103 -0
- package/dist/components/calendar/Calendar/CalendarMonthCaption.js.map +1 -0
- package/dist/components/calendar/index.js +3 -2
- package/dist/components/card/Card/Card.js +3 -0
- package/dist/components/card/Card/Card.js.map +1 -1
- package/dist/components/card/CardAction/CardAction.js +8 -3
- package/dist/components/card/CardAction/CardAction.js.map +1 -1
- package/dist/components/card/CardContent/CardContent.js +8 -3
- package/dist/components/card/CardContent/CardContent.js.map +1 -1
- package/dist/components/card/CardDescription/CardDescription.js +8 -3
- package/dist/components/card/CardDescription/CardDescription.js.map +1 -1
- package/dist/components/card/CardFooter/CardFooter.js +8 -3
- package/dist/components/card/CardFooter/CardFooter.js.map +1 -1
- package/dist/components/card/CardHeader/CardHeader.js +8 -3
- package/dist/components/card/CardHeader/CardHeader.js.map +1 -1
- package/dist/components/card/CardTitle/CardTitle.js +8 -3
- package/dist/components/card/CardTitle/CardTitle.js.map +1 -1
- package/dist/components/carousel/Carousel/Carousel.context.js +1 -1
- package/dist/components/carousel/Carousel/Carousel.context.js.map +1 -1
- package/dist/components/carousel/Carousel/Carousel.js +19 -12
- package/dist/components/carousel/Carousel/Carousel.js.map +1 -1
- package/dist/components/carousel/Carousel/useKeyboardNavigation.d.ts +11 -1
- package/dist/components/carousel/Carousel/useKeyboardNavigation.js +5 -4
- package/dist/components/carousel/Carousel/useKeyboardNavigation.js.map +1 -1
- package/dist/components/carousel/CarouselContent/CarouselContent.js +8 -3
- package/dist/components/carousel/CarouselContent/CarouselContent.js.map +1 -1
- package/dist/components/carousel/CarouselNext/CarouselNext.js +29 -16
- package/dist/components/carousel/CarouselNext/CarouselNext.js.map +1 -1
- package/dist/components/carousel/CarouselPrevious/CarouselPrevious.js +29 -16
- package/dist/components/carousel/CarouselPrevious/CarouselPrevious.js.map +1 -1
- package/dist/components/checkbox/Checkbox/Checkbox.js +32 -25
- package/dist/components/checkbox/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/collapsible/Collapsible/Collapsible.context.js +1 -1
- package/dist/components/collapsible/Collapsible/Collapsible.context.js.map +1 -1
- package/dist/components/collapsible/CollapsibleTrigger/CollapsibleTrigger.js +13 -12
- package/dist/components/collapsible/CollapsibleTrigger/CollapsibleTrigger.js.map +1 -1
- package/dist/components/combobox/Combobox/Combobox.js +52 -52
- package/dist/components/combobox/Combobox/Combobox.js.map +1 -1
- package/dist/components/combobox/Combobox/Combobox.types.d.ts +15 -6
- package/dist/components/combobox/ComboboxChipsInput/ComboboxChipsInput.js +7 -3
- package/dist/components/combobox/ComboboxChipsInput/ComboboxChipsInput.js.map +1 -1
- package/dist/components/combobox/ComboboxClear/ComboboxClear.js +1 -1
- package/dist/components/combobox/ComboboxClear/ComboboxClear.js.map +1 -1
- package/dist/components/combobox/ComboboxInput/ComboboxInput.js +26 -10
- package/dist/components/combobox/ComboboxInput/ComboboxInput.js.map +1 -1
- package/dist/components/combobox/ComboboxItem/ComboboxItem.js +6 -5
- package/dist/components/combobox/ComboboxItem/ComboboxItem.js.map +1 -1
- package/dist/components/combobox/ComboboxList/ComboboxList.js +17 -11
- package/dist/components/combobox/ComboboxList/ComboboxList.js.map +1 -1
- package/dist/components/combobox/ComboboxTrigger/ComboboxTrigger.js +8 -1
- package/dist/components/combobox/ComboboxTrigger/ComboboxTrigger.js.map +1 -1
- package/dist/components/context-menu/ContextMenu/ContextMenu.js +10 -8
- package/dist/components/context-menu/ContextMenu/ContextMenu.js.map +1 -1
- package/dist/components/context-menu/ContextMenuContent/context-menu.highlight.d.ts +33 -0
- package/dist/components/context-menu/ContextMenuContent/context-menu.highlight.js +41 -0
- package/dist/components/context-menu/ContextMenuContent/context-menu.highlight.js.map +1 -0
- package/dist/components/context-menu/ContextMenuContent/context-menu.popup-items.d.ts +25 -0
- package/dist/components/context-menu/ContextMenuContent/context-menu.popup-items.js +20 -0
- package/dist/components/context-menu/ContextMenuContent/context-menu.popup-items.js.map +1 -0
- package/dist/components/context-menu/ContextMenuContent/context-menu.positioner.d.ts +31 -0
- package/dist/components/context-menu/ContextMenuContent/context-menu.positioner.js +39 -0
- package/dist/components/context-menu/ContextMenuContent/context-menu.positioner.js.map +1 -0
- package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.js +70 -136
- package/dist/components/context-menu/ContextMenuContent/useContextMenuContent.js.map +1 -1
- package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.js +2 -1
- package/dist/components/context-menu/ContextMenuSub/ContextMenuSub.js.map +1 -1
- package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.js +20 -10
- package/dist/components/context-menu/ContextMenuTrigger/ContextMenuTrigger.js.map +1 -1
- package/dist/components/context-menu/ContextMenuTrigger/context-menu.long-press.d.ts +24 -0
- package/dist/components/context-menu/ContextMenuTrigger/context-menu.long-press.js +26 -0
- package/dist/components/context-menu/ContextMenuTrigger/context-menu.long-press.js.map +1 -0
- package/dist/components/context-menu/ContextMenuTrigger/context-menu.trigger.utils.d.ts +35 -0
- package/dist/components/context-menu/ContextMenuTrigger/context-menu.trigger.utils.js +17 -0
- package/dist/components/context-menu/ContextMenuTrigger/context-menu.trigger.utils.js.map +1 -0
- package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.d.ts +9 -11
- package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.js +36 -33
- package/dist/components/context-menu/ContextMenuTrigger/useContextMenuTrigger.js.map +1 -1
- package/dist/components/context-menu/context-menu.keyboard.d.ts +29 -0
- package/dist/components/context-menu/context-menu.keyboard.js +52 -0
- package/dist/components/context-menu/context-menu.keyboard.js.map +1 -0
- package/dist/components/context-menu/context-menu.typeahead.d.ts +27 -0
- package/dist/components/context-menu/context-menu.typeahead.js +19 -0
- package/dist/components/context-menu/context-menu.typeahead.js.map +1 -0
- package/dist/components/context-menu/context-menu.utils.d.ts +5 -2
- package/dist/components/context-menu/context-menu.utils.js +17 -39
- package/dist/components/context-menu/context-menu.utils.js.map +1 -1
- package/dist/components/date-picker/DatePicker/DatePicker.js +6 -0
- package/dist/components/date-picker/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/dialog/Dialog/Dialog.context.js +1 -1
- package/dist/components/dialog/Dialog/Dialog.context.js.map +1 -1
- package/dist/components/dialog/Dialog/Dialog.js +24 -15
- 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.js +20 -19
- package/dist/components/dialog/DialogClose/DialogClose.js.map +1 -1
- package/dist/components/dialog/DialogContent/DialogContent.context.js +1 -1
- package/dist/components/dialog/DialogContent/DialogContent.context.js.map +1 -1
- package/dist/components/dialog/DialogDescription/DialogDescription.js +8 -3
- package/dist/components/dialog/DialogDescription/DialogDescription.js.map +1 -1
- package/dist/components/dialog/DialogFooter/DialogFooter.js +8 -3
- package/dist/components/dialog/DialogFooter/DialogFooter.js.map +1 -1
- package/dist/components/dialog/DialogHeader/DialogHeader.js +8 -3
- package/dist/components/dialog/DialogHeader/DialogHeader.js.map +1 -1
- package/dist/components/dialog/DialogOverlay/DialogOverlay.js +3 -0
- package/dist/components/dialog/DialogOverlay/DialogOverlay.js.map +1 -1
- package/dist/components/dialog/DialogSurface/DialogSurface.js +34 -26
- package/dist/components/dialog/DialogSurface/DialogSurface.js.map +1 -1
- package/dist/components/dialog/DialogTitle/DialogTitle.js +8 -3
- package/dist/components/dialog/DialogTitle/DialogTitle.js.map +1 -1
- package/dist/components/drawer/Drawer/Drawer.js +1 -1
- package/dist/components/drawer/Drawer/Drawer.js.map +1 -1
- package/dist/components/drawer/Drawer/create-change-event-details.js +4 -20
- package/dist/components/drawer/Drawer/create-change-event-details.js.map +1 -1
- package/dist/components/drawer/DrawerContent/drawer-swipe.utils.d.ts +32 -0
- package/dist/components/drawer/DrawerContent/drawer-swipe.utils.js +36 -0
- package/dist/components/drawer/DrawerContent/drawer-swipe.utils.js.map +1 -0
- package/dist/components/drawer/DrawerContent/useDrawerSwipe.d.ts +3 -0
- package/dist/components/drawer/DrawerContent/useDrawerSwipe.js +22 -42
- package/dist/components/drawer/DrawerContent/useDrawerSwipe.js.map +1 -1
- package/dist/components/drawer/DrawerOverlay/DrawerOverlay.js +1 -1
- package/dist/components/drawer/DrawerOverlay/DrawerOverlay.js.map +1 -1
- package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.js +7 -7
- package/dist/components/dropdown-menu/DropdownMenuTrigger/DropdownMenuTrigger.js.map +1 -1
- package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.d.ts +7 -1
- package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.js +10 -10
- package/dist/components/dropdown-menu/DropdownMenuTrigger/useDropdownMenuTrigger.js.map +1 -1
- package/dist/components/field/Field/Field.js +3 -0
- package/dist/components/field/Field/Field.js.map +1 -1
- package/dist/components/field/FieldContent/FieldContent.js +8 -3
- package/dist/components/field/FieldContent/FieldContent.js.map +1 -1
- package/dist/components/field/FieldDescription/FieldDescription.js +8 -3
- package/dist/components/field/FieldDescription/FieldDescription.js.map +1 -1
- package/dist/components/field/FieldError/FieldError.js +8 -3
- package/dist/components/field/FieldError/FieldError.js.map +1 -1
- package/dist/components/field/FieldGroup/FieldGroup.js +8 -3
- package/dist/components/field/FieldGroup/FieldGroup.js.map +1 -1
- package/dist/components/field/FieldLabel/FieldLabel.js +3 -0
- package/dist/components/field/FieldLabel/FieldLabel.js.map +1 -1
- package/dist/components/field/FieldLegend/FieldLegend.js +3 -0
- package/dist/components/field/FieldLegend/FieldLegend.js.map +1 -1
- package/dist/components/field/FieldSeparator/FieldSeparator.js +3 -0
- package/dist/components/field/FieldSeparator/FieldSeparator.js.map +1 -1
- package/dist/components/field/FieldSet/FieldSet.js +8 -3
- package/dist/components/field/FieldSet/FieldSet.js.map +1 -1
- package/dist/components/field/FieldTitle/FieldTitle.js +8 -3
- package/dist/components/field/FieldTitle/FieldTitle.js.map +1 -1
- package/dist/components/image/Image.utils.d.ts +14 -16
- package/dist/components/image/Image.utils.js +146 -190
- package/dist/components/image/Image.utils.js.map +1 -1
- package/dist/components/image/ImageElement.js +31 -27
- package/dist/components/image/ImageElement.js.map +1 -1
- package/dist/components/image/lib/blur.d.ts +31 -0
- package/dist/components/image/lib/blur.js +24 -0
- package/dist/components/image/lib/blur.js.map +1 -0
- package/dist/components/image/lib/dev-checks.d.ts +52 -0
- package/dist/components/image/lib/handle-loading.d.ts +13 -0
- package/dist/components/image/lib/handle-loading.js +20 -0
- package/dist/components/image/lib/handle-loading.js.map +1 -0
- package/dist/components/image/lib/loader.d.ts +39 -0
- package/dist/components/image/lib/loader.js +57 -0
- package/dist/components/image/lib/loader.js.map +1 -0
- package/dist/components/image/lib/static-import.d.ts +14 -0
- package/dist/components/image/lib/static-import.js +17 -0
- package/dist/components/image/lib/static-import.js.map +1 -0
- package/dist/components/input-group/InputGroup/InputGroup.js +8 -3
- package/dist/components/input-group/InputGroup/InputGroup.js.map +1 -1
- package/dist/components/input-group/InputGroupAddon/InputGroupAddon.js +3 -0
- package/dist/components/input-group/InputGroupAddon/InputGroupAddon.js.map +1 -1
- package/dist/components/input-group/InputGroupButton/InputGroupButton.js +3 -0
- package/dist/components/input-group/InputGroupButton/InputGroupButton.js.map +1 -1
- package/dist/components/input-group/InputGroupInput/InputGroupInput.js +3 -0
- package/dist/components/input-group/InputGroupInput/InputGroupInput.js.map +1 -1
- package/dist/components/input-group/InputGroupText/InputGroupText.js +8 -3
- package/dist/components/input-group/InputGroupText/InputGroupText.js.map +1 -1
- package/dist/components/input-group/InputGroupTextarea/InputGroupTextarea.js +3 -0
- package/dist/components/input-group/InputGroupTextarea/InputGroupTextarea.js.map +1 -1
- package/dist/components/item/Item/Item.js +9 -0
- package/dist/components/item/Item/Item.js.map +1 -1
- package/dist/components/item/ItemActions/ItemActions.js +8 -3
- package/dist/components/item/ItemActions/ItemActions.js.map +1 -1
- package/dist/components/item/ItemContent/ItemContent.js +8 -3
- package/dist/components/item/ItemContent/ItemContent.js.map +1 -1
- package/dist/components/item/ItemDescription/ItemDescription.js +8 -3
- package/dist/components/item/ItemDescription/ItemDescription.js.map +1 -1
- package/dist/components/item/ItemFooter/ItemFooter.js +8 -3
- package/dist/components/item/ItemFooter/ItemFooter.js.map +1 -1
- package/dist/components/item/ItemGroup/ItemGroup.js +8 -3
- package/dist/components/item/ItemGroup/ItemGroup.js.map +1 -1
- package/dist/components/item/ItemHeader/ItemHeader.js +8 -3
- package/dist/components/item/ItemHeader/ItemHeader.js.map +1 -1
- package/dist/components/item/ItemMedia/ItemMedia.js +3 -0
- package/dist/components/item/ItemMedia/ItemMedia.js.map +1 -1
- package/dist/components/item/ItemSeparator/ItemSeparator.js +3 -0
- package/dist/components/item/ItemSeparator/ItemSeparator.js.map +1 -1
- package/dist/components/item/ItemTitle/ItemTitle.js +8 -3
- package/dist/components/item/ItemTitle/ItemTitle.js.map +1 -1
- package/dist/components/kbd/Kbd.js +16 -6
- package/dist/components/kbd/Kbd.js.map +1 -1
- package/dist/components/label/Label.js +3 -0
- package/dist/components/label/Label.js.map +1 -1
- package/dist/components/marker/Marker/Marker.styles.d.ts +1 -1
- package/dist/components/message-scroller/message-scroller.anchoring.d.ts +60 -0
- package/dist/components/message-scroller/message-scroller.anchoring.js +139 -0
- package/dist/components/message-scroller/message-scroller.anchoring.js.map +1 -0
- package/dist/components/message-scroller/message-scroller.anchors.d.ts +12 -0
- package/dist/components/message-scroller/message-scroller.anchors.js +23 -0
- package/dist/components/message-scroller/message-scroller.anchors.js.map +1 -0
- package/dist/components/message-scroller/message-scroller.commands.d.ts +43 -0
- package/dist/components/message-scroller/message-scroller.commands.js +51 -0
- package/dist/components/message-scroller/message-scroller.commands.js.map +1 -0
- package/dist/components/message-scroller/message-scroller.dom-measure.d.ts +29 -0
- package/dist/components/message-scroller/message-scroller.dom-measure.js +37 -0
- package/dist/components/message-scroller/message-scroller.dom-measure.js.map +1 -0
- package/dist/components/message-scroller/message-scroller.measure.d.ts +27 -0
- package/dist/components/message-scroller/message-scroller.measure.js +21 -0
- package/dist/components/message-scroller/message-scroller.measure.js.map +1 -0
- package/dist/components/message-scroller/message-scroller.scroll-state.d.ts +54 -0
- package/dist/components/message-scroller/message-scroller.scroll-state.js +74 -0
- package/dist/components/message-scroller/message-scroller.scroll-state.js.map +1 -0
- package/dist/components/message-scroller/message-scroller.scroll-target.d.ts +27 -0
- package/dist/components/message-scroller/message-scroller.scroll-target.js +33 -0
- package/dist/components/message-scroller/message-scroller.scroll-target.js.map +1 -0
- package/dist/components/message-scroller/message-scroller.utils.d.ts +7 -0
- package/dist/components/message-scroller/message-scroller.utils.js +3 -2
- package/dist/components/message-scroller/message-scroller.utils.js.map +1 -1
- package/dist/components/message-scroller/message-scroller.visibility.d.ts +43 -0
- package/dist/components/message-scroller/message-scroller.visibility.js +82 -0
- package/dist/components/message-scroller/message-scroller.visibility.js.map +1 -0
- package/dist/components/message-scroller/useMessageScrollerEngine.js +87 -337
- package/dist/components/message-scroller/useMessageScrollerEngine.js.map +1 -1
- package/dist/components/number-input/NumberInput/NumberInput.js +21 -19
- package/dist/components/number-input/NumberInput/NumberInput.js.map +1 -1
- package/dist/components/number-input/NumberInput/NumberInput.utils.d.ts +6 -2
- package/dist/components/number-input/NumberInput/NumberInput.utils.js +1 -3
- package/dist/components/number-input/NumberInput/NumberInput.utils.js.map +1 -1
- package/dist/components/number-input/NumberInput/create-change-event-details.d.ts +1 -2
- package/dist/components/number-input/NumberInput/create-change-event-details.js +4 -20
- package/dist/components/number-input/NumberInput/create-change-event-details.js.map +1 -1
- package/dist/components/pagination/Pagination/Pagination.js +8 -3
- package/dist/components/pagination/Pagination/Pagination.js.map +1 -1
- package/dist/components/pagination/PaginationContent/PaginationContent.js +8 -3
- package/dist/components/pagination/PaginationContent/PaginationContent.js.map +1 -1
- package/dist/components/pagination/PaginationEllipsis/PaginationEllipsis.js +8 -3
- package/dist/components/pagination/PaginationEllipsis/PaginationEllipsis.js.map +1 -1
- package/dist/components/pagination/PaginationLink/PaginationLink.js +3 -0
- package/dist/components/pagination/PaginationLink/PaginationLink.js.map +1 -1
- package/dist/components/pagination/PaginationNext/PaginationNext.js +3 -0
- package/dist/components/pagination/PaginationNext/PaginationNext.js.map +1 -1
- package/dist/components/pagination/PaginationPrevious/PaginationPrevious.js +3 -0
- package/dist/components/pagination/PaginationPrevious/PaginationPrevious.js.map +1 -1
- package/dist/components/popover/PopoverContent/PopoverContent.js +3 -0
- package/dist/components/popover/PopoverContent/PopoverContent.js.map +1 -1
- package/dist/components/progress/Progress/Progress.context.js +1 -1
- package/dist/components/progress/Progress/Progress.context.js.map +1 -1
- package/dist/components/progress/Progress/Progress.js +3 -0
- package/dist/components/progress/Progress/Progress.js.map +1 -1
- package/dist/components/progress/ProgressIndicator/ProgressIndicator.js +3 -0
- package/dist/components/progress/ProgressIndicator/ProgressIndicator.js.map +1 -1
- package/dist/components/progress/ProgressLabel/ProgressLabel.js +8 -3
- package/dist/components/progress/ProgressLabel/ProgressLabel.js.map +1 -1
- package/dist/components/progress/ProgressTrack/ProgressTrack.js +3 -0
- package/dist/components/progress/ProgressTrack/ProgressTrack.js.map +1 -1
- package/dist/components/progress/ProgressValue/ProgressValue.js +8 -3
- package/dist/components/progress/ProgressValue/ProgressValue.js.map +1 -1
- package/dist/components/questionnaire/QuestionnaireChoice/questionnaire-choice.utils.d.ts +48 -0
- package/dist/components/questionnaire/QuestionnaireChoice/questionnaire-choice.utils.js +23 -0
- package/dist/components/questionnaire/QuestionnaireChoice/questionnaire-choice.utils.js.map +1 -0
- package/dist/components/questionnaire/QuestionnaireChoice/useQuestionnaireChoice.js +62 -49
- package/dist/components/questionnaire/QuestionnaireChoice/useQuestionnaireChoice.js.map +1 -1
- package/dist/components/questionnaire/QuestionnaireInput/useQuestionnaireInput.js +4 -1
- package/dist/components/questionnaire/QuestionnaireInput/useQuestionnaireInput.js.map +1 -1
- package/dist/components/questionnaire/QuestionnaireItem/QuestionnaireItem.js +1 -2
- package/dist/components/questionnaire/QuestionnaireItem/QuestionnaireItem.js.map +1 -1
- package/dist/components/questionnaire/questionnaire.answers.d.ts +42 -0
- package/dist/components/questionnaire/questionnaire.answers.js +62 -0
- package/dist/components/questionnaire/questionnaire.answers.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.aria.d.ts +34 -0
- package/dist/components/questionnaire/questionnaire.aria.js +28 -0
- package/dist/components/questionnaire/questionnaire.aria.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.dom-watch.d.ts +9 -0
- package/dist/components/questionnaire/questionnaire.dom-watch.js +18 -0
- package/dist/components/questionnaire/questionnaire.dom-watch.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.focus.d.ts +26 -0
- package/dist/components/questionnaire/questionnaire.focus.js +19 -0
- package/dist/components/questionnaire/questionnaire.focus.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.item-view.d.ts +50 -0
- package/dist/components/questionnaire/questionnaire.item-view.js +36 -0
- package/dist/components/questionnaire/questionnaire.item-view.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.keys.d.ts +29 -0
- package/dist/components/questionnaire/questionnaire.keys.js +34 -0
- package/dist/components/questionnaire/questionnaire.keys.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.registry.d.ts +21 -0
- package/dist/components/questionnaire/questionnaire.registry.js +15 -0
- package/dist/components/questionnaire/questionnaire.registry.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.shortcuts.d.ts +24 -0
- package/dist/components/questionnaire/questionnaire.shortcuts.js +31 -0
- package/dist/components/questionnaire/questionnaire.shortcuts.js.map +1 -0
- package/dist/components/questionnaire/questionnaire.utils.d.ts +17 -1
- package/dist/components/questionnaire/questionnaire.utils.js +5 -2
- package/dist/components/questionnaire/questionnaire.utils.js.map +1 -1
- package/dist/components/questionnaire/questionnaire.validation.d.ts +43 -0
- package/dist/components/questionnaire/questionnaire.validation.js +17 -0
- package/dist/components/questionnaire/questionnaire.validation.js.map +1 -0
- package/dist/components/questionnaire/useQuestionnaireItem.d.ts +0 -2
- package/dist/components/questionnaire/useQuestionnaireItem.js +83 -121
- package/dist/components/questionnaire/useQuestionnaireItem.js.map +1 -1
- package/dist/components/questionnaire/useQuestionnaireRoot.js +78 -99
- package/dist/components/questionnaire/useQuestionnaireRoot.js.map +1 -1
- package/dist/components/radio-group/RadioGroup/RadioGroup.js +3 -0
- package/dist/components/radio-group/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/components/radio-group/RadioGroupItem/RadioGroupItem.js +3 -0
- package/dist/components/radio-group/RadioGroupItem/RadioGroupItem.js.map +1 -1
- package/dist/components/resizable/ResizableHandle/resizable.handle-drag.d.ts +37 -0
- package/dist/components/resizable/ResizableHandle/resizable.handle-drag.js +37 -0
- package/dist/components/resizable/ResizableHandle/resizable.handle-drag.js.map +1 -0
- package/dist/components/resizable/ResizableHandle/resizable.handle-keys.d.ts +24 -0
- package/dist/components/resizable/ResizableHandle/resizable.handle-keys.js +36 -0
- package/dist/components/resizable/ResizableHandle/resizable.handle-keys.js.map +1 -0
- package/dist/components/resizable/ResizableHandle/useResizableHandle.d.ts +3 -4
- package/dist/components/resizable/ResizableHandle/useResizableHandle.js +30 -63
- package/dist/components/resizable/ResizableHandle/useResizableHandle.js.map +1 -1
- package/dist/components/resizable/ResizablePanel/ResizablePanel.d.ts +4 -2
- package/dist/components/resizable/ResizablePanel/ResizablePanel.js +23 -50
- package/dist/components/resizable/ResizablePanel/ResizablePanel.js.map +1 -1
- package/dist/components/resizable/ResizablePanel/useResizablePanel.d.ts +30 -0
- package/dist/components/resizable/ResizablePanel/useResizablePanel.js +37 -0
- package/dist/components/resizable/ResizablePanel/useResizablePanel.js.map +1 -0
- package/dist/components/resizable/ResizablePanelGroup/ResizablePanelGroup.d.ts +4 -1
- package/dist/components/resizable/ResizablePanelGroup/ResizablePanelGroup.js +10 -17
- package/dist/components/resizable/ResizablePanelGroup/ResizablePanelGroup.js.map +1 -1
- package/dist/components/resizable/ResizablePanelGroup/useDragCursor.d.ts +11 -0
- package/dist/components/resizable/ResizablePanelGroup/useDragCursor.js +17 -0
- package/dist/components/resizable/ResizablePanelGroup/useDragCursor.js.map +1 -0
- package/dist/components/resizable/resizable.collapse.d.ts +27 -0
- package/dist/components/resizable/resizable.collapse.js +24 -0
- package/dist/components/resizable/resizable.collapse.js.map +1 -0
- package/dist/components/resizable/resizable.commands.d.ts +32 -0
- package/dist/components/resizable/resizable.commands.js +40 -0
- package/dist/components/resizable/resizable.commands.js.map +1 -0
- package/dist/components/resizable/resizable.constraints.d.ts +23 -0
- package/dist/components/resizable/resizable.constraints.js +32 -0
- package/dist/components/resizable/resizable.constraints.js.map +1 -0
- package/dist/components/resizable/resizable.lifecycle.d.ts +35 -0
- package/dist/components/resizable/resizable.lifecycle.js +32 -0
- package/dist/components/resizable/resizable.lifecycle.js.map +1 -0
- package/dist/components/resizable/resizable.registry.d.ts +31 -0
- package/dist/components/resizable/resizable.registry.js +38 -0
- package/dist/components/resizable/resizable.registry.js.map +1 -0
- package/dist/components/resizable/resizable.reporting.d.ts +36 -0
- package/dist/components/resizable/resizable.reporting.js +33 -0
- package/dist/components/resizable/resizable.reporting.js.map +1 -0
- package/dist/components/resizable/resizable.resize.d.ts +47 -0
- package/dist/components/resizable/resizable.resize.js +28 -0
- package/dist/components/resizable/resizable.resize.js.map +1 -0
- package/dist/components/resizable/resizable.sizes.d.ts +31 -0
- package/dist/components/resizable/resizable.sizes.js +46 -0
- package/dist/components/resizable/resizable.sizes.js.map +1 -0
- package/dist/components/resizable/resizable.storage.d.ts +17 -0
- package/dist/components/resizable/resizable.storage.js +29 -0
- package/dist/components/resizable/resizable.storage.js.map +1 -0
- package/dist/components/resizable/resizable.utils.d.ts +10 -3
- package/dist/components/resizable/resizable.utils.js +16 -10
- package/dist/components/resizable/resizable.utils.js.map +1 -1
- package/dist/components/resizable/useResizablePanelGroup.js +62 -164
- package/dist/components/resizable/useResizablePanelGroup.js.map +1 -1
- package/dist/components/scroll-area/ScrollArea/ScrollArea.context.js +1 -1
- package/dist/components/scroll-area/ScrollArea/ScrollArea.context.js.map +1 -1
- package/dist/components/scroll-area/ScrollArea/ScrollArea.d.ts +9 -0
- package/dist/components/scroll-area/ScrollArea/ScrollArea.js +28 -39
- package/dist/components/scroll-area/ScrollArea/ScrollArea.js.map +1 -1
- package/dist/components/scroll-area/ScrollArea/ScrollArea.utils.js +3 -3
- package/dist/components/scroll-area/ScrollArea/ScrollArea.utils.js.map +1 -1
- package/dist/components/scroll-area/ScrollArea/useScrollAreaMetrics.d.ts +22 -0
- package/dist/components/scroll-area/ScrollArea/useScrollAreaMetrics.js +34 -0
- package/dist/components/scroll-area/ScrollArea/useScrollAreaMetrics.js.map +1 -0
- package/dist/components/scroll-area/ScrollBar/ScrollBar.d.ts +8 -0
- package/dist/components/scroll-area/ScrollBar/ScrollBar.js +38 -71
- package/dist/components/scroll-area/ScrollBar/ScrollBar.js.map +1 -1
- package/dist/components/scroll-area/ScrollBar/ScrollBar.utils.d.ts +56 -0
- package/dist/components/scroll-area/ScrollBar/ScrollBar.utils.js +61 -0
- package/dist/components/scroll-area/ScrollBar/ScrollBar.utils.js.map +1 -0
- package/dist/components/scroll-area/ScrollBar/scroll-bar.thumb-drag.d.ts +25 -0
- package/dist/components/scroll-area/ScrollBar/scroll-bar.thumb-drag.js +26 -0
- package/dist/components/scroll-area/ScrollBar/scroll-bar.thumb-drag.js.map +1 -0
- package/dist/components/scroll-area/ScrollBar/useScrollBarInteraction.d.ts +19 -0
- package/dist/components/scroll-area/ScrollBar/useScrollBarInteraction.js +37 -0
- package/dist/components/scroll-area/ScrollBar/useScrollBarInteraction.js.map +1 -0
- package/dist/components/scroll-arrows/ScrollArrowButton.d.ts +5 -7
- package/dist/components/scroll-arrows/ScrollArrowButton.js +14 -44
- package/dist/components/scroll-arrows/ScrollArrowButton.js.map +1 -1
- package/dist/components/scroll-arrows/ScrollArrows.d.ts +4 -3
- package/dist/components/scroll-arrows/ScrollArrows.js +16 -22
- package/dist/components/scroll-arrows/ScrollArrows.js.map +1 -1
- package/dist/components/scroll-arrows/ScrollArrows.types.d.ts +7 -7
- package/dist/components/scroll-arrows/useHoverScroll.d.ts +29 -0
- package/dist/components/scroll-arrows/useHoverScroll.js +39 -0
- package/dist/components/scroll-arrows/useHoverScroll.js.map +1 -0
- package/dist/components/select/SelectContent/useSelectContent.js +3 -3
- package/dist/components/select/SelectGroup/SelectGroup.d.ts +8 -2
- package/dist/components/select/SelectGroup/SelectGroup.js +20 -6
- package/dist/components/select/SelectGroup/SelectGroup.js.map +1 -1
- package/dist/components/select/SelectGroup/SelectGroup.types.d.ts +9 -0
- package/dist/components/select/SelectGroup/index.d.ts +1 -0
- package/dist/components/select/SelectTrigger/SelectTrigger.js.map +1 -1
- package/dist/components/select/SelectTrigger/useSelectTrigger.js +1 -1
- package/dist/components/select/SelectTrigger/useSelectTrigger.js.map +1 -1
- package/dist/components/separator/Separator.js +3 -0
- package/dist/components/separator/Separator.js.map +1 -1
- package/dist/components/sheet/SheetClose/SheetClose.js +18 -17
- package/dist/components/sheet/SheetClose/SheetClose.js.map +1 -1
- package/dist/components/sidebar/Sidebar/Sidebar.js +14 -6
- package/dist/components/sidebar/Sidebar/Sidebar.js.map +1 -1
- package/dist/components/sidebar/SidebarContent/SidebarContent.js +8 -3
- package/dist/components/sidebar/SidebarContent/SidebarContent.js.map +1 -1
- package/dist/components/sidebar/SidebarFooter/SidebarFooter.js +8 -3
- package/dist/components/sidebar/SidebarFooter/SidebarFooter.js.map +1 -1
- package/dist/components/sidebar/SidebarGroup/SidebarGroup.js +8 -3
- package/dist/components/sidebar/SidebarGroup/SidebarGroup.js.map +1 -1
- package/dist/components/sidebar/SidebarGroupAction/SidebarGroupAction.js +3 -0
- package/dist/components/sidebar/SidebarGroupAction/SidebarGroupAction.js.map +1 -1
- package/dist/components/sidebar/SidebarGroupContent/SidebarGroupContent.js +8 -3
- package/dist/components/sidebar/SidebarGroupContent/SidebarGroupContent.js.map +1 -1
- package/dist/components/sidebar/SidebarGroupLabel/SidebarGroupLabel.js +3 -0
- package/dist/components/sidebar/SidebarGroupLabel/SidebarGroupLabel.js.map +1 -1
- package/dist/components/sidebar/SidebarHeader/SidebarHeader.js +8 -3
- package/dist/components/sidebar/SidebarHeader/SidebarHeader.js.map +1 -1
- package/dist/components/sidebar/SidebarInput/SidebarInput.js +3 -0
- package/dist/components/sidebar/SidebarInput/SidebarInput.js.map +1 -1
- package/dist/components/sidebar/SidebarInset/SidebarInset.js +8 -3
- package/dist/components/sidebar/SidebarInset/SidebarInset.js.map +1 -1
- package/dist/components/sidebar/SidebarMenu/SidebarMenu.js +8 -3
- package/dist/components/sidebar/SidebarMenu/SidebarMenu.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuBadge/SidebarMenuBadge.js +8 -3
- package/dist/components/sidebar/SidebarMenuBadge/SidebarMenuBadge.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.js +6 -0
- package/dist/components/sidebar/SidebarMenuButton/SidebarMenuButton.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuItem/SidebarMenuItem.js +8 -3
- package/dist/components/sidebar/SidebarMenuItem/SidebarMenuItem.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuSkeleton/SidebarMenuSkeleton.js +8 -3
- package/dist/components/sidebar/SidebarMenuSkeleton/SidebarMenuSkeleton.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuSub/SidebarMenuSub.js +8 -3
- package/dist/components/sidebar/SidebarMenuSub/SidebarMenuSub.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuSubButton/SidebarMenuSubButton.js +3 -0
- package/dist/components/sidebar/SidebarMenuSubButton/SidebarMenuSubButton.js.map +1 -1
- package/dist/components/sidebar/SidebarMenuSubItem/SidebarMenuSubItem.js +8 -3
- package/dist/components/sidebar/SidebarMenuSubItem/SidebarMenuSubItem.js.map +1 -1
- package/dist/components/sidebar/SidebarProvider/SidebarProvider.context.js +1 -1
- package/dist/components/sidebar/SidebarProvider/SidebarProvider.context.js.map +1 -1
- package/dist/components/sidebar/SidebarProvider/SidebarProvider.js +30 -27
- package/dist/components/sidebar/SidebarProvider/SidebarProvider.js.map +1 -1
- package/dist/components/sidebar/SidebarProvider/useIsMobile.d.ts +10 -0
- package/dist/components/sidebar/SidebarProvider/useIsMobile.js +14 -0
- package/dist/components/sidebar/SidebarProvider/useIsMobile.js.map +1 -0
- package/dist/components/sidebar/SidebarRail/SidebarRail.js +8 -3
- package/dist/components/sidebar/SidebarRail/SidebarRail.js.map +1 -1
- package/dist/components/sidebar/SidebarSeparator/SidebarSeparator.js +3 -0
- package/dist/components/sidebar/SidebarSeparator/SidebarSeparator.js.map +1 -1
- package/dist/components/sidebar/SidebarTrigger/SidebarTrigger.js +3 -0
- package/dist/components/sidebar/SidebarTrigger/SidebarTrigger.js.map +1 -1
- package/dist/components/skeleton/Skeleton.js +8 -3
- package/dist/components/skeleton/Skeleton.js.map +1 -1
- package/dist/components/slider/Slider/Slider.context.js +1 -1
- package/dist/components/slider/Slider/Slider.context.js.map +1 -1
- package/dist/components/slider/Slider/Slider.js +3 -0
- package/dist/components/slider/Slider/Slider.js.map +1 -1
- package/dist/components/slider/SliderControl/SliderControl.js +4 -1
- package/dist/components/slider/SliderControl/SliderControl.js.map +1 -1
- package/dist/components/slider/SliderIndicator/SliderIndicator.js +3 -0
- package/dist/components/slider/SliderIndicator/SliderIndicator.js.map +1 -1
- package/dist/components/slider/SliderThumb/SliderThumb.js +18 -3
- package/dist/components/slider/SliderThumb/SliderThumb.js.map +1 -1
- package/dist/components/slider/SliderThumb/useSliderThumb.d.ts +1 -0
- package/dist/components/slider/SliderThumb/useSliderThumb.js +3 -2
- package/dist/components/slider/SliderThumb/useSliderThumb.js.map +1 -1
- package/dist/components/slider/SliderTrack/SliderTrack.js +3 -0
- package/dist/components/slider/SliderTrack/SliderTrack.js.map +1 -1
- package/dist/components/spinner/Spinner.js +3 -0
- package/dist/components/spinner/Spinner.js.map +1 -1
- package/dist/components/switch/Switch.js +7 -0
- package/dist/components/switch/Switch.js.map +1 -1
- package/dist/components/tabs/Tabs/Tabs.context.js +1 -1
- package/dist/components/tabs/Tabs/Tabs.context.js.map +1 -1
- package/dist/components/tabs/Tabs/useTabsKeyboard.d.ts +7 -11
- package/dist/components/tabs/Tabs/useTabsKeyboard.js +8 -42
- package/dist/components/tabs/Tabs/useTabsKeyboard.js.map +1 -1
- package/dist/components/tabs/TabsList/TabsList.context.js +1 -1
- package/dist/components/tabs/TabsList/TabsList.context.js.map +1 -1
- package/dist/components/tabs/TabsList/TabsList.js +10 -10
- package/dist/components/tabs/TabsList/TabsList.js.map +1 -1
- package/dist/components/tabs/TabsTrigger/TabsTrigger.js +8 -8
- package/dist/components/tabs/TabsTrigger/TabsTrigger.js.map +1 -1
- package/dist/components/textarea/Textarea.js +8 -3
- package/dist/components/textarea/Textarea.js.map +1 -1
- package/dist/components/time-picker/TimePicker/create-change-event-details.d.ts +1 -2
- package/dist/components/time-picker/TimePicker/create-change-event-details.js +4 -20
- package/dist/components/time-picker/TimePicker/create-change-event-details.js.map +1 -1
- package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.js +1 -3
- package/dist/components/time-picker/TimePickerColumn/TimePickerColumn.js.map +1 -1
- package/dist/components/time-picker/TimePickerColumn/time-picker.column-utils.d.ts +34 -0
- package/dist/components/time-picker/TimePickerColumn/time-picker.column-utils.js +43 -0
- package/dist/components/time-picker/TimePickerColumn/time-picker.column-utils.js.map +1 -0
- package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.js +34 -59
- package/dist/components/time-picker/TimePickerColumn/useTimePickerColumn.js.map +1 -1
- package/dist/components/toast/Toast/Toast.d.ts +8 -2
- package/dist/components/toast/Toast/Toast.js +92 -146
- package/dist/components/toast/Toast/Toast.js.map +1 -1
- package/dist/components/toast/Toast/Toast.types.d.ts +1 -1
- package/dist/components/toast/Toast/Toast.types.js.map +1 -1
- package/dist/components/toast/Toast/Toast.utils.d.ts +47 -0
- package/dist/components/toast/Toast/Toast.utils.js +47 -0
- package/dist/components/toast/Toast/Toast.utils.js.map +1 -0
- package/dist/components/toast/Toast/ToastActionButton.d.ts +16 -0
- package/dist/components/toast/Toast/ToastActionButton.js +27 -0
- package/dist/components/toast/Toast/ToastActionButton.js.map +1 -0
- package/dist/components/toast/Toast/ToastActions.d.ts +12 -0
- package/dist/components/toast/Toast/ToastActions.js +65 -0
- package/dist/components/toast/Toast/ToastActions.js.map +1 -0
- package/dist/components/toast/Toast/ToastCloseButton.d.ts +12 -0
- package/dist/components/toast/Toast/ToastCloseButton.js +26 -0
- package/dist/components/toast/Toast/ToastCloseButton.js.map +1 -0
- package/dist/components/toast/Toast/ToastContent.d.ts +8 -0
- package/dist/components/toast/Toast/ToastContent.js +30 -0
- package/dist/components/toast/Toast/ToastContent.js.map +1 -0
- package/dist/components/toast/Toast/ToastIcon.d.ts +14 -0
- package/dist/components/toast/Toast/ToastIcon.js +36 -0
- package/dist/components/toast/Toast/ToastIcon.js.map +1 -0
- package/dist/components/toast/Toast/useToastLifecycle.d.ts +29 -0
- package/dist/components/toast/Toast/useToastLifecycle.js +30 -0
- package/dist/components/toast/Toast/useToastLifecycle.js.map +1 -0
- package/dist/components/toast/Toaster/ToastViewport.d.ts +33 -0
- package/dist/components/toast/Toaster/ToastViewport.js +73 -0
- package/dist/components/toast/Toaster/ToastViewport.js.map +1 -0
- package/dist/components/toast/Toaster/Toaster.d.ts +4 -0
- package/dist/components/toast/Toaster/Toaster.js +64 -82
- package/dist/components/toast/Toaster/Toaster.js.map +1 -1
- package/dist/components/toast/Toaster/Toaster.utils.d.ts +15 -0
- package/dist/components/toast/Toaster/Toaster.utils.js +4 -1
- package/dist/components/toast/Toaster/Toaster.utils.js.map +1 -1
- package/dist/components/toast/Toaster/useToaster.d.ts +28 -0
- package/dist/components/toast/Toaster/useToaster.js +26 -0
- package/dist/components/toast/Toaster/useToaster.js.map +1 -0
- package/dist/components/toast/index.js +4 -3
- package/dist/components/toast/state/promise-toast.d.ts +17 -0
- package/dist/components/toast/state/promise-toast.js +33 -0
- package/dist/components/toast/state/promise-toast.js.map +1 -0
- package/dist/components/toast/state/store.d.ts +21 -0
- package/dist/components/toast/state/store.js +45 -0
- package/dist/components/toast/state/store.js.map +1 -0
- package/dist/components/toast/state/toast.d.ts +9 -10
- package/dist/components/toast/state/toast.js +30 -89
- package/dist/components/toast/state/toast.js.map +1 -1
- package/dist/components/toggle/Toggle/Toggle.js +2 -1
- package/dist/components/toggle/Toggle/Toggle.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroup/ToggleGroup.js +1 -1
- package/dist/components/toggle-group/ToggleGroup/ToggleGroup.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroup/create-change-event-details.d.ts +6 -2
- package/dist/components/toggle-group/ToggleGroup/create-change-event-details.js +4 -20
- package/dist/components/toggle-group/ToggleGroup/create-change-event-details.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.d.ts +7 -10
- package/dist/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.js +10 -40
- package/dist/components/toggle-group/ToggleGroup/useToggleGroupKeyboard.js.map +1 -1
- package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.js +5 -5
- package/dist/components/toggle-group/ToggleGroupItem/ToggleGroupItem.js.map +1 -1
- package/dist/components/tooltip/TooltipContent/usePresence.d.ts +27 -0
- package/dist/components/tooltip/TooltipContent/usePresence.js +24 -0
- package/dist/components/tooltip/TooltipContent/usePresence.js.map +1 -0
- package/dist/components/tooltip/TooltipContent/useTooltipContent.js +22 -35
- package/dist/components/tooltip/TooltipContent/useTooltipContent.js.map +1 -1
- package/dist/hooks/useFontLoader.js +1 -1
- package/dist/hooks/useFontLoader.js.map +1 -1
- package/dist/hooks/useScrollLock.js +13 -16
- package/dist/hooks/useScrollLock.js.map +1 -1
- package/dist/index.js +328 -320
- package/dist/lib/positioner/index.d.ts +1 -0
- package/dist/lib/positioner/utils/dom.d.ts +8 -0
- package/dist/lib/positioner/utils/dom.js +1 -1
- package/dist/lib/positioner/utils/dom.js.map +1 -1
- package/dist/types/props.types.d.ts +1 -1
- package/dist/ui.css +1 -1
- package/dist/utils/call-event-handler.d.ts +16 -0
- package/dist/utils/call-event-handler.js +15 -0
- package/dist/utils/call-event-handler.js.map +1 -0
- package/dist/utils/clsx.d.ts +1 -1
- package/dist/utils/clsx.js +2 -7
- package/dist/utils/create-change-event-details.d.ts +25 -0
- package/dist/utils/create-change-event-details.js +25 -0
- package/dist/utils/create-change-event-details.js.map +1 -0
- package/dist/utils/get-style.d.ts +7 -9
- package/dist/utils/get-style.js +16 -0
- package/dist/utils/get-style.js.map +1 -0
- package/dist/utils/index.d.ts +8 -0
- package/dist/utils/index.js +7 -1
- package/dist/utils/number.d.ts +7 -0
- package/dist/utils/number.js +8 -0
- package/dist/utils/number.js.map +1 -0
- package/dist/utils/roving-navigation.d.ts +64 -0
- package/dist/utils/roving-navigation.js +66 -0
- package/dist/utils/roving-navigation.js.map +1 -0
- package/dist/utils/string.d.ts +17 -0
- package/dist/utils/string.js +11 -0
- package/dist/utils/string.js.map +1 -0
- package/package.json +18 -7
- package/dist/components/carousel/Carousel/Carousel.utils.d.ts +0 -0
- package/dist/components/field/FieldError/useFieldError.d.ts +0 -0
- package/dist/components/hover-card/hover-card.utils.d.ts +0 -6
- package/dist/components/tabs/Tabs/call-event-handler.d.ts +0 -5
- package/dist/components/tabs/Tabs/call-event-handler.js +0 -9
- package/dist/components/tabs/Tabs/call-event-handler.js.map +0 -1
- package/dist/components/toggle-group/call-event-handler.d.ts +0 -5
- package/dist/components/toggle-group/call-event-handler.js +0 -9
- package/dist/components/toggle-group/call-event-handler.js.map +0 -1
- package/dist/utils/clsx.js.map +0 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resizable 的相邻面板尺寸算法。
|
|
3
|
+
*
|
|
4
|
+
* 单一职责:给定「一对相邻面板」的约束,算出拖动后的两个尺寸。
|
|
5
|
+
* 不碰 store、不读 DOM,因此 min / max / collapsible 吸附的每个分支都可独立单测。
|
|
6
|
+
*/
|
|
7
|
+
/** 浮点比较容差(对齐上游语义) */
|
|
8
|
+
export declare const EPSILON = 0.001;
|
|
9
|
+
/** 一对相邻面板的约束 */
|
|
10
|
+
export interface PairConstraints {
|
|
11
|
+
/** 前一个面板拖动能到的最小值(可折叠时是 collapsedSize) */
|
|
12
|
+
prevMin: number;
|
|
13
|
+
prevMax: number;
|
|
14
|
+
prevCollapsible: boolean;
|
|
15
|
+
/** 折叠态尺寸(仅 `prevCollapsible` 时有意义) */
|
|
16
|
+
prevCollapsedSize: number;
|
|
17
|
+
/** 非折叠时拖动能到的最小值 */
|
|
18
|
+
prevFloor: number;
|
|
19
|
+
nextMin: number;
|
|
20
|
+
nextMax: number;
|
|
21
|
+
nextCollapsible: boolean;
|
|
22
|
+
nextCollapsedSize: number;
|
|
23
|
+
nextFloor: number;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* 把目标尺寸夹到「两个面板的可行区间」内。
|
|
27
|
+
* 下界取「prev 自己的最小值」与「total 减去 next 最大值」的较大者;
|
|
28
|
+
* 上界取「prev 最大值」与「total 减去 next 最小值」的较小者。
|
|
29
|
+
*/
|
|
30
|
+
export declare function pairBounds(constraints: PairConstraints, total: number): {
|
|
31
|
+
lo: number;
|
|
32
|
+
hi: number;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* 计算拖动后「前一个面板」的最终尺寸。
|
|
36
|
+
*
|
|
37
|
+
* 步骤:夹到可行区间 → 对 prev 做折叠吸附 → 对 next 做折叠吸附 → 再夹一次
|
|
38
|
+
* (吸附可能让尺寸越界)。返回的 `next` 永远等于 `total - prev`,因此两者之和守恒。
|
|
39
|
+
*/
|
|
40
|
+
export declare function resolvePairSize(constraints: PairConstraints, targetPrev: number, total: number): number;
|
|
41
|
+
/**
|
|
42
|
+
* 计算面板的初始尺寸。
|
|
43
|
+
*
|
|
44
|
+
* 规则:优先用 `saved[id]`,否则用面板自己的 `defaultSize`;
|
|
45
|
+
* 没有指定尺寸的面板平分剩余空间(剩余为负时按 0 分)。
|
|
46
|
+
*/
|
|
47
|
+
export declare function distributeInitialSizes(ids: string[], saved: Record<string, number> | undefined, defaults: Array<number | undefined>): number[];
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
//#region src/components/resizable/resizable.resize.ts
|
|
2
|
+
var e = .001;
|
|
3
|
+
function t(e, t, n) {
|
|
4
|
+
return Math.min(Math.max(e, t), n);
|
|
5
|
+
}
|
|
6
|
+
function n(e, t) {
|
|
7
|
+
return {
|
|
8
|
+
lo: Math.max(e.prevMin, t - e.nextMax),
|
|
9
|
+
hi: Math.min(e.prevMax, t - e.nextMin)
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
function r(e, t, n) {
|
|
13
|
+
return e - t < n - e ? t : n;
|
|
14
|
+
}
|
|
15
|
+
function i(e, i, a) {
|
|
16
|
+
let { lo: o, hi: s } = n(e, a), c = t(i, o, s);
|
|
17
|
+
e.prevCollapsible && c < e.prevFloor - .001 && c > e.prevCollapsedSize + .001 && (c = r(c, e.prevCollapsedSize, e.prevFloor));
|
|
18
|
+
let l = a - c;
|
|
19
|
+
return e.nextCollapsible && l < e.nextFloor - .001 && l > e.nextCollapsedSize + .001 && (c = a - r(l, e.nextCollapsedSize, e.nextFloor)), t(c, o, s);
|
|
20
|
+
}
|
|
21
|
+
function a(e, t, n) {
|
|
22
|
+
let r = e.map((e, r) => t?.[e] ?? n[r]), i = r.filter((e) => e !== void 0), a = r.length - i.length, o = i.reduce((e, t) => e + t, 0), s = Math.max(0, 100 - o), c = a > 0 ? s / a : 0;
|
|
23
|
+
return r.map((e) => e ?? c);
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
export { e as EPSILON, a as distributeInitialSizes, n as pairBounds, i as resolvePairSize };
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=resizable.resize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resizable.resize.js","names":["EPSILON","clamp","value","min","max","pairBounds","constraints","total","snapToNearest","size","collapsedSize","minSize","resolvePairSize","targetPrev","lo","hi","rest","distributeInitialSizes","raw","ids","saved","id","defaults","index","defined","unknown","used","acc","remaining","fill"],"sources":["../../../src/components/resizable/resizable.resize.ts"],"sourcesContent":["/**\n * Resizable 的相邻面板尺寸算法。\n *\n * 单一职责:给定「一对相邻面板」的约束,算出拖动后的两个尺寸。\n * 不碰 store、不读 DOM,因此 min / max / collapsible 吸附的每个分支都可独立单测。\n */\n\n/** 浮点比较容差(对齐上游语义) */\nexport const EPSILON = 0.001;\n\n/** 一对相邻面板的约束 */\nexport interface PairConstraints {\n /** 前一个面板拖动能到的最小值(可折叠时是 collapsedSize) */\n prevMin: number;\n prevMax: number;\n prevCollapsible: boolean;\n /** 折叠态尺寸(仅 `prevCollapsible` 时有意义) */\n prevCollapsedSize: number;\n /** 非折叠时拖动能到的最小值 */\n prevFloor: number;\n nextMin: number;\n nextMax: number;\n nextCollapsible: boolean;\n nextCollapsedSize: number;\n nextFloor: number;\n}\n\n/** 夹取 */\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(Math.max(value, min), max);\n}\n\n/**\n * 把目标尺寸夹到「两个面板的可行区间」内。\n * 下界取「prev 自己的最小值」与「total 减去 next 最大值」的较大者;\n * 上界取「prev 最大值」与「total 减去 next 最小值」的较小者。\n */\nexport function pairBounds(\n constraints: PairConstraints,\n total: number,\n): { lo: number; hi: number } {\n return {\n lo: Math.max(constraints.prevMin, total - constraints.nextMax),\n hi: Math.min(constraints.prevMax, total - constraints.nextMin),\n };\n}\n\n/**\n * 折叠吸附:落在 `(collapsedSize, minSize)` 之间时贴向较近的一端。\n * 这是「拖到接近折叠位置时自动吸入折叠/展开」的体验来源。\n */\nfunction snapToNearest(\n size: number,\n collapsedSize: number,\n minSize: number,\n): number {\n const distanceToCollapsed = size - collapsedSize;\n const distanceToMin = minSize - size;\n return distanceToCollapsed < distanceToMin ? collapsedSize : minSize;\n}\n\n/**\n * 计算拖动后「前一个面板」的最终尺寸。\n *\n * 步骤:夹到可行区间 → 对 prev 做折叠吸附 → 对 next 做折叠吸附 → 再夹一次\n * (吸附可能让尺寸越界)。返回的 `next` 永远等于 `total - prev`,因此两者之和守恒。\n */\nexport function resolvePairSize(\n constraints: PairConstraints,\n targetPrev: number,\n total: number,\n): number {\n const { lo, hi } = pairBounds(constraints, total);\n let size = clamp(targetPrev, lo, hi);\n\n if (\n constraints.prevCollapsible &&\n size < constraints.prevFloor - EPSILON &&\n size > constraints.prevCollapsedSize + EPSILON\n ) {\n size = snapToNearest(\n size,\n constraints.prevCollapsedSize,\n constraints.prevFloor,\n );\n }\n\n const rest = total - size;\n if (\n constraints.nextCollapsible &&\n rest < constraints.nextFloor - EPSILON &&\n rest > constraints.nextCollapsedSize + EPSILON\n ) {\n size =\n total -\n snapToNearest(rest, constraints.nextCollapsedSize, constraints.nextFloor);\n }\n\n return clamp(size, lo, hi);\n}\n\n/**\n * 计算面板的初始尺寸。\n *\n * 规则:优先用 `saved[id]`,否则用面板自己的 `defaultSize`;\n * 没有指定尺寸的面板平分剩余空间(剩余为负时按 0 分)。\n */\nexport function distributeInitialSizes(\n ids: string[],\n saved: Record<string, number> | undefined,\n defaults: Array<number | undefined>,\n): number[] {\n const raw = ids.map((id, index) => saved?.[id] ?? defaults[index]);\n const defined = raw.filter((value): value is number => value !== undefined);\n const unknown = raw.length - defined.length;\n const used = defined.reduce((acc, value) => acc + value, 0);\n const remaining = Math.max(0, 100 - used);\n const fill = unknown > 0 ? remaining / unknown : 0;\n return raw.map((value) => value ?? fill);\n}\n"],"mappings":";AAQA,IAAaA,IAAU;AAoBvB,SAASC,EAAM,GAAe,GAAa,GAAqB;CAC9D,OAAO,KAAK,IAAI,KAAK,IAAIC,GAAOC,CAAG,GAAGC,CAAG;AAC3C;AAOA,SAAgBC,EACd,GACA,GAC4B;CAC5B,OAAO;EACL,IAAI,KAAK,IAAIC,EAAY,SAASC,IAAQD,EAAY,OAAO;EAC7D,IAAI,KAAK,IAAIA,EAAY,SAASC,IAAQD,EAAY,OAAO;CAC/D;AACF;AAMA,SAASE,EACP,GACA,GACA,GACQ;CAGR,OAF4BC,IAAOC,IACbC,IAAUF,IACaC,IAAgBC;AAC/D;AAQA,SAAgBC,EACd,GACA,GACA,GACQ;CACR,IAAM,EAAE,OAAI,UAAOP,EAAWC,GAAaC,CAAK,GAC5CE,IAAOR,EAAMY,GAAYC,GAAIC,CAAE;CAEnC,AACET,EAAY,mBACZG,IAAOH,EAAY,YAAA,QACnBG,IAAOH,EAAY,oBAAA,SAEnB,IAAOE,EACLC,GACAH,EAAY,mBACZA,EAAY,SACd;CAGF,IAAMU,IAAOT,IAAQE;CAWrB,OATEH,EAAY,mBACZU,IAAOV,EAAY,YAAA,QACnBU,IAAOV,EAAY,oBAAA,SAEnB,IACEC,IACAC,EAAcQ,GAAMV,EAAY,mBAAmBA,EAAY,SAAS,IAGrEL,EAAMQ,GAAMK,GAAIC,CAAE;AAC3B;AAQA,SAAgBE,EACd,GACA,GACA,GACU;CACV,IAAMC,IAAMC,EAAI,KAAK,GAAI,MAAUC,IAAQC,MAAOC,EAASC,EAAM,GAC3DC,IAAUN,EAAI,QAAQ,MAA2BhB,MAAU,KAAA,CAAS,GACpEuB,IAAUP,EAAI,SAASM,EAAQ,QAC/BE,IAAOF,EAAQ,QAAQ,GAAK,MAAUG,IAAMzB,GAAO,CAAC,GACpD0B,IAAY,KAAK,IAAI,GAAG,MAAMF,CAAI,GAClCG,IAAOJ,IAAU,IAAIG,IAAYH,IAAU;CACjD,OAAOP,EAAI,KAAK,MAAUhB,KAAS2B,CAAI;AACzC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { PanelRegistry } from './resizable.registry';
|
|
2
|
+
import { ResizablePanelMeta } from './resizable.types';
|
|
3
|
+
export interface PanelSizesContext {
|
|
4
|
+
/** 按 DOM 顺序排列的面板(写入时要与值的顺序对齐) */
|
|
5
|
+
metas: () => ResizablePanelMeta[];
|
|
6
|
+
registry: PanelRegistry;
|
|
7
|
+
/** 单个面板尺寸变化的上报(onResize / onCollapse / onExpand) */
|
|
8
|
+
reportSizeChange: (meta: ResizablePanelMeta, oldSize: number, newSize: number) => void;
|
|
9
|
+
}
|
|
10
|
+
export interface PanelSizes {
|
|
11
|
+
/** 细粒度的百分比 store:只更新涉及的键,子节点不重渲染 */
|
|
12
|
+
store: Record<string, number>;
|
|
13
|
+
sizeOf: (id: string) => number;
|
|
14
|
+
/** 按面板顺序批量写入;`report` 为 false 时(初始化)不上报 */
|
|
15
|
+
applyAll: (values: number[], report?: boolean) => void;
|
|
16
|
+
/** 把一对相邻面板的总量按目标值重新切分,并上报两侧变化 */
|
|
17
|
+
applyPair: (prev: ResizablePanelMeta, next: ResizablePanelMeta, targetPrev: number, total: number) => void;
|
|
18
|
+
/** 命令式设置单个面板,把它与相邻面板之间重新分配 */
|
|
19
|
+
applyPanelTarget: (meta: ResizablePanelMeta, targetSize: number) => void;
|
|
20
|
+
/** 面板卸载时删掉它的尺寸 */
|
|
21
|
+
remove: (id: string) => void;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* 面板尺寸的账目。
|
|
25
|
+
*
|
|
26
|
+
* 单一职责:持有百分比 store 并承担**所有**写入——批量套用、相邻对重分配、
|
|
27
|
+
* 单面板命令式调整、以及卸载清理。约束求解委托给 `resizable.resize` /
|
|
28
|
+
* `resizable.constraints`,上报委托给传入的 `reportSizeChange`,
|
|
29
|
+
* 读与不读 store 的判断都收在这里,调用方不再直接碰 `setStore`。
|
|
30
|
+
*/
|
|
31
|
+
export declare function createPanelSizes(ctx: PanelSizesContext): PanelSizes;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { resolvePairSize as e } from "./resizable.resize.js";
|
|
2
|
+
import { pairConstraintsOf as t } from "./resizable.constraints.js";
|
|
3
|
+
import { createStore as n, produce as r } from "solid-js/store";
|
|
4
|
+
//#region src/components/resizable/resizable.sizes.ts
|
|
5
|
+
function i(i) {
|
|
6
|
+
let [a, o] = n({}), s = (e) => a[e] ?? 0, c = (e, t = !0) => {
|
|
7
|
+
let n = i.metas(), a = n.map((e) => s(e.id));
|
|
8
|
+
o(r((t) => {
|
|
9
|
+
n.forEach((n, r) => {
|
|
10
|
+
let i = e[r];
|
|
11
|
+
i !== void 0 && (t[n.id] = i);
|
|
12
|
+
});
|
|
13
|
+
})), t && n.forEach((t, n) => {
|
|
14
|
+
let r = e[n];
|
|
15
|
+
r !== void 0 && i.reportSizeChange(t, a[n], r);
|
|
16
|
+
});
|
|
17
|
+
}, l = (n, a, c, l) => {
|
|
18
|
+
let u = e(t(n, a), c, l), d = s(n.id), f = s(a.id);
|
|
19
|
+
o(r((e) => {
|
|
20
|
+
e[n.id] = u, e[a.id] = l - u;
|
|
21
|
+
})), i.reportSizeChange(n, d, u), i.reportSizeChange(a, f, l - u);
|
|
22
|
+
};
|
|
23
|
+
return {
|
|
24
|
+
store: a,
|
|
25
|
+
sizeOf: s,
|
|
26
|
+
applyAll: c,
|
|
27
|
+
applyPair: l,
|
|
28
|
+
applyPanelTarget: (e, t) => {
|
|
29
|
+
let { prev: n, next: r } = i.registry.neighbors(e);
|
|
30
|
+
if (r) l(e, r, t, s(e.id) + s(r.id));
|
|
31
|
+
else if (n) {
|
|
32
|
+
let r = s(n.id) + s(e.id);
|
|
33
|
+
l(n, e, r - t, r);
|
|
34
|
+
} else o(e.id, 100);
|
|
35
|
+
},
|
|
36
|
+
remove: (e) => {
|
|
37
|
+
o(r((t) => {
|
|
38
|
+
delete t[e];
|
|
39
|
+
}));
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
//#endregion
|
|
44
|
+
export { i as createPanelSizes };
|
|
45
|
+
|
|
46
|
+
//# sourceMappingURL=resizable.sizes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resizable.sizes.js","names":["createPanelSizes","store","setStore","createStore","sizeOf","id","applyAll","list","ctx","before","meta","produce","value","values","index","report","applyPair","size","resolvePairSize","pairConstraintsOf","prev","next","targetPrev","total","prevOld","nextOld","targetSize","draft"],"sources":["../../../src/components/resizable/resizable.sizes.ts"],"sourcesContent":["import { createStore, produce } from \"solid-js/store\";\nimport { pairConstraintsOf } from \"./resizable.constraints\";\nimport type { PanelRegistry } from \"./resizable.registry\";\nimport { resolvePairSize } from \"./resizable.resize\";\nimport type { ResizablePanelMeta } from \"./resizable.types\";\n\nexport interface PanelSizesContext {\n /** 按 DOM 顺序排列的面板(写入时要与值的顺序对齐) */\n metas: () => ResizablePanelMeta[];\n registry: PanelRegistry;\n /** 单个面板尺寸变化的上报(onResize / onCollapse / onExpand) */\n reportSizeChange: (\n meta: ResizablePanelMeta,\n oldSize: number,\n newSize: number,\n ) => void;\n}\n\nexport interface PanelSizes {\n /** 细粒度的百分比 store:只更新涉及的键,子节点不重渲染 */\n store: Record<string, number>;\n sizeOf: (id: string) => number;\n /** 按面板顺序批量写入;`report` 为 false 时(初始化)不上报 */\n applyAll: (values: number[], report?: boolean) => void;\n /** 把一对相邻面板的总量按目标值重新切分,并上报两侧变化 */\n applyPair: (\n prev: ResizablePanelMeta,\n next: ResizablePanelMeta,\n targetPrev: number,\n total: number,\n ) => void;\n /** 命令式设置单个面板,把它与相邻面板之间重新分配 */\n applyPanelTarget: (meta: ResizablePanelMeta, targetSize: number) => void;\n /** 面板卸载时删掉它的尺寸 */\n remove: (id: string) => void;\n}\n\n/**\n * 面板尺寸的账目。\n *\n * 单一职责:持有百分比 store 并承担**所有**写入——批量套用、相邻对重分配、\n * 单面板命令式调整、以及卸载清理。约束求解委托给 `resizable.resize` /\n * `resizable.constraints`,上报委托给传入的 `reportSizeChange`,\n * 读与不读 store 的判断都收在这里,调用方不再直接碰 `setStore`。\n */\nexport function createPanelSizes(ctx: PanelSizesContext): PanelSizes {\n const [store, setStore] = createStore<Record<string, number>>({});\n\n const sizeOf = (id: string) => store[id] ?? 0;\n\n const applyAll = (values: number[], report = true) => {\n const list = ctx.metas();\n const before = list.map((meta) => sizeOf(meta.id));\n setStore(\n produce((draft) => {\n list.forEach((meta, index) => {\n const value = values[index];\n if (value !== undefined) draft[meta.id] = value;\n });\n }),\n );\n if (!report) return;\n\n list.forEach((meta, index) => {\n const value = values[index];\n if (value !== undefined) {\n ctx.reportSizeChange(meta, before[index]!, value);\n }\n });\n };\n\n const applyPair: PanelSizes[\"applyPair\"] = (\n prev,\n next,\n targetPrev,\n total,\n ) => {\n const size = resolvePairSize(\n pairConstraintsOf(prev, next),\n targetPrev,\n total,\n );\n const prevOld = sizeOf(prev.id);\n const nextOld = sizeOf(next.id);\n\n setStore(\n produce((draft) => {\n draft[prev.id] = size;\n draft[next.id] = total - size;\n }),\n );\n ctx.reportSizeChange(prev, prevOld, size);\n ctx.reportSizeChange(next, nextOld, total - size);\n };\n\n const applyPanelTarget: PanelSizes[\"applyPanelTarget\"] = (\n meta,\n targetSize,\n ) => {\n const { prev, next } = ctx.registry.neighbors(meta);\n if (next) {\n applyPair(meta, next, targetSize, sizeOf(meta.id) + sizeOf(next.id));\n } else if (prev) {\n const total = sizeOf(prev.id) + sizeOf(meta.id);\n applyPair(prev, meta, total - targetSize, total);\n } else {\n // 独苗面板:没有可重分配的对象,直接占满\n setStore(meta.id, 100);\n }\n };\n\n const remove = (id: string) => {\n setStore(\n produce((draft) => {\n delete draft[id];\n }),\n );\n };\n\n return { store, sizeOf, applyAll, applyPair, applyPanelTarget, remove };\n}\n"],"mappings":";;;;AA6CA,SAAgBA,EAAiB,GAAoC;CACnE,IAAM,CAACC,GAAOC,KAAYC,EAAoC,CAAC,CAAC,GAE1DC,KAAU,MAAeH,EAAMI,MAAO,GAEtCC,KAAY,GAAkB,IAAS,OAAS;EACpD,IAAMC,IAAOC,EAAI,MAAM,GACjBC,IAASF,EAAK,KAAK,MAASH,EAAOM,EAAK,EAAE,CAAC;EASjD,AARAR,EACES,GAAS,MAAU;GACjB,EAAK,SAAS,GAAM,MAAU;IAC5B,IAAMC,IAAQC,EAAOC;IACrB,AAAIF,MAAU,KAAA,MAAW,EAAMF,EAAK,MAAME;GAC5C,CAAC;EACH,CAAC,CACH,GACKG,KAELR,EAAK,SAAS,GAAM,MAAU;GAC5B,IAAMK,IAAQC,EAAOC;GACrB,AAAIF,MAAU,KAAA,KACZJ,EAAI,iBAAiBE,GAAMD,EAAOK,IAASF,CAAK;EAEpD,CAAC;CACH,GAEMI,KACJ,GACA,GACA,GACA,MACG;EACH,IAAMC,IAAOC,EACXC,EAAkBC,GAAMC,CAAI,GAC5BC,GACAC,CACF,GACMC,IAAUpB,EAAOgB,EAAK,EAAE,GACxBK,IAAUrB,EAAOiB,EAAK,EAAE;EAS9B,AAPAnB,EACES,GAAS,MAAU;GAEjB,AADA,EAAMS,EAAK,MAAMH,GACjB,EAAMI,EAAK,MAAME,IAAQN;EAC3B,CAAC,CACH,GACAT,EAAI,iBAAiBY,GAAMI,GAASP,CAAI,GACxCT,EAAI,iBAAiBa,GAAMI,GAASF,IAAQN,CAAI;CAClD;CA0BA,OAAO;EAAE;EAAO;EAAQ;EAAU;EAAW,mBAvB3C,GACA,MACG;GACH,IAAM,EAAE,SAAM,YAAST,EAAI,SAAS,UAAUE,CAAI;GAClD,IAAIW,GACF,EAAUX,GAAMW,GAAMK,GAAYtB,EAAOM,EAAK,EAAE,IAAIN,EAAOiB,EAAK,EAAE,CAAC;QAC9D,IAAID,GAAM;IACf,IAAMG,IAAQnB,EAAOgB,EAAK,EAAE,IAAIhB,EAAOM,EAAK,EAAE;IAC9C,EAAUU,GAAMV,GAAMa,IAAQG,GAAYH,CAAK;GACjD,OAEE,EAASb,EAAK,IAAI,GAAG;EAEzB;EAU+D,SAR/C,MAAe;GAC7B,EACEC,GAAS,MAAU;IACjB,OAAOgB,EAAMtB;GACf,CAAC,CACH;EACF;CAEsE;AACxE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ResizableLayout } from './resizable.types';
|
|
2
|
+
export declare const STORAGE_PREFIX = "neut-resizable:";
|
|
3
|
+
/** 由 `autoSaveId` 得到 storage key;未配置时返回 undefined(表示不持久化) */
|
|
4
|
+
export declare function storageKey(autoSaveId: string | undefined): string | undefined;
|
|
5
|
+
/** 解析显式传入的 storage,缺省回退到 localStorage(SSR 下为 undefined) */
|
|
6
|
+
export declare function resolveStorage(explicit: Storage | undefined): Storage | undefined;
|
|
7
|
+
export interface PersistContext {
|
|
8
|
+
autoSaveId: string | undefined;
|
|
9
|
+
storage: Storage | undefined;
|
|
10
|
+
}
|
|
11
|
+
/** 写入布局;失败时静默忽略 */
|
|
12
|
+
export declare function persistLayout(context: PersistContext, layout: ResizableLayout): void;
|
|
13
|
+
/**
|
|
14
|
+
* 读取已保存的布局。
|
|
15
|
+
* 只有「非 null 的对象」才被接受(防止 JSON 里存了 `null` / 数字 / 字符串)。
|
|
16
|
+
*/
|
|
17
|
+
export declare function readSavedLayout(context: PersistContext): ResizableLayout | undefined;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
//#region src/components/resizable/resizable.storage.ts
|
|
2
|
+
var e = "neut-resizable:";
|
|
3
|
+
function t(t) {
|
|
4
|
+
return t ? `${e}${t}` : void 0;
|
|
5
|
+
}
|
|
6
|
+
function n(e) {
|
|
7
|
+
return e || (typeof localStorage < "u" ? localStorage : void 0);
|
|
8
|
+
}
|
|
9
|
+
function r(e, r) {
|
|
10
|
+
let i = t(e.autoSaveId), a = n(e.storage);
|
|
11
|
+
if (i && a) try {
|
|
12
|
+
a.setItem(i, JSON.stringify(r));
|
|
13
|
+
} catch {}
|
|
14
|
+
}
|
|
15
|
+
function i(e) {
|
|
16
|
+
let r = t(e.autoSaveId), i = n(e.storage);
|
|
17
|
+
if (r && i) try {
|
|
18
|
+
let e = i.getItem(r);
|
|
19
|
+
if (!e) return;
|
|
20
|
+
let t = JSON.parse(e);
|
|
21
|
+
return typeof t == "object" && t ? t : void 0;
|
|
22
|
+
} catch {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
export { e as STORAGE_PREFIX, r as persistLayout, i as readSavedLayout, n as resolveStorage, t as storageKey };
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=resizable.storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resizable.storage.js","names":["STORAGE_PREFIX","storageKey","autoSaveId","resolveStorage","explicit","persistLayout","key","context","storage","layout","readSavedLayout","raw","parsed"],"sources":["../../../src/components/resizable/resizable.storage.ts"],"sourcesContent":["/**\n * Resizable 的布局持久化。\n *\n * 单一职责:把布局读写到 `Storage`(默认 localStorage)。\n * 所有异常都被吞掉——隐私模式、配额超限、损坏的 JSON 都不应让组件崩溃。\n */\n\nimport type { ResizableLayout } from \"./resizable.types\";\n\nexport const STORAGE_PREFIX = \"neut-resizable:\";\n\n/** 由 `autoSaveId` 得到 storage key;未配置时返回 undefined(表示不持久化) */\nexport function storageKey(autoSaveId: string | undefined): string | undefined {\n return autoSaveId ? `${STORAGE_PREFIX}${autoSaveId}` : undefined;\n}\n\n/** 解析显式传入的 storage,缺省回退到 localStorage(SSR 下为 undefined) */\nexport function resolveStorage(\n explicit: Storage | undefined,\n): Storage | undefined {\n if (explicit) return explicit;\n return typeof localStorage !== \"undefined\" ? localStorage : undefined;\n}\n\nexport interface PersistContext {\n autoSaveId: string | undefined;\n storage: Storage | undefined;\n}\n\n/** 写入布局;失败时静默忽略 */\nexport function persistLayout(\n context: PersistContext,\n layout: ResizableLayout,\n): void {\n const key = storageKey(context.autoSaveId);\n const storage = resolveStorage(context.storage);\n if (!key || !storage) return;\n try {\n storage.setItem(key, JSON.stringify(layout));\n } catch {\n // 隐私模式等场景下忽略持久化失败\n }\n}\n\n/**\n * 读取已保存的布局。\n * 只有「非 null 的对象」才被接受(防止 JSON 里存了 `null` / 数字 / 字符串)。\n */\nexport function readSavedLayout(\n context: PersistContext,\n): ResizableLayout | undefined {\n const key = storageKey(context.autoSaveId);\n const storage = resolveStorage(context.storage);\n if (!key || !storage) return undefined;\n try {\n const raw = storage.getItem(key);\n if (!raw) return undefined;\n const parsed = JSON.parse(raw) as unknown;\n return typeof parsed === \"object\" && parsed !== null\n ? (parsed as ResizableLayout)\n : undefined;\n } catch {\n return undefined;\n }\n}\n"],"mappings":";AASA,IAAaA,IAAiB;AAG9B,SAAgBC,EAAW,GAAoD;CAC7E,OAAOC,IAAa,GAAGF,IAAiBE,MAAe,KAAA;AACzD;AAGA,SAAgBC,EACd,GACqB;CAErB,OADIC,MACG,OAAO,eAAiB,MAAc,eAAe,KAAA;AAC9D;AAQA,SAAgBC,EACd,GACA,GACM;CACN,IAAMC,IAAML,EAAWM,EAAQ,UAAU,GACnCC,IAAUL,EAAeI,EAAQ,OAAO;CAC9C,IAAKD,KAAQE,GACb,IAAI;EACF,EAAQ,QAAQF,GAAK,KAAK,UAAUG,CAAM,CAAC;CAC7C,QAAQ,CAER;AACF;AAMA,SAAgBC,EACd,GAC6B;CAC7B,IAAMJ,IAAML,EAAWM,EAAQ,UAAU,GACnCC,IAAUL,EAAeI,EAAQ,OAAO;CAC9C,IAAKD,KAAQE,GACb,IAAI;EACF,IAAMG,IAAMH,EAAQ,QAAQF,CAAG;EAC/B,IAAI,CAACK,GAAK;EACV,IAAMC,IAAS,KAAK,MAAMD,CAAG;EAC7B,OAAO,OAAOC,KAAW,YAAYA,IAChCA,IACD,KAAA;CACN,QAAQ;EACN;CACF;AACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { JSX } from 'solid-js';
|
|
1
2
|
/** 解析尺寸:number/`"25%"`/`"25"` 都按百分比处理(不支持 px,按需再扩展) */
|
|
2
3
|
export declare function parseSize(value: number | string | undefined, fallback: number): number;
|
|
3
|
-
export declare function clamp(value: number, min: number, max: number): number;
|
|
4
4
|
/** 百分比保留 2 位小数,避免 onLayoutChange/layout 输出出现长尾浮点 */
|
|
5
5
|
export declare function roundPercent(value: number): number;
|
|
6
6
|
/**
|
|
@@ -12,5 +12,12 @@ export declare function normalizeSizes(raw: number[], bounds: Array<{
|
|
|
12
12
|
min: number;
|
|
13
13
|
max: number;
|
|
14
14
|
}>): number[];
|
|
15
|
-
/**
|
|
16
|
-
|
|
15
|
+
/**
|
|
16
|
+
* 面板的 `style` 文本:`flex-grow` 承载百分比尺寸,配 `flex-shrink/basis`
|
|
17
|
+
* 保证面板只按权重分配主轴空间。
|
|
18
|
+
*
|
|
19
|
+
* 用字符串而非对象声明 style,是因为模板字面量会被 Solid 包进 effect,
|
|
20
|
+
* 尺寸变化时能可靠更新;对象形式里的 getter 不保证被编译器识别为动态。
|
|
21
|
+
* 调用方传入的 style 支持字符串原样拼接或对象(键转 kebab-case,空值跳过)。
|
|
22
|
+
*/
|
|
23
|
+
export declare function buildPanelStyleText(size: number, style?: string | JSX.CSSProperties): string;
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
+
import { toKebabCase as e } from "../../utils/string.js";
|
|
2
|
+
import { clamp as t } from "../../utils/number.js";
|
|
1
3
|
//#region src/components/resizable/resizable.utils.ts
|
|
2
|
-
function
|
|
4
|
+
function n(e, t) {
|
|
3
5
|
if (e == null) return t;
|
|
4
6
|
if (typeof e == "number") return Number.isFinite(e) ? e : t;
|
|
5
|
-
let n = e.trim(), r =
|
|
7
|
+
let n = e.trim(), r = Number.parseFloat(n);
|
|
6
8
|
return Number.isFinite(r) ? r : t;
|
|
7
9
|
}
|
|
8
|
-
function
|
|
9
|
-
return Math.min(n, Math.max(t, e));
|
|
10
|
-
}
|
|
11
|
-
function n(e) {
|
|
10
|
+
function r(e) {
|
|
12
11
|
return Math.round(e * 100) / 100;
|
|
13
12
|
}
|
|
14
|
-
function
|
|
13
|
+
function i(e, n) {
|
|
15
14
|
if (e.length === 0) return [];
|
|
16
15
|
let r = e.map((e, r) => t(e, n[r].min, n[r].max)), i = r.reduce((e, t) => e + t, 0);
|
|
17
16
|
if (i <= 0) {
|
|
@@ -36,10 +35,17 @@ function r(e, n) {
|
|
|
36
35
|
}
|
|
37
36
|
return r;
|
|
38
37
|
}
|
|
39
|
-
function
|
|
40
|
-
|
|
38
|
+
function a(t, n) {
|
|
39
|
+
let r = [
|
|
40
|
+
`flex-grow:${t}`,
|
|
41
|
+
"flex-shrink:1",
|
|
42
|
+
"flex-basis:0%"
|
|
43
|
+
];
|
|
44
|
+
if (typeof n == "string") return r.push(n), r.join(";");
|
|
45
|
+
if (n && typeof n == "object") for (let [t, i] of Object.entries(n)) i != null && r.push(`${e(t)}:${i}`);
|
|
46
|
+
return r.join(";");
|
|
41
47
|
}
|
|
42
48
|
//#endregion
|
|
43
|
-
export {
|
|
49
|
+
export { a as buildPanelStyleText, i as normalizeSizes, n as parseSize, r as roundPercent };
|
|
44
50
|
|
|
45
51
|
//# sourceMappingURL=resizable.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resizable.utils.js","names":["parseSize","value","fallback","trimmed","numeric","
|
|
1
|
+
{"version":3,"file":"resizable.utils.js","names":["parseSize","value","fallback","trimmed","numeric","roundPercent","normalizeSizes","raw","result","clamp","bounds","index","sum","acc","equal","iteration","fixedSum","free","bound","target","freeSum","buildPanelStyleText","parts","size","style","key","toKebabCase"],"sources":["../../../src/components/resizable/resizable.utils.ts"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport { clamp, toKebabCase } from \"~/utils\";\n\n/** 解析尺寸:number/`\"25%\"`/`\"25\"` 都按百分比处理(不支持 px,按需再扩展) */\nexport function parseSize(\n value: number | string | undefined,\n fallback: number,\n): number {\n if (value === undefined || value === null) return fallback;\n if (typeof value === \"number\") {\n return Number.isFinite(value) ? value : fallback;\n }\n const trimmed = value.trim();\n const numeric = Number.parseFloat(trimmed);\n return Number.isFinite(numeric) ? numeric : fallback;\n}\n\n/** 百分比保留 2 位小数,避免 onLayoutChange/layout 输出出现长尾浮点 */\nexport function roundPercent(value: number): number {\n return Math.round(value * 100) / 100;\n}\n\n/**\n * 把一组原始权重归一化到总和 100,并在迭代中尊重每个面板的上下界。\n * 之所以不用简单的按比例缩放:min/max 会在缩放后再次越界,需要固定越界项、\n * 把剩余空间按权重分给其余项(最多 4 轮即可收敛)。\n */\nexport function normalizeSizes(\n raw: number[],\n bounds: Array<{ min: number; max: number }>,\n): number[] {\n if (raw.length === 0) return [];\n const result = raw.map((value, index) =>\n clamp(value, bounds[index]!.min, bounds[index]!.max),\n );\n const sum = result.reduce((acc, value) => acc + value, 0);\n if (sum <= 0) {\n const equal = 100 / raw.length;\n return raw.map(() => equal);\n }\n for (let index = 0; index < result.length; index += 1) {\n result[index] = (result[index]! * 100) / sum;\n }\n\n for (let iteration = 0; iteration < 4; iteration += 1) {\n let fixedSum = 0;\n const free: number[] = [];\n for (let index = 0; index < result.length; index += 1) {\n const bound = bounds[index]!;\n if (result[index]! > bound.max) {\n result[index] = bound.max;\n fixedSum += bound.max;\n } else if (result[index]! < bound.min) {\n result[index] = bound.min;\n fixedSum += bound.min;\n } else {\n free.push(index);\n }\n }\n if (free.length === 0) break;\n const target = 100 - fixedSum;\n const freeSum = free.reduce((acc, index) => acc + result[index]!, 0);\n if (freeSum <= 0) {\n const equal = target / free.length;\n for (const index of free) result[index] = equal;\n break;\n }\n for (const index of free) {\n result[index] = (result[index]! * target) / freeSum;\n }\n }\n return result;\n}\n\n/**\n * 面板的 `style` 文本:`flex-grow` 承载百分比尺寸,配 `flex-shrink/basis`\n * 保证面板只按权重分配主轴空间。\n *\n * 用字符串而非对象声明 style,是因为模板字面量会被 Solid 包进 effect,\n * 尺寸变化时能可靠更新;对象形式里的 getter 不保证被编译器识别为动态。\n * 调用方传入的 style 支持字符串原样拼接或对象(键转 kebab-case,空值跳过)。\n */\nexport function buildPanelStyleText(\n size: number,\n style?: string | JSX.CSSProperties,\n): string {\n const parts = [`flex-grow:${size}`, \"flex-shrink:1\", \"flex-basis:0%\"];\n if (typeof style === \"string\") {\n parts.push(style);\n return parts.join(\";\");\n }\n if (style && typeof style === \"object\") {\n for (const [key, value] of Object.entries(style)) {\n if (value === null || value === undefined) continue;\n parts.push(`${toKebabCase(key)}:${value}`);\n }\n }\n return parts.join(\";\");\n}\n"],"mappings":";;;AAIA,SAAgBA,EACd,GACA,GACQ;CACR,IAAIC,KAAiC,MAAM,OAAOC;CAClD,IAAI,OAAOD,KAAU,UACnB,OAAO,OAAO,SAASA,CAAK,IAAIA,IAAQC;CAE1C,IAAMC,IAAUF,EAAM,KAAK,GACrBG,IAAU,OAAO,WAAWD,CAAO;CACzC,OAAO,OAAO,SAASC,CAAO,IAAIA,IAAUF;AAC9C;AAGA,SAAgBG,EAAa,GAAuB;CAClD,OAAO,KAAK,MAAMJ,IAAQ,GAAG,IAAI;AACnC;AAOA,SAAgBK,EACd,GACA,GACU;CACV,IAAIC,EAAI,WAAW,GAAG,OAAO,CAAC;CAC9B,IAAMC,IAASD,EAAI,KAAK,GAAO,MAC7BE,EAAMR,GAAOS,EAAOC,EAAM,CAAE,KAAKD,EAAOC,EAAM,CAAE,GAAG,CACrD,GACMC,IAAMJ,EAAO,QAAQ,GAAK,MAAUK,IAAMZ,GAAO,CAAC;CACxD,IAAIW,KAAO,GAAG;EACZ,IAAME,IAAQ,MAAMP,EAAI;EACxB,OAAOA,EAAI,UAAUO,CAAK;CAC5B;CACA,KAAK,IAAIH,IAAQ,GAAGA,IAAQH,EAAO,QAAQ,KAAS,GAClD,EAAOG,KAAUH,EAAOG,KAAU,MAAOC;CAG3C,KAAK,IAAIG,IAAY,GAAGA,IAAY,GAAG,KAAa,GAAG;EACrD,IAAIC,IAAW,GACTC,IAAiB,CAAC;EACxB,KAAK,IAAIN,IAAQ,GAAGA,IAAQH,EAAO,QAAQ,KAAS,GAAG;GACrD,IAAMU,IAAQR,EAAOC;GACrB,AAAIH,EAAOG,KAAUO,EAAM,OACzB,EAAOP,KAASO,EAAM,KACtB,KAAYA,EAAM,OACTV,EAAOG,KAAUO,EAAM,OAChC,EAAOP,KAASO,EAAM,KACtB,KAAYA,EAAM,OAElBD,EAAK,KAAKN,CAAK;EAEnB;EACA,IAAIM,EAAK,WAAW,GAAG;EACvB,IAAME,IAAS,MAAMH,GACfI,IAAUH,EAAK,QAAQ,GAAK,MAAUJ,IAAML,EAAOG,IAAS,CAAC;EACnE,IAAIS,KAAW,GAAG;GAChB,IAAMN,IAAQK,IAASF,EAAK;GAC5B,KAAK,IAAMN,KAASM,GAAM,EAAON,KAASG;GAC1C;EACF;EACA,KAAK,IAAMH,KAASM,GAClB,EAAON,KAAUH,EAAOG,KAAUQ,IAAUC;CAEhD;CACA,OAAOZ;AACT;AAUA,SAAgBa,EACd,GACA,GACQ;CACR,IAAMC,IAAQ;EAAC,aAAaC;EAAQ;EAAiB;CAAe;CACpE,IAAI,OAAOC,KAAU,UAEnB,OADAF,EAAM,KAAKE,CAAK,GACTF,EAAM,KAAK,GAAG;CAEvB,IAAIE,KAAS,OAAOA,KAAU,UAC5B,KAAK,IAAM,CAACC,GAAKxB,MAAU,OAAO,QAAQuB,CAAK,GAC7C,AAAIvB,KAAU,QACdqB,EAAM,KAAK,GAAGI,EAAYD,CAAG,EAAE,GAAGxB,GAAO;CAG7C,OAAOqB,EAAM,KAAK,GAAG;AACvB"}
|
|
@@ -1,176 +1,74 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { createPanelCommands as e } from "./resizable.commands.js";
|
|
2
|
+
import { createPanelLifecycle as t } from "./resizable.lifecycle.js";
|
|
3
|
+
import { createPanelRegistry as n } from "./resizable.registry.js";
|
|
4
|
+
import { createLayoutReporting as r } from "./resizable.reporting.js";
|
|
5
|
+
import { createPanelSizes as i } from "./resizable.sizes.js";
|
|
6
|
+
import { createSignal as a } from "solid-js";
|
|
4
7
|
//#region src/components/resizable/useResizablePanelGroup.ts
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
},
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
}, k
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
!i && a ? e.onCollapse?.() : i && !a && e.onExpand?.();
|
|
39
|
-
}, j = (e, t = !0) => {
|
|
40
|
-
let n = y(), r = n.map((e) => p[e.id] ?? 0);
|
|
41
|
-
m(a((t) => {
|
|
42
|
-
n.forEach((n, r) => {
|
|
43
|
-
let i = e[r];
|
|
44
|
-
i !== void 0 && (t[n.id] = i);
|
|
45
|
-
});
|
|
46
|
-
})), t && n.forEach((t, n) => {
|
|
47
|
-
let i = e[n];
|
|
48
|
-
i !== void 0 && A(t, r[n], i);
|
|
49
|
-
});
|
|
50
|
-
}, M = () => {
|
|
51
|
-
let e = y(), t = O() ?? c.defaultLayout(), n = e.map((e) => {
|
|
52
|
-
let n = t?.[e.id];
|
|
53
|
-
return n === void 0 ? e.defaultSize : n;
|
|
54
|
-
}), r = n.filter((e) => e !== void 0), i = n.length - r.length, a = r.reduce((e, t) => e + t, 0), o = Math.max(0, 100 - a), s = i > 0 ? o / i : 0;
|
|
55
|
-
return n.map((e) => e ?? s);
|
|
56
|
-
}, N = () => {
|
|
57
|
-
_ || typeof window < "u" && y().length !== 0 && (_ = !0, j(t(M(), k()), !1), D());
|
|
58
|
-
}, P = () => {
|
|
59
|
-
typeof window < "u" && queueMicrotask(() => {
|
|
60
|
-
_ || N();
|
|
61
|
-
});
|
|
62
|
-
}, F = (e) => {
|
|
63
|
-
if (h.set(e.element, e), g = [...g, e.element], !_) P();
|
|
64
|
-
else if (p[e.id] === void 0) {
|
|
65
|
-
let n = y(), r = n.map((t) => t.id === e.id ? t.defaultSize ?? 100 / n.length : p[t.id] ?? 0);
|
|
66
|
-
j(t(r, k())), D();
|
|
67
|
-
}
|
|
68
|
-
return () => {
|
|
69
|
-
h.delete(e.element), g = g.filter((t) => t !== e.element), m(a((t) => {
|
|
70
|
-
delete t[e.id];
|
|
71
|
-
}));
|
|
72
|
-
};
|
|
73
|
-
}, I = (e) => {
|
|
74
|
-
let t = e.previousElementSibling;
|
|
75
|
-
for (; t && !h.has(t);) t = t.previousElementSibling;
|
|
76
|
-
let n = e.nextElementSibling;
|
|
77
|
-
for (; n && !h.has(n);) n = n.nextElementSibling;
|
|
78
|
-
if (!t || !n) return;
|
|
79
|
-
let r = h.get(t), i = h.get(n), a = p[r.id] ?? 0;
|
|
80
|
-
return {
|
|
81
|
-
prev: r,
|
|
82
|
-
next: i,
|
|
83
|
-
prevSize: a,
|
|
84
|
-
total: a + (p[i.id] ?? 0)
|
|
85
|
-
};
|
|
86
|
-
}, L = (t, n, r, i) => {
|
|
87
|
-
let s = Math.max(b(t), i - n.maxSize()), c = Math.min(t.maxSize(), i - b(n)), l = e(r, s, c);
|
|
88
|
-
if (t.collapsible() && l < t.minSize() - o && l > t.collapsedSize() + o && (l = l - t.collapsedSize() < t.minSize() - l ? t.collapsedSize() : t.minSize()), n.collapsible() && i - l < n.minSize() - o && i - l > n.collapsedSize() + o) {
|
|
89
|
-
let e = i - l;
|
|
90
|
-
l = i - (e - n.collapsedSize() < n.minSize() - e ? n.collapsedSize() : n.minSize());
|
|
91
|
-
}
|
|
92
|
-
l = e(l, s, c);
|
|
93
|
-
let u = p[t.id] ?? 0, d = p[n.id] ?? 0;
|
|
94
|
-
m(a((e) => {
|
|
95
|
-
e[t.id] = l, e[n.id] = i - l;
|
|
96
|
-
})), A(t, u, l), A(n, d, i - l);
|
|
97
|
-
}, R = (e, t) => {
|
|
98
|
-
let n = I(e);
|
|
99
|
-
n && (L(n.prev, n.next, t, n.total), E());
|
|
100
|
-
}, z = (e, t) => {
|
|
101
|
-
let n = I(e);
|
|
102
|
-
n && (L(n.prev, n.next, n.prevSize + t, n.total), D());
|
|
103
|
-
}, B = (e) => {
|
|
104
|
-
let t = y().find((t) => t.id === e);
|
|
105
|
-
if (!t?.collapsible()) return !1;
|
|
106
|
-
let n = p[e] ?? 0;
|
|
107
|
-
return !x(t, n) && (v.set(e, n), H(t, t.collapsedSize()), D(), !0);
|
|
108
|
-
}, V = (e) => {
|
|
109
|
-
let t = y().find((t) => t.id === e);
|
|
110
|
-
if (!t?.collapsible()) return !1;
|
|
111
|
-
let n = p[e] ?? 0;
|
|
112
|
-
if (!x(t, n)) return !1;
|
|
113
|
-
let r = v.get(e) ?? t.minSize();
|
|
114
|
-
return H(t, Math.max(r, t.minSize())), D(), !0;
|
|
115
|
-
}, H = (e, t) => {
|
|
116
|
-
let n = g.indexOf(e.element), r = g[n + 1], i = g[n - 1], a = r ? h.get(r) : void 0, o = i ? h.get(i) : void 0;
|
|
117
|
-
if (a) {
|
|
118
|
-
let n = (p[e.id] ?? 0) + (p[a.id] ?? 0);
|
|
119
|
-
L(e, a, t, n);
|
|
120
|
-
} else if (o) {
|
|
121
|
-
let n = (p[o.id] ?? 0) + (p[e.id] ?? 0);
|
|
122
|
-
L(o, e, n - t, n);
|
|
123
|
-
} else m(e.id, 100);
|
|
124
|
-
};
|
|
8
|
+
function o(o) {
|
|
9
|
+
let [s, c] = a(), [l, u] = a(!1), d = n(), [f, p] = a(0), m = () => d.ordered(), h = i({
|
|
10
|
+
metas: m,
|
|
11
|
+
registry: d,
|
|
12
|
+
reportSizeChange: (e, t, n) => y.reportSizeChange(e, t, n)
|
|
13
|
+
}), { store: g, sizeOf: _, applyPair: v } = h, y = r({
|
|
14
|
+
metas: m,
|
|
15
|
+
sizeOf: _,
|
|
16
|
+
onLayoutChange: o.onLayoutChange,
|
|
17
|
+
persist: () => ({
|
|
18
|
+
autoSaveId: o.autoSaveId(),
|
|
19
|
+
storage: o.storage()
|
|
20
|
+
})
|
|
21
|
+
}), { notify: b, commit: x, readSaved: S } = y, C = t({
|
|
22
|
+
metas: m,
|
|
23
|
+
registry: d,
|
|
24
|
+
sizes: h,
|
|
25
|
+
readSaved: S,
|
|
26
|
+
defaultLayout: o.defaultLayout,
|
|
27
|
+
commit: x,
|
|
28
|
+
onRegistryChange: () => p((e) => e + 1)
|
|
29
|
+
}).registerPanel, w = (e) => d.adjacent(e, _), T = (e, t) => {
|
|
30
|
+
let n = w(e);
|
|
31
|
+
n && (v(n.prev, n.next, t, n.total), b());
|
|
32
|
+
}, E = (e, t) => {
|
|
33
|
+
let n = w(e);
|
|
34
|
+
n && (v(n.prev, n.next, n.prevSize + t, n.total), x());
|
|
35
|
+
}, { collapsePanel: D, expandPanel: O, setPanelSize: k, isPanelCollapsed: A, toggleHandleCollapse: j } = e({
|
|
36
|
+
metas: m,
|
|
37
|
+
registry: d,
|
|
38
|
+
sizes: h,
|
|
39
|
+
commit: x
|
|
40
|
+
});
|
|
125
41
|
return {
|
|
126
|
-
orientation:
|
|
127
|
-
sizes: () =>
|
|
128
|
-
groupElement:
|
|
129
|
-
setGroupElement:
|
|
130
|
-
dragging:
|
|
131
|
-
keyboardResizeBy:
|
|
132
|
-
registerPanel:
|
|
133
|
-
resolveAdjacent: (e) =>
|
|
134
|
-
setAdjacentSize:
|
|
135
|
-
nudgeAdjacent:
|
|
136
|
-
toggleHandleCollapse:
|
|
137
|
-
let t = I(e);
|
|
138
|
-
if (!t) return;
|
|
139
|
-
let { prev: n, next: r } = t;
|
|
140
|
-
if (n.collapsible()) {
|
|
141
|
-
x(n, p[n.id] ?? 0) ? V(n.id) : B(n.id);
|
|
142
|
-
return;
|
|
143
|
-
}
|
|
144
|
-
if (r.collapsible()) {
|
|
145
|
-
x(r, p[r.id] ?? 0) ? V(r.id) : B(r.id);
|
|
146
|
-
return;
|
|
147
|
-
}
|
|
148
|
-
},
|
|
42
|
+
orientation: o.orientation,
|
|
43
|
+
sizes: () => g,
|
|
44
|
+
groupElement: s,
|
|
45
|
+
setGroupElement: c,
|
|
46
|
+
dragging: l,
|
|
47
|
+
keyboardResizeBy: o.keyboardResizeBy,
|
|
48
|
+
registerPanel: C,
|
|
49
|
+
resolveAdjacent: (e) => (f(), w(e)),
|
|
50
|
+
setAdjacentSize: T,
|
|
51
|
+
nudgeAdjacent: E,
|
|
52
|
+
toggleHandleCollapse: j,
|
|
149
53
|
groupSizePx: () => {
|
|
150
|
-
let e =
|
|
151
|
-
return e ?
|
|
54
|
+
let e = s();
|
|
55
|
+
return e ? o.orientation() === "horizontal" ? e.clientWidth : e.clientHeight : 0;
|
|
152
56
|
},
|
|
153
57
|
isRtl: () => {
|
|
154
|
-
let e =
|
|
58
|
+
let e = s();
|
|
155
59
|
return e ? window.getComputedStyle(e).direction === "rtl" : !1;
|
|
156
60
|
},
|
|
157
|
-
beginDrag: () =>
|
|
158
|
-
endDrag: () =>
|
|
159
|
-
commitLayout:
|
|
160
|
-
setPanelSize:
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
expandPanel: V,
|
|
166
|
-
isPanelCollapsed: (e) => {
|
|
167
|
-
let t = y().find((t) => t.id === e);
|
|
168
|
-
return t ? x(t, p[e] ?? 0) : !1;
|
|
169
|
-
},
|
|
170
|
-
getPanelSize: (e) => p[e] ?? 0
|
|
61
|
+
beginDrag: () => u(!0),
|
|
62
|
+
endDrag: () => u(!1),
|
|
63
|
+
commitLayout: x,
|
|
64
|
+
setPanelSize: k,
|
|
65
|
+
collapsePanel: D,
|
|
66
|
+
expandPanel: O,
|
|
67
|
+
isPanelCollapsed: A,
|
|
68
|
+
getPanelSize: _
|
|
171
69
|
};
|
|
172
70
|
}
|
|
173
71
|
//#endregion
|
|
174
|
-
export {
|
|
72
|
+
export { o as useResizablePanelGroup };
|
|
175
73
|
|
|
176
74
|
//# sourceMappingURL=useResizablePanelGroup.js.map
|