@msviderok/base-ui-solid 1.0.0-beta.1 → 1.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/accordion/header/AccordionHeader.js +2 -4
- package/cjs/accordion/item/AccordionItem.js +10 -6
- package/cjs/accordion/panel/AccordionPanel.js +8 -4
- package/cjs/accordion/root/AccordionRoot.js +12 -8
- package/cjs/accordion/trigger/AccordionTrigger.js +2 -4
- package/cjs/alert-dialog/backdrop/AlertDialogBackdrop.js +2 -4
- package/cjs/alert-dialog/close/AlertDialogClose.js +2 -4
- package/cjs/alert-dialog/description/AlertDialogDescription.js +2 -4
- package/cjs/alert-dialog/popup/AlertDialogPopup.js +24 -16
- package/cjs/alert-dialog/portal/AlertDialogPortal.js +20 -10
- package/cjs/alert-dialog/root/AlertDialogRoot.js +5 -3
- package/cjs/alert-dialog/title/AlertDialogTitle.js +1 -4
- package/cjs/alert-dialog/trigger/AlertDialogTrigger.js +2 -4
- package/cjs/avatar/fallback/AvatarFallback.js +2 -4
- package/cjs/avatar/image/AvatarImage.js +2 -4
- package/cjs/avatar/root/AvatarRoot.js +5 -3
- package/cjs/checkbox/indicator/CheckboxIndicator.js +8 -4
- package/cjs/checkbox/root/CheckboxRoot.js +15 -9
- package/cjs/checkbox-group/CheckboxGroup.js +5 -3
- package/cjs/collapsible/panel/CollapsiblePanel.js +8 -4
- package/cjs/collapsible/root/CollapsibleRoot.js +15 -7
- package/cjs/collapsible/trigger/CollapsibleTrigger.js +2 -4
- package/cjs/composite/item/CompositeItem.js +2 -4
- package/cjs/composite/list/CompositeList.js +16 -12
- package/cjs/composite/root/CompositeRoot.js +13 -7
- package/cjs/context-menu/root/ContextMenuRoot.js +10 -8
- package/cjs/context-menu/trigger/ContextMenuTrigger.js +2 -4
- package/cjs/dialog/backdrop/DialogBackdrop.js +2 -4
- package/cjs/dialog/close/DialogClose.js +2 -4
- package/cjs/dialog/description/DialogDescription.js +2 -4
- package/cjs/dialog/popup/DialogPopup.js +30 -18
- package/cjs/dialog/portal/DialogPortal.js +20 -10
- package/cjs/dialog/root/DialogRoot.js +10 -6
- package/cjs/dialog/title/DialogTitle.js +2 -4
- package/cjs/dialog/trigger/DialogTrigger.js +2 -4
- package/cjs/direction-provider/DirectionProvider.js +5 -3
- package/cjs/field/control/FieldControl.js +2 -4
- package/cjs/field/description/FieldDescription.js +2 -4
- package/cjs/field/error/FieldError.js +21 -16
- package/cjs/field/label/FieldLabel.js +2 -4
- package/cjs/field/root/FieldRoot.js +5 -3
- package/cjs/field/validity/FieldValidity.js +6 -6
- package/cjs/fieldset/legend/FieldsetLegend.js +2 -4
- package/cjs/fieldset/root/FieldsetRoot.js +5 -3
- package/cjs/floating-ui-solid/components/FloatingDelayGroup.js +5 -3
- package/cjs/floating-ui-solid/components/FloatingFocusManager.js +39 -24
- package/cjs/floating-ui-solid/components/FloatingPortal.js +73 -47
- package/cjs/floating-ui-solid/components/FloatingTree.js +9 -5
- package/cjs/form/Form.js +5 -3
- package/cjs/input/Input.js +2 -4
- package/cjs/menu/arrow/MenuArrow.js +2 -4
- package/cjs/menu/backdrop/MenuBackdrop.js +2 -4
- package/cjs/menu/checkbox-item/MenuCheckboxItem.js +5 -3
- package/cjs/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.js +2 -4
- package/cjs/menu/group/MenuGroup.js +5 -3
- package/cjs/menu/group-label/MenuGroupLabel.js +2 -4
- package/cjs/menu/item/MenuItem.js +2 -4
- package/cjs/menu/popup/MenuPopup.js +14 -6
- package/cjs/menu/portal/MenuPortal.js +20 -10
- package/cjs/menu/positioner/MenuPositioner.js +32 -20
- package/cjs/menu/radio-group/MenuRadioGroup.js +5 -3
- package/cjs/menu/radio-item/MenuRadioItem.js +5 -3
- package/cjs/menu/radio-item-indicator/MenuRadioItemIndicator.js +2 -4
- package/cjs/menu/root/MenuRoot.js +24 -12
- package/cjs/menu/submenu-root/MenuSubmenuRoot.js +5 -5
- package/cjs/menu/submenu-trigger/MenuSubmenuTrigger.js +2 -4
- package/cjs/menu/trigger/MenuTrigger.js +13 -7
- package/cjs/menubar/Menubar.js +31 -15
- package/cjs/meter/indicator/MeterIndicator.js +2 -4
- package/cjs/meter/label/MeterLabel.js +2 -4
- package/cjs/meter/root/MeterRoot.js +5 -3
- package/cjs/meter/track/MeterTrack.js +2 -4
- package/cjs/meter/value/MeterValue.js +3 -7
- package/cjs/navigation-menu/arrow/NavigationMenuArrow.js +2 -4
- package/cjs/navigation-menu/backdrop/NavigationMenuBackdrop.js +2 -4
- package/cjs/navigation-menu/content/NavigationMenuContent.js +25 -14
- package/cjs/navigation-menu/icon/NavigationMenuIcon.js +2 -4
- package/cjs/navigation-menu/item/NavigationMenuItem.js +5 -5
- package/cjs/navigation-menu/link/NavigationMenuLink.js +2 -2
- package/cjs/navigation-menu/list/NavigationMenuList.js +5 -3
- package/cjs/navigation-menu/popup/NavigationMenuPopup.js +32 -34
- package/cjs/navigation-menu/portal/NavigationMenuPortal.js +20 -10
- package/cjs/navigation-menu/positioner/NavigationMenuPositioner.js +5 -3
- package/cjs/navigation-menu/root/NavigationMenuRoot.js +23 -13
- package/cjs/navigation-menu/trigger/NavigationMenuTrigger.js +56 -49
- package/cjs/navigation-menu/viewport/NavigationMenuViewport.js +2 -4
- package/cjs/number-field/decrement/NumberFieldDecrement.js +2 -4
- package/cjs/number-field/group/NumberFieldGroup.js +2 -4
- package/cjs/number-field/increment/NumberFieldIncrement.js +2 -4
- package/cjs/number-field/input/NumberFieldInput.js +2 -4
- package/cjs/number-field/root/NumberFieldRoot.js +32 -16
- package/cjs/number-field/scrub-area/NumberFieldScrubArea.js +5 -3
- package/cjs/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.js +8 -5
- package/cjs/popover/arrow/PopoverArrow.js +2 -4
- package/cjs/popover/backdrop/PopoverBackdrop.js +2 -4
- package/cjs/popover/close/PopoverClose.js +2 -4
- package/cjs/popover/description/PopoverDescription.js +2 -4
- package/cjs/popover/popup/PopoverPopup.js +20 -8
- package/cjs/popover/portal/PopoverPortal.js +20 -10
- package/cjs/popover/positioner/PopoverPositioner.js +27 -13
- package/cjs/popover/root/PopoverRoot.js +19 -13
- package/cjs/popover/title/PopoverTitle.js +2 -4
- package/cjs/popover/trigger/PopoverTrigger.js +2 -4
- package/cjs/preview-card/arrow/PreviewCardArrow.js +2 -4
- package/cjs/preview-card/backdrop/PreviewCardBackdrop.js +2 -4
- package/cjs/preview-card/popup/PreviewCardPopup.js +2 -4
- package/cjs/preview-card/portal/PreviewCardPortal.js +20 -10
- package/cjs/preview-card/positioner/PreviewCardPositioner.js +5 -3
- package/cjs/preview-card/root/PreviewCardRoot.js +5 -3
- package/cjs/preview-card/trigger/PreviewCardTrigger.js +2 -4
- package/cjs/progress/indicator/ProgressIndicator.js +2 -4
- package/cjs/progress/label/ProgressLabel.js +2 -4
- package/cjs/progress/root/ProgressRoot.js +5 -3
- package/cjs/progress/track/ProgressTrack.js +2 -4
- package/cjs/progress/value/ProgressValue.js +2 -4
- package/cjs/radio/indicator/RadioIndicator.js +8 -4
- package/cjs/radio/root/RadioRoot.js +20 -11
- package/cjs/radio-group/RadioGroup.js +15 -10
- package/cjs/scroll-area/content/ScrollAreaContent.js +2 -4
- package/cjs/scroll-area/corner/ScrollAreaCorner.js +8 -4
- package/cjs/scroll-area/root/ScrollAreaRoot.js +5 -3
- package/cjs/scroll-area/scrollbar/ScrollAreaScrollbar.js +13 -7
- package/cjs/scroll-area/thumb/ScrollAreaThumb.js +2 -4
- package/cjs/scroll-area/viewport/ScrollAreaViewport.js +5 -3
- package/cjs/select/arrow/SelectArrow.js +8 -4
- package/cjs/select/backdrop/SelectBackdrop.js +2 -4
- package/cjs/select/group/SelectGroup.js +5 -3
- package/cjs/select/group-label/SelectGroupLabel.js +2 -4
- package/cjs/select/icon/SelectIcon.js +3 -7
- package/cjs/select/item/SelectItem.js +5 -3
- package/cjs/select/item-indicator/SelectItemIndicator.js +8 -4
- package/cjs/select/item-text/SelectItemText.js +2 -4
- package/cjs/select/popup/SelectPopup.js +12 -10
- package/cjs/select/portal/SelectPortal.js +20 -10
- package/cjs/select/positioner/SelectPositioner.js +23 -13
- package/cjs/select/root/SelectRoot.js +54 -47
- package/cjs/select/scroll-arrow/SelectScrollArrow.js +9 -7
- package/cjs/select/scroll-down-arrow/SelectScrollDownArrow.js +7 -5
- package/cjs/select/scroll-up-arrow/SelectScrollUpArrow.js +7 -5
- package/cjs/select/trigger/SelectTrigger.js +2 -4
- package/cjs/select/value/SelectValue.js +3 -7
- package/cjs/separator/Separator.js +2 -4
- package/cjs/slider/control/SliderControl.js +2 -4
- package/cjs/slider/indicator/SliderIndicator.js +2 -4
- package/cjs/slider/root/SliderRoot.js +66 -47
- package/cjs/slider/thumb/SliderThumb.js +8 -11
- package/cjs/slider/track/SliderTrack.js +2 -4
- package/cjs/slider/value/SliderValue.js +3 -7
- package/cjs/switch/root/SwitchRoot.js +15 -9
- package/cjs/switch/thumb/SwitchThumb.js +2 -4
- package/cjs/tabs/indicator/TabsIndicator.js +13 -11
- package/cjs/tabs/list/TabsList.js +20 -12
- package/cjs/tabs/panel/TabsPanel.js +3 -7
- package/cjs/tabs/root/TabsRoot.js +13 -9
- package/cjs/tabs/tab/TabsTab.js +2 -4
- package/cjs/toast/action/ToastAction.js +3 -7
- package/cjs/toast/close/ToastClose.js +2 -4
- package/cjs/toast/description/ToastDescription.js +3 -7
- package/cjs/toast/portal/ToastPortal.js +8 -4
- package/cjs/toast/provider/ToastProvider.js +5 -3
- package/cjs/toast/root/ToastRoot.js +30 -22
- package/cjs/toast/title/ToastTitle.js +3 -7
- package/cjs/toast/utils/test-utils.js +26 -21
- package/cjs/toast/viewport/ToastViewport.js +13 -14
- package/cjs/toggle/Toggle.js +10 -6
- package/cjs/toggle-group/ToggleGroup.js +19 -11
- package/cjs/toolbar/button/ToolbarButton.js +2 -2
- package/cjs/toolbar/group/ToolbarGroup.js +5 -3
- package/cjs/toolbar/input/ToolbarInput.js +2 -2
- package/cjs/toolbar/link/ToolbarLink.js +2 -2
- package/cjs/toolbar/root/ToolbarRoot.js +20 -10
- package/cjs/toolbar/separator/ToolbarSeparator.js +11 -6
- package/cjs/tooltip/arrow/TooltipArrow.js +2 -4
- package/cjs/tooltip/popup/TooltipPopup.js +2 -4
- package/cjs/tooltip/portal/TooltipPortal.js +20 -10
- package/cjs/tooltip/positioner/TooltipPositioner.js +5 -3
- package/cjs/tooltip/provider/TooltipProvider.js +15 -7
- package/cjs/tooltip/root/TooltipRoot.js +5 -3
- package/cjs/tooltip/trigger/TooltipTrigger.js +2 -4
- package/cjs/unstable-no-ssr/NoSsr.js +11 -5
- package/cjs/utils/FloatingPortalLite.js +7 -4
- package/cjs/utils/FocusGuard.js +19 -10
- package/cjs/utils/InternalBackdrop.js +19 -18
- package/cjs/utils/styles.js +3 -5
- package/cjs/utils/useRenderElement.js +34 -31
- package/esm/accordion/header/AccordionHeader.js +2 -4
- package/esm/accordion/item/AccordionItem.js +10 -6
- package/esm/accordion/panel/AccordionPanel.js +8 -4
- package/esm/accordion/root/AccordionRoot.js +12 -8
- package/esm/accordion/trigger/AccordionTrigger.js +3 -4
- package/esm/alert-dialog/backdrop/AlertDialogBackdrop.js +2 -4
- package/esm/alert-dialog/close/AlertDialogClose.js +2 -4
- package/esm/alert-dialog/description/AlertDialogDescription.js +2 -4
- package/esm/alert-dialog/popup/AlertDialogPopup.js +25 -16
- package/esm/alert-dialog/portal/AlertDialogPortal.js +20 -10
- package/esm/alert-dialog/root/AlertDialogRoot.js +5 -3
- package/esm/alert-dialog/title/AlertDialogTitle.js +1 -4
- package/esm/alert-dialog/trigger/AlertDialogTrigger.js +2 -4
- package/esm/avatar/fallback/AvatarFallback.js +2 -4
- package/esm/avatar/image/AvatarImage.js +2 -4
- package/esm/avatar/root/AvatarRoot.js +5 -3
- package/esm/checkbox/indicator/CheckboxIndicator.js +8 -4
- package/esm/checkbox/root/CheckboxRoot.js +21 -9
- package/esm/checkbox-group/CheckboxGroup.js +5 -3
- package/esm/collapsible/panel/CollapsiblePanel.js +8 -4
- package/esm/collapsible/root/CollapsibleRoot.js +15 -7
- package/esm/collapsible/trigger/CollapsibleTrigger.js +2 -4
- package/esm/composite/item/CompositeItem.js +2 -4
- package/esm/composite/list/CompositeList.js +16 -12
- package/esm/composite/root/CompositeRoot.js +13 -7
- package/esm/context-menu/root/ContextMenuRoot.js +10 -8
- package/esm/context-menu/trigger/ContextMenuTrigger.js +2 -4
- package/esm/dialog/backdrop/DialogBackdrop.js +2 -4
- package/esm/dialog/close/DialogClose.js +2 -4
- package/esm/dialog/description/DialogDescription.js +2 -4
- package/esm/dialog/popup/DialogPopup.js +31 -18
- package/esm/dialog/portal/DialogPortal.js +20 -10
- package/esm/dialog/root/DialogRoot.js +10 -6
- package/esm/dialog/title/DialogTitle.js +2 -4
- package/esm/dialog/trigger/DialogTrigger.js +2 -4
- package/esm/direction-provider/DirectionProvider.js +5 -3
- package/esm/field/control/FieldControl.js +2 -4
- package/esm/field/description/FieldDescription.js +2 -4
- package/esm/field/error/FieldError.js +24 -16
- package/esm/field/label/FieldLabel.js +2 -4
- package/esm/field/root/FieldRoot.js +5 -3
- package/esm/field/validity/FieldValidity.js +7 -5
- package/esm/fieldset/legend/FieldsetLegend.js +2 -4
- package/esm/fieldset/root/FieldsetRoot.js +5 -3
- package/esm/floating-ui-solid/components/FloatingDelayGroup.js +5 -3
- package/esm/floating-ui-solid/components/FloatingFocusManager.js +43 -24
- package/esm/floating-ui-solid/components/FloatingPortal.js +78 -46
- package/esm/floating-ui-solid/components/FloatingTree.js +9 -5
- package/esm/form/Form.js +5 -3
- package/esm/index.js +1 -1
- package/esm/input/Input.js +2 -4
- package/esm/menu/arrow/MenuArrow.js +2 -4
- package/esm/menu/backdrop/MenuBackdrop.js +2 -4
- package/esm/menu/checkbox-item/MenuCheckboxItem.js +5 -3
- package/esm/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.js +2 -4
- package/esm/menu/group/MenuGroup.js +5 -3
- package/esm/menu/group-label/MenuGroupLabel.js +2 -4
- package/esm/menu/item/MenuItem.js +2 -4
- package/esm/menu/popup/MenuPopup.js +15 -6
- package/esm/menu/portal/MenuPortal.js +20 -10
- package/esm/menu/positioner/MenuPositioner.js +33 -20
- package/esm/menu/radio-group/MenuRadioGroup.js +5 -3
- package/esm/menu/radio-item/MenuRadioItem.js +5 -3
- package/esm/menu/radio-item-indicator/MenuRadioItemIndicator.js +2 -4
- package/esm/menu/root/MenuRoot.js +25 -12
- package/esm/menu/submenu-root/MenuSubmenuRoot.js +5 -5
- package/esm/menu/submenu-trigger/MenuSubmenuTrigger.js +2 -4
- package/esm/menu/trigger/MenuTrigger.js +13 -7
- package/esm/menubar/Menubar.js +31 -15
- package/esm/meter/indicator/MeterIndicator.js +2 -4
- package/esm/meter/label/MeterLabel.js +2 -4
- package/esm/meter/root/MeterRoot.js +5 -3
- package/esm/meter/track/MeterTrack.js +2 -4
- package/esm/meter/value/MeterValue.js +3 -7
- package/esm/navigation-menu/arrow/NavigationMenuArrow.js +2 -4
- package/esm/navigation-menu/backdrop/NavigationMenuBackdrop.js +2 -4
- package/esm/navigation-menu/content/NavigationMenuContent.js +25 -13
- package/esm/navigation-menu/icon/NavigationMenuIcon.js +2 -4
- package/esm/navigation-menu/item/NavigationMenuItem.js +6 -5
- package/esm/navigation-menu/link/NavigationMenuLink.js +2 -2
- package/esm/navigation-menu/list/NavigationMenuList.js +5 -3
- package/esm/navigation-menu/popup/NavigationMenuPopup.js +33 -34
- package/esm/navigation-menu/portal/NavigationMenuPortal.js +20 -10
- package/esm/navigation-menu/positioner/NavigationMenuPositioner.js +5 -3
- package/esm/navigation-menu/root/NavigationMenuRoot.js +23 -13
- package/esm/navigation-menu/trigger/NavigationMenuTrigger.js +61 -49
- package/esm/navigation-menu/viewport/NavigationMenuViewport.js +2 -4
- package/esm/number-field/decrement/NumberFieldDecrement.js +2 -4
- package/esm/number-field/group/NumberFieldGroup.js +2 -4
- package/esm/number-field/increment/NumberFieldIncrement.js +2 -4
- package/esm/number-field/input/NumberFieldInput.js +2 -4
- package/esm/number-field/root/NumberFieldRoot.js +37 -16
- package/esm/number-field/scrub-area/NumberFieldScrubArea.js +5 -3
- package/esm/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.js +8 -4
- package/esm/popover/arrow/PopoverArrow.js +2 -4
- package/esm/popover/backdrop/PopoverBackdrop.js +2 -4
- package/esm/popover/close/PopoverClose.js +2 -4
- package/esm/popover/description/PopoverDescription.js +2 -4
- package/esm/popover/popup/PopoverPopup.js +21 -8
- package/esm/popover/portal/PopoverPortal.js +20 -10
- package/esm/popover/positioner/PopoverPositioner.js +28 -13
- package/esm/popover/root/PopoverRoot.js +19 -13
- package/esm/popover/title/PopoverTitle.js +2 -4
- package/esm/popover/trigger/PopoverTrigger.js +2 -4
- package/esm/preview-card/arrow/PreviewCardArrow.js +2 -4
- package/esm/preview-card/backdrop/PreviewCardBackdrop.js +2 -4
- package/esm/preview-card/popup/PreviewCardPopup.js +2 -4
- package/esm/preview-card/portal/PreviewCardPortal.js +20 -10
- package/esm/preview-card/positioner/PreviewCardPositioner.js +5 -3
- package/esm/preview-card/root/PreviewCardRoot.js +5 -3
- package/esm/preview-card/trigger/PreviewCardTrigger.js +2 -4
- package/esm/progress/indicator/ProgressIndicator.js +2 -4
- package/esm/progress/label/ProgressLabel.js +2 -4
- package/esm/progress/root/ProgressRoot.js +5 -3
- package/esm/progress/track/ProgressTrack.js +2 -4
- package/esm/progress/value/ProgressValue.js +2 -4
- package/esm/radio/indicator/RadioIndicator.js +8 -4
- package/esm/radio/root/RadioRoot.js +22 -11
- package/esm/radio-group/RadioGroup.js +18 -10
- package/esm/scroll-area/content/ScrollAreaContent.js +2 -4
- package/esm/scroll-area/corner/ScrollAreaCorner.js +8 -4
- package/esm/scroll-area/root/ScrollAreaRoot.js +5 -3
- package/esm/scroll-area/scrollbar/ScrollAreaScrollbar.js +13 -7
- package/esm/scroll-area/thumb/ScrollAreaThumb.js +2 -4
- package/esm/scroll-area/viewport/ScrollAreaViewport.js +5 -3
- package/esm/select/arrow/SelectArrow.js +8 -4
- package/esm/select/backdrop/SelectBackdrop.js +2 -4
- package/esm/select/group/SelectGroup.js +5 -3
- package/esm/select/group-label/SelectGroupLabel.js +2 -4
- package/esm/select/icon/SelectIcon.js +3 -7
- package/esm/select/item/SelectItem.js +5 -3
- package/esm/select/item-indicator/SelectItemIndicator.js +8 -4
- package/esm/select/item-text/SelectItemText.js +2 -4
- package/esm/select/popup/SelectPopup.js +13 -10
- package/esm/select/portal/SelectPortal.js +20 -10
- package/esm/select/positioner/SelectPositioner.js +24 -13
- package/esm/select/root/SelectRoot.js +58 -47
- package/esm/select/scroll-arrow/SelectScrollArrow.js +10 -7
- package/esm/select/scroll-down-arrow/SelectScrollDownArrow.js +8 -5
- package/esm/select/scroll-up-arrow/SelectScrollUpArrow.js +8 -5
- package/esm/select/trigger/SelectTrigger.js +2 -4
- package/esm/select/value/SelectValue.js +3 -7
- package/esm/separator/Separator.js +2 -4
- package/esm/slider/control/SliderControl.js +2 -4
- package/esm/slider/indicator/SliderIndicator.js +2 -4
- package/esm/slider/root/SliderRoot.js +71 -47
- package/esm/slider/thumb/SliderThumb.js +10 -11
- package/esm/slider/track/SliderTrack.js +2 -4
- package/esm/slider/value/SliderValue.js +3 -7
- package/esm/switch/root/SwitchRoot.js +20 -9
- package/esm/switch/thumb/SwitchThumb.js +2 -4
- package/esm/tabs/indicator/TabsIndicator.js +15 -11
- package/esm/tabs/list/TabsList.js +20 -12
- package/esm/tabs/panel/TabsPanel.js +3 -7
- package/esm/tabs/root/TabsRoot.js +13 -9
- package/esm/tabs/tab/TabsTab.js +2 -4
- package/esm/toast/action/ToastAction.js +3 -7
- package/esm/toast/close/ToastClose.js +2 -4
- package/esm/toast/description/ToastDescription.js +3 -7
- package/esm/toast/portal/ToastPortal.js +8 -4
- package/esm/toast/provider/ToastProvider.js +5 -3
- package/esm/toast/root/ToastRoot.js +37 -22
- package/esm/toast/title/ToastTitle.js +3 -7
- package/esm/toast/utils/test-utils.js +28 -21
- package/esm/toast/viewport/ToastViewport.js +13 -13
- package/esm/toggle/Toggle.js +10 -6
- package/esm/toggle-group/ToggleGroup.js +19 -11
- package/esm/toolbar/button/ToolbarButton.js +2 -2
- package/esm/toolbar/group/ToolbarGroup.js +5 -3
- package/esm/toolbar/input/ToolbarInput.js +2 -2
- package/esm/toolbar/link/ToolbarLink.js +2 -2
- package/esm/toolbar/root/ToolbarRoot.js +20 -10
- package/esm/toolbar/separator/ToolbarSeparator.js +12 -6
- package/esm/tooltip/arrow/TooltipArrow.js +2 -4
- package/esm/tooltip/popup/TooltipPopup.js +2 -4
- package/esm/tooltip/portal/TooltipPortal.js +20 -10
- package/esm/tooltip/positioner/TooltipPositioner.js +5 -3
- package/esm/tooltip/provider/TooltipProvider.js +15 -7
- package/esm/tooltip/root/TooltipRoot.js +5 -3
- package/esm/tooltip/trigger/TooltipTrigger.js +2 -4
- package/esm/unstable-no-ssr/NoSsr.js +12 -5
- package/esm/utils/FloatingPortalLite.js +8 -4
- package/esm/utils/FocusGuard.js +23 -10
- package/esm/utils/InternalBackdrop.js +22 -18
- package/esm/utils/styles.js +3 -5
- package/esm/utils/useRenderElement.js +36 -30
- package/package.json +4 -3
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
2
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
3
|
import { batch, createEffect, createMemo, createSignal, Show } from 'solid-js';
|
|
2
4
|
import { useContextMenuRootContext } from "../../context-menu/root/ContextMenuRootContext.js";
|
|
3
5
|
import { useDirection } from "../../direction-provider/DirectionContext.js";
|
|
@@ -15,7 +17,6 @@ import { useTimeout } from "../../utils/useTimeout.js";
|
|
|
15
17
|
import { useTransitionStatus } from "../../utils/useTransitionStatus.js";
|
|
16
18
|
import { useMenuSubmenuRootContext } from "../submenu-root/MenuSubmenuRootContext.js";
|
|
17
19
|
import { MenuRootContext, useMenuRootContext } from "./MenuRootContext.js";
|
|
18
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
19
20
|
const EMPTY_ARRAY = [];
|
|
20
21
|
const EMPTY_REF = false;
|
|
21
22
|
|
|
@@ -407,17 +408,29 @@ export function MenuRoot(props) {
|
|
|
407
408
|
allowMouseEnter,
|
|
408
409
|
setAllowMouseEnter
|
|
409
410
|
};
|
|
410
|
-
return
|
|
411
|
-
when
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
children: /*#__PURE__*/_jsx(FloatingTree, {
|
|
417
|
-
children: /*#__PURE__*/_jsx(MenuRootContext.Provider, {
|
|
411
|
+
return _$createComponent(Show, {
|
|
412
|
+
get when() {
|
|
413
|
+
return parent().type === undefined || parent().type === 'context-menu';
|
|
414
|
+
},
|
|
415
|
+
get fallback() {
|
|
416
|
+
return _$createComponent(MenuRootContext.Provider, {
|
|
418
417
|
value: context,
|
|
419
|
-
children
|
|
420
|
-
|
|
421
|
-
|
|
418
|
+
get children() {
|
|
419
|
+
return props.children;
|
|
420
|
+
}
|
|
421
|
+
});
|
|
422
|
+
},
|
|
423
|
+
get children() {
|
|
424
|
+
return _$createComponent(FloatingTree, {
|
|
425
|
+
get children() {
|
|
426
|
+
return _$createComponent(MenuRootContext.Provider, {
|
|
427
|
+
value: context,
|
|
428
|
+
get children() {
|
|
429
|
+
return props.children;
|
|
430
|
+
}
|
|
431
|
+
});
|
|
432
|
+
}
|
|
433
|
+
});
|
|
434
|
+
}
|
|
422
435
|
});
|
|
423
436
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
2
|
import { MenuRoot } from "../root/MenuRoot.js";
|
|
2
3
|
import { MenuSubmenuRootContext } from "./MenuSubmenuRootContext.js";
|
|
3
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
4
|
export { useMenuSubmenuRootContext } from "./MenuSubmenuRootContext.js";
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -10,10 +10,10 @@ export { useMenuSubmenuRootContext } from "./MenuSubmenuRootContext.js";
|
|
|
10
10
|
* Documentation: [Base UI Menu](https://base-ui.com/react/components/menu)
|
|
11
11
|
*/
|
|
12
12
|
export function MenuSubmenuRoot(props) {
|
|
13
|
-
return
|
|
13
|
+
return _$createComponent(MenuSubmenuRootContext.Provider, {
|
|
14
14
|
value: true,
|
|
15
|
-
children
|
|
16
|
-
|
|
17
|
-
}
|
|
15
|
+
get children() {
|
|
16
|
+
return _$createComponent(MenuRoot, props);
|
|
17
|
+
}
|
|
18
18
|
});
|
|
19
19
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
2
|
import { createEffect } from 'solid-js';
|
|
2
3
|
import { useCompositeListItem } from "../../composite/list/useCompositeListItem.js";
|
|
3
4
|
import { useFloatingTree } from "../../floating-ui-solid/index.js";
|
|
@@ -15,7 +16,6 @@ import { useMenuRootContext } from "../root/MenuRootContext.js";
|
|
|
15
16
|
*
|
|
16
17
|
* Documentation: [Base UI Menu](https://base-ui.com/react/components/menu)
|
|
17
18
|
*/
|
|
18
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
19
19
|
export function MenuSubmenuTrigger(componentProps) {
|
|
20
20
|
const [, local, elementProps] = splitComponentProps(componentProps, ['label', 'id', 'nativeButton']);
|
|
21
21
|
const nativeButton = () => local.nativeButton ?? false;
|
|
@@ -90,7 +90,5 @@ export function MenuSubmenuTrigger(componentProps) {
|
|
|
90
90
|
}
|
|
91
91
|
}]
|
|
92
92
|
});
|
|
93
|
-
return
|
|
94
|
-
children: element()
|
|
95
|
-
});
|
|
93
|
+
return _$memo(element);
|
|
96
94
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
2
|
import { getParentNode, isHTMLElement, isLastTraversableNode } from '@floating-ui/utils/dom';
|
|
2
3
|
import { createEffect, Show } from 'solid-js';
|
|
3
4
|
import { CompositeItem } from "../../composite/item/CompositeItem.js";
|
|
@@ -12,7 +13,6 @@ import { pressableTriggerOpenStateMapping } from "../../utils/popupStateMapping.
|
|
|
12
13
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
13
14
|
import { useTimeout } from "../../utils/useTimeout.js";
|
|
14
15
|
import { useMenuRootContext } from "../root/MenuRootContext.js";
|
|
15
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
16
|
const BOUNDARY_OFFSET = 2;
|
|
17
17
|
|
|
18
18
|
/**
|
|
@@ -121,12 +121,18 @@ export function MenuTrigger(componentProps) {
|
|
|
121
121
|
customStyleHookMapping: pressableTriggerOpenStateMapping,
|
|
122
122
|
props: [rootTriggerProps, elementProps, getTriggerProps]
|
|
123
123
|
});
|
|
124
|
-
return
|
|
125
|
-
when
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
124
|
+
return _$createComponent(Show, {
|
|
125
|
+
get when() {
|
|
126
|
+
return parent().type === 'menubar';
|
|
127
|
+
},
|
|
128
|
+
get fallback() {
|
|
129
|
+
return element();
|
|
130
|
+
},
|
|
131
|
+
get children() {
|
|
132
|
+
return _$createComponent(CompositeItem, {
|
|
133
|
+
render: element
|
|
134
|
+
});
|
|
135
|
+
}
|
|
130
136
|
});
|
|
131
137
|
}
|
|
132
138
|
function findRootOwnerId(node) {
|
package/esm/menubar/Menubar.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
2
|
import { createSignal, onCleanup, onMount } from 'solid-js';
|
|
2
3
|
import { CompositeRoot } from "../composite/root/CompositeRoot.js";
|
|
3
4
|
import { FloatingNode, FloatingTree, useFloatingNodeId, useFloatingTree } from "../floating-ui-solid/index.js";
|
|
@@ -13,7 +14,6 @@ import { MenubarContext, useMenubarContext } from "./MenubarContext.js";
|
|
|
13
14
|
*
|
|
14
15
|
* Documentation: [Base UI Menubar](https://base-ui.com/react/components/menubar)
|
|
15
16
|
*/
|
|
16
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
17
17
|
export function Menubar(props) {
|
|
18
18
|
const [, local, otherProps] = splitComponentProps(props, ['orientation', 'loop', 'modal', 'id']);
|
|
19
19
|
const orientation = () => local.orientation ?? 'horizontal';
|
|
@@ -58,18 +58,30 @@ export function Menubar(props) {
|
|
|
58
58
|
}
|
|
59
59
|
}, otherProps]
|
|
60
60
|
});
|
|
61
|
-
return
|
|
61
|
+
return _$createComponent(MenubarContext.Provider, {
|
|
62
62
|
value: context,
|
|
63
|
-
children
|
|
64
|
-
|
|
65
|
-
children
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
63
|
+
get children() {
|
|
64
|
+
return _$createComponent(FloatingTree, {
|
|
65
|
+
get children() {
|
|
66
|
+
return _$createComponent(MenubarContent, {
|
|
67
|
+
get children() {
|
|
68
|
+
return _$createComponent(CompositeRoot, {
|
|
69
|
+
render: element,
|
|
70
|
+
get orientation() {
|
|
71
|
+
return orientation();
|
|
72
|
+
},
|
|
73
|
+
get loop() {
|
|
74
|
+
return loop();
|
|
75
|
+
},
|
|
76
|
+
get highlightItemOnHover() {
|
|
77
|
+
return hasSubmenuOpen();
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}
|
|
73
85
|
});
|
|
74
86
|
}
|
|
75
87
|
function MenubarContent(props) {
|
|
@@ -107,8 +119,12 @@ function MenubarContent(props) {
|
|
|
107
119
|
menuEvents.off('openchange', onSubmenuOpenChange);
|
|
108
120
|
});
|
|
109
121
|
});
|
|
110
|
-
return
|
|
111
|
-
id
|
|
112
|
-
|
|
122
|
+
return _$createComponent(FloatingNode, {
|
|
123
|
+
get id() {
|
|
124
|
+
return nodeId();
|
|
125
|
+
},
|
|
126
|
+
get children() {
|
|
127
|
+
return props.children;
|
|
128
|
+
}
|
|
113
129
|
});
|
|
114
130
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
2
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
2
3
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
3
4
|
import { useMeterRootContext } from "../root/MeterRootContext.js";
|
|
@@ -8,7 +9,6 @@ import { useMeterRootContext } from "../root/MeterRootContext.js";
|
|
|
8
9
|
*
|
|
9
10
|
* Documentation: [Base UI Meter](https://base-ui.com/react/components/meter)
|
|
10
11
|
*/
|
|
11
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
12
12
|
export function MeterIndicator(componentProps) {
|
|
13
13
|
const [,, elementProps] = splitComponentProps(componentProps, []);
|
|
14
14
|
const {
|
|
@@ -25,7 +25,5 @@ export function MeterIndicator(componentProps) {
|
|
|
25
25
|
}
|
|
26
26
|
}, elementProps]
|
|
27
27
|
});
|
|
28
|
-
return
|
|
29
|
-
children: element()
|
|
30
|
-
});
|
|
28
|
+
return _$memo(element);
|
|
31
29
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
2
|
import { onMount } from 'solid-js';
|
|
2
3
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
3
4
|
import { useBaseUiId } from "../../utils/useBaseUiId.js";
|
|
@@ -10,7 +11,6 @@ import { useMeterRootContext } from "../root/MeterRootContext.js";
|
|
|
10
11
|
*
|
|
11
12
|
* Documentation: [Base UI Meter](https://base-ui.com/react/components/meter)
|
|
12
13
|
*/
|
|
13
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
14
14
|
export function MeterLabel(componentProps) {
|
|
15
15
|
const [, local, elementProps] = splitComponentProps(componentProps, ['id']);
|
|
16
16
|
const id = useBaseUiId(() => local.id);
|
|
@@ -35,7 +35,5 @@ export function MeterLabel(componentProps) {
|
|
|
35
35
|
}
|
|
36
36
|
}, elementProps]
|
|
37
37
|
});
|
|
38
|
-
return
|
|
39
|
-
children: element()
|
|
40
|
-
});
|
|
38
|
+
return _$memo(element);
|
|
41
39
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
2
|
import { createEffect, createMemo, createSignal, on, onCleanup } from 'solid-js';
|
|
2
3
|
import { createStore } from 'solid-js/store';
|
|
3
4
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
@@ -5,7 +6,6 @@ import { formatNumber } from "../../utils/formatNumber.js";
|
|
|
5
6
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
6
7
|
import { valueToPercent } from "../../utils/valueToPercent.js";
|
|
7
8
|
import { MeterRootContext } from "./MeterRootContext.js";
|
|
8
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
9
|
function formatValue(value, locale, format) {
|
|
10
10
|
if (!format) {
|
|
11
11
|
return formatNumber(value / 100, locale, {
|
|
@@ -76,8 +76,10 @@ export function MeterRoot(componentProps) {
|
|
|
76
76
|
const element = useRenderElement('div', componentProps, {
|
|
77
77
|
props: [defaultProps, elementProps]
|
|
78
78
|
});
|
|
79
|
-
return
|
|
79
|
+
return _$createComponent(MeterRootContext.Provider, {
|
|
80
80
|
value: contextValue,
|
|
81
|
-
children
|
|
81
|
+
get children() {
|
|
82
|
+
return element();
|
|
83
|
+
}
|
|
82
84
|
});
|
|
83
85
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
2
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
2
3
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
3
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
4
4
|
/**
|
|
5
5
|
* Contains the meter indicator and represents the entire range of the meter.
|
|
6
6
|
* Renders a `<div>` element.
|
|
@@ -12,7 +12,5 @@ export function MeterTrack(componentProps) {
|
|
|
12
12
|
const element = useRenderElement('div', componentProps, {
|
|
13
13
|
props: elementProps
|
|
14
14
|
});
|
|
15
|
-
return
|
|
16
|
-
children: element()
|
|
17
|
-
});
|
|
15
|
+
return _$memo(element);
|
|
18
16
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
2
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
2
3
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
3
4
|
import { useMeterRootContext } from "../root/MeterRootContext.js";
|
|
@@ -8,7 +9,6 @@ import { useMeterRootContext } from "../root/MeterRootContext.js";
|
|
|
8
9
|
*
|
|
9
10
|
* Documentation: [Base UI Meter](https://base-ui.com/react/components/meter)
|
|
10
11
|
*/
|
|
11
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
12
12
|
export function MeterValue(componentProps) {
|
|
13
13
|
const [,, elementProps] = splitComponentProps(componentProps, ['children']);
|
|
14
14
|
const {
|
|
@@ -20,12 +20,8 @@ export function MeterValue(componentProps) {
|
|
|
20
20
|
'aria-hidden': true
|
|
21
21
|
}, elementProps],
|
|
22
22
|
get children() {
|
|
23
|
-
return
|
|
24
|
-
children: typeof componentProps.children === 'function' ? componentProps.children(formattedValue(), value()) : (formattedValue() || value()) ?? ''
|
|
25
|
-
});
|
|
23
|
+
return _$memo(() => _$memo(() => typeof componentProps.children === 'function')() ? componentProps.children(formattedValue(), value()) : (formattedValue() || value()) ?? '');
|
|
26
24
|
}
|
|
27
25
|
});
|
|
28
|
-
return
|
|
29
|
-
children: element()
|
|
30
|
-
});
|
|
26
|
+
return _$memo(element);
|
|
31
27
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
2
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
2
3
|
import { popupStateMapping } from "../../utils/popupStateMapping.js";
|
|
3
4
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
@@ -10,7 +11,6 @@ import { useNavigationMenuRootContext } from "../root/NavigationMenuRootContext.
|
|
|
10
11
|
*
|
|
11
12
|
* Documentation: [Base UI Navigation Menu](https://base-ui.com/react/components/navigation-menu)
|
|
12
13
|
*/
|
|
13
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
14
14
|
export function NavigationMenuArrow(componentProps) {
|
|
15
15
|
const [,, elementProps] = splitComponentProps(componentProps, []);
|
|
16
16
|
const {
|
|
@@ -48,7 +48,5 @@ export function NavigationMenuArrow(componentProps) {
|
|
|
48
48
|
'aria-hidden': true
|
|
49
49
|
}, elementProps]
|
|
50
50
|
});
|
|
51
|
-
return
|
|
52
|
-
children: element()
|
|
53
|
-
});
|
|
51
|
+
return _$memo(element);
|
|
54
52
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
2
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
2
3
|
import { popupStateMapping as baseMapping } from "../../utils/popupStateMapping.js";
|
|
3
4
|
import { transitionStatusMapping } from "../../utils/styleHookMapping.js";
|
|
4
5
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
5
6
|
import { useNavigationMenuRootContext } from "../root/NavigationMenuRootContext.js";
|
|
6
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
7
7
|
const customStyleHookMapping = {
|
|
8
8
|
...baseMapping,
|
|
9
9
|
...transitionStatusMapping
|
|
@@ -44,7 +44,5 @@ export function NavigationMenuBackdrop(componentProps) {
|
|
|
44
44
|
}
|
|
45
45
|
}, elementProps]
|
|
46
46
|
});
|
|
47
|
-
return
|
|
48
|
-
children: element()
|
|
49
|
-
});
|
|
47
|
+
return _$memo(element);
|
|
50
48
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
2
|
import { createSignal, Show } from 'solid-js';
|
|
2
3
|
import { Portal } from 'solid-js/web';
|
|
3
4
|
import { CompositeRoot } from "../../composite/root/CompositeRoot.js";
|
|
@@ -12,7 +13,6 @@ import { useOpenChangeComplete } from "../../utils/useOpenChangeComplete.js";
|
|
|
12
13
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
13
14
|
import { useNavigationMenuItemContext } from "../item/NavigationMenuItemContext.js";
|
|
14
15
|
import { useNavigationMenuRootContext, useNavigationMenuTreeContext } from "../root/NavigationMenuRootContext.js";
|
|
15
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
16
|
const customStyleHookMapping = {
|
|
17
17
|
...popupStateMapping,
|
|
18
18
|
...transitionStatusMapping,
|
|
@@ -113,17 +113,29 @@ export function NavigationMenuContent(componentProps) {
|
|
|
113
113
|
}, elementProps],
|
|
114
114
|
customStyleHookMapping
|
|
115
115
|
});
|
|
116
|
-
return
|
|
117
|
-
when
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
116
|
+
return _$createComponent(Show, {
|
|
117
|
+
get when() {
|
|
118
|
+
return shouldRender();
|
|
119
|
+
},
|
|
120
|
+
get children() {
|
|
121
|
+
return _$createComponent(Portal, {
|
|
122
|
+
get mount() {
|
|
123
|
+
return viewportElement();
|
|
124
|
+
},
|
|
125
|
+
get children() {
|
|
126
|
+
return _$createComponent(FloatingNode, {
|
|
127
|
+
get id() {
|
|
128
|
+
return nodeId?.();
|
|
129
|
+
},
|
|
130
|
+
get children() {
|
|
131
|
+
return _$createComponent(CompositeRoot, {
|
|
132
|
+
stopEventPropagation: true,
|
|
133
|
+
render: element
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
}
|
|
128
140
|
});
|
|
129
141
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
2
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
2
3
|
import { triggerOpenStateMapping } from "../../utils/popupStateMapping.js";
|
|
3
4
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
@@ -9,7 +10,6 @@ import { useNavigationMenuRootContext } from "../root/NavigationMenuRootContext.
|
|
|
9
10
|
*
|
|
10
11
|
* Documentation: [Base UI Navigation Menu](https://base-ui.com/react/components/navigation-menu)
|
|
11
12
|
*/
|
|
12
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
13
13
|
export function NavigationMenuIcon(componentProps) {
|
|
14
14
|
const [,, elementProps] = splitComponentProps(componentProps, []);
|
|
15
15
|
const {
|
|
@@ -33,7 +33,5 @@ export function NavigationMenuIcon(componentProps) {
|
|
|
33
33
|
children: '▼'
|
|
34
34
|
}, elementProps]
|
|
35
35
|
});
|
|
36
|
-
return
|
|
37
|
-
children: element()
|
|
38
|
-
});
|
|
36
|
+
return _$memo(element);
|
|
39
37
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
2
|
+
import { memo as _$memo } from "solid-js/web";
|
|
1
3
|
import { createMemo } from 'solid-js';
|
|
2
4
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
3
5
|
import { useBaseUiId } from "../../utils/useBaseUiId.js";
|
|
@@ -12,7 +14,6 @@ import { NavigationMenuItemContext } from "./NavigationMenuItemContext.js";
|
|
|
12
14
|
*
|
|
13
15
|
* Documentation: [Base UI Navigation Menu](https://base-ui.com/react/components/navigation-menu)
|
|
14
16
|
*/
|
|
15
|
-
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
16
17
|
export function NavigationMenuItem(componentProps) {
|
|
17
18
|
const [, local, elementProps] = splitComponentProps(componentProps, ['value']);
|
|
18
19
|
const fallbackValue = useBaseUiId();
|
|
@@ -39,10 +40,10 @@ export function NavigationMenuItem(componentProps) {
|
|
|
39
40
|
const element = useRenderElement('div', componentProps, {
|
|
40
41
|
props: elementProps
|
|
41
42
|
});
|
|
42
|
-
return
|
|
43
|
+
return _$createComponent(NavigationMenuItemContext.Provider, {
|
|
43
44
|
value: context,
|
|
44
|
-
children
|
|
45
|
-
|
|
46
|
-
}
|
|
45
|
+
get children() {
|
|
46
|
+
return _$memo(element);
|
|
47
|
+
}
|
|
47
48
|
});
|
|
48
49
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
2
|
import { CompositeItem } from "../../composite/item/CompositeItem.js";
|
|
2
3
|
import { useFloatingTree } from "../../floating-ui-solid/index.js";
|
|
3
4
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
@@ -11,7 +12,6 @@ import { isOutsideMenuEvent } from "../utils/isOutsideMenuEvent.js";
|
|
|
11
12
|
*
|
|
12
13
|
* Documentation: [Base UI Navigation Menu](https://base-ui.com/react/components/navigation-menu)
|
|
13
14
|
*/
|
|
14
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
15
|
export function NavigationMenuLink(componentProps) {
|
|
16
16
|
const [,, elementProps] = splitComponentProps(componentProps, []);
|
|
17
17
|
const {
|
|
@@ -39,7 +39,7 @@ export function NavigationMenuLink(componentProps) {
|
|
|
39
39
|
}
|
|
40
40
|
}, elementProps]
|
|
41
41
|
});
|
|
42
|
-
return
|
|
42
|
+
return _$createComponent(CompositeItem, {
|
|
43
43
|
tabIndex: undefined,
|
|
44
44
|
render: element
|
|
45
45
|
});
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
2
|
import { CompositeRoot } from "../../composite/root/CompositeRoot.js";
|
|
2
3
|
import { splitComponentProps } from "../../solid-helpers.js";
|
|
3
4
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
@@ -9,7 +10,6 @@ import { useNavigationMenuRootContext } from "../root/NavigationMenuRootContext.
|
|
|
9
10
|
*
|
|
10
11
|
* Documentation: [Base UI Navigation Menu](https://base-ui.com/react/components/navigation-menu)
|
|
11
12
|
*/
|
|
12
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
13
|
export function NavigationMenuList(componentProps) {
|
|
14
14
|
const [,, elementProps] = splitComponentProps(componentProps, []);
|
|
15
15
|
const {
|
|
@@ -25,9 +25,11 @@ export function NavigationMenuList(componentProps) {
|
|
|
25
25
|
state,
|
|
26
26
|
props: elementProps
|
|
27
27
|
});
|
|
28
|
-
return
|
|
28
|
+
return _$createComponent(CompositeRoot, {
|
|
29
29
|
loop: false,
|
|
30
|
-
|
|
30
|
+
get orientation() {
|
|
31
|
+
return orientation();
|
|
32
|
+
},
|
|
31
33
|
stopEventPropagation: true,
|
|
32
34
|
render: element
|
|
33
35
|
});
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { memo as _$memo } from "solid-js/web";
|
|
2
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
3
|
import { createEffect, createMemo, onCleanup } from 'solid-js';
|
|
2
4
|
import { useDirection } from "../../direction-provider/DirectionContext.js";
|
|
3
5
|
import { getNextTabbable, getPreviousTabbable, isOutsideEvent } from "../../floating-ui-solid/utils.js";
|
|
@@ -9,7 +11,6 @@ import { useBaseUiId } from "../../utils/useBaseUiId.js";
|
|
|
9
11
|
import { useRenderElement } from "../../utils/useRenderElement.js";
|
|
10
12
|
import { useNavigationMenuPositionerContext } from "../positioner/NavigationMenuPositionerContext.js";
|
|
11
13
|
import { useNavigationMenuRootContext } from "../root/NavigationMenuRootContext.js";
|
|
12
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
14
|
const customStyleHookMapping = {
|
|
14
15
|
...baseMapping,
|
|
15
16
|
...transitionStatusMapping
|
|
@@ -102,39 +103,37 @@ export function NavigationMenuPopup(componentProps) {
|
|
|
102
103
|
}, elementProps],
|
|
103
104
|
customStyleHookMapping
|
|
104
105
|
});
|
|
105
|
-
return
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
});
|
|
120
|
-
}
|
|
106
|
+
return [_$createComponent(FocusGuard, {
|
|
107
|
+
ref: el => {
|
|
108
|
+
refs.beforeInsideRef = el;
|
|
109
|
+
},
|
|
110
|
+
onFocus: event => {
|
|
111
|
+
const positionerEl = positionerElement();
|
|
112
|
+
if (positionerEl && isOutsideEvent(event, positionerEl)) {
|
|
113
|
+
queueMicrotask(() => {
|
|
114
|
+
getNextTabbable(positionerEl)?.focus();
|
|
115
|
+
});
|
|
116
|
+
} else {
|
|
117
|
+
queueMicrotask(() => {
|
|
118
|
+
refs.beforeOutsideRef?.focus();
|
|
119
|
+
});
|
|
121
120
|
}
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
}
|
|
121
|
+
}
|
|
122
|
+
}), _$memo(element), _$createComponent(FocusGuard, {
|
|
123
|
+
ref: el => {
|
|
124
|
+
refs.afterInsideRef = el;
|
|
125
|
+
},
|
|
126
|
+
onFocus: event => {
|
|
127
|
+
const positionerEl = positionerElement();
|
|
128
|
+
if (positionerEl && isOutsideEvent(event, positionerEl)) {
|
|
129
|
+
queueMicrotask(() => {
|
|
130
|
+
getPreviousTabbable(positionerEl)?.focus();
|
|
131
|
+
});
|
|
132
|
+
} else {
|
|
133
|
+
queueMicrotask(() => {
|
|
134
|
+
refs.afterOutsideRef?.focus();
|
|
135
|
+
});
|
|
137
136
|
}
|
|
138
|
-
}
|
|
139
|
-
});
|
|
137
|
+
}
|
|
138
|
+
})];
|
|
140
139
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
1
2
|
import { Show } from 'solid-js';
|
|
2
3
|
import { FloatingPortal } from "../../floating-ui-solid/index.js";
|
|
3
4
|
import { useNavigationMenuRootContext } from "../root/NavigationMenuRootContext.js";
|
|
@@ -9,21 +10,30 @@ import { NavigationMenuPortalContext } from "./NavigationMenuPortalContext.js";
|
|
|
9
10
|
*
|
|
10
11
|
* Documentation: [Base UI Navigation Menu](https://base-ui.com/react/components/navigation-menu)
|
|
11
12
|
*/
|
|
12
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
13
|
export function NavigationMenuPortal(props) {
|
|
14
14
|
const keepMounted = () => props.keepMounted ?? false;
|
|
15
15
|
const {
|
|
16
16
|
mounted
|
|
17
17
|
} = useNavigationMenuRootContext();
|
|
18
18
|
const shouldRender = () => mounted() || keepMounted();
|
|
19
|
-
return
|
|
20
|
-
when
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
19
|
+
return _$createComponent(Show, {
|
|
20
|
+
get when() {
|
|
21
|
+
return shouldRender();
|
|
22
|
+
},
|
|
23
|
+
get children() {
|
|
24
|
+
return _$createComponent(NavigationMenuPortalContext.Provider, {
|
|
25
|
+
value: keepMounted,
|
|
26
|
+
get children() {
|
|
27
|
+
return _$createComponent(FloatingPortal, {
|
|
28
|
+
get root() {
|
|
29
|
+
return props.container;
|
|
30
|
+
},
|
|
31
|
+
get children() {
|
|
32
|
+
return props.children;
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
}
|
|
28
38
|
});
|
|
29
39
|
}
|