@react-md/core 6.0.1 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CoreProviders.d.ts +1 -1
- package/dist/CoreProviders.js +1 -1
- package/dist/CoreProviders.js.map +1 -1
- package/dist/SsrProvider.d.ts +1 -1
- package/dist/SsrProvider.js +1 -1
- package/dist/SsrProvider.js.map +1 -1
- package/dist/_base.scss +6 -2
- package/dist/_border-radius.scss +92 -0
- package/dist/_core.scss +2 -0
- package/dist/_spacing.scss +86 -0
- package/dist/app-bar/_app-bar.scss +9 -7
- package/dist/app-bar/styles.js +1 -1
- package/dist/app-bar/styles.js.map +1 -1
- package/dist/autocomplete/Autocomplete.d.ts +2 -2
- package/dist/autocomplete/Autocomplete.js +1 -1
- package/dist/autocomplete/Autocomplete.js.map +1 -1
- package/dist/autocomplete/AutocompleteChip.d.ts +1 -1
- package/dist/autocomplete/AutocompleteChip.js +1 -1
- package/dist/autocomplete/AutocompleteChip.js.map +1 -1
- package/dist/autocomplete/AutocompleteCircularProgress.d.ts +1 -1
- package/dist/autocomplete/AutocompleteCircularProgress.js +1 -1
- package/dist/autocomplete/AutocompleteCircularProgress.js.map +1 -1
- package/dist/autocomplete/AutocompleteClearButton.d.ts +1 -1
- package/dist/autocomplete/AutocompleteClearButton.js +1 -1
- package/dist/autocomplete/AutocompleteClearButton.js.map +1 -1
- package/dist/autocomplete/AutocompleteDropdownButton.d.ts +1 -1
- package/dist/autocomplete/AutocompleteDropdownButton.js +1 -1
- package/dist/autocomplete/AutocompleteDropdownButton.js.map +1 -1
- package/dist/autocomplete/_autocomplete.scss +8 -5
- package/dist/autocomplete/useAutocomplete.d.ts +3 -3
- package/dist/autocomplete/useAutocomplete.js +2 -1
- package/dist/autocomplete/useAutocomplete.js.map +1 -1
- package/dist/avatar/Avatar.d.ts +1 -1
- package/dist/avatar/Avatar.js +1 -1
- package/dist/avatar/Avatar.js.map +1 -1
- package/dist/avatar/_avatar.scss +3 -3
- package/dist/badge/Badge.d.ts +1 -1
- package/dist/badge/Badge.js +1 -1
- package/dist/badge/Badge.js.map +1 -1
- package/dist/badge/_badge.scss +10 -2
- package/dist/box/Box.d.ts +1 -1
- package/dist/box/Box.js +1 -1
- package/dist/box/Box.js.map +1 -1
- package/dist/box/_box.scss +78 -11
- package/dist/button/AsyncButton.d.ts +1 -1
- package/dist/button/AsyncButton.js +1 -1
- package/dist/button/AsyncButton.js.map +1 -1
- package/dist/button/Button.d.ts +1 -1
- package/dist/button/Button.js +1 -1
- package/dist/button/Button.js.map +1 -1
- package/dist/button/ButtonUnstyled.d.ts +1 -1
- package/dist/button/ButtonUnstyled.js +1 -1
- package/dist/button/ButtonUnstyled.js.map +1 -1
- package/dist/button/TooltippedButton.d.ts +1 -1
- package/dist/button/TooltippedButton.js +1 -1
- package/dist/button/TooltippedButton.js.map +1 -1
- package/dist/button/_button.scss +21 -11
- package/dist/card/Card.d.ts +1 -1
- package/dist/card/Card.js +1 -1
- package/dist/card/Card.js.map +1 -1
- package/dist/card/CardContent.d.ts +1 -1
- package/dist/card/CardContent.js +1 -1
- package/dist/card/CardContent.js.map +1 -1
- package/dist/card/CardFooter.d.ts +1 -1
- package/dist/card/CardFooter.js +1 -1
- package/dist/card/CardFooter.js.map +1 -1
- package/dist/card/CardHeader.d.ts +1 -1
- package/dist/card/CardHeader.js +1 -1
- package/dist/card/CardHeader.js.map +1 -1
- package/dist/card/CardSubtitle.d.ts +1 -1
- package/dist/card/CardSubtitle.js +1 -1
- package/dist/card/CardSubtitle.js.map +1 -1
- package/dist/card/CardTitle.d.ts +1 -1
- package/dist/card/CardTitle.js +1 -1
- package/dist/card/CardTitle.js.map +1 -1
- package/dist/card/ClickableCard.d.ts +1 -1
- package/dist/card/ClickableCard.js +1 -1
- package/dist/card/ClickableCard.js.map +1 -1
- package/dist/card/_card.scss +9 -7
- package/dist/chip/Chip.d.ts +1 -1
- package/dist/chip/Chip.js +1 -1
- package/dist/chip/Chip.js.map +1 -1
- package/dist/chip/_chip.scss +9 -7
- package/dist/dialog/Dialog.d.ts +1 -1
- package/dist/dialog/Dialog.js +1 -1
- package/dist/dialog/Dialog.js.map +1 -1
- package/dist/dialog/DialogContent.d.ts +1 -1
- package/dist/dialog/DialogContent.js +1 -1
- package/dist/dialog/DialogContent.js.map +1 -1
- package/dist/dialog/DialogFooter.d.ts +1 -1
- package/dist/dialog/DialogFooter.js +1 -1
- package/dist/dialog/DialogFooter.js.map +1 -1
- package/dist/dialog/DialogHeader.d.ts +1 -1
- package/dist/dialog/DialogHeader.js +1 -1
- package/dist/dialog/DialogHeader.js.map +1 -1
- package/dist/dialog/DialogTitle.d.ts +1 -1
- package/dist/dialog/DialogTitle.js +1 -1
- package/dist/dialog/DialogTitle.js.map +1 -1
- package/dist/dialog/FixedDialog.d.ts +1 -1
- package/dist/dialog/FixedDialog.js +1 -1
- package/dist/dialog/FixedDialog.js.map +1 -1
- package/dist/dialog/_dialog.scss +7 -6
- package/dist/divider/Divider.d.ts +1 -1
- package/dist/divider/Divider.js +1 -1
- package/dist/divider/Divider.js.map +1 -1
- package/dist/divider/_divider.scss +3 -2
- package/dist/draggable/useDraggable.d.ts +1 -1
- package/dist/draggable/useDraggable.js +1 -1
- package/dist/draggable/useDraggable.js.map +1 -1
- package/dist/expansion-panel/ExpansionList.d.ts +1 -1
- package/dist/expansion-panel/ExpansionList.js +1 -1
- package/dist/expansion-panel/ExpansionList.js.map +1 -1
- package/dist/expansion-panel/ExpansionPanel.d.ts +1 -1
- package/dist/expansion-panel/ExpansionPanel.js +1 -1
- package/dist/expansion-panel/ExpansionPanel.js.map +1 -1
- package/dist/expansion-panel/ExpansionPanelHeader.d.ts +1 -1
- package/dist/expansion-panel/ExpansionPanelHeader.js +1 -1
- package/dist/expansion-panel/ExpansionPanelHeader.js.map +1 -1
- package/dist/expansion-panel/_expansion-panel.scss +4 -3
- package/dist/expansion-panel/useExpansionList.d.ts +1 -1
- package/dist/expansion-panel/useExpansionList.js +1 -1
- package/dist/expansion-panel/useExpansionList.js.map +1 -1
- package/dist/expansion-panel/useExpansionPanels.d.ts +1 -1
- package/dist/expansion-panel/useExpansionPanels.js +1 -1
- package/dist/expansion-panel/useExpansionPanels.js.map +1 -1
- package/dist/files/FileInput.d.ts +1 -1
- package/dist/files/FileInput.js +1 -1
- package/dist/files/FileInput.js.map +1 -1
- package/dist/files/useFileUpload.d.ts +2 -2
- package/dist/files/useFileUpload.js +2 -2
- package/dist/files/useFileUpload.js.map +1 -1
- package/dist/form/Checkbox.d.ts +1 -1
- package/dist/form/Checkbox.js +1 -1
- package/dist/form/Checkbox.js.map +1 -1
- package/dist/form/Fieldset.d.ts +1 -1
- package/dist/form/Fieldset.js +1 -1
- package/dist/form/Fieldset.js.map +1 -1
- package/dist/form/Form.d.ts +1 -1
- package/dist/form/Form.js +1 -1
- package/dist/form/Form.js.map +1 -1
- package/dist/form/FormMessage.d.ts +1 -1
- package/dist/form/FormMessage.js +1 -1
- package/dist/form/FormMessage.js.map +1 -1
- package/dist/form/FormMessageContainer.d.ts +1 -1
- package/dist/form/FormMessageContainer.js +1 -1
- package/dist/form/FormMessageContainer.js.map +1 -1
- package/dist/form/FormMessageCounter.d.ts +2 -2
- package/dist/form/FormMessageCounter.js +2 -2
- package/dist/form/FormMessageCounter.js.map +1 -1
- package/dist/form/InputToggle.d.ts +2 -2
- package/dist/form/InputToggle.js +2 -2
- package/dist/form/InputToggle.js.map +1 -1
- package/dist/form/Label.d.ts +3 -3
- package/dist/form/Label.js +3 -3
- package/dist/form/Label.js.map +1 -1
- package/dist/form/Legend.d.ts +1 -1
- package/dist/form/Legend.js +1 -1
- package/dist/form/Legend.js.map +1 -1
- package/dist/form/NativeSelect.d.ts +1 -1
- package/dist/form/NativeSelect.js +1 -1
- package/dist/form/NativeSelect.js.map +1 -1
- package/dist/form/OptGroup.d.ts +1 -1
- package/dist/form/OptGroup.js +1 -1
- package/dist/form/OptGroup.js.map +1 -1
- package/dist/form/Option.d.ts +1 -1
- package/dist/form/Option.js +1 -1
- package/dist/form/Option.js.map +1 -1
- package/dist/form/Password.d.ts +1 -1
- package/dist/form/Password.js +1 -1
- package/dist/form/Password.js.map +1 -1
- package/dist/form/Radio.d.ts +1 -1
- package/dist/form/Radio.js +1 -1
- package/dist/form/Radio.js.map +1 -1
- package/dist/form/Select.d.ts +1 -1
- package/dist/form/Select.js +1 -1
- package/dist/form/Select.js.map +1 -1
- package/dist/form/Slider.d.ts +1 -1
- package/dist/form/Slider.js.map +1 -1
- package/dist/form/Switch.d.ts +1 -1
- package/dist/form/Switch.js +1 -1
- package/dist/form/Switch.js.map +1 -1
- package/dist/form/TextArea.d.ts +1 -1
- package/dist/form/TextArea.js +2 -2
- package/dist/form/TextArea.js.map +1 -1
- package/dist/form/TextField.d.ts +1 -1
- package/dist/form/TextField.js +1 -1
- package/dist/form/TextField.js.map +1 -1
- package/dist/form/_form-message.scss +4 -3
- package/dist/form/_input-toggle.scss +2 -1
- package/dist/form/_label.scss +3 -2
- package/dist/form/_password.scss +2 -1
- package/dist/form/_select.scss +4 -4
- package/dist/form/_slider.scss +4 -3
- package/dist/form/_switch.scss +2 -1
- package/dist/form/_text-area.scss +3 -2
- package/dist/form/_text-field.scss +20 -16
- package/dist/form/useCheckboxGroup.d.ts +8 -8
- package/dist/form/useCheckboxGroup.js +2 -2
- package/dist/form/useCheckboxGroup.js.map +1 -1
- package/dist/form/useCombobox.js +1 -0
- package/dist/form/useCombobox.js.map +1 -1
- package/dist/form/useNumberField.d.ts +2 -2
- package/dist/form/useNumberField.js +2 -2
- package/dist/form/useNumberField.js.map +1 -1
- package/dist/form/useRadioGroup.d.ts +4 -4
- package/dist/form/useRadioGroup.js +2 -2
- package/dist/form/useRadioGroup.js.map +1 -1
- package/dist/form/useRangeSlider.d.ts +1 -1
- package/dist/form/useRangeSlider.js +1 -1
- package/dist/form/useRangeSlider.js.map +1 -1
- package/dist/form/useSlider.d.ts +1 -1
- package/dist/form/useSlider.js +1 -1
- package/dist/form/useSlider.js.map +1 -1
- package/dist/form/useTextField.d.ts +4 -4
- package/dist/form/useTextField.js +2 -2
- package/dist/form/useTextField.js.map +1 -1
- package/dist/form/utils.js +1 -0
- package/dist/form/utils.js.map +1 -1
- package/dist/icon/FontIcon.d.ts +1 -1
- package/dist/icon/FontIcon.js +1 -1
- package/dist/icon/FontIcon.js.map +1 -1
- package/dist/icon/IconRotator.d.ts +1 -1
- package/dist/icon/IconRotator.js +1 -1
- package/dist/icon/IconRotator.js.map +1 -1
- package/dist/icon/MaterialIcon.d.ts +2 -2
- package/dist/icon/MaterialIcon.js +2 -2
- package/dist/icon/MaterialIcon.js.map +1 -1
- package/dist/icon/MaterialSymbol.d.ts +2 -2
- package/dist/icon/MaterialSymbol.js +2 -2
- package/dist/icon/MaterialSymbol.js.map +1 -1
- package/dist/icon/SVGIcon.d.ts +1 -1
- package/dist/icon/SVGIcon.js +1 -1
- package/dist/icon/SVGIcon.js.map +1 -1
- package/dist/icon/TextIconSpacing.d.ts +1 -1
- package/dist/icon/TextIconSpacing.js +1 -1
- package/dist/icon/TextIconSpacing.js.map +1 -1
- package/dist/icon/_icon.scss +2 -1
- package/dist/interaction/useElementInteraction.js +1 -1
- package/dist/interaction/useElementInteraction.js.map +1 -1
- package/dist/layout/LayoutAppBar.d.ts +1 -1
- package/dist/layout/LayoutAppBar.js +1 -1
- package/dist/layout/LayoutAppBar.js.map +1 -1
- package/dist/layout/LayoutNav.d.ts +1 -1
- package/dist/layout/LayoutNav.js +2 -2
- package/dist/layout/LayoutNav.js.map +1 -1
- package/dist/layout/LayoutWindowSplitter.d.ts +1 -1
- package/dist/layout/LayoutWindowSplitter.js +1 -1
- package/dist/layout/LayoutWindowSplitter.js.map +1 -1
- package/dist/layout/Main.d.ts +1 -1
- package/dist/layout/Main.js +1 -1
- package/dist/layout/Main.js.map +1 -1
- package/dist/layout/useExpandableLayout.d.ts +1 -1
- package/dist/layout/useExpandableLayout.js +1 -1
- package/dist/layout/useExpandableLayout.js.map +1 -1
- package/dist/layout/useHorizontalLayoutTransition.d.ts +1 -1
- package/dist/layout/useHorizontalLayoutTransition.js +1 -1
- package/dist/layout/useHorizontalLayoutTransition.js.map +1 -1
- package/dist/layout/useLayoutAppBarHeight.d.ts +1 -1
- package/dist/layout/useLayoutAppBarHeight.js +1 -1
- package/dist/layout/useLayoutAppBarHeight.js.map +1 -1
- package/dist/layout/useLayoutTree.d.ts +3 -3
- package/dist/layout/useLayoutTree.js +3 -3
- package/dist/layout/useLayoutTree.js.map +1 -1
- package/dist/layout/useLayoutWindowSplitter.d.ts +1 -1
- package/dist/layout/useLayoutWindowSplitter.js +1 -1
- package/dist/layout/useLayoutWindowSplitter.js.map +1 -1
- package/dist/layout/useMainTabIndex.js +1 -0
- package/dist/layout/useMainTabIndex.js.map +1 -1
- package/dist/layout/useResizableLayout.d.ts +1 -1
- package/dist/layout/useResizableLayout.js +1 -1
- package/dist/layout/useResizableLayout.js.map +1 -1
- package/dist/layout/useTemporaryLayout.d.ts +1 -1
- package/dist/layout/useTemporaryLayout.js +1 -1
- package/dist/layout/useTemporaryLayout.js.map +1 -1
- package/dist/link/Link.d.ts +1 -1
- package/dist/link/Link.js +1 -1
- package/dist/link/Link.js.map +1 -1
- package/dist/link/SkipToMainContent.d.ts +1 -1
- package/dist/link/SkipToMainContent.js +1 -1
- package/dist/link/SkipToMainContent.js.map +1 -1
- package/dist/link/_link.scss +3 -2
- package/dist/list/List.d.ts +1 -1
- package/dist/list/List.js +1 -1
- package/dist/list/List.js.map +1 -1
- package/dist/list/ListItem.d.ts +1 -1
- package/dist/list/ListItem.js +1 -1
- package/dist/list/ListItem.js.map +1 -1
- package/dist/list/ListItemChildren.d.ts +1 -1
- package/dist/list/ListItemChildren.js +1 -1
- package/dist/list/ListItemChildren.js.map +1 -1
- package/dist/list/ListItemLink.d.ts +1 -1
- package/dist/list/ListItemLink.js +1 -1
- package/dist/list/ListItemLink.js.map +1 -1
- package/dist/list/ListSubheader.d.ts +1 -1
- package/dist/list/ListSubheader.js +1 -1
- package/dist/list/ListSubheader.js.map +1 -1
- package/dist/list/_list.scss +7 -6
- package/dist/media-queries/AppSizeProvider.d.ts +2 -2
- package/dist/media-queries/AppSizeProvider.js +2 -2
- package/dist/media-queries/AppSizeProvider.js.map +1 -1
- package/dist/media-queries/useMediaQuery.d.ts +2 -2
- package/dist/media-queries/useMediaQuery.js +2 -2
- package/dist/media-queries/useMediaQuery.js.map +1 -1
- package/dist/menu/DropdownMenu.d.ts +1 -1
- package/dist/menu/DropdownMenu.js +2 -1
- package/dist/menu/DropdownMenu.js.map +1 -1
- package/dist/menu/Menu.d.ts +1 -1
- package/dist/menu/Menu.js +1 -1
- package/dist/menu/Menu.js.map +1 -1
- package/dist/menu/MenuBar.d.ts +1 -1
- package/dist/menu/MenuBar.js +1 -1
- package/dist/menu/MenuBar.js.map +1 -1
- package/dist/menu/MenuButton.d.ts +1 -1
- package/dist/menu/MenuButton.js +1 -1
- package/dist/menu/MenuButton.js.map +1 -1
- package/dist/menu/MenuItem.d.ts +1 -1
- package/dist/menu/MenuItem.js +1 -1
- package/dist/menu/MenuItem.js.map +1 -1
- package/dist/menu/MenuItemCheckbox.d.ts +1 -1
- package/dist/menu/MenuItemCheckbox.js +1 -1
- package/dist/menu/MenuItemCheckbox.js.map +1 -1
- package/dist/menu/MenuItemFileInput.d.ts +1 -1
- package/dist/menu/MenuItemFileInput.js +1 -1
- package/dist/menu/MenuItemFileInput.js.map +1 -1
- package/dist/menu/MenuItemGroup.d.ts +1 -1
- package/dist/menu/MenuItemGroup.js +1 -1
- package/dist/menu/MenuItemGroup.js.map +1 -1
- package/dist/menu/MenuItemInputToggle.d.ts +1 -1
- package/dist/menu/MenuItemInputToggle.js +1 -1
- package/dist/menu/MenuItemInputToggle.js.map +1 -1
- package/dist/menu/MenuItemRadio.d.ts +1 -1
- package/dist/menu/MenuItemRadio.js +1 -1
- package/dist/menu/MenuItemRadio.js.map +1 -1
- package/dist/menu/MenuItemSeparator.d.ts +1 -1
- package/dist/menu/MenuItemSeparator.js +1 -1
- package/dist/menu/MenuItemSeparator.js.map +1 -1
- package/dist/menu/MenuItemSwitch.d.ts +1 -1
- package/dist/menu/MenuItemSwitch.js +1 -1
- package/dist/menu/MenuItemSwitch.js.map +1 -1
- package/dist/menu/MenuItemTextField.d.ts +1 -1
- package/dist/menu/MenuItemTextField.js +1 -1
- package/dist/menu/MenuItemTextField.js.map +1 -1
- package/dist/menu/_menu.scss +2 -1
- package/dist/menu/useContextMenu.d.ts +1 -1
- package/dist/menu/useContextMenu.js +1 -1
- package/dist/menu/useContextMenu.js.map +1 -1
- package/dist/navigation/CollapsibleNavGroup.d.ts +1 -1
- package/dist/navigation/CollapsibleNavGroup.js +1 -1
- package/dist/navigation/CollapsibleNavGroup.js.map +1 -1
- package/dist/navigation/DefaultNavigationRenderer.d.ts +1 -1
- package/dist/navigation/DefaultNavigationRenderer.js +1 -1
- package/dist/navigation/DefaultNavigationRenderer.js.map +1 -1
- package/dist/navigation/NavGroup.d.ts +1 -1
- package/dist/navigation/NavGroup.js +1 -1
- package/dist/navigation/NavGroup.js.map +1 -1
- package/dist/navigation/NavItem.d.ts +1 -1
- package/dist/navigation/NavItem.js +1 -1
- package/dist/navigation/NavItem.js.map +1 -1
- package/dist/navigation/NavItemButton.d.ts +1 -1
- package/dist/navigation/NavItemButton.js +1 -1
- package/dist/navigation/NavItemButton.js.map +1 -1
- package/dist/navigation/NavItemLink.d.ts +1 -1
- package/dist/navigation/NavItemLink.js +1 -1
- package/dist/navigation/NavItemLink.js.map +1 -1
- package/dist/navigation/NavSubheader.d.ts +1 -1
- package/dist/navigation/NavSubheader.js +1 -1
- package/dist/navigation/NavSubheader.js.map +1 -1
- package/dist/navigation/Navigation.d.ts +1 -1
- package/dist/navigation/Navigation.js +1 -1
- package/dist/navigation/Navigation.js.map +1 -1
- package/dist/navigation/_navigation.scss +5 -3
- package/dist/navigation/useActiveHeadingId.d.ts +1 -1
- package/dist/navigation/useActiveHeadingId.js +1 -1
- package/dist/navigation/useActiveHeadingId.js.map +1 -1
- package/dist/navigation/useNavigationExpansion.d.ts +2 -2
- package/dist/navigation/useNavigationExpansion.js +2 -2
- package/dist/navigation/useNavigationExpansion.js.map +1 -1
- package/dist/navigation/useTableOfContentsHeadings.d.ts +1 -1
- package/dist/navigation/useTableOfContentsHeadings.js +1 -1
- package/dist/navigation/useTableOfContentsHeadings.js.map +1 -1
- package/dist/overlay/Overlay.d.ts +1 -1
- package/dist/overlay/Overlay.js +1 -1
- package/dist/overlay/Overlay.js.map +1 -1
- package/dist/portal/Portal.d.ts +1 -1
- package/dist/portal/Portal.js +1 -1
- package/dist/portal/Portal.js.map +1 -1
- package/dist/portal/PortalContainerProvider.d.ts +1 -1
- package/dist/portal/PortalContainerProvider.js +1 -1
- package/dist/portal/PortalContainerProvider.js.map +1 -1
- package/dist/positioning/useFixedPositioning.d.ts +1 -1
- package/dist/positioning/useFixedPositioning.js +1 -1
- package/dist/positioning/useFixedPositioning.js.map +1 -1
- package/dist/progress/CircularProgress.d.ts +1 -1
- package/dist/progress/CircularProgress.js +1 -1
- package/dist/progress/CircularProgress.js.map +1 -1
- package/dist/progress/LinearProgress.d.ts +1 -1
- package/dist/progress/LinearProgress.js +1 -1
- package/dist/progress/LinearProgress.js.map +1 -1
- package/dist/responsive-item/ResponsiveItem.d.ts +1 -1
- package/dist/responsive-item/ResponsiveItem.js +1 -1
- package/dist/responsive-item/ResponsiveItem.js.map +1 -1
- package/dist/responsive-item/ResponsiveItemOverlay.d.ts +1 -1
- package/dist/responsive-item/ResponsiveItemOverlay.js +1 -1
- package/dist/responsive-item/ResponsiveItemOverlay.js.map +1 -1
- package/dist/responsive-item/_responsive-item.scss +2 -1
- package/dist/scroll/useScrollLock.d.ts +1 -1
- package/dist/scroll/useScrollLock.js +1 -1
- package/dist/scroll/useScrollLock.js.map +1 -1
- package/dist/segmented-button/SegmentedButton.d.ts +1 -1
- package/dist/segmented-button/SegmentedButton.js +1 -1
- package/dist/segmented-button/SegmentedButton.js.map +1 -1
- package/dist/segmented-button/SegmentedButtonContainer.d.ts +1 -1
- package/dist/segmented-button/SegmentedButtonContainer.js +1 -1
- package/dist/segmented-button/SegmentedButtonContainer.js.map +1 -1
- package/dist/segmented-button/_segmented-button.scss +20 -13
- package/dist/sheet/Sheet.d.ts +1 -1
- package/dist/sheet/Sheet.js +1 -1
- package/dist/sheet/Sheet.js.map +1 -1
- package/dist/sheet/_sheet.scss +2 -1
- package/dist/snackbar/DefaultToastRenderer.d.ts +1 -1
- package/dist/snackbar/DefaultToastRenderer.js +1 -1
- package/dist/snackbar/DefaultToastRenderer.js.map +1 -1
- package/dist/snackbar/Snackbar.d.ts +1 -1
- package/dist/snackbar/Snackbar.js +1 -1
- package/dist/snackbar/Snackbar.js.map +1 -1
- package/dist/snackbar/Toast.d.ts +1 -1
- package/dist/snackbar/Toast.js +1 -1
- package/dist/snackbar/Toast.js.map +1 -1
- package/dist/snackbar/ToastActionButton.d.ts +1 -1
- package/dist/snackbar/ToastActionButton.js +1 -1
- package/dist/snackbar/ToastActionButton.js.map +1 -1
- package/dist/snackbar/ToastCloseButton.d.ts +1 -1
- package/dist/snackbar/ToastCloseButton.js +1 -1
- package/dist/snackbar/ToastCloseButton.js.map +1 -1
- package/dist/snackbar/ToastContent.d.ts +1 -1
- package/dist/snackbar/ToastContent.js +1 -1
- package/dist/snackbar/ToastContent.js.map +1 -1
- package/dist/snackbar/ToastManager.d.ts +1 -1
- package/dist/snackbar/ToastManager.js +1 -1
- package/dist/snackbar/ToastManager.js.map +1 -1
- package/dist/snackbar/ToastManagerProvider.d.ts +1 -1
- package/dist/snackbar/ToastManagerProvider.js +1 -1
- package/dist/snackbar/ToastManagerProvider.js.map +1 -1
- package/dist/snackbar/_snackbar.scss +12 -10
- package/dist/snackbar/useCurrentToastActions.d.ts +1 -1
- package/dist/snackbar/useCurrentToastActions.js +1 -1
- package/dist/snackbar/useCurrentToastActions.js.map +1 -1
- package/dist/storage/useStorage.d.ts +1 -1
- package/dist/storage/useStorage.js +1 -1
- package/dist/storage/useStorage.js.map +1 -1
- package/dist/suspense/CircularProgressSuspense.d.ts +1 -1
- package/dist/suspense/CircularProgressSuspense.js +1 -1
- package/dist/suspense/CircularProgressSuspense.js.map +1 -1
- package/dist/suspense/NullSuspense.d.ts +1 -1
- package/dist/suspense/NullSuspense.js +1 -1
- package/dist/suspense/NullSuspense.js.map +1 -1
- package/dist/table/StickyTableSection.d.ts +2 -2
- package/dist/table/StickyTableSection.js +2 -2
- package/dist/table/StickyTableSection.js.map +1 -1
- package/dist/table/Table.d.ts +1 -1
- package/dist/table/Table.js +1 -1
- package/dist/table/Table.js.map +1 -1
- package/dist/table/TableBody.d.ts +1 -1
- package/dist/table/TableBody.js +1 -1
- package/dist/table/TableBody.js.map +1 -1
- package/dist/table/TableCell.d.ts +1 -1
- package/dist/table/TableCell.js +1 -1
- package/dist/table/TableCell.js.map +1 -1
- package/dist/table/TableCheckbox.d.ts +1 -1
- package/dist/table/TableCheckbox.js +1 -1
- package/dist/table/TableCheckbox.js.map +1 -1
- package/dist/table/TableContainer.d.ts +1 -1
- package/dist/table/TableContainer.js +1 -1
- package/dist/table/TableContainer.js.map +1 -1
- package/dist/table/TableFooter.d.ts +1 -1
- package/dist/table/TableFooter.js +1 -1
- package/dist/table/TableFooter.js.map +1 -1
- package/dist/table/TableHeader.d.ts +1 -1
- package/dist/table/TableHeader.js +1 -1
- package/dist/table/TableHeader.js.map +1 -1
- package/dist/table/TableRadio.d.ts +1 -1
- package/dist/table/TableRadio.js +1 -1
- package/dist/table/TableRadio.js.map +1 -1
- package/dist/table/TableRow.d.ts +1 -1
- package/dist/table/TableRow.js +1 -1
- package/dist/table/TableRow.js.map +1 -1
- package/dist/table/_table.scss +5 -4
- package/dist/tabs/SimpleTabPanel.d.ts +2 -2
- package/dist/tabs/SimpleTabPanel.js +2 -2
- package/dist/tabs/SimpleTabPanel.js.map +1 -1
- package/dist/tabs/SimpleTabPanels.d.ts +2 -2
- package/dist/tabs/SimpleTabPanels.js +2 -2
- package/dist/tabs/SimpleTabPanels.js.map +1 -1
- package/dist/tabs/Tab.d.ts +1 -1
- package/dist/tabs/Tab.js +1 -1
- package/dist/tabs/Tab.js.map +1 -1
- package/dist/tabs/TabList.d.ts +1 -1
- package/dist/tabs/TabList.js +1 -1
- package/dist/tabs/TabList.js.map +1 -1
- package/dist/tabs/_tabs.scss +7 -4
- package/dist/tabs/useTabs.d.ts +4 -4
- package/dist/tabs/useTabs.js +2 -1
- package/dist/tabs/useTabs.js.map +1 -1
- package/dist/theme/LocalStorageColorSchemeProvider.d.ts +2 -2
- package/dist/theme/LocalStorageColorSchemeProvider.js +2 -2
- package/dist/theme/LocalStorageColorSchemeProvider.js.map +1 -1
- package/dist/theme/ThemeProvider.d.ts +1 -1
- package/dist/theme/ThemeProvider.js +1 -1
- package/dist/theme/ThemeProvider.js.map +1 -1
- package/dist/theme/useColorSchemeProvider.js +1 -0
- package/dist/theme/useColorSchemeProvider.js.map +1 -1
- package/dist/theme/utils.js +2 -2
- package/dist/theme/utils.js.map +1 -1
- package/dist/tooltip/Tooltip.d.ts +1 -1
- package/dist/tooltip/Tooltip.js +1 -1
- package/dist/tooltip/Tooltip.js.map +1 -1
- package/dist/tooltip/TooltipHoverModeProvider.d.ts +1 -1
- package/dist/tooltip/TooltipHoverModeProvider.js +1 -1
- package/dist/tooltip/TooltipHoverModeProvider.js.map +1 -1
- package/dist/tooltip/_tooltip.scss +52 -25
- package/dist/tooltip/useTooltip.d.ts +1 -1
- package/dist/tooltip/useTooltip.js +1 -1
- package/dist/tooltip/useTooltip.js.map +1 -1
- package/dist/transition/CSSTransition.d.ts +1 -1
- package/dist/transition/CSSTransition.js +1 -1
- package/dist/transition/CSSTransition.js.map +1 -1
- package/dist/transition/Collapse.d.ts +1 -1
- package/dist/transition/Collapse.js +1 -1
- package/dist/transition/Collapse.js.map +1 -1
- package/dist/transition/CrossFade.d.ts +1 -1
- package/dist/transition/CrossFade.js +1 -1
- package/dist/transition/CrossFade.js.map +1 -1
- package/dist/transition/ScaleTransition.d.ts +1 -1
- package/dist/transition/ScaleTransition.js +1 -1
- package/dist/transition/ScaleTransition.js.map +1 -1
- package/dist/transition/SkeletonPlaceholder.d.ts +1 -1
- package/dist/transition/SkeletonPlaceholder.js +1 -1
- package/dist/transition/SkeletonPlaceholder.js.map +1 -1
- package/dist/transition/Slide.d.ts +1 -1
- package/dist/transition/Slide.js +1 -1
- package/dist/transition/Slide.js.map +1 -1
- package/dist/transition/SlideContainer.d.ts +1 -1
- package/dist/transition/SlideContainer.js +1 -1
- package/dist/transition/SlideContainer.js.map +1 -1
- package/dist/transition/_transition.scss +2 -1
- package/dist/transition/useCSSTransition.d.ts +2 -2
- package/dist/transition/useCSSTransition.js +2 -2
- package/dist/transition/useCSSTransition.js.map +1 -1
- package/dist/transition/useCarousel.d.ts +1 -1
- package/dist/transition/useCarousel.js +1 -1
- package/dist/transition/useCarousel.js.map +1 -1
- package/dist/transition/useCollapseTransition.d.ts +2 -2
- package/dist/transition/useCollapseTransition.js +2 -2
- package/dist/transition/useCollapseTransition.js.map +1 -1
- package/dist/transition/useCrossFadeTransition.d.ts +2 -2
- package/dist/transition/useCrossFadeTransition.js +2 -2
- package/dist/transition/useCrossFadeTransition.js.map +1 -1
- package/dist/transition/useScaleTransition.d.ts +2 -2
- package/dist/transition/useScaleTransition.js +2 -2
- package/dist/transition/useScaleTransition.js.map +1 -1
- package/dist/transition/useSkeletonPlaceholder.d.ts +2 -2
- package/dist/transition/useSkeletonPlaceholder.js +2 -2
- package/dist/transition/useSkeletonPlaceholder.js.map +1 -1
- package/dist/transition/useSlideTransition.d.ts +1 -1
- package/dist/transition/useSlideTransition.js +1 -1
- package/dist/transition/useSlideTransition.js.map +1 -1
- package/dist/transition/useTransition.d.ts +1 -1
- package/dist/transition/useTransition.js +1 -1
- package/dist/transition/useTransition.js.map +1 -1
- package/dist/tree/DefaultTreeItemRenderer.d.ts +1 -1
- package/dist/tree/DefaultTreeItemRenderer.js +1 -1
- package/dist/tree/DefaultTreeItemRenderer.js.map +1 -1
- package/dist/tree/Tree.d.ts +1 -1
- package/dist/tree/Tree.js +1 -1
- package/dist/tree/Tree.js.map +1 -1
- package/dist/tree/TreeItem.d.ts +1 -1
- package/dist/tree/TreeItem.js +1 -1
- package/dist/tree/TreeItem.js.map +1 -1
- package/dist/tree/_tree.scss +1 -1
- package/dist/tree/useTree.d.ts +1 -1
- package/dist/tree/useTree.js +1 -1
- package/dist/tree/useTree.js.map +1 -1
- package/dist/tree/useTreeExpansion.d.ts +1 -1
- package/dist/tree/useTreeExpansion.js +1 -1
- package/dist/tree/useTreeExpansion.js.map +1 -1
- package/dist/tree/useTreeItems.d.ts +1 -1
- package/dist/tree/useTreeItems.js +1 -1
- package/dist/tree/useTreeItems.js.map +1 -1
- package/dist/tree/useTreeSelection.d.ts +1 -1
- package/dist/tree/useTreeSelection.js +1 -1
- package/dist/tree/useTreeSelection.js.map +1 -1
- package/dist/typography/HighlightText.d.ts +1 -1
- package/dist/typography/HighlightText.js +1 -1
- package/dist/typography/HighlightText.js.map +1 -1
- package/dist/typography/Mark.d.ts +1 -1
- package/dist/typography/Mark.js +1 -1
- package/dist/typography/Mark.js.map +1 -1
- package/dist/typography/SrOnly.d.ts +1 -1
- package/dist/typography/SrOnly.js +1 -1
- package/dist/typography/SrOnly.js.map +1 -1
- package/dist/typography/TextContainer.d.ts +1 -1
- package/dist/typography/TextContainer.js +1 -1
- package/dist/typography/TextContainer.js.map +1 -1
- package/dist/typography/Typography.d.ts +1 -1
- package/dist/typography/Typography.js +1 -1
- package/dist/typography/Typography.js.map +1 -1
- package/dist/typography/WritingDirectionProvider.d.ts +1 -1
- package/dist/typography/WritingDirectionProvider.js +1 -1
- package/dist/typography/WritingDirectionProvider.js.map +1 -1
- package/dist/useEnsuredState.d.ts +1 -0
- package/dist/useEnsuredState.js +5 -3
- package/dist/useEnsuredState.js.map +1 -1
- package/dist/utils/RenderRecursively.d.ts +1 -1
- package/dist/utils/RenderRecursively.js +1 -1
- package/dist/utils/RenderRecursively.js.map +1 -1
- package/dist/utils/bem.js +1 -1
- package/dist/utils/bem.js.map +1 -1
- package/dist/utils/parseCssLengthUnit.js +3 -0
- package/dist/utils/parseCssLengthUnit.js.map +1 -1
- package/dist/window-splitter/WindowSplitter.d.ts +1 -1
- package/dist/window-splitter/WindowSplitter.js +1 -1
- package/dist/window-splitter/WindowSplitter.js.map +1 -1
- package/package.json +10 -10
- package/src/CoreProviders.tsx +1 -1
- package/src/SsrProvider.tsx +1 -1
- package/src/app-bar/styles.ts +1 -1
- package/src/autocomplete/Autocomplete.tsx +3 -3
- package/src/autocomplete/AutocompleteChip.tsx +1 -1
- package/src/autocomplete/AutocompleteCircularProgress.tsx +1 -1
- package/src/autocomplete/AutocompleteClearButton.tsx +1 -1
- package/src/autocomplete/AutocompleteDropdownButton.tsx +1 -1
- package/src/autocomplete/useAutocomplete.ts +5 -4
- package/src/avatar/Avatar.tsx +1 -1
- package/src/badge/Badge.tsx +1 -1
- package/src/box/Box.tsx +1 -1
- package/src/button/AsyncButton.tsx +1 -1
- package/src/button/Button.tsx +1 -1
- package/src/button/ButtonUnstyled.tsx +1 -1
- package/src/button/TooltippedButton.tsx +1 -1
- package/src/card/Card.tsx +1 -1
- package/src/card/CardContent.tsx +1 -1
- package/src/card/CardFooter.tsx +1 -1
- package/src/card/CardHeader.tsx +1 -1
- package/src/card/CardSubtitle.tsx +1 -1
- package/src/card/CardTitle.tsx +1 -1
- package/src/card/ClickableCard.tsx +1 -1
- package/src/chip/Chip.tsx +1 -1
- package/src/dialog/Dialog.tsx +1 -1
- package/src/dialog/DialogContent.tsx +1 -1
- package/src/dialog/DialogFooter.tsx +1 -1
- package/src/dialog/DialogHeader.tsx +1 -1
- package/src/dialog/DialogTitle.tsx +1 -1
- package/src/dialog/FixedDialog.tsx +1 -1
- package/src/divider/Divider.tsx +1 -1
- package/src/draggable/useDraggable.ts +1 -1
- package/src/expansion-panel/ExpansionList.tsx +1 -1
- package/src/expansion-panel/ExpansionPanel.tsx +1 -1
- package/src/expansion-panel/ExpansionPanelHeader.tsx +1 -1
- package/src/expansion-panel/useExpansionList.ts +1 -1
- package/src/expansion-panel/useExpansionPanels.ts +1 -1
- package/src/files/FileInput.tsx +1 -1
- package/src/files/useFileUpload.ts +2 -2
- package/src/form/Checkbox.tsx +1 -1
- package/src/form/Fieldset.tsx +1 -1
- package/src/form/Form.tsx +1 -1
- package/src/form/FormMessage.tsx +1 -1
- package/src/form/FormMessageContainer.tsx +1 -1
- package/src/form/FormMessageCounter.tsx +2 -2
- package/src/form/InputToggle.tsx +2 -2
- package/src/form/Label.tsx +3 -3
- package/src/form/Legend.tsx +1 -1
- package/src/form/NativeSelect.tsx +1 -1
- package/src/form/OptGroup.tsx +1 -1
- package/src/form/Option.tsx +1 -1
- package/src/form/Password.tsx +1 -1
- package/src/form/Radio.tsx +1 -1
- package/src/form/Select.tsx +1 -1
- package/src/form/Slider.tsx +1 -1
- package/src/form/Switch.tsx +1 -1
- package/src/form/TextArea.tsx +2 -2
- package/src/form/TextField.tsx +1 -1
- package/src/form/useCheckboxGroup.ts +10 -10
- package/src/form/useCombobox.ts +1 -0
- package/src/form/useNumberField.ts +4 -4
- package/src/form/useRadioGroup.ts +6 -6
- package/src/form/useRangeSlider.ts +1 -1
- package/src/form/useSlider.ts +1 -1
- package/src/form/useTextField.ts +6 -6
- package/src/form/utils.ts +1 -0
- package/src/icon/FontIcon.tsx +1 -1
- package/src/icon/IconRotator.tsx +1 -1
- package/src/icon/MaterialIcon.tsx +2 -2
- package/src/icon/MaterialSymbol.tsx +2 -2
- package/src/icon/SVGIcon.tsx +1 -1
- package/src/icon/TextIconSpacing.tsx +1 -1
- package/src/interaction/useElementInteraction.tsx +1 -1
- package/src/layout/LayoutAppBar.tsx +1 -1
- package/src/layout/LayoutNav.tsx +2 -2
- package/src/layout/LayoutWindowSplitter.tsx +1 -1
- package/src/layout/Main.tsx +1 -1
- package/src/layout/useExpandableLayout.ts +1 -1
- package/src/layout/useHorizontalLayoutTransition.ts +1 -1
- package/src/layout/useLayoutAppBarHeight.ts +1 -1
- package/src/layout/useLayoutTree.ts +3 -3
- package/src/layout/useLayoutWindowSplitter.ts +1 -1
- package/src/layout/useMainTabIndex.ts +1 -0
- package/src/layout/useResizableLayout.ts +1 -1
- package/src/layout/useTemporaryLayout.ts +1 -1
- package/src/link/Link.tsx +1 -1
- package/src/link/SkipToMainContent.tsx +1 -1
- package/src/list/List.tsx +1 -1
- package/src/list/ListItem.tsx +1 -1
- package/src/list/ListItemChildren.tsx +1 -1
- package/src/list/ListItemLink.tsx +1 -1
- package/src/list/ListSubheader.tsx +1 -1
- package/src/media-queries/AppSizeProvider.tsx +2 -2
- package/src/media-queries/useMediaQuery.ts +2 -2
- package/src/menu/DropdownMenu.tsx +2 -1
- package/src/menu/Menu.tsx +1 -1
- package/src/menu/MenuBar.tsx +1 -1
- package/src/menu/MenuButton.tsx +1 -1
- package/src/menu/MenuItem.tsx +1 -1
- package/src/menu/MenuItemCheckbox.tsx +1 -1
- package/src/menu/MenuItemFileInput.tsx +1 -1
- package/src/menu/MenuItemGroup.tsx +1 -1
- package/src/menu/MenuItemInputToggle.tsx +1 -1
- package/src/menu/MenuItemRadio.tsx +1 -1
- package/src/menu/MenuItemSeparator.tsx +1 -1
- package/src/menu/MenuItemSwitch.tsx +1 -1
- package/src/menu/MenuItemTextField.tsx +1 -1
- package/src/menu/useContextMenu.ts +1 -1
- package/src/navigation/CollapsibleNavGroup.tsx +1 -1
- package/src/navigation/DefaultNavigationRenderer.tsx +1 -1
- package/src/navigation/NavGroup.tsx +1 -1
- package/src/navigation/NavItem.tsx +1 -1
- package/src/navigation/NavItemButton.tsx +1 -1
- package/src/navigation/NavItemLink.tsx +1 -1
- package/src/navigation/NavSubheader.tsx +1 -1
- package/src/navigation/Navigation.tsx +1 -1
- package/src/navigation/useActiveHeadingId.ts +1 -1
- package/src/navigation/useNavigationExpansion.ts +2 -2
- package/src/navigation/useTableOfContentsHeadings.ts +1 -1
- package/src/overlay/Overlay.tsx +1 -1
- package/src/portal/Portal.tsx +1 -1
- package/src/portal/PortalContainerProvider.tsx +1 -1
- package/src/positioning/useFixedPositioning.ts +1 -1
- package/src/progress/CircularProgress.tsx +1 -1
- package/src/progress/LinearProgress.tsx +1 -1
- package/src/responsive-item/ResponsiveItem.tsx +1 -1
- package/src/responsive-item/ResponsiveItemOverlay.tsx +1 -1
- package/src/scroll/useScrollLock.ts +1 -1
- package/src/segmented-button/SegmentedButton.tsx +1 -1
- package/src/segmented-button/SegmentedButtonContainer.tsx +1 -1
- package/src/sheet/Sheet.tsx +1 -1
- package/src/snackbar/DefaultToastRenderer.tsx +1 -1
- package/src/snackbar/Snackbar.tsx +1 -1
- package/src/snackbar/Toast.tsx +1 -1
- package/src/snackbar/ToastActionButton.tsx +1 -1
- package/src/snackbar/ToastCloseButton.tsx +1 -1
- package/src/snackbar/ToastContent.tsx +1 -1
- package/src/snackbar/ToastManager.ts +1 -1
- package/src/snackbar/ToastManagerProvider.tsx +1 -1
- package/src/snackbar/useCurrentToastActions.ts +1 -1
- package/src/storage/useStorage.ts +1 -1
- package/src/suspense/CircularProgressSuspense.tsx +1 -1
- package/src/suspense/NullSuspense.tsx +1 -1
- package/src/table/StickyTableSection.tsx +2 -2
- package/src/table/Table.tsx +1 -1
- package/src/table/TableBody.tsx +1 -1
- package/src/table/TableCell.tsx +1 -1
- package/src/table/TableCheckbox.tsx +1 -1
- package/src/table/TableContainer.tsx +1 -1
- package/src/table/TableFooter.tsx +1 -1
- package/src/table/TableHeader.tsx +1 -1
- package/src/table/TableRadio.tsx +1 -1
- package/src/table/TableRow.tsx +1 -1
- package/src/tabs/SimpleTabPanel.tsx +2 -2
- package/src/tabs/SimpleTabPanels.tsx +2 -2
- package/src/tabs/Tab.tsx +1 -1
- package/src/tabs/TabList.tsx +1 -1
- package/src/tabs/useTabs.ts +6 -5
- package/src/theme/LocalStorageColorSchemeProvider.tsx +2 -2
- package/src/theme/ThemeProvider.tsx +1 -1
- package/src/theme/useColorSchemeProvider.ts +1 -0
- package/src/theme/utils.ts +2 -1
- package/src/tooltip/Tooltip.tsx +1 -1
- package/src/tooltip/TooltipHoverModeProvider.tsx +1 -1
- package/src/tooltip/useTooltip.ts +1 -1
- package/src/transition/CSSTransition.tsx +1 -1
- package/src/transition/Collapse.tsx +1 -1
- package/src/transition/CrossFade.tsx +1 -1
- package/src/transition/ScaleTransition.tsx +1 -1
- package/src/transition/SkeletonPlaceholder.tsx +1 -1
- package/src/transition/Slide.tsx +1 -1
- package/src/transition/SlideContainer.tsx +1 -1
- package/src/transition/useCSSTransition.ts +2 -2
- package/src/transition/useCarousel.ts +1 -1
- package/src/transition/useCollapseTransition.ts +2 -2
- package/src/transition/useCrossFadeTransition.ts +2 -2
- package/src/transition/useScaleTransition.ts +2 -2
- package/src/transition/useSkeletonPlaceholder.ts +2 -2
- package/src/transition/useSlideTransition.ts +1 -1
- package/src/transition/useTransition.ts +1 -1
- package/src/tree/DefaultTreeItemRenderer.tsx +1 -1
- package/src/tree/Tree.tsx +1 -1
- package/src/tree/TreeItem.tsx +1 -1
- package/src/tree/useTree.ts +1 -1
- package/src/tree/useTreeExpansion.ts +1 -1
- package/src/tree/useTreeItems.ts +1 -1
- package/src/tree/useTreeSelection.ts +1 -1
- package/src/typography/HighlightText.tsx +1 -1
- package/src/typography/Mark.tsx +1 -1
- package/src/typography/SrOnly.tsx +1 -1
- package/src/typography/TextContainer.tsx +1 -1
- package/src/typography/Typography.tsx +1 -1
- package/src/typography/WritingDirectionProvider.tsx +1 -1
- package/src/useEnsuredState.ts +6 -3
- package/src/utils/RenderRecursively.tsx +1 -1
- package/src/utils/bem.ts +1 -1
- package/src/utils/parseCssLengthUnit.ts +4 -0
- package/src/window-splitter/WindowSplitter.tsx +1 -1
package/dist/CoreProviders.d.ts
CHANGED
|
@@ -57,7 +57,7 @@ export interface CoreProvidersProps extends ReactMDCoreConfiguration {
|
|
|
57
57
|
* - {@link Snackbar} - This isn't a provider but this is how you can display
|
|
58
58
|
* alerts in your app
|
|
59
59
|
*
|
|
60
|
-
* @see {@link https://
|
|
60
|
+
* @see {@link https://react-md.dev/components/core-providers | CoreProviders Demos}
|
|
61
61
|
* @since 6.0.0
|
|
62
62
|
*/
|
|
63
63
|
export declare function CoreProviders(props: CoreProvidersProps): ReactElement;
|
package/dist/CoreProviders.js
CHANGED
|
@@ -34,7 +34,7 @@ import { PortalContainerProvider } from "./portal/PortalContainerProvider.js";
|
|
|
34
34
|
* - {@link Snackbar} - This isn't a provider but this is how you can display
|
|
35
35
|
* alerts in your app
|
|
36
36
|
*
|
|
37
|
-
* @see {@link https://
|
|
37
|
+
* @see {@link https://react-md.dev/components/core-providers | CoreProviders Demos}
|
|
38
38
|
* @since 6.0.0
|
|
39
39
|
*/ export function CoreProviders(props) {
|
|
40
40
|
const { ssr = false, ssrAppSize = DEFAULT_APP_SIZE, appSizeQueries = DEFAULT_APP_SIZE_QUERIES, portalContainer, children } = props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/CoreProviders.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactElement, type ReactNode } from \"react\";\n\nimport { SsrProvider } from \"./SsrProvider.js\";\nimport { UserInteractionModeProvider } from \"./interaction/UserInteractionModeProvider.js\";\nimport { AppSizeProvider } from \"./media-queries/AppSizeProvider.js\";\nimport {\n type AppSize,\n type AppSizeQueries,\n DEFAULT_APP_SIZE,\n DEFAULT_APP_SIZE_QUERIES,\n} from \"./media-queries/appSize.js\";\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { type MenuConfigurationProvider } from \"./menu/MenuConfigurationProvider.js\";\nimport {\n type PortalContainer,\n PortalContainerProvider,\n} from \"./portal/PortalContainerProvider.js\";\nimport { type Snackbar } from \"./snackbar/Snackbar.js\";\nimport { type LocalStorageColorSchemeProvider } from \"./theme/LocalStorageColorSchemeProvider.js\";\nimport { type ThemeProvider } from \"./theme/ThemeProvider.js\";\nimport { type useColorSchemeProvider } from \"./theme/useColorSchemeProvider.js\";\nimport { type TooltipHoverModeProvider } from \"./tooltip/TooltipHoverModeProvider.js\";\nimport { type WritingDirectionProvider } from \"./typography/WritingDirectionProvider.js\";\n\n/* eslint-enable @typescript-eslint/no-unused-vars */\n\n/** @since 6.0.0 */\nexport interface ReactMDCoreConfiguration {\n /**\n * Set this to `true` if you are using SSR. This will update some hook\n * behavior so that you will not have mismatched initial state between server\n * and client and correctly rehydrate after initial render.\n *\n * @defaultValue `false`\n */\n ssr?: boolean;\n\n /**\n * @defaultValue `DEFAULT_APP_SIZE`\n * @see {@link DEFAULT_APP_SIZE}\n */\n ssrAppSize?: Readonly<AppSize>;\n\n /**\n * @defaultValue `DEFAULT_APP_SIZE_QUERIES`\n * @see {@link DEFAULT_APP_SIZE_QUERIES}\n */\n appSizeQueries?: Readonly<AppSizeQueries>;\n\n /** @see {@link PortalContainerProvider} */\n portalContainer?: PortalContainer;\n}\n\n/** @since 6.0.0 */\nexport interface CoreProvidersProps extends ReactMDCoreConfiguration {\n children: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * This is a convenience wrapper for initializing providers for react-md. This\n * includes configuration for:\n *\n * - {@link SsrProvider}\n * - {@link PortalContainerProvider}\n * - {@link AppSizeProvider}\n * - {@link UserInteractionModeProvider}\n *\n * This does not include every provider within `react-md` to help decrease the\n * bundle size for unused features. Here are some other providers that might be\n * useful to initialize near the root of your app:\n *\n * - {@link MenuConfigurationProvider} - If you want to render menus as sheets\n * on phones or other configuration.\n * - {@link LocalStorageColorSchemeProvider}/{@link useColorSchemeProvider} - If\n * you want to allow the user to select a light, dark, or system theme\n * - {@link WritingDirectionProvider} - If you need dynamic support for ltr and\n * rtl languages\n * - {@link ThemeProvider} - If you allow the user to dynamically configure the\n * `react-md` theme\n * - {@link TooltipHoverModeProvider} - If you want tooltips to appear\n * immediately for a time after another tooltip has become visible. You can\n * also configure the global visible delay.\n * - {@link Snackbar} - This isn't a provider but this is how you can display\n * alerts in your app\n *\n * @see {@link https://
|
|
1
|
+
{"version":3,"sources":["../src/CoreProviders.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactElement, type ReactNode } from \"react\";\n\nimport { SsrProvider } from \"./SsrProvider.js\";\nimport { UserInteractionModeProvider } from \"./interaction/UserInteractionModeProvider.js\";\nimport { AppSizeProvider } from \"./media-queries/AppSizeProvider.js\";\nimport {\n type AppSize,\n type AppSizeQueries,\n DEFAULT_APP_SIZE,\n DEFAULT_APP_SIZE_QUERIES,\n} from \"./media-queries/appSize.js\";\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { type MenuConfigurationProvider } from \"./menu/MenuConfigurationProvider.js\";\nimport {\n type PortalContainer,\n PortalContainerProvider,\n} from \"./portal/PortalContainerProvider.js\";\nimport { type Snackbar } from \"./snackbar/Snackbar.js\";\nimport { type LocalStorageColorSchemeProvider } from \"./theme/LocalStorageColorSchemeProvider.js\";\nimport { type ThemeProvider } from \"./theme/ThemeProvider.js\";\nimport { type useColorSchemeProvider } from \"./theme/useColorSchemeProvider.js\";\nimport { type TooltipHoverModeProvider } from \"./tooltip/TooltipHoverModeProvider.js\";\nimport { type WritingDirectionProvider } from \"./typography/WritingDirectionProvider.js\";\n\n/* eslint-enable @typescript-eslint/no-unused-vars */\n\n/** @since 6.0.0 */\nexport interface ReactMDCoreConfiguration {\n /**\n * Set this to `true` if you are using SSR. This will update some hook\n * behavior so that you will not have mismatched initial state between server\n * and client and correctly rehydrate after initial render.\n *\n * @defaultValue `false`\n */\n ssr?: boolean;\n\n /**\n * @defaultValue `DEFAULT_APP_SIZE`\n * @see {@link DEFAULT_APP_SIZE}\n */\n ssrAppSize?: Readonly<AppSize>;\n\n /**\n * @defaultValue `DEFAULT_APP_SIZE_QUERIES`\n * @see {@link DEFAULT_APP_SIZE_QUERIES}\n */\n appSizeQueries?: Readonly<AppSizeQueries>;\n\n /** @see {@link PortalContainerProvider} */\n portalContainer?: PortalContainer;\n}\n\n/** @since 6.0.0 */\nexport interface CoreProvidersProps extends ReactMDCoreConfiguration {\n children: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * This is a convenience wrapper for initializing providers for react-md. This\n * includes configuration for:\n *\n * - {@link SsrProvider}\n * - {@link PortalContainerProvider}\n * - {@link AppSizeProvider}\n * - {@link UserInteractionModeProvider}\n *\n * This does not include every provider within `react-md` to help decrease the\n * bundle size for unused features. Here are some other providers that might be\n * useful to initialize near the root of your app:\n *\n * - {@link MenuConfigurationProvider} - If you want to render menus as sheets\n * on phones or other configuration.\n * - {@link LocalStorageColorSchemeProvider}/{@link useColorSchemeProvider} - If\n * you want to allow the user to select a light, dark, or system theme\n * - {@link WritingDirectionProvider} - If you need dynamic support for ltr and\n * rtl languages\n * - {@link ThemeProvider} - If you allow the user to dynamically configure the\n * `react-md` theme\n * - {@link TooltipHoverModeProvider} - If you want tooltips to appear\n * immediately for a time after another tooltip has become visible. You can\n * also configure the global visible delay.\n * - {@link Snackbar} - This isn't a provider but this is how you can display\n * alerts in your app\n *\n * @see {@link https://react-md.dev/components/core-providers | CoreProviders Demos}\n * @since 6.0.0\n */\nexport function CoreProviders(props: CoreProvidersProps): ReactElement {\n const {\n ssr = false,\n ssrAppSize = DEFAULT_APP_SIZE,\n appSizeQueries = DEFAULT_APP_SIZE_QUERIES,\n portalContainer,\n children,\n } = props;\n return (\n <SsrProvider ssr={ssr}>\n <PortalContainerProvider container={portalContainer}>\n <UserInteractionModeProvider>\n <AppSizeProvider {...appSizeQueries} ssrSize={ssrAppSize}>\n {children}\n </AppSizeProvider>\n </UserInteractionModeProvider>\n </PortalContainerProvider>\n </SsrProvider>\n );\n}\n"],"names":["SsrProvider","UserInteractionModeProvider","AppSizeProvider","DEFAULT_APP_SIZE","DEFAULT_APP_SIZE_QUERIES","PortalContainerProvider","CoreProviders","props","ssr","ssrAppSize","appSizeQueries","portalContainer","children","container","ssrSize"],"mappings":"AAAA;;AAIA,SAASA,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,2BAA2B,QAAQ,+CAA+C;AAC3F,SAASC,eAAe,QAAQ,qCAAqC;AACrE,SAGEC,gBAAgB,EAChBC,wBAAwB,QACnB,6BAA6B;AAGpC,SAEEC,uBAAuB,QAClB,sCAAsC;AA0C7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BC,GACD,OAAO,SAASC,cAAcC,KAAyB;IACrD,MAAM,EACJC,MAAM,KAAK,EACXC,aAAaN,gBAAgB,EAC7BO,iBAAiBN,wBAAwB,EACzCO,eAAe,EACfC,QAAQ,EACT,GAAGL;IACJ,qBACE,KAACP;QAAYQ,KAAKA;kBAChB,cAAA,KAACH;YAAwBQ,WAAWF;sBAClC,cAAA,KAACV;0BACC,cAAA,KAACC;oBAAiB,GAAGQ,cAAc;oBAAEI,SAASL;8BAC3CG;;;;;AAMb"}
|
package/dist/SsrProvider.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export interface SsrProviderProps {
|
|
|
13
13
|
/**
|
|
14
14
|
* **Client Component**
|
|
15
15
|
*
|
|
16
|
-
* @see {@link https://
|
|
16
|
+
* @see {@link https://react-md.dev/components/ssr-provider | SsrProvider Demos}
|
|
17
17
|
* @since 6.0.0
|
|
18
18
|
*/
|
|
19
19
|
export declare function SsrProvider(props: SsrProviderProps): ReactElement;
|
package/dist/SsrProvider.js
CHANGED
|
@@ -12,7 +12,7 @@ context.displayName = "Ssr";
|
|
|
12
12
|
/**
|
|
13
13
|
* **Client Component**
|
|
14
14
|
*
|
|
15
|
-
* @see {@link https://
|
|
15
|
+
* @see {@link https://react-md.dev/components/ssr-provider | SsrProvider Demos}
|
|
16
16
|
* @since 6.0.0
|
|
17
17
|
*/ export function SsrProvider(props) {
|
|
18
18
|
const { ssr = false, children } = props;
|
package/dist/SsrProvider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/SsrProvider.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ReactElement,\n type ReactNode,\n createContext,\n useContext,\n useEffect,\n useState,\n} from \"react\";\n\nconst context = createContext(false);\nconst { Provider } = context;\ncontext.displayName = \"Ssr\";\n\n/**\n * @since 6.0.0\n */\nexport function useSsr(): boolean {\n return useContext(context);\n}\n\n/**\n * @since 6.0.0\n */\nexport interface SsrProviderProps {\n ssr?: boolean;\n children: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * @see {@link https://
|
|
1
|
+
{"version":3,"sources":["../src/SsrProvider.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n type ReactElement,\n type ReactNode,\n createContext,\n useContext,\n useEffect,\n useState,\n} from \"react\";\n\nconst context = createContext(false);\nconst { Provider } = context;\ncontext.displayName = \"Ssr\";\n\n/**\n * @since 6.0.0\n */\nexport function useSsr(): boolean {\n return useContext(context);\n}\n\n/**\n * @since 6.0.0\n */\nexport interface SsrProviderProps {\n ssr?: boolean;\n children: ReactNode;\n}\n\n/**\n * **Client Component**\n *\n * @see {@link https://react-md.dev/components/ssr-provider | SsrProvider Demos}\n * @since 6.0.0\n */\nexport function SsrProvider(props: SsrProviderProps): ReactElement {\n const { ssr = false, children } = props;\n const [isSsr, setSsr] = useState(ssr);\n useEffect(() => {\n setSsr(false);\n }, []);\n return <Provider value={isSsr}>{children}</Provider>;\n}\n"],"names":["createContext","useContext","useEffect","useState","context","Provider","displayName","useSsr","SsrProvider","props","ssr","children","isSsr","setSsr","value"],"mappings":"AAAA;;AAEA,SAGEA,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,QAAQ,QACH,QAAQ;AAEf,MAAMC,wBAAUJ,cAAc;AAC9B,MAAM,EAAEK,QAAQ,EAAE,GAAGD;AACrBA,QAAQE,WAAW,GAAG;AAEtB;;CAEC,GACD,OAAO,SAASC;IACd,OAAON,WAAWG;AACpB;AAUA;;;;;CAKC,GACD,OAAO,SAASI,YAAYC,KAAuB;IACjD,MAAM,EAAEC,MAAM,KAAK,EAAEC,QAAQ,EAAE,GAAGF;IAClC,MAAM,CAACG,OAAOC,OAAO,GAAGV,SAASO;IACjCR,UAAU;QACRW,OAAO;IACT,GAAG,EAAE;IACL,qBAAO,KAACR;QAASS,OAAOF;kBAAQD;;AAClC"}
|
package/dist/_base.scss
CHANGED
|
@@ -28,6 +28,8 @@
|
|
|
28
28
|
@use "chip/chip";
|
|
29
29
|
@use "table/table";
|
|
30
30
|
@use "theme/theme";
|
|
31
|
+
@use "border-radius";
|
|
32
|
+
@use "spacing";
|
|
31
33
|
@use "dialog/dialog";
|
|
32
34
|
@use "sheet/sheet";
|
|
33
35
|
@use "transition/transition";
|
|
@@ -385,6 +387,10 @@ $_layer-order: (
|
|
|
385
387
|
/// }
|
|
386
388
|
///
|
|
387
389
|
@mixin variables {
|
|
390
|
+
@include theme.theme-variables;
|
|
391
|
+
@include border-radius.variables;
|
|
392
|
+
@include spacing.variables;
|
|
393
|
+
@include typography.typography-variables;
|
|
388
394
|
@include app-bar.variables;
|
|
389
395
|
@include autocomplete.variables;
|
|
390
396
|
@include avatar.variables;
|
|
@@ -416,11 +422,9 @@ $_layer-order: (
|
|
|
416
422
|
@include tabs.variables;
|
|
417
423
|
@include text-field.variables;
|
|
418
424
|
@include text-area.variables;
|
|
419
|
-
@include theme.theme-variables;
|
|
420
425
|
@include tooltip.variables;
|
|
421
426
|
@include transition.transition-variables;
|
|
422
427
|
@include tree.variables;
|
|
423
|
-
@include typography.typography-variables;
|
|
424
428
|
@include window-splitter.variables;
|
|
425
429
|
}
|
|
426
430
|
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group core.border-radius
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "utils";
|
|
6
|
+
|
|
7
|
+
/// Set to `true` to disable the border radius variables. You probably don't
|
|
8
|
+
/// want to do this.
|
|
9
|
+
/// @type Boolean
|
|
10
|
+
$disable-everything: false !default;
|
|
11
|
+
|
|
12
|
+
/// No Border Radius.
|
|
13
|
+
///
|
|
14
|
+
/// @type Number
|
|
15
|
+
$none: 0 !default;
|
|
16
|
+
|
|
17
|
+
/// Extra Small Border Radius.
|
|
18
|
+
///
|
|
19
|
+
/// @type Number
|
|
20
|
+
$xs: 0.25rem !default;
|
|
21
|
+
|
|
22
|
+
/// Small Border Radius.
|
|
23
|
+
///
|
|
24
|
+
/// @type Number
|
|
25
|
+
$sm: 0.5rem !default;
|
|
26
|
+
|
|
27
|
+
/// Medium Border Radius.
|
|
28
|
+
///
|
|
29
|
+
/// @type Number
|
|
30
|
+
$md: 0.75rem !default;
|
|
31
|
+
|
|
32
|
+
/// Large Border Radius.
|
|
33
|
+
///
|
|
34
|
+
/// @type Number
|
|
35
|
+
$lg: 1rem !default;
|
|
36
|
+
|
|
37
|
+
/// Extra Large Border Radius.
|
|
38
|
+
///
|
|
39
|
+
/// @type Number
|
|
40
|
+
$xl: 1.75rem !default;
|
|
41
|
+
|
|
42
|
+
/// Full Border Radius.
|
|
43
|
+
///
|
|
44
|
+
/// @type Number
|
|
45
|
+
$full: 50% !default;
|
|
46
|
+
|
|
47
|
+
/// The available configurable css variables and mostly used internally for the
|
|
48
|
+
/// `get-var`, `set-var`, and `use-var` utils.
|
|
49
|
+
/// @type List
|
|
50
|
+
$variables: (none, xs, sm, md, lg, xl, full);
|
|
51
|
+
|
|
52
|
+
/// @param {String} name - The supported variable name
|
|
53
|
+
/// @param {any} fallback [null] - An optional fallback value
|
|
54
|
+
/// @returns {String} a `var()` statement
|
|
55
|
+
@function get-var($name, $fallback: null) {
|
|
56
|
+
$var: utils.get-var-name($variables, $name, "border-radius");
|
|
57
|
+
@if $fallback {
|
|
58
|
+
@return var(#{$var}, #{$fallback});
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
@return var(#{$var});
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/// @param {String} name - The supported variable name
|
|
65
|
+
/// @param {any} value - The value to set the variable to. Supports `null` which
|
|
66
|
+
/// will just be a no-op.
|
|
67
|
+
@mixin set-var($name, $value) {
|
|
68
|
+
@if $value {
|
|
69
|
+
#{utils.get-var-name($variables, $name, "border-radius")}: #{$value};
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/// @param {String} property - The css property to apply the variable to
|
|
74
|
+
/// @param {String} name [$property] - The supported variable name
|
|
75
|
+
/// @param {any} fallback [null] - An optional fallback value if the variable
|
|
76
|
+
/// has not been set
|
|
77
|
+
@mixin use-var($property, $name: $property, $fallback: null) {
|
|
78
|
+
#{$property}: get-var($name, $fallback);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/// Conditionally applies the css variables based on feature flags
|
|
82
|
+
@mixin variables {
|
|
83
|
+
@if not $disable-everything {
|
|
84
|
+
@include set-var(none, $none);
|
|
85
|
+
@include set-var(xs, $xs);
|
|
86
|
+
@include set-var(sm, $sm);
|
|
87
|
+
@include set-var(md, $md);
|
|
88
|
+
@include set-var(lg, $lg);
|
|
89
|
+
@include set-var(xl, $xl);
|
|
90
|
+
@include set-var(full, $full);
|
|
91
|
+
}
|
|
92
|
+
}
|
package/dist/_core.scss
CHANGED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group core.spacing
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "utils";
|
|
6
|
+
|
|
7
|
+
/// Set to `true` to disable all the spacing variables. You probably don't want
|
|
8
|
+
/// to do this.
|
|
9
|
+
/// @type Boolean
|
|
10
|
+
$disable-everything: false !default;
|
|
11
|
+
|
|
12
|
+
/// No spacing. Generally applied as `gap`, `padding`, or `margin`.
|
|
13
|
+
///
|
|
14
|
+
/// @type Number
|
|
15
|
+
$none: 0 !default;
|
|
16
|
+
|
|
17
|
+
/// Extra Small Spacing. Generally applied as `gap`, `padding`, or `margin`.
|
|
18
|
+
///
|
|
19
|
+
/// @type Number
|
|
20
|
+
$xs: 0.25rem !default;
|
|
21
|
+
|
|
22
|
+
/// Small Spacing. Generally applied as `gap`, `padding`, or `margin`.
|
|
23
|
+
///
|
|
24
|
+
/// @type Number
|
|
25
|
+
$sm: 0.5rem !default;
|
|
26
|
+
|
|
27
|
+
/// Medium Spacing. Generally applied as `gap`, `padding`, or `margin`.
|
|
28
|
+
///
|
|
29
|
+
/// @type Number
|
|
30
|
+
$md: 1rem !default;
|
|
31
|
+
|
|
32
|
+
/// Large Spacing. Generally applied as `gap`, `padding`, or `margin`.
|
|
33
|
+
///
|
|
34
|
+
/// @type Number
|
|
35
|
+
$lg: 1.5rem !default;
|
|
36
|
+
|
|
37
|
+
/// Extra Large Spacing. Generally applied as `gap`, `padding`, or `margin`.
|
|
38
|
+
///
|
|
39
|
+
/// @type Number
|
|
40
|
+
$xl: 2rem !default;
|
|
41
|
+
|
|
42
|
+
/// The available configurable css variables and mostly used internally for the
|
|
43
|
+
/// `get-var`, `set-var`, and `use-var` utils.
|
|
44
|
+
/// @type List
|
|
45
|
+
$variables: (none, xs, sm, md, lg, xl);
|
|
46
|
+
|
|
47
|
+
/// @param {String} name - The supported variable name
|
|
48
|
+
/// @param {any} fallback [null] - An optional fallback value
|
|
49
|
+
/// @returns {String} a `var()` statement
|
|
50
|
+
@function get-var($name, $fallback: null) {
|
|
51
|
+
$var: utils.get-var-name($variables, $name, "spacing");
|
|
52
|
+
@if $fallback {
|
|
53
|
+
@return var(#{$var}, #{$fallback});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
@return var(#{$var});
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/// @param {String} name - The supported variable name
|
|
60
|
+
/// @param {any} value - The value to set the variable to. Supports `null` which
|
|
61
|
+
/// will just be a no-op.
|
|
62
|
+
@mixin set-var($name, $value) {
|
|
63
|
+
@if $value {
|
|
64
|
+
#{utils.get-var-name($variables, $name, "spacing")}: #{$value};
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/// @param {String} property - The css property to apply the variable to
|
|
69
|
+
/// @param {String} name [$property] - The supported variable name
|
|
70
|
+
/// @param {any} fallback [null] - An optional fallback value if the variable
|
|
71
|
+
/// has not been set
|
|
72
|
+
@mixin use-var($property, $name: $property, $fallback: null) {
|
|
73
|
+
#{$property}: get-var($name, $fallback);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/// Conditionally applies the css variables based on feature flags
|
|
77
|
+
@mixin variables {
|
|
78
|
+
@if not $disable-everything {
|
|
79
|
+
@include set-var(none, $none);
|
|
80
|
+
@include set-var(xs, $xs);
|
|
81
|
+
@include set-var(sm, $sm);
|
|
82
|
+
@include set-var(md, $md);
|
|
83
|
+
@include set-var(lg, $lg);
|
|
84
|
+
@include set-var(xl, $xl);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
@use "sass:map";
|
|
6
6
|
|
|
7
7
|
@use "../utils";
|
|
8
|
+
@use "../spacing";
|
|
8
9
|
@use "../box/box";
|
|
9
10
|
@use "../box-shadows";
|
|
10
11
|
@use "../interaction/interaction";
|
|
@@ -60,7 +61,7 @@ $disable-title: false !default;
|
|
|
60
61
|
|
|
61
62
|
/// Sets the `gap` css property to apply spacing between each item.
|
|
62
63
|
/// @type Number
|
|
63
|
-
$gap:
|
|
64
|
+
$gap: spacing.get-var(xs) !default;
|
|
64
65
|
|
|
65
66
|
/// The default height for an app bar.
|
|
66
67
|
/// @type Number
|
|
@@ -142,11 +143,11 @@ $surface-color: theme.get-default-color(
|
|
|
142
143
|
|
|
143
144
|
/// Horizontal padding for the app bar
|
|
144
145
|
/// @type String|Number
|
|
145
|
-
$horizontal-padding:
|
|
146
|
+
$horizontal-padding: spacing.get-var(xs) !default;
|
|
146
147
|
|
|
147
148
|
/// Vertical padding for the app bar
|
|
148
149
|
/// @type String|Number
|
|
149
|
-
$vertical-padding:
|
|
150
|
+
$vertical-padding: spacing.get-var(none) !default;
|
|
150
151
|
|
|
151
152
|
/// This value is used to align the first element (normally a button) nicely with
|
|
152
153
|
/// other elements on the page.
|
|
@@ -166,7 +167,7 @@ $title-keyline: 4.5rem !default;
|
|
|
166
167
|
/// based on font-size now and `em`
|
|
167
168
|
///
|
|
168
169
|
/// @type String|Number
|
|
169
|
-
$nav-keyline: $title-keyline - $horizontal-padding - $gap - 3rem !default;
|
|
170
|
+
$nav-keyline: calc($title-keyline - $horizontal-padding - $gap - 3rem) !default;
|
|
170
171
|
|
|
171
172
|
/// The available configurable css variables and mostly used internally for the
|
|
172
173
|
/// `get-var`, `set-var`, and `use-var` utils.
|
|
@@ -253,7 +254,8 @@ $variables: (height, surface-background-color, surface-color);
|
|
|
253
254
|
|
|
254
255
|
.rmd-app-bar {
|
|
255
256
|
@include box.set-var(gap, $gap);
|
|
256
|
-
@include box.set-var(padding, $vertical-padding
|
|
257
|
+
@include box.set-var(padding-v, $vertical-padding);
|
|
258
|
+
@include box.set-var(padding-h, $horizontal-padding);
|
|
257
259
|
@include use-var(height);
|
|
258
260
|
|
|
259
261
|
// since app bars can appear a lot in full page dialogs, setting these flex
|
|
@@ -348,8 +350,8 @@ $variables: (height, surface-background-color, surface-color);
|
|
|
348
350
|
|
|
349
351
|
@if not $disable-title {
|
|
350
352
|
.rmd-app-bar-title {
|
|
351
|
-
$title-h-margin: $keyline - $horizontal-padding;
|
|
352
|
-
$title-keyline-h-margin: $title-keyline - $horizontal-padding;
|
|
353
|
+
$title-h-margin: calc($keyline - $horizontal-padding);
|
|
354
|
+
$title-keyline-h-margin: calc($title-keyline - $horizontal-padding);
|
|
353
355
|
|
|
354
356
|
flex: 1 1 auto;
|
|
355
357
|
margin: 0 auto 0 $title-h-margin;
|
package/dist/app-bar/styles.js
CHANGED
|
@@ -47,7 +47,7 @@ const titleStyles = bem("rmd-app-bar-title");
|
|
|
47
47
|
*/ export function appBarTitle(options = {}) {
|
|
48
48
|
const { className, keyline = "small" } = options;
|
|
49
49
|
return cnb(titleStyles({
|
|
50
|
-
keyline: keyline
|
|
50
|
+
keyline: keyline === "list",
|
|
51
51
|
"nav-keyline": keyline === "nav"
|
|
52
52
|
}), className);
|
|
53
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/app-bar/styles.ts"],"sourcesContent":["import { cnb } from \"cnbuilder\";\n\nimport { type BoxOptions, box } from \"../box/styles.js\";\nimport { type BackgroundColor, cssUtils } from \"../cssUtils.js\";\nimport { type CssPosition } from \"../types.js\";\nimport { bem } from \"../utils/bem.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-app-bar-height\"?: string | number;\n \"--rmd-app-bar-background-color\"?: string;\n \"--rmd-app-bar-color\"?: string;\n \"--rmd-app-bar-surface-background-color\"?: string;\n \"--rmd-app-bar-surface-color\"?: string;\n }\n}\n\nconst styles = bem(\"rmd-app-bar\");\nconst titleStyles = bem(\"rmd-app-bar-title\");\n\nexport type AppBarPosition = \"top\" | \"bottom\";\n\n/**\n * - `\"clear\"` - the background color will be transparent\n * - `\"primary\"` - defaults to the current primary theme color\n * - `\"secondary\"` - defaults to the current secondary theme color\n * - `\"surface\"` - this will use the current surface background color which\n * defaults to `#fff` for light themes, `#242424` for dark themes, and\n * `#424242` for dark themes when the `$disable-dark-elevation` is set to\n * `true`\n *\n * The default dark theme surface color also depends on the `$fixed-elevation`\n * value.\n */\nexport type AppBarTheme = BackgroundColor | \"clear\";\n\n/**\n * - `\"auto\"` - the height will be determined by the height of the content\n * - `\"normal\"` - defaults to `3.5rem` (`$height`)\n * - `\"prominent\"` - defaults to `7rem` (`$prominent-height`)\n * - `\"dense\"` - defaults to `3rem` (`$dense-height`)\n * - `\"prominent-dense\"` - defaults to `6rem` (`$prominent-dense-height`)\n */\nexport type AppBarHeight =\n | \"auto\"\n | \"normal\"\n | \"prominent\"\n | \"dense\"\n | \"prominent-dense\";\n\n/** @since 6.0.0 */\nexport interface AppBarClassNameOptions extends Omit<BoxOptions, \"fullWidth\"> {\n className?: string;\n\n /**\n * Set this to `\"fixed\"` or `\"sticky\"` to set `position: fixed;` or\n * `position: sticky;` to the app bar. The default position will be static and\n * inline with other content.\n *\n * @defaultValue `'static'`\n */\n position?: CssPosition;\n\n /**\n * The position within the page to \"fix\" the `AppBar` when the `fixed` prop is\n * enabled.\n *\n * @defaultValue `\"top\"`\n */\n pagePosition?: AppBarPosition;\n\n /**\n * Set this to `true` to remove the box-shadow.\n *\n * @defaultValue `false`\n */\n disableElevation?: boolean;\n\n /**\n * The theme to apply to the `AppBar`.\n *\n * @defaultValue `\"primary\"`\n * @see {@link AppBarTheme}\n */\n theme?: AppBarTheme;\n\n /**\n * @defaultValue `stacked ? \"auto\" : \"normal\"`\n * @see {@link AppBarHeight}\n */\n height?: AppBarHeight;\n\n /** @see {@link CssUtilsOptions.surfaceColor} */\n surfaceColor?: \"light\" | \"dark\";\n\n /**\n * Set this to `true` if the app bar's positioning and width should be\n * changed whenever the scrollbar is visible on the page. This defaults to\n * `true` when the {@link position} prop is `true` so that once dialogs and menus\n * become visible the contents in the app bar do not need to be repainted.\n *\n * @since 6.0.0\n * @defaultValue `position === \"fixed\"`\n */\n scrollbarOffset?: boolean;\n}\n\n/**\n * Apply the `className`s for a tree component. This will be type-safe if using\n * typescript.\n *\n * @since 6.0.0\n */\nexport function appBar(options: AppBarClassNameOptions = {}): string {\n const {\n className,\n theme = \"primary\",\n stacked,\n height = stacked ? \"auto\" : \"normal\",\n position = \"static\",\n pagePosition = \"top\",\n scrollbarOffset = position === \"fixed\",\n align,\n grid,\n gridColumns,\n gridName,\n justify,\n reversed,\n surfaceColor,\n disableWrap = true,\n disablePadding,\n disableElevation,\n } = options;\n const surface = theme === \"surface\";\n const clear = theme === \"clear\";\n\n return cnb(\n styles({\n surface,\n [height]: height !== \"normal\",\n fixed: position !== \"static\",\n stacked,\n sticky: position === \"sticky\",\n [pagePosition]: position !== \"static\",\n elevated: position !== \"static\" && !disableElevation,\n \"scrollbar-offset\": scrollbarOffset,\n \"static-scrollbar-offset\": position === \"static\" && scrollbarOffset,\n }),\n box({\n align,\n stacked,\n fullWidth: true,\n grid,\n gridColumns,\n gridName,\n justify,\n reversed,\n disableWrap,\n disablePadding,\n }),\n cssUtils({\n backgroundColor: !surface && !clear ? theme : undefined,\n surfaceColor,\n }),\n className\n );\n}\n\n/**\n * - `\"small\"` - the first character in the title will be `1rem` (`$keyline`)\n * from the edge of the app bar horizontally\n * - `\"nav\"` - this should be set when there is a nav button before the title so\n * that the first character in the title will be `4.5rem` (`title-keyline`)\n * - `\"list\"` - this should be used when the title should align with the list\n * item keyline and there is no nav icon before.\n *\n * @since 6.0.0\n */\nexport type AppBarTitleKeyline = \"small\" | \"nav\" | \"list\";\n\n/** @since 6.0.0 */\nexport interface AppBarTitleClassNameOptions {\n className?: string;\n\n /**\n * @defaultValue `\"small\"`\n * @see {@link AppBarTitleKeyline}\n */\n keyline?: AppBarTitleKeyline;\n}\n\n/**\n * Apply the `className`s for a `AppBarTitle` component. This will be type-safe\n * if using typescript.\n *\n * @since 6.0.0\n */\nexport function appBarTitle(options: AppBarTitleClassNameOptions = {}): string {\n const { className, keyline = \"small\" } = options;\n return cnb(\n titleStyles({\n keyline: keyline
|
|
1
|
+
{"version":3,"sources":["../../src/app-bar/styles.ts"],"sourcesContent":["import { cnb } from \"cnbuilder\";\n\nimport { type BoxOptions, box } from \"../box/styles.js\";\nimport { type BackgroundColor, cssUtils } from \"../cssUtils.js\";\nimport { type CssPosition } from \"../types.js\";\nimport { bem } from \"../utils/bem.js\";\n\ndeclare module \"react\" {\n interface CSSProperties {\n \"--rmd-app-bar-height\"?: string | number;\n \"--rmd-app-bar-background-color\"?: string;\n \"--rmd-app-bar-color\"?: string;\n \"--rmd-app-bar-surface-background-color\"?: string;\n \"--rmd-app-bar-surface-color\"?: string;\n }\n}\n\nconst styles = bem(\"rmd-app-bar\");\nconst titleStyles = bem(\"rmd-app-bar-title\");\n\nexport type AppBarPosition = \"top\" | \"bottom\";\n\n/**\n * - `\"clear\"` - the background color will be transparent\n * - `\"primary\"` - defaults to the current primary theme color\n * - `\"secondary\"` - defaults to the current secondary theme color\n * - `\"surface\"` - this will use the current surface background color which\n * defaults to `#fff` for light themes, `#242424` for dark themes, and\n * `#424242` for dark themes when the `$disable-dark-elevation` is set to\n * `true`\n *\n * The default dark theme surface color also depends on the `$fixed-elevation`\n * value.\n */\nexport type AppBarTheme = BackgroundColor | \"clear\";\n\n/**\n * - `\"auto\"` - the height will be determined by the height of the content\n * - `\"normal\"` - defaults to `3.5rem` (`$height`)\n * - `\"prominent\"` - defaults to `7rem` (`$prominent-height`)\n * - `\"dense\"` - defaults to `3rem` (`$dense-height`)\n * - `\"prominent-dense\"` - defaults to `6rem` (`$prominent-dense-height`)\n */\nexport type AppBarHeight =\n | \"auto\"\n | \"normal\"\n | \"prominent\"\n | \"dense\"\n | \"prominent-dense\";\n\n/** @since 6.0.0 */\nexport interface AppBarClassNameOptions extends Omit<BoxOptions, \"fullWidth\"> {\n className?: string;\n\n /**\n * Set this to `\"fixed\"` or `\"sticky\"` to set `position: fixed;` or\n * `position: sticky;` to the app bar. The default position will be static and\n * inline with other content.\n *\n * @defaultValue `'static'`\n */\n position?: CssPosition;\n\n /**\n * The position within the page to \"fix\" the `AppBar` when the `fixed` prop is\n * enabled.\n *\n * @defaultValue `\"top\"`\n */\n pagePosition?: AppBarPosition;\n\n /**\n * Set this to `true` to remove the box-shadow.\n *\n * @defaultValue `false`\n */\n disableElevation?: boolean;\n\n /**\n * The theme to apply to the `AppBar`.\n *\n * @defaultValue `\"primary\"`\n * @see {@link AppBarTheme}\n */\n theme?: AppBarTheme;\n\n /**\n * @defaultValue `stacked ? \"auto\" : \"normal\"`\n * @see {@link AppBarHeight}\n */\n height?: AppBarHeight;\n\n /** @see {@link CssUtilsOptions.surfaceColor} */\n surfaceColor?: \"light\" | \"dark\";\n\n /**\n * Set this to `true` if the app bar's positioning and width should be\n * changed whenever the scrollbar is visible on the page. This defaults to\n * `true` when the {@link position} prop is `true` so that once dialogs and menus\n * become visible the contents in the app bar do not need to be repainted.\n *\n * @since 6.0.0\n * @defaultValue `position === \"fixed\"`\n */\n scrollbarOffset?: boolean;\n}\n\n/**\n * Apply the `className`s for a tree component. This will be type-safe if using\n * typescript.\n *\n * @since 6.0.0\n */\nexport function appBar(options: AppBarClassNameOptions = {}): string {\n const {\n className,\n theme = \"primary\",\n stacked,\n height = stacked ? \"auto\" : \"normal\",\n position = \"static\",\n pagePosition = \"top\",\n scrollbarOffset = position === \"fixed\",\n align,\n grid,\n gridColumns,\n gridName,\n justify,\n reversed,\n surfaceColor,\n disableWrap = true,\n disablePadding,\n disableElevation,\n } = options;\n const surface = theme === \"surface\";\n const clear = theme === \"clear\";\n\n return cnb(\n styles({\n surface,\n [height]: height !== \"normal\",\n fixed: position !== \"static\",\n stacked,\n sticky: position === \"sticky\",\n [pagePosition]: position !== \"static\",\n elevated: position !== \"static\" && !disableElevation,\n \"scrollbar-offset\": scrollbarOffset,\n \"static-scrollbar-offset\": position === \"static\" && scrollbarOffset,\n }),\n box({\n align,\n stacked,\n fullWidth: true,\n grid,\n gridColumns,\n gridName,\n justify,\n reversed,\n disableWrap,\n disablePadding,\n }),\n cssUtils({\n backgroundColor: !surface && !clear ? theme : undefined,\n surfaceColor,\n }),\n className\n );\n}\n\n/**\n * - `\"small\"` - the first character in the title will be `1rem` (`$keyline`)\n * from the edge of the app bar horizontally\n * - `\"nav\"` - this should be set when there is a nav button before the title so\n * that the first character in the title will be `4.5rem` (`title-keyline`)\n * - `\"list\"` - this should be used when the title should align with the list\n * item keyline and there is no nav icon before.\n *\n * @since 6.0.0\n */\nexport type AppBarTitleKeyline = \"small\" | \"nav\" | \"list\";\n\n/** @since 6.0.0 */\nexport interface AppBarTitleClassNameOptions {\n className?: string;\n\n /**\n * @defaultValue `\"small\"`\n * @see {@link AppBarTitleKeyline}\n */\n keyline?: AppBarTitleKeyline;\n}\n\n/**\n * Apply the `className`s for a `AppBarTitle` component. This will be type-safe\n * if using typescript.\n *\n * @since 6.0.0\n */\nexport function appBarTitle(options: AppBarTitleClassNameOptions = {}): string {\n const { className, keyline = \"small\" } = options;\n return cnb(\n titleStyles({\n keyline: keyline === \"list\",\n \"nav-keyline\": keyline === \"nav\",\n }),\n className\n );\n}\n"],"names":["cnb","box","cssUtils","bem","styles","titleStyles","appBar","options","className","theme","stacked","height","position","pagePosition","scrollbarOffset","align","grid","gridColumns","gridName","justify","reversed","surfaceColor","disableWrap","disablePadding","disableElevation","surface","clear","fixed","sticky","elevated","fullWidth","backgroundColor","undefined","appBarTitle","keyline"],"mappings":"AAAA,SAASA,GAAG,QAAQ,YAAY;AAEhC,SAA0BC,GAAG,QAAQ,mBAAmB;AACxD,SAA+BC,QAAQ,QAAQ,iBAAiB;AAEhE,SAASC,GAAG,QAAQ,kBAAkB;AAYtC,MAAMC,SAASD,IAAI;AACnB,MAAME,cAAcF,IAAI;AAyFxB;;;;;CAKC,GACD,OAAO,SAASG,OAAOC,UAAkC,CAAC,CAAC;IACzD,MAAM,EACJC,SAAS,EACTC,QAAQ,SAAS,EACjBC,OAAO,EACPC,SAASD,UAAU,SAAS,QAAQ,EACpCE,WAAW,QAAQ,EACnBC,eAAe,KAAK,EACpBC,kBAAkBF,aAAa,OAAO,EACtCG,KAAK,EACLC,IAAI,EACJC,WAAW,EACXC,QAAQ,EACRC,OAAO,EACPC,QAAQ,EACRC,YAAY,EACZC,cAAc,IAAI,EAClBC,cAAc,EACdC,gBAAgB,EACjB,GAAGjB;IACJ,MAAMkB,UAAUhB,UAAU;IAC1B,MAAMiB,QAAQjB,UAAU;IAExB,OAAOT,IACLI,OAAO;QACLqB;QACA,CAACd,OAAO,EAAEA,WAAW;QACrBgB,OAAOf,aAAa;QACpBF;QACAkB,QAAQhB,aAAa;QACrB,CAACC,aAAa,EAAED,aAAa;QAC7BiB,UAAUjB,aAAa,YAAY,CAACY;QACpC,oBAAoBV;QACpB,2BAA2BF,aAAa,YAAYE;IACtD,IACAb,IAAI;QACFc;QACAL;QACAoB,WAAW;QACXd;QACAC;QACAC;QACAC;QACAC;QACAE;QACAC;IACF,IACArB,SAAS;QACP6B,iBAAiB,CAACN,WAAW,CAACC,QAAQjB,QAAQuB;QAC9CX;IACF,IACAb;AAEJ;AAyBA;;;;;CAKC,GACD,OAAO,SAASyB,YAAY1B,UAAuC,CAAC,CAAC;IACnE,MAAM,EAAEC,SAAS,EAAE0B,UAAU,OAAO,EAAE,GAAG3B;IACzC,OAAOP,IACLK,YAAY;QACV6B,SAASA,YAAY;QACrB,eAAeA,YAAY;IAC7B,IACA1B;AAEJ"}
|
|
@@ -47,7 +47,7 @@ import { type AutocompleteMultiSelectProps, type AutocompleteOption, type Autoco
|
|
|
47
47
|
* }
|
|
48
48
|
* ```
|
|
49
49
|
*
|
|
50
|
-
* @see {@link https://
|
|
50
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
51
51
|
* @since 6.0.0
|
|
52
52
|
*/
|
|
53
53
|
export declare function Autocomplete<Option extends AutocompleteOption>(props: AutocompleteSingleSelectProps<Option>): ReactElement;
|
|
@@ -87,7 +87,7 @@ export declare function Autocomplete<Option extends AutocompleteOption>(props: A
|
|
|
87
87
|
* }
|
|
88
88
|
* ```
|
|
89
89
|
*
|
|
90
|
-
* @see {@link https://
|
|
90
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
91
91
|
* @since 6.0.0
|
|
92
92
|
*/
|
|
93
93
|
export declare function Autocomplete<Option extends AutocompleteOption>(props: AutocompleteMultiSelectProps<Option>): ReactElement;
|
|
@@ -16,7 +16,7 @@ import { defaultAutocompleteFilter, noopAutocompleteFilter } from "./defaults.js
|
|
|
16
16
|
import { useAutocomplete } from "./useAutocomplete.js";
|
|
17
17
|
const noop = ()=>undefined;
|
|
18
18
|
/**
|
|
19
|
-
* @see {@link https://
|
|
19
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
20
20
|
* @since 6.0.0
|
|
21
21
|
* @internal
|
|
22
22
|
*/ export function Autocomplete(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/autocomplete/Autocomplete.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactElement } from \"react\";\n\nimport { Listbox } from \"../form/Listbox.js\";\nimport { TextField } from \"../form/TextField.js\";\nimport { ListSubheader } from \"../list/ListSubheader.js\";\nimport { KeyboardMovementProvider } from \"../movement/useKeyboardMovementProvider.js\";\nimport { useEnsuredId } from \"../useEnsuredId.js\";\nimport { useEnsuredRef } from \"../useEnsuredRef.js\";\nimport { AutocompleteChip } from \"./AutocompleteChip.js\";\nimport { AutocompleteCircularProgress } from \"./AutocompleteCircularProgress.js\";\nimport { AutocompleteClearButton } from \"./AutocompleteClearButton.js\";\nimport { AutocompleteDropdownButton } from \"./AutocompleteDropdownButton.js\";\nimport { AutocompleteListboxChildren } from \"./AutocompleteListboxChildren.js\";\nimport { autocomplete, autocompleteRightAddon } from \"./autocompleteStyles.js\";\nimport {\n defaultAutocompleteFilter,\n noopAutocompleteFilter,\n} from \"./defaults.js\";\nimport {\n type AutocompleteMultiSelectProps,\n type AutocompleteOption,\n type AutocompleteProps,\n type AutocompleteSingleSelectProps,\n} from \"./types.js\";\nimport { useAutocomplete } from \"./useAutocomplete.js\";\n\nconst noop = (): undefined => undefined;\n\n/**\n * An `Autocomplete` is a component that allows for real-time suggestions from\n * a pre-determined list as the user types by filtering data based on the\n * current value. It can also be used to interact with an API that handles the\n * sorting, filtering, matching, etc as well.\n *\n * An `Autocomplete` always requires the following props:\n *\n * - `options` - a list of available options that can be a list of strings,\n * a list of objects with a `{ label: string }`, or any list of objects\n * - if the list of objects do not have a `label`, the\n * {@link AutocompleteProps.getOptionLabel} **must** be provided to allow\n * filtering\n * - `label` or `aria-label` to describe the textbox for accessibility\n * - `listboxLabel` or `listboxLabelledBy` for an accessible label describing the options\n *\n * @example Simple Example\n * ```tsx\n * \"use client\";\n *\n * import { Autocomplete } from \"@react-md/core/autocomplete/Autocomplete\";\n * import { type ReactElement } from \"react\";\n *\n * export default function SimpleExample(): ReactElement {\n * return (\n * <Autocomplete\n * label=\"Fruit\"\n * placeholder=\"Apple\"\n * listboxLabel=\"Fruits\"\n * options={[\n * \"Apple\",\n * \"Apricot\",\n * \"Banana\",\n * \"Blueberry\",\n * \"Cranberry\",\n * \"Kiwi\",\n * \"Mango\",\n * \"Orange\",\n * \"Peach\",\n * \"Plum\",\n * \"Strawberry\",\n * ]}\n * />\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/autocomplete | Autocomplete Demos}\n * @since 6.0.0\n */\nexport function Autocomplete<Option extends AutocompleteOption>(\n props: AutocompleteSingleSelectProps<Option>\n): ReactElement;\n/**\n * To create an `Autocomplete` that can have multiple values selected at once,\n * either provide an array `value` or `defaultValue`.\n *\n * @example Simple Example\n * ```tsx\n * \"use client\";\n *\n * import { Autocomplete } from \"@react-md/core/autocomplete/Autocomplete\";\n * import { type ReactElement, useState } from \"react\";\n *\n * export default function SimpleExample(): ReactElement {\n * const [value, setValue] = useState<readonly Dessert[]>([]);\n * return (\n * <Autocomplete\n * label=\"Fruit\"\n * placeholder=\"Apple\"\n * listboxLabel=\"Fruits\"\n * options={[\n * \"Apple\",\n * \"Apricot\",\n * \"Banana\",\n * \"Blueberry\",\n * \"Cranberry\",\n * \"Kiwi\",\n * \"Mango\",\n * \"Orange\",\n * \"Peach\",\n * \"Plum\",\n * \"Strawberry\",\n * ]}\n * />\n * );\n * }\n * ```\n *\n * @see {@link https://next.react-md.dev/components/autocomplete | Autocomplete Demos}\n * @since 6.0.0\n */\nexport function Autocomplete<Option extends AutocompleteOption>(\n props: AutocompleteMultiSelectProps<Option>\n): ReactElement;\n/**\n * @see {@link https://next.react-md.dev/components/autocomplete | Autocomplete Demos}\n * @since 6.0.0\n * @internal\n */\nexport function Autocomplete<Option extends AutocompleteOption>(\n props: AutocompleteProps<Option>\n): ReactElement {\n const {\n id: propId,\n onBlur,\n onFocus,\n onClick,\n onChange,\n onKeyDown,\n onOpen,\n type,\n className,\n inputRef,\n children,\n filter = type === \"search\"\n ? noopAutocompleteFilter\n : defaultAutocompleteFilter,\n filterSelected,\n value,\n setValue,\n defaultValue,\n onValueChange,\n query,\n setQuery,\n defaultQuery,\n options,\n getOptionLabel: propGetOptionLabel,\n getOptionProps: propGetOptionProps,\n allowAnyValue,\n listboxProps,\n listboxLabel,\n listboxLabelledBy,\n selectedIcon,\n unselectedIcon,\n selectedIconAfter,\n checkboxes,\n disableSelectedIcon,\n loading,\n loadingProps,\n dropdownButtonProps,\n disableDropdownButton,\n clearButtonProps,\n disableClearButton,\n clearButtonVisibility = \"query\",\n noOptionsChildren = <ListSubheader>No Options</ListSubheader>,\n leftAddon: propLeftAddon,\n disableLeftAddonStyles: propDisableLeftAddonStyles,\n labelProps,\n rightAddon,\n rightAddonProps,\n containerProps,\n getChipProps = noop,\n updateQueryOnSelect,\n visible,\n setVisible,\n defaultVisible,\n disableInlineChips,\n disableCloseOnSelect,\n ...remaining\n } = props;\n const { form, disabled } = props;\n\n const id = useEnsuredId(propId, \"autocomplete\");\n const menuId = useEnsuredId(listboxProps?.id, \"autocomplete-listbox\");\n const {\n query: currentQuery,\n value: currentValue,\n setValue: currentSetValue,\n multiselect,\n comboboxRef: inputNodeRef,\n comboboxProps,\n movementContext,\n availableOptions,\n getOptionLabel,\n getOptionProps,\n getListboxProps,\n getClearButtonProps,\n getDropdownButtonProps,\n } = useAutocomplete({\n form,\n onBlur,\n onFocus,\n onClick,\n onChange,\n onKeyDown,\n onOpen,\n disabled,\n filter,\n filterSelected,\n popupId: menuId,\n popupRef: listboxProps?.ref,\n comboboxId: id,\n comboboxRef: inputRef,\n options,\n getOptionLabel: propGetOptionLabel,\n getOptionProps: propGetOptionProps,\n allowAnyValue,\n updateQueryOnSelect,\n value,\n setValue,\n defaultValue,\n onValueChange,\n query,\n setQuery,\n defaultQuery,\n defaultVisible,\n visible,\n setVisible,\n checkboxes,\n selectedIcon,\n unselectedIcon,\n selectedIconAfter,\n disableSelectedIcon,\n disableCloseOnSelect,\n });\n const [containerRef, containerRefCallback] = useEnsuredRef(\n containerProps?.ref\n );\n\n let leftAddon = propLeftAddon;\n let disableLeftAddonStyles = propDisableLeftAddonStyles;\n let inlineChips = false;\n let floatingActive = labelProps?.floatingActive;\n if (multiselect && !disableInlineChips) {\n inlineChips = true;\n // TODO: Maybe one day fix the typing? Might not be possible with\n // destructuring though\n const value = currentValue as readonly Option[];\n disableLeftAddonStyles ??= true;\n floatingActive ||= value.length > 0;\n leftAddon = (\n <>\n {value.map((option, index) => {\n const label = getOptionLabel(option);\n const overrides = getChipProps({\n index,\n query: currentQuery,\n option,\n extractor: getOptionLabel,\n });\n return (\n <AutocompleteChip\n key={label}\n {...overrides}\n onClick={(event) => {\n overrides?.onClick?.(event);\n currentSetValue(value.filter((v) => v !== option));\n }}\n >\n {overrides?.children ?? label}\n </AutocompleteChip>\n );\n })}\n </>\n );\n }\n\n return (\n <KeyboardMovementProvider value={movementContext}>\n <TextField\n {...remaining}\n {...comboboxProps}\n containerProps={{\n ...containerProps,\n ref: containerRefCallback,\n onClick: (event) => {\n containerProps?.onClick?.(event);\n inputNodeRef.current?.focus();\n },\n }}\n className={autocomplete({\n className,\n loading,\n inlineChips,\n disableClearButton,\n disableDropdownButton,\n })}\n labelProps={{\n ...labelProps,\n floatingActive,\n }}\n leftAddon={leftAddon}\n disableLeftAddonStyles={disableLeftAddonStyles}\n rightAddon={\n <>\n {rightAddon}\n {loading && <AutocompleteCircularProgress {...loadingProps} />}\n {!disableClearButton && (\n <AutocompleteClearButton\n {...clearButtonProps}\n visibility={clearButtonVisibility}\n {...getClearButtonProps(clearButtonProps)}\n />\n )}\n {!disableDropdownButton && (\n <AutocompleteDropdownButton\n aria-label={listboxLabel as string}\n aria-labelledby={listboxLabelledBy}\n {...getDropdownButtonProps(dropdownButtonProps)}\n />\n )}\n </>\n }\n rightAddonProps={{\n ...rightAddonProps,\n pointerEvents: true,\n className: autocompleteRightAddon({\n className: rightAddonProps?.className,\n }),\n }}\n />\n <Listbox\n aria-label={listboxLabel as string}\n aria-labelledby={listboxLabelledBy}\n {...getListboxProps(listboxProps)}\n fixedTo={containerRef}\n >\n <AutocompleteListboxChildren\n query={currentQuery}\n options={availableOptions}\n getOptionLabel={getOptionLabel}\n getOptionProps={getOptionProps}\n noOptionsChildren={noOptionsChildren}\n >\n {children}\n </AutocompleteListboxChildren>\n </Listbox>\n </KeyboardMovementProvider>\n );\n}\n"],"names":["Listbox","TextField","ListSubheader","KeyboardMovementProvider","useEnsuredId","useEnsuredRef","AutocompleteChip","AutocompleteCircularProgress","AutocompleteClearButton","AutocompleteDropdownButton","AutocompleteListboxChildren","autocomplete","autocompleteRightAddon","defaultAutocompleteFilter","noopAutocompleteFilter","useAutocomplete","noop","undefined","Autocomplete","props","id","propId","onBlur","onFocus","onClick","onChange","onKeyDown","onOpen","type","className","inputRef","children","filter","filterSelected","value","setValue","defaultValue","onValueChange","query","setQuery","defaultQuery","options","getOptionLabel","propGetOptionLabel","getOptionProps","propGetOptionProps","allowAnyValue","listboxProps","listboxLabel","listboxLabelledBy","selectedIcon","unselectedIcon","selectedIconAfter","checkboxes","disableSelectedIcon","loading","loadingProps","dropdownButtonProps","disableDropdownButton","clearButtonProps","disableClearButton","clearButtonVisibility","noOptionsChildren","leftAddon","propLeftAddon","disableLeftAddonStyles","propDisableLeftAddonStyles","labelProps","rightAddon","rightAddonProps","containerProps","getChipProps","updateQueryOnSelect","visible","setVisible","defaultVisible","disableInlineChips","disableCloseOnSelect","remaining","form","disabled","menuId","currentQuery","currentValue","currentSetValue","multiselect","comboboxRef","inputNodeRef","comboboxProps","movementContext","availableOptions","getListboxProps","getClearButtonProps","getDropdownButtonProps","popupId","popupRef","ref","comboboxId","containerRef","containerRefCallback","inlineChips","floatingActive","length","map","option","index","label","overrides","extractor","event","v","current","focus","visibility","aria-label","aria-labelledby","pointerEvents","fixedTo"],"mappings":"AAAA;;AAIA,SAASA,OAAO,QAAQ,qBAAqB;AAC7C,SAASC,SAAS,QAAQ,uBAAuB;AACjD,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,wBAAwB,QAAQ,6CAA6C;AACtF,SAASC,YAAY,QAAQ,qBAAqB;AAClD,SAASC,aAAa,QAAQ,sBAAsB;AACpD,SAASC,gBAAgB,QAAQ,wBAAwB;AACzD,SAASC,4BAA4B,QAAQ,oCAAoC;AACjF,SAASC,uBAAuB,QAAQ,+BAA+B;AACvE,SAASC,0BAA0B,QAAQ,kCAAkC;AAC7E,SAASC,2BAA2B,QAAQ,mCAAmC;AAC/E,SAASC,YAAY,EAAEC,sBAAsB,QAAQ,0BAA0B;AAC/E,SACEC,yBAAyB,EACzBC,sBAAsB,QACjB,gBAAgB;AAOvB,SAASC,eAAe,QAAQ,uBAAuB;AAEvD,MAAMC,OAAO,IAAiBC;AAiG9B;;;;CAIC,GACD,OAAO,SAASC,aACdC,KAAgC;IAEhC,MAAM,EACJC,IAAIC,MAAM,EACVC,MAAM,EACNC,OAAO,EACPC,OAAO,EACPC,QAAQ,EACRC,SAAS,EACTC,MAAM,EACNC,IAAI,EACJC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACRC,SAASJ,SAAS,WACdd,yBACAD,yBAAyB,EAC7BoB,cAAc,EACdC,KAAK,EACLC,QAAQ,EACRC,YAAY,EACZC,aAAa,EACbC,KAAK,EACLC,QAAQ,EACRC,YAAY,EACZC,OAAO,EACPC,gBAAgBC,kBAAkB,EAClCC,gBAAgBC,kBAAkB,EAClCC,aAAa,EACbC,YAAY,EACZC,YAAY,EACZC,iBAAiB,EACjBC,YAAY,EACZC,cAAc,EACdC,iBAAiB,EACjBC,UAAU,EACVC,mBAAmB,EACnBC,OAAO,EACPC,YAAY,EACZC,mBAAmB,EACnBC,qBAAqB,EACrBC,gBAAgB,EAChBC,kBAAkB,EAClBC,wBAAwB,OAAO,EAC/BC,kCAAoB,KAAC5D;kBAAc;MAA0B,EAC7D6D,WAAWC,aAAa,EACxBC,wBAAwBC,0BAA0B,EAClDC,UAAU,EACVC,UAAU,EACVC,eAAe,EACfC,cAAc,EACdC,eAAevD,IAAI,EACnBwD,mBAAmB,EACnBC,OAAO,EACPC,UAAU,EACVC,cAAc,EACdC,kBAAkB,EAClBC,oBAAoB,EACpB,GAAGC,WACJ,GAAG3D;IACJ,MAAM,EAAE4D,IAAI,EAAEC,QAAQ,EAAE,GAAG7D;IAE3B,MAAMC,KAAKhB,aAAaiB,QAAQ;IAChC,MAAM4D,SAAS7E,aAAa2C,cAAc3B,IAAI;IAC9C,MAAM,EACJkB,OAAO4C,YAAY,EACnBhD,OAAOiD,YAAY,EACnBhD,UAAUiD,eAAe,EACzBC,WAAW,EACXC,aAAaC,YAAY,EACzBC,aAAa,EACbC,eAAe,EACfC,gBAAgB,EAChBhD,cAAc,EACdE,cAAc,EACd+C,eAAe,EACfC,mBAAmB,EACnBC,sBAAsB,EACvB,GAAG9E,gBAAgB;QAClBgE;QACAzD;QACAC;QACAC;QACAC;QACAC;QACAC;QACAqD;QACAhD;QACAC;QACA6D,SAASb;QACTc,UAAUhD,cAAciD;QACxBC,YAAY7E;QACZkE,aAAaxD;QACbW;QACAC,gBAAgBC;QAChBC,gBAAgBC;QAChBC;QACA0B;QACAtC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAmC;QACAF;QACAC;QACArB;QACAH;QACAC;QACAC;QACAE;QACAuB;IACF;IACA,MAAM,CAACqB,cAAcC,qBAAqB,GAAG9F,cAC3CiE,gBAAgB0B;IAGlB,IAAIjC,YAAYC;IAChB,IAAIC,yBAAyBC;IAC7B,IAAIkC,cAAc;IAClB,IAAIC,iBAAiBlC,YAAYkC;IACjC,IAAIhB,eAAe,CAACT,oBAAoB;QACtCwB,cAAc;QACd,iEAAiE;QACjE,uBAAuB;QACvB,MAAMlE,QAAQiD;QACdlB,2BAA2B;QAC3BoC,mBAAmBnE,MAAMoE,MAAM,GAAG;QAClCvC,0BACE;sBACG7B,MAAMqE,GAAG,CAAC,CAACC,QAAQC;gBAClB,MAAMC,QAAQhE,eAAe8D;gBAC7B,MAAMG,YAAYpC,aAAa;oBAC7BkC;oBACAnE,OAAO4C;oBACPsB;oBACAI,WAAWlE;gBACb;gBACA,qBACE,KAACpC;oBAEE,GAAGqG,SAAS;oBACbnF,SAAS,CAACqF;wBACRF,WAAWnF,UAAUqF;wBACrBzB,gBAAgBlD,MAAMF,MAAM,CAAC,CAAC8E,IAAMA,MAAMN;oBAC5C;8BAECG,WAAW5E,YAAY2E;mBAPnBA;YAUX;;IAGN;IAEA,qBACE,MAACvG;QAAyB+B,OAAOuD;;0BAC/B,KAACxF;gBACE,GAAG6E,SAAS;gBACZ,GAAGU,aAAa;gBACjBlB,gBAAgB;oBACd,GAAGA,cAAc;oBACjB0B,KAAKG;oBACL3E,SAAS,CAACqF;wBACRvC,gBAAgB9C,UAAUqF;wBAC1BtB,aAAawB,OAAO,EAAEC;oBACxB;gBACF;gBACAnF,WAAWlB,aAAa;oBACtBkB;oBACA0B;oBACA6C;oBACAxC;oBACAF;gBACF;gBACAS,YAAY;oBACV,GAAGA,UAAU;oBACbkC;gBACF;gBACAtC,WAAWA;gBACXE,wBAAwBA;gBACxBG,0BACE;;wBACGA;wBACAb,yBAAW,KAAChD;4BAA8B,GAAGiD,YAAY;;wBACzD,CAACI,oCACA,KAACpD;4BACE,GAAGmD,gBAAgB;4BACpBsD,YAAYpD;4BACX,GAAG+B,oBAAoBjC,iBAAiB;;wBAG5C,CAACD,uCACA,KAACjD;4BACCyG,cAAYlE;4BACZmE,mBAAiBlE;4BAChB,GAAG4C,uBAAuBpC,oBAAoB;;;;gBAKvDY,iBAAiB;oBACf,GAAGA,eAAe;oBAClB+C,eAAe;oBACfvF,WAAWjB,uBAAuB;wBAChCiB,WAAWwC,iBAAiBxC;oBAC9B;gBACF;;0BAEF,KAAC7B;gBACCkH,cAAYlE;gBACZmE,mBAAiBlE;gBAChB,GAAG0C,gBAAgB5C,aAAa;gBACjCsE,SAASnB;0BAET,cAAA,KAACxF;oBACC4B,OAAO4C;oBACPzC,SAASiD;oBACThD,gBAAgBA;oBAChBE,gBAAgBA;oBAChBkB,mBAAmBA;8BAElB/B;;;;;AAKX"}
|
|
1
|
+
{"version":3,"sources":["../../src/autocomplete/Autocomplete.tsx"],"sourcesContent":["\"use client\";\n\nimport { type ReactElement } from \"react\";\n\nimport { Listbox } from \"../form/Listbox.js\";\nimport { TextField } from \"../form/TextField.js\";\nimport { ListSubheader } from \"../list/ListSubheader.js\";\nimport { KeyboardMovementProvider } from \"../movement/useKeyboardMovementProvider.js\";\nimport { useEnsuredId } from \"../useEnsuredId.js\";\nimport { useEnsuredRef } from \"../useEnsuredRef.js\";\nimport { AutocompleteChip } from \"./AutocompleteChip.js\";\nimport { AutocompleteCircularProgress } from \"./AutocompleteCircularProgress.js\";\nimport { AutocompleteClearButton } from \"./AutocompleteClearButton.js\";\nimport { AutocompleteDropdownButton } from \"./AutocompleteDropdownButton.js\";\nimport { AutocompleteListboxChildren } from \"./AutocompleteListboxChildren.js\";\nimport { autocomplete, autocompleteRightAddon } from \"./autocompleteStyles.js\";\nimport {\n defaultAutocompleteFilter,\n noopAutocompleteFilter,\n} from \"./defaults.js\";\nimport {\n type AutocompleteMultiSelectProps,\n type AutocompleteOption,\n type AutocompleteProps,\n type AutocompleteSingleSelectProps,\n} from \"./types.js\";\nimport { useAutocomplete } from \"./useAutocomplete.js\";\n\nconst noop = (): undefined => undefined;\n\n/**\n * An `Autocomplete` is a component that allows for real-time suggestions from\n * a pre-determined list as the user types by filtering data based on the\n * current value. It can also be used to interact with an API that handles the\n * sorting, filtering, matching, etc as well.\n *\n * An `Autocomplete` always requires the following props:\n *\n * - `options` - a list of available options that can be a list of strings,\n * a list of objects with a `{ label: string }`, or any list of objects\n * - if the list of objects do not have a `label`, the\n * {@link AutocompleteProps.getOptionLabel} **must** be provided to allow\n * filtering\n * - `label` or `aria-label` to describe the textbox for accessibility\n * - `listboxLabel` or `listboxLabelledBy` for an accessible label describing the options\n *\n * @example Simple Example\n * ```tsx\n * \"use client\";\n *\n * import { Autocomplete } from \"@react-md/core/autocomplete/Autocomplete\";\n * import { type ReactElement } from \"react\";\n *\n * export default function SimpleExample(): ReactElement {\n * return (\n * <Autocomplete\n * label=\"Fruit\"\n * placeholder=\"Apple\"\n * listboxLabel=\"Fruits\"\n * options={[\n * \"Apple\",\n * \"Apricot\",\n * \"Banana\",\n * \"Blueberry\",\n * \"Cranberry\",\n * \"Kiwi\",\n * \"Mango\",\n * \"Orange\",\n * \"Peach\",\n * \"Plum\",\n * \"Strawberry\",\n * ]}\n * />\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}\n * @since 6.0.0\n */\nexport function Autocomplete<Option extends AutocompleteOption>(\n props: AutocompleteSingleSelectProps<Option>\n): ReactElement;\n/**\n * To create an `Autocomplete` that can have multiple values selected at once,\n * either provide an array `value` or `defaultValue`.\n *\n * @example Simple Example\n * ```tsx\n * \"use client\";\n *\n * import { Autocomplete } from \"@react-md/core/autocomplete/Autocomplete\";\n * import { type ReactElement, useState } from \"react\";\n *\n * export default function SimpleExample(): ReactElement {\n * const [value, setValue] = useState<readonly Dessert[]>([]);\n * return (\n * <Autocomplete\n * label=\"Fruit\"\n * placeholder=\"Apple\"\n * listboxLabel=\"Fruits\"\n * options={[\n * \"Apple\",\n * \"Apricot\",\n * \"Banana\",\n * \"Blueberry\",\n * \"Cranberry\",\n * \"Kiwi\",\n * \"Mango\",\n * \"Orange\",\n * \"Peach\",\n * \"Plum\",\n * \"Strawberry\",\n * ]}\n * />\n * );\n * }\n * ```\n *\n * @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}\n * @since 6.0.0\n */\nexport function Autocomplete<Option extends AutocompleteOption>(\n props: AutocompleteMultiSelectProps<Option>\n): ReactElement;\n/**\n * @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}\n * @since 6.0.0\n * @internal\n */\nexport function Autocomplete<Option extends AutocompleteOption>(\n props: AutocompleteProps<Option>\n): ReactElement {\n const {\n id: propId,\n onBlur,\n onFocus,\n onClick,\n onChange,\n onKeyDown,\n onOpen,\n type,\n className,\n inputRef,\n children,\n filter = type === \"search\"\n ? noopAutocompleteFilter\n : defaultAutocompleteFilter,\n filterSelected,\n value,\n setValue,\n defaultValue,\n onValueChange,\n query,\n setQuery,\n defaultQuery,\n options,\n getOptionLabel: propGetOptionLabel,\n getOptionProps: propGetOptionProps,\n allowAnyValue,\n listboxProps,\n listboxLabel,\n listboxLabelledBy,\n selectedIcon,\n unselectedIcon,\n selectedIconAfter,\n checkboxes,\n disableSelectedIcon,\n loading,\n loadingProps,\n dropdownButtonProps,\n disableDropdownButton,\n clearButtonProps,\n disableClearButton,\n clearButtonVisibility = \"query\",\n noOptionsChildren = <ListSubheader>No Options</ListSubheader>,\n leftAddon: propLeftAddon,\n disableLeftAddonStyles: propDisableLeftAddonStyles,\n labelProps,\n rightAddon,\n rightAddonProps,\n containerProps,\n getChipProps = noop,\n updateQueryOnSelect,\n visible,\n setVisible,\n defaultVisible,\n disableInlineChips,\n disableCloseOnSelect,\n ...remaining\n } = props;\n const { form, disabled } = props;\n\n const id = useEnsuredId(propId, \"autocomplete\");\n const menuId = useEnsuredId(listboxProps?.id, \"autocomplete-listbox\");\n const {\n query: currentQuery,\n value: currentValue,\n setValue: currentSetValue,\n multiselect,\n comboboxRef: inputNodeRef,\n comboboxProps,\n movementContext,\n availableOptions,\n getOptionLabel,\n getOptionProps,\n getListboxProps,\n getClearButtonProps,\n getDropdownButtonProps,\n } = useAutocomplete({\n form,\n onBlur,\n onFocus,\n onClick,\n onChange,\n onKeyDown,\n onOpen,\n disabled,\n filter,\n filterSelected,\n popupId: menuId,\n popupRef: listboxProps?.ref,\n comboboxId: id,\n comboboxRef: inputRef,\n options,\n getOptionLabel: propGetOptionLabel,\n getOptionProps: propGetOptionProps,\n allowAnyValue,\n updateQueryOnSelect,\n value,\n setValue,\n defaultValue,\n onValueChange,\n query,\n setQuery,\n defaultQuery,\n defaultVisible,\n visible,\n setVisible,\n checkboxes,\n selectedIcon,\n unselectedIcon,\n selectedIconAfter,\n disableSelectedIcon,\n disableCloseOnSelect,\n });\n const [containerRef, containerRefCallback] = useEnsuredRef(\n containerProps?.ref\n );\n\n let leftAddon = propLeftAddon;\n let disableLeftAddonStyles = propDisableLeftAddonStyles;\n let inlineChips = false;\n let floatingActive = labelProps?.floatingActive;\n if (multiselect && !disableInlineChips) {\n inlineChips = true;\n // TODO: Maybe one day fix the typing? Might not be possible with\n // destructuring though\n const value = currentValue as readonly Option[];\n disableLeftAddonStyles ??= true;\n floatingActive ||= value.length > 0;\n leftAddon = (\n <>\n {value.map((option, index) => {\n const label = getOptionLabel(option);\n const overrides = getChipProps({\n index,\n query: currentQuery,\n option,\n extractor: getOptionLabel,\n });\n return (\n <AutocompleteChip\n key={label}\n {...overrides}\n onClick={(event) => {\n overrides?.onClick?.(event);\n currentSetValue(value.filter((v) => v !== option));\n }}\n >\n {overrides?.children ?? label}\n </AutocompleteChip>\n );\n })}\n </>\n );\n }\n\n return (\n <KeyboardMovementProvider value={movementContext}>\n <TextField\n {...remaining}\n {...comboboxProps}\n containerProps={{\n ...containerProps,\n ref: containerRefCallback,\n onClick: (event) => {\n containerProps?.onClick?.(event);\n inputNodeRef.current?.focus();\n },\n }}\n className={autocomplete({\n className,\n loading,\n inlineChips,\n disableClearButton,\n disableDropdownButton,\n })}\n labelProps={{\n ...labelProps,\n floatingActive,\n }}\n leftAddon={leftAddon}\n disableLeftAddonStyles={disableLeftAddonStyles}\n rightAddon={\n <>\n {rightAddon}\n {loading && <AutocompleteCircularProgress {...loadingProps} />}\n {!disableClearButton && (\n <AutocompleteClearButton\n {...clearButtonProps}\n visibility={clearButtonVisibility}\n {...getClearButtonProps(clearButtonProps)}\n />\n )}\n {!disableDropdownButton && (\n <AutocompleteDropdownButton\n aria-label={listboxLabel as string}\n aria-labelledby={listboxLabelledBy}\n {...getDropdownButtonProps(dropdownButtonProps)}\n />\n )}\n </>\n }\n rightAddonProps={{\n ...rightAddonProps,\n pointerEvents: true,\n className: autocompleteRightAddon({\n className: rightAddonProps?.className,\n }),\n }}\n />\n <Listbox\n aria-label={listboxLabel as string}\n aria-labelledby={listboxLabelledBy}\n {...getListboxProps(listboxProps)}\n fixedTo={containerRef}\n >\n <AutocompleteListboxChildren\n query={currentQuery}\n options={availableOptions}\n getOptionLabel={getOptionLabel}\n getOptionProps={getOptionProps}\n noOptionsChildren={noOptionsChildren}\n >\n {children}\n </AutocompleteListboxChildren>\n </Listbox>\n </KeyboardMovementProvider>\n );\n}\n"],"names":["Listbox","TextField","ListSubheader","KeyboardMovementProvider","useEnsuredId","useEnsuredRef","AutocompleteChip","AutocompleteCircularProgress","AutocompleteClearButton","AutocompleteDropdownButton","AutocompleteListboxChildren","autocomplete","autocompleteRightAddon","defaultAutocompleteFilter","noopAutocompleteFilter","useAutocomplete","noop","undefined","Autocomplete","props","id","propId","onBlur","onFocus","onClick","onChange","onKeyDown","onOpen","type","className","inputRef","children","filter","filterSelected","value","setValue","defaultValue","onValueChange","query","setQuery","defaultQuery","options","getOptionLabel","propGetOptionLabel","getOptionProps","propGetOptionProps","allowAnyValue","listboxProps","listboxLabel","listboxLabelledBy","selectedIcon","unselectedIcon","selectedIconAfter","checkboxes","disableSelectedIcon","loading","loadingProps","dropdownButtonProps","disableDropdownButton","clearButtonProps","disableClearButton","clearButtonVisibility","noOptionsChildren","leftAddon","propLeftAddon","disableLeftAddonStyles","propDisableLeftAddonStyles","labelProps","rightAddon","rightAddonProps","containerProps","getChipProps","updateQueryOnSelect","visible","setVisible","defaultVisible","disableInlineChips","disableCloseOnSelect","remaining","form","disabled","menuId","currentQuery","currentValue","currentSetValue","multiselect","comboboxRef","inputNodeRef","comboboxProps","movementContext","availableOptions","getListboxProps","getClearButtonProps","getDropdownButtonProps","popupId","popupRef","ref","comboboxId","containerRef","containerRefCallback","inlineChips","floatingActive","length","map","option","index","label","overrides","extractor","event","v","current","focus","visibility","aria-label","aria-labelledby","pointerEvents","fixedTo"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { type AutocompleteChipProps } from "./types.js";
|
|
|
3
3
|
* A small wrapper around the `Chip` that defaults the `rightAddon` to the
|
|
4
4
|
* remove icon and adds a default `aria-description`.
|
|
5
5
|
*
|
|
6
|
-
* @see {@link https://
|
|
6
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
7
7
|
* @since 6.0.0
|
|
8
8
|
*/
|
|
9
9
|
export declare const AutocompleteChip: import("react").ForwardRefExoticComponent<AutocompleteChipProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
@@ -7,7 +7,7 @@ import { autocompleteChip } from "./autocompleteStyles.js";
|
|
|
7
7
|
* A small wrapper around the `Chip` that defaults the `rightAddon` to the
|
|
8
8
|
* remove icon and adds a default `aria-description`.
|
|
9
9
|
*
|
|
10
|
-
* @see {@link https://
|
|
10
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
11
11
|
* @since 6.0.0
|
|
12
12
|
*/ export const AutocompleteChip = /*#__PURE__*/ forwardRef(function AutocompleteChip(props, ref) {
|
|
13
13
|
const { "aria-description": propAriaDescription, children, className, removeIcon: propRemoveIcon, rightAddon: propRightAddon, ...remaining } = props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/autocomplete/AutocompleteChip.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { Chip } from \"../chip/Chip.js\";\nimport { getIcon } from \"../icon/config.js\";\nimport { autocompleteChip } from \"./autocompleteStyles.js\";\nimport { type AutocompleteChipProps } from \"./types.js\";\n\n/**\n * A small wrapper around the `Chip` that defaults the `rightAddon` to the\n * remove icon and adds a default `aria-description`.\n *\n * @see {@link https://
|
|
1
|
+
{"version":3,"sources":["../../src/autocomplete/AutocompleteChip.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\n\nimport { Chip } from \"../chip/Chip.js\";\nimport { getIcon } from \"../icon/config.js\";\nimport { autocompleteChip } from \"./autocompleteStyles.js\";\nimport { type AutocompleteChipProps } from \"./types.js\";\n\n/**\n * A small wrapper around the `Chip` that defaults the `rightAddon` to the\n * remove icon and adds a default `aria-description`.\n *\n * @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}\n * @since 6.0.0\n */\nexport const AutocompleteChip = forwardRef<\n HTMLButtonElement,\n AutocompleteChipProps\n>(function AutocompleteChip(props, ref) {\n const {\n \"aria-description\": propAriaDescription,\n children,\n className,\n removeIcon: propRemoveIcon,\n rightAddon: propRightAddon,\n ...remaining\n } = props;\n\n let rightAddon = propRightAddon;\n let ariaDescription = propAriaDescription;\n const removeIcon = getIcon(\"remove\", propRemoveIcon);\n if (typeof rightAddon === \"undefined\") {\n rightAddon = removeIcon;\n }\n\n if (typeof ariaDescription === \"undefined\" && typeof children === \"string\") {\n ariaDescription = `Remove \"${children}\"`;\n }\n\n return (\n <Chip\n {...remaining}\n aria-description={ariaDescription}\n ref={ref}\n rightAddon={rightAddon}\n className={autocompleteChip({ className })}\n >\n {children}\n </Chip>\n );\n});\n"],"names":["forwardRef","Chip","getIcon","autocompleteChip","AutocompleteChip","props","ref","propAriaDescription","children","className","removeIcon","propRemoveIcon","rightAddon","propRightAddon","remaining","ariaDescription","aria-description"],"mappings":";AAAA,SAASA,UAAU,QAAQ,QAAQ;AAEnC,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,gBAAgB,QAAQ,0BAA0B;AAG3D;;;;;;CAMC,GACD,OAAO,MAAMC,iCAAmBJ,WAG9B,SAASI,iBAAiBC,KAAK,EAAEC,GAAG;IACpC,MAAM,EACJ,oBAAoBC,mBAAmB,EACvCC,QAAQ,EACRC,SAAS,EACTC,YAAYC,cAAc,EAC1BC,YAAYC,cAAc,EAC1B,GAAGC,WACJ,GAAGT;IAEJ,IAAIO,aAAaC;IACjB,IAAIE,kBAAkBR;IACtB,MAAMG,aAAaR,QAAQ,UAAUS;IACrC,IAAI,OAAOC,eAAe,aAAa;QACrCA,aAAaF;IACf;IAEA,IAAI,OAAOK,oBAAoB,eAAe,OAAOP,aAAa,UAAU;QAC1EO,kBAAkB,CAAC,QAAQ,EAAEP,SAAS,CAAC,CAAC;IAC1C;IAEA,qBACE,KAACP;QACE,GAAGa,SAAS;QACbE,oBAAkBD;QAClBT,KAAKA;QACLM,YAAYA;QACZH,WAAWN,iBAAiB;YAAEM;QAAU;kBAEvCD;;AAGP,GAAG"}
|
|
@@ -4,7 +4,7 @@ import { type AutocompleteCircularProgressProps } from "./types.js";
|
|
|
4
4
|
* An internal component used to handle the styling and minimal accessibility
|
|
5
5
|
* for the `CircularProgress` within the `Autocomplete`
|
|
6
6
|
*
|
|
7
|
-
* @see {@link https://
|
|
7
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
8
8
|
* @internal
|
|
9
9
|
* @since 6.0.0
|
|
10
10
|
*/
|
|
@@ -4,7 +4,7 @@ import { CircularProgress } from "../progress/CircularProgress.js";
|
|
|
4
4
|
* An internal component used to handle the styling and minimal accessibility
|
|
5
5
|
* for the `CircularProgress` within the `Autocomplete`
|
|
6
6
|
*
|
|
7
|
-
* @see {@link https://
|
|
7
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
8
8
|
* @internal
|
|
9
9
|
* @since 6.0.0
|
|
10
10
|
*/ export function AutocompleteCircularProgress(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/autocomplete/AutocompleteCircularProgress.tsx"],"sourcesContent":["import { type ReactElement } from \"react\";\n\nimport { CircularProgress } from \"../progress/CircularProgress.js\";\nimport { type AutocompleteCircularProgressProps } from \"./types.js\";\n\n/**\n * An internal component used to handle the styling and minimal accessibility\n * for the `CircularProgress` within the `Autocomplete`\n *\n * @see {@link https://
|
|
1
|
+
{"version":3,"sources":["../../src/autocomplete/AutocompleteCircularProgress.tsx"],"sourcesContent":["import { type ReactElement } from \"react\";\n\nimport { CircularProgress } from \"../progress/CircularProgress.js\";\nimport { type AutocompleteCircularProgressProps } from \"./types.js\";\n\n/**\n * An internal component used to handle the styling and minimal accessibility\n * for the `CircularProgress` within the `Autocomplete`\n *\n * @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}\n * @internal\n * @since 6.0.0\n */\nexport function AutocompleteCircularProgress(\n props: AutocompleteCircularProgressProps\n): ReactElement {\n const {\n \"aria-labelledby\": ariaLabelledby,\n \"aria-label\": ariaLabel = ariaLabelledby ? undefined : \"Loading\",\n theme = \"current-color\",\n ...remaining\n } = props;\n\n return (\n <CircularProgress\n {...remaining}\n aria-label={ariaLabel as string}\n aria-labelledby={ariaLabelledby}\n theme={theme}\n />\n );\n}\n"],"names":["CircularProgress","AutocompleteCircularProgress","props","ariaLabelledby","ariaLabel","undefined","theme","remaining","aria-label","aria-labelledby"],"mappings":";AAEA,SAASA,gBAAgB,QAAQ,kCAAkC;AAGnE;;;;;;;CAOC,GACD,OAAO,SAASC,6BACdC,KAAwC;IAExC,MAAM,EACJ,mBAAmBC,cAAc,EACjC,cAAcC,YAAYD,iBAAiBE,YAAY,SAAS,EAChEC,QAAQ,eAAe,EACvB,GAAGC,WACJ,GAAGL;IAEJ,qBACE,KAACF;QACE,GAAGO,SAAS;QACbC,cAAYJ;QACZK,mBAAiBN;QACjBG,OAAOA;;AAGb"}
|
|
@@ -3,7 +3,7 @@ import { type AutocompleteClearButtonProps } from "./types.js";
|
|
|
3
3
|
/**
|
|
4
4
|
* An internal component used for to clear the value from the `Autocomplete`.
|
|
5
5
|
*
|
|
6
|
-
* @see {@link https://
|
|
6
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
7
7
|
* @internal
|
|
8
8
|
* @since 6.0.0
|
|
9
9
|
*/
|
|
@@ -7,7 +7,7 @@ import { autocompleteClearButton } from "./autocompleteStyles.js";
|
|
|
7
7
|
/**
|
|
8
8
|
* An internal component used for to clear the value from the `Autocomplete`.
|
|
9
9
|
*
|
|
10
|
-
* @see {@link https://
|
|
10
|
+
* @see {@link https://react-md.dev/components/autocomplete | Autocomplete Demos}
|
|
11
11
|
* @internal
|
|
12
12
|
* @since 6.0.0
|
|
13
13
|
*/ export function AutocompleteClearButton(props) {
|