@salt-ds/core 1.20.0 → 1.21.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/css/salt-core.css +470 -19
- package/dist-cjs/accordion/Accordion.js +75 -0
- package/dist-cjs/accordion/Accordion.js.map +1 -1
- package/dist-cjs/accordion/AccordionContext.js +79 -0
- package/dist-cjs/accordion/AccordionContext.js.map +1 -1
- package/dist-cjs/accordion/AccordionGroup.js +76 -1
- package/dist-cjs/accordion/AccordionGroup.js.map +1 -1
- package/dist-cjs/accordion/AccordionHeader.js +73 -0
- package/dist-cjs/accordion/AccordionHeader.js.map +1 -1
- package/dist-cjs/accordion/AccordionPanel.js +75 -0
- package/dist-cjs/accordion/AccordionPanel.js.map +1 -1
- package/dist-cjs/aria-announcer/useAriaAnnouncer.js +78 -0
- package/dist-cjs/aria-announcer/useAriaAnnouncer.js.map +1 -1
- package/dist-cjs/avatar/Avatar.js +74 -0
- package/dist-cjs/avatar/Avatar.js.map +1 -1
- package/dist-cjs/avatar/useAvatarImage.js +79 -0
- package/dist-cjs/avatar/useAvatarImage.js.map +1 -1
- package/dist-cjs/badge/Badge.js +75 -0
- package/dist-cjs/badge/Badge.js.map +1 -1
- package/dist-cjs/banner/Banner.js +76 -2
- package/dist-cjs/banner/Banner.js.map +1 -1
- package/dist-cjs/banner/BannerActions.js +76 -1
- package/dist-cjs/banner/BannerActions.js.map +1 -1
- package/dist-cjs/banner/BannerContent.js +76 -1
- package/dist-cjs/banner/BannerContent.js.map +1 -1
- package/dist-cjs/border-item/BorderItem.js +75 -1
- package/dist-cjs/border-item/BorderItem.js.map +1 -1
- package/dist-cjs/border-layout/BorderLayout.js +76 -0
- package/dist-cjs/border-layout/BorderLayout.js.map +1 -1
- package/dist-cjs/button/Button.js +76 -1
- package/dist-cjs/button/Button.js.map +1 -1
- package/dist-cjs/card/Card.js +75 -0
- package/dist-cjs/card/Card.js.map +1 -1
- package/dist-cjs/card/InteractableCard.js +75 -0
- package/dist-cjs/card/InteractableCard.js.map +1 -1
- package/dist-cjs/checkbox/Checkbox.js +73 -0
- package/dist-cjs/checkbox/Checkbox.js.map +1 -1
- package/dist-cjs/checkbox/CheckboxGroup.js +74 -0
- package/dist-cjs/checkbox/CheckboxGroup.js.map +1 -1
- package/dist-cjs/checkbox/CheckboxIcon.js +75 -0
- package/dist-cjs/checkbox/CheckboxIcon.js.map +1 -1
- package/dist-cjs/checkbox/internal/CheckboxGroupContext.js +79 -0
- package/dist-cjs/checkbox/internal/CheckboxGroupContext.js.map +1 -1
- package/dist-cjs/combo-box/ComboBox.css.js +6 -0
- package/dist-cjs/combo-box/ComboBox.css.js.map +1 -0
- package/dist-cjs/combo-box/ComboBox.js +443 -0
- package/dist-cjs/combo-box/ComboBox.js.map +1 -0
- package/dist-cjs/combo-box/useComboBox.js +153 -0
- package/dist-cjs/combo-box/useComboBox.js.map +1 -0
- package/dist-cjs/dialog/Dialog.js +77 -3
- package/dist-cjs/dialog/Dialog.js.map +1 -1
- package/dist-cjs/dialog/DialogActions.js +76 -1
- package/dist-cjs/dialog/DialogActions.js.map +1 -1
- package/dist-cjs/dialog/DialogCloseButton.js +74 -1
- package/dist-cjs/dialog/DialogCloseButton.js.map +1 -1
- package/dist-cjs/dialog/DialogContent.js +76 -1
- package/dist-cjs/dialog/DialogContent.js.map +1 -1
- package/dist-cjs/dialog/DialogHeader.js +71 -3
- package/dist-cjs/dialog/DialogHeader.js.map +1 -1
- package/dist-cjs/drawer/Drawer.js +75 -2
- package/dist-cjs/drawer/Drawer.js.map +1 -1
- package/dist-cjs/drawer/DrawerCloseButton.js +74 -1
- package/dist-cjs/drawer/DrawerCloseButton.js.map +1 -1
- package/dist-cjs/dropdown/Dropdown.css.js +6 -0
- package/dist-cjs/dropdown/Dropdown.css.js.map +1 -0
- package/dist-cjs/dropdown/Dropdown.js +412 -0
- package/dist-cjs/dropdown/Dropdown.js.map +1 -0
- package/dist-cjs/file-drop-zone/FileDropZone.js +75 -0
- package/dist-cjs/file-drop-zone/FileDropZone.js.map +1 -1
- package/dist-cjs/file-drop-zone/FileDropZoneTrigger.js +76 -0
- package/dist-cjs/file-drop-zone/FileDropZoneTrigger.js.map +1 -1
- package/dist-cjs/flex-item/FlexItem.js +79 -2
- package/dist-cjs/flex-item/FlexItem.js.map +1 -1
- package/dist-cjs/flex-layout/FlexLayout.js +79 -2
- package/dist-cjs/flex-layout/FlexLayout.js.map +1 -1
- package/dist-cjs/form-field/FormField.js +74 -0
- package/dist-cjs/form-field/FormField.js.map +1 -1
- package/dist-cjs/form-field/FormFieldHelperText.js +70 -2
- package/dist-cjs/form-field/FormFieldHelperText.js.map +1 -1
- package/dist-cjs/form-field/FormFieldLabel.js +69 -0
- package/dist-cjs/form-field/FormFieldLabel.js.map +1 -1
- package/dist-cjs/form-field-context/FormFieldContext.js +78 -0
- package/dist-cjs/form-field-context/FormFieldContext.js.map +1 -1
- package/dist-cjs/grid-item/GridItem.js +79 -2
- package/dist-cjs/grid-item/GridItem.js.map +1 -1
- package/dist-cjs/grid-layout/GridLayout.js +79 -2
- package/dist-cjs/grid-layout/GridLayout.js.map +1 -1
- package/dist-cjs/index.js +16 -0
- package/dist-cjs/index.js.map +1 -1
- package/dist-cjs/input/Input.js +73 -0
- package/dist-cjs/input/Input.js.map +1 -1
- package/dist-cjs/link/Link.js +70 -2
- package/dist-cjs/link/Link.js.map +1 -1
- package/dist-cjs/link-card/LinkCard.js +75 -0
- package/dist-cjs/link-card/LinkCard.js.map +1 -1
- package/dist-cjs/list-control/ListControlContext.js +121 -0
- package/dist-cjs/list-control/ListControlContext.js.map +1 -0
- package/dist-cjs/list-control/ListControlState.js +276 -0
- package/dist-cjs/list-control/ListControlState.js.map +1 -0
- package/dist-cjs/multiline-input/MultilineInput.js +73 -0
- package/dist-cjs/multiline-input/MultilineInput.js.map +1 -1
- package/dist-cjs/navigation-item/NavigationItem.js +77 -2
- package/dist-cjs/navigation-item/NavigationItem.js.map +1 -1
- package/dist-cjs/option/Option.css.js +6 -0
- package/dist-cjs/option/Option.css.js.map +1 -0
- package/dist-cjs/option/Option.js +178 -0
- package/dist-cjs/option/Option.js.map +1 -0
- package/dist-cjs/option/OptionGroup.css.js +6 -0
- package/dist-cjs/option/OptionGroup.css.js.map +1 -0
- package/dist-cjs/option/OptionGroup.js +123 -0
- package/dist-cjs/option/OptionGroup.js.map +1 -0
- package/dist-cjs/option/OptionList.css.js +6 -0
- package/dist-cjs/option/OptionList.css.js.map +1 -0
- package/dist-cjs/option/OptionList.js +118 -0
- package/dist-cjs/option/OptionList.js.map +1 -0
- package/dist-cjs/option/OptionListBase.js +113 -0
- package/dist-cjs/option/OptionListBase.js.map +1 -0
- package/dist-cjs/pagination/CompactInput.js +76 -2
- package/dist-cjs/pagination/CompactInput.js.map +1 -1
- package/dist-cjs/pagination/CompactPaginator.js +69 -2
- package/dist-cjs/pagination/CompactPaginator.js.map +1 -1
- package/dist-cjs/pagination/GoToInput.js +68 -3
- package/dist-cjs/pagination/GoToInput.js.map +1 -1
- package/dist-cjs/pagination/PageButton.js +77 -2
- package/dist-cjs/pagination/PageButton.js.map +1 -1
- package/dist-cjs/pagination/PageRanges.js +78 -2
- package/dist-cjs/pagination/PageRanges.js.map +1 -1
- package/dist-cjs/pagination/Pagination.js +76 -2
- package/dist-cjs/pagination/Pagination.js.map +1 -1
- package/dist-cjs/pagination/Paginator.js +75 -2
- package/dist-cjs/pagination/Paginator.js.map +1 -1
- package/dist-cjs/panel/Panel.js +77 -2
- package/dist-cjs/panel/Panel.js.map +1 -1
- package/dist-cjs/pill/Pill.js +74 -0
- package/dist-cjs/pill/Pill.js.map +1 -1
- package/dist-cjs/pill-input/PillInput.css.js +6 -0
- package/dist-cjs/pill-input/PillInput.css.js.map +1 -0
- package/dist-cjs/pill-input/PillInput.js +338 -0
- package/dist-cjs/pill-input/PillInput.js.map +1 -0
- package/dist-cjs/pill-input/useTruncatePills.js +83 -0
- package/dist-cjs/pill-input/useTruncatePills.js.map +1 -0
- package/dist-cjs/progress/CircularProgress/CircularProgress.css.js +1 -1
- package/dist-cjs/progress/CircularProgress/CircularProgress.js +138 -14
- package/dist-cjs/progress/CircularProgress/CircularProgress.js.map +1 -1
- package/dist-cjs/progress/LinearProgress/LinearProgress.css.js +1 -1
- package/dist-cjs/progress/LinearProgress/LinearProgress.js +89 -8
- package/dist-cjs/progress/LinearProgress/LinearProgress.js.map +1 -1
- package/dist-cjs/radio-button/RadioButton.js +78 -4
- package/dist-cjs/radio-button/RadioButton.js.map +1 -1
- package/dist-cjs/radio-button/RadioButtonGroup.js +77 -3
- package/dist-cjs/radio-button/RadioButtonGroup.js.map +1 -1
- package/dist-cjs/radio-button/RadioButtonIcon.js +76 -0
- package/dist-cjs/radio-button/RadioButtonIcon.js.map +1 -1
- package/dist-cjs/radio-button/internal/RadioGroupContext.js +79 -0
- package/dist-cjs/radio-button/internal/RadioGroupContext.js.map +1 -1
- package/dist-cjs/salt-provider/SaltProvider.js +78 -3
- package/dist-cjs/salt-provider/SaltProvider.js.map +1 -1
- package/dist-cjs/scrim/Scrim.js +76 -1
- package/dist-cjs/scrim/Scrim.js.map +1 -1
- package/dist-cjs/spinner/Spinner.js +76 -2
- package/dist-cjs/spinner/Spinner.js.map +1 -1
- package/dist-cjs/spinner/svgSpinners/SpinnerSVG.js +78 -0
- package/dist-cjs/spinner/svgSpinners/SpinnerSVG.js.map +1 -1
- package/dist-cjs/split-layout/SplitLayout.js +76 -2
- package/dist-cjs/split-layout/SplitLayout.js.map +1 -1
- package/dist-cjs/stack-layout/StackLayout.js +78 -2
- package/dist-cjs/stack-layout/StackLayout.js.map +1 -1
- package/dist-cjs/status-adornment/StatusAdornment.js +75 -0
- package/dist-cjs/status-adornment/StatusAdornment.js.map +1 -1
- package/dist-cjs/status-indicator/StatusIndicator.js +76 -2
- package/dist-cjs/status-indicator/StatusIndicator.js.map +1 -1
- package/dist-cjs/switch/Switch.js +75 -2
- package/dist-cjs/switch/Switch.js.map +1 -1
- package/dist-cjs/text/Text.js +77 -2
- package/dist-cjs/text/Text.js.map +1 -1
- package/dist-cjs/toast/Toast.js +74 -0
- package/dist-cjs/toast/Toast.js.map +1 -1
- package/dist-cjs/toast/ToastContent.js +75 -0
- package/dist-cjs/toast/ToastContent.js.map +1 -1
- package/dist-cjs/toggle-button/ToggleButton.js +73 -0
- package/dist-cjs/toggle-button/ToggleButton.js.map +1 -1
- package/dist-cjs/toggle-button-group/ToggleButtonGroup.js +74 -0
- package/dist-cjs/toggle-button-group/ToggleButtonGroup.js.map +1 -1
- package/dist-cjs/toggle-button-group/ToggleButtonGroupContext.js +78 -0
- package/dist-cjs/toggle-button-group/ToggleButtonGroupContext.js.map +1 -1
- package/dist-cjs/tooltip/Tooltip.js +75 -1
- package/dist-cjs/tooltip/Tooltip.js.map +1 -1
- package/dist-cjs/tooltip/TooltipBase.js +75 -2
- package/dist-cjs/tooltip/TooltipBase.js.map +1 -1
- package/dist-cjs/tooltip/useAriaAnnounce.js +77 -0
- package/dist-cjs/tooltip/useAriaAnnounce.js.map +1 -1
- package/dist-cjs/tooltip/useTooltip.js +78 -0
- package/dist-cjs/tooltip/useTooltip.js.map +1 -1
- package/dist-cjs/utils/ownerWindow.js.map +1 -1
- package/dist-cjs/utils/useEventCallback.js +20 -0
- package/dist-cjs/utils/useEventCallback.js.map +1 -0
- package/dist-cjs/utils/useResizeObserver.js +29 -0
- package/dist-cjs/utils/useResizeObserver.js.map +1 -0
- package/dist-cjs/utils/useValueEffect.js +124 -0
- package/dist-cjs/utils/useValueEffect.js.map +1 -0
- package/dist-cjs/viewport/ViewportProvider.js +78 -0
- package/dist-cjs/viewport/ViewportProvider.js.map +1 -1
- package/dist-es/accordion/Accordion.js +75 -0
- package/dist-es/accordion/Accordion.js.map +1 -1
- package/dist-es/accordion/AccordionContext.js +79 -0
- package/dist-es/accordion/AccordionContext.js.map +1 -1
- package/dist-es/accordion/AccordionGroup.js +76 -1
- package/dist-es/accordion/AccordionGroup.js.map +1 -1
- package/dist-es/accordion/AccordionHeader.js +73 -0
- package/dist-es/accordion/AccordionHeader.js.map +1 -1
- package/dist-es/accordion/AccordionPanel.js +75 -0
- package/dist-es/accordion/AccordionPanel.js.map +1 -1
- package/dist-es/aria-announcer/useAriaAnnouncer.js +78 -0
- package/dist-es/aria-announcer/useAriaAnnouncer.js.map +1 -1
- package/dist-es/avatar/Avatar.js +74 -0
- package/dist-es/avatar/Avatar.js.map +1 -1
- package/dist-es/avatar/useAvatarImage.js +79 -0
- package/dist-es/avatar/useAvatarImage.js.map +1 -1
- package/dist-es/badge/Badge.js +75 -0
- package/dist-es/badge/Badge.js.map +1 -1
- package/dist-es/banner/Banner.js +76 -2
- package/dist-es/banner/Banner.js.map +1 -1
- package/dist-es/banner/BannerActions.js +76 -1
- package/dist-es/banner/BannerActions.js.map +1 -1
- package/dist-es/banner/BannerContent.js +76 -1
- package/dist-es/banner/BannerContent.js.map +1 -1
- package/dist-es/border-item/BorderItem.js +75 -1
- package/dist-es/border-item/BorderItem.js.map +1 -1
- package/dist-es/border-layout/BorderLayout.js +76 -0
- package/dist-es/border-layout/BorderLayout.js.map +1 -1
- package/dist-es/button/Button.js +76 -1
- package/dist-es/button/Button.js.map +1 -1
- package/dist-es/card/Card.js +75 -0
- package/dist-es/card/Card.js.map +1 -1
- package/dist-es/card/InteractableCard.js +75 -0
- package/dist-es/card/InteractableCard.js.map +1 -1
- package/dist-es/checkbox/Checkbox.js +73 -0
- package/dist-es/checkbox/Checkbox.js.map +1 -1
- package/dist-es/checkbox/CheckboxGroup.js +74 -0
- package/dist-es/checkbox/CheckboxGroup.js.map +1 -1
- package/dist-es/checkbox/CheckboxIcon.js +75 -0
- package/dist-es/checkbox/CheckboxIcon.js.map +1 -1
- package/dist-es/checkbox/internal/CheckboxGroupContext.js +79 -0
- package/dist-es/checkbox/internal/CheckboxGroupContext.js.map +1 -1
- package/dist-es/combo-box/ComboBox.css.js +4 -0
- package/dist-es/combo-box/ComboBox.css.js.map +1 -0
- package/dist-es/combo-box/ComboBox.js +439 -0
- package/dist-es/combo-box/ComboBox.js.map +1 -0
- package/dist-es/combo-box/useComboBox.js +149 -0
- package/dist-es/combo-box/useComboBox.js.map +1 -0
- package/dist-es/dialog/Dialog.js +77 -3
- package/dist-es/dialog/Dialog.js.map +1 -1
- package/dist-es/dialog/DialogActions.js +76 -1
- package/dist-es/dialog/DialogActions.js.map +1 -1
- package/dist-es/dialog/DialogCloseButton.js +74 -1
- package/dist-es/dialog/DialogCloseButton.js.map +1 -1
- package/dist-es/dialog/DialogContent.js +76 -1
- package/dist-es/dialog/DialogContent.js.map +1 -1
- package/dist-es/dialog/DialogHeader.js +71 -3
- package/dist-es/dialog/DialogHeader.js.map +1 -1
- package/dist-es/drawer/Drawer.js +75 -2
- package/dist-es/drawer/Drawer.js.map +1 -1
- package/dist-es/drawer/DrawerCloseButton.js +74 -1
- package/dist-es/drawer/DrawerCloseButton.js.map +1 -1
- package/dist-es/dropdown/Dropdown.css.js +4 -0
- package/dist-es/dropdown/Dropdown.css.js.map +1 -0
- package/dist-es/dropdown/Dropdown.js +408 -0
- package/dist-es/dropdown/Dropdown.js.map +1 -0
- package/dist-es/file-drop-zone/FileDropZone.js +75 -0
- package/dist-es/file-drop-zone/FileDropZone.js.map +1 -1
- package/dist-es/file-drop-zone/FileDropZoneTrigger.js +76 -0
- package/dist-es/file-drop-zone/FileDropZoneTrigger.js.map +1 -1
- package/dist-es/flex-item/FlexItem.js +79 -2
- package/dist-es/flex-item/FlexItem.js.map +1 -1
- package/dist-es/flex-layout/FlexLayout.js +79 -2
- package/dist-es/flex-layout/FlexLayout.js.map +1 -1
- package/dist-es/form-field/FormField.js +74 -0
- package/dist-es/form-field/FormField.js.map +1 -1
- package/dist-es/form-field/FormFieldHelperText.js +70 -2
- package/dist-es/form-field/FormFieldHelperText.js.map +1 -1
- package/dist-es/form-field/FormFieldLabel.js +69 -0
- package/dist-es/form-field/FormFieldLabel.js.map +1 -1
- package/dist-es/form-field-context/FormFieldContext.js +78 -0
- package/dist-es/form-field-context/FormFieldContext.js.map +1 -1
- package/dist-es/grid-item/GridItem.js +79 -2
- package/dist-es/grid-item/GridItem.js.map +1 -1
- package/dist-es/grid-layout/GridLayout.js +79 -2
- package/dist-es/grid-layout/GridLayout.js.map +1 -1
- package/dist-es/index.js +8 -0
- package/dist-es/index.js.map +1 -1
- package/dist-es/input/Input.js +73 -0
- package/dist-es/input/Input.js.map +1 -1
- package/dist-es/link/Link.js +70 -2
- package/dist-es/link/Link.js.map +1 -1
- package/dist-es/link-card/LinkCard.js +75 -0
- package/dist-es/link-card/LinkCard.js.map +1 -1
- package/dist-es/list-control/ListControlContext.js +116 -0
- package/dist-es/list-control/ListControlContext.js.map +1 -0
- package/dist-es/list-control/ListControlState.js +271 -0
- package/dist-es/list-control/ListControlState.js.map +1 -0
- package/dist-es/multiline-input/MultilineInput.js +73 -0
- package/dist-es/multiline-input/MultilineInput.js.map +1 -1
- package/dist-es/navigation-item/NavigationItem.js +77 -2
- package/dist-es/navigation-item/NavigationItem.js.map +1 -1
- package/dist-es/option/Option.css.js +4 -0
- package/dist-es/option/Option.css.js.map +1 -0
- package/dist-es/option/Option.js +174 -0
- package/dist-es/option/Option.js.map +1 -0
- package/dist-es/option/OptionGroup.css.js +4 -0
- package/dist-es/option/OptionGroup.css.js.map +1 -0
- package/dist-es/option/OptionGroup.js +119 -0
- package/dist-es/option/OptionGroup.js.map +1 -0
- package/dist-es/option/OptionList.css.js +4 -0
- package/dist-es/option/OptionList.css.js.map +1 -0
- package/dist-es/option/OptionList.js +114 -0
- package/dist-es/option/OptionList.js.map +1 -0
- package/dist-es/option/OptionListBase.js +109 -0
- package/dist-es/option/OptionListBase.js.map +1 -0
- package/dist-es/pagination/CompactInput.js +76 -2
- package/dist-es/pagination/CompactInput.js.map +1 -1
- package/dist-es/pagination/CompactPaginator.js +69 -2
- package/dist-es/pagination/CompactPaginator.js.map +1 -1
- package/dist-es/pagination/GoToInput.js +68 -3
- package/dist-es/pagination/GoToInput.js.map +1 -1
- package/dist-es/pagination/PageButton.js +77 -2
- package/dist-es/pagination/PageButton.js.map +1 -1
- package/dist-es/pagination/PageRanges.js +78 -2
- package/dist-es/pagination/PageRanges.js.map +1 -1
- package/dist-es/pagination/Pagination.js +76 -2
- package/dist-es/pagination/Pagination.js.map +1 -1
- package/dist-es/pagination/Paginator.js +75 -2
- package/dist-es/pagination/Paginator.js.map +1 -1
- package/dist-es/panel/Panel.js +77 -2
- package/dist-es/panel/Panel.js.map +1 -1
- package/dist-es/pill/Pill.js +74 -0
- package/dist-es/pill/Pill.js.map +1 -1
- package/dist-es/pill-input/PillInput.css.js +4 -0
- package/dist-es/pill-input/PillInput.css.js.map +1 -0
- package/dist-es/pill-input/PillInput.js +334 -0
- package/dist-es/pill-input/PillInput.js.map +1 -0
- package/dist-es/pill-input/useTruncatePills.js +79 -0
- package/dist-es/pill-input/useTruncatePills.js.map +1 -0
- package/dist-es/progress/CircularProgress/CircularProgress.css.js +1 -1
- package/dist-es/progress/CircularProgress/CircularProgress.js +138 -14
- package/dist-es/progress/CircularProgress/CircularProgress.js.map +1 -1
- package/dist-es/progress/LinearProgress/LinearProgress.css.js +1 -1
- package/dist-es/progress/LinearProgress/LinearProgress.js +89 -8
- package/dist-es/progress/LinearProgress/LinearProgress.js.map +1 -1
- package/dist-es/radio-button/RadioButton.js +78 -4
- package/dist-es/radio-button/RadioButton.js.map +1 -1
- package/dist-es/radio-button/RadioButtonGroup.js +77 -3
- package/dist-es/radio-button/RadioButtonGroup.js.map +1 -1
- package/dist-es/radio-button/RadioButtonIcon.js +76 -0
- package/dist-es/radio-button/RadioButtonIcon.js.map +1 -1
- package/dist-es/radio-button/internal/RadioGroupContext.js +79 -0
- package/dist-es/radio-button/internal/RadioGroupContext.js.map +1 -1
- package/dist-es/salt-provider/SaltProvider.js +78 -3
- package/dist-es/salt-provider/SaltProvider.js.map +1 -1
- package/dist-es/scrim/Scrim.js +76 -1
- package/dist-es/scrim/Scrim.js.map +1 -1
- package/dist-es/spinner/Spinner.js +76 -2
- package/dist-es/spinner/Spinner.js.map +1 -1
- package/dist-es/spinner/svgSpinners/SpinnerSVG.js +78 -0
- package/dist-es/spinner/svgSpinners/SpinnerSVG.js.map +1 -1
- package/dist-es/split-layout/SplitLayout.js +76 -2
- package/dist-es/split-layout/SplitLayout.js.map +1 -1
- package/dist-es/stack-layout/StackLayout.js +78 -2
- package/dist-es/stack-layout/StackLayout.js.map +1 -1
- package/dist-es/status-adornment/StatusAdornment.js +75 -0
- package/dist-es/status-adornment/StatusAdornment.js.map +1 -1
- package/dist-es/status-indicator/StatusIndicator.js +76 -2
- package/dist-es/status-indicator/StatusIndicator.js.map +1 -1
- package/dist-es/switch/Switch.js +75 -2
- package/dist-es/switch/Switch.js.map +1 -1
- package/dist-es/text/Text.js +77 -2
- package/dist-es/text/Text.js.map +1 -1
- package/dist-es/toast/Toast.js +74 -0
- package/dist-es/toast/Toast.js.map +1 -1
- package/dist-es/toast/ToastContent.js +75 -0
- package/dist-es/toast/ToastContent.js.map +1 -1
- package/dist-es/toggle-button/ToggleButton.js +73 -0
- package/dist-es/toggle-button/ToggleButton.js.map +1 -1
- package/dist-es/toggle-button-group/ToggleButtonGroup.js +74 -0
- package/dist-es/toggle-button-group/ToggleButtonGroup.js.map +1 -1
- package/dist-es/toggle-button-group/ToggleButtonGroupContext.js +78 -0
- package/dist-es/toggle-button-group/ToggleButtonGroupContext.js.map +1 -1
- package/dist-es/tooltip/Tooltip.js +75 -1
- package/dist-es/tooltip/Tooltip.js.map +1 -1
- package/dist-es/tooltip/TooltipBase.js +75 -2
- package/dist-es/tooltip/TooltipBase.js.map +1 -1
- package/dist-es/tooltip/useAriaAnnounce.js +77 -0
- package/dist-es/tooltip/useAriaAnnounce.js.map +1 -1
- package/dist-es/tooltip/useTooltip.js +78 -0
- package/dist-es/tooltip/useTooltip.js.map +1 -1
- package/dist-es/utils/ownerWindow.js.map +1 -1
- package/dist-es/utils/useEventCallback.js +16 -0
- package/dist-es/utils/useEventCallback.js.map +1 -0
- package/dist-es/utils/useResizeObserver.js +25 -0
- package/dist-es/utils/useResizeObserver.js.map +1 -0
- package/dist-es/utils/useValueEffect.js +120 -0
- package/dist-es/utils/useValueEffect.js.map +1 -0
- package/dist-es/viewport/ViewportProvider.js +78 -0
- package/dist-es/viewport/ViewportProvider.js.map +1 -1
- package/dist-types/combo-box/ComboBox.d.ts +17 -0
- package/dist-types/combo-box/index.d.ts +1 -0
- package/dist-types/combo-box/useComboBox.d.ts +30 -0
- package/dist-types/dialog/DialogHeader.d.ts +2 -4
- package/dist-types/dropdown/Dropdown.d.ts +99 -0
- package/dist-types/dropdown/index.d.ts +1 -0
- package/dist-types/index.d.ts +4 -0
- package/dist-types/list-control/ListControlContext.d.ts +21 -0
- package/dist-types/list-control/ListControlState.d.ts +70 -0
- package/dist-types/list-control/index.d.ts +1 -0
- package/dist-types/option/Option.d.ts +16 -0
- package/dist-types/option/OptionGroup.d.ts +12 -0
- package/dist-types/option/OptionList.d.ts +5 -0
- package/dist-types/option/OptionListBase.d.ts +4 -0
- package/dist-types/option/index.d.ts +2 -0
- package/dist-types/pill-input/PillInput.d.ts +48 -0
- package/dist-types/pill-input/index.d.ts +1 -0
- package/dist-types/pill-input/useTruncatePills.d.ts +8 -0
- package/dist-types/progress/CircularProgress/CircularProgress.d.ts +5 -0
- package/dist-types/progress/LinearProgress/LinearProgress.d.ts +5 -0
- package/dist-types/utils/index.d.ts +3 -0
- package/dist-types/utils/ownerWindow.d.ts +1 -1
- package/dist-types/utils/useEventCallback.d.ts +4 -0
- package/dist-types/utils/useResizeObserver.d.ts +6 -0
- package/dist-types/utils/useValueEffect.d.ts +4 -0
- package/package.json +1 -1
|
@@ -8,8 +8,83 @@ import { makePrefixer } from '../utils/makePrefixer.js';
|
|
|
8
8
|
import '../utils/useFloatingUI/useFloatingUI.js';
|
|
9
9
|
import '../utils/useId.js';
|
|
10
10
|
import '../viewport/ViewportProvider.js';
|
|
11
|
+
import '../accordion/AccordionGroup.js';
|
|
12
|
+
import '../accordion/AccordionPanel.js';
|
|
13
|
+
import '../accordion/Accordion.js';
|
|
14
|
+
import '../accordion/AccordionHeader.js';
|
|
15
|
+
import '../aria-announcer/AriaAnnouncerContext.js';
|
|
16
|
+
import '../avatar/Avatar.js';
|
|
17
|
+
import '../badge/Badge.js';
|
|
18
|
+
import '../banner/Banner.js';
|
|
19
|
+
import '../banner/BannerActions.js';
|
|
20
|
+
import '../banner/BannerContent.js';
|
|
21
|
+
import '../border-item/BorderItem.js';
|
|
22
|
+
import '../border-layout/BorderLayout.js';
|
|
23
|
+
import '../button/Button.js';
|
|
24
|
+
import '../card/Card.js';
|
|
25
|
+
import '../card/InteractableCard.js';
|
|
26
|
+
import './Checkbox.js';
|
|
27
|
+
import './CheckboxGroup.js';
|
|
11
28
|
import css_248z from './CheckboxIcon.css.js';
|
|
12
29
|
import { SuccessSmallSolidIcon, SuccessSolidIcon, SuccessSmallIcon, SuccessIcon } from '@salt-ds/icons';
|
|
30
|
+
import '../combo-box/ComboBox.js';
|
|
31
|
+
import '../dialog/Dialog.js';
|
|
32
|
+
import '../status-indicator/StatusIndicator.js';
|
|
33
|
+
import '../text/Text.js';
|
|
34
|
+
import '../text/Display.js';
|
|
35
|
+
import '../text/Headings.js';
|
|
36
|
+
import '../text/Label.js';
|
|
37
|
+
import '../text/TextNotation.js';
|
|
38
|
+
import '../text/TextAction.js';
|
|
39
|
+
import '../dialog/DialogContext.js';
|
|
40
|
+
import '../dialog/DialogActions.js';
|
|
41
|
+
import '../dialog/DialogContent.js';
|
|
42
|
+
import '../dialog/DialogCloseButton.js';
|
|
43
|
+
import '../drawer/Drawer.js';
|
|
44
|
+
import '../drawer/DrawerCloseButton.js';
|
|
45
|
+
import '../dropdown/Dropdown.js';
|
|
46
|
+
import '../file-drop-zone/FileDropZone.js';
|
|
47
|
+
import '../file-drop-zone/FileDropZoneIcon.js';
|
|
48
|
+
import '../file-drop-zone/FileDropZoneTrigger.js';
|
|
49
|
+
import '../flex-item/FlexItem.js';
|
|
50
|
+
import '../flex-layout/FlexLayout.js';
|
|
51
|
+
import '../flow-layout/FlowLayout.js';
|
|
52
|
+
import '../form-field/FormField.js';
|
|
53
|
+
import '../form-field-context/FormFieldContext.js';
|
|
54
|
+
import '../grid-item/GridItem.js';
|
|
55
|
+
import '../grid-layout/GridLayout.js';
|
|
56
|
+
import '../input/Input.js';
|
|
57
|
+
import '../link/Link.js';
|
|
58
|
+
import '../link-card/LinkCard.js';
|
|
59
|
+
import '../list-control/ListControlContext.js';
|
|
60
|
+
import '../multiline-input/MultilineInput.js';
|
|
61
|
+
import '../navigation-item/NavigationItem.js';
|
|
62
|
+
import '../option/Option.js';
|
|
63
|
+
import '../option/OptionGroup.js';
|
|
64
|
+
import '../pagination/Pagination.js';
|
|
65
|
+
import '../pagination/Paginator.js';
|
|
66
|
+
import '../pagination/CompactInput.js';
|
|
67
|
+
import '../pagination/CompactPaginator.js';
|
|
68
|
+
import '../pagination/GoToInput.js';
|
|
69
|
+
import '../panel/Panel.js';
|
|
70
|
+
import '../pill/Pill.js';
|
|
71
|
+
import '../progress/CircularProgress/CircularProgress.js';
|
|
72
|
+
import '../progress/LinearProgress/LinearProgress.js';
|
|
73
|
+
import '../radio-button/RadioButton.js';
|
|
74
|
+
import '../radio-button/RadioButtonGroup.js';
|
|
75
|
+
import '../scrim/Scrim.js';
|
|
76
|
+
import '../spinner/Spinner.js';
|
|
77
|
+
import '../stack-layout/StackLayout.js';
|
|
78
|
+
import '../status-adornment/StatusAdornment.js';
|
|
79
|
+
import '../toast/Toast.js';
|
|
80
|
+
import '../toast/ToastContent.js';
|
|
81
|
+
import '../split-layout/SplitLayout.js';
|
|
82
|
+
import '../switch/Switch.js';
|
|
83
|
+
import '../toggle-button/ToggleButton.js';
|
|
84
|
+
import '../toggle-button-group/ToggleButtonGroup.js';
|
|
85
|
+
import '../toggle-button-group/ToggleButtonGroupContext.js';
|
|
86
|
+
import '../tooltip/Tooltip.js';
|
|
87
|
+
import '@floating-ui/react';
|
|
13
88
|
|
|
14
89
|
const withBaseName = makePrefixer("saltCheckboxIcon");
|
|
15
90
|
function CheckedIcon(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxIcon.js","sources":["../src/checkbox/CheckboxIcon.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useDensity } from \"../salt-provider\";\nimport { AdornmentValidationStatus } from \"../status-adornment\";\nimport { makePrefixer } from \"../utils\";\nimport checkboxIconCss from \"./CheckboxIcon.css\";\nimport {\n IconProps,\n SuccessIcon,\n SuccessSmallIcon,\n SuccessSmallSolidIcon,\n SuccessSolidIcon,\n} from \"@salt-ds/icons\";\n\nexport interface CheckboxIconProps {\n checked?: boolean;\n className?: string;\n disabled?: boolean;\n /**\n * @deprecated Use validationStatus instead\n */\n error?: boolean;\n indeterminate?: boolean;\n readOnly?: boolean;\n validationStatus?: AdornmentValidationStatus;\n}\n\nconst withBaseName = makePrefixer(\"saltCheckboxIcon\");\n\nfunction CheckedIcon(props: IconProps) {\n const density = useDensity();\n return density === \"high\" ? (\n <SuccessSmallSolidIcon {...props} />\n ) : (\n <SuccessSolidIcon {...props} />\n );\n}\n\nfunction CheckedReadOnlyIcon(props: IconProps) {\n const density = useDensity();\n return density === \"high\" ? (\n <SuccessSmallIcon {...props} />\n ) : (\n <SuccessIcon {...props} />\n );\n}\n\nexport const CheckboxIcon = ({\n checked = false,\n className,\n disabled,\n error,\n indeterminate,\n validationStatus,\n readOnly,\n}: CheckboxIconProps): JSX.Element => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-checkbox-icon\",\n css: checkboxIconCss,\n window: targetWindow,\n });\n\n return (\n <div\n aria-hidden=\"true\"\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"checked\")]: checked,\n [withBaseName(\"disabled\")]: disabled,\n [withBaseName(\"error\")]: error,\n [withBaseName(validationStatus || \"\")]: validationStatus,\n [withBaseName(\"indeterminate\")]: indeterminate,\n [withBaseName(\"readOnly\")]: readOnly,\n },\n className\n )}\n >\n {checked && !indeterminate && !readOnly && (\n <CheckedIcon className={withBaseName(\"icon\")} />\n )}\n {checked && !indeterminate && readOnly && (\n <CheckedReadOnlyIcon className={withBaseName(\"icon\")} />\n )}\n </div>\n );\n};\n"],"names":["checkboxIconCss"],"mappings":"
|
|
1
|
+
{"version":3,"file":"CheckboxIcon.js","sources":["../src/checkbox/CheckboxIcon.tsx"],"sourcesContent":["import { clsx } from \"clsx\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { useDensity } from \"../salt-provider\";\nimport { AdornmentValidationStatus } from \"../status-adornment\";\nimport { makePrefixer } from \"../utils\";\nimport checkboxIconCss from \"./CheckboxIcon.css\";\nimport {\n IconProps,\n SuccessIcon,\n SuccessSmallIcon,\n SuccessSmallSolidIcon,\n SuccessSolidIcon,\n} from \"@salt-ds/icons\";\n\nexport interface CheckboxIconProps {\n checked?: boolean;\n className?: string;\n disabled?: boolean;\n /**\n * @deprecated Use validationStatus instead\n */\n error?: boolean;\n indeterminate?: boolean;\n readOnly?: boolean;\n validationStatus?: AdornmentValidationStatus;\n}\n\nconst withBaseName = makePrefixer(\"saltCheckboxIcon\");\n\nfunction CheckedIcon(props: IconProps) {\n const density = useDensity();\n return density === \"high\" ? (\n <SuccessSmallSolidIcon {...props} />\n ) : (\n <SuccessSolidIcon {...props} />\n );\n}\n\nfunction CheckedReadOnlyIcon(props: IconProps) {\n const density = useDensity();\n return density === \"high\" ? (\n <SuccessSmallIcon {...props} />\n ) : (\n <SuccessIcon {...props} />\n );\n}\n\nexport const CheckboxIcon = ({\n checked = false,\n className,\n disabled,\n error,\n indeterminate,\n validationStatus,\n readOnly,\n}: CheckboxIconProps): JSX.Element => {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-checkbox-icon\",\n css: checkboxIconCss,\n window: targetWindow,\n });\n\n return (\n <div\n aria-hidden=\"true\"\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"checked\")]: checked,\n [withBaseName(\"disabled\")]: disabled,\n [withBaseName(\"error\")]: error,\n [withBaseName(validationStatus || \"\")]: validationStatus,\n [withBaseName(\"indeterminate\")]: indeterminate,\n [withBaseName(\"readOnly\")]: readOnly,\n },\n className\n )}\n >\n {checked && !indeterminate && !readOnly && (\n <CheckedIcon className={withBaseName(\"icon\")} />\n )}\n {checked && !indeterminate && readOnly && (\n <CheckedReadOnlyIcon className={withBaseName(\"icon\")} />\n )}\n </div>\n );\n};\n"],"names":["checkboxIconCss"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,MAAM,YAAA,GAAe,aAAa,kBAAkB,CAAA,CAAA;AAEpD,SAAS,YAAY,KAAkB,EAAA;AACrC,EAAA,MAAM,UAAU,UAAW,EAAA,CAAA;AAC3B,EAAO,OAAA,OAAA,KAAY,yBAChB,GAAA,CAAA,qBAAA,EAAA;AAAA,IAAuB,GAAG,KAAA;AAAA,GAAO,oBAEjC,GAAA,CAAA,gBAAA,EAAA;AAAA,IAAkB,GAAG,KAAA;AAAA,GAAO,CAAA,CAAA;AAEjC,CAAA;AAEA,SAAS,oBAAoB,KAAkB,EAAA;AAC7C,EAAA,MAAM,UAAU,UAAW,EAAA,CAAA;AAC3B,EAAO,OAAA,OAAA,KAAY,yBAChB,GAAA,CAAA,gBAAA,EAAA;AAAA,IAAkB,GAAG,KAAA;AAAA,GAAO,oBAE5B,GAAA,CAAA,WAAA,EAAA;AAAA,IAAa,GAAG,KAAA;AAAA,GAAO,CAAA,CAAA;AAE5B,CAAA;AAEO,MAAM,eAAe,CAAC;AAAA,EAC3B,OAAU,GAAA,KAAA;AAAA,EACV,SAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,aAAA;AAAA,EACA,gBAAA;AAAA,EACA,QAAA;AACF,CAAsC,KAAA;AACpC,EAAA,MAAM,eAAe,SAAU,EAAA,CAAA;AAC/B,EAAyB,wBAAA,CAAA;AAAA,IACvB,MAAQ,EAAA,oBAAA;AAAA,IACR,GAAK,EAAAA,QAAA;AAAA,IACL,MAAQ,EAAA,YAAA;AAAA,GACT,CAAA,CAAA;AAED,EAAA,uBACG,IAAA,CAAA,KAAA,EAAA;AAAA,IACC,aAAY,EAAA,MAAA;AAAA,IACZ,SAAW,EAAA,IAAA;AAAA,MACT,YAAa,EAAA;AAAA,MACb;AAAA,QACE,CAAC,YAAa,CAAA,SAAS,CAAI,GAAA,OAAA;AAAA,QAC3B,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,QAAA;AAAA,QAC5B,CAAC,YAAa,CAAA,OAAO,CAAI,GAAA,KAAA;AAAA,QACzB,CAAC,YAAA,CAAa,gBAAoB,IAAA,EAAE,CAAI,GAAA,gBAAA;AAAA,QACxC,CAAC,YAAa,CAAA,eAAe,CAAI,GAAA,aAAA;AAAA,QACjC,CAAC,YAAa,CAAA,UAAU,CAAI,GAAA,QAAA;AAAA,OAC9B;AAAA,MACA,SAAA;AAAA,KACF;AAAA,IAEC,QAAA,EAAA;AAAA,MAAA,OAAA,IAAW,CAAC,aAAA,IAAiB,CAAC,QAAA,oBAC5B,GAAA,CAAA,WAAA,EAAA;AAAA,QAAY,SAAA,EAAW,aAAa,MAAM,CAAA;AAAA,OAAG,CAAA;AAAA,MAE/C,OAAW,IAAA,CAAC,aAAiB,IAAA,QAAA,oBAC3B,GAAA,CAAA,mBAAA,EAAA;AAAA,QAAoB,SAAA,EAAW,aAAa,MAAM,CAAA;AAAA,OAAG,CAAA;AAAA,KAAA;AAAA,GAE1D,CAAA,CAAA;AAEJ;;;;"}
|
|
@@ -5,6 +5,85 @@ import '../../utils/useId.js';
|
|
|
5
5
|
import '../../salt-provider/SaltProvider.js';
|
|
6
6
|
import '../../viewport/ViewportProvider.js';
|
|
7
7
|
import 'clsx';
|
|
8
|
+
import '../../accordion/AccordionGroup.js';
|
|
9
|
+
import '../../accordion/AccordionPanel.js';
|
|
10
|
+
import '../../accordion/Accordion.js';
|
|
11
|
+
import '../../accordion/AccordionHeader.js';
|
|
12
|
+
import '../../aria-announcer/AriaAnnouncerContext.js';
|
|
13
|
+
import 'react/jsx-runtime';
|
|
14
|
+
import '../../avatar/Avatar.js';
|
|
15
|
+
import '../../badge/Badge.js';
|
|
16
|
+
import '../../banner/Banner.js';
|
|
17
|
+
import '../../banner/BannerActions.js';
|
|
18
|
+
import '../../banner/BannerContent.js';
|
|
19
|
+
import '../../border-item/BorderItem.js';
|
|
20
|
+
import '../../border-layout/BorderLayout.js';
|
|
21
|
+
import '../../button/Button.js';
|
|
22
|
+
import '../../card/Card.js';
|
|
23
|
+
import '../../card/InteractableCard.js';
|
|
24
|
+
import '../Checkbox.js';
|
|
25
|
+
import '../CheckboxGroup.js';
|
|
26
|
+
import '@salt-ds/styles';
|
|
27
|
+
import '@salt-ds/window';
|
|
28
|
+
import '@salt-ds/icons';
|
|
29
|
+
import '../../combo-box/ComboBox.js';
|
|
30
|
+
import '../../dialog/Dialog.js';
|
|
31
|
+
import '../../status-indicator/StatusIndicator.js';
|
|
32
|
+
import '../../text/Text.js';
|
|
33
|
+
import '../../text/Display.js';
|
|
34
|
+
import '../../text/Headings.js';
|
|
35
|
+
import '../../text/Label.js';
|
|
36
|
+
import '../../text/TextNotation.js';
|
|
37
|
+
import '../../text/TextAction.js';
|
|
38
|
+
import '../../dialog/DialogContext.js';
|
|
39
|
+
import '../../dialog/DialogActions.js';
|
|
40
|
+
import '../../dialog/DialogContent.js';
|
|
41
|
+
import '../../dialog/DialogCloseButton.js';
|
|
42
|
+
import '../../drawer/Drawer.js';
|
|
43
|
+
import '../../drawer/DrawerCloseButton.js';
|
|
44
|
+
import '../../dropdown/Dropdown.js';
|
|
45
|
+
import '../../file-drop-zone/FileDropZone.js';
|
|
46
|
+
import '../../file-drop-zone/FileDropZoneIcon.js';
|
|
47
|
+
import '../../file-drop-zone/FileDropZoneTrigger.js';
|
|
48
|
+
import '../../flex-item/FlexItem.js';
|
|
49
|
+
import '../../flex-layout/FlexLayout.js';
|
|
50
|
+
import '../../flow-layout/FlowLayout.js';
|
|
51
|
+
import '../../form-field/FormField.js';
|
|
52
|
+
import '../../form-field-context/FormFieldContext.js';
|
|
53
|
+
import '../../grid-item/GridItem.js';
|
|
54
|
+
import '../../grid-layout/GridLayout.js';
|
|
55
|
+
import '../../input/Input.js';
|
|
56
|
+
import '../../link/Link.js';
|
|
57
|
+
import '../../link-card/LinkCard.js';
|
|
58
|
+
import '../../list-control/ListControlContext.js';
|
|
59
|
+
import '../../multiline-input/MultilineInput.js';
|
|
60
|
+
import '../../navigation-item/NavigationItem.js';
|
|
61
|
+
import '../../option/Option.js';
|
|
62
|
+
import '../../option/OptionGroup.js';
|
|
63
|
+
import '../../pagination/Pagination.js';
|
|
64
|
+
import '../../pagination/Paginator.js';
|
|
65
|
+
import '../../pagination/CompactInput.js';
|
|
66
|
+
import '../../pagination/CompactPaginator.js';
|
|
67
|
+
import '../../pagination/GoToInput.js';
|
|
68
|
+
import '../../panel/Panel.js';
|
|
69
|
+
import '../../pill/Pill.js';
|
|
70
|
+
import '../../progress/CircularProgress/CircularProgress.js';
|
|
71
|
+
import '../../progress/LinearProgress/LinearProgress.js';
|
|
72
|
+
import '../../radio-button/RadioButton.js';
|
|
73
|
+
import '../../radio-button/RadioButtonGroup.js';
|
|
74
|
+
import '../../scrim/Scrim.js';
|
|
75
|
+
import '../../spinner/Spinner.js';
|
|
76
|
+
import '../../stack-layout/StackLayout.js';
|
|
77
|
+
import '../../status-adornment/StatusAdornment.js';
|
|
78
|
+
import '../../toast/Toast.js';
|
|
79
|
+
import '../../toast/ToastContent.js';
|
|
80
|
+
import '../../split-layout/SplitLayout.js';
|
|
81
|
+
import '../../switch/Switch.js';
|
|
82
|
+
import '../../toggle-button/ToggleButton.js';
|
|
83
|
+
import '../../toggle-button-group/ToggleButtonGroup.js';
|
|
84
|
+
import '../../toggle-button-group/ToggleButtonGroupContext.js';
|
|
85
|
+
import '../../tooltip/Tooltip.js';
|
|
86
|
+
import '@floating-ui/react';
|
|
8
87
|
|
|
9
88
|
const CheckboxGroupContext = createContext(
|
|
10
89
|
"CheckboxGroupContext",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxGroupContext.js","sources":["../src/checkbox/internal/CheckboxGroupContext.ts"],"sourcesContent":["import { AdornmentValidationStatus } from \"../../status-adornment\";\nimport { CheckboxGroupProps } from \"../CheckboxGroup\";\nimport { createContext } from \"../../utils\";\n\nexport interface CheckboxGroupState {\n disabled?: boolean;\n name?: CheckboxGroupProps[\"name\"];\n onChange?: CheckboxGroupProps[\"onChange\"];\n checkedValues?: CheckboxGroupProps[\"checkedValues\"];\n readOnly?: boolean;\n validationStatus?: AdornmentValidationStatus;\n}\n\nconst CheckboxGroupContext = createContext<CheckboxGroupState | undefined>(\n \"CheckboxGroupContext\",\n undefined\n);\n\nexport { CheckboxGroupContext };\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CheckboxGroupContext.js","sources":["../src/checkbox/internal/CheckboxGroupContext.ts"],"sourcesContent":["import { AdornmentValidationStatus } from \"../../status-adornment\";\nimport { CheckboxGroupProps } from \"../CheckboxGroup\";\nimport { createContext } from \"../../utils\";\n\nexport interface CheckboxGroupState {\n disabled?: boolean;\n name?: CheckboxGroupProps[\"name\"];\n onChange?: CheckboxGroupProps[\"onChange\"];\n checkedValues?: CheckboxGroupProps[\"checkedValues\"];\n readOnly?: boolean;\n validationStatus?: AdornmentValidationStatus;\n}\n\nconst CheckboxGroupContext = createContext<CheckboxGroupState | undefined>(\n \"CheckboxGroupContext\",\n undefined\n);\n\nexport { CheckboxGroupContext };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,MAAM,oBAAuB,GAAA,aAAA;AAAA,EAC3B,sBAAA;AAAA,EACA,KAAA,CAAA;AACF;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboBox.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1,439 @@
|
|
|
1
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { forwardRef, useRef, useEffect } from 'react';
|
|
3
|
+
import { clsx } from 'clsx';
|
|
4
|
+
import { size, flip, useInteractions, useDismiss, useFocus, useClick } from '@floating-ui/react';
|
|
5
|
+
import { ChevronUpIcon, ChevronDownIcon } from '@salt-ds/icons';
|
|
6
|
+
import { useWindow } from '@salt-ds/window';
|
|
7
|
+
import { useComponentCssInjection } from '@salt-ds/styles';
|
|
8
|
+
import { makePrefixer } from '../utils/makePrefixer.js';
|
|
9
|
+
import { useFloatingUI } from '../utils/useFloatingUI/useFloatingUI.js';
|
|
10
|
+
import { useForkRef } from '../utils/useForkRef.js';
|
|
11
|
+
import { useId } from '../utils/useId.js';
|
|
12
|
+
import '../salt-provider/SaltProvider.js';
|
|
13
|
+
import '../viewport/ViewportProvider.js';
|
|
14
|
+
import '../accordion/AccordionGroup.js';
|
|
15
|
+
import '../accordion/AccordionPanel.js';
|
|
16
|
+
import '../accordion/Accordion.js';
|
|
17
|
+
import '../accordion/AccordionHeader.js';
|
|
18
|
+
import '../aria-announcer/AriaAnnouncerContext.js';
|
|
19
|
+
import '../avatar/Avatar.js';
|
|
20
|
+
import '../badge/Badge.js';
|
|
21
|
+
import '../banner/Banner.js';
|
|
22
|
+
import '../banner/BannerActions.js';
|
|
23
|
+
import '../banner/BannerContent.js';
|
|
24
|
+
import '../border-item/BorderItem.js';
|
|
25
|
+
import '../border-layout/BorderLayout.js';
|
|
26
|
+
import { Button } from '../button/Button.js';
|
|
27
|
+
import '../card/Card.js';
|
|
28
|
+
import '../card/InteractableCard.js';
|
|
29
|
+
import '../checkbox/Checkbox.js';
|
|
30
|
+
import '../checkbox/CheckboxGroup.js';
|
|
31
|
+
import '../dialog/Dialog.js';
|
|
32
|
+
import '../status-indicator/StatusIndicator.js';
|
|
33
|
+
import '../text/Text.js';
|
|
34
|
+
import '../text/Display.js';
|
|
35
|
+
import '../text/Headings.js';
|
|
36
|
+
import '../text/Label.js';
|
|
37
|
+
import '../text/TextNotation.js';
|
|
38
|
+
import '../text/TextAction.js';
|
|
39
|
+
import '../dialog/DialogContext.js';
|
|
40
|
+
import '../dialog/DialogActions.js';
|
|
41
|
+
import '../dialog/DialogContent.js';
|
|
42
|
+
import '../dialog/DialogCloseButton.js';
|
|
43
|
+
import '../drawer/Drawer.js';
|
|
44
|
+
import '../drawer/DrawerCloseButton.js';
|
|
45
|
+
import '../dropdown/Dropdown.js';
|
|
46
|
+
import '../file-drop-zone/FileDropZone.js';
|
|
47
|
+
import '../file-drop-zone/FileDropZoneIcon.js';
|
|
48
|
+
import '../file-drop-zone/FileDropZoneTrigger.js';
|
|
49
|
+
import '../flex-item/FlexItem.js';
|
|
50
|
+
import '../flex-layout/FlexLayout.js';
|
|
51
|
+
import '../flow-layout/FlowLayout.js';
|
|
52
|
+
import '../form-field/FormField.js';
|
|
53
|
+
import '../form-field-context/FormFieldContext.js';
|
|
54
|
+
import { useFormFieldProps } from '../form-field-context/useFormFieldProps.js';
|
|
55
|
+
import '../grid-item/GridItem.js';
|
|
56
|
+
import '../grid-layout/GridLayout.js';
|
|
57
|
+
import '../input/Input.js';
|
|
58
|
+
import '../link/Link.js';
|
|
59
|
+
import '../link-card/LinkCard.js';
|
|
60
|
+
import { ListControlContext } from '../list-control/ListControlContext.js';
|
|
61
|
+
import '../multiline-input/MultilineInput.js';
|
|
62
|
+
import '../navigation-item/NavigationItem.js';
|
|
63
|
+
import '../option/Option.js';
|
|
64
|
+
import '../option/OptionGroup.js';
|
|
65
|
+
import '../pagination/Pagination.js';
|
|
66
|
+
import '../pagination/Paginator.js';
|
|
67
|
+
import '../pagination/CompactInput.js';
|
|
68
|
+
import '../pagination/CompactPaginator.js';
|
|
69
|
+
import '../pagination/GoToInput.js';
|
|
70
|
+
import '../panel/Panel.js';
|
|
71
|
+
import '../pill/Pill.js';
|
|
72
|
+
import '../progress/CircularProgress/CircularProgress.js';
|
|
73
|
+
import '../progress/LinearProgress/LinearProgress.js';
|
|
74
|
+
import '../radio-button/RadioButton.js';
|
|
75
|
+
import '../radio-button/RadioButtonGroup.js';
|
|
76
|
+
import '../scrim/Scrim.js';
|
|
77
|
+
import '../spinner/Spinner.js';
|
|
78
|
+
import '../stack-layout/StackLayout.js';
|
|
79
|
+
import '../status-adornment/StatusAdornment.js';
|
|
80
|
+
import '../toast/Toast.js';
|
|
81
|
+
import '../toast/ToastContent.js';
|
|
82
|
+
import '../split-layout/SplitLayout.js';
|
|
83
|
+
import '../switch/Switch.js';
|
|
84
|
+
import '../toggle-button/ToggleButton.js';
|
|
85
|
+
import '../toggle-button-group/ToggleButtonGroup.js';
|
|
86
|
+
import '../toggle-button-group/ToggleButtonGroupContext.js';
|
|
87
|
+
import '../tooltip/Tooltip.js';
|
|
88
|
+
import { defaultValueToString } from '../list-control/ListControlState.js';
|
|
89
|
+
import { useComboBox } from './useComboBox.js';
|
|
90
|
+
import { OptionList } from '../option/OptionList.js';
|
|
91
|
+
import { PillInput } from '../pill-input/PillInput.js';
|
|
92
|
+
import css_248z from './ComboBox.css.js';
|
|
93
|
+
|
|
94
|
+
const withBaseName = makePrefixer("saltComboBox");
|
|
95
|
+
const ComboBox = forwardRef(function ComboBox2(props, ref) {
|
|
96
|
+
var _a, _b;
|
|
97
|
+
const {
|
|
98
|
+
children,
|
|
99
|
+
className,
|
|
100
|
+
disabled: disabledProp,
|
|
101
|
+
endAdornment,
|
|
102
|
+
readOnly: readOnlyProp,
|
|
103
|
+
multiselect,
|
|
104
|
+
onSelectionChange,
|
|
105
|
+
selected,
|
|
106
|
+
defaultSelected,
|
|
107
|
+
defaultOpen,
|
|
108
|
+
onOpenChange,
|
|
109
|
+
onChange,
|
|
110
|
+
open,
|
|
111
|
+
inputProps: inputPropsProp,
|
|
112
|
+
variant = "primary",
|
|
113
|
+
onKeyDown,
|
|
114
|
+
onFocus,
|
|
115
|
+
onBlur,
|
|
116
|
+
value,
|
|
117
|
+
defaultValue,
|
|
118
|
+
valueToString = defaultValueToString,
|
|
119
|
+
truncate,
|
|
120
|
+
...rest
|
|
121
|
+
} = props;
|
|
122
|
+
const targetWindow = useWindow();
|
|
123
|
+
useComponentCssInjection({
|
|
124
|
+
testId: "salt-combo-box",
|
|
125
|
+
css: css_248z,
|
|
126
|
+
window: targetWindow
|
|
127
|
+
});
|
|
128
|
+
const {
|
|
129
|
+
a11yProps: { "aria-labelledby": formFieldLabelledBy } = {},
|
|
130
|
+
disabled: formFieldDisabled,
|
|
131
|
+
readOnly: formFieldReadOnly
|
|
132
|
+
} = useFormFieldProps();
|
|
133
|
+
const disabled = Boolean(disabledProp) || formFieldDisabled;
|
|
134
|
+
const readOnly = Boolean(readOnlyProp) || formFieldReadOnly;
|
|
135
|
+
const inputRef = useRef(null);
|
|
136
|
+
const listControl = useComboBox({
|
|
137
|
+
open,
|
|
138
|
+
defaultOpen,
|
|
139
|
+
onOpenChange,
|
|
140
|
+
multiselect,
|
|
141
|
+
defaultSelected,
|
|
142
|
+
selected,
|
|
143
|
+
onSelectionChange,
|
|
144
|
+
value,
|
|
145
|
+
defaultValue,
|
|
146
|
+
disabled,
|
|
147
|
+
readOnly,
|
|
148
|
+
valueToString
|
|
149
|
+
});
|
|
150
|
+
const {
|
|
151
|
+
activeState,
|
|
152
|
+
setActive,
|
|
153
|
+
openState,
|
|
154
|
+
setOpen,
|
|
155
|
+
openKey,
|
|
156
|
+
getOptionAtIndex,
|
|
157
|
+
getIndexOfOption,
|
|
158
|
+
getOptionsMatching,
|
|
159
|
+
options,
|
|
160
|
+
selectedState,
|
|
161
|
+
select,
|
|
162
|
+
clear,
|
|
163
|
+
focusVisibleState,
|
|
164
|
+
setFocusVisibleState,
|
|
165
|
+
focusedState,
|
|
166
|
+
setFocusedState,
|
|
167
|
+
listRef,
|
|
168
|
+
valueState,
|
|
169
|
+
setValueState
|
|
170
|
+
} = listControl;
|
|
171
|
+
const handleOpenChange = (newOpen, _event, reason) => {
|
|
172
|
+
var _a2;
|
|
173
|
+
const focusNotBlur = reason === "focus" && newOpen;
|
|
174
|
+
if (reason == "focus") {
|
|
175
|
+
setFocusedState(newOpen);
|
|
176
|
+
}
|
|
177
|
+
if (reason == "focus" && !newOpen) {
|
|
178
|
+
setFocusVisibleState(false);
|
|
179
|
+
}
|
|
180
|
+
if (readOnly || focusNotBlur)
|
|
181
|
+
return;
|
|
182
|
+
setOpen(newOpen);
|
|
183
|
+
if (newOpen) {
|
|
184
|
+
(_a2 = inputRef.current) == null ? void 0 : _a2.focus();
|
|
185
|
+
}
|
|
186
|
+
};
|
|
187
|
+
const { x, y, strategy, elements, floating, reference, context } = useFloatingUI({
|
|
188
|
+
open: openState && !readOnly && children != void 0,
|
|
189
|
+
onOpenChange: handleOpenChange,
|
|
190
|
+
placement: "bottom-start",
|
|
191
|
+
strategy: "fixed",
|
|
192
|
+
middleware: [
|
|
193
|
+
size({
|
|
194
|
+
apply({ rects, elements: elements2, availableHeight }) {
|
|
195
|
+
Object.assign(elements2.floating.style, {
|
|
196
|
+
minWidth: `${rects.reference.width}px`,
|
|
197
|
+
maxHeight: `max(calc(${availableHeight}px - var(--salt-spacing-100)), calc((var(--salt-size-base) + var(--salt-spacing-100)) * 5))`
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
}),
|
|
201
|
+
flip({ fallbackStrategy: "initialPlacement" })
|
|
202
|
+
]
|
|
203
|
+
});
|
|
204
|
+
const { getReferenceProps, getFloatingProps } = useInteractions([
|
|
205
|
+
useDismiss(context),
|
|
206
|
+
useFocus(context),
|
|
207
|
+
useClick(context, { keyboardHandlers: false, toggle: false })
|
|
208
|
+
]);
|
|
209
|
+
const handleRef = useForkRef(reference, ref);
|
|
210
|
+
const handleButtonClick = (event) => {
|
|
211
|
+
if (!readOnly) {
|
|
212
|
+
event.stopPropagation();
|
|
213
|
+
setFocusVisibleState(false);
|
|
214
|
+
setOpen(!openState, "manual");
|
|
215
|
+
}
|
|
216
|
+
};
|
|
217
|
+
const handleButtonFocus = () => {
|
|
218
|
+
var _a2;
|
|
219
|
+
(_a2 = inputRef.current) == null ? void 0 : _a2.focus();
|
|
220
|
+
};
|
|
221
|
+
const handleKeyDown = (event) => {
|
|
222
|
+
const currentIndex = activeState ? getIndexOfOption(activeState) : -1;
|
|
223
|
+
const count = options.length - 1;
|
|
224
|
+
if (readOnly) {
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
if (!openState) {
|
|
228
|
+
if (event.key === "ArrowDown" || event.key === "ArrowUp") {
|
|
229
|
+
setOpen(true, void 0, event.key);
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
let newActive;
|
|
234
|
+
switch (event.key) {
|
|
235
|
+
case "ArrowDown":
|
|
236
|
+
newActive = getOptionAtIndex(Math.min(count, currentIndex + 1));
|
|
237
|
+
break;
|
|
238
|
+
case "ArrowUp":
|
|
239
|
+
newActive = getOptionAtIndex(Math.max(0, currentIndex - 1));
|
|
240
|
+
break;
|
|
241
|
+
case "Home":
|
|
242
|
+
newActive = getOptionAtIndex(0);
|
|
243
|
+
break;
|
|
244
|
+
case "End":
|
|
245
|
+
newActive = getOptionAtIndex(count);
|
|
246
|
+
break;
|
|
247
|
+
case "PageUp":
|
|
248
|
+
newActive = getOptionAtIndex(Math.max(0, currentIndex - 10));
|
|
249
|
+
break;
|
|
250
|
+
case "PageDown":
|
|
251
|
+
newActive = getOptionAtIndex(Math.min(count, currentIndex + 10));
|
|
252
|
+
break;
|
|
253
|
+
case "Enter":
|
|
254
|
+
if (openState && (activeState == null ? void 0 : activeState.disabled)) {
|
|
255
|
+
event.preventDefault();
|
|
256
|
+
return;
|
|
257
|
+
}
|
|
258
|
+
if (!openState || !activeState) {
|
|
259
|
+
return;
|
|
260
|
+
}
|
|
261
|
+
select(event, activeState);
|
|
262
|
+
if (!multiselect) {
|
|
263
|
+
event.preventDefault();
|
|
264
|
+
}
|
|
265
|
+
break;
|
|
266
|
+
case "Tab":
|
|
267
|
+
if (!multiselect && activeState) {
|
|
268
|
+
select(event, activeState);
|
|
269
|
+
}
|
|
270
|
+
break;
|
|
271
|
+
}
|
|
272
|
+
if (newActive) {
|
|
273
|
+
setFocusVisibleState(true);
|
|
274
|
+
}
|
|
275
|
+
if (newActive && (newActive == null ? void 0 : newActive.id) != (activeState == null ? void 0 : activeState.id)) {
|
|
276
|
+
event.preventDefault();
|
|
277
|
+
setActive(newActive);
|
|
278
|
+
}
|
|
279
|
+
onKeyDown == null ? void 0 : onKeyDown(event);
|
|
280
|
+
};
|
|
281
|
+
const handleFocus = (event) => {
|
|
282
|
+
setFocusedState(true);
|
|
283
|
+
onFocus == null ? void 0 : onFocus(event);
|
|
284
|
+
};
|
|
285
|
+
const handleChange = (event) => {
|
|
286
|
+
if (!openState) {
|
|
287
|
+
setOpen(true, "input");
|
|
288
|
+
}
|
|
289
|
+
if (event.target.value === "" && !multiselect) {
|
|
290
|
+
clear(event);
|
|
291
|
+
}
|
|
292
|
+
setValueState(event.target.value);
|
|
293
|
+
queueMicrotask(() => {
|
|
294
|
+
if (event.target.value !== "") {
|
|
295
|
+
const newOption = getOptionAtIndex(0);
|
|
296
|
+
if (newOption) {
|
|
297
|
+
setActive(newOption);
|
|
298
|
+
}
|
|
299
|
+
} else {
|
|
300
|
+
setActive(void 0);
|
|
301
|
+
}
|
|
302
|
+
});
|
|
303
|
+
onChange == null ? void 0 : onChange(event);
|
|
304
|
+
};
|
|
305
|
+
const handlePillRemove = (event, index) => {
|
|
306
|
+
event.stopPropagation();
|
|
307
|
+
const removed = selectedState[index];
|
|
308
|
+
select(event, getOptionsMatching((option) => option.value === removed)[0]);
|
|
309
|
+
};
|
|
310
|
+
const handleListMouseOver = () => {
|
|
311
|
+
setFocusVisibleState(false);
|
|
312
|
+
};
|
|
313
|
+
const handleListMouseLeave = () => {
|
|
314
|
+
setActive(void 0);
|
|
315
|
+
};
|
|
316
|
+
const handleFocusInput = () => {
|
|
317
|
+
var _a2;
|
|
318
|
+
(_a2 = inputRef.current) == null ? void 0 : _a2.focus();
|
|
319
|
+
};
|
|
320
|
+
useEffect(() => {
|
|
321
|
+
const activeIndex = activeState ? getIndexOfOption(activeState) : -1;
|
|
322
|
+
let newActive = void 0;
|
|
323
|
+
if (activeIndex > -1) {
|
|
324
|
+
return;
|
|
325
|
+
}
|
|
326
|
+
if (!openState) {
|
|
327
|
+
setActive(void 0);
|
|
328
|
+
return;
|
|
329
|
+
}
|
|
330
|
+
if (selectedState.length > 0) {
|
|
331
|
+
newActive = getOptionsMatching(
|
|
332
|
+
(option) => option.value === selectedState[0]
|
|
333
|
+
).pop();
|
|
334
|
+
}
|
|
335
|
+
if (!newActive) {
|
|
336
|
+
if (openKey.current === "ArrowDown") {
|
|
337
|
+
newActive = getOptionAtIndex(0);
|
|
338
|
+
setFocusVisibleState(true);
|
|
339
|
+
} else if (openKey.current === "ArrowUp") {
|
|
340
|
+
newActive = getOptionAtIndex(options.length - 1);
|
|
341
|
+
setFocusVisibleState(true);
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
if (!newActive) {
|
|
345
|
+
newActive = getOptionAtIndex(0);
|
|
346
|
+
}
|
|
347
|
+
setActive(newActive);
|
|
348
|
+
}, [openState, children]);
|
|
349
|
+
const buttonId = useId();
|
|
350
|
+
const listId = useId();
|
|
351
|
+
const handleListRef = useForkRef(listRef, floating);
|
|
352
|
+
return /* @__PURE__ */ jsxs(ListControlContext.Provider, {
|
|
353
|
+
value: listControl,
|
|
354
|
+
children: [
|
|
355
|
+
/* @__PURE__ */ jsx(PillInput, {
|
|
356
|
+
tabIndex: -1,
|
|
357
|
+
className: clsx(
|
|
358
|
+
withBaseName(),
|
|
359
|
+
{
|
|
360
|
+
[withBaseName("focused")]: focusedState,
|
|
361
|
+
[withBaseName("focusVisible")]: focusVisibleState
|
|
362
|
+
},
|
|
363
|
+
className
|
|
364
|
+
),
|
|
365
|
+
endAdornment: /* @__PURE__ */ jsxs(Fragment, {
|
|
366
|
+
children: [
|
|
367
|
+
endAdornment,
|
|
368
|
+
!readOnly ? /* @__PURE__ */ jsx(Button, {
|
|
369
|
+
"aria-labelledby": clsx(buttonId, formFieldLabelledBy),
|
|
370
|
+
"aria-label": "Show options",
|
|
371
|
+
"aria-expanded": openState,
|
|
372
|
+
"aria-controls": openState ? listId : void 0,
|
|
373
|
+
"aria-haspopup": "listbox",
|
|
374
|
+
disabled,
|
|
375
|
+
variant: "secondary",
|
|
376
|
+
onClick: handleButtonClick,
|
|
377
|
+
onFocus: handleButtonFocus,
|
|
378
|
+
tabIndex: -1,
|
|
379
|
+
children: openState ? /* @__PURE__ */ jsx(ChevronUpIcon, {
|
|
380
|
+
"aria-hidden": true
|
|
381
|
+
}) : /* @__PURE__ */ jsx(ChevronDownIcon, {
|
|
382
|
+
"aria-hidden": true
|
|
383
|
+
})
|
|
384
|
+
}) : void 0
|
|
385
|
+
]
|
|
386
|
+
}),
|
|
387
|
+
onChange: handleChange,
|
|
388
|
+
role: "combobox",
|
|
389
|
+
disabled,
|
|
390
|
+
readOnly,
|
|
391
|
+
inputProps: {
|
|
392
|
+
role: "combobox",
|
|
393
|
+
"aria-expanded": openState,
|
|
394
|
+
"aria-multiselectable": multiselect,
|
|
395
|
+
"aria-controls": openState ? listId : void 0,
|
|
396
|
+
onKeyDown: handleKeyDown,
|
|
397
|
+
...inputPropsProp
|
|
398
|
+
},
|
|
399
|
+
"aria-activedescendant": activeState == null ? void 0 : activeState.id,
|
|
400
|
+
variant,
|
|
401
|
+
inputRef,
|
|
402
|
+
value: valueState,
|
|
403
|
+
ref: handleRef,
|
|
404
|
+
...getReferenceProps({
|
|
405
|
+
onBlur,
|
|
406
|
+
onFocus: handleFocus,
|
|
407
|
+
...rest
|
|
408
|
+
}),
|
|
409
|
+
pills: multiselect ? selectedState.map((item) => valueToString(item)) : [],
|
|
410
|
+
truncate: truncate && !focusedState && !openState,
|
|
411
|
+
onPillRemove: handlePillRemove,
|
|
412
|
+
hidePillClose: !focusedState || readOnly,
|
|
413
|
+
emptyReadOnlyMarker: readOnly && selectedState.length > 0 ? "" : void 0
|
|
414
|
+
}),
|
|
415
|
+
/* @__PURE__ */ jsx(OptionList, {
|
|
416
|
+
open: (openState || focusedState) && !readOnly && children != void 0,
|
|
417
|
+
collapsed: !openState,
|
|
418
|
+
ref: handleListRef,
|
|
419
|
+
id: listId,
|
|
420
|
+
tabIndex: -1,
|
|
421
|
+
...getFloatingProps({
|
|
422
|
+
onMouseOver: handleListMouseOver,
|
|
423
|
+
onFocus: handleFocusInput,
|
|
424
|
+
onClick: handleFocusInput,
|
|
425
|
+
onMouseLeave: handleListMouseLeave
|
|
426
|
+
}),
|
|
427
|
+
left: x != null ? x : 0,
|
|
428
|
+
top: y != null ? y : 0,
|
|
429
|
+
position: strategy,
|
|
430
|
+
width: (_a = elements.floating) == null ? void 0 : _a.offsetWidth,
|
|
431
|
+
height: (_b = elements.floating) == null ? void 0 : _b.offsetHeight,
|
|
432
|
+
children
|
|
433
|
+
})
|
|
434
|
+
]
|
|
435
|
+
});
|
|
436
|
+
});
|
|
437
|
+
|
|
438
|
+
export { ComboBox };
|
|
439
|
+
//# sourceMappingURL=ComboBox.js.map
|