@base-ui/react 1.0.0 → 1.1.0
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/CHANGELOG.md +144 -1
- package/README.md +2 -3
- package/accordion/header/AccordionHeader.d.ts +1 -1
- package/accordion/item/AccordionItem.d.ts +1 -1
- package/accordion/panel/AccordionPanel.d.ts +1 -1
- package/accordion/root/AccordionRoot.d.ts +1 -1
- package/accordion/trigger/AccordionTrigger.d.ts +1 -1
- package/accordion/trigger/AccordionTrigger.js +3 -4
- package/alert-dialog/root/AlertDialogRoot.d.ts +3 -3
- package/autocomplete/root/AutocompleteRoot.d.ts +1 -1
- package/avatar/fallback/AvatarFallback.d.ts +1 -1
- package/avatar/image/AvatarImage.d.ts +1 -1
- package/avatar/root/AvatarRoot.d.ts +1 -1
- package/button/Button.d.ts +4 -17
- package/button/Button.js +1 -2
- package/checkbox/indicator/CheckboxIndicator.d.ts +1 -1
- package/checkbox/indicator/CheckboxIndicatorDataAttributes.d.ts +4 -0
- package/checkbox/indicator/CheckboxIndicatorDataAttributes.js +4 -0
- package/checkbox/root/CheckboxRoot.d.ts +1 -1
- package/checkbox/root/CheckboxRoot.js +5 -4
- package/checkbox/root/CheckboxRootDataAttributes.d.ts +4 -0
- package/checkbox/root/CheckboxRootDataAttributes.js +4 -0
- package/checkbox-group/CheckboxGroup.d.ts +1 -1
- package/collapsible/panel/CollapsiblePanel.d.ts +1 -1
- package/collapsible/root/CollapsibleRoot.d.ts +1 -1
- package/collapsible/trigger/CollapsibleTrigger.d.ts +1 -1
- package/collapsible/trigger/CollapsibleTrigger.js +1 -2
- package/combobox/arrow/ComboboxArrow.d.ts +1 -1
- package/combobox/backdrop/ComboboxBackdrop.d.ts +1 -1
- package/combobox/chip/ComboboxChip.d.ts +1 -1
- package/combobox/chip-remove/ComboboxChipRemove.d.ts +1 -1
- package/combobox/chip-remove/ComboboxChipRemove.js +3 -2
- package/combobox/chips/ComboboxChips.d.ts +1 -1
- package/combobox/chips/ComboboxChips.js +7 -1
- package/combobox/clear/ComboboxClear.d.ts +1 -1
- package/combobox/clear/ComboboxClear.js +2 -2
- package/combobox/empty/ComboboxEmpty.d.ts +1 -1
- package/combobox/group/ComboboxGroup.d.ts +1 -1
- package/combobox/group-label/ComboboxGroupLabel.d.ts +1 -1
- package/combobox/icon/ComboboxIcon.d.ts +1 -1
- package/combobox/input/ComboboxInput.d.ts +1 -1
- package/combobox/input/ComboboxInput.js +12 -18
- package/combobox/item/ComboboxItem.d.ts +1 -1
- package/combobox/item/ComboboxItem.js +0 -1
- package/combobox/item-indicator/ComboboxItemIndicator.d.ts +1 -1
- package/combobox/list/ComboboxList.d.ts +1 -1
- package/combobox/popup/ComboboxPopup.d.ts +1 -1
- package/combobox/popup/ComboboxPopup.js +2 -1
- package/combobox/portal/ComboboxPortal.d.ts +1 -1
- package/combobox/positioner/ComboboxPositioner.d.ts +1 -1
- package/combobox/root/AriaCombobox.d.ts +8 -1
- package/combobox/root/AriaCombobox.js +19 -16
- package/combobox/root/ComboboxRoot.d.ts +1 -1
- package/combobox/row/ComboboxRow.d.ts +1 -1
- package/combobox/status/ComboboxStatus.d.ts +1 -1
- package/combobox/store.d.ts +3 -0
- package/combobox/store.js +21 -0
- package/combobox/trigger/ComboboxTrigger.d.ts +14 -1
- package/combobox/trigger/ComboboxTrigger.js +31 -11
- package/combobox/trigger/ComboboxTriggerDataAttributes.d.ts +13 -0
- package/combobox/trigger/ComboboxTriggerDataAttributes.js +13 -0
- package/combobox/utils/stateAttributesMapping.d.ts +14 -0
- package/combobox/utils/stateAttributesMapping.js +18 -0
- package/combobox/value/ComboboxValue.d.ts +5 -0
- package/combobox/value/ComboboxValue.js +15 -6
- package/composite/root/useCompositeRoot.d.ts +1 -1
- package/context-menu/trigger/ContextMenuTrigger.d.ts +1 -1
- package/csp-provider/CSPContext.d.ts +13 -0
- package/csp-provider/CSPContext.js +25 -0
- package/csp-provider/CSPProvider.d.ts +25 -0
- package/csp-provider/CSPProvider.js +32 -0
- package/csp-provider/index.d.ts +2 -0
- package/csp-provider/index.js +12 -0
- package/csp-provider/index.parts.d.ts +1 -0
- package/csp-provider/index.parts.js +12 -0
- package/dialog/backdrop/DialogBackdrop.d.ts +1 -1
- package/dialog/close/DialogClose.d.ts +1 -1
- package/dialog/description/DialogDescription.d.ts +1 -1
- package/dialog/popup/DialogPopup.d.ts +1 -1
- package/dialog/portal/DialogPortal.d.ts +1 -1
- package/dialog/portal/DialogPortal.js +1 -0
- package/dialog/root/DialogRoot.d.ts +4 -4
- package/dialog/store/DialogStore.d.ts +2 -2
- package/dialog/title/DialogTitle.d.ts +1 -1
- package/dialog/viewport/DialogViewport.d.ts +1 -1
- package/esm/accordion/header/AccordionHeader.d.ts +1 -1
- package/esm/accordion/item/AccordionItem.d.ts +1 -1
- package/esm/accordion/panel/AccordionPanel.d.ts +1 -1
- package/esm/accordion/root/AccordionRoot.d.ts +1 -1
- package/esm/accordion/trigger/AccordionTrigger.d.ts +1 -1
- package/esm/accordion/trigger/AccordionTrigger.js +3 -4
- package/esm/alert-dialog/root/AlertDialogRoot.d.ts +3 -3
- package/esm/autocomplete/root/AutocompleteRoot.d.ts +1 -1
- package/esm/avatar/fallback/AvatarFallback.d.ts +1 -1
- package/esm/avatar/image/AvatarImage.d.ts +1 -1
- package/esm/avatar/root/AvatarRoot.d.ts +1 -1
- package/esm/button/Button.d.ts +4 -17
- package/esm/button/Button.js +1 -2
- package/esm/checkbox/indicator/CheckboxIndicator.d.ts +1 -1
- package/esm/checkbox/indicator/CheckboxIndicatorDataAttributes.d.ts +4 -0
- package/esm/checkbox/indicator/CheckboxIndicatorDataAttributes.js +4 -0
- package/esm/checkbox/root/CheckboxRoot.d.ts +1 -1
- package/esm/checkbox/root/CheckboxRoot.js +6 -5
- package/esm/checkbox/root/CheckboxRootDataAttributes.d.ts +4 -0
- package/esm/checkbox/root/CheckboxRootDataAttributes.js +4 -0
- package/esm/checkbox-group/CheckboxGroup.d.ts +1 -1
- package/esm/collapsible/panel/CollapsiblePanel.d.ts +1 -1
- package/esm/collapsible/root/CollapsibleRoot.d.ts +1 -1
- package/esm/collapsible/trigger/CollapsibleTrigger.d.ts +1 -1
- package/esm/collapsible/trigger/CollapsibleTrigger.js +1 -2
- package/esm/combobox/arrow/ComboboxArrow.d.ts +1 -1
- package/esm/combobox/backdrop/ComboboxBackdrop.d.ts +1 -1
- package/esm/combobox/chip/ComboboxChip.d.ts +1 -1
- package/esm/combobox/chip-remove/ComboboxChipRemove.d.ts +1 -1
- package/esm/combobox/chip-remove/ComboboxChipRemove.js +3 -2
- package/esm/combobox/chips/ComboboxChips.d.ts +1 -1
- package/esm/combobox/chips/ComboboxChips.js +7 -1
- package/esm/combobox/clear/ComboboxClear.d.ts +1 -1
- package/esm/combobox/clear/ComboboxClear.js +2 -2
- package/esm/combobox/empty/ComboboxEmpty.d.ts +1 -1
- package/esm/combobox/group/ComboboxGroup.d.ts +1 -1
- package/esm/combobox/group-label/ComboboxGroupLabel.d.ts +1 -1
- package/esm/combobox/icon/ComboboxIcon.d.ts +1 -1
- package/esm/combobox/input/ComboboxInput.d.ts +1 -1
- package/esm/combobox/input/ComboboxInput.js +12 -17
- package/esm/combobox/item/ComboboxItem.d.ts +1 -1
- package/esm/combobox/item/ComboboxItem.js +0 -1
- package/esm/combobox/item-indicator/ComboboxItemIndicator.d.ts +1 -1
- package/esm/combobox/list/ComboboxList.d.ts +1 -1
- package/esm/combobox/popup/ComboboxPopup.d.ts +1 -1
- package/esm/combobox/popup/ComboboxPopup.js +2 -1
- package/esm/combobox/portal/ComboboxPortal.d.ts +1 -1
- package/esm/combobox/positioner/ComboboxPositioner.d.ts +1 -1
- package/esm/combobox/root/AriaCombobox.d.ts +8 -1
- package/esm/combobox/root/AriaCombobox.js +20 -17
- package/esm/combobox/root/ComboboxRoot.d.ts +1 -1
- package/esm/combobox/row/ComboboxRow.d.ts +1 -1
- package/esm/combobox/status/ComboboxStatus.d.ts +1 -1
- package/esm/combobox/store.d.ts +3 -0
- package/esm/combobox/store.js +21 -0
- package/esm/combobox/trigger/ComboboxTrigger.d.ts +14 -1
- package/esm/combobox/trigger/ComboboxTrigger.js +32 -12
- package/esm/combobox/trigger/ComboboxTriggerDataAttributes.d.ts +13 -0
- package/esm/combobox/trigger/ComboboxTriggerDataAttributes.js +13 -0
- package/esm/combobox/utils/stateAttributesMapping.d.ts +14 -0
- package/esm/combobox/utils/stateAttributesMapping.js +12 -0
- package/esm/combobox/value/ComboboxValue.d.ts +5 -0
- package/esm/combobox/value/ComboboxValue.js +16 -7
- package/esm/composite/root/useCompositeRoot.d.ts +1 -1
- package/esm/context-menu/trigger/ContextMenuTrigger.d.ts +1 -1
- package/esm/csp-provider/CSPContext.d.ts +13 -0
- package/esm/csp-provider/CSPContext.js +18 -0
- package/esm/csp-provider/CSPProvider.d.ts +25 -0
- package/esm/csp-provider/CSPProvider.js +27 -0
- package/esm/csp-provider/index.d.ts +2 -0
- package/esm/csp-provider/index.js +1 -0
- package/esm/csp-provider/index.parts.d.ts +1 -0
- package/esm/csp-provider/index.parts.js +1 -0
- package/esm/dialog/backdrop/DialogBackdrop.d.ts +1 -1
- package/esm/dialog/close/DialogClose.d.ts +1 -1
- package/esm/dialog/description/DialogDescription.d.ts +1 -1
- package/esm/dialog/popup/DialogPopup.d.ts +1 -1
- package/esm/dialog/portal/DialogPortal.d.ts +1 -1
- package/esm/dialog/portal/DialogPortal.js +1 -0
- package/esm/dialog/root/DialogRoot.d.ts +4 -4
- package/esm/dialog/store/DialogStore.d.ts +2 -2
- package/esm/dialog/title/DialogTitle.d.ts +1 -1
- package/esm/dialog/viewport/DialogViewport.d.ts +1 -1
- package/esm/field/control/FieldControl.d.ts +1 -1
- package/esm/field/description/FieldDescription.d.ts +1 -1
- package/esm/field/error/FieldError.d.ts +1 -1
- package/esm/field/index.d.ts +2 -1
- package/esm/field/item/FieldItem.d.ts +1 -1
- package/esm/field/label/FieldLabel.d.ts +11 -2
- package/esm/field/label/FieldLabel.js +51 -11
- package/esm/field/root/FieldRoot.d.ts +10 -1
- package/esm/field/root/FieldRoot.js +8 -0
- package/esm/field/useField.js +7 -3
- package/esm/fieldset/legend/FieldsetLegend.d.ts +1 -1
- package/esm/fieldset/root/FieldsetRoot.d.ts +1 -1
- package/esm/floating-ui-react/components/FloatingFocusManager.js +7 -6
- package/esm/floating-ui-react/components/FloatingPortal.d.ts +2 -2
- package/esm/floating-ui-react/components/FloatingPortal.js +11 -2
- package/esm/floating-ui-react/hooks/useClientPoint.js +5 -4
- package/esm/floating-ui-react/hooks/useDismiss.js +16 -3
- package/esm/floating-ui-react/hooks/useFocus.d.ts +5 -0
- package/esm/floating-ui-react/hooks/useFocus.js +43 -9
- package/esm/floating-ui-react/hooks/useHoverReferenceInteraction.js +17 -4
- package/esm/floating-ui-react/hooks/useSyncedFloatingRootContext.js +3 -0
- package/esm/form/Form.d.ts +18 -1
- package/esm/form/Form.js +17 -0
- package/esm/form/FormContext.d.ts +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.js +2 -1
- package/esm/input/Input.d.ts +1 -1
- package/esm/menu/arrow/MenuArrow.d.ts +1 -1
- package/esm/menu/backdrop/MenuBackdrop.d.ts +1 -1
- package/esm/menu/checkbox-item/MenuCheckboxItem.d.ts +1 -1
- package/esm/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.d.ts +1 -1
- package/esm/menu/group/MenuGroup.d.ts +1 -1
- package/esm/menu/group-label/MenuGroupLabel.d.ts +1 -1
- package/esm/menu/item/MenuItem.d.ts +1 -1
- package/esm/menu/popup/MenuPopup.d.ts +1 -1
- package/esm/menu/popup/MenuPopup.js +4 -3
- package/esm/menu/portal/MenuPortal.d.ts +1 -1
- package/esm/menu/positioner/MenuPositioner.d.ts +1 -1
- package/esm/menu/radio-group/MenuRadioGroup.d.ts +1 -1
- package/esm/menu/radio-item/MenuRadioItem.d.ts +1 -1
- package/esm/menu/radio-item-indicator/MenuRadioItemIndicator.d.ts +1 -1
- package/esm/menu/root/MenuRoot.d.ts +7 -6
- package/esm/menu/root/MenuRoot.js +4 -2
- package/esm/menu/store/MenuStore.js +3 -3
- package/esm/menu/submenu-trigger/MenuSubmenuTrigger.d.ts +1 -1
- package/esm/menu/trigger/MenuTrigger.js +13 -13
- package/esm/menubar/Menubar.d.ts +1 -1
- package/esm/merge-props/mergeProps.d.ts +31 -11
- package/esm/merge-props/mergeProps.js +29 -8
- package/esm/meter/indicator/MeterIndicator.d.ts +1 -1
- package/esm/meter/label/MeterLabel.d.ts +1 -1
- package/esm/meter/root/MeterRoot.d.ts +1 -1
- package/esm/meter/track/MeterTrack.d.ts +1 -1
- package/esm/meter/value/MeterValue.d.ts +1 -1
- package/esm/navigation-menu/arrow/NavigationMenuArrow.d.ts +1 -1
- package/esm/navigation-menu/backdrop/NavigationMenuBackdrop.d.ts +1 -1
- package/esm/navigation-menu/content/NavigationMenuContent.d.ts +1 -1
- package/esm/navigation-menu/content/NavigationMenuContent.js +6 -0
- package/esm/navigation-menu/icon/NavigationMenuIcon.d.ts +1 -1
- package/esm/navigation-menu/item/NavigationMenuItem.d.ts +1 -1
- package/esm/navigation-menu/link/NavigationMenuLink.d.ts +1 -1
- package/esm/navigation-menu/list/NavigationMenuList.d.ts +1 -1
- package/esm/navigation-menu/popup/NavigationMenuPopup.d.ts +1 -1
- package/esm/navigation-menu/portal/NavigationMenuPortal.d.ts +1 -1
- package/esm/navigation-menu/positioner/NavigationMenuPositioner.d.ts +1 -1
- package/esm/navigation-menu/root/NavigationMenuRoot.d.ts +2 -2
- package/esm/navigation-menu/trigger/NavigationMenuTrigger.d.ts +1 -1
- package/esm/navigation-menu/viewport/NavigationMenuViewport.d.ts +1 -1
- package/esm/number-field/decrement/NumberFieldDecrement.d.ts +1 -1
- package/esm/number-field/decrement/NumberFieldDecrement.js +4 -6
- package/esm/number-field/group/NumberFieldGroup.d.ts +1 -1
- package/esm/number-field/increment/NumberFieldIncrement.d.ts +1 -1
- package/esm/number-field/increment/NumberFieldIncrement.js +4 -6
- package/esm/number-field/input/NumberFieldInput.d.ts +1 -1
- package/esm/number-field/input/NumberFieldInput.js +5 -2
- package/esm/number-field/root/NumberFieldRoot.d.ts +5 -4
- package/esm/number-field/root/NumberFieldRoot.js +12 -5
- package/esm/number-field/root/useNumberFieldButton.d.ts +0 -3
- package/esm/number-field/root/useNumberFieldButton.js +5 -11
- package/esm/number-field/scrub-area/NumberFieldScrubArea.d.ts +1 -1
- package/esm/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.d.ts +1 -1
- package/esm/popover/arrow/PopoverArrow.d.ts +1 -1
- package/esm/popover/backdrop/PopoverBackdrop.d.ts +1 -1
- package/esm/popover/close/PopoverClose.d.ts +1 -1
- package/esm/popover/description/PopoverDescription.d.ts +1 -1
- package/esm/popover/popup/PopoverPopup.d.ts +1 -1
- package/esm/popover/popup/PopoverPopup.js +0 -30
- package/esm/popover/portal/PopoverPortal.d.ts +1 -1
- package/esm/popover/positioner/PopoverPositioner.d.ts +1 -1
- package/esm/popover/positioner/PopoverPositioner.js +2 -1
- package/esm/popover/root/PopoverRoot.d.ts +2 -2
- package/esm/popover/store/PopoverStore.d.ts +4 -2
- package/esm/popover/store/PopoverStore.js +8 -5
- package/esm/popover/title/PopoverTitle.d.ts +1 -1
- package/esm/popover/trigger/PopoverTrigger.js +2 -2
- package/esm/popover/viewport/PopoverViewport.d.ts +1 -1
- package/esm/popover/viewport/PopoverViewport.js +28 -12
- package/esm/preview-card/arrow/PreviewCardArrow.d.ts +1 -1
- package/esm/preview-card/arrow/PreviewCardArrow.js +2 -3
- package/esm/preview-card/backdrop/PreviewCardBackdrop.d.ts +1 -1
- package/esm/preview-card/backdrop/PreviewCardBackdrop.js +4 -5
- package/esm/preview-card/index.parts.d.ts +3 -1
- package/esm/preview-card/index.parts.js +3 -1
- package/esm/preview-card/popup/PreviewCardPopup.d.ts +2 -1
- package/esm/preview-card/popup/PreviewCardPopup.js +17 -11
- package/esm/preview-card/portal/PreviewCardPortal.d.ts +1 -1
- package/esm/preview-card/portal/PreviewCardPortal.js +2 -3
- package/esm/preview-card/positioner/PreviewCardPositioner.d.ts +2 -1
- package/esm/preview-card/positioner/PreviewCardPositioner.js +16 -11
- package/esm/preview-card/root/PreviewCardContext.d.ts +5 -26
- package/esm/preview-card/root/PreviewCardContext.js +2 -2
- package/esm/preview-card/root/PreviewCardRoot.d.ts +35 -10
- package/esm/preview-card/root/PreviewCardRoot.js +61 -116
- package/esm/preview-card/store/PreviewCardHandle.d.ts +33 -0
- package/esm/preview-card/store/PreviewCardHandle.js +55 -0
- package/esm/preview-card/store/PreviewCardStore.d.ts +36 -0
- package/esm/preview-card/store/PreviewCardStore.js +97 -0
- package/esm/preview-card/trigger/PreviewCardTrigger.d.ts +15 -3
- package/esm/preview-card/trigger/PreviewCardTrigger.js +49 -13
- package/esm/preview-card/viewport/PreviewCardViewport.d.ts +22 -0
- package/esm/preview-card/viewport/PreviewCardViewport.js +272 -0
- package/esm/preview-card/viewport/PreviewCardViewportCssVars.d.ts +14 -0
- package/esm/preview-card/viewport/PreviewCardViewportCssVars.js +15 -0
- package/esm/preview-card/viewport/PreviewCardViewportDataAttributes.d.ts +26 -0
- package/esm/preview-card/viewport/PreviewCardViewportDataAttributes.js +27 -0
- package/esm/progress/indicator/ProgressIndicator.d.ts +1 -1
- package/esm/progress/label/ProgressLabel.d.ts +1 -1
- package/esm/progress/root/ProgressRoot.d.ts +1 -1
- package/esm/progress/track/ProgressTrack.d.ts +1 -1
- package/esm/progress/value/ProgressValue.d.ts +1 -1
- package/esm/radio/indicator/RadioIndicator.d.ts +1 -1
- package/esm/radio/root/RadioRoot.d.ts +1 -1
- package/esm/radio/root/RadioRoot.js +9 -9
- package/esm/radio-group/RadioGroup.d.ts +4 -4
- package/esm/radio-group/RadioGroup.js +2 -2
- package/esm/scroll-area/content/ScrollAreaContent.d.ts +1 -1
- package/esm/scroll-area/content/ScrollAreaContent.js +10 -1
- package/esm/scroll-area/corner/ScrollAreaCorner.d.ts +1 -1
- package/esm/scroll-area/corner/ScrollAreaCorner.js +1 -1
- package/esm/scroll-area/root/ScrollAreaRoot.d.ts +26 -2
- package/esm/scroll-area/root/ScrollAreaRoot.js +33 -29
- package/esm/scroll-area/root/ScrollAreaRootContext.d.ts +10 -43
- package/esm/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +1 -1
- package/esm/scroll-area/scrollbar/ScrollAreaScrollbar.js +4 -4
- package/esm/scroll-area/thumb/ScrollAreaThumb.d.ts +2 -2
- package/esm/scroll-area/thumb/ScrollAreaThumb.js +1 -1
- package/esm/scroll-area/viewport/ScrollAreaViewport.d.ts +1 -1
- package/esm/scroll-area/viewport/ScrollAreaViewport.js +51 -25
- package/esm/select/arrow/SelectArrow.d.ts +1 -1
- package/esm/select/backdrop/SelectBackdrop.d.ts +1 -1
- package/esm/select/group/SelectGroup.d.ts +1 -1
- package/esm/select/group-label/SelectGroupLabel.d.ts +1 -1
- package/esm/select/icon/SelectIcon.d.ts +1 -1
- package/esm/select/item/SelectItem.d.ts +1 -1
- package/esm/select/item/SelectItem.js +0 -1
- package/esm/select/item-indicator/SelectItemIndicator.d.ts +1 -1
- package/esm/select/item-text/SelectItemText.d.ts +1 -1
- package/esm/select/list/SelectList.d.ts +1 -1
- package/esm/select/popup/SelectPopup.d.ts +1 -1
- package/esm/select/popup/SelectPopup.js +154 -95
- package/esm/select/portal/SelectPortal.d.ts +1 -1
- package/esm/select/positioner/SelectPositioner.d.ts +1 -1
- package/esm/select/root/SelectRoot.d.ts +2 -2
- package/esm/select/root/SelectRoot.js +26 -13
- package/esm/select/scroll-arrow/SelectScrollArrow.d.ts +1 -1
- package/esm/select/scroll-down-arrow/SelectScrollDownArrow.d.ts +1 -1
- package/esm/select/scroll-up-arrow/SelectScrollUpArrow.d.ts +1 -1
- package/esm/select/store.d.ts +2 -1
- package/esm/select/store.js +19 -13
- package/esm/select/trigger/SelectTrigger.d.ts +14 -4
- package/esm/select/trigger/SelectTrigger.js +50 -18
- package/esm/select/value/SelectValue.d.ts +6 -1
- package/esm/select/value/SelectValue.js +19 -5
- package/esm/separator/Separator.d.ts +1 -1
- package/esm/slider/control/SliderControl.d.ts +1 -1
- package/esm/slider/control/SliderControl.js +1 -1
- package/esm/slider/control/SliderControlDataAttributes.d.ts +0 -8
- package/esm/slider/control/SliderControlDataAttributes.js +0 -8
- package/esm/slider/indicator/SliderIndicator.d.ts +1 -1
- package/esm/slider/indicator/SliderIndicatorDataAttributes.d.ts +0 -8
- package/esm/slider/indicator/SliderIndicatorDataAttributes.js +0 -8
- package/esm/slider/root/SliderRootDataAttributes.d.ts +0 -8
- package/esm/slider/root/SliderRootDataAttributes.js +0 -8
- package/esm/slider/thumb/SliderThumb.d.ts +2 -2
- package/esm/slider/thumb/SliderThumb.js +7 -1
- package/esm/slider/thumb/SliderThumbDataAttributes.d.ts +0 -8
- package/esm/slider/thumb/SliderThumbDataAttributes.js +0 -8
- package/esm/slider/track/SliderTrack.d.ts +1 -1
- package/esm/slider/track/SliderTrackDataAttributes.d.ts +0 -8
- package/esm/slider/track/SliderTrackDataAttributes.js +0 -8
- package/esm/slider/value/SliderValue.d.ts +1 -1
- package/esm/slider/value/SliderValueDataAttributes.d.ts +0 -8
- package/esm/slider/value/SliderValueDataAttributes.js +0 -8
- package/esm/switch/root/SwitchRoot.d.ts +6 -1
- package/esm/switch/root/SwitchRoot.js +15 -6
- package/esm/switch/thumb/SwitchThumb.d.ts +1 -1
- package/esm/tabs/indicator/TabsIndicator.d.ts +1 -1
- package/esm/tabs/indicator/TabsIndicator.js +6 -0
- package/esm/tabs/list/TabsList.d.ts +1 -1
- package/esm/tabs/panel/TabsPanel.d.ts +1 -1
- package/esm/tabs/root/TabsRoot.d.ts +1 -1
- package/esm/tabs/tab/TabsTab.d.ts +1 -1
- package/esm/toast/action/ToastAction.d.ts +1 -1
- package/esm/toast/arrow/ToastArrow.d.ts +1 -1
- package/esm/toast/close/ToastClose.d.ts +1 -1
- package/esm/toast/content/ToastContent.d.ts +1 -1
- package/esm/toast/description/ToastDescription.d.ts +1 -1
- package/esm/toast/portal/ToastPortal.d.ts +1 -1
- package/esm/toast/positioner/ToastPositioner.d.ts +1 -1
- package/esm/toast/provider/ToastProvider.js +46 -19
- package/esm/toast/root/ToastRoot.d.ts +1 -1
- package/esm/toast/title/ToastTitle.d.ts +1 -1
- package/esm/toast/viewport/ToastViewport.d.ts +1 -1
- package/esm/toggle/Toggle.d.ts +1 -1
- package/esm/toggle-group/ToggleGroup.d.ts +1 -1
- package/esm/toolbar/button/ToolbarButton.d.ts +1 -1
- package/esm/toolbar/group/ToolbarGroup.d.ts +1 -1
- package/esm/toolbar/input/ToolbarInput.d.ts +1 -1
- package/esm/toolbar/link/ToolbarLink.d.ts +1 -1
- package/esm/toolbar/root/ToolbarRoot.d.ts +1 -1
- package/esm/toolbar/separator/ToolbarSeparator.d.ts +1 -1
- package/esm/tooltip/arrow/TooltipArrow.d.ts +1 -1
- package/esm/tooltip/popup/TooltipPopup.d.ts +1 -1
- package/esm/tooltip/popup/TooltipPopup.js +0 -31
- package/esm/tooltip/portal/TooltipPortal.d.ts +1 -1
- package/esm/tooltip/positioner/TooltipPositioner.d.ts +1 -1
- package/esm/tooltip/positioner/TooltipPositioner.js +2 -1
- package/esm/tooltip/root/TooltipRoot.d.ts +4 -6
- package/esm/tooltip/root/TooltipRoot.js +1 -2
- package/esm/tooltip/store/TooltipStore.d.ts +4 -2
- package/esm/tooltip/store/TooltipStore.js +7 -4
- package/esm/tooltip/trigger/TooltipTrigger.js +1 -1
- package/esm/tooltip/viewport/TooltipViewport.d.ts +1 -1
- package/esm/tooltip/viewport/TooltipViewport.js +28 -12
- package/esm/use-render/index.d.ts +2 -1
- package/esm/use-render/index.js +2 -1
- package/esm/utils/FloatingPortalLite.d.ts +1 -1
- package/esm/utils/popups/popupStoreUtils.js +21 -2
- package/esm/utils/resolveValueLabel.d.ts +5 -1
- package/esm/utils/resolveValueLabel.js +46 -22
- package/esm/utils/styles.d.ts +1 -1
- package/esm/utils/styles.js +10 -6
- package/esm/utils/types.d.ts +1 -1
- package/esm/utils/useAnimationsFinished.d.ts +2 -2
- package/esm/utils/useAnimationsFinished.js +56 -33
- package/esm/utils/useOpenChangeComplete.js +8 -10
- package/esm/utils/useOpenInteractionType.js +6 -1
- package/esm/utils/usePopupAutoResize.js +82 -46
- package/field/control/FieldControl.d.ts +1 -1
- package/field/description/FieldDescription.d.ts +1 -1
- package/field/error/FieldError.d.ts +1 -1
- package/field/index.d.ts +2 -1
- package/field/item/FieldItem.d.ts +1 -1
- package/field/label/FieldLabel.d.ts +11 -2
- package/field/label/FieldLabel.js +51 -11
- package/field/root/FieldRoot.d.ts +10 -1
- package/field/root/FieldRoot.js +8 -0
- package/field/useField.js +7 -3
- package/fieldset/legend/FieldsetLegend.d.ts +1 -1
- package/fieldset/root/FieldsetRoot.d.ts +1 -1
- package/floating-ui-react/components/FloatingFocusManager.js +7 -6
- package/floating-ui-react/components/FloatingPortal.d.ts +2 -2
- package/floating-ui-react/components/FloatingPortal.js +11 -2
- package/floating-ui-react/hooks/useClientPoint.js +5 -4
- package/floating-ui-react/hooks/useDismiss.js +16 -3
- package/floating-ui-react/hooks/useFocus.d.ts +5 -0
- package/floating-ui-react/hooks/useFocus.js +43 -9
- package/floating-ui-react/hooks/useHoverReferenceInteraction.js +17 -4
- package/floating-ui-react/hooks/useSyncedFloatingRootContext.js +3 -0
- package/form/Form.d.ts +18 -1
- package/form/Form.js +17 -0
- package/form/FormContext.d.ts +1 -1
- package/index.d.ts +1 -0
- package/index.js +12 -1
- package/input/Input.d.ts +1 -1
- package/menu/arrow/MenuArrow.d.ts +1 -1
- package/menu/backdrop/MenuBackdrop.d.ts +1 -1
- package/menu/checkbox-item/MenuCheckboxItem.d.ts +1 -1
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.d.ts +1 -1
- package/menu/group/MenuGroup.d.ts +1 -1
- package/menu/group-label/MenuGroupLabel.d.ts +1 -1
- package/menu/item/MenuItem.d.ts +1 -1
- package/menu/popup/MenuPopup.d.ts +1 -1
- package/menu/popup/MenuPopup.js +4 -3
- package/menu/portal/MenuPortal.d.ts +1 -1
- package/menu/positioner/MenuPositioner.d.ts +1 -1
- package/menu/radio-group/MenuRadioGroup.d.ts +1 -1
- package/menu/radio-item/MenuRadioItem.d.ts +1 -1
- package/menu/radio-item-indicator/MenuRadioItemIndicator.d.ts +1 -1
- package/menu/root/MenuRoot.d.ts +7 -6
- package/menu/root/MenuRoot.js +4 -2
- package/menu/store/MenuStore.js +3 -3
- package/menu/submenu-trigger/MenuSubmenuTrigger.d.ts +1 -1
- package/menu/trigger/MenuTrigger.js +14 -14
- package/menubar/Menubar.d.ts +1 -1
- package/merge-props/mergeProps.d.ts +31 -11
- package/merge-props/mergeProps.js +29 -8
- package/meter/indicator/MeterIndicator.d.ts +1 -1
- package/meter/label/MeterLabel.d.ts +1 -1
- package/meter/root/MeterRoot.d.ts +1 -1
- package/meter/track/MeterTrack.d.ts +1 -1
- package/meter/value/MeterValue.d.ts +1 -1
- package/navigation-menu/arrow/NavigationMenuArrow.d.ts +1 -1
- package/navigation-menu/backdrop/NavigationMenuBackdrop.d.ts +1 -1
- package/navigation-menu/content/NavigationMenuContent.d.ts +1 -1
- package/navigation-menu/content/NavigationMenuContent.js +6 -0
- package/navigation-menu/icon/NavigationMenuIcon.d.ts +1 -1
- package/navigation-menu/item/NavigationMenuItem.d.ts +1 -1
- package/navigation-menu/link/NavigationMenuLink.d.ts +1 -1
- package/navigation-menu/list/NavigationMenuList.d.ts +1 -1
- package/navigation-menu/popup/NavigationMenuPopup.d.ts +1 -1
- package/navigation-menu/portal/NavigationMenuPortal.d.ts +1 -1
- package/navigation-menu/positioner/NavigationMenuPositioner.d.ts +1 -1
- package/navigation-menu/root/NavigationMenuRoot.d.ts +2 -2
- package/navigation-menu/trigger/NavigationMenuTrigger.d.ts +1 -1
- package/navigation-menu/viewport/NavigationMenuViewport.d.ts +1 -1
- package/number-field/decrement/NumberFieldDecrement.d.ts +1 -1
- package/number-field/decrement/NumberFieldDecrement.js +4 -6
- package/number-field/group/NumberFieldGroup.d.ts +1 -1
- package/number-field/increment/NumberFieldIncrement.d.ts +1 -1
- package/number-field/increment/NumberFieldIncrement.js +4 -6
- package/number-field/input/NumberFieldInput.d.ts +1 -1
- package/number-field/input/NumberFieldInput.js +5 -2
- package/number-field/root/NumberFieldRoot.d.ts +5 -4
- package/number-field/root/NumberFieldRoot.js +11 -4
- package/number-field/root/useNumberFieldButton.d.ts +0 -3
- package/number-field/root/useNumberFieldButton.js +5 -11
- package/number-field/scrub-area/NumberFieldScrubArea.d.ts +1 -1
- package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.d.ts +1 -1
- package/package.json +13 -3
- package/popover/arrow/PopoverArrow.d.ts +1 -1
- package/popover/backdrop/PopoverBackdrop.d.ts +1 -1
- package/popover/close/PopoverClose.d.ts +1 -1
- package/popover/description/PopoverDescription.d.ts +1 -1
- package/popover/popup/PopoverPopup.d.ts +1 -1
- package/popover/popup/PopoverPopup.js +0 -30
- package/popover/portal/PopoverPortal.d.ts +1 -1
- package/popover/positioner/PopoverPositioner.d.ts +1 -1
- package/popover/positioner/PopoverPositioner.js +2 -1
- package/popover/root/PopoverRoot.d.ts +2 -2
- package/popover/store/PopoverStore.d.ts +4 -2
- package/popover/store/PopoverStore.js +8 -5
- package/popover/title/PopoverTitle.d.ts +1 -1
- package/popover/trigger/PopoverTrigger.js +2 -2
- package/popover/viewport/PopoverViewport.d.ts +1 -1
- package/popover/viewport/PopoverViewport.js +28 -12
- package/preview-card/arrow/PreviewCardArrow.d.ts +1 -1
- package/preview-card/arrow/PreviewCardArrow.js +2 -3
- package/preview-card/backdrop/PreviewCardBackdrop.d.ts +1 -1
- package/preview-card/backdrop/PreviewCardBackdrop.js +4 -5
- package/preview-card/index.parts.d.ts +3 -1
- package/preview-card/index.parts.js +21 -1
- package/preview-card/popup/PreviewCardPopup.d.ts +2 -1
- package/preview-card/popup/PreviewCardPopup.js +17 -11
- package/preview-card/portal/PreviewCardPortal.d.ts +1 -1
- package/preview-card/portal/PreviewCardPortal.js +2 -3
- package/preview-card/positioner/PreviewCardPositioner.d.ts +2 -1
- package/preview-card/positioner/PreviewCardPositioner.js +16 -11
- package/preview-card/root/PreviewCardContext.d.ts +5 -26
- package/preview-card/root/PreviewCardContext.js +2 -2
- package/preview-card/root/PreviewCardRoot.d.ts +35 -10
- package/preview-card/root/PreviewCardRoot.js +59 -113
- package/preview-card/store/PreviewCardHandle.d.ts +33 -0
- package/preview-card/store/PreviewCardHandle.js +63 -0
- package/preview-card/store/PreviewCardStore.d.ts +36 -0
- package/preview-card/store/PreviewCardStore.js +105 -0
- package/preview-card/trigger/PreviewCardTrigger.d.ts +15 -3
- package/preview-card/trigger/PreviewCardTrigger.js +50 -13
- package/preview-card/viewport/PreviewCardViewport.d.ts +22 -0
- package/preview-card/viewport/PreviewCardViewport.js +278 -0
- package/preview-card/viewport/PreviewCardViewportCssVars.d.ts +14 -0
- package/preview-card/viewport/PreviewCardViewportCssVars.js +21 -0
- package/preview-card/viewport/PreviewCardViewportDataAttributes.d.ts +26 -0
- package/preview-card/viewport/PreviewCardViewportDataAttributes.js +33 -0
- package/progress/indicator/ProgressIndicator.d.ts +1 -1
- package/progress/label/ProgressLabel.d.ts +1 -1
- package/progress/root/ProgressRoot.d.ts +1 -1
- package/progress/track/ProgressTrack.d.ts +1 -1
- package/progress/value/ProgressValue.d.ts +1 -1
- package/radio/indicator/RadioIndicator.d.ts +1 -1
- package/radio/root/RadioRoot.d.ts +1 -1
- package/radio/root/RadioRoot.js +8 -8
- package/radio-group/RadioGroup.d.ts +4 -4
- package/radio-group/RadioGroup.js +1 -1
- package/scroll-area/content/ScrollAreaContent.d.ts +1 -1
- package/scroll-area/content/ScrollAreaContent.js +10 -1
- package/scroll-area/corner/ScrollAreaCorner.d.ts +1 -1
- package/scroll-area/corner/ScrollAreaCorner.js +1 -1
- package/scroll-area/root/ScrollAreaRoot.d.ts +26 -2
- package/scroll-area/root/ScrollAreaRoot.js +33 -29
- package/scroll-area/root/ScrollAreaRootContext.d.ts +10 -43
- package/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +1 -1
- package/scroll-area/scrollbar/ScrollAreaScrollbar.js +4 -4
- package/scroll-area/thumb/ScrollAreaThumb.d.ts +2 -2
- package/scroll-area/thumb/ScrollAreaThumb.js +1 -1
- package/scroll-area/viewport/ScrollAreaViewport.d.ts +1 -1
- package/scroll-area/viewport/ScrollAreaViewport.js +51 -25
- package/select/arrow/SelectArrow.d.ts +1 -1
- package/select/backdrop/SelectBackdrop.d.ts +1 -1
- package/select/group/SelectGroup.d.ts +1 -1
- package/select/group-label/SelectGroupLabel.d.ts +1 -1
- package/select/icon/SelectIcon.d.ts +1 -1
- package/select/item/SelectItem.d.ts +1 -1
- package/select/item/SelectItem.js +0 -1
- package/select/item-indicator/SelectItemIndicator.d.ts +1 -1
- package/select/item-text/SelectItemText.d.ts +1 -1
- package/select/list/SelectList.d.ts +1 -1
- package/select/popup/SelectPopup.d.ts +1 -1
- package/select/popup/SelectPopup.js +154 -95
- package/select/portal/SelectPortal.d.ts +1 -1
- package/select/positioner/SelectPositioner.d.ts +1 -1
- package/select/root/SelectRoot.d.ts +2 -2
- package/select/root/SelectRoot.js +24 -11
- package/select/scroll-arrow/SelectScrollArrow.d.ts +1 -1
- package/select/scroll-down-arrow/SelectScrollDownArrow.d.ts +1 -1
- package/select/scroll-up-arrow/SelectScrollUpArrow.d.ts +1 -1
- package/select/store.d.ts +2 -1
- package/select/store.js +18 -12
- package/select/trigger/SelectTrigger.d.ts +14 -4
- package/select/trigger/SelectTrigger.js +50 -18
- package/select/value/SelectValue.d.ts +6 -1
- package/select/value/SelectValue.js +18 -4
- package/separator/Separator.d.ts +1 -1
- package/slider/control/SliderControl.d.ts +1 -1
- package/slider/control/SliderControl.js +1 -1
- package/slider/control/SliderControlDataAttributes.d.ts +0 -8
- package/slider/control/SliderControlDataAttributes.js +0 -8
- package/slider/indicator/SliderIndicator.d.ts +1 -1
- package/slider/indicator/SliderIndicatorDataAttributes.d.ts +0 -8
- package/slider/indicator/SliderIndicatorDataAttributes.js +0 -8
- package/slider/root/SliderRootDataAttributes.d.ts +0 -8
- package/slider/root/SliderRootDataAttributes.js +0 -8
- package/slider/thumb/SliderThumb.d.ts +2 -2
- package/slider/thumb/SliderThumb.js +7 -1
- package/slider/thumb/SliderThumbDataAttributes.d.ts +0 -8
- package/slider/thumb/SliderThumbDataAttributes.js +0 -8
- package/slider/track/SliderTrack.d.ts +1 -1
- package/slider/track/SliderTrackDataAttributes.d.ts +0 -8
- package/slider/track/SliderTrackDataAttributes.js +0 -8
- package/slider/value/SliderValue.d.ts +1 -1
- package/slider/value/SliderValueDataAttributes.d.ts +0 -8
- package/slider/value/SliderValueDataAttributes.js +0 -8
- package/switch/root/SwitchRoot.d.ts +6 -1
- package/switch/root/SwitchRoot.js +14 -5
- package/switch/thumb/SwitchThumb.d.ts +1 -1
- package/tabs/indicator/TabsIndicator.d.ts +1 -1
- package/tabs/indicator/TabsIndicator.js +6 -0
- package/tabs/list/TabsList.d.ts +1 -1
- package/tabs/panel/TabsPanel.d.ts +1 -1
- package/tabs/root/TabsRoot.d.ts +1 -1
- package/tabs/tab/TabsTab.d.ts +1 -1
- package/toast/action/ToastAction.d.ts +1 -1
- package/toast/arrow/ToastArrow.d.ts +1 -1
- package/toast/close/ToastClose.d.ts +1 -1
- package/toast/content/ToastContent.d.ts +1 -1
- package/toast/description/ToastDescription.d.ts +1 -1
- package/toast/portal/ToastPortal.d.ts +1 -1
- package/toast/positioner/ToastPositioner.d.ts +1 -1
- package/toast/provider/ToastProvider.js +46 -19
- package/toast/root/ToastRoot.d.ts +1 -1
- package/toast/title/ToastTitle.d.ts +1 -1
- package/toast/viewport/ToastViewport.d.ts +1 -1
- package/toggle/Toggle.d.ts +1 -1
- package/toggle-group/ToggleGroup.d.ts +1 -1
- package/toolbar/button/ToolbarButton.d.ts +1 -1
- package/toolbar/group/ToolbarGroup.d.ts +1 -1
- package/toolbar/input/ToolbarInput.d.ts +1 -1
- package/toolbar/link/ToolbarLink.d.ts +1 -1
- package/toolbar/root/ToolbarRoot.d.ts +1 -1
- package/toolbar/separator/ToolbarSeparator.d.ts +1 -1
- package/tooltip/arrow/TooltipArrow.d.ts +1 -1
- package/tooltip/popup/TooltipPopup.d.ts +1 -1
- package/tooltip/popup/TooltipPopup.js +0 -31
- package/tooltip/portal/TooltipPortal.d.ts +1 -1
- package/tooltip/positioner/TooltipPositioner.d.ts +1 -1
- package/tooltip/positioner/TooltipPositioner.js +2 -1
- package/tooltip/root/TooltipRoot.d.ts +4 -6
- package/tooltip/root/TooltipRoot.js +1 -2
- package/tooltip/store/TooltipStore.d.ts +4 -2
- package/tooltip/store/TooltipStore.js +7 -4
- package/tooltip/trigger/TooltipTrigger.js +1 -1
- package/tooltip/viewport/TooltipViewport.d.ts +1 -1
- package/tooltip/viewport/TooltipViewport.js +28 -12
- package/use-render/index.d.ts +2 -1
- package/utils/FloatingPortalLite.d.ts +1 -1
- package/utils/popups/popupStoreUtils.js +21 -2
- package/utils/resolveValueLabel.d.ts +5 -1
- package/utils/resolveValueLabel.js +48 -22
- package/utils/styles.d.ts +1 -1
- package/utils/styles.js +10 -6
- package/utils/types.d.ts +1 -1
- package/utils/useAnimationsFinished.d.ts +2 -2
- package/utils/useAnimationsFinished.js +56 -33
- package/utils/useOpenChangeComplete.js +8 -10
- package/utils/useOpenInteractionType.js +6 -1
- package/utils/usePopupAutoResize.js +82 -46
- package/esm/utils/interactions/useFocusWithDelay.d.ts +0 -9
- package/esm/utils/interactions/useFocusWithDelay.js +0 -81
- package/utils/interactions/useFocusWithDelay.d.ts +0 -9
- package/utils/interactions/useFocusWithDelay.js +0 -87
- /package/esm/utils/{useMixedToggleClickHander.d.ts → useMixedToggleClickHandler.d.ts} +0 -0
- /package/esm/utils/{useMixedToggleClickHander.js → useMixedToggleClickHandler.js} +0 -0
- /package/utils/{useMixedToggleClickHander.d.ts → useMixedToggleClickHandler.d.ts} +0 -0
- /package/utils/{useMixedToggleClickHander.js → useMixedToggleClickHandler.js} +0 -0
|
@@ -7,7 +7,7 @@ import type { NumberFieldRoot } from "../root/NumberFieldRoot.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Number Field](https://base-ui.com/react/components/number-field)
|
|
9
9
|
*/
|
|
10
|
-
export declare const NumberFieldScrubArea: React.ForwardRefExoticComponent<NumberFieldScrubAreaProps & React.RefAttributes<HTMLSpanElement>>;
|
|
10
|
+
export declare const NumberFieldScrubArea: React.ForwardRefExoticComponent<Omit<NumberFieldScrubAreaProps, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
11
11
|
export interface NumberFieldScrubAreaState extends NumberFieldRoot.State {}
|
|
12
12
|
export interface NumberFieldScrubAreaProps extends BaseUIComponentProps<'span', NumberFieldScrubArea.State> {
|
|
13
13
|
/**
|
|
@@ -10,7 +10,7 @@ import type { NumberFieldRoot } from "../root/NumberFieldRoot.js";
|
|
|
10
10
|
*
|
|
11
11
|
* Documentation: [Base UI Number Field](https://base-ui.com/react/components/number-field)
|
|
12
12
|
*/
|
|
13
|
-
export declare const NumberFieldScrubAreaCursor: React.ForwardRefExoticComponent<NumberFieldScrubAreaCursorProps & React.RefAttributes<HTMLSpanElement>>;
|
|
13
|
+
export declare const NumberFieldScrubAreaCursor: React.ForwardRefExoticComponent<Omit<NumberFieldScrubAreaCursorProps, "ref"> & React.RefAttributes<HTMLSpanElement>>;
|
|
14
14
|
export interface NumberFieldScrubAreaCursorState extends NumberFieldRoot.State {}
|
|
15
15
|
export interface NumberFieldScrubAreaCursorProps extends BaseUIComponentProps<'span', NumberFieldScrubAreaCursor.State> {}
|
|
16
16
|
export declare namespace NumberFieldScrubAreaCursor {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@base-ui/react",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"author": "MUI Team",
|
|
5
5
|
"description": "Base UI is a library of headless ('unstyled') React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.",
|
|
6
6
|
"keywords": [
|
|
@@ -30,9 +30,9 @@
|
|
|
30
30
|
"@floating-ui/react-dom": "^2.1.6",
|
|
31
31
|
"@floating-ui/utils": "^0.2.10",
|
|
32
32
|
"reselect": "^5.1.1",
|
|
33
|
-
"tabbable": "^6.
|
|
33
|
+
"tabbable": "^6.4.0",
|
|
34
34
|
"use-sync-external-store": "^1.6.0",
|
|
35
|
-
"@base-ui/utils": "0.2.
|
|
35
|
+
"@base-ui/utils": "0.2.4"
|
|
36
36
|
},
|
|
37
37
|
"peerDependencies": {
|
|
38
38
|
"@types/react": "^17 || ^18 || ^19",
|
|
@@ -155,6 +155,16 @@
|
|
|
155
155
|
"default": "./esm/combobox/index.js"
|
|
156
156
|
}
|
|
157
157
|
},
|
|
158
|
+
"./csp-provider": {
|
|
159
|
+
"require": {
|
|
160
|
+
"types": "./csp-provider/index.d.ts",
|
|
161
|
+
"default": "./csp-provider/index.js"
|
|
162
|
+
},
|
|
163
|
+
"default": {
|
|
164
|
+
"types": "./esm/csp-provider/index.d.ts",
|
|
165
|
+
"default": "./esm/csp-provider/index.js"
|
|
166
|
+
}
|
|
167
|
+
},
|
|
158
168
|
"./context-menu": {
|
|
159
169
|
"require": {
|
|
160
170
|
"types": "./context-menu/index.d.ts",
|
|
@@ -7,7 +7,7 @@ import type { BaseUIComponentProps } from "../../utils/types.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
9
9
|
*/
|
|
10
|
-
export declare const PopoverArrow: React.ForwardRefExoticComponent<PopoverArrowProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export declare const PopoverArrow: React.ForwardRefExoticComponent<Omit<PopoverArrowProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export interface PopoverArrowState {
|
|
12
12
|
/**
|
|
13
13
|
* Whether the popover is currently open.
|
|
@@ -7,7 +7,7 @@ import type { TransitionStatus } from "../../utils/useTransitionStatus.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
9
9
|
*/
|
|
10
|
-
export declare const PopoverBackdrop: React.ForwardRefExoticComponent<PopoverBackdropProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export declare const PopoverBackdrop: React.ForwardRefExoticComponent<Omit<PopoverBackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export interface PopoverBackdropState {
|
|
12
12
|
/**
|
|
13
13
|
* Whether the popover is currently open.
|
|
@@ -6,7 +6,7 @@ import type { BaseUIComponentProps, NativeButtonProps } from "../../utils/types.
|
|
|
6
6
|
*
|
|
7
7
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
8
8
|
*/
|
|
9
|
-
export declare const PopoverClose: React.ForwardRefExoticComponent<PopoverCloseProps & React.RefAttributes<HTMLButtonElement>>;
|
|
9
|
+
export declare const PopoverClose: React.ForwardRefExoticComponent<Omit<PopoverCloseProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
10
10
|
export interface PopoverCloseState {}
|
|
11
11
|
export interface PopoverCloseProps extends NativeButtonProps, BaseUIComponentProps<'button', PopoverClose.State> {}
|
|
12
12
|
export declare namespace PopoverClose {
|
|
@@ -6,7 +6,7 @@ import type { BaseUIComponentProps } from "../../utils/types.js";
|
|
|
6
6
|
*
|
|
7
7
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
8
8
|
*/
|
|
9
|
-
export declare const PopoverDescription: React.ForwardRefExoticComponent<PopoverDescriptionProps & React.RefAttributes<HTMLParagraphElement>>;
|
|
9
|
+
export declare const PopoverDescription: React.ForwardRefExoticComponent<Omit<PopoverDescriptionProps, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
10
10
|
export interface PopoverDescriptionState {}
|
|
11
11
|
export interface PopoverDescriptionProps extends BaseUIComponentProps<'p', PopoverDescription.State> {}
|
|
12
12
|
export declare namespace PopoverDescription {
|
|
@@ -9,7 +9,7 @@ import type { TransitionStatus } from "../../utils/useTransitionStatus.js";
|
|
|
9
9
|
*
|
|
10
10
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
11
11
|
*/
|
|
12
|
-
export declare const PopoverPopup: React.ForwardRefExoticComponent<PopoverPopupProps & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
+
export declare const PopoverPopup: React.ForwardRefExoticComponent<Omit<PopoverPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
13
13
|
export interface PopoverPopupState {
|
|
14
14
|
/**
|
|
15
15
|
* Whether the popover is currently open.
|
|
@@ -16,8 +16,6 @@ var _stateAttributesMapping = require("../../utils/stateAttributesMapping");
|
|
|
16
16
|
var _useOpenChangeComplete = require("../../utils/useOpenChangeComplete");
|
|
17
17
|
var _useRenderElement = require("../../utils/useRenderElement");
|
|
18
18
|
var _reasons = require("../../utils/reasons");
|
|
19
|
-
var _usePopupAutoResize = require("../../utils/usePopupAutoResize");
|
|
20
|
-
var _DirectionContext = require("../../direction-provider/DirectionContext");
|
|
21
19
|
var _composite = require("../../composite/composite");
|
|
22
20
|
var _ToolbarRootContext = require("../../toolbar/root/ToolbarRootContext");
|
|
23
21
|
var _getDisabledMountTransitionStyles = require("../../utils/getDisabledMountTransitionStyles");
|
|
@@ -46,7 +44,6 @@ const PopoverPopup = exports.PopoverPopup = /*#__PURE__*/React.forwardRef(functi
|
|
|
46
44
|
} = (0, _PopoverRootContext.usePopoverRootContext)();
|
|
47
45
|
const positioner = (0, _PopoverPositionerContext.usePopoverPositionerContext)();
|
|
48
46
|
const insideToolbar = (0, _ToolbarRootContext.useToolbarRootContext)(true) != null;
|
|
49
|
-
const direction = (0, _DirectionContext.useDirection)();
|
|
50
47
|
const open = store.useState('open');
|
|
51
48
|
const openMethod = store.useState('openMethod');
|
|
52
49
|
const instantType = store.useState('instantType');
|
|
@@ -57,9 +54,6 @@ const PopoverPopup = exports.PopoverPopup = /*#__PURE__*/React.forwardRef(functi
|
|
|
57
54
|
const modal = store.useState('modal');
|
|
58
55
|
const mounted = store.useState('mounted');
|
|
59
56
|
const openReason = store.useState('openChangeReason');
|
|
60
|
-
const popupElement = store.useState('popupElement');
|
|
61
|
-
const payload = store.useState('payload');
|
|
62
|
-
const positionerElement = store.useState('positionerElement');
|
|
63
57
|
const activeTriggerElement = store.useState('activeTriggerElement');
|
|
64
58
|
const floatingContext = store.useState('floatingRootContext');
|
|
65
59
|
(0, _useOpenChangeComplete.useOpenChangeComplete)({
|
|
@@ -99,30 +93,6 @@ const PopoverPopup = exports.PopoverPopup = /*#__PURE__*/React.forwardRef(functi
|
|
|
99
93
|
const setPopupElement = React.useCallback(element => {
|
|
100
94
|
store.set('popupElement', element);
|
|
101
95
|
}, [store]);
|
|
102
|
-
function handleMeasureLayout() {
|
|
103
|
-
floatingContext.context.events.emit('measure-layout');
|
|
104
|
-
}
|
|
105
|
-
function handleMeasureLayoutComplete(previousDimensions, nextDimensions) {
|
|
106
|
-
floatingContext.context.events.emit('measure-layout-complete', {
|
|
107
|
-
previousDimensions,
|
|
108
|
-
nextDimensions
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
// If there's just one trigger, we can skip the auto-resize logic as
|
|
113
|
-
// the popover will always be anchored to the same position.
|
|
114
|
-
const autoresizeEnabled = React.useCallback(() => store.context.triggerElements.size > 1, [store]);
|
|
115
|
-
(0, _usePopupAutoResize.usePopupAutoResize)({
|
|
116
|
-
popupElement,
|
|
117
|
-
positionerElement,
|
|
118
|
-
mounted,
|
|
119
|
-
content: payload,
|
|
120
|
-
enabled: autoresizeEnabled,
|
|
121
|
-
onMeasureLayout: handleMeasureLayout,
|
|
122
|
-
onMeasureLayoutComplete: handleMeasureLayoutComplete,
|
|
123
|
-
side: positioner.side,
|
|
124
|
-
direction
|
|
125
|
-
});
|
|
126
96
|
const element = (0, _useRenderElement.useRenderElement)('div', componentProps, {
|
|
127
97
|
state,
|
|
128
98
|
ref: [forwardedRef, store.context.popupRef, setPopupElement],
|
|
@@ -7,7 +7,7 @@ import { FloatingPortal } from "../../floating-ui-react/index.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
9
9
|
*/
|
|
10
|
-
export declare const PopoverPortal: React.ForwardRefExoticComponent<PopoverPortalProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export declare const PopoverPortal: React.ForwardRefExoticComponent<Omit<PopoverPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export declare namespace PopoverPortal {
|
|
12
12
|
interface State {}
|
|
13
13
|
}
|
|
@@ -7,7 +7,7 @@ import type { BaseUIComponentProps } from "../../utils/types.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
9
9
|
*/
|
|
10
|
-
export declare const PopoverPositioner: React.ForwardRefExoticComponent<PopoverPositionerProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export declare const PopoverPositioner: React.ForwardRefExoticComponent<Omit<PopoverPositionerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export interface PopoverPositionerState {
|
|
12
12
|
/**
|
|
13
13
|
* Whether the popover is currently open.
|
|
@@ -61,6 +61,7 @@ const PopoverPositioner = exports.PopoverPositioner = /*#__PURE__*/React.forward
|
|
|
61
61
|
const positionerElement = store.useState('positionerElement');
|
|
62
62
|
const instantType = store.useState('instantType');
|
|
63
63
|
const transitionStatus = store.useState('transitionStatus');
|
|
64
|
+
const hasViewport = store.useState('hasViewport');
|
|
64
65
|
const prevTriggerElementRef = React.useRef(null);
|
|
65
66
|
const runOnceAnimationsFinish = (0, _useAnimationsFinished.useAnimationsFinished)(positionerElement, false, false);
|
|
66
67
|
const positioning = (0, _useAnchorPositioning.useAnchorPositioning)({
|
|
@@ -80,7 +81,7 @@ const PopoverPositioner = exports.PopoverPositioner = /*#__PURE__*/React.forward
|
|
|
80
81
|
keepMounted,
|
|
81
82
|
nodeId,
|
|
82
83
|
collisionAvoidance,
|
|
83
|
-
adaptiveOrigin: _adaptiveOriginMiddleware.adaptiveOrigin
|
|
84
|
+
adaptiveOrigin: hasViewport ? _adaptiveOriginMiddleware.adaptiveOrigin : undefined
|
|
84
85
|
});
|
|
85
86
|
const defaultProps = React.useMemo(() => {
|
|
86
87
|
const hiddenStyles = {};
|
|
@@ -49,13 +49,13 @@ export interface PopoverRootProps<Payload = unknown> {
|
|
|
49
49
|
modal?: boolean | 'trap-focus';
|
|
50
50
|
/**
|
|
51
51
|
* ID of the trigger that the popover is associated with.
|
|
52
|
-
* This is useful in
|
|
52
|
+
* This is useful in conjunction with the `open` prop to create a controlled popover.
|
|
53
53
|
* There's no need to specify this prop when the popover is uncontrolled (i.e. when the `open` prop is not set).
|
|
54
54
|
*/
|
|
55
55
|
triggerId?: string | null;
|
|
56
56
|
/**
|
|
57
57
|
* ID of the trigger that the popover is associated with.
|
|
58
|
-
* This is useful in
|
|
58
|
+
* This is useful in conjunction with the `defaultOpen` prop to create an initially open popover.
|
|
59
59
|
*/
|
|
60
60
|
defaultTriggerId?: string | null;
|
|
61
61
|
/**
|
|
@@ -16,6 +16,7 @@ export type State<Payload> = PopupStoreState<Payload> & {
|
|
|
16
16
|
descriptionElementId: string | undefined;
|
|
17
17
|
openOnHover: boolean;
|
|
18
18
|
closeDelay: number;
|
|
19
|
+
hasViewport: boolean;
|
|
19
20
|
};
|
|
20
21
|
type Context = PopupStoreContext<PopoverRoot.ChangeEventDetails> & {
|
|
21
22
|
readonly popupRef: React.RefObject<HTMLElement | null>;
|
|
@@ -36,6 +37,7 @@ declare const selectors: {
|
|
|
36
37
|
descriptionElementId: (state: State<unknown>) => string | undefined;
|
|
37
38
|
openOnHover: (state: State<unknown>) => boolean;
|
|
38
39
|
closeDelay: (state: State<unknown>) => number;
|
|
40
|
+
hasViewport: (state: State<unknown>) => boolean;
|
|
39
41
|
open: (state: PopupStoreState<unknown>) => boolean;
|
|
40
42
|
mounted: (state: PopupStoreState<unknown>) => boolean;
|
|
41
43
|
transitionStatus: (state: PopupStoreState<unknown>) => import("../../utils/useTransitionStatus.js").TransitionStatus;
|
|
@@ -47,8 +49,8 @@ declare const selectors: {
|
|
|
47
49
|
isTriggerActive: (state: PopupStoreState<unknown>, triggerId: string | undefined) => boolean;
|
|
48
50
|
isOpenedByTrigger: (state: PopupStoreState<unknown>, triggerId: string | undefined) => boolean;
|
|
49
51
|
isMountedByTrigger: (state: PopupStoreState<unknown>, triggerId: string | undefined) => boolean;
|
|
50
|
-
triggerProps: (state: PopupStoreState<unknown>, isActive: boolean) => import("../../
|
|
51
|
-
popupProps: (state: PopupStoreState<unknown>) => import("../../
|
|
52
|
+
triggerProps: (state: PopupStoreState<unknown>, isActive: boolean) => import("../../index.js").HTMLProps;
|
|
53
|
+
popupProps: (state: PopupStoreState<unknown>) => import("../../index.js").HTMLProps;
|
|
52
54
|
popupElement: (state: PopupStoreState<unknown>) => HTMLElement | null;
|
|
53
55
|
positionerElement: (state: PopupStoreState<unknown>) => HTMLElement | null;
|
|
54
56
|
};
|
|
@@ -29,7 +29,8 @@ function createInitialState() {
|
|
|
29
29
|
stickIfOpen: true,
|
|
30
30
|
nested: false,
|
|
31
31
|
openOnHover: false,
|
|
32
|
-
closeDelay: 0
|
|
32
|
+
closeDelay: 0,
|
|
33
|
+
hasViewport: false
|
|
33
34
|
};
|
|
34
35
|
}
|
|
35
36
|
const selectors = {
|
|
@@ -43,7 +44,8 @@ const selectors = {
|
|
|
43
44
|
titleElementId: (0, _store.createSelector)(state => state.titleElementId),
|
|
44
45
|
descriptionElementId: (0, _store.createSelector)(state => state.descriptionElementId),
|
|
45
46
|
openOnHover: (0, _store.createSelector)(state => state.openOnHover),
|
|
46
|
-
closeDelay: (0, _store.createSelector)(state => state.closeDelay)
|
|
47
|
+
closeDelay: (0, _store.createSelector)(state => state.closeDelay),
|
|
48
|
+
hasViewport: (0, _store.createSelector)(state => state.hasViewport)
|
|
47
49
|
};
|
|
48
50
|
class PopoverStore extends _store.ReactStore {
|
|
49
51
|
constructor(initialState) {
|
|
@@ -121,10 +123,11 @@ class PopoverStore extends _store.ReactStore {
|
|
|
121
123
|
}
|
|
122
124
|
};
|
|
123
125
|
static useStore(externalStore, initialState) {
|
|
124
|
-
const
|
|
125
|
-
return
|
|
126
|
+
const internalStore = (0, _useRefWithInit.useRefWithInit)(() => {
|
|
127
|
+
return new PopoverStore(initialState);
|
|
126
128
|
}).current;
|
|
127
|
-
|
|
129
|
+
const store = externalStore ?? internalStore;
|
|
130
|
+
(0, _useOnMount.useOnMount)(internalStore.disposeEffect);
|
|
128
131
|
return store;
|
|
129
132
|
}
|
|
130
133
|
disposeEffect = () => {
|
|
@@ -6,7 +6,7 @@ import type { BaseUIComponentProps } from "../../utils/types.js";
|
|
|
6
6
|
*
|
|
7
7
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
8
8
|
*/
|
|
9
|
-
export declare const PopoverTitle: React.ForwardRefExoticComponent<PopoverTitleProps & React.RefAttributes<HTMLHeadingElement>>;
|
|
9
|
+
export declare const PopoverTitle: React.ForwardRefExoticComponent<Omit<PopoverTitleProps, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
|
|
10
10
|
export interface PopoverTitleState {}
|
|
11
11
|
export interface PopoverTitleProps extends BaseUIComponentProps<'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6', PopoverTitle.State> {}
|
|
12
12
|
export declare namespace PopoverTitle {
|
|
@@ -129,8 +129,8 @@ const PopoverTrigger = exports.PopoverTrigger = /*#__PURE__*/React.forwardRef(fu
|
|
|
129
129
|
ReactDOM.flushSync(() => {
|
|
130
130
|
store.setOpen(false, (0, _createBaseUIEventDetails.createChangeEventDetails)(_reasons.REASONS.focusOut, event.nativeEvent, event.currentTarget));
|
|
131
131
|
});
|
|
132
|
-
let nextTabbable = (0, _utils.getTabbableAfterElement)(triggerElementRef.current);
|
|
133
|
-
while (nextTabbable !== null && (0, _utils.contains)(positionerElement, nextTabbable)
|
|
132
|
+
let nextTabbable = (0, _utils.getTabbableAfterElement)(store.context.triggerFocusTargetRef.current || triggerElementRef.current);
|
|
133
|
+
while (nextTabbable !== null && (0, _utils.contains)(positionerElement, nextTabbable)) {
|
|
134
134
|
const prevTabbable = nextTabbable;
|
|
135
135
|
nextTabbable = (0, _utils.getNextTabbable)(nextTabbable);
|
|
136
136
|
if (nextTabbable === prevTabbable) {
|
|
@@ -8,7 +8,7 @@ import { BaseUIComponentProps } from "../../utils/types.js";
|
|
|
8
8
|
*
|
|
9
9
|
* Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)
|
|
10
10
|
*/
|
|
11
|
-
export declare const PopoverViewport: React.ForwardRefExoticComponent<PopoverViewport.Props & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
export declare const PopoverViewport: React.ForwardRefExoticComponent<Omit<PopoverViewport.Props, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
12
|
export declare namespace PopoverViewport {
|
|
13
13
|
interface Props extends BaseUIComponentProps<'div', State> {
|
|
14
14
|
/**
|
|
@@ -13,9 +13,12 @@ var _usePreviousValue = require("@base-ui/utils/usePreviousValue");
|
|
|
13
13
|
var _useIsoLayoutEffect = require("@base-ui/utils/useIsoLayoutEffect");
|
|
14
14
|
var _useStableCallback = require("@base-ui/utils/useStableCallback");
|
|
15
15
|
var _PopoverRootContext = require("../root/PopoverRootContext");
|
|
16
|
+
var _PopoverPositionerContext = require("../positioner/PopoverPositionerContext");
|
|
16
17
|
var _useAnimationsFinished = require("../../utils/useAnimationsFinished");
|
|
18
|
+
var _usePopupAutoResize = require("../../utils/usePopupAutoResize");
|
|
17
19
|
var _useRenderElement = require("../../utils/useRenderElement");
|
|
18
20
|
var _PopoverViewportCssVars = require("./PopoverViewportCssVars");
|
|
21
|
+
var _DirectionContext = require("../../direction-provider/DirectionContext");
|
|
19
22
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
20
23
|
const stateAttributesMapping = {
|
|
21
24
|
activationDirection: value => value ? {
|
|
@@ -41,9 +44,14 @@ const PopoverViewport = exports.PopoverViewport = /*#__PURE__*/React.forwardRef(
|
|
|
41
44
|
const {
|
|
42
45
|
store
|
|
43
46
|
} = (0, _PopoverRootContext.usePopoverRootContext)();
|
|
47
|
+
const positioner = (0, _PopoverPositionerContext.usePopoverPositionerContext)();
|
|
48
|
+
const direction = (0, _DirectionContext.useDirection)();
|
|
44
49
|
const activeTrigger = store.useState('activeTriggerElement');
|
|
45
50
|
const open = store.useState('open');
|
|
46
|
-
const
|
|
51
|
+
const mounted = store.useState('mounted');
|
|
52
|
+
const payload = store.useState('payload');
|
|
53
|
+
const popupElement = store.useState('popupElement');
|
|
54
|
+
const positionerElement = store.useState('positionerElement');
|
|
47
55
|
const previousActiveTrigger = (0, _usePreviousValue.usePreviousValue)(open ? activeTrigger : null);
|
|
48
56
|
const capturedNodeRef = React.useRef(null);
|
|
49
57
|
const [previousContentNode, setPreviousContentNode] = React.useState(null);
|
|
@@ -54,6 +62,12 @@ const PopoverViewport = exports.PopoverViewport = /*#__PURE__*/React.forwardRef(
|
|
|
54
62
|
const cleanupFrame = (0, _useAnimationFrame.useAnimationFrame)();
|
|
55
63
|
const [previousContentDimensions, setPreviousContentDimensions] = React.useState(null);
|
|
56
64
|
const [showStartingStyleAttribute, setShowStartingStyleAttribute] = React.useState(false);
|
|
65
|
+
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
66
|
+
store.set('hasViewport', true);
|
|
67
|
+
return () => {
|
|
68
|
+
store.set('hasViewport', false);
|
|
69
|
+
};
|
|
70
|
+
}, [store]);
|
|
57
71
|
|
|
58
72
|
// Capture a clone of the current content DOM subtree when not transitioning.
|
|
59
73
|
// We can't store previous React nodes as they may be stateful; instead we capture DOM clones for visual continuity.
|
|
@@ -79,22 +93,14 @@ const PopoverViewport = exports.PopoverViewport = /*#__PURE__*/React.forwardRef(
|
|
|
79
93
|
currentContainerRef.current?.style.setProperty('transition', 'none');
|
|
80
94
|
previousContainerRef.current?.style.setProperty('display', 'none');
|
|
81
95
|
});
|
|
82
|
-
const handleMeasureLayoutComplete = (0, _useStableCallback.useStableCallback)(
|
|
96
|
+
const handleMeasureLayoutComplete = (0, _useStableCallback.useStableCallback)(previousDimensions => {
|
|
83
97
|
currentContainerRef.current?.style.removeProperty('animation');
|
|
84
98
|
currentContainerRef.current?.style.removeProperty('transition');
|
|
85
99
|
previousContainerRef.current?.style.removeProperty('display');
|
|
86
|
-
if (
|
|
87
|
-
setPreviousContentDimensions(
|
|
100
|
+
if (previousDimensions) {
|
|
101
|
+
setPreviousContentDimensions(previousDimensions);
|
|
88
102
|
}
|
|
89
103
|
});
|
|
90
|
-
React.useEffect(() => {
|
|
91
|
-
floatingContext.context.events.on('measure-layout', handleMeasureLayout);
|
|
92
|
-
floatingContext.context.events.on('measure-layout-complete', handleMeasureLayoutComplete);
|
|
93
|
-
return () => {
|
|
94
|
-
floatingContext.context.events.off('measure-layout', handleMeasureLayout);
|
|
95
|
-
floatingContext.context.events.off('measure-layout-complete', handleMeasureLayoutComplete);
|
|
96
|
-
};
|
|
97
|
-
}, [floatingContext, handleMeasureLayout, handleMeasureLayoutComplete]);
|
|
98
104
|
const lastHandledTriggerRef = React.useRef(null);
|
|
99
105
|
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
100
106
|
// When a trigger changes, set the captured children HTML to state,
|
|
@@ -157,6 +163,16 @@ const PopoverViewport = exports.PopoverViewport = /*#__PURE__*/React.forwardRef(
|
|
|
157
163
|
}
|
|
158
164
|
container.replaceChildren(...Array.from(previousContentNode.childNodes));
|
|
159
165
|
}, [previousContentNode]);
|
|
166
|
+
(0, _usePopupAutoResize.usePopupAutoResize)({
|
|
167
|
+
popupElement,
|
|
168
|
+
positionerElement,
|
|
169
|
+
mounted,
|
|
170
|
+
content: payload,
|
|
171
|
+
onMeasureLayout: handleMeasureLayout,
|
|
172
|
+
onMeasureLayoutComplete: handleMeasureLayoutComplete,
|
|
173
|
+
side: positioner.side,
|
|
174
|
+
direction
|
|
175
|
+
});
|
|
160
176
|
const state = React.useMemo(() => {
|
|
161
177
|
return {
|
|
162
178
|
activationDirection: getActivationDirection(newTriggerOffset),
|
|
@@ -7,7 +7,7 @@ import type { Align, Side } from "../../utils/useAnchorPositioning.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Preview Card](https://base-ui.com/react/components/preview-card)
|
|
9
9
|
*/
|
|
10
|
-
export declare const PreviewCardArrow: React.ForwardRefExoticComponent<PreviewCardArrowProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export declare const PreviewCardArrow: React.ForwardRefExoticComponent<Omit<PreviewCardArrowProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export interface PreviewCardArrowState {
|
|
12
12
|
/**
|
|
13
13
|
* Whether the preview card is currently open.
|
|
@@ -23,9 +23,7 @@ const PreviewCardArrow = exports.PreviewCardArrow = /*#__PURE__*/React.forwardRe
|
|
|
23
23
|
className,
|
|
24
24
|
...elementProps
|
|
25
25
|
} = componentProps;
|
|
26
|
-
const
|
|
27
|
-
open
|
|
28
|
-
} = (0, _PreviewCardContext.usePreviewCardRootContext)();
|
|
26
|
+
const store = (0, _PreviewCardContext.usePreviewCardRootContext)();
|
|
29
27
|
const {
|
|
30
28
|
arrowRef,
|
|
31
29
|
side,
|
|
@@ -33,6 +31,7 @@ const PreviewCardArrow = exports.PreviewCardArrow = /*#__PURE__*/React.forwardRe
|
|
|
33
31
|
arrowUncentered,
|
|
34
32
|
arrowStyles
|
|
35
33
|
} = (0, _PreviewCardPositionerContext.usePreviewCardPositionerContext)();
|
|
34
|
+
const open = store.useState('open');
|
|
36
35
|
const state = React.useMemo(() => ({
|
|
37
36
|
open,
|
|
38
37
|
side,
|
|
@@ -7,7 +7,7 @@ import type { TransitionStatus } from "../../utils/useTransitionStatus.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Preview Card](https://base-ui.com/react/components/preview-card)
|
|
9
9
|
*/
|
|
10
|
-
export declare const PreviewCardBackdrop: React.ForwardRefExoticComponent<PreviewCardBackdropProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export declare const PreviewCardBackdrop: React.ForwardRefExoticComponent<Omit<PreviewCardBackdropProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export interface PreviewCardBackdropState {
|
|
12
12
|
/**
|
|
13
13
|
* Whether the preview card is currently open.
|
|
@@ -28,11 +28,10 @@ const PreviewCardBackdrop = exports.PreviewCardBackdrop = /*#__PURE__*/React.for
|
|
|
28
28
|
className,
|
|
29
29
|
...elementProps
|
|
30
30
|
} = componentProps;
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
} = (0, _PreviewCardContext.usePreviewCardRootContext)();
|
|
31
|
+
const store = (0, _PreviewCardContext.usePreviewCardRootContext)();
|
|
32
|
+
const open = store.useState('open');
|
|
33
|
+
const mounted = store.useState('mounted');
|
|
34
|
+
const transitionStatus = store.useState('transitionStatus');
|
|
36
35
|
const state = React.useMemo(() => ({
|
|
37
36
|
open,
|
|
38
37
|
transitionStatus
|
|
@@ -4,4 +4,6 @@ export { PreviewCardTrigger as Trigger } from "./trigger/PreviewCardTrigger.js";
|
|
|
4
4
|
export { PreviewCardPositioner as Positioner } from "./positioner/PreviewCardPositioner.js";
|
|
5
5
|
export { PreviewCardPopup as Popup } from "./popup/PreviewCardPopup.js";
|
|
6
6
|
export { PreviewCardArrow as Arrow } from "./arrow/PreviewCardArrow.js";
|
|
7
|
-
export { PreviewCardBackdrop as Backdrop } from "./backdrop/PreviewCardBackdrop.js";
|
|
7
|
+
export { PreviewCardBackdrop as Backdrop } from "./backdrop/PreviewCardBackdrop.js";
|
|
8
|
+
export { PreviewCardViewport as Viewport } from "./viewport/PreviewCardViewport.js";
|
|
9
|
+
export { createPreviewCardHandle as createHandle, PreviewCardHandle as Handle } from "./store/PreviewCardHandle.js";
|
|
@@ -15,6 +15,12 @@ Object.defineProperty(exports, "Backdrop", {
|
|
|
15
15
|
return _PreviewCardBackdrop.PreviewCardBackdrop;
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
|
+
Object.defineProperty(exports, "Handle", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _PreviewCardHandle.PreviewCardHandle;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
18
24
|
Object.defineProperty(exports, "Popup", {
|
|
19
25
|
enumerable: true,
|
|
20
26
|
get: function () {
|
|
@@ -45,10 +51,24 @@ Object.defineProperty(exports, "Trigger", {
|
|
|
45
51
|
return _PreviewCardTrigger.PreviewCardTrigger;
|
|
46
52
|
}
|
|
47
53
|
});
|
|
54
|
+
Object.defineProperty(exports, "Viewport", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _PreviewCardViewport.PreviewCardViewport;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
Object.defineProperty(exports, "createHandle", {
|
|
61
|
+
enumerable: true,
|
|
62
|
+
get: function () {
|
|
63
|
+
return _PreviewCardHandle.createPreviewCardHandle;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
48
66
|
var _PreviewCardRoot = require("./root/PreviewCardRoot");
|
|
49
67
|
var _PreviewCardPortal = require("./portal/PreviewCardPortal");
|
|
50
68
|
var _PreviewCardTrigger = require("./trigger/PreviewCardTrigger");
|
|
51
69
|
var _PreviewCardPositioner = require("./positioner/PreviewCardPositioner");
|
|
52
70
|
var _PreviewCardPopup = require("./popup/PreviewCardPopup");
|
|
53
71
|
var _PreviewCardArrow = require("./arrow/PreviewCardArrow");
|
|
54
|
-
var _PreviewCardBackdrop = require("./backdrop/PreviewCardBackdrop");
|
|
72
|
+
var _PreviewCardBackdrop = require("./backdrop/PreviewCardBackdrop");
|
|
73
|
+
var _PreviewCardViewport = require("./viewport/PreviewCardViewport");
|
|
74
|
+
var _PreviewCardHandle = require("./store/PreviewCardHandle");
|
|
@@ -8,7 +8,7 @@ import type { TransitionStatus } from "../../utils/useTransitionStatus.js";
|
|
|
8
8
|
*
|
|
9
9
|
* Documentation: [Base UI Preview Card](https://base-ui.com/react/components/preview-card)
|
|
10
10
|
*/
|
|
11
|
-
export declare const PreviewCardPopup: React.ForwardRefExoticComponent<PreviewCardPopupProps & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
export declare const PreviewCardPopup: React.ForwardRefExoticComponent<Omit<PreviewCardPopupProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
12
|
export interface PreviewCardPopupState {
|
|
13
13
|
/**
|
|
14
14
|
* Whether the preview card is currently open.
|
|
@@ -16,6 +16,7 @@ export interface PreviewCardPopupState {
|
|
|
16
16
|
open: boolean;
|
|
17
17
|
side: Side;
|
|
18
18
|
align: Align;
|
|
19
|
+
instant: 'dismiss' | 'focus' | undefined;
|
|
19
20
|
transitionStatus: TransitionStatus;
|
|
20
21
|
}
|
|
21
22
|
export interface PreviewCardPopupProps extends BaseUIComponentProps<'div', PreviewCardPopup.State> {}
|
|
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.PreviewCardPopup = void 0;
|
|
9
9
|
var React = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _useStableCallback = require("@base-ui/utils/useStableCallback");
|
|
10
11
|
var _PreviewCardContext = require("../root/PreviewCardContext");
|
|
11
12
|
var _PreviewCardPositionerContext = require("../positioner/PreviewCardPositionerContext");
|
|
12
13
|
var _popupStateMapping = require("../../utils/popupStateMapping");
|
|
@@ -14,6 +15,7 @@ var _stateAttributesMapping = require("../../utils/stateAttributesMapping");
|
|
|
14
15
|
var _useOpenChangeComplete = require("../../utils/useOpenChangeComplete");
|
|
15
16
|
var _useRenderElement = require("../../utils/useRenderElement");
|
|
16
17
|
var _getDisabledMountTransitionStyles = require("../../utils/getDisabledMountTransitionStyles");
|
|
18
|
+
var _floatingUiReact = require("../../floating-ui-react");
|
|
17
19
|
const stateAttributesMapping = {
|
|
18
20
|
..._popupStateMapping.popupStateMapping,
|
|
19
21
|
..._stateAttributesMapping.transitionStatusMapping
|
|
@@ -31,35 +33,39 @@ const PreviewCardPopup = exports.PreviewCardPopup = /*#__PURE__*/React.forwardRe
|
|
|
31
33
|
render,
|
|
32
34
|
...elementProps
|
|
33
35
|
} = componentProps;
|
|
34
|
-
const
|
|
35
|
-
open,
|
|
36
|
-
transitionStatus,
|
|
37
|
-
popupRef,
|
|
38
|
-
onOpenChangeComplete,
|
|
39
|
-
popupProps
|
|
40
|
-
} = (0, _PreviewCardContext.usePreviewCardRootContext)();
|
|
36
|
+
const store = (0, _PreviewCardContext.usePreviewCardRootContext)();
|
|
41
37
|
const {
|
|
42
38
|
side,
|
|
43
39
|
align
|
|
44
40
|
} = (0, _PreviewCardPositionerContext.usePreviewCardPositionerContext)();
|
|
41
|
+
const open = store.useState('open');
|
|
42
|
+
const instantType = store.useState('instantType');
|
|
43
|
+
const transitionStatus = store.useState('transitionStatus');
|
|
44
|
+
const popupProps = store.useState('popupProps');
|
|
45
|
+
const floatingContext = store.useState('floatingRootContext');
|
|
45
46
|
(0, _useOpenChangeComplete.useOpenChangeComplete)({
|
|
46
47
|
open,
|
|
47
|
-
ref: popupRef,
|
|
48
|
+
ref: store.context.popupRef,
|
|
48
49
|
onComplete() {
|
|
49
50
|
if (open) {
|
|
50
|
-
onOpenChangeComplete?.(true);
|
|
51
|
+
store.context.onOpenChangeComplete?.(true);
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
54
|
});
|
|
55
|
+
const getCloseDelay = (0, _useStableCallback.useStableCallback)(() => store.context.closeDelayRef.current);
|
|
56
|
+
(0, _floatingUiReact.useHoverFloatingInteraction)(floatingContext, {
|
|
57
|
+
closeDelay: getCloseDelay
|
|
58
|
+
});
|
|
54
59
|
const state = React.useMemo(() => ({
|
|
55
60
|
open,
|
|
56
61
|
side,
|
|
57
62
|
align,
|
|
63
|
+
instant: instantType,
|
|
58
64
|
transitionStatus
|
|
59
|
-
}), [open, side, align, transitionStatus]);
|
|
65
|
+
}), [open, side, align, instantType, transitionStatus]);
|
|
60
66
|
const element = (0, _useRenderElement.useRenderElement)('div', componentProps, {
|
|
61
|
-
ref: [popupRef, forwardedRef],
|
|
62
67
|
state,
|
|
68
|
+
ref: [forwardedRef, store.context.popupRef, store.useStateSetter('popupElement')],
|
|
63
69
|
props: [popupProps, (0, _getDisabledMountTransitionStyles.getDisabledMountTransitionStyles)(transitionStatus), elementProps],
|
|
64
70
|
stateAttributesMapping
|
|
65
71
|
});
|
|
@@ -7,7 +7,7 @@ import { FloatingPortalLite } from "../../utils/FloatingPortalLite.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Preview Card](https://base-ui.com/react/components/preview-card)
|
|
9
9
|
*/
|
|
10
|
-
export declare const PreviewCardPortal: React.ForwardRefExoticComponent<PreviewCardPortalProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export declare const PreviewCardPortal: React.ForwardRefExoticComponent<Omit<PreviewCardPortalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export declare namespace PreviewCardPortal {
|
|
12
12
|
interface State {}
|
|
13
13
|
}
|
|
@@ -23,9 +23,8 @@ const PreviewCardPortal = exports.PreviewCardPortal = /*#__PURE__*/React.forward
|
|
|
23
23
|
keepMounted = false,
|
|
24
24
|
...portalProps
|
|
25
25
|
} = props;
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
} = (0, _PreviewCardContext.usePreviewCardRootContext)();
|
|
26
|
+
const store = (0, _PreviewCardContext.usePreviewCardRootContext)();
|
|
27
|
+
const mounted = store.useState('mounted');
|
|
29
28
|
const shouldRender = mounted || keepMounted;
|
|
30
29
|
if (!shouldRender) {
|
|
31
30
|
return null;
|
|
@@ -7,7 +7,7 @@ import type { BaseUIComponentProps } from "../../utils/types.js";
|
|
|
7
7
|
*
|
|
8
8
|
* Documentation: [Base UI Preview Card](https://base-ui.com/react/components/preview-card)
|
|
9
9
|
*/
|
|
10
|
-
export declare const PreviewCardPositioner: React.ForwardRefExoticComponent<PreviewCardPositionerProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
export declare const PreviewCardPositioner: React.ForwardRefExoticComponent<Omit<PreviewCardPositionerProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
11
11
|
export interface PreviewCardPositionerState {
|
|
12
12
|
/**
|
|
13
13
|
* Whether the preview card is currently open.
|
|
@@ -16,6 +16,7 @@ export interface PreviewCardPositionerState {
|
|
|
16
16
|
side: Side;
|
|
17
17
|
align: Align;
|
|
18
18
|
anchorHidden: boolean;
|
|
19
|
+
instant: 'dismiss' | 'focus' | undefined;
|
|
19
20
|
}
|
|
20
21
|
export interface PreviewCardPositionerProps extends useAnchorPositioning.SharedParameters, BaseUIComponentProps<'div', PreviewCardPositioner.State> {}
|
|
21
22
|
export declare namespace PreviewCardPositioner {
|