@digdir/designsystemet-react 1.0.0-next.15 → 1.0.0-next.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Accordion/index.js +2 -2
- package/dist/cjs/components/Breadcrumbs/BreadcrumbsItem.js +11 -0
- package/dist/cjs/components/Breadcrumbs/BreadcrumbsLink.js +12 -0
- package/dist/cjs/components/Breadcrumbs/BreadcrumbsList.js +23 -0
- package/dist/cjs/components/Breadcrumbs/BreadcrumbsNav.js +11 -0
- package/dist/cjs/components/Breadcrumbs/BreadcrumbsRoot.js +11 -0
- package/dist/cjs/components/Breadcrumbs/index.js +43 -0
- package/dist/cjs/components/Divider/Divider.js +3 -4
- package/dist/cjs/components/DropdownMenu/DropdownMenuContent.js +2 -2
- package/dist/cjs/components/Modal/ModalDialog.js +1 -2
- package/dist/cjs/components/Modal/ModalHeader.js +2 -2
- package/dist/cjs/components/Modal/index.js +1 -0
- package/dist/cjs/components/Popover/PopoverContent.js +3 -4
- package/dist/cjs/components/Tabs/TabList.js +1 -1
- package/dist/cjs/components/ToggleGroup/ToggleGroupRoot.js +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js +3 -4
- package/dist/cjs/components/form/Checkbox/{Group/Group.js → CheckboxGroup.js} +3 -2
- package/dist/cjs/components/form/Checkbox/index.js +3 -3
- package/dist/cjs/components/form/Checkbox/useCheckbox.js +2 -2
- package/dist/cjs/components/form/Combobox/Combobox.js +2 -2
- package/dist/cjs/components/form/Combobox/Option/Description.js +1 -2
- package/dist/cjs/components/form/Combobox/internal/ComboboxChips.js +1 -2
- package/dist/cjs/components/form/Combobox/internal/ComboboxClearButton.js +1 -2
- package/dist/cjs/components/form/Combobox/internal/ComboboxError.js +1 -2
- package/dist/cjs/components/form/Combobox/internal/ComboboxInput.js +5 -6
- package/dist/cjs/components/form/Combobox/internal/ComboboxLabel.js +1 -2
- package/dist/cjs/components/form/Combobox/internal/ComboboxNative.js +1 -2
- package/dist/cjs/components/form/Combobox/useCombobox.js +5 -0
- package/dist/cjs/components/form/Combobox/useFloatingCombobox.js +4 -4
- package/dist/cjs/components/form/NativeSelect/NativeSelect.js +2 -2
- package/dist/cjs/components/form/NativeSelect/useNativeSelect.js +19 -1
- package/dist/cjs/components/form/Radio/{Group/Group.js → RadioGroup.js} +3 -3
- package/dist/cjs/components/form/Radio/index.js +3 -3
- package/dist/cjs/components/form/Radio/useRadio.js +2 -2
- package/dist/cjs/components/form/Switch/useSwitch.js +2 -2
- package/dist/cjs/index.js +50 -36
- package/dist/cjs/node_modules/@floating-ui/core/dist/floating-ui.core.js +23 -9
- package/dist/cjs/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +39 -24
- package/dist/cjs/node_modules/@floating-ui/react/dist/floating-ui.react.js +848 -729
- package/dist/cjs/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +1 -1
- package/dist/cjs/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +68 -0
- package/dist/cjs/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +11 -0
- package/dist/cjs/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +97 -45
- package/dist/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +17 -6
- package/dist/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +14 -5
- package/dist/cjs/node_modules/@radix-ui/react-compose-refs/dist/index.js +10 -14
- package/dist/cjs/node_modules/@radix-ui/react-slot/dist/index.js +88 -69
- package/dist/cjs/node_modules/@tanstack/virtual-core/dist/esm/index.js +134 -62
- package/dist/cjs/node_modules/@tanstack/virtual-core/dist/esm/utils.js +3 -5
- package/dist/cjs/utilities/AnimateHeight/AnimateHeight.js +4 -1
- package/dist/cjs/utilities/RovingFocus/RovingFocusItem.js +34 -6
- package/dist/cjs/utilities/RovingFocus/RovingFocusRoot.js +3 -1
- package/dist/cjs/utilities/RovingFocus/useRovingFocus.js +2 -1
- package/dist/esm/components/Accordion/index.js +2 -2
- package/dist/esm/components/Box/Box.js +2 -2
- package/dist/esm/components/Breadcrumbs/BreadcrumbsItem.js +9 -0
- package/dist/esm/components/Breadcrumbs/BreadcrumbsLink.js +10 -0
- package/dist/esm/components/Breadcrumbs/BreadcrumbsList.js +21 -0
- package/dist/esm/components/Breadcrumbs/BreadcrumbsNav.js +9 -0
- package/dist/esm/components/Breadcrumbs/BreadcrumbsRoot.js +9 -0
- package/dist/esm/components/Breadcrumbs/index.js +36 -0
- package/dist/esm/components/Button/Button.js +2 -2
- package/dist/esm/components/Card/Card.js +2 -2
- package/dist/esm/components/Card/CardContent.js +2 -2
- package/dist/esm/components/Card/CardFooter.js +2 -2
- package/dist/esm/components/Card/CardHeader.js +2 -2
- package/dist/esm/components/Card/CardMedia.js +2 -2
- package/dist/esm/components/Divider/Divider.js +3 -4
- package/dist/esm/components/DropdownMenu/DropdownMenuContent.js +2 -2
- package/dist/esm/components/DropdownMenu/DropdownMenuTrigger.js +2 -2
- package/dist/esm/components/ErrorSummary/ErrorSummaryRoot.js +2 -2
- package/dist/esm/components/Link/Link.js +2 -2
- package/dist/esm/components/List/ListItem.js +2 -2
- package/dist/esm/components/List/ListRoot.js +2 -2
- package/dist/esm/components/List/Lists.js +3 -3
- package/dist/esm/components/Modal/ModaContent.js +2 -2
- package/dist/esm/components/Modal/ModalDialog.js +5 -6
- package/dist/esm/components/Modal/ModalFooter.js +2 -2
- package/dist/esm/components/Modal/ModalHeader.js +4 -4
- package/dist/esm/components/Modal/ModalTrigger.js +2 -2
- package/dist/esm/components/Modal/index.js +1 -1
- package/dist/esm/components/Pagination/PaginationContent.js +2 -2
- package/dist/esm/components/Pagination/PaginationItem.js +2 -2
- package/dist/esm/components/Pagination/PaginationRoot.js +2 -2
- package/dist/esm/components/Popover/PopoverContent.js +2 -3
- package/dist/esm/components/Popover/PopoverTrigger.js +2 -2
- package/dist/esm/components/Tabs/TabList.js +1 -1
- package/dist/esm/components/ToggleGroup/ToggleGroupRoot.js +1 -1
- package/dist/esm/components/Tooltip/Tooltip.js +2 -3
- package/dist/esm/components/Typography/ErrorMessage/ErrorMessage.js +2 -2
- package/dist/esm/components/Typography/Heading/Heading.js +2 -2
- package/dist/esm/components/Typography/Ingress/Ingress.js +2 -2
- package/dist/esm/components/Typography/Label/Label.js +2 -2
- package/dist/esm/components/Typography/Paragraph/Paragraph.js +2 -2
- package/dist/esm/components/form/Checkbox/{Group/Group.js → CheckboxGroup.js} +3 -2
- package/dist/esm/components/form/Checkbox/index.js +1 -1
- package/dist/esm/components/form/Checkbox/useCheckbox.js +1 -1
- package/dist/esm/components/form/Combobox/Combobox.js +2 -2
- package/dist/esm/components/form/Combobox/Custom.js +2 -2
- package/dist/esm/components/form/Combobox/Option/Description.js +1 -2
- package/dist/esm/components/form/Combobox/internal/ComboboxChips.js +1 -2
- package/dist/esm/components/form/Combobox/internal/ComboboxClearButton.js +1 -2
- package/dist/esm/components/form/Combobox/internal/ComboboxError.js +1 -2
- package/dist/esm/components/form/Combobox/internal/ComboboxInput.js +5 -6
- package/dist/esm/components/form/Combobox/internal/ComboboxLabel.js +1 -2
- package/dist/esm/components/form/Combobox/internal/ComboboxNative.js +1 -2
- package/dist/esm/components/form/Combobox/useCombobox.js +5 -0
- package/dist/esm/components/form/Combobox/useFloatingCombobox.js +2 -2
- package/dist/esm/components/form/NativeSelect/NativeSelect.js +2 -2
- package/dist/esm/components/form/NativeSelect/useNativeSelect.js +19 -1
- package/dist/esm/components/form/Radio/{Group/Group.js → RadioGroup.js} +3 -3
- package/dist/esm/components/form/Radio/index.js +1 -1
- package/dist/esm/components/form/Radio/useRadio.js +1 -1
- package/dist/esm/components/form/Switch/useSwitch.js +1 -1
- package/dist/esm/index.js +9 -2
- package/dist/esm/node_modules/@floating-ui/core/dist/floating-ui.core.js +24 -10
- package/dist/esm/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +41 -26
- package/dist/esm/node_modules/@floating-ui/react/dist/floating-ui.react.js +830 -712
- package/dist/esm/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +1 -1
- package/dist/esm/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +57 -0
- package/dist/esm/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +9 -0
- package/dist/esm/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +96 -45
- package/dist/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +17 -7
- package/dist/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +14 -5
- package/dist/esm/node_modules/@radix-ui/react-compose-refs/dist/index.js +10 -14
- package/dist/esm/node_modules/@radix-ui/react-slot/dist/index.js +71 -71
- package/dist/esm/node_modules/@tanstack/virtual-core/dist/esm/index.js +134 -62
- package/dist/esm/node_modules/@tanstack/virtual-core/dist/esm/utils.js +3 -5
- package/dist/esm/utilities/AnimateHeight/AnimateHeight.js +4 -1
- package/dist/esm/utilities/RovingFocus/RovingFocusItem.js +36 -8
- package/dist/esm/utilities/RovingFocus/RovingFocusRoot.js +5 -3
- package/dist/esm/utilities/RovingFocus/useRovingFocus.js +2 -1
- package/dist/types/components/Accordion/AccordionHeading.d.ts +1 -1
- package/dist/types/components/Accordion/AccordionHeading.d.ts.map +1 -1
- package/dist/types/components/Accordion/AccordionItem.d.ts +2 -2
- package/dist/types/components/Accordion/AccordionItem.d.ts.map +1 -1
- package/dist/types/components/Accordion/AccordionRoot.d.ts +2 -2
- package/dist/types/components/Accordion/AccordionRoot.d.ts.map +1 -1
- package/dist/types/components/Accordion/index.d.ts +2 -2
- package/dist/types/components/Accordion/index.d.ts.map +1 -1
- package/dist/types/components/Alert/Alert.d.ts +3 -3
- package/dist/types/components/Alert/Alert.d.ts.map +1 -1
- package/dist/types/components/Badge/Badge.d.ts +93 -0
- package/dist/types/components/Badge/Badge.d.ts.map +1 -0
- package/dist/types/components/Badge/index.d.ts +3 -0
- package/dist/types/components/Badge/index.d.ts.map +1 -0
- package/dist/types/components/Box/Box.d.ts +5 -5
- package/dist/types/components/Box/Box.d.ts.map +1 -1
- package/dist/types/components/Breadcrumbs/BreadcrumbsItem.d.ts +4 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsItem.d.ts.map +1 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts +10 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts.map +1 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsList.d.ts +4 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsList.d.ts.map +1 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsNav.d.ts +14 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsNav.d.ts.map +1 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsRoot.d.ts +16 -0
- package/dist/types/components/Breadcrumbs/BreadcrumbsRoot.d.ts.map +1 -0
- package/dist/types/components/Breadcrumbs/index.d.ts +44 -0
- package/dist/types/components/Breadcrumbs/index.d.ts.map +1 -0
- package/dist/types/components/Button/Button.d.ts +6 -6
- package/dist/types/components/Button/Button.d.ts.map +1 -1
- package/dist/types/components/Card/Card.d.ts +3 -3
- package/dist/types/components/Card/Card.d.ts.map +1 -1
- package/dist/types/components/Card/CardContent.d.ts +1 -1
- package/dist/types/components/Card/CardContent.d.ts.map +1 -1
- package/dist/types/components/Card/CardFooter.d.ts +1 -1
- package/dist/types/components/Card/CardFooter.d.ts.map +1 -1
- package/dist/types/components/Card/CardHeader.d.ts +1 -1
- package/dist/types/components/Card/CardHeader.d.ts.map +1 -1
- package/dist/types/components/Card/CardMedia.d.ts +1 -1
- package/dist/types/components/Card/CardMedia.d.ts.map +1 -1
- package/dist/types/components/Card/index.d.ts.map +1 -1
- package/dist/types/components/Chip/Group/Group.d.ts +1 -1
- package/dist/types/components/Chip/Removable/Removable.d.ts +1 -1
- package/dist/types/components/Chip/Toggle/Toggle.d.ts +3 -3
- package/dist/types/components/Chip/Toggle/Toggle.d.ts.map +1 -1
- package/dist/types/components/Divider/Divider.d.ts +1 -1
- package/dist/types/components/Divider/Divider.d.ts.map +1 -1
- package/dist/types/components/DropdownMenu/DropdownMenuContent.d.ts.map +1 -1
- package/dist/types/components/DropdownMenu/DropdownMenuGroup.d.ts.map +1 -1
- package/dist/types/components/DropdownMenu/DropdownMenuTrigger.d.ts +7 -7
- package/dist/types/components/DropdownMenu/index.d.ts.map +1 -1
- package/dist/types/components/ErrorSummary/ErrorSummaryRoot.d.ts +1 -1
- package/dist/types/components/ErrorSummary/index.d.ts.map +1 -1
- package/dist/types/components/Link/Link.d.ts +4 -4
- package/dist/types/components/Link/Link.d.ts.map +1 -1
- package/dist/types/components/List/ListHeading.d.ts +4 -4
- package/dist/types/components/List/ListItem.d.ts +1 -1
- package/dist/types/components/List/ListItem.d.ts.map +1 -1
- package/dist/types/components/List/ListRoot.d.ts +2 -2
- package/dist/types/components/List/ListRoot.d.ts.map +1 -1
- package/dist/types/components/List/Lists.d.ts +2 -2
- package/dist/types/components/List/Lists.d.ts.map +1 -1
- package/dist/types/components/Modal/ModaContent.d.ts +1 -1
- package/dist/types/components/Modal/ModaContent.d.ts.map +1 -1
- package/dist/types/components/Modal/ModalDialog.d.ts +4 -4
- package/dist/types/components/Modal/ModalDialog.d.ts.map +1 -1
- package/dist/types/components/Modal/ModalFooter.d.ts +1 -1
- package/dist/types/components/Modal/ModalFooter.d.ts.map +1 -1
- package/dist/types/components/Modal/ModalHeader.d.ts +19 -3
- package/dist/types/components/Modal/ModalHeader.d.ts.map +1 -1
- package/dist/types/components/Modal/ModalTrigger.d.ts +7 -7
- package/dist/types/components/Modal/index.d.ts +1 -1
- package/dist/types/components/Modal/index.d.ts.map +1 -1
- package/dist/types/components/Modal/useModalState.d.ts.map +1 -1
- package/dist/types/components/Pagination/Pagination.d.ts +4 -4
- package/dist/types/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/types/components/Pagination/PaginationButton.d.ts +1 -1
- package/dist/types/components/Pagination/PaginationButton.d.ts.map +1 -1
- package/dist/types/components/Pagination/PaginationContent.d.ts +1 -1
- package/dist/types/components/Pagination/PaginationContent.d.ts.map +1 -1
- package/dist/types/components/Pagination/PaginationItem.d.ts +1 -1
- package/dist/types/components/Pagination/PaginationItem.d.ts.map +1 -1
- package/dist/types/components/Pagination/PaginationNextPrev.d.ts +2 -2
- package/dist/types/components/Pagination/PaginationRoot.d.ts +3 -3
- package/dist/types/components/Pagination/PaginationRoot.d.ts.map +1 -1
- package/dist/types/components/Pagination/index.d.ts.map +1 -1
- package/dist/types/components/Popover/PopoverContent.d.ts.map +1 -1
- package/dist/types/components/Popover/PopoverRoot.d.ts +10 -10
- package/dist/types/components/Popover/PopoverRoot.d.ts.map +1 -1
- package/dist/types/components/Popover/PopoverTrigger.d.ts +7 -7
- package/dist/types/components/Popover/index.d.ts.map +1 -1
- package/dist/types/components/SkipLink/SkipLink.d.ts.map +1 -1
- package/dist/types/components/Spinner/Spinner.d.ts.map +1 -1
- package/dist/types/components/Table/Table.d.ts +4 -4
- package/dist/types/components/Table/Table.d.ts.map +1 -1
- package/dist/types/components/Table/TableHeaderCell.d.ts +3 -3
- package/dist/types/components/Table/TableHeaderCell.d.ts.map +1 -1
- package/dist/types/components/Table/index.d.ts.map +1 -1
- package/dist/types/components/Tabs/TabList.d.ts.map +1 -1
- package/dist/types/components/Tabs/TabsRoot.d.ts +4 -4
- package/dist/types/components/Tabs/TabsRoot.d.ts.map +1 -1
- package/dist/types/components/Tag/Tag.d.ts +1 -1
- package/dist/types/components/Tag/Tag.d.ts.map +1 -1
- package/dist/types/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.d.ts +1 -1
- package/dist/types/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.d.ts.map +1 -1
- package/dist/types/components/ToggleGroup/ToggleGroupRoot.d.ts +5 -5
- package/dist/types/components/ToggleGroup/ToggleGroupRoot.d.ts.map +1 -1
- package/dist/types/components/ToggleGroup/index.d.ts.map +1 -1
- package/dist/types/components/Tooltip/Tooltip.d.ts +4 -4
- package/dist/types/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/types/components/Typography/ErrorMessage/ErrorMessage.d.ts +4 -4
- package/dist/types/components/Typography/ErrorMessage/ErrorMessage.d.ts.map +1 -1
- package/dist/types/components/Typography/Heading/Heading.d.ts +4 -4
- package/dist/types/components/Typography/Heading/Heading.d.ts.map +1 -1
- package/dist/types/components/Typography/Ingress/Ingress.d.ts +3 -3
- package/dist/types/components/Typography/Ingress/Ingress.d.ts.map +1 -1
- package/dist/types/components/Typography/Label/Label.d.ts +4 -4
- package/dist/types/components/Typography/Label/Label.d.ts.map +1 -1
- package/dist/types/components/Typography/Paragraph/Paragraph.d.ts +4 -4
- package/dist/types/components/Typography/Paragraph/Paragraph.d.ts.map +1 -1
- package/dist/types/components/form/CharacterCounter.d.ts.map +1 -1
- package/dist/types/components/form/Checkbox/Checkbox.d.ts +1 -1
- package/dist/types/components/form/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/types/components/form/Checkbox/{Group/Group.d.ts → CheckboxGroup.d.ts} +5 -5
- package/dist/types/components/form/Checkbox/CheckboxGroup.d.ts.map +1 -0
- package/dist/types/components/form/Checkbox/index.d.ts +2 -2
- package/dist/types/components/form/Checkbox/index.d.ts.map +1 -1
- package/dist/types/components/form/Combobox/Combobox.d.ts +42 -42
- package/dist/types/components/form/Combobox/Combobox.d.ts.map +1 -1
- package/dist/types/components/form/Combobox/ComboboxIdContext.d.ts.map +1 -1
- package/dist/types/components/form/Combobox/Empty.d.ts +1 -1
- package/dist/types/components/form/Combobox/Empty.d.ts.map +1 -1
- package/dist/types/components/form/Combobox/Option/Option.d.ts +2 -2
- package/dist/types/components/form/Combobox/Option/Option.d.ts.map +1 -1
- package/dist/types/components/form/Combobox/Option/useComboboxOption.d.ts +1 -1
- package/dist/types/components/form/Combobox/index.d.ts +3 -0
- package/dist/types/components/form/Combobox/index.d.ts.map +1 -1
- package/dist/types/components/form/Combobox/useCombobox.d.ts.map +1 -1
- package/dist/types/components/form/Combobox/useFloatingCombobox.d.ts +9 -9
- package/dist/types/components/form/Fieldset/Fieldset.d.ts +3 -3
- package/dist/types/components/form/Fieldset/Fieldset.d.ts.map +1 -1
- package/dist/types/components/form/Fieldset/useFieldset.d.ts +2 -2
- package/dist/types/components/form/NativeSelect/NativeSelect.d.ts +6 -6
- package/dist/types/components/form/NativeSelect/NativeSelect.d.ts.map +1 -1
- package/dist/types/components/form/NativeSelect/useNativeSelect.d.ts +1 -1
- package/dist/types/components/form/NativeSelect/useNativeSelect.d.ts.map +1 -1
- package/dist/types/components/form/Radio/{Group/Group.d.ts → RadioGroup.d.ts} +7 -7
- package/dist/types/components/form/Radio/RadioGroup.d.ts.map +1 -0
- package/dist/types/components/form/Radio/index.d.ts +2 -2
- package/dist/types/components/form/Radio/index.d.ts.map +1 -1
- package/dist/types/components/form/Radio/useRadio.d.ts.map +1 -1
- package/dist/types/components/form/Search/Search.d.ts +7 -7
- package/dist/types/components/form/Search/Search.d.ts.map +1 -1
- package/dist/types/components/form/Switch/Switch.d.ts +2 -2
- package/dist/types/components/form/Switch/Switch.d.ts.map +1 -1
- package/dist/types/components/form/Textarea/Textarea.d.ts +7 -7
- package/dist/types/components/form/Textarea/Textarea.d.ts.map +1 -1
- package/dist/types/components/form/Textfield/Textfield.d.ts +7 -7
- package/dist/types/components/form/Textfield/Textfield.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/components/index.d.ts.map +1 -1
- package/dist/types/utilities/AnimateHeight/AnimateHeight.d.ts.map +1 -1
- package/dist/types/utilities/RovingFocus/RovingFocusItem.d.ts +2 -2
- package/dist/types/utilities/RovingFocus/RovingFocusItem.d.ts.map +1 -1
- package/dist/types/utilities/RovingFocus/RovingFocusRoot.d.ts +10 -2
- package/dist/types/utilities/RovingFocus/RovingFocusRoot.d.ts.map +1 -1
- package/dist/types/utilities/RovingFocus/useRovingFocus.d.ts +11 -10
- package/dist/types/utilities/RovingFocus/useRovingFocus.d.ts.map +1 -1
- package/package.json +18 -8
- package/dist/cjs/node_modules/@babel/runtime/helpers/esm/extends.js +0 -19
- package/dist/esm/node_modules/@babel/runtime/helpers/esm/extends.js +0 -17
- package/dist/types/components/form/Checkbox/Group/Group.d.ts.map +0 -1
- package/dist/types/components/form/Checkbox/Group/index.d.ts +0 -2
- package/dist/types/components/form/Checkbox/Group/index.d.ts.map +0 -1
- package/dist/types/components/form/Radio/Group/Group.d.ts.map +0 -1
- package/dist/types/components/form/Radio/Group/index.d.ts +0 -2
- package/dist/types/components/form/Radio/Group/index.d.ts.map +0 -1
|
@@ -7,6 +7,5 @@ const ComboboxOptionDescription = forwardRef(({ children, className, ...rest },
|
|
|
7
7
|
return (jsx("span", { className: clsx('ds-combobox__option__description', className), ref: ref, ...rest, children: children }));
|
|
8
8
|
});
|
|
9
9
|
ComboboxOptionDescription.displayName = 'ComboboxOptionDescription';
|
|
10
|
-
var ComboboxOptionDescription$1 = ComboboxOptionDescription;
|
|
11
10
|
|
|
12
|
-
export { ComboboxOptionDescription
|
|
11
|
+
export { ComboboxOptionDescription as default };
|
|
@@ -29,6 +29,5 @@ const ComboboxClearButton = forwardRef((props, ref) => {
|
|
|
29
29
|
}, type: 'button', "aria-label": clearButtonLabel, children: jsx(XMarkIcon, { fontSize: '1.5em', title: 'Clear selection' }) }));
|
|
30
30
|
});
|
|
31
31
|
ComboboxClearButton.displayName = 'ComboboxClearButton';
|
|
32
|
-
var ComboboxClearButton$1 = ComboboxClearButton;
|
|
33
32
|
|
|
34
|
-
export { ComboboxClearButton
|
|
33
|
+
export { ComboboxClearButton as default };
|
|
@@ -6,6 +6,5 @@ const ComboboxError = ({ size, error, formFieldProps }) => {
|
|
|
6
6
|
return (jsx("div", { className: 'ds-combobox__error-message', id: formFieldProps.errorId, "aria-live": 'polite', "aria-relevant": 'additions removals', children: error && jsx(ErrorMessage, { size: size, children: error }) }));
|
|
7
7
|
};
|
|
8
8
|
ComboboxError.displayName = 'ComboboxError';
|
|
9
|
-
var ComboboxError$1 = ComboboxError;
|
|
10
9
|
|
|
11
|
-
export { ComboboxError
|
|
10
|
+
export { ComboboxError as default };
|
|
@@ -31,14 +31,14 @@ const ComboboxInput = ({ hideClearButton, listId, error, hideChips, handleKeyDow
|
|
|
31
31
|
setInputValue(value);
|
|
32
32
|
setActiveIndex(0);
|
|
33
33
|
// check if input value is the same as a label, if so, select it
|
|
34
|
-
Object.values(options)
|
|
34
|
+
for (const option of Object.values(options)) {
|
|
35
35
|
if (option.label.toLowerCase() === value.toLowerCase()) {
|
|
36
36
|
/* if option is already selected, discard selecting it, since it would de-select */
|
|
37
37
|
if (selectedOptions[prefix(option.value)])
|
|
38
|
-
|
|
39
|
-
handleSelectOption({ option
|
|
38
|
+
continue;
|
|
39
|
+
handleSelectOption({ option });
|
|
40
40
|
}
|
|
41
|
-
}
|
|
41
|
+
}
|
|
42
42
|
};
|
|
43
43
|
const showClearButton = !hideClearButton && Object.keys(selectedOptions).length > 0;
|
|
44
44
|
/* Props from floating-ui */
|
|
@@ -76,6 +76,5 @@ const ComboboxInput = ({ hideClearButton, listId, error, hideChips, handleKeyDow
|
|
|
76
76
|
} }) })] }), showClearButton && jsx(ComboboxClearButton, { ref: clearButtonRef }), jsx("div", { className: 'ds-combobox__arrow', children: open ? (jsx(ChevronUpIcon, { title: 'arrow up', fontSize: '1.5em' })) : (jsx(ChevronDownIcon, { title: 'arrow down', fontSize: '1.5em' })) })] }) }));
|
|
77
77
|
};
|
|
78
78
|
ComboboxInput.displayName = 'ComboboxInput';
|
|
79
|
-
var ComboboxInput$1 = ComboboxInput;
|
|
80
79
|
|
|
81
|
-
export { ComboboxInput
|
|
80
|
+
export { ComboboxInput as default };
|
|
@@ -9,6 +9,5 @@ const ComboboxLabel = ({ label, description, hideLabel, size, readOnly, formFiel
|
|
|
9
9
|
return (jsxs(Fragment, { children: [label && (jsxs(Label, { size: size, htmlFor: formFieldProps.inputProps.id, className: clsx('ds-combobox__label', hideLabel && `ds-sr-only`), children: [readOnly && (jsx(PadlockLockedFillIcon, { "aria-hidden": true, className: 'ds-combobox__readonly__icon' })), label] })), description && (jsx(Paragraph, { asChild: true, size: size, children: jsx("div", { id: formFieldProps.descriptionId, className: clsx('ds-combobox__description', hideLabel && `ds-sr-only`), children: description }) }))] }));
|
|
10
10
|
};
|
|
11
11
|
ComboboxLabel.displayName = 'ComboboxLabel';
|
|
12
|
-
var ComboboxLabel$1 = ComboboxLabel;
|
|
13
12
|
|
|
14
|
-
export { ComboboxLabel
|
|
13
|
+
export { ComboboxLabel as default };
|
|
@@ -7,6 +7,5 @@ const ComboboxNative = ({ selectedOptions, multiple, name, }) => {
|
|
|
7
7
|
return (jsx("select", { name: name, multiple: multiple, style: { display: 'none' }, value: multiple ? VALUE : VALUE[0], onChange: () => { }, children: VALUE.map((value) => (jsx("option", { value: value }, value))) }));
|
|
8
8
|
};
|
|
9
9
|
ComboboxNative.displayName = 'ComboboxNative';
|
|
10
|
-
var ComboboxNative$1 = ComboboxNative;
|
|
11
10
|
|
|
12
|
-
export { ComboboxNative
|
|
11
|
+
export { ComboboxNative as default };
|
|
@@ -34,6 +34,7 @@ function useCombobox({ children, inputValue, multiple, filter = (inputValue, opt
|
|
|
34
34
|
return result;
|
|
35
35
|
}, [children]);
|
|
36
36
|
const options = useMemo(() => {
|
|
37
|
+
const values = [];
|
|
37
38
|
const allOptions = {};
|
|
38
39
|
optionsChildren.map((child) => {
|
|
39
40
|
const props = child.props;
|
|
@@ -51,6 +52,10 @@ function useCombobox({ children, inputValue, multiple, filter = (inputValue, opt
|
|
|
51
52
|
});
|
|
52
53
|
label = childrenLabel;
|
|
53
54
|
}
|
|
55
|
+
if (values.includes(props.value)) {
|
|
56
|
+
console.warn(`Combobox has multiple options with the same value: ${props.value}`);
|
|
57
|
+
}
|
|
58
|
+
values.push(props.value);
|
|
54
59
|
allOptions[prefix(String(props.value))] = {
|
|
55
60
|
value: String(props.value),
|
|
56
61
|
label,
|
|
@@ -3,8 +3,8 @@ import { useFloating, useRole, useDismiss, useListNavigation, useInteractions }
|
|
|
3
3
|
import { useState } from 'react';
|
|
4
4
|
import { flushSync } from 'react-dom';
|
|
5
5
|
import { useComboboxId, useComboboxIdDispatch } from './ComboboxIdContext.js';
|
|
6
|
-
import { autoUpdate
|
|
7
|
-
import { offset } from '../../../node_modules/@floating-ui/
|
|
6
|
+
import { autoUpdate } from '../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.js';
|
|
7
|
+
import { flip, size, offset } from '../../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js';
|
|
8
8
|
|
|
9
9
|
const useFloatingCombobox = ({ listRef }) => {
|
|
10
10
|
const [open, setOpen] = useState(false);
|
|
@@ -11,8 +11,8 @@ import { Paragraph } from '../../Typography/Paragraph/Paragraph.js';
|
|
|
11
11
|
|
|
12
12
|
const NativeSelect = forwardRef((props, ref) => {
|
|
13
13
|
const { children, disabled = false, label, description, hideLabel = false, error, className, htmlSize = 0, ...rest } = props;
|
|
14
|
-
const { selectProps, descriptionId, errorId, readOnly
|
|
15
|
-
return (jsx(Paragraph, { asChild: true, size: size, children: jsxs("div", { className: clsx('ds-native-select--container', readOnly && 'ds-native-select--readonly', error && 'ds-native-select--error'), children: [label && (jsxs(Label, { weight: 'medium', size: size, htmlFor: selectProps.id, className: clsx('ds-native-select__label', hideLabel && 'ds-sr-only'), children: [readOnly && (jsx(PadlockLockedFillIcon, { "aria-hidden": true, className: 'ds-native-select__readonly__icon' })), label] })), description && (jsx(Paragraph, { asChild: true, size: size, children: jsx("div", { id: descriptionId, className: clsx(`ds-native-select__description`, hideLabel && `ds-sr-only`), children: description }) })), jsx("div", { className: 'ds-native-select__wrapper', children: jsx("select", { disabled: disabled
|
|
14
|
+
const { selectProps, descriptionId, errorId, readOnly, size = 'md', } = useNativeSelect(props);
|
|
15
|
+
return (jsx(Paragraph, { asChild: true, size: size, children: jsxs("div", { className: clsx('ds-native-select--container', readOnly && 'ds-native-select--readonly', error && 'ds-native-select--error'), children: [label && (jsxs(Label, { weight: 'medium', size: size, htmlFor: selectProps.id, className: clsx('ds-native-select__label', hideLabel && 'ds-sr-only'), children: [readOnly && (jsx(PadlockLockedFillIcon, { "aria-hidden": true, className: 'ds-native-select__readonly__icon' })), label] })), description && (jsx(Paragraph, { asChild: true, size: size, children: jsx("div", { id: descriptionId, className: clsx(`ds-native-select__description`, hideLabel && `ds-sr-only`), children: description }) })), jsx("div", { className: 'ds-native-select__wrapper', children: jsx("select", { disabled: disabled, ref: ref, size: htmlSize, className: clsx('ds-native-select', `ds-native-select--${size}`, `ds-focus`, props.multiple && 'ds-native-select--multiple', className), ...omit(['size', 'error', 'errorId'], rest), ...omit(['readOnly', 'disabled'], selectProps), children: children }) }), error && (jsx("div", { id: errorId, className: 'ds-native-select__error-message', "aria-live": 'polite', "aria-relevant": 'additions removals', children: jsx(ErrorMessage, { size: size, children: error }) }))] }) }));
|
|
16
16
|
});
|
|
17
17
|
NativeSelect.displayName = 'NativeSelect';
|
|
18
18
|
|
|
@@ -6,7 +6,7 @@ import { useFormField } from '../useFormField.js';
|
|
|
6
6
|
/** Handles props for `NativeSelect` in context with `Fieldset` */
|
|
7
7
|
const useNativeSelect = (props) => {
|
|
8
8
|
const fieldset = useContext(FieldsetContext);
|
|
9
|
-
const { inputProps: selectProps, readOnly, size = fieldset?.size ?? 'md', ...rest } = useFormField(props, 'select');
|
|
9
|
+
const { inputProps: selectProps, readOnly = false, size = fieldset?.size ?? 'md', ...rest } = useFormField(props, 'select');
|
|
10
10
|
return {
|
|
11
11
|
...rest,
|
|
12
12
|
readOnly,
|
|
@@ -21,6 +21,24 @@ const useNativeSelect = (props) => {
|
|
|
21
21
|
}
|
|
22
22
|
props?.onClick?.(e);
|
|
23
23
|
},
|
|
24
|
+
onKeyDown: (e) => {
|
|
25
|
+
if (readOnly) {
|
|
26
|
+
if (e.key === 'Tab')
|
|
27
|
+
return;
|
|
28
|
+
e.preventDefault();
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
props?.onKeyDown?.(e);
|
|
32
|
+
},
|
|
33
|
+
onMouseDown: (e) => {
|
|
34
|
+
if (readOnly) {
|
|
35
|
+
e.preventDefault();
|
|
36
|
+
if (e.target instanceof HTMLElement)
|
|
37
|
+
e.target.focus();
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
props?.onMouseDown?.(e);
|
|
41
|
+
},
|
|
24
42
|
onChange: (e) => {
|
|
25
43
|
if (readOnly) {
|
|
26
44
|
e.preventDefault();
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx } from 'react/jsx-runtime';
|
|
3
|
-
import { clsx } from '
|
|
3
|
+
import { clsx } from '../../../node_modules/clsx/dist/lite.js';
|
|
4
4
|
import { createContext, forwardRef, useId } from 'react';
|
|
5
|
-
import { Fieldset } from '
|
|
5
|
+
import { Fieldset } from '../Fieldset/Fieldset.js';
|
|
6
6
|
|
|
7
7
|
const RadioGroupContext = createContext(null);
|
|
8
8
|
const RadioGroup = forwardRef(({ onChange, children, value, readOnly, defaultValue, name, size = 'md', required, inline, className, ...rest }, ref) => {
|
|
@@ -13,7 +13,7 @@ const RadioGroup = forwardRef(({ onChange, children, value, readOnly, defaultVal
|
|
|
13
13
|
name: name ?? `radiogroup-name-${nameId}`,
|
|
14
14
|
onChange,
|
|
15
15
|
required,
|
|
16
|
-
}, children: jsx("div", { className: clsx('ds-
|
|
16
|
+
}, children: jsx("div", { className: clsx('ds-radio__group', `ds-radio__group--${size}`, inline && 'ds-radio__group--horizontal'), children: children }) }) }));
|
|
17
17
|
});
|
|
18
18
|
RadioGroup.displayName = 'RadioGroup';
|
|
19
19
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useContext } from 'react';
|
|
3
3
|
import { useFormField } from '../useFormField.js';
|
|
4
|
-
import { RadioGroupContext } from './
|
|
4
|
+
import { RadioGroupContext } from './RadioGroup.js';
|
|
5
5
|
|
|
6
6
|
/** Handles props for `Radio` in context with `Radio.Group` (and `Fieldset`) */
|
|
7
7
|
const useRadio = (props) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useContext } from 'react';
|
|
3
|
+
import { CheckboxGroupContext } from '../Checkbox/CheckboxGroup.js';
|
|
3
4
|
import { useFormField } from '../useFormField.js';
|
|
4
|
-
import { CheckboxGroupContext } from '../Checkbox/Group/Group.js';
|
|
5
5
|
|
|
6
6
|
/** Handles props for `Switch` in context with `Checkbox.Group` (and `Fieldset`) */
|
|
7
7
|
const useSwitch = (props) => {
|
package/dist/esm/index.js
CHANGED
|
@@ -7,6 +7,12 @@ export { useRovingFocus } from './utilities/RovingFocus/useRovingFocus.js';
|
|
|
7
7
|
export { RovingFocusItem, getNextFocusableValue, getPrevFocusableValue } from './utilities/RovingFocus/RovingFocusItem.js';
|
|
8
8
|
export { omit } from './utilities/omit/omit.js';
|
|
9
9
|
export { Button } from './components/Button/Button.js';
|
|
10
|
+
export { Breadcrumbs } from './components/Breadcrumbs/index.js';
|
|
11
|
+
export { BreadcrumbsRoot } from './components/Breadcrumbs/BreadcrumbsRoot.js';
|
|
12
|
+
export { BreadcrumbsNav } from './components/Breadcrumbs/BreadcrumbsNav.js';
|
|
13
|
+
export { BreadcrumbsList } from './components/Breadcrumbs/BreadcrumbsList.js';
|
|
14
|
+
export { BreadcrumbsItem } from './components/Breadcrumbs/BreadcrumbsItem.js';
|
|
15
|
+
export { BreadcrumbsLink } from './components/Breadcrumbs/BreadcrumbsLink.js';
|
|
10
16
|
export { HelpText } from './components/HelpText/HelpText.js';
|
|
11
17
|
export { Spinner } from './components/Spinner/Spinner.js';
|
|
12
18
|
export { Link } from './components/Link/Link.js';
|
|
@@ -43,9 +49,9 @@ export { PaginationNext, PaginationPrevious } from './components/Pagination/Pagi
|
|
|
43
49
|
export { SkipLink } from './components/SkipLink/SkipLink.js';
|
|
44
50
|
export { Tooltip } from './components/Tooltip/Tooltip.js';
|
|
45
51
|
export { Checkbox } from './components/form/Checkbox/index.js';
|
|
46
|
-
export { CheckboxGroup } from './components/form/Checkbox/
|
|
52
|
+
export { CheckboxGroup } from './components/form/Checkbox/CheckboxGroup.js';
|
|
47
53
|
export { Radio } from './components/form/Radio/index.js';
|
|
48
|
-
export { RadioGroup } from './components/form/Radio/
|
|
54
|
+
export { RadioGroup } from './components/form/Radio/RadioGroup.js';
|
|
49
55
|
export { Fieldset } from './components/form/Fieldset/Fieldset.js';
|
|
50
56
|
export { Switch } from './components/form/Switch/Switch.js';
|
|
51
57
|
export { Textfield } from './components/form/Textfield/Textfield.js';
|
|
@@ -64,6 +70,7 @@ export { PopoverContent } from './components/Popover/PopoverContent.js';
|
|
|
64
70
|
export { PopoverTrigger } from './components/Popover/PopoverTrigger.js';
|
|
65
71
|
export { Divider } from './components/Divider/Divider.js';
|
|
66
72
|
export { Modal } from './components/Modal/index.js';
|
|
73
|
+
export { ModalRoot } from './components/Modal/ModalRoot.js';
|
|
67
74
|
export { ModalContent } from './components/Modal/ModaContent.js';
|
|
68
75
|
export { ModalFooter } from './components/Modal/ModalFooter.js';
|
|
69
76
|
export { ModalHeader } from './components/Modal/ModalHeader.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { evaluate, getSide, getOppositePlacement, getExpandedPlacements, getOppositeAxisPlacements, getAlignmentSides,
|
|
2
|
+
import { evaluate, getSide, getSideAxis, getOppositePlacement, getExpandedPlacements, getOppositeAxisPlacements, getAlignmentSides, clamp, getPaddingObject, rectToClientRect, getAlignmentAxis, getAlignment, getOppositeAxis, getAxisLength, min, max } from '../../utils/dist/floating-ui.utils.js';
|
|
3
3
|
|
|
4
4
|
function computeCoordsFromPlacement(_ref, placement, rtl) {
|
|
5
5
|
let {
|
|
@@ -186,9 +186,10 @@ async function detectOverflow(state, options) {
|
|
|
186
186
|
strategy
|
|
187
187
|
}));
|
|
188
188
|
const rect = elementContext === 'floating' ? {
|
|
189
|
-
...rects.floating,
|
|
190
189
|
x,
|
|
191
|
-
y
|
|
190
|
+
y,
|
|
191
|
+
width: rects.floating.width,
|
|
192
|
+
height: rects.floating.height
|
|
192
193
|
} : rects.reference;
|
|
193
194
|
const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
|
|
194
195
|
const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {
|
|
@@ -335,10 +336,12 @@ const flip = function (options) {
|
|
|
335
336
|
return {};
|
|
336
337
|
}
|
|
337
338
|
const side = getSide(placement);
|
|
339
|
+
const initialSideAxis = getSideAxis(initialPlacement);
|
|
338
340
|
const isBasePlacement = getSide(initialPlacement) === initialPlacement;
|
|
339
341
|
const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
|
|
340
342
|
const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));
|
|
341
|
-
|
|
343
|
+
const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== 'none';
|
|
344
|
+
if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {
|
|
342
345
|
fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
|
|
343
346
|
}
|
|
344
347
|
const placements = [initialPlacement, ...fallbackPlacements];
|
|
@@ -384,8 +387,17 @@ const flip = function (options) {
|
|
|
384
387
|
switch (fallbackStrategy) {
|
|
385
388
|
case 'bestFit':
|
|
386
389
|
{
|
|
387
|
-
var _overflowsData$
|
|
388
|
-
const placement = (_overflowsData$
|
|
390
|
+
var _overflowsData$filter2;
|
|
391
|
+
const placement = (_overflowsData$filter2 = overflowsData.filter(d => {
|
|
392
|
+
if (hasFallbackAxisSideDirection) {
|
|
393
|
+
const currentSideAxis = getSideAxis(d.placement);
|
|
394
|
+
return currentSideAxis === initialSideAxis ||
|
|
395
|
+
// Create a bias to the `y` side axis due to horizontal
|
|
396
|
+
// reading directions favoring greater width.
|
|
397
|
+
currentSideAxis === 'y';
|
|
398
|
+
}
|
|
399
|
+
return true;
|
|
400
|
+
}).map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$filter2[0];
|
|
389
401
|
if (placement) {
|
|
390
402
|
resetPlacement = placement;
|
|
391
403
|
}
|
|
@@ -425,6 +437,8 @@ async function convertValueToCoords(state, options) {
|
|
|
425
437
|
const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;
|
|
426
438
|
const crossAxisMulti = rtl && isVertical ? -1 : 1;
|
|
427
439
|
const rawValue = evaluate(options, state);
|
|
440
|
+
|
|
441
|
+
// eslint-disable-next-line prefer-const
|
|
428
442
|
let {
|
|
429
443
|
mainAxis,
|
|
430
444
|
crossAxis,
|
|
@@ -607,16 +621,16 @@ const size = function (options) {
|
|
|
607
621
|
widthSide = side;
|
|
608
622
|
heightSide = alignment === 'end' ? 'top' : 'bottom';
|
|
609
623
|
}
|
|
610
|
-
const
|
|
611
|
-
const
|
|
624
|
+
const maximumClippingHeight = height - overflow.top - overflow.bottom;
|
|
625
|
+
const maximumClippingWidth = width - overflow.left - overflow.right;
|
|
626
|
+
const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);
|
|
627
|
+
const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);
|
|
612
628
|
const noShift = !state.middlewareData.shift;
|
|
613
629
|
let availableHeight = overflowAvailableHeight;
|
|
614
630
|
let availableWidth = overflowAvailableWidth;
|
|
615
631
|
if (isYAxis) {
|
|
616
|
-
const maximumClippingWidth = width - overflow.left - overflow.right;
|
|
617
632
|
availableWidth = alignment || noShift ? min(overflowAvailableWidth, maximumClippingWidth) : maximumClippingWidth;
|
|
618
633
|
} else {
|
|
619
|
-
const maximumClippingHeight = height - overflow.top - overflow.bottom;
|
|
620
634
|
availableHeight = alignment || noShift ? min(overflowAvailableHeight, maximumClippingHeight) : maximumClippingHeight;
|
|
621
635
|
}
|
|
622
636
|
if (noShift && !alignment) {
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { shift as shift$1, flip as flip$1, arrow as arrow$1,
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
import { getOverflowAncestors, isElement, getWindow, getComputedStyle, getDocumentElement, isHTMLElement, isWebKit, getNodeName, isOverflowElement, getNodeScroll, isTableElement, isContainingBlock, getContainingBlock, getParentNode, isLastTraversableNode } from '../../utils/dist/floating-ui.utils.dom.js';
|
|
2
|
+
import { offset as offset$1, shift as shift$1, flip as flip$1, arrow as arrow$1, computePosition as computePosition$1, size as size$1 } from '../../core/dist/floating-ui.core.js';
|
|
3
|
+
import { createCoords, rectToClientRect, round, floor, max, min } from '../../utils/dist/floating-ui.utils.js';
|
|
4
|
+
import { getOverflowAncestors, isElement, getWindow, getComputedStyle, getDocumentElement, isHTMLElement, isWebKit, isTopLayer, getNodeName, isOverflowElement, getNodeScroll, getParentNode, isLastTraversableNode, isTableElement, isContainingBlock, getContainingBlock } from '../../utils/dist/floating-ui.utils.dom.js';
|
|
6
5
|
|
|
7
6
|
function getCssDimensions(element) {
|
|
8
7
|
const css = getComputedStyle(element);
|
|
@@ -131,17 +130,6 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
|
|
|
131
130
|
});
|
|
132
131
|
}
|
|
133
132
|
|
|
134
|
-
const topLayerSelectors = [':popover-open', ':modal'];
|
|
135
|
-
function isTopLayer(floating) {
|
|
136
|
-
return topLayerSelectors.some(selector => {
|
|
137
|
-
try {
|
|
138
|
-
return floating.matches(selector);
|
|
139
|
-
} catch (e) {
|
|
140
|
-
return false;
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
|
|
145
133
|
function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
146
134
|
let {
|
|
147
135
|
elements,
|
|
@@ -323,7 +311,7 @@ function getClippingRect(_ref) {
|
|
|
323
311
|
rootBoundary,
|
|
324
312
|
strategy
|
|
325
313
|
} = _ref;
|
|
326
|
-
const elementClippingAncestors = boundary === 'clippingAncestors' ? getClippingElementAncestors(element, this._c) : [].concat(boundary);
|
|
314
|
+
const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);
|
|
327
315
|
const clippingAncestors = [...elementClippingAncestors, rootBoundary];
|
|
328
316
|
const firstClippingAncestor = clippingAncestors[0];
|
|
329
317
|
const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {
|
|
@@ -385,6 +373,10 @@ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
|
|
|
385
373
|
};
|
|
386
374
|
}
|
|
387
375
|
|
|
376
|
+
function isStaticPositioned(element) {
|
|
377
|
+
return getComputedStyle(element).position === 'static';
|
|
378
|
+
}
|
|
379
|
+
|
|
388
380
|
function getTrueOffsetParent(element, polyfill) {
|
|
389
381
|
if (!isHTMLElement(element) || getComputedStyle(element).position === 'fixed') {
|
|
390
382
|
return null;
|
|
@@ -398,29 +390,41 @@ function getTrueOffsetParent(element, polyfill) {
|
|
|
398
390
|
// Gets the closest ancestor positioned element. Handles some edge cases,
|
|
399
391
|
// such as table ancestors and cross browser bugs.
|
|
400
392
|
function getOffsetParent(element, polyfill) {
|
|
401
|
-
const
|
|
402
|
-
if (
|
|
403
|
-
return
|
|
393
|
+
const win = getWindow(element);
|
|
394
|
+
if (isTopLayer(element)) {
|
|
395
|
+
return win;
|
|
396
|
+
}
|
|
397
|
+
if (!isHTMLElement(element)) {
|
|
398
|
+
let svgOffsetParent = getParentNode(element);
|
|
399
|
+
while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {
|
|
400
|
+
if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {
|
|
401
|
+
return svgOffsetParent;
|
|
402
|
+
}
|
|
403
|
+
svgOffsetParent = getParentNode(svgOffsetParent);
|
|
404
|
+
}
|
|
405
|
+
return win;
|
|
404
406
|
}
|
|
405
407
|
let offsetParent = getTrueOffsetParent(element, polyfill);
|
|
406
|
-
while (offsetParent && isTableElement(offsetParent) &&
|
|
408
|
+
while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {
|
|
407
409
|
offsetParent = getTrueOffsetParent(offsetParent, polyfill);
|
|
408
410
|
}
|
|
409
|
-
if (offsetParent && (
|
|
410
|
-
return
|
|
411
|
+
if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {
|
|
412
|
+
return win;
|
|
411
413
|
}
|
|
412
|
-
return offsetParent || getContainingBlock(element) ||
|
|
414
|
+
return offsetParent || getContainingBlock(element) || win;
|
|
413
415
|
}
|
|
414
416
|
|
|
415
417
|
const getElementRects = async function (data) {
|
|
416
418
|
const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
|
|
417
419
|
const getDimensionsFn = this.getDimensions;
|
|
420
|
+
const floatingDimensions = await getDimensionsFn(data.floating);
|
|
418
421
|
return {
|
|
419
422
|
reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
|
|
420
423
|
floating: {
|
|
421
424
|
x: 0,
|
|
422
425
|
y: 0,
|
|
423
|
-
|
|
426
|
+
width: floatingDimensions.width,
|
|
427
|
+
height: floatingDimensions.height
|
|
424
428
|
}
|
|
425
429
|
};
|
|
426
430
|
};
|
|
@@ -490,9 +494,11 @@ function observeMove(element, onMove) {
|
|
|
490
494
|
return refresh();
|
|
491
495
|
}
|
|
492
496
|
if (!ratio) {
|
|
497
|
+
// If the reference is clipped, the ratio is 0. Throttle the refresh
|
|
498
|
+
// to prevent an infinite loop of updates.
|
|
493
499
|
timeoutId = setTimeout(() => {
|
|
494
500
|
refresh(false, 1e-7);
|
|
495
|
-
},
|
|
501
|
+
}, 1000);
|
|
496
502
|
} else {
|
|
497
503
|
refresh(false, ratio);
|
|
498
504
|
}
|
|
@@ -596,6 +602,15 @@ function autoUpdate(reference, floating, update, options) {
|
|
|
596
602
|
};
|
|
597
603
|
}
|
|
598
604
|
|
|
605
|
+
/**
|
|
606
|
+
* Modifies the placement by translating the floating element along the
|
|
607
|
+
* specified axes.
|
|
608
|
+
* A number (shorthand for `mainAxis` or distance), or an axes configuration
|
|
609
|
+
* object may be passed.
|
|
610
|
+
* @see https://floating-ui.com/docs/offset
|
|
611
|
+
*/
|
|
612
|
+
const offset = offset$1;
|
|
613
|
+
|
|
599
614
|
/**
|
|
600
615
|
* Optimizes the visibility of the floating element by shifting it in order to
|
|
601
616
|
* keep it in view when it will overflow the clipping boundary.
|
|
@@ -649,4 +664,4 @@ const computePosition = (reference, floating, options) => {
|
|
|
649
664
|
});
|
|
650
665
|
};
|
|
651
666
|
|
|
652
|
-
export { arrow, autoUpdate, computePosition, flip, getOverflowAncestors, platform, shift, size };
|
|
667
|
+
export { arrow, autoUpdate, computePosition, flip, getOverflowAncestors, offset, platform, shift, size };
|