@mantine/core 9.2.2 → 9.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/components/Accordion/Accordion.cjs +0 -1
- package/cjs/components/Accordion/Accordion.cjs.map +1 -1
- package/cjs/components/Accordion/AccordionChevron.cjs +0 -1
- package/cjs/components/Accordion/AccordionChevron.cjs.map +1 -1
- package/cjs/components/Accordion/AccordionControl/AccordionControl.cjs +0 -1
- package/cjs/components/Accordion/AccordionControl/AccordionControl.cjs.map +1 -1
- package/cjs/components/Accordion/AccordionItem/AccordionItem.cjs +0 -1
- package/cjs/components/Accordion/AccordionItem/AccordionItem.cjs.map +1 -1
- package/cjs/components/Accordion/AccordionPanel/AccordionPanel.cjs +0 -1
- package/cjs/components/Accordion/AccordionPanel/AccordionPanel.cjs.map +1 -1
- package/cjs/components/ActionIcon/ActionIcon.cjs +0 -1
- package/cjs/components/ActionIcon/ActionIcon.cjs.map +1 -1
- package/cjs/components/ActionIcon/ActionIconGroup/ActionIconGroup.cjs +0 -1
- package/cjs/components/ActionIcon/ActionIconGroup/ActionIconGroup.cjs.map +1 -1
- package/cjs/components/ActionIcon/ActionIconGroupSection/ActionIconGroupSection.cjs +0 -1
- package/cjs/components/ActionIcon/ActionIconGroupSection/ActionIconGroupSection.cjs.map +1 -1
- package/cjs/components/Affix/Affix.cjs +0 -1
- package/cjs/components/Affix/Affix.cjs.map +1 -1
- package/cjs/components/Alert/Alert.cjs +0 -1
- package/cjs/components/Alert/Alert.cjs.map +1 -1
- package/cjs/components/AngleSlider/AngleSlider.cjs +0 -1
- package/cjs/components/AngleSlider/AngleSlider.cjs.map +1 -1
- package/cjs/components/AppShell/AppShell.cjs +0 -1
- package/cjs/components/AppShell/AppShell.cjs.map +1 -1
- package/cjs/components/AppShell/AppShellMain/AppShellMain.cjs +0 -1
- package/cjs/components/AppShell/AppShellMain/AppShellMain.cjs.map +1 -1
- package/cjs/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.cjs +0 -1
- package/cjs/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.cjs.map +1 -1
- package/cjs/components/AppShell/AppShellSection/AppShellSection.cjs +0 -1
- package/cjs/components/AppShell/AppShellSection/AppShellSection.cjs.map +1 -1
- package/cjs/components/AppShell/use-resizing/use-resizing.cjs +0 -1
- package/cjs/components/AppShell/use-resizing/use-resizing.cjs.map +1 -1
- package/cjs/components/AspectRatio/AspectRatio.cjs +0 -1
- package/cjs/components/AspectRatio/AspectRatio.cjs.map +1 -1
- package/cjs/components/Autocomplete/Autocomplete.cjs +2 -2
- package/cjs/components/Autocomplete/Autocomplete.cjs.map +1 -1
- package/cjs/components/Avatar/Avatar.cjs +0 -1
- package/cjs/components/Avatar/Avatar.cjs.map +1 -1
- package/cjs/components/Avatar/AvatarGroup/AvatarGroup.cjs +0 -1
- package/cjs/components/Avatar/AvatarGroup/AvatarGroup.cjs.map +1 -1
- package/cjs/components/Avatar/AvatarPlaceholderIcon.cjs +0 -1
- package/cjs/components/Avatar/AvatarPlaceholderIcon.cjs.map +1 -1
- package/cjs/components/BackgroundImage/BackgroundImage.cjs +0 -1
- package/cjs/components/BackgroundImage/BackgroundImage.cjs.map +1 -1
- package/cjs/components/Badge/Badge.cjs +0 -1
- package/cjs/components/Badge/Badge.cjs.map +1 -1
- package/cjs/components/Blockquote/Blockquote.cjs +4 -4
- package/cjs/components/Blockquote/Blockquote.cjs.map +1 -1
- package/cjs/components/Blockquote/Blockquote.module.cjs.map +1 -1
- package/cjs/components/Breadcrumbs/Breadcrumbs.cjs +0 -1
- package/cjs/components/Breadcrumbs/Breadcrumbs.cjs.map +1 -1
- package/cjs/components/Burger/Burger.cjs +0 -1
- package/cjs/components/Burger/Burger.cjs.map +1 -1
- package/cjs/components/Button/Button.cjs +0 -1
- package/cjs/components/Button/Button.cjs.map +1 -1
- package/cjs/components/Button/ButtonGroup/ButtonGroup.cjs +0 -1
- package/cjs/components/Button/ButtonGroup/ButtonGroup.cjs.map +1 -1
- package/cjs/components/Button/ButtonGroupSection/ButtonGroupSection.cjs +0 -1
- package/cjs/components/Button/ButtonGroupSection/ButtonGroupSection.cjs.map +1 -1
- package/cjs/components/Card/Card.cjs +0 -1
- package/cjs/components/Card/Card.cjs.map +1 -1
- package/cjs/components/Card/CardSection/CardSection.cjs +0 -1
- package/cjs/components/Card/CardSection/CardSection.cjs.map +1 -1
- package/cjs/components/Center/Center.cjs +0 -1
- package/cjs/components/Center/Center.cjs.map +1 -1
- package/cjs/components/Checkbox/CheckIcon.cjs +0 -1
- package/cjs/components/Checkbox/CheckIcon.cjs.map +1 -1
- package/cjs/components/Checkbox/Checkbox.cjs +0 -1
- package/cjs/components/Checkbox/Checkbox.cjs.map +1 -1
- package/cjs/components/Checkbox/CheckboxCard/CheckboxCard.cjs +0 -1
- package/cjs/components/Checkbox/CheckboxCard/CheckboxCard.cjs.map +1 -1
- package/cjs/components/Checkbox/CheckboxGroup/CheckboxGroup.cjs +0 -1
- package/cjs/components/Checkbox/CheckboxGroup/CheckboxGroup.cjs.map +1 -1
- package/cjs/components/Checkbox/CheckboxIndicator/CheckboxIndicator.cjs +0 -1
- package/cjs/components/Checkbox/CheckboxIndicator/CheckboxIndicator.cjs.map +1 -1
- package/cjs/components/Chip/Chip.cjs +0 -1
- package/cjs/components/Chip/Chip.cjs.map +1 -1
- package/cjs/components/Chip/ChipGroup/ChipGroup.cjs +0 -1
- package/cjs/components/Chip/ChipGroup/ChipGroup.cjs.map +1 -1
- package/cjs/components/CloseButton/CloseButton.cjs +0 -1
- package/cjs/components/CloseButton/CloseButton.cjs.map +1 -1
- package/cjs/components/Code/Code.cjs +0 -1
- package/cjs/components/Code/Code.cjs.map +1 -1
- package/cjs/components/Collapse/Collapse.cjs +2 -2
- package/cjs/components/Collapse/Collapse.cjs.map +1 -1
- package/cjs/components/ColorInput/ColorInput.cjs +0 -1
- package/cjs/components/ColorInput/ColorInput.cjs.map +1 -1
- package/cjs/components/ColorInput/EyeDropperIcon.cjs +0 -1
- package/cjs/components/ColorInput/EyeDropperIcon.cjs.map +1 -1
- package/cjs/components/ColorPicker/AlphaSlider/AlphaSlider.cjs +0 -1
- package/cjs/components/ColorPicker/AlphaSlider/AlphaSlider.cjs.map +1 -1
- package/cjs/components/ColorPicker/ColorPicker.cjs +0 -1
- package/cjs/components/ColorPicker/ColorPicker.cjs.map +1 -1
- package/cjs/components/ColorPicker/ColorPicker.context.cjs +0 -1
- package/cjs/components/ColorPicker/ColorPicker.context.cjs.map +1 -1
- package/cjs/components/ColorPicker/ColorSlider/ColorSlider.cjs +0 -1
- package/cjs/components/ColorPicker/ColorSlider/ColorSlider.cjs.map +1 -1
- package/cjs/components/ColorPicker/HueSlider/HueSlider.cjs +0 -1
- package/cjs/components/ColorPicker/HueSlider/HueSlider.cjs.map +1 -1
- package/cjs/components/ColorPicker/Saturation/Saturation.cjs +0 -1
- package/cjs/components/ColorPicker/Saturation/Saturation.cjs.map +1 -1
- package/cjs/components/ColorPicker/Swatches/Swatches.cjs +0 -1
- package/cjs/components/ColorPicker/Swatches/Swatches.cjs.map +1 -1
- package/cjs/components/ColorPicker/Thumb/Thumb.cjs +0 -1
- package/cjs/components/ColorPicker/Thumb/Thumb.cjs.map +1 -1
- package/cjs/components/ColorSwatch/ColorSwatch.cjs +0 -1
- package/cjs/components/ColorSwatch/ColorSwatch.cjs.map +1 -1
- package/cjs/components/Combobox/Combobox.cjs +26 -4
- package/cjs/components/Combobox/Combobox.cjs.map +1 -1
- package/cjs/components/Combobox/Combobox.context.cjs.map +1 -1
- package/cjs/components/Combobox/Combobox.module.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxChevron/ComboboxChevron.cjs +0 -1
- package/cjs/components/Combobox/ComboboxChevron/ComboboxChevron.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxClearButton/ComboboxClearButton.cjs +0 -1
- package/cjs/components/Combobox/ComboboxClearButton/ComboboxClearButton.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxDropdown/ComboboxDropdown.cjs +1 -1
- package/cjs/components/Combobox/ComboboxDropdown/ComboboxDropdown.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxDropdownTarget/ComboboxDropdownTarget.cjs +0 -1
- package/cjs/components/Combobox/ComboboxDropdownTarget/ComboboxDropdownTarget.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxEmpty/ComboboxEmpty.cjs +0 -1
- package/cjs/components/Combobox/ComboboxEmpty/ComboboxEmpty.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.cjs +0 -1
- package/cjs/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxFooter/ComboboxFooter.cjs +0 -1
- package/cjs/components/Combobox/ComboboxFooter/ComboboxFooter.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxGroup/ComboboxGroup.cjs +0 -1
- package/cjs/components/Combobox/ComboboxGroup/ComboboxGroup.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxHeader/ComboboxHeader.cjs +0 -1
- package/cjs/components/Combobox/ComboboxHeader/ComboboxHeader.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxHiddenInput/ComboboxHiddenInput.cjs +0 -1
- package/cjs/components/Combobox/ComboboxHiddenInput/ComboboxHiddenInput.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxOption/ComboboxOption.cjs +0 -1
- package/cjs/components/Combobox/ComboboxOption/ComboboxOption.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxOptions/ComboboxOptions.cjs +0 -1
- package/cjs/components/Combobox/ComboboxOptions/ComboboxOptions.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxSearch/ComboboxSearch.cjs +0 -1
- package/cjs/components/Combobox/ComboboxSearch/ComboboxSearch.cjs.map +1 -1
- package/cjs/components/Combobox/ComboboxTarget/ComboboxTarget.cjs +0 -1
- package/cjs/components/Combobox/ComboboxTarget/ComboboxTarget.cjs.map +1 -1
- package/cjs/components/Combobox/OptionsDropdown/OptionsDropdown.cjs +4 -2
- package/cjs/components/Combobox/OptionsDropdown/OptionsDropdown.cjs.map +1 -1
- package/cjs/components/Combobox/use-combobox/use-combobox.cjs +0 -1
- package/cjs/components/Combobox/use-combobox/use-combobox.cjs.map +1 -1
- package/cjs/components/Combobox/use-combobox/use-virtualized-combobox.cjs +0 -1
- package/cjs/components/Combobox/use-combobox/use-virtualized-combobox.cjs.map +1 -1
- package/cjs/components/Combobox/use-combobox-target-props/use-combobox-target-props.cjs +0 -1
- package/cjs/components/Combobox/use-combobox-target-props/use-combobox-target-props.cjs.map +1 -1
- package/cjs/components/Combobox/use-pills-reorder/use-pills-reorder.cjs +0 -1
- package/cjs/components/Combobox/use-pills-reorder/use-pills-reorder.cjs.map +1 -1
- package/cjs/components/Container/Container.cjs +0 -1
- package/cjs/components/Container/Container.cjs.map +1 -1
- package/cjs/components/CopyButton/CopyButton.cjs +0 -1
- package/cjs/components/CopyButton/CopyButton.cjs.map +1 -1
- package/cjs/components/Dialog/Dialog.cjs +0 -1
- package/cjs/components/Dialog/Dialog.cjs.map +1 -1
- package/cjs/components/Divider/Divider.cjs +0 -1
- package/cjs/components/Divider/Divider.cjs.map +1 -1
- package/cjs/components/Drawer/Drawer.cjs +0 -1
- package/cjs/components/Drawer/Drawer.cjs.map +1 -1
- package/cjs/components/Drawer/DrawerBody.cjs +0 -1
- package/cjs/components/Drawer/DrawerBody.cjs.map +1 -1
- package/cjs/components/Drawer/DrawerCloseButton.cjs +0 -1
- package/cjs/components/Drawer/DrawerCloseButton.cjs.map +1 -1
- package/cjs/components/Drawer/DrawerContent.cjs +0 -1
- package/cjs/components/Drawer/DrawerContent.cjs.map +1 -1
- package/cjs/components/Drawer/DrawerHeader.cjs +0 -1
- package/cjs/components/Drawer/DrawerHeader.cjs.map +1 -1
- package/cjs/components/Drawer/DrawerOverlay.cjs +0 -1
- package/cjs/components/Drawer/DrawerOverlay.cjs.map +1 -1
- package/cjs/components/Drawer/DrawerRoot.cjs +0 -1
- package/cjs/components/Drawer/DrawerRoot.cjs.map +1 -1
- package/cjs/components/Drawer/DrawerStack.cjs +0 -1
- package/cjs/components/Drawer/DrawerStack.cjs.map +1 -1
- package/cjs/components/Drawer/DrawerTitle.cjs +0 -1
- package/cjs/components/Drawer/DrawerTitle.cjs.map +1 -1
- package/cjs/components/Fieldset/Fieldset.cjs +0 -1
- package/cjs/components/Fieldset/Fieldset.cjs.map +1 -1
- package/cjs/components/FileInput/FileInput.cjs +0 -1
- package/cjs/components/FileInput/FileInput.cjs.map +1 -1
- package/cjs/components/Flex/Flex.cjs +0 -1
- package/cjs/components/Flex/Flex.cjs.map +1 -1
- package/cjs/components/FloatingIndicator/FloatingIndicator.cjs +0 -1
- package/cjs/components/FloatingIndicator/FloatingIndicator.cjs.map +1 -1
- package/cjs/components/FloatingIndicator/use-floating-indicator.cjs +0 -1
- package/cjs/components/FloatingIndicator/use-floating-indicator.cjs.map +1 -1
- package/cjs/components/FloatingWindow/FloatingWindow.cjs +0 -1
- package/cjs/components/FloatingWindow/FloatingWindow.cjs.map +1 -1
- package/cjs/components/FocusTrap/FocusTrap.cjs +0 -1
- package/cjs/components/FocusTrap/FocusTrap.cjs.map +1 -1
- package/cjs/components/Grid/Grid.cjs +0 -1
- package/cjs/components/Grid/Grid.cjs.map +1 -1
- package/cjs/components/Grid/GridCol/GridColVariables.cjs +0 -1
- package/cjs/components/Grid/GridCol/GridColVariables.cjs.map +1 -1
- package/cjs/components/Grid/GridVariables.cjs +0 -1
- package/cjs/components/Grid/GridVariables.cjs.map +1 -1
- package/cjs/components/Group/Group.cjs +0 -1
- package/cjs/components/Group/Group.cjs.map +1 -1
- package/cjs/components/Group/filter-falsy-children/filter-falsy-children.cjs +0 -1
- package/cjs/components/Group/filter-falsy-children/filter-falsy-children.cjs.map +1 -1
- package/cjs/components/Highlight/Highlight.cjs +0 -1
- package/cjs/components/Highlight/Highlight.cjs.map +1 -1
- package/cjs/components/HoverCard/HoverCard.cjs +0 -1
- package/cjs/components/HoverCard/HoverCard.cjs.map +1 -1
- package/cjs/components/HoverCard/HoverCardDropdown/HoverCardDropdown.cjs +0 -1
- package/cjs/components/HoverCard/HoverCardDropdown/HoverCardDropdown.cjs.map +1 -1
- package/cjs/components/HoverCard/HoverCardGroup/HoverCardGroup.cjs +0 -1
- package/cjs/components/HoverCard/HoverCardGroup/HoverCardGroup.cjs.map +1 -1
- package/cjs/components/HoverCard/HoverCardTarget/HoverCardTarget.cjs +0 -1
- package/cjs/components/HoverCard/HoverCardTarget/HoverCardTarget.cjs.map +1 -1
- package/cjs/components/HoverCard/use-hover-card.cjs +0 -1
- package/cjs/components/HoverCard/use-hover-card.cjs.map +1 -1
- package/cjs/components/Image/Image.cjs +0 -1
- package/cjs/components/Image/Image.cjs.map +1 -1
- package/cjs/components/Indicator/Indicator.cjs +0 -1
- package/cjs/components/Indicator/Indicator.cjs.map +1 -1
- package/cjs/components/Input/Input.cjs +11 -3
- package/cjs/components/Input/Input.cjs.map +1 -1
- package/cjs/components/Input/Input.context.cjs +0 -1
- package/cjs/components/Input/Input.context.cjs.map +1 -1
- package/cjs/components/Input/Input.module.cjs +1 -0
- package/cjs/components/Input/Input.module.cjs.map +1 -1
- package/cjs/components/Input/InputClearButton/InputClearButton.cjs +0 -1
- package/cjs/components/Input/InputClearButton/InputClearButton.cjs.map +1 -1
- package/cjs/components/Input/InputClearSection/InputClearSection.cjs +0 -1
- package/cjs/components/Input/InputClearSection/InputClearSection.cjs.map +1 -1
- package/cjs/components/Input/InputDescription/InputDescription.cjs +0 -1
- package/cjs/components/Input/InputDescription/InputDescription.cjs.map +1 -1
- package/cjs/components/Input/InputError/InputError.cjs +0 -1
- package/cjs/components/Input/InputError/InputError.cjs.map +1 -1
- package/cjs/components/Input/InputLabel/InputLabel.cjs +0 -1
- package/cjs/components/Input/InputLabel/InputLabel.cjs.map +1 -1
- package/cjs/components/Input/InputPlaceholder/InputPlaceholder.cjs +0 -1
- package/cjs/components/Input/InputPlaceholder/InputPlaceholder.cjs.map +1 -1
- package/cjs/components/Input/InputWrapper/InputWrapper.cjs +0 -1
- package/cjs/components/Input/InputWrapper/InputWrapper.cjs.map +1 -1
- package/cjs/components/Input/InputWrapper.context.cjs +0 -1
- package/cjs/components/Input/InputWrapper.context.cjs.map +1 -1
- package/cjs/components/InputBase/InputBase.cjs +0 -1
- package/cjs/components/InputBase/InputBase.cjs.map +1 -1
- package/cjs/components/JsonInput/JsonInput.cjs +0 -1
- package/cjs/components/JsonInput/JsonInput.cjs.map +1 -1
- package/cjs/components/Kbd/Kbd.cjs +0 -1
- package/cjs/components/Kbd/Kbd.cjs.map +1 -1
- package/cjs/components/List/List.cjs +0 -1
- package/cjs/components/List/List.cjs.map +1 -1
- package/cjs/components/List/ListItem/ListItem.cjs +0 -1
- package/cjs/components/List/ListItem/ListItem.cjs.map +1 -1
- package/cjs/components/Loader/Loader.cjs +0 -1
- package/cjs/components/Loader/Loader.cjs.map +1 -1
- package/cjs/components/LoadingOverlay/LoadingOverlay.cjs +0 -1
- package/cjs/components/LoadingOverlay/LoadingOverlay.cjs.map +1 -1
- package/cjs/components/Mark/Mark.cjs +0 -1
- package/cjs/components/Mark/Mark.cjs.map +1 -1
- package/cjs/components/Marquee/Marquee.cjs +0 -1
- package/cjs/components/Marquee/Marquee.cjs.map +1 -1
- package/cjs/components/MaskInput/MaskInput.cjs +0 -1
- package/cjs/components/MaskInput/MaskInput.cjs.map +1 -1
- package/cjs/components/MaskInput/use-mask-input-props.cjs +0 -1
- package/cjs/components/MaskInput/use-mask-input-props.cjs.map +1 -1
- package/cjs/components/Menu/Menu.cjs +37 -4
- package/cjs/components/Menu/Menu.cjs.map +1 -1
- package/cjs/components/Menu/Menu.context.cjs.map +1 -1
- package/cjs/components/Menu/Menu.module.cjs +2 -0
- package/cjs/components/Menu/Menu.module.cjs.map +1 -1
- package/cjs/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.cjs +30 -0
- package/cjs/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.cjs.map +1 -0
- package/cjs/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.context.cjs +7 -0
- package/cjs/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.context.cjs.map +1 -0
- package/cjs/components/Menu/MenuCheckboxItem/MenuCheckboxItem.cjs +52 -0
- package/cjs/components/Menu/MenuCheckboxItem/MenuCheckboxItem.cjs.map +1 -0
- package/cjs/components/Menu/MenuContextMenu/MenuContextMenu.cjs +28 -0
- package/cjs/components/Menu/MenuContextMenu/MenuContextMenu.cjs.map +1 -0
- package/cjs/components/Menu/MenuDivider/MenuDivider.cjs +0 -1
- package/cjs/components/Menu/MenuDivider/MenuDivider.cjs.map +1 -1
- package/cjs/components/Menu/MenuDropdown/MenuDropdown.cjs +9 -2
- package/cjs/components/Menu/MenuDropdown/MenuDropdown.cjs.map +1 -1
- package/cjs/components/Menu/MenuItem/MenuItem.cjs +18 -2
- package/cjs/components/Menu/MenuItem/MenuItem.cjs.map +1 -1
- package/cjs/components/Menu/MenuLabel/MenuLabel.cjs +0 -1
- package/cjs/components/Menu/MenuLabel/MenuLabel.cjs.map +1 -1
- package/cjs/components/Menu/MenuRadioGroup/MenuRadioGroup.cjs +27 -0
- package/cjs/components/Menu/MenuRadioGroup/MenuRadioGroup.cjs.map +1 -0
- package/cjs/components/Menu/MenuRadioGroup/MenuRadioGroup.context.cjs +7 -0
- package/cjs/components/Menu/MenuRadioGroup/MenuRadioGroup.context.cjs.map +1 -0
- package/cjs/components/Menu/MenuRadioItem/MenuRadioItem.cjs +46 -0
- package/cjs/components/Menu/MenuRadioItem/MenuRadioItem.cjs.map +1 -0
- package/cjs/components/Menu/MenuSearch/MenuSearch.cjs +115 -0
- package/cjs/components/Menu/MenuSearch/MenuSearch.cjs.map +1 -0
- package/cjs/components/Menu/MenuSelectableItem/MenuSelectableItem.cjs +114 -0
- package/cjs/components/Menu/MenuSelectableItem/MenuSelectableItem.cjs.map +1 -0
- package/cjs/components/Menu/MenuSub/MenuSub.cjs +16 -14
- package/cjs/components/Menu/MenuSub/MenuSub.cjs.map +1 -1
- package/cjs/components/Menu/MenuSub/MenuSub.context.cjs +0 -1
- package/cjs/components/Menu/MenuSub/MenuSub.context.cjs.map +1 -1
- package/cjs/components/Menu/MenuSubDropdown/MenuSubDropdown.cjs +13 -2
- package/cjs/components/Menu/MenuSubDropdown/MenuSubDropdown.cjs.map +1 -1
- package/cjs/components/Menu/MenuSubItem/MenuSubItem.cjs +18 -2
- package/cjs/components/Menu/MenuSubItem/MenuSubItem.cjs.map +1 -1
- package/cjs/components/Menu/MenuSubTarget/MenuSubTarget.cjs +0 -1
- package/cjs/components/Menu/MenuSubTarget/MenuSubTarget.cjs.map +1 -1
- package/cjs/components/Menu/MenuTarget/MenuTarget.cjs +0 -1
- package/cjs/components/Menu/MenuTarget/MenuTarget.cjs.map +1 -1
- package/cjs/components/Menu/use-menu-type-ahead.cjs +72 -0
- package/cjs/components/Menu/use-menu-type-ahead.cjs.map +1 -0
- package/cjs/components/Modal/Modal.cjs +0 -1
- package/cjs/components/Modal/Modal.cjs.map +1 -1
- package/cjs/components/Modal/ModalBody.cjs +0 -1
- package/cjs/components/Modal/ModalBody.cjs.map +1 -1
- package/cjs/components/Modal/ModalCloseButton.cjs +0 -1
- package/cjs/components/Modal/ModalCloseButton.cjs.map +1 -1
- package/cjs/components/Modal/ModalContent.cjs +0 -1
- package/cjs/components/Modal/ModalContent.cjs.map +1 -1
- package/cjs/components/Modal/ModalHeader.cjs +0 -1
- package/cjs/components/Modal/ModalHeader.cjs.map +1 -1
- package/cjs/components/Modal/ModalOverlay.cjs +0 -1
- package/cjs/components/Modal/ModalOverlay.cjs.map +1 -1
- package/cjs/components/Modal/ModalRoot.cjs +0 -1
- package/cjs/components/Modal/ModalRoot.cjs.map +1 -1
- package/cjs/components/Modal/ModalStack.cjs +0 -1
- package/cjs/components/Modal/ModalStack.cjs.map +1 -1
- package/cjs/components/Modal/ModalTitle.cjs +0 -1
- package/cjs/components/Modal/ModalTitle.cjs.map +1 -1
- package/cjs/components/Modal/use-modals-stack.cjs +0 -1
- package/cjs/components/Modal/use-modals-stack.cjs.map +1 -1
- package/cjs/components/ModalBase/ModalBase.cjs +0 -1
- package/cjs/components/ModalBase/ModalBase.cjs.map +1 -1
- package/cjs/components/ModalBase/ModalBaseOverlay.cjs +0 -1
- package/cjs/components/ModalBase/ModalBaseOverlay.cjs.map +1 -1
- package/cjs/components/ModalBase/NativeScrollArea.cjs +0 -1
- package/cjs/components/ModalBase/NativeScrollArea.cjs.map +1 -1
- package/cjs/components/ModalBase/use-lock-scroll.cjs +0 -1
- package/cjs/components/ModalBase/use-lock-scroll.cjs.map +1 -1
- package/cjs/components/ModalBase/use-modal-body-id.cjs +0 -1
- package/cjs/components/ModalBase/use-modal-body-id.cjs.map +1 -1
- package/cjs/components/ModalBase/use-modal-title-id.cjs +0 -1
- package/cjs/components/ModalBase/use-modal-title-id.cjs.map +1 -1
- package/cjs/components/ModalBase/use-modal.cjs +0 -1
- package/cjs/components/ModalBase/use-modal.cjs.map +1 -1
- package/cjs/components/MultiSelect/MultiSelect.cjs +2 -2
- package/cjs/components/MultiSelect/MultiSelect.cjs.map +1 -1
- package/cjs/components/NativeSelect/NativeSelect.cjs +0 -1
- package/cjs/components/NativeSelect/NativeSelect.cjs.map +1 -1
- package/cjs/components/NativeSelect/NativeSelectOption.cjs +0 -1
- package/cjs/components/NativeSelect/NativeSelectOption.cjs.map +1 -1
- package/cjs/components/NavLink/NavLink.cjs +0 -1
- package/cjs/components/NavLink/NavLink.cjs.map +1 -1
- package/cjs/components/Notification/Notification.cjs +0 -1
- package/cjs/components/Notification/Notification.cjs.map +1 -1
- package/cjs/components/NumberFormatter/NumberFormatter.cjs +0 -1
- package/cjs/components/NumberFormatter/NumberFormatter.cjs.map +1 -1
- package/cjs/components/NumberInput/NumberInputChevron.cjs +0 -1
- package/cjs/components/NumberInput/NumberInputChevron.cjs.map +1 -1
- package/cjs/components/OverflowList/OverflowList.cjs +68 -10
- package/cjs/components/OverflowList/OverflowList.cjs.map +1 -1
- package/cjs/components/OverflowList/use-dimensions.cjs +0 -1
- package/cjs/components/OverflowList/use-dimensions.cjs.map +1 -1
- package/cjs/components/Overlay/Overlay.cjs +0 -1
- package/cjs/components/Overlay/Overlay.cjs.map +1 -1
- package/cjs/components/Pagination/Pagination.cjs +14 -3
- package/cjs/components/Pagination/Pagination.cjs.map +1 -1
- package/cjs/components/Pagination/Pagination.context.cjs.map +1 -1
- package/cjs/components/Pagination/Pagination.icons.cjs +0 -1
- package/cjs/components/Pagination/Pagination.icons.cjs.map +1 -1
- package/cjs/components/Pagination/Pagination.module.cjs +3 -1
- package/cjs/components/Pagination/Pagination.module.cjs.map +1 -1
- package/cjs/components/Pagination/PaginationControl/PaginationControl.cjs +0 -1
- package/cjs/components/Pagination/PaginationControl/PaginationControl.cjs.map +1 -1
- package/cjs/components/Pagination/PaginationDots/PaginationDots.cjs +0 -1
- package/cjs/components/Pagination/PaginationDots/PaginationDots.cjs.map +1 -1
- package/cjs/components/Pagination/PaginationEdges/PaginationEdges.cjs +0 -1
- package/cjs/components/Pagination/PaginationEdges/PaginationEdges.cjs.map +1 -1
- package/cjs/components/Pagination/PaginationItems/PaginationItems.cjs +0 -1
- package/cjs/components/Pagination/PaginationItems/PaginationItems.cjs.map +1 -1
- package/cjs/components/Pagination/PaginationLabel/PaginationLabel.cjs +32 -0
- package/cjs/components/Pagination/PaginationLabel/PaginationLabel.cjs.map +1 -0
- package/cjs/components/Pagination/PaginationRoot/PaginationRoot.cjs +3 -2
- package/cjs/components/Pagination/PaginationRoot/PaginationRoot.cjs.map +1 -1
- package/cjs/components/Paper/Paper.cjs +0 -1
- package/cjs/components/Paper/Paper.cjs.map +1 -1
- package/cjs/components/PasswordInput/PasswordToggleIcon.cjs +0 -1
- package/cjs/components/PasswordInput/PasswordToggleIcon.cjs.map +1 -1
- package/cjs/components/Pill/Pill.cjs +0 -1
- package/cjs/components/Pill/Pill.cjs.map +1 -1
- package/cjs/components/Pill/PillGroup/PillGroup.cjs +0 -1
- package/cjs/components/Pill/PillGroup/PillGroup.cjs.map +1 -1
- package/cjs/components/PillsInput/PillsInput.cjs +0 -1
- package/cjs/components/PillsInput/PillsInput.cjs.map +1 -1
- package/cjs/components/PillsInput/PillsInput.context.cjs +0 -1
- package/cjs/components/PillsInput/PillsInput.context.cjs.map +1 -1
- package/cjs/components/PillsInput/PillsInputField/PillsInputField.cjs +0 -1
- package/cjs/components/PillsInput/PillsInputField/PillsInputField.cjs.map +1 -1
- package/cjs/components/PinInput/PinInput.cjs +0 -1
- package/cjs/components/PinInput/PinInput.cjs.map +1 -1
- package/cjs/components/Popover/Popover.cjs +5 -10
- package/cjs/components/Popover/Popover.cjs.map +1 -1
- package/cjs/components/Popover/PopoverContextMenu/PopoverContextMenu.cjs +28 -0
- package/cjs/components/Popover/PopoverContextMenu/PopoverContextMenu.cjs.map +1 -0
- package/cjs/components/Popover/PopoverDropdown/PopoverDropdown.cjs +8 -1
- package/cjs/components/Popover/PopoverDropdown/PopoverDropdown.cjs.map +1 -1
- package/cjs/components/Popover/use-popover.cjs +52 -20
- package/cjs/components/Popover/use-popover.cjs.map +1 -1
- package/cjs/components/Portal/OptionalPortal.cjs +0 -1
- package/cjs/components/Portal/OptionalPortal.cjs.map +1 -1
- package/cjs/components/Portal/Portal.cjs +0 -1
- package/cjs/components/Portal/Portal.cjs.map +1 -1
- package/cjs/components/Progress/Progress.cjs +0 -1
- package/cjs/components/Progress/Progress.cjs.map +1 -1
- package/cjs/components/Progress/ProgressLabel/ProgressLabel.cjs +0 -1
- package/cjs/components/Progress/ProgressLabel/ProgressLabel.cjs.map +1 -1
- package/cjs/components/Progress/ProgressRoot/ProgressRoot.cjs +0 -1
- package/cjs/components/Progress/ProgressRoot/ProgressRoot.cjs.map +1 -1
- package/cjs/components/Progress/ProgressSection/ProgressSection.cjs +0 -1
- package/cjs/components/Progress/ProgressSection/ProgressSection.cjs.map +1 -1
- package/cjs/components/Radio/Radio.cjs +1 -2
- package/cjs/components/Radio/Radio.cjs.map +1 -1
- package/cjs/components/Radio/RadioCard/RadioCard.cjs +0 -1
- package/cjs/components/Radio/RadioCard/RadioCard.cjs.map +1 -1
- package/cjs/components/Radio/RadioGroup/RadioGroup.cjs +0 -1
- package/cjs/components/Radio/RadioGroup/RadioGroup.cjs.map +1 -1
- package/cjs/components/Radio/RadioIcon.cjs +0 -1
- package/cjs/components/Radio/RadioIcon.cjs.map +1 -1
- package/cjs/components/Radio/RadioIndicator/RadioIndicator.cjs +2 -3
- package/cjs/components/Radio/RadioIndicator/RadioIndicator.cjs.map +1 -1
- package/cjs/components/Rating/Rating.cjs +0 -1
- package/cjs/components/Rating/Rating.cjs.map +1 -1
- package/cjs/components/Rating/RatingItem/RatingItem.cjs +0 -1
- package/cjs/components/Rating/RatingItem/RatingItem.cjs.map +1 -1
- package/cjs/components/Rating/StarSymbol/StarIcon.cjs +0 -1
- package/cjs/components/Rating/StarSymbol/StarIcon.cjs.map +1 -1
- package/cjs/components/Rating/StarSymbol/StarSymbol.cjs +0 -1
- package/cjs/components/Rating/StarSymbol/StarSymbol.cjs.map +1 -1
- package/cjs/components/RingProgress/Curve/Curve.cjs +0 -1
- package/cjs/components/RingProgress/Curve/Curve.cjs.map +1 -1
- package/cjs/components/RingProgress/RingProgress.cjs +0 -1
- package/cjs/components/RingProgress/RingProgress.cjs.map +1 -1
- package/cjs/components/RollingNumber/DigitColumn.cjs +0 -1
- package/cjs/components/RollingNumber/DigitColumn.cjs.map +1 -1
- package/cjs/components/RollingNumber/RollingNumber.cjs +0 -1
- package/cjs/components/RollingNumber/RollingNumber.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollArea.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollArea.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaCorner/ScrollAreaCorner.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaCorner/ScrollAreaCorner.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbar.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbar.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarAuto.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarAuto.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarHover.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarHover.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarScroll.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarScroll.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollbarX.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollbarX.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollbarY.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollbarY.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.cjs.map +1 -1
- package/cjs/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.cjs +0 -1
- package/cjs/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.cjs.map +1 -1
- package/cjs/components/ScrollArea/use-resize-observer.cjs +0 -1
- package/cjs/components/ScrollArea/use-resize-observer.cjs.map +1 -1
- package/cjs/components/Scroller/Scroller.cjs +0 -1
- package/cjs/components/Scroller/Scroller.cjs.map +1 -1
- package/cjs/components/SegmentedControl/SegmentedControl.cjs +0 -1
- package/cjs/components/SegmentedControl/SegmentedControl.cjs.map +1 -1
- package/cjs/components/SegmentedControl/SegmentedControl.module.cjs.map +1 -1
- package/cjs/components/Select/Select.cjs +2 -2
- package/cjs/components/Select/Select.cjs.map +1 -1
- package/cjs/components/SemiCircleProgress/SemiCircleProgress.cjs +0 -1
- package/cjs/components/SemiCircleProgress/SemiCircleProgress.cjs.map +1 -1
- package/cjs/components/SimpleGrid/SimpleGrid.cjs +0 -1
- package/cjs/components/SimpleGrid/SimpleGrid.cjs.map +1 -1
- package/cjs/components/SimpleGrid/SimpleGridVariables.cjs +0 -1
- package/cjs/components/SimpleGrid/SimpleGridVariables.cjs.map +1 -1
- package/cjs/components/Skeleton/Skeleton.cjs +0 -1
- package/cjs/components/Skeleton/Skeleton.cjs.map +1 -1
- package/cjs/components/Slider/Marks/Marks.cjs +0 -1
- package/cjs/components/Slider/Marks/Marks.cjs.map +1 -1
- package/cjs/components/Slider/RangeSlider/RangeSlider.cjs +0 -1
- package/cjs/components/Slider/RangeSlider/RangeSlider.cjs.map +1 -1
- package/cjs/components/Slider/Slider/Slider.cjs +0 -1
- package/cjs/components/Slider/Slider/Slider.cjs.map +1 -1
- package/cjs/components/Slider/SliderRoot/SliderRoot.cjs +0 -1
- package/cjs/components/Slider/SliderRoot/SliderRoot.cjs.map +1 -1
- package/cjs/components/Slider/Thumb/Thumb.cjs +0 -1
- package/cjs/components/Slider/Thumb/Thumb.cjs.map +1 -1
- package/cjs/components/Slider/Track/Track.cjs +0 -1
- package/cjs/components/Slider/Track/Track.cjs.map +1 -1
- package/cjs/components/Space/Space.cjs +0 -1
- package/cjs/components/Space/Space.cjs.map +1 -1
- package/cjs/components/Splitter/GripIcon.cjs +55 -0
- package/cjs/components/Splitter/GripIcon.cjs.map +1 -0
- package/cjs/components/Splitter/Splitter.cjs +111 -0
- package/cjs/components/Splitter/Splitter.cjs.map +1 -0
- package/cjs/components/Splitter/Splitter.context.cjs +8 -0
- package/cjs/components/Splitter/Splitter.context.cjs.map +1 -0
- package/cjs/components/Splitter/Splitter.module.cjs +12 -0
- package/cjs/components/Splitter/Splitter.module.cjs.map +1 -0
- package/cjs/components/Splitter/SplitterPane/SplitterPane.cjs +34 -0
- package/cjs/components/Splitter/SplitterPane/SplitterPane.cjs.map +1 -0
- package/cjs/components/Spoiler/Spoiler.cjs +0 -1
- package/cjs/components/Spoiler/Spoiler.cjs.map +1 -1
- package/cjs/components/Stack/Stack.cjs +0 -1
- package/cjs/components/Stack/Stack.cjs.map +1 -1
- package/cjs/components/Stepper/Stepper.cjs +0 -1
- package/cjs/components/Stepper/Stepper.cjs.map +1 -1
- package/cjs/components/Stepper/Stepper.module.cjs.map +1 -1
- package/cjs/components/Stepper/StepperStep/StepperStep.cjs +0 -1
- package/cjs/components/Stepper/StepperStep/StepperStep.cjs.map +1 -1
- package/cjs/components/Switch/Switch.cjs +0 -1
- package/cjs/components/Switch/Switch.cjs.map +1 -1
- package/cjs/components/Switch/SwitchGroup/SwitchGroup.cjs +0 -1
- package/cjs/components/Switch/SwitchGroup/SwitchGroup.cjs.map +1 -1
- package/cjs/components/Table/Table.cjs +0 -1
- package/cjs/components/Table/Table.cjs.map +1 -1
- package/cjs/components/Table/Table.components.cjs +0 -1
- package/cjs/components/Table/Table.components.cjs.map +1 -1
- package/cjs/components/Table/Table.module.cjs.map +1 -1
- package/cjs/components/Table/TableDataRenderer.cjs +0 -1
- package/cjs/components/Table/TableDataRenderer.cjs.map +1 -1
- package/cjs/components/Table/TableScrollContainer.cjs +0 -1
- package/cjs/components/Table/TableScrollContainer.cjs.map +1 -1
- package/cjs/components/TableOfContents/TableOfContents.cjs +0 -1
- package/cjs/components/TableOfContents/TableOfContents.cjs.map +1 -1
- package/cjs/components/Tabs/Tabs.cjs +0 -1
- package/cjs/components/Tabs/Tabs.cjs.map +1 -1
- package/cjs/components/Tabs/Tabs.module.cjs.map +1 -1
- package/cjs/components/Tabs/TabsList/TabsList.cjs +0 -1
- package/cjs/components/Tabs/TabsList/TabsList.cjs.map +1 -1
- package/cjs/components/Tabs/TabsPanel/TabsPanel.cjs +0 -1
- package/cjs/components/Tabs/TabsPanel/TabsPanel.cjs.map +1 -1
- package/cjs/components/Tabs/TabsTab/TabsTab.cjs +0 -1
- package/cjs/components/Tabs/TabsTab/TabsTab.cjs.map +1 -1
- package/cjs/components/TagsInput/TagsInput.cjs +2 -2
- package/cjs/components/TagsInput/TagsInput.cjs.map +1 -1
- package/cjs/components/Text/Text.cjs +4 -4
- package/cjs/components/Text/Text.cjs.map +1 -1
- package/cjs/components/Text/Text.module.cjs.map +1 -1
- package/cjs/components/TextInput/TextInput.cjs +0 -1
- package/cjs/components/TextInput/TextInput.cjs.map +1 -1
- package/cjs/components/Textarea/Textarea.cjs +3 -2
- package/cjs/components/Textarea/Textarea.cjs.map +1 -1
- package/cjs/components/ThemeIcon/ThemeIcon.cjs +0 -1
- package/cjs/components/ThemeIcon/ThemeIcon.cjs.map +1 -1
- package/cjs/components/Timeline/Timeline.cjs +0 -1
- package/cjs/components/Timeline/Timeline.cjs.map +1 -1
- package/cjs/components/Timeline/Timeline.module.cjs.map +1 -1
- package/cjs/components/Timeline/TimelineItem/TimelineItem.cjs +0 -1
- package/cjs/components/Timeline/TimelineItem/TimelineItem.cjs.map +1 -1
- package/cjs/components/Title/Title.cjs +0 -1
- package/cjs/components/Title/Title.cjs.map +1 -1
- package/cjs/components/Tooltip/Tooltip.cjs +7 -0
- package/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
- package/cjs/components/Tooltip/TooltipFloating/TooltipFloating.cjs +0 -1
- package/cjs/components/Tooltip/TooltipFloating/TooltipFloating.cjs.map +1 -1
- package/cjs/components/Tooltip/TooltipFloating/use-floating-tooltip.cjs +0 -1
- package/cjs/components/Tooltip/TooltipFloating/use-floating-tooltip.cjs.map +1 -1
- package/cjs/components/Tooltip/TooltipGroup/TooltipGroup.cjs +0 -1
- package/cjs/components/Tooltip/TooltipGroup/TooltipGroup.cjs.map +1 -1
- package/cjs/components/Tooltip/use-tooltip.cjs +6 -3
- package/cjs/components/Tooltip/use-tooltip.cjs.map +1 -1
- package/cjs/components/Transition/Transition.cjs +0 -1
- package/cjs/components/Transition/Transition.cjs.map +1 -1
- package/cjs/components/Tree/FlatTreeNode.cjs +13 -5
- package/cjs/components/Tree/FlatTreeNode.cjs.map +1 -1
- package/cjs/components/Tree/Tree.cjs +0 -1
- package/cjs/components/Tree/Tree.cjs.map +1 -1
- package/cjs/components/Tree/Tree.module.cjs +3 -1
- package/cjs/components/Tree/Tree.module.cjs.map +1 -1
- package/cjs/components/Tree/TreeNode.cjs +14 -3
- package/cjs/components/Tree/TreeNode.cjs.map +1 -1
- package/cjs/components/Tree/flatten-tree-data/flatten-tree-data.cjs +9 -4
- package/cjs/components/Tree/flatten-tree-data/flatten-tree-data.cjs.map +1 -1
- package/cjs/components/Tree/use-tree-node-drag-drop.cjs +13 -5
- package/cjs/components/Tree/use-tree-node-drag-drop.cjs.map +1 -1
- package/cjs/components/Tree/use-tree.cjs +0 -1
- package/cjs/components/Tree/use-tree.cjs.map +1 -1
- package/cjs/components/TreeSelect/TreeSelect.cjs +0 -1
- package/cjs/components/TreeSelect/TreeSelect.cjs.map +1 -1
- package/cjs/components/TreeSelect/TreeSelectOption.cjs +0 -1
- package/cjs/components/TreeSelect/TreeSelectOption.cjs.map +1 -1
- package/cjs/components/Typography/Typography.cjs +0 -1
- package/cjs/components/Typography/Typography.cjs.map +1 -1
- package/cjs/components/Typography/Typography.module.cjs.map +1 -1
- package/cjs/components/UnstyledButton/UnstyledButton.cjs +0 -1
- package/cjs/components/UnstyledButton/UnstyledButton.cjs.map +1 -1
- package/cjs/components/UnstyledButton/UnstyledButton.module.cjs.map +1 -1
- package/cjs/components/VisuallyHidden/VisuallyHidden.cjs +0 -1
- package/cjs/components/VisuallyHidden/VisuallyHidden.cjs.map +1 -1
- package/cjs/core/Box/use-random-classname/use-random-classname.cjs +0 -1
- package/cjs/core/Box/use-random-classname/use-random-classname.cjs.map +1 -1
- package/cjs/core/DirectionProvider/DirectionProvider.cjs +0 -1
- package/cjs/core/DirectionProvider/DirectionProvider.cjs.map +1 -1
- package/cjs/core/InlineStyles/InlineStyles.cjs +0 -1
- package/cjs/core/InlineStyles/InlineStyles.cjs.map +1 -1
- package/cjs/core/MantineProvider/ColorSchemeScript/ColorSchemeScript.cjs +0 -1
- package/cjs/core/MantineProvider/ColorSchemeScript/ColorSchemeScript.cjs.map +1 -1
- package/cjs/core/MantineProvider/Mantine.context.cjs +0 -1
- package/cjs/core/MantineProvider/Mantine.context.cjs.map +1 -1
- package/cjs/core/MantineProvider/MantineClasses/MantineClasses.cjs +0 -1
- package/cjs/core/MantineProvider/MantineClasses/MantineClasses.cjs.map +1 -1
- package/cjs/core/MantineProvider/MantineCssVariables/MantineCssVariables.cjs +0 -1
- package/cjs/core/MantineProvider/MantineCssVariables/MantineCssVariables.cjs.map +1 -1
- package/cjs/core/MantineProvider/MantineProvider.cjs +0 -1
- package/cjs/core/MantineProvider/MantineProvider.cjs.map +1 -1
- package/cjs/core/MantineProvider/MantineThemeProvider/MantineThemeProvider.cjs +0 -1
- package/cjs/core/MantineProvider/MantineThemeProvider/MantineThemeProvider.cjs.map +1 -1
- package/cjs/core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.cjs +0 -1
- package/cjs/core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.cjs.map +1 -1
- package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.cjs +0 -1
- package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.cjs.map +1 -1
- package/cjs/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.cjs +0 -1
- package/cjs/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.cjs.map +1 -1
- package/cjs/core/MantineProvider/use-matches/use-matches.cjs +0 -1
- package/cjs/core/MantineProvider/use-matches/use-matches.cjs.map +1 -1
- package/cjs/core/MantineProvider/use-respect-reduce-motion/use-respect-reduce-motion.cjs +0 -1
- package/cjs/core/MantineProvider/use-respect-reduce-motion/use-respect-reduce-motion.cjs.map +1 -1
- package/cjs/core/factory/factory.cjs +0 -1
- package/cjs/core/factory/factory.cjs.map +1 -1
- package/cjs/core/factory/polymorphic-factory.cjs +0 -1
- package/cjs/core/factory/polymorphic-factory.cjs.map +1 -1
- package/cjs/core/utils/create-safe-context/create-safe-context.cjs +0 -1
- package/cjs/core/utils/create-safe-context/create-safe-context.cjs.map +1 -1
- package/cjs/core/utils/create-use-external-events/create-use-external-events.cjs +0 -1
- package/cjs/core/utils/create-use-external-events/create-use-external-events.cjs.map +1 -1
- package/cjs/core/utils/get-single-element-child/get-single-element-child.cjs +0 -1
- package/cjs/core/utils/get-single-element-child/get-single-element-child.cjs.map +1 -1
- package/cjs/core/utils/is-element/is-element.cjs +0 -1
- package/cjs/core/utils/is-element/is-element.cjs.map +1 -1
- package/cjs/core/utils/use-hovered/use-hovered.cjs +0 -1
- package/cjs/core/utils/use-hovered/use-hovered.cjs.map +1 -1
- package/cjs/index.cjs +25 -2
- package/cjs/utils/Floating/FloatingArrow/FloatingArrow.cjs +0 -1
- package/cjs/utils/Floating/FloatingArrow/FloatingArrow.cjs.map +1 -1
- package/cjs/utils/Floating/FloatingArrow/get-arrow-position-styles.cjs +59 -0
- package/cjs/utils/Floating/FloatingArrow/get-arrow-position-styles.cjs.map +1 -1
- package/cjs/utils/Floating/use-context-menu-handlers.cjs +85 -0
- package/cjs/utils/Floating/use-context-menu-handlers.cjs.map +1 -0
- package/cjs/utils/Floating/use-delayed-hover.cjs +0 -1
- package/cjs/utils/Floating/use-delayed-hover.cjs.map +1 -1
- package/cjs/utils/InlineInput/InlineInput.cjs +0 -1
- package/cjs/utils/InlineInput/InlineInput.cjs.map +1 -1
- package/cjs/utils/InputsGroupFieldset/InputsGroupFieldset.cjs +0 -1
- package/cjs/utils/InputsGroupFieldset/InputsGroupFieldset.cjs.map +1 -1
- package/esm/components/Autocomplete/Autocomplete.mjs +2 -1
- package/esm/components/Autocomplete/Autocomplete.mjs.map +1 -1
- package/esm/components/Blockquote/Blockquote.mjs +4 -3
- package/esm/components/Blockquote/Blockquote.mjs.map +1 -1
- package/esm/components/Blockquote/Blockquote.module.mjs.map +1 -1
- package/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.mjs.map +1 -1
- package/esm/components/Collapse/Collapse.mjs +2 -1
- package/esm/components/Collapse/Collapse.mjs.map +1 -1
- package/esm/components/Combobox/Combobox.context.mjs.map +1 -1
- package/esm/components/Combobox/Combobox.mjs +26 -3
- package/esm/components/Combobox/Combobox.mjs.map +1 -1
- package/esm/components/Combobox/Combobox.module.mjs.map +1 -1
- package/esm/components/Combobox/ComboboxDropdown/ComboboxDropdown.mjs +1 -0
- package/esm/components/Combobox/ComboboxDropdown/ComboboxDropdown.mjs.map +1 -1
- package/esm/components/Combobox/OptionsDropdown/OptionsDropdown.mjs +4 -2
- package/esm/components/Combobox/OptionsDropdown/OptionsDropdown.mjs.map +1 -1
- package/esm/components/Dialog/Dialog.mjs.map +1 -1
- package/esm/components/Input/Input.mjs +11 -2
- package/esm/components/Input/Input.mjs.map +1 -1
- package/esm/components/Input/Input.module.mjs +1 -0
- package/esm/components/Input/Input.module.mjs.map +1 -1
- package/esm/components/Menu/Menu.context.mjs.map +1 -1
- package/esm/components/Menu/Menu.mjs +37 -3
- package/esm/components/Menu/Menu.mjs.map +1 -1
- package/esm/components/Menu/Menu.module.mjs +2 -0
- package/esm/components/Menu/Menu.module.mjs.map +1 -1
- package/esm/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.context.mjs +8 -0
- package/esm/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.context.mjs.map +1 -0
- package/esm/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.mjs +30 -0
- package/esm/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.mjs.map +1 -0
- package/esm/components/Menu/MenuCheckboxItem/MenuCheckboxItem.mjs +52 -0
- package/esm/components/Menu/MenuCheckboxItem/MenuCheckboxItem.mjs.map +1 -0
- package/esm/components/Menu/MenuContextMenu/MenuContextMenu.mjs +28 -0
- package/esm/components/Menu/MenuContextMenu/MenuContextMenu.mjs.map +1 -0
- package/esm/components/Menu/MenuDropdown/MenuDropdown.mjs +9 -1
- package/esm/components/Menu/MenuDropdown/MenuDropdown.mjs.map +1 -1
- package/esm/components/Menu/MenuItem/MenuItem.mjs +18 -1
- package/esm/components/Menu/MenuItem/MenuItem.mjs.map +1 -1
- package/esm/components/Menu/MenuRadioGroup/MenuRadioGroup.context.mjs +8 -0
- package/esm/components/Menu/MenuRadioGroup/MenuRadioGroup.context.mjs.map +1 -0
- package/esm/components/Menu/MenuRadioGroup/MenuRadioGroup.mjs +27 -0
- package/esm/components/Menu/MenuRadioGroup/MenuRadioGroup.mjs.map +1 -0
- package/esm/components/Menu/MenuRadioItem/MenuRadioItem.mjs +46 -0
- package/esm/components/Menu/MenuRadioItem/MenuRadioItem.mjs.map +1 -0
- package/esm/components/Menu/MenuSearch/MenuSearch.mjs +115 -0
- package/esm/components/Menu/MenuSearch/MenuSearch.mjs.map +1 -0
- package/esm/components/Menu/MenuSelectableItem/MenuSelectableItem.mjs +114 -0
- package/esm/components/Menu/MenuSelectableItem/MenuSelectableItem.mjs.map +1 -0
- package/esm/components/Menu/MenuSub/MenuSub.mjs +18 -15
- package/esm/components/Menu/MenuSub/MenuSub.mjs.map +1 -1
- package/esm/components/Menu/MenuSubDropdown/MenuSubDropdown.mjs +13 -1
- package/esm/components/Menu/MenuSubDropdown/MenuSubDropdown.mjs.map +1 -1
- package/esm/components/Menu/MenuSubItem/MenuSubItem.mjs +18 -1
- package/esm/components/Menu/MenuSubItem/MenuSubItem.mjs.map +1 -1
- package/esm/components/Menu/use-menu-type-ahead.mjs +72 -0
- package/esm/components/Menu/use-menu-type-ahead.mjs.map +1 -0
- package/esm/components/MultiSelect/MultiSelect.mjs +2 -1
- package/esm/components/MultiSelect/MultiSelect.mjs.map +1 -1
- package/esm/components/OverflowList/OverflowList.mjs +69 -10
- package/esm/components/OverflowList/OverflowList.mjs.map +1 -1
- package/esm/components/Pagination/Pagination.context.mjs.map +1 -1
- package/esm/components/Pagination/Pagination.mjs +15 -3
- package/esm/components/Pagination/Pagination.mjs.map +1 -1
- package/esm/components/Pagination/Pagination.module.mjs +3 -1
- package/esm/components/Pagination/Pagination.module.mjs.map +1 -1
- package/esm/components/Pagination/PaginationLabel/PaginationLabel.mjs +32 -0
- package/esm/components/Pagination/PaginationLabel/PaginationLabel.mjs.map +1 -0
- package/esm/components/Pagination/PaginationRoot/PaginationRoot.mjs +3 -1
- package/esm/components/Pagination/PaginationRoot/PaginationRoot.mjs.map +1 -1
- package/esm/components/Popover/Popover.mjs +5 -9
- package/esm/components/Popover/Popover.mjs.map +1 -1
- package/esm/components/Popover/PopoverContextMenu/PopoverContextMenu.mjs +28 -0
- package/esm/components/Popover/PopoverContextMenu/PopoverContextMenu.mjs.map +1 -0
- package/esm/components/Popover/PopoverDropdown/PopoverDropdown.mjs +8 -0
- package/esm/components/Popover/PopoverDropdown/PopoverDropdown.mjs.map +1 -1
- package/esm/components/Popover/use-popover.mjs +53 -20
- package/esm/components/Popover/use-popover.mjs.map +1 -1
- package/esm/components/Radio/Radio.mjs +1 -1
- package/esm/components/Radio/RadioIndicator/RadioIndicator.mjs +2 -2
- package/esm/components/Radio/RadioIndicator/RadioIndicator.mjs.map +1 -1
- package/esm/components/SegmentedControl/SegmentedControl.module.mjs.map +1 -1
- package/esm/components/Select/Select.mjs +2 -1
- package/esm/components/Select/Select.mjs.map +1 -1
- package/esm/components/Splitter/GripIcon.mjs +52 -0
- package/esm/components/Splitter/GripIcon.mjs.map +1 -0
- package/esm/components/Splitter/Splitter.context.mjs +8 -0
- package/esm/components/Splitter/Splitter.context.mjs.map +1 -0
- package/esm/components/Splitter/Splitter.mjs +111 -0
- package/esm/components/Splitter/Splitter.mjs.map +1 -0
- package/esm/components/Splitter/Splitter.module.mjs +12 -0
- package/esm/components/Splitter/Splitter.module.mjs.map +1 -0
- package/esm/components/Splitter/SplitterPane/SplitterPane.mjs +34 -0
- package/esm/components/Splitter/SplitterPane/SplitterPane.mjs.map +1 -0
- package/esm/components/Stepper/Stepper.module.mjs.map +1 -1
- package/esm/components/Table/Table.module.mjs.map +1 -1
- package/esm/components/Tabs/Tabs.module.mjs.map +1 -1
- package/esm/components/TagsInput/TagsInput.mjs +2 -1
- package/esm/components/TagsInput/TagsInput.mjs.map +1 -1
- package/esm/components/Text/Text.mjs +4 -3
- package/esm/components/Text/Text.mjs.map +1 -1
- package/esm/components/Text/Text.module.mjs.map +1 -1
- package/esm/components/Textarea/Textarea.mjs +3 -1
- package/esm/components/Textarea/Textarea.mjs.map +1 -1
- package/esm/components/Timeline/Timeline.module.mjs.map +1 -1
- package/esm/components/Tooltip/Tooltip.mjs +7 -0
- package/esm/components/Tooltip/Tooltip.mjs.map +1 -1
- package/esm/components/Tooltip/use-tooltip.mjs +8 -4
- package/esm/components/Tooltip/use-tooltip.mjs.map +1 -1
- package/esm/components/Tree/FlatTreeNode.mjs +14 -5
- package/esm/components/Tree/FlatTreeNode.mjs.map +1 -1
- package/esm/components/Tree/Tree.mjs.map +1 -1
- package/esm/components/Tree/Tree.module.mjs +3 -1
- package/esm/components/Tree/Tree.module.mjs.map +1 -1
- package/esm/components/Tree/TreeNode.mjs +14 -2
- package/esm/components/Tree/TreeNode.mjs.map +1 -1
- package/esm/components/Tree/flatten-tree-data/flatten-tree-data.mjs +9 -4
- package/esm/components/Tree/flatten-tree-data/flatten-tree-data.mjs.map +1 -1
- package/esm/components/Tree/use-tree-node-drag-drop.mjs +13 -4
- package/esm/components/Tree/use-tree-node-drag-drop.mjs.map +1 -1
- package/esm/components/Typography/Typography.module.mjs.map +1 -1
- package/esm/components/UnstyledButton/UnstyledButton.module.mjs.map +1 -1
- package/esm/index.mjs +14 -2
- package/esm/utils/Floating/FloatingArrow/get-arrow-position-styles.mjs +59 -1
- package/esm/utils/Floating/FloatingArrow/get-arrow-position-styles.mjs.map +1 -1
- package/esm/utils/Floating/use-context-menu-handlers.mjs +85 -0
- package/esm/utils/Floating/use-context-menu-handlers.mjs.map +1 -0
- package/lib/components/Blockquote/Blockquote.d.ts +3 -1
- package/lib/components/Checkbox/CheckboxIndicator/CheckboxIndicator.d.ts +1 -1
- package/lib/components/Collapse/Collapse.d.ts +1 -1
- package/lib/components/Combobox/Combobox.context.d.ts +1 -0
- package/lib/components/Combobox/Combobox.d.ts +2 -0
- package/lib/components/Combobox/Combobox.types.d.ts +2 -0
- package/lib/components/Combobox/OptionsDropdown/OptionsDropdown.d.ts +3 -1
- package/lib/components/Dialog/Dialog.d.ts +1 -1
- package/lib/components/Input/Input.d.ts +5 -1
- package/lib/components/MaskInput/use-mask-input-props.d.ts +3 -0
- package/lib/components/Menu/Menu.context.d.ts +5 -0
- package/lib/components/Menu/Menu.d.ts +41 -1
- package/lib/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.context.d.ts +5 -0
- package/lib/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.d.ts +14 -0
- package/lib/components/Menu/MenuCheckboxItem/MenuCheckboxItem.d.ts +37 -0
- package/lib/components/Menu/MenuContextMenu/MenuContextMenu.d.ts +12 -0
- package/lib/components/Menu/MenuItem/MenuItem.d.ts +1 -1
- package/lib/components/Menu/MenuRadioGroup/MenuRadioGroup.context.d.ts +5 -0
- package/lib/components/Menu/MenuRadioGroup/MenuRadioGroup.d.ts +14 -0
- package/lib/components/Menu/MenuRadioItem/MenuRadioItem.d.ts +35 -0
- package/lib/components/Menu/MenuSearch/MenuSearch.d.ts +19 -0
- package/lib/components/Menu/MenuSelectableItem/MenuSelectableItem.d.ts +20 -0
- package/lib/components/Menu/MenuSub/MenuSub.d.ts +2 -0
- package/lib/components/Menu/MenuSubItem/MenuSubItem.d.ts +1 -1
- package/lib/components/Menu/index.d.ts +13 -1
- package/lib/components/Menu/use-menu-type-ahead.d.ts +7 -0
- package/lib/components/OverflowList/OverflowList.d.ts +7 -2
- package/lib/components/Pagination/Pagination.context.d.ts +1 -0
- package/lib/components/Pagination/Pagination.d.ts +8 -0
- package/lib/components/Pagination/PaginationLabel/PaginationLabel.d.ts +22 -0
- package/lib/components/Pagination/PaginationRoot/PaginationRoot.d.ts +3 -1
- package/lib/components/Pagination/index.d.ts +3 -1
- package/lib/components/Popover/Popover.d.ts +6 -1
- package/lib/components/Popover/PopoverContextMenu/PopoverContextMenu.d.ts +12 -0
- package/lib/components/Popover/index.d.ts +3 -1
- package/lib/components/Popover/use-popover.d.ts +1 -3
- package/lib/components/Radio/RadioIndicator/RadioIndicator.d.ts +1 -1
- package/lib/components/Splitter/GripIcon.d.ts +3 -0
- package/lib/components/Splitter/Splitter.context.d.ts +9 -0
- package/lib/components/Splitter/Splitter.d.ts +57 -0
- package/lib/components/Splitter/SplitterPane/SplitterPane.d.ts +30 -0
- package/lib/components/Splitter/index.d.ts +18 -0
- package/lib/components/Text/Text.d.ts +3 -1
- package/lib/components/Textarea/Textarea.d.ts +4 -0
- package/lib/components/Tree/FlatTreeNode.d.ts +5 -1
- package/lib/components/Tree/Tree.d.ts +2 -0
- package/lib/components/Tree/flatten-tree-data/flatten-tree-data.d.ts +10 -0
- package/lib/components/Tree/index.d.ts +1 -1
- package/lib/components/Tree/use-tree-node-drag-drop.d.ts +2 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/utils/Floating/FloatingArrow/get-arrow-position-styles.d.ts +4 -0
- package/lib/utils/Floating/index.d.ts +1 -0
- package/lib/utils/Floating/types.d.ts +1 -1
- package/lib/utils/Floating/use-context-menu-handlers.d.ts +25 -0
- package/package.json +2 -2
- package/styles/Blockquote.css +1 -0
- package/styles/Blockquote.layer.css +1 -0
- package/styles/Combobox.css +8 -0
- package/styles/Combobox.layer.css +8 -0
- package/styles/Input.css +25 -4
- package/styles/Input.layer.css +25 -4
- package/styles/Menu.css +41 -2
- package/styles/Menu.layer.css +41 -2
- package/styles/Pagination.css +33 -0
- package/styles/Pagination.layer.css +33 -0
- package/styles/SegmentedControl.css +4 -1
- package/styles/SegmentedControl.layer.css +4 -1
- package/styles/Splitter.css +76 -0
- package/styles/Splitter.layer.css +77 -0
- package/styles/Stepper.css +1 -5
- package/styles/Stepper.layer.css +1 -5
- package/styles/Table.css +1 -5
- package/styles/Table.layer.css +1 -5
- package/styles/Tabs.css +13 -28
- package/styles/Tabs.layer.css +13 -28
- package/styles/Text.css +3 -2
- package/styles/Text.layer.css +3 -2
- package/styles/Timeline.css +14 -42
- package/styles/Timeline.layer.css +14 -42
- package/styles/Tree.css +55 -11
- package/styles/Tree.layer.css +55 -11
- package/styles/Typography.css +1 -1
- package/styles/Typography.layer.css +1 -1
- package/styles/UnstyledButton.css +1 -5
- package/styles/UnstyledButton.layer.css +1 -5
- package/styles.css +278 -106
- package/styles.layer.css +278 -106
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GripIcon.mjs","names":[],"sources":["../../../src/components/Splitter/GripIcon.tsx"],"sourcesContent":["import React from 'react';\n\nexport function GripVerticalIcon(props: React.ComponentPropsWithoutRef<'svg'>) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"M8 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M8 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M8 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M14 5a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M14 12a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M14 19a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n </svg>\n );\n}\n\nexport function GripHorizontalIcon(props: React.ComponentPropsWithoutRef<'svg'>) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"M4 9a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M4 15a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M11 9a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M11 15a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M18 9a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n <path d=\"M18 15a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\" />\n </svg>\n );\n}\n"],"mappings":";;;;AAEA,SAAgB,iBAAiB,OAA8C;CAC7E,OACE,qBAAC,OAAD;EACE,OAAM;EACN,OAAM;EACN,QAAO;EACP,SAAQ;EACR,MAAK;EACL,QAAO;EACP,aAAY;EACZ,eAAc;EACd,gBAAe;EACf,GAAI;YAVN;GAYE,oBAAC,QAAD,EAAM,GAAE,oCAAqC,CAAA;GAC7C,oBAAC,QAAD,EAAM,GAAE,qCAAsC,CAAA;GAC9C,oBAAC,QAAD,EAAM,GAAE,qCAAsC,CAAA;GAC9C,oBAAC,QAAD,EAAM,GAAE,qCAAsC,CAAA;GAC9C,oBAAC,QAAD,EAAM,GAAE,sCAAuC,CAAA;GAC/C,oBAAC,QAAD,EAAM,GAAE,sCAAuC,CAAA;EAC5C;;AAET;AAEA,SAAgB,mBAAmB,OAA8C;CAC/E,OACE,qBAAC,OAAD;EACE,OAAM;EACN,OAAM;EACN,QAAO;EACP,SAAQ;EACR,MAAK;EACL,QAAO;EACP,aAAY;EACZ,eAAc;EACd,gBAAe;EACf,GAAI;YAVN;GAYE,oBAAC,QAAD,EAAM,GAAE,oCAAqC,CAAA;GAC7C,oBAAC,QAAD,EAAM,GAAE,qCAAsC,CAAA;GAC9C,oBAAC,QAAD,EAAM,GAAE,qCAAsC,CAAA;GAC9C,oBAAC,QAAD,EAAM,GAAE,sCAAuC,CAAA;GAC/C,oBAAC,QAAD,EAAM,GAAE,qCAAsC,CAAA;GAC9C,oBAAC,QAAD,EAAM,GAAE,sCAAuC,CAAA;EAC5C;;AAET"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { createSafeContext } from "../../core/utils/create-safe-context/create-safe-context.mjs";
|
|
3
|
+
//#region packages/@mantine/core/src/components/Splitter/Splitter.context.ts
|
|
4
|
+
const [SplitterProvider, useSplitterContext] = createSafeContext("Splitter component was not found in the tree");
|
|
5
|
+
//#endregion
|
|
6
|
+
export { SplitterProvider, useSplitterContext };
|
|
7
|
+
|
|
8
|
+
//# sourceMappingURL=Splitter.context.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Splitter.context.mjs","names":[],"sources":["../../../src/components/Splitter/Splitter.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi } from '../../core';\nimport type { SplitterFactory } from './Splitter';\n\nexport interface SplitterContextValue {\n getStyles: GetStylesApi<SplitterFactory>;\n sizes: number[];\n collapsed: boolean[];\n orientation: 'horizontal' | 'vertical';\n}\n\nexport const [SplitterProvider, useSplitterContext] = createSafeContext<SplitterContextValue>(\n 'Splitter component was not found in the tree'\n);\n"],"mappings":";;;AAUA,MAAa,CAAC,kBAAkB,sBAAsB,kBACpD,8CACF"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { rem } from "../../core/utils/units-converters/rem.mjs";
|
|
3
|
+
import { createVarsResolver } from "../../core/styles-api/create-vars-resolver/create-vars-resolver.mjs";
|
|
4
|
+
import { getThemeColor } from "../../core/MantineProvider/color-functions/get-theme-color/get-theme-color.mjs";
|
|
5
|
+
import { useProps } from "../../core/MantineProvider/use-props/use-props.mjs";
|
|
6
|
+
import { useStyles } from "../../core/styles-api/use-styles/use-styles.mjs";
|
|
7
|
+
import { factory } from "../../core/factory/factory.mjs";
|
|
8
|
+
import { Box } from "../../core/Box/Box.mjs";
|
|
9
|
+
import { useDirection } from "../../core/DirectionProvider/DirectionProvider.mjs";
|
|
10
|
+
import { GripHorizontalIcon, GripVerticalIcon } from "./GripIcon.mjs";
|
|
11
|
+
import { SplitterProvider } from "./Splitter.context.mjs";
|
|
12
|
+
import Splitter_module_default from "./Splitter.module.mjs";
|
|
13
|
+
import { SplitterPane } from "./SplitterPane/SplitterPane.mjs";
|
|
14
|
+
import { Children, cloneElement, createElement, useImperativeHandle } from "react";
|
|
15
|
+
import { useMergedRef, useSplitter } from "@mantine/hooks";
|
|
16
|
+
import { jsx } from "react/jsx-runtime";
|
|
17
|
+
//#region packages/@mantine/core/src/components/Splitter/Splitter.tsx
|
|
18
|
+
const defaultProps = {
|
|
19
|
+
orientation: "horizontal",
|
|
20
|
+
lineSize: 2,
|
|
21
|
+
withHandle: true
|
|
22
|
+
};
|
|
23
|
+
const varsResolver = createVarsResolver((theme, { lineSize, handleColor }) => ({ root: {
|
|
24
|
+
"--splitter-line-size": rem(lineSize),
|
|
25
|
+
"--splitter-handle-color": handleColor ? getThemeColor(handleColor, theme) : void 0
|
|
26
|
+
} }));
|
|
27
|
+
const Splitter = factory((_props) => {
|
|
28
|
+
const props = useProps("Splitter", defaultProps, _props);
|
|
29
|
+
const { orientation, sizes: controlledSizes, onSizeChange, onResizeStart, onResizeEnd, onCollapseChange, redistribute, step, shiftStep, lineSize, handleColor, handleIcon, withHandle, splitterRef, children, className, classNames, style, styles, unstyled, vars, mod, attributes, ref, ...others } = props;
|
|
30
|
+
const { dir } = useDirection();
|
|
31
|
+
const paneChildren = Children.toArray(children);
|
|
32
|
+
const splitter = useSplitter({
|
|
33
|
+
panels: paneChildren.map((child) => ({
|
|
34
|
+
defaultSize: child.props.defaultSize,
|
|
35
|
+
min: child.props.min,
|
|
36
|
+
max: child.props.max,
|
|
37
|
+
collapsible: child.props.collapsible,
|
|
38
|
+
collapseThreshold: child.props.collapseThreshold
|
|
39
|
+
})),
|
|
40
|
+
orientation,
|
|
41
|
+
sizes: controlledSizes,
|
|
42
|
+
onSizeChange,
|
|
43
|
+
onResizeStart,
|
|
44
|
+
onResizeEnd,
|
|
45
|
+
onCollapseChange,
|
|
46
|
+
redistribute,
|
|
47
|
+
step,
|
|
48
|
+
shiftStep,
|
|
49
|
+
dir
|
|
50
|
+
});
|
|
51
|
+
useImperativeHandle(splitterRef, () => splitter, [splitter]);
|
|
52
|
+
const mergedRef = useMergedRef(ref, splitter.ref);
|
|
53
|
+
const getStyles = useStyles({
|
|
54
|
+
name: "Splitter",
|
|
55
|
+
classes: Splitter_module_default,
|
|
56
|
+
props,
|
|
57
|
+
className,
|
|
58
|
+
style,
|
|
59
|
+
classNames,
|
|
60
|
+
styles,
|
|
61
|
+
unstyled,
|
|
62
|
+
attributes,
|
|
63
|
+
vars,
|
|
64
|
+
varsResolver
|
|
65
|
+
});
|
|
66
|
+
const thumbIcon = handleIcon !== void 0 ? handleIcon : orientation === "vertical" ? /* @__PURE__ */ jsx(GripHorizontalIcon, {}) : /* @__PURE__ */ jsx(GripVerticalIcon, {});
|
|
67
|
+
const items = [];
|
|
68
|
+
paneChildren.forEach((child, index) => {
|
|
69
|
+
if (index > 0) {
|
|
70
|
+
const handleProps = splitter.getHandleProps({ index: index - 1 });
|
|
71
|
+
const isActive = splitter.activeHandle === index - 1;
|
|
72
|
+
items.push(/* @__PURE__ */ createElement(Box, {
|
|
73
|
+
...getStyles("handle"),
|
|
74
|
+
key: `handle-${index - 1}`,
|
|
75
|
+
...handleProps
|
|
76
|
+
}, withHandle && /* @__PURE__ */ jsx("div", {
|
|
77
|
+
...getStyles("thumb"),
|
|
78
|
+
"data-orientation": orientation,
|
|
79
|
+
"data-active": isActive || void 0,
|
|
80
|
+
children: thumbIcon
|
|
81
|
+
})));
|
|
82
|
+
}
|
|
83
|
+
items.push(cloneElement(child, {
|
|
84
|
+
key: `pane-${index}`,
|
|
85
|
+
__index: index
|
|
86
|
+
}));
|
|
87
|
+
});
|
|
88
|
+
return /* @__PURE__ */ jsx(SplitterProvider, {
|
|
89
|
+
value: {
|
|
90
|
+
getStyles,
|
|
91
|
+
sizes: splitter.sizes,
|
|
92
|
+
collapsed: splitter.collapsed,
|
|
93
|
+
orientation
|
|
94
|
+
},
|
|
95
|
+
children: /* @__PURE__ */ jsx(Box, {
|
|
96
|
+
ref: mergedRef,
|
|
97
|
+
...getStyles("root"),
|
|
98
|
+
mod: [{ orientation }, mod],
|
|
99
|
+
...others,
|
|
100
|
+
children: items
|
|
101
|
+
})
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
Splitter.classes = Splitter_module_default;
|
|
105
|
+
Splitter.varsResolver = varsResolver;
|
|
106
|
+
Splitter.displayName = "@mantine/core/Splitter";
|
|
107
|
+
Splitter.Pane = SplitterPane;
|
|
108
|
+
//#endregion
|
|
109
|
+
export { Splitter };
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=Splitter.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Splitter.mjs","names":["classes"],"sources":["../../../src/components/Splitter/Splitter.tsx"],"sourcesContent":["import { Children, cloneElement, useImperativeHandle } from 'react';\nimport {\n useMergedRef,\n useSplitter,\n UseSplitterRedistributeFn,\n UseSplitterReturnValue,\n} from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getThemeColor,\n MantineColor,\n rem,\n StylesApiProps,\n useDirection,\n useProps,\n useStyles,\n} from '../../core';\nimport { GripHorizontalIcon, GripVerticalIcon } from './GripIcon';\nimport { SplitterProvider } from './Splitter.context';\nimport {\n SplitterPane,\n SplitterPaneProps,\n SplitterPaneStylesNames,\n} from './SplitterPane/SplitterPane';\nimport classes from './Splitter.module.css';\n\nexport type SplitterStylesNames = 'root' | 'handle' | 'thumb' | SplitterPaneStylesNames;\n\nexport type SplitterCssVariables = {\n root: '--splitter-line-size' | '--splitter-handle-color';\n};\n\nexport interface SplitterProps\n extends BoxProps, StylesApiProps<SplitterFactory>, ElementProps<'div'> {\n /** Layout direction @default 'horizontal' */\n orientation?: 'horizontal' | 'vertical';\n\n /** Controlled sizes (percentages summing to 100) */\n sizes?: number[];\n\n /** Called during resize with updated sizes */\n onSizeChange?: (sizes: number[]) => void;\n\n /** Called when drag starts */\n onResizeStart?: (handleIndex: number) => void;\n\n /** Called when drag ends */\n onResizeEnd?: (handleIndex: number, sizes: number[]) => void;\n\n /** Called when a panel collapses or expands */\n onCollapseChange?: (panelIndex: number, collapsed: boolean) => void;\n\n /** How to redistribute space when immediate neighbor is at its min/max */\n redistribute?: 'nearest' | 'equal' | UseSplitterRedistributeFn;\n\n /** Keyboard step size in percentage @default 1 */\n step?: number;\n\n /** Shift+arrow step size in percentage @default 10 */\n shiftStep?: number;\n\n /** CSS value for separator line thickness between panes @default 2 */\n lineSize?: number | string;\n\n /** Key of `theme.colors` or any valid CSS color for the separator line */\n handleColor?: MantineColor;\n\n /** Custom icon displayed in the handle thumb, by default uses grip icon based on orientation */\n handleIcon?: React.ReactNode;\n\n /** Determines whether the thumb with grip icon is displayed on the handle @default true */\n withHandle?: boolean;\n\n /** Ref to imperative splitter API (sizes, collapse, expand, etc.) */\n splitterRef?: React.RefObject<UseSplitterReturnValue | null>;\n\n /** Splitter panes */\n children?: React.ReactNode;\n}\n\nexport type SplitterFactory = Factory<{\n props: SplitterProps;\n ref: HTMLDivElement;\n stylesNames: SplitterStylesNames;\n vars: SplitterCssVariables;\n staticComponents: {\n Pane: typeof SplitterPane;\n };\n}>;\n\nconst defaultProps = {\n orientation: 'horizontal',\n lineSize: 2,\n withHandle: true,\n} satisfies Partial<SplitterProps>;\n\nconst varsResolver = createVarsResolver<SplitterFactory>((theme, { lineSize, handleColor }) => ({\n root: {\n '--splitter-line-size': rem(lineSize),\n '--splitter-handle-color': handleColor ? getThemeColor(handleColor, theme) : undefined,\n },\n}));\n\nexport const Splitter = factory<SplitterFactory>((_props) => {\n const props = useProps('Splitter', defaultProps, _props);\n const {\n orientation,\n sizes: controlledSizes,\n onSizeChange,\n onResizeStart,\n onResizeEnd,\n onCollapseChange,\n redistribute,\n step,\n shiftStep,\n lineSize,\n handleColor,\n handleIcon,\n withHandle,\n splitterRef,\n children,\n className,\n classNames,\n style,\n styles,\n unstyled,\n vars,\n mod,\n attributes,\n ref,\n ...others\n } = props;\n\n const { dir } = useDirection();\n\n const paneChildren = Children.toArray(children) as React.ReactElement<SplitterPaneProps>[];\n\n const panels = paneChildren.map((child) => ({\n defaultSize: child.props.defaultSize,\n min: child.props.min,\n max: child.props.max,\n collapsible: child.props.collapsible,\n collapseThreshold: child.props.collapseThreshold,\n }));\n\n const splitter = useSplitter({\n panels,\n orientation,\n sizes: controlledSizes,\n onSizeChange,\n onResizeStart,\n onResizeEnd,\n onCollapseChange,\n redistribute,\n step,\n shiftStep,\n dir,\n });\n\n useImperativeHandle(splitterRef, () => splitter, [splitter]);\n\n const mergedRef = useMergedRef(ref, splitter.ref);\n\n const getStyles = useStyles<SplitterFactory>({\n name: 'Splitter',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const defaultIcon = orientation === 'vertical' ? <GripHorizontalIcon /> : <GripVerticalIcon />;\n const thumbIcon = handleIcon !== undefined ? handleIcon : defaultIcon;\n\n const items: React.ReactNode[] = [];\n\n paneChildren.forEach((child, index) => {\n if (index > 0) {\n const handleProps = splitter.getHandleProps({ index: index - 1 });\n const isActive = splitter.activeHandle === index - 1;\n items.push(\n <Box {...getStyles('handle')} key={`handle-${index - 1}`} {...handleProps}>\n {withHandle && (\n <div\n {...getStyles('thumb')}\n data-orientation={orientation}\n data-active={isActive || undefined}\n >\n {thumbIcon}\n </div>\n )}\n </Box>\n );\n }\n\n items.push(\n cloneElement(child, {\n key: `pane-${index}`,\n __index: index,\n })\n );\n });\n\n return (\n <SplitterProvider\n value={{\n getStyles,\n sizes: splitter.sizes,\n collapsed: splitter.collapsed,\n orientation: orientation!,\n }}\n >\n <Box ref={mergedRef} {...getStyles('root')} mod={[{ orientation }, mod]} {...others}>\n {items}\n </Box>\n </SplitterProvider>\n );\n});\n\nSplitter.classes = classes;\nSplitter.varsResolver = varsResolver;\nSplitter.displayName = '@mantine/core/Splitter';\nSplitter.Pane = SplitterPane;\n"],"mappings":";;;;;;;;;;;;;;;;;AA+FA,MAAM,eAAe;CACnB,aAAa;CACb,UAAU;CACV,YAAY;AACd;AAEA,MAAM,eAAe,oBAAqC,OAAO,EAAE,UAAU,mBAAmB,EAC9F,MAAM;CACJ,wBAAwB,IAAI,QAAQ;CACpC,2BAA2B,cAAc,cAAc,aAAa,KAAK,IAAI,KAAA;AAC/E,EACF,EAAE;AAEF,MAAa,WAAW,SAA0B,WAAW;CAC3D,MAAM,QAAQ,SAAS,YAAY,cAAc,MAAM;CACvD,MAAM,EACJ,aACA,OAAO,iBACP,cACA,eACA,aACA,kBACA,cACA,MACA,WACA,UACA,aACA,YACA,YACA,aACA,UACA,WACA,YACA,OACA,QACA,UACA,MACA,KACA,YACA,KACA,GAAG,WACD;CAEJ,MAAM,EAAE,QAAQ,aAAa;CAE7B,MAAM,eAAe,SAAS,QAAQ,QAAQ;CAU9C,MAAM,WAAW,YAAY;EAC3B,QATa,aAAa,KAAK,WAAW;GAC1C,aAAa,MAAM,MAAM;GACzB,KAAK,MAAM,MAAM;GACjB,KAAK,MAAM,MAAM;GACjB,aAAa,MAAM,MAAM;GACzB,mBAAmB,MAAM,MAAM;EACjC,EAGO;EACL;EACA,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,oBAAoB,mBAAmB,UAAU,CAAC,QAAQ,CAAC;CAE3D,MAAM,YAAY,aAAa,KAAK,SAAS,GAAG;CAEhD,MAAM,YAAY,UAA2B;EAC3C,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAGD,MAAM,YAAY,eAAe,KAAA,IAAY,aADzB,gBAAgB,aAAa,oBAAC,oBAAD,CAAqB,CAAA,IAAI,oBAAC,kBAAD,CAAmB,CAAA;CAG7F,MAAM,QAA2B,CAAC;CAElC,aAAa,SAAS,OAAO,UAAU;EACrC,IAAI,QAAQ,GAAG;GACb,MAAM,cAAc,SAAS,eAAe,EAAE,OAAO,QAAQ,EAAE,CAAC;GAChE,MAAM,WAAW,SAAS,iBAAiB,QAAQ;GACnD,MAAM,KACJ,8BAAC,KAAD;IAAK,GAAI,UAAU,QAAQ;IAAG,KAAK,UAAU,QAAQ;IAAK,GAAI;GAUzD,GATF,cACC,oBAAC,OAAD;IACE,GAAI,UAAU,OAAO;IACrB,oBAAkB;IAClB,eAAa,YAAY,KAAA;cAExB;GACE,CAAA,CAEJ,CACP;EACF;EAEA,MAAM,KACJ,aAAa,OAAO;GAClB,KAAK,QAAQ;GACb,SAAS;EACX,CAAC,CACH;CACF,CAAC;CAED,OACE,oBAAC,kBAAD;EACE,OAAO;GACL;GACA,OAAO,SAAS;GAChB,WAAW,SAAS;GACP;EACf;YAEA,oBAAC,KAAD;GAAK,KAAK;GAAW,GAAI,UAAU,MAAM;GAAG,KAAK,CAAC,EAAE,YAAY,GAAG,GAAG;GAAG,GAAI;aAC1E;EACE,CAAA;CACW,CAAA;AAEtB,CAAC;AAED,SAAS,UAAUA;AACnB,SAAS,eAAe;AACxB,SAAS,cAAc;AACvB,SAAS,OAAO"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
//#region packages/@mantine/core/src/components/Splitter/Splitter.module.css
|
|
3
|
+
var Splitter_module_default = {
|
|
4
|
+
"root": "m_19e66008",
|
|
5
|
+
"pane": "m_19e5428e",
|
|
6
|
+
"handle": "m_27f81bce",
|
|
7
|
+
"thumb": "m_22feb770"
|
|
8
|
+
};
|
|
9
|
+
//#endregion
|
|
10
|
+
export { Splitter_module_default as default };
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=Splitter.module.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Splitter.module.mjs","names":[],"sources":["../../../src/components/Splitter/Splitter.module.css"],"sourcesContent":[".root {\n display: flex;\n\n &:where([data-orientation='horizontal']) {\n flex-direction: row;\n }\n\n &:where([data-orientation='vertical']) {\n flex-direction: column;\n }\n}\n\n.pane {\n flex-grow: 0;\n flex-shrink: 1;\n overflow: auto;\n}\n\n.handle {\n flex: 0 0 var(--splitter-line-size, rem(2px));\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n touch-action: none;\n outline: none;\n background-color: var(--splitter-handle-color, var(--mantine-color-body));\n\n &:where([data-orientation='horizontal']) {\n cursor: col-resize;\n }\n\n &:where([data-orientation='vertical']) {\n cursor: row-resize;\n }\n}\n\n.thumb {\n position: absolute;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 1000px;\n color: var(--mantine-color-dimmed);\n transition: color 100ms ease;\n\n @mixin where-light {\n background-color: var(--mantine-color-white);\n border: rem(1px) solid var(--mantine-color-gray-3);\n }\n\n @mixin where-dark {\n background-color: var(--mantine-color-dark-6);\n border: rem(1px) solid var(--mantine-color-dark-4);\n }\n\n &:where([data-orientation='horizontal']) {\n width: rem(12px);\n height: rem(60px);\n }\n\n &:where([data-orientation='vertical']) {\n width: rem(60px);\n height: rem(12px);\n }\n\n & > svg {\n width: 100%;\n height: 100%;\n }\n\n .handle:focus-visible & {\n box-shadow: 0 0 0 rem(2px) var(--mantine-primary-color-filled);\n }\n}\n"],"mappings":""}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useProps } from "../../../core/MantineProvider/use-props/use-props.mjs";
|
|
3
|
+
import { factory } from "../../../core/factory/factory.mjs";
|
|
4
|
+
import { Box } from "../../../core/Box/Box.mjs";
|
|
5
|
+
import { useSplitterContext } from "../Splitter.context.mjs";
|
|
6
|
+
import Splitter_module_default from "../Splitter.module.mjs";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
//#region packages/@mantine/core/src/components/Splitter/SplitterPane/SplitterPane.tsx
|
|
9
|
+
const SplitterPane = factory((_props) => {
|
|
10
|
+
const props = useProps("SplitterPane", null, _props);
|
|
11
|
+
const { className, classNames, style, styles, vars, children, defaultSize, min, max, collapsible, collapseThreshold, __index, mod, ...others } = props;
|
|
12
|
+
const ctx = useSplitterContext();
|
|
13
|
+
const size = ctx.sizes[__index];
|
|
14
|
+
const isCollapsed = ctx.collapsed[__index];
|
|
15
|
+
const sizeStyle = { flexBasis: `${size}%` };
|
|
16
|
+
return /* @__PURE__ */ jsx(Box, {
|
|
17
|
+
...ctx.getStyles("pane", {
|
|
18
|
+
className,
|
|
19
|
+
classNames,
|
|
20
|
+
style: [sizeStyle, style],
|
|
21
|
+
styles,
|
|
22
|
+
props
|
|
23
|
+
}),
|
|
24
|
+
mod: [{ collapsed: isCollapsed || void 0 }, mod],
|
|
25
|
+
...others,
|
|
26
|
+
children
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
SplitterPane.classes = Splitter_module_default;
|
|
30
|
+
SplitterPane.displayName = "@mantine/core/SplitterPane";
|
|
31
|
+
//#endregion
|
|
32
|
+
export { SplitterPane };
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=SplitterPane.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SplitterPane.mjs","names":["classes"],"sources":["../../../../src/components/Splitter/SplitterPane/SplitterPane.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n useProps,\n} from '../../../core';\nimport { useSplitterContext } from '../Splitter.context';\nimport classes from '../Splitter.module.css';\n\nexport type SplitterPaneStylesNames = 'pane';\n\nexport interface SplitterPaneProps\n extends BoxProps, CompoundStylesApiProps<SplitterPaneFactory>, ElementProps<'div'> {\n /** Initial size as percentage (0-100). All panes must sum to 100. */\n defaultSize: number;\n\n /** Minimum size percentage @default 0 */\n min?: number;\n\n /** Maximum size percentage @default 100 */\n max?: number;\n\n /** Whether this pane can be collapsed @default false */\n collapsible?: boolean;\n\n /** Size below which the pane snaps to collapsed (percentage), defaults to `min` */\n collapseThreshold?: number;\n\n /** Pane content */\n children?: React.ReactNode;\n\n /** @internal Index set by parent */\n __index?: number;\n}\n\nexport type SplitterPaneFactory = Factory<{\n props: SplitterPaneProps;\n ref: HTMLDivElement;\n stylesNames: SplitterPaneStylesNames;\n compound: true;\n}>;\n\nexport const SplitterPane = factory<SplitterPaneFactory>((_props) => {\n const props = useProps('SplitterPane', null, _props);\n const {\n className,\n classNames,\n style,\n styles,\n vars,\n children,\n defaultSize,\n min,\n max,\n collapsible,\n collapseThreshold,\n __index,\n mod,\n ...others\n } = props;\n\n const ctx = useSplitterContext();\n const size = ctx.sizes[__index!];\n const isCollapsed = ctx.collapsed[__index!];\n\n const sizeStyle = { flexBasis: `${size}%` };\n\n return (\n <Box\n {...ctx.getStyles('pane', {\n className,\n classNames,\n style: [sizeStyle, style],\n styles,\n props,\n })}\n mod={[{ collapsed: isCollapsed || undefined }, mod]}\n {...others}\n >\n {children}\n </Box>\n );\n});\n\nSplitterPane.classes = classes;\nSplitterPane.displayName = '@mantine/core/SplitterPane';\n"],"mappings":";;;;;;;;AA6CA,MAAa,eAAe,SAA8B,WAAW;CACnE,MAAM,QAAQ,SAAS,gBAAgB,MAAM,MAAM;CACnD,MAAM,EACJ,WACA,YACA,OACA,QACA,MACA,UACA,aACA,KACA,KACA,aACA,mBACA,SACA,KACA,GAAG,WACD;CAEJ,MAAM,MAAM,mBAAmB;CAC/B,MAAM,OAAO,IAAI,MAAM;CACvB,MAAM,cAAc,IAAI,UAAU;CAElC,MAAM,YAAY,EAAE,WAAW,GAAG,KAAK,GAAG;CAE1C,OACE,oBAAC,KAAD;EACE,GAAI,IAAI,UAAU,QAAQ;GACxB;GACA;GACA,OAAO,CAAC,WAAW,KAAK;GACxB;GACA;EACF,CAAC;EACD,KAAK,CAAC,EAAE,WAAW,eAAe,KAAA,EAAU,GAAG,GAAG;EAClD,GAAI;EAEH;CACE,CAAA;AAET,CAAC;AAED,aAAa,UAAUA;AACvB,aAAa,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stepper.module.mjs","names":[],"sources":["../../../src/components/Stepper/Stepper.module.css"],"sourcesContent":[".root {\n --stepper-icon-size-xs: 34px;\n --stepper-icon-size-sm: 36px;\n --stepper-icon-size-md: 42px;\n --stepper-icon-size-lg: 48px;\n --stepper-icon-size-xl: 52px;\n\n --stepper-icon-size: var(--stepper-icon-size-md);\n --stepper-color: var(--mantine-primary-color-filled);\n --stepper-content-padding: var(--mantine-spacing-md);\n --stepper-spacing: var(--mantine-spacing-md);\n --stepper-radius: 1000px;\n --stepper-fz: var(--mantine-font-size-md);\n --stepper-outline-thickness: 2px;\n\n @mixin light {\n --stepper-outline-color: var(--mantine-color-gray-2);\n }\n\n @mixin dark {\n --stepper-outline-color: var(--mantine-color-dark-5);\n }\n}\n\n.steps {\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n\n &:where([data-wrap]) {\n flex-wrap: wrap;\n gap: var(--mantine-spacing-md) 0;\n }\n\n &:where([data-orientation='vertical']) {\n flex-direction: column;\n\n &:where([data-icon-position='left']) {\n align-items: flex-start;\n }\n\n &:where([data-icon-position='right']) {\n align-items: flex-end;\n }\n }\n\n &:where([data-orientation='horizontal']) {\n flex-direction: row;\n }\n}\n\n.separator {\n transition: background-color 150ms ease;\n flex: 1;\n height: var(--stepper-outline-thickness);\n margin-inline: var(--mantine-spacing-md);\n background-color: var(--stepper-outline-color);\n\n &:where([data-active]) {\n background-color: var(--stepper-color);\n }\n}\n\n.content {\n padding-top: var(--stepper-content-padding);\n}\n\n.step {\n --step-color: var(--stepper-color);\n\n display: flex;\n cursor: default;\n\n &:where([data-allow-click]) {\n cursor: pointer;\n }\n\n &:where([data-icon-position='left']) {\n flex-direction: row;\n }\n\n &:where([data-icon-position='right']) {\n flex-direction: row-reverse;\n }\n}\n\n.step--horizontal {\n align-items: center;\n}\n\n.step--vertical {\n --separator-spacing: calc(var(--mantine-spacing-xs) / 2);\n\n justify-content: flex-start;\n min-height: calc(var(--stepper-icon-size) + var(--mantine-spacing-xl) + var(--separator-spacing));\n margin-top: var(--separator-spacing);\n overflow: hidden;\n\n &:where(:first-of-type) {\n margin-top: 0;\n }\n\n &:where(:last-of-type) {\n min-height: auto;\n\n & .verticalSeparator {\n display: none;\n }\n }\n}\n\n.stepWrapper {\n position: relative;\n}\n\n.verticalSeparator {\n top: calc(var(--stepper-icon-size) + var(--separator-spacing));\n inset-inline-start: calc(var(--stepper-icon-size) / 2);\n height: 100vh;\n position: absolute;\n border-inline-start: var(--stepper-outline-thickness) solid var(--stepper-outline-color);\n\n &:where([data-active]) {\n border-color: var(--stepper-color);\n }\n}\n\n.stepIcon {\n height: var(--stepper-icon-size);\n width: var(--stepper-icon-size);\n min-height: var(--stepper-icon-size);\n min-width: var(--stepper-icon-size);\n border-radius: var(--stepper-radius);\n font-size: var(--stepper-fz);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n font-weight: bold;\n transition:\n background-color 150ms ease,\n border-color 150ms ease;\n border: var(--stepper-outline-thickness) solid var(--stepper-outline-color);\n background-color: var(--stepper-outline-color);\n\n @mixin where-light {\n color: var(--mantine-color-gray-7);\n }\n\n @mixin where-dark {\n color: var(--mantine-color-dark-1);\n }\n\n &:where([data-progress]) {\n border-color: var(--step-color);\n }\n\n &:where([data-completed]) {\n color: var(--stepper-icon-color, var(--mantine-color-white));\n background-color: var(--step-color);\n border-color: var(--step-color);\n }\n}\n\n.stepIconContent {\n display: flex;\n}\n\n.stepCompletedIcon {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--stepper-icon-color, var(--mantine-color-white));\n}\n\n.stepBody {\n display: flex;\n flex-direction: column;\n\n &:where([data-icon-position='left']) {\n margin-inline-start: var(--mantine-spacing-sm);\n }\n\n &:where([data-icon-position='right']) {\n text-align:
|
|
1
|
+
{"version":3,"file":"Stepper.module.mjs","names":[],"sources":["../../../src/components/Stepper/Stepper.module.css"],"sourcesContent":[".root {\n --stepper-icon-size-xs: 34px;\n --stepper-icon-size-sm: 36px;\n --stepper-icon-size-md: 42px;\n --stepper-icon-size-lg: 48px;\n --stepper-icon-size-xl: 52px;\n\n --stepper-icon-size: var(--stepper-icon-size-md);\n --stepper-color: var(--mantine-primary-color-filled);\n --stepper-content-padding: var(--mantine-spacing-md);\n --stepper-spacing: var(--mantine-spacing-md);\n --stepper-radius: 1000px;\n --stepper-fz: var(--mantine-font-size-md);\n --stepper-outline-thickness: 2px;\n\n @mixin light {\n --stepper-outline-color: var(--mantine-color-gray-2);\n }\n\n @mixin dark {\n --stepper-outline-color: var(--mantine-color-dark-5);\n }\n}\n\n.steps {\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n\n &:where([data-wrap]) {\n flex-wrap: wrap;\n gap: var(--mantine-spacing-md) 0;\n }\n\n &:where([data-orientation='vertical']) {\n flex-direction: column;\n\n &:where([data-icon-position='left']) {\n align-items: flex-start;\n }\n\n &:where([data-icon-position='right']) {\n align-items: flex-end;\n }\n }\n\n &:where([data-orientation='horizontal']) {\n flex-direction: row;\n }\n}\n\n.separator {\n transition: background-color 150ms ease;\n flex: 1;\n height: var(--stepper-outline-thickness);\n margin-inline: var(--mantine-spacing-md);\n background-color: var(--stepper-outline-color);\n\n &:where([data-active]) {\n background-color: var(--stepper-color);\n }\n}\n\n.content {\n padding-top: var(--stepper-content-padding);\n}\n\n.step {\n --step-color: var(--stepper-color);\n\n display: flex;\n cursor: default;\n\n &:where([data-allow-click]) {\n cursor: pointer;\n }\n\n &:where([data-icon-position='left']) {\n flex-direction: row;\n }\n\n &:where([data-icon-position='right']) {\n flex-direction: row-reverse;\n }\n}\n\n.step--horizontal {\n align-items: center;\n}\n\n.step--vertical {\n --separator-spacing: calc(var(--mantine-spacing-xs) / 2);\n\n justify-content: flex-start;\n min-height: calc(var(--stepper-icon-size) + var(--mantine-spacing-xl) + var(--separator-spacing));\n margin-top: var(--separator-spacing);\n overflow: hidden;\n\n &:where(:first-of-type) {\n margin-top: 0;\n }\n\n &:where(:last-of-type) {\n min-height: auto;\n\n & .verticalSeparator {\n display: none;\n }\n }\n}\n\n.stepWrapper {\n position: relative;\n}\n\n.verticalSeparator {\n top: calc(var(--stepper-icon-size) + var(--separator-spacing));\n inset-inline-start: calc(var(--stepper-icon-size) / 2);\n height: 100vh;\n position: absolute;\n border-inline-start: var(--stepper-outline-thickness) solid var(--stepper-outline-color);\n\n &:where([data-active]) {\n border-color: var(--stepper-color);\n }\n}\n\n.stepIcon {\n height: var(--stepper-icon-size);\n width: var(--stepper-icon-size);\n min-height: var(--stepper-icon-size);\n min-width: var(--stepper-icon-size);\n border-radius: var(--stepper-radius);\n font-size: var(--stepper-fz);\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n font-weight: bold;\n transition:\n background-color 150ms ease,\n border-color 150ms ease;\n border: var(--stepper-outline-thickness) solid var(--stepper-outline-color);\n background-color: var(--stepper-outline-color);\n\n @mixin where-light {\n color: var(--mantine-color-gray-7);\n }\n\n @mixin where-dark {\n color: var(--mantine-color-dark-1);\n }\n\n &:where([data-progress]) {\n border-color: var(--step-color);\n }\n\n &:where([data-completed]) {\n color: var(--stepper-icon-color, var(--mantine-color-white));\n background-color: var(--step-color);\n border-color: var(--step-color);\n }\n}\n\n.stepIconContent {\n display: flex;\n}\n\n.stepCompletedIcon {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--stepper-icon-color, var(--mantine-color-white));\n}\n\n.stepBody {\n display: flex;\n flex-direction: column;\n\n &:where([data-icon-position='left']) {\n margin-inline-start: var(--mantine-spacing-sm);\n }\n\n &:where([data-icon-position='right']) {\n text-align: end;\n margin-inline-end: var(--mantine-spacing-sm);\n }\n}\n\n.stepLabel {\n font-weight: var(--mantine-font-weight-medium);\n font-size: var(--stepper-fz);\n line-height: 1;\n}\n\n.stepDescription {\n margin-top: calc(var(--stepper-spacing) / 3);\n margin-bottom: calc(var(--stepper-spacing) / 3);\n font-size: calc(var(--stepper-fz) - rem(2px));\n line-height: 1;\n color: var(--mantine-color-dimmed);\n}\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.module.mjs","names":[],"sources":["../../../src/components/Table/Table.module.css"],"sourcesContent":[".table {\n width: 100%;\n border-collapse: collapse;\n border-spacing: 0;\n line-height: var(--mantine-line-height);\n font-size: var(--mantine-font-size-sm);\n table-layout: var(--table-layout, auto);\n caption-side: var(--table-caption-side, bottom);\n border: none;\n\n @mixin where-light {\n --table-hover-color: var(--mantine-color-gray-1);\n --table-striped-color: var(--mantine-color-gray-0);\n --table-border-color: var(--mantine-color-gray-3);\n }\n\n @mixin where-dark {\n --table-hover-color: var(--mantine-color-dark-5);\n --table-striped-color: var(--mantine-color-dark-6);\n --table-border-color: var(--mantine-color-dark-4);\n }\n\n &:where([data-with-table-border]) {\n border: rem(1px) solid var(--table-border-color);\n }\n\n &:where([data-tabular-nums]) {\n font-variant-numeric: tabular-nums;\n }\n\n &:where([data-variant='vertical']) :where(.th) {\n font-weight: var(--mantine-font-weight-medium);\n\n @mixin where-light {\n background-color: var(--mantine-color-gray-0);\n }\n\n @mixin where-dark {\n background-color: var(--mantine-color-dark-6);\n }\n }\n}\n\n.th {\n text-align:
|
|
1
|
+
{"version":3,"file":"Table.module.mjs","names":[],"sources":["../../../src/components/Table/Table.module.css"],"sourcesContent":[".table {\n width: 100%;\n border-collapse: collapse;\n border-spacing: 0;\n line-height: var(--mantine-line-height);\n font-size: var(--mantine-font-size-sm);\n table-layout: var(--table-layout, auto);\n caption-side: var(--table-caption-side, bottom);\n border: none;\n\n @mixin where-light {\n --table-hover-color: var(--mantine-color-gray-1);\n --table-striped-color: var(--mantine-color-gray-0);\n --table-border-color: var(--mantine-color-gray-3);\n }\n\n @mixin where-dark {\n --table-hover-color: var(--mantine-color-dark-5);\n --table-striped-color: var(--mantine-color-dark-6);\n --table-border-color: var(--mantine-color-dark-4);\n }\n\n &:where([data-with-table-border]) {\n border: rem(1px) solid var(--table-border-color);\n }\n\n &:where([data-tabular-nums]) {\n font-variant-numeric: tabular-nums;\n }\n\n &:where([data-variant='vertical']) :where(.th) {\n font-weight: var(--mantine-font-weight-medium);\n\n @mixin where-light {\n background-color: var(--mantine-color-gray-0);\n }\n\n @mixin where-dark {\n background-color: var(--mantine-color-dark-6);\n }\n }\n}\n\n.th {\n text-align: start;\n}\n\n.tr {\n border-bottom: none;\n background-color: transparent;\n\n @mixin hover {\n &:where([data-hover]) {\n background-color: var(--tr-hover-bg);\n }\n }\n\n &:where([data-with-row-border]) {\n border-bottom: rem(1px) solid var(--table-border-color);\n }\n}\n\n.td,\n.th {\n padding: var(--table-vertical-spacing) var(--table-horizontal-spacing, var(--mantine-spacing-xs));\n\n &:where([data-with-column-border]:not(:first-child)) {\n border-inline-start: rem(1px) solid var(--table-border-color);\n }\n\n &:where([data-with-column-border]:not(:last-child)) {\n border-inline-end: rem(1px) solid var(--table-border-color);\n }\n}\n\n.tbody {\n & > :where(tr) {\n &:where([data-with-row-border]:last-of-type) {\n border-bottom: none;\n }\n\n &:where([data-striped='odd']:nth-of-type(odd)) {\n background-color: var(--table-striped-color);\n }\n\n &:where([data-striped='even']:nth-of-type(even)) {\n background-color: var(--table-striped-color);\n }\n\n &[data-hover] {\n --tr-hover-bg: var(--table-highlight-on-hover-color, var(--table-hover-color));\n }\n }\n}\n\n.thead {\n top: var(--table-sticky-header-offset, 0);\n z-index: 3;\n\n &:where([data-sticky]) {\n position: sticky;\n\n & :where(.th) {\n position: sticky;\n top: var(--table-sticky-header-offset, 0);\n background-color: var(--mantine-color-body);\n }\n\n /* border-collapse: collapse drops borders on position: sticky cells —\n the tr's border-bottom scrolls away with the row, so redraw it with\n box-shadow on the (sticky) th. The tr's border-bottom is suppressed\n here so the two don't stack into a double line. */\n & :where(.tr[data-with-row-border]) {\n border-bottom: none;\n }\n\n & :where(.tr[data-with-row-border]) :where(.th) {\n box-shadow: inset 0 -1px 0 var(--table-border-color);\n }\n\n & :where(.th[data-with-column-border]) {\n border-inline-start: none;\n border-inline-end: none;\n }\n\n /* Single pseudo-element per internal boundary, centered on the boundary\n (-0.5px) to align with the body's border-collapse line. */\n & :where(.th[data-with-column-border]:not(:first-child))::before {\n content: '';\n position: absolute;\n inset-block: 0;\n inset-inline-start: -0.5px;\n width: 1px;\n background-color: var(--table-border-color);\n }\n }\n}\n\n:where([data-with-table-border]) .thead[data-sticky] {\n position: sticky;\n top: var(--table-sticky-header-offset, 0);\n z-index: 4;\n border-top: none;\n}\n\n:where([data-with-table-border]) .thead[data-sticky]::before {\n content: '';\n display: block;\n position: absolute;\n left: 0;\n top: -0.5px;\n width: 100%;\n height: 1px;\n background-color: var(--table-border-color);\n z-index: 5;\n}\n\n:where([data-with-table-border]) .thead[data-sticky] .th:first-child {\n border-top: none;\n}\n\n.caption {\n color: var(--mantine-color-dimmed);\n\n &:where([data-side='top']) {\n margin-bottom: var(--mantine-spacing-xs);\n }\n\n &:where([data-side='bottom']) {\n margin-top: var(--mantine-spacing-xs);\n }\n}\n\n.scrollContainer {\n overflow-x: var(--table-overflow);\n}\n\n.scrollContainerInner {\n min-width: var(--table-min-width);\n max-height: var(--table-max-height);\n}\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.module.mjs","names":[],"sources":["../../../src/components/Tabs/Tabs.module.css"],"sourcesContent":[".root {\n @mixin light {\n --tab-border-color: var(--mantine-color-gray-3);\n }\n\n @mixin dark {\n --tab-border-color: var(--mantine-color-dark-4);\n }\n\n display: var(--tabs-display);\n flex-direction: var(--tabs-flex-direction);\n\n --tabs-list-direction: row;\n --tabs-panel-grow: unset;\n --tabs-display: block;\n --tabs-flex-direction: row;\n --tabs-list-border-width: 0;\n --tabs-list-border-size: 0 0 var(--tabs-list-border-width) 0;\n --tabs-list-gap: unset;\n\n --tabs-list-line-bottom: 0;\n --tabs-list-line-top: unset;\n --tabs-list-line-start: 0;\n --tabs-list-line-end: 0;\n\n --tab-radius: var(--tabs-radius) var(--tabs-radius) 0 0;\n --tab-border-width: 0 0 var(--tabs-list-border-width) 0;\n\n &[data-inverted] {\n --tabs-list-line-bottom: unset;\n --tabs-list-line-top: 0;\n --tab-radius: 0 0 var(--tabs-radius) var(--tabs-radius);\n --tab-border-width: var(--tabs-list-border-width) 0 0 0;\n\n & .list--default::before {\n top: 0;\n bottom: unset;\n }\n }\n\n &[data-orientation='vertical'] {\n --tabs-list-line-start: unset;\n --tabs-list-line-end: 0;\n --tabs-list-line-top: 0;\n --tabs-list-line-bottom: 0;\n --tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;\n --tab-border-width: 0 var(--tabs-list-border-width) 0 0;\n --tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);\n --tabs-list-direction: column;\n --tabs-panel-grow: 1;\n --tabs-display: flex;\n\n @mixin rtl {\n --tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);\n --tab-border-width: 0 0 0 var(--tabs-list-border-width);\n --tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0;\n }\n\n &[data-placement='right'] {\n --tabs-flex-direction: row-reverse;\n --tabs-list-line-start: 0;\n --tabs-list-line-end: unset;\n --tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);\n --tab-border-width: 0 0 0 var(--tabs-list-border-width);\n --tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0;\n\n @mixin rtl {\n --tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;\n --tab-border-width: 0 var(--tabs-list-border-width) 0 0;\n --tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);\n }\n }\n }\n\n &[data-variant='default'] {\n --tabs-list-border-width: 2px;\n\n @mixin light {\n --tab-hover-color: var(--mantine-color-gray-0);\n }\n\n @mixin dark {\n --tab-hover-color: var(--mantine-color-dark-6);\n }\n }\n\n &[data-variant='outline'] {\n --tabs-list-border-width: 1px;\n }\n\n &[data-variant='pills'] {\n --tabs-list-gap: calc(var(--mantine-spacing-sm) / 2);\n\n @mixin light {\n --tab-hover-color: var(--mantine-color-gray-0);\n }\n\n @mixin dark {\n --tab-hover-color: var(--mantine-color-dark-6);\n }\n }\n}\n\n.list {\n display: flex;\n flex-wrap: wrap;\n justify-content: var(--tabs-justify, flex-start);\n flex-direction: var(--tabs-list-direction);\n gap: var(--tabs-list-gap);\n\n &:where([data-grow]) .tab {\n flex: 1;\n }\n}\n\n.panel {\n flex-grow: var(--tabs-panel-grow);\n}\n\n.tab {\n position: relative;\n padding: var(--mantine-spacing-xs) var(--mantine-spacing-md);\n font-size: var(--mantine-font-size-sm);\n white-space: nowrap;\n z-index: 0;\n display: flex;\n align-items: center;\n line-height: 1;\n user-select: none;\n\n &:where(:disabled, [data-disabled]) {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n &:focus {\n z-index: 1;\n }\n}\n\n.tabSection {\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:where([data-position='left']:not(:only-child)) {\n margin-inline-end: var(--mantine-spacing-xs);\n }\n\n &:where([data-position='right']:not(:only-child)) {\n margin-inline-start: var(--mantine-spacing-xs);\n }\n}\n\n.tabLabel {\n flex: 1;\n text-align: center;\n}\n\n/*************************************** default variant ***************************************/\n.list--default {\n position: relative;\n\n &::before {\n content: '';\n position: absolute;\n border: 1px solid var(--tab-border-color);\n bottom: var(--tabs-list-line-bottom);\n inset-inline-start: var(--tabs-list-line-start);\n inset-inline-end: var(--tabs-list-line-end);\n top: var(--tabs-list-line-top);\n }\n}\n\n.tab--default {\n border-radius: var(--tab-radius);\n border-width: var(--tab-border-width);\n border-style: solid;\n border-color: transparent;\n background-color: transparent;\n\n &:where([data-active]) {\n border-color: var(--tabs-color);\n }\n\n @mixin hover {\n background-color: var(--tab-hover-color);\n\n &:where(:not([data-active])) {\n border-color: var(--tab-border-color);\n }\n }\n\n &:disabled,\n &[data-disabled] {\n @mixin hover {\n background-color: transparent;\n }\n }\n}\n\n/*************************************** outline variant ***************************************/\n.list--outline {\n position: relative;\n\n &::before {\n content: '';\n position: absolute;\n border-color: var(--tab-border-color);\n border-width: var(--tabs-list-border-size);\n border-style: solid;\n bottom: var(--tabs-list-line-bottom);\n inset-inline-start: var(--tabs-list-line-start);\n inset-inline-end: var(--tabs-list-line-end);\n top: var(--tabs-list-line-top);\n }\n}\n\n.tab--outline {\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n border-
|
|
1
|
+
{"version":3,"file":"Tabs.module.mjs","names":[],"sources":["../../../src/components/Tabs/Tabs.module.css"],"sourcesContent":[".root {\n @mixin light {\n --tab-border-color: var(--mantine-color-gray-3);\n }\n\n @mixin dark {\n --tab-border-color: var(--mantine-color-dark-4);\n }\n\n display: var(--tabs-display);\n flex-direction: var(--tabs-flex-direction);\n\n --tabs-list-direction: row;\n --tabs-panel-grow: unset;\n --tabs-display: block;\n --tabs-flex-direction: row;\n --tabs-list-border-width: 0;\n --tabs-list-border-size: 0 0 var(--tabs-list-border-width) 0;\n --tabs-list-gap: unset;\n\n --tabs-list-line-bottom: 0;\n --tabs-list-line-top: unset;\n --tabs-list-line-start: 0;\n --tabs-list-line-end: 0;\n\n --tab-radius: var(--tabs-radius) var(--tabs-radius) 0 0;\n --tab-border-width: 0 0 var(--tabs-list-border-width) 0;\n\n &[data-inverted] {\n --tabs-list-line-bottom: unset;\n --tabs-list-line-top: 0;\n --tab-radius: 0 0 var(--tabs-radius) var(--tabs-radius);\n --tab-border-width: var(--tabs-list-border-width) 0 0 0;\n\n & .list--default::before {\n top: 0;\n bottom: unset;\n }\n }\n\n &[data-orientation='vertical'] {\n --tabs-list-line-start: unset;\n --tabs-list-line-end: 0;\n --tabs-list-line-top: 0;\n --tabs-list-line-bottom: 0;\n --tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;\n --tab-border-width: 0 var(--tabs-list-border-width) 0 0;\n --tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);\n --tabs-list-direction: column;\n --tabs-panel-grow: 1;\n --tabs-display: flex;\n\n @mixin rtl {\n --tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);\n --tab-border-width: 0 0 0 var(--tabs-list-border-width);\n --tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0;\n }\n\n &[data-placement='right'] {\n --tabs-flex-direction: row-reverse;\n --tabs-list-line-start: 0;\n --tabs-list-line-end: unset;\n --tabs-list-border-size: 0 0 0 var(--tabs-list-border-width);\n --tab-border-width: 0 0 0 var(--tabs-list-border-width);\n --tab-radius: 0 var(--tabs-radius) var(--tabs-radius) 0;\n\n @mixin rtl {\n --tabs-list-border-size: 0 var(--tabs-list-border-width) 0 0;\n --tab-border-width: 0 var(--tabs-list-border-width) 0 0;\n --tab-radius: var(--tabs-radius) 0 0 var(--tabs-radius);\n }\n }\n }\n\n &[data-variant='default'] {\n --tabs-list-border-width: 2px;\n\n @mixin light {\n --tab-hover-color: var(--mantine-color-gray-0);\n }\n\n @mixin dark {\n --tab-hover-color: var(--mantine-color-dark-6);\n }\n }\n\n &[data-variant='outline'] {\n --tabs-list-border-width: 1px;\n }\n\n &[data-variant='pills'] {\n --tabs-list-gap: calc(var(--mantine-spacing-sm) / 2);\n\n @mixin light {\n --tab-hover-color: var(--mantine-color-gray-0);\n }\n\n @mixin dark {\n --tab-hover-color: var(--mantine-color-dark-6);\n }\n }\n}\n\n.list {\n display: flex;\n flex-wrap: wrap;\n justify-content: var(--tabs-justify, flex-start);\n flex-direction: var(--tabs-list-direction);\n gap: var(--tabs-list-gap);\n\n &:where([data-grow]) .tab {\n flex: 1;\n }\n}\n\n.panel {\n flex-grow: var(--tabs-panel-grow);\n}\n\n.tab {\n position: relative;\n padding: var(--mantine-spacing-xs) var(--mantine-spacing-md);\n font-size: var(--mantine-font-size-sm);\n white-space: nowrap;\n z-index: 0;\n display: flex;\n align-items: center;\n line-height: 1;\n user-select: none;\n\n &:where(:disabled, [data-disabled]) {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n &:focus {\n z-index: 1;\n }\n}\n\n.tabSection {\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:where([data-position='left']:not(:only-child)) {\n margin-inline-end: var(--mantine-spacing-xs);\n }\n\n &:where([data-position='right']:not(:only-child)) {\n margin-inline-start: var(--mantine-spacing-xs);\n }\n}\n\n.tabLabel {\n flex: 1;\n text-align: center;\n}\n\n/*************************************** default variant ***************************************/\n.list--default {\n position: relative;\n\n &::before {\n content: '';\n position: absolute;\n border: 1px solid var(--tab-border-color);\n bottom: var(--tabs-list-line-bottom);\n inset-inline-start: var(--tabs-list-line-start);\n inset-inline-end: var(--tabs-list-line-end);\n top: var(--tabs-list-line-top);\n }\n}\n\n.tab--default {\n border-radius: var(--tab-radius);\n border-width: var(--tab-border-width);\n border-style: solid;\n border-color: transparent;\n background-color: transparent;\n\n &:where([data-active]) {\n border-color: var(--tabs-color);\n }\n\n @mixin hover {\n background-color: var(--tab-hover-color);\n\n &:where(:not([data-active])) {\n border-color: var(--tab-border-color);\n }\n }\n\n &:disabled,\n &[data-disabled] {\n @mixin hover {\n background-color: transparent;\n }\n }\n}\n\n/*************************************** outline variant ***************************************/\n.list--outline {\n position: relative;\n\n &::before {\n content: '';\n position: absolute;\n border-color: var(--tab-border-color);\n border-width: var(--tabs-list-border-size);\n border-style: solid;\n bottom: var(--tabs-list-line-bottom);\n inset-inline-start: var(--tabs-list-line-start);\n inset-inline-end: var(--tabs-list-line-end);\n top: var(--tabs-list-line-top);\n }\n}\n\n.tab--outline {\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n border-inline: 1px solid transparent;\n border-top-color: var(--tab-border-top-color);\n border-bottom-color: var(--tab-border-bottom-color);\n border-radius: var(--tab-radius);\n position: relative;\n\n --tab-border-bottom-color: transparent;\n --tab-border-top-color: transparent;\n --tab-border-inline-end-color: transparent;\n --tab-border-inline-start-color: transparent;\n\n &:where([data-active]) {\n &::before {\n content: '';\n position: absolute;\n background-color: var(--tab-border-color);\n bottom: var(--tab-before-bottom, rem(-1px));\n inset-inline-start: var(--tab-before-start, rem(-1px));\n inset-inline-end: var(--tab-before-end, auto);\n top: var(--tab-before-top, auto);\n width: 1px;\n height: 1px;\n }\n\n &::after {\n content: '';\n position: absolute;\n background-color: var(--tab-border-color);\n bottom: var(--tab-after-bottom, rem(-1px));\n inset-inline-end: var(--tab-after-end, rem(-1px));\n inset-inline-start: var(--tab-after-start, auto);\n top: var(--tab-after-top, auto);\n width: 1px;\n height: 1px;\n }\n\n border-top-color: var(--tab-border-top-color);\n border-bottom-color: var(--tab-border-bottom-color);\n border-inline-start-color: var(--tab-border-inline-start-color);\n border-inline-end-color: var(--tab-border-inline-end-color);\n\n --tab-border-top-color: var(--tab-border-color);\n --tab-border-inline-start-color: var(--tab-border-color);\n --tab-border-inline-end-color: var(--tab-border-color);\n --tab-border-bottom-color: var(--mantine-color-body);\n\n &[data-inverted] {\n --tab-border-bottom-color: var(--tab-border-color);\n --tab-border-top-color: var(--mantine-color-body);\n\n --tab-before-bottom: auto;\n --tab-before-top: -1px;\n --tab-after-bottom: auto;\n --tab-after-top: -1px;\n }\n\n &[data-orientation='vertical'] {\n &[data-placement='left'] {\n --tab-border-inline-end-color: var(--mantine-color-body);\n --tab-border-inline-start-color: var(--tab-border-color);\n --tab-border-bottom-color: var(--tab-border-color);\n\n --tab-before-end: -1px;\n --tab-before-start: auto;\n --tab-before-bottom: auto;\n --tab-before-top: -1px;\n --tab-after-start: auto;\n --tab-after-end: -1px;\n }\n\n &[data-placement='right'] {\n --tab-border-inline-start-color: var(--mantine-color-body);\n --tab-border-inline-end-color: var(--tab-border-color);\n --tab-border-bottom-color: var(--tab-border-color);\n\n --tab-before-start: -1px;\n --tab-before-end: auto;\n --tab-before-bottom: auto;\n --tab-before-top: -1px;\n --tab-after-end: auto;\n --tab-after-start: -1px;\n }\n }\n }\n}\n\n/*************************************** pills variant ***************************************/\n.tab--pills {\n border-radius: var(--tabs-radius);\n background-color: var(--tab-bg);\n color: var(--tab-color);\n\n --tab-bg: transparent;\n --tab-color: inherit;\n\n &:not([data-disabled]) {\n @mixin hover {\n --tab-bg: var(--tab-hover-color);\n }\n }\n\n &[data-active][data-active] {\n --tab-bg: var(--tabs-color);\n --tab-color: var(--tabs-text-color, var(--mantine-color-white));\n\n @mixin hover {\n --tab-bg: var(--tabs-color);\n }\n }\n}\n"],"mappings":""}
|
|
@@ -33,7 +33,7 @@ const TagsInput = factory((_props) => {
|
|
|
33
33
|
"InputWrapper",
|
|
34
34
|
"TagsInput"
|
|
35
35
|
], defaultProps, _props);
|
|
36
|
-
const { classNames, className, style, styles, unstyled, vars, size, value, defaultValue, onChange, onKeyDown, maxTags, allowDuplicates, onDuplicate, variant, data, dropdownOpened, defaultDropdownOpened, onDropdownOpen, onDropdownClose, selectFirstOptionOnChange, selectFirstOptionOnDropdownOpen, onOptionSubmit, comboboxProps, filter, limit, withScrollArea, maxDropdownHeight, searchValue, defaultSearchValue, onSearchChange, readOnly, disabled, splitChars, onFocus, onBlur, onPaste, radius, rightSection, rightSectionWidth, rightSectionPointerEvents, rightSectionProps, leftSection, leftSectionWidth, leftSectionPointerEvents, leftSectionProps, inputContainer, inputWrapperOrder, withAsterisk, required, labelProps, descriptionProps, errorProps, wrapperProps, description, label, error, withErrorStyles, name, form, id, clearable, clearSectionMode, clearButtonProps, hiddenInputProps, hiddenInputValuesDivider, mod, renderOption, renderPill, onRemove, onClear, onMaxTags, scrollAreaProps, acceptValueOnBlur, isDuplicate, openOnFocus, attributes, ref, loading, loadingPosition, withPillsReorder, ...others } = props;
|
|
36
|
+
const { classNames, className, style, styles, unstyled, vars, size, value, defaultValue, onChange, onKeyDown, maxTags, allowDuplicates, onDuplicate, variant, data, dropdownOpened, defaultDropdownOpened, onDropdownOpen, onDropdownClose, selectFirstOptionOnChange, selectFirstOptionOnDropdownOpen, onOptionSubmit, comboboxProps, filter, limit, withScrollArea, maxDropdownHeight, floatingHeight, searchValue, defaultSearchValue, onSearchChange, readOnly, disabled, splitChars, onFocus, onBlur, onPaste, radius, rightSection, rightSectionWidth, rightSectionPointerEvents, rightSectionProps, leftSection, leftSectionWidth, leftSectionPointerEvents, leftSectionProps, inputContainer, inputWrapperOrder, withAsterisk, required, labelProps, descriptionProps, errorProps, wrapperProps, description, label, error, withErrorStyles, name, form, id, clearable, clearSectionMode, clearButtonProps, hiddenInputProps, hiddenInputValuesDivider, mod, renderOption, renderPill, onRemove, onClear, onMaxTags, scrollAreaProps, acceptValueOnBlur, isDuplicate, openOnFocus, attributes, ref, loading, loadingPosition, withPillsReorder, ...others } = props;
|
|
37
37
|
const _id = useId$1(id);
|
|
38
38
|
const parsedData = getParsedComboboxData(data);
|
|
39
39
|
const optionsLockup = getOptionsLockup(parsedData);
|
|
@@ -203,6 +203,7 @@ const TagsInput = factory((_props) => {
|
|
|
203
203
|
readOnly,
|
|
204
204
|
__staticSelector: "TagsInput",
|
|
205
205
|
attributes,
|
|
206
|
+
floatingHeight,
|
|
206
207
|
onOptionSubmit: (val) => {
|
|
207
208
|
onOptionSubmit?.(val);
|
|
208
209
|
handleSearchChange("");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TagsInput.mjs","names":["useId"],"sources":["../../../src/components/TagsInput/TagsInput.tsx"],"sourcesContent":["import { Fragment, useEffect, useRef } from 'react';\nimport { useId, useMergedRef, useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n ElementProps,\n extractStyleProps,\n factory,\n Factory,\n Primitive,\n StylesApiProps,\n useProps,\n useResolvedStylesApi,\n useStyles,\n} from '../../core';\nimport {\n Combobox,\n ComboboxGenericData,\n ComboboxGenericItem,\n ComboboxLikeProps,\n ComboboxLikeRenderOptionInput,\n ComboboxLikeStylesNames,\n ComboboxRenderPillInput,\n getOptionsLockup,\n getParsedComboboxData,\n OptionsDropdown,\n OptionsFilter,\n useCombobox,\n usePillsReorder,\n} from '../Combobox';\nimport {\n __BaseInputProps,\n __InputStylesNames,\n ClearSectionMode,\n InputClearButtonProps,\n} from '../Input';\nimport { InputBase } from '../InputBase';\nimport { Pill } from '../Pill';\nimport { PillsInput } from '../PillsInput';\nimport { ScrollAreaProps } from '../ScrollArea';\nimport { filterPickedTags } from './filter-picked-tags';\nimport { getSplittedTags } from './get-splitted-tags';\n\nexport type TagsInputStylesNames =\n | __InputStylesNames\n | ComboboxLikeStylesNames\n | 'pill'\n | 'pillsList'\n | 'inputField';\n\nexport interface TagsInputProps\n extends\n BoxProps,\n __BaseInputProps,\n Omit<ComboboxLikeProps, 'data'>,\n StylesApiProps<TagsInputFactory>,\n ElementProps<'input', 'size' | 'value' | 'defaultValue' | 'onChange'> {\n /** Data displayed in the dropdown. Values must be unique. */\n data?: ComboboxGenericData;\n\n /** Controlled component value */\n value?: string[];\n\n /** Uncontrolled component default value */\n defaultValue?: string[];\n\n /** Called when value changes */\n onChange?: (value: string[]) => void;\n\n /** Called when tag is removed */\n onRemove?: (value: string) => void;\n\n /** Called when the clear button is clicked */\n onClear?: () => void;\n\n /** Controlled search value */\n searchValue?: string;\n\n /** Default search value */\n defaultSearchValue?: string;\n\n /** Called when search changes */\n onSearchChange?: (value: string) => void;\n\n /** Maximum number of tags @default Infinity */\n maxTags?: number;\n\n /** Called when user tries to add more tags than maxTags */\n onMaxTags?: (value: string) => void;\n\n /** If set, duplicate tags are allowed @default false */\n allowDuplicates?: boolean;\n\n /** Called when user tries to submit a duplicated tag */\n onDuplicate?: (value: string) => void;\n\n /** Characters that should trigger tags split, `[',']` by default */\n splitChars?: string[];\n\n /** If set, the clear button is displayed in the right section when the component has value @default false */\n clearable?: boolean;\n\n /** Determines how the clear button and rightSection are rendered @default 'both' */\n clearSectionMode?: ClearSectionMode;\n\n /** Props passed down to the clear button */\n clearButtonProps?: InputClearButtonProps;\n\n /** Props passed down to the hidden input */\n hiddenInputProps?: Omit<React.ComponentProps<'input'>, 'value'>;\n\n /** Divider used to separate values in the hidden input `value` attribute @default ',' */\n hiddenInputValuesDivider?: string;\n\n /** A function to render content of the option, replaces the default content of the option */\n renderOption?: (input: ComboboxLikeRenderOptionInput<ComboboxGenericItem>) => React.ReactNode;\n\n /** A function to render content of the pill, replaces the default content of the pill */\n renderPill?: (props: ComboboxRenderPillInput) => React.ReactNode;\n\n /** Props passed down to the underlying `ScrollArea` component in the dropdown */\n scrollAreaProps?: ScrollAreaProps;\n\n /** If set, the value typed in by the user but not submitted is accepted when the input is blurred @default true */\n acceptValueOnBlur?: boolean;\n\n /** Custom function to determine if a tag is duplicate. Accepts tag value and array of current values. By default, checks if the tag exists case-insensitively. */\n isDuplicate?: (value: string, currentValues: string[]) => boolean;\n\n /** If set, the dropdown opens when the input receives focus @default true */\n openOnFocus?: boolean;\n\n /** If set, tags can be reordered by dragging pills. Disabled when `disabled` or `readOnly` is set. @default false */\n withPillsReorder?: boolean;\n}\n\nexport type TagsInputFactory = Factory<{\n props: TagsInputProps;\n ref: HTMLInputElement;\n stylesNames: TagsInputStylesNames;\n}>;\n\nconst defaultProps = {\n maxTags: Infinity,\n acceptValueOnBlur: true,\n splitChars: [','],\n hiddenInputValuesDivider: ',',\n openOnFocus: true,\n size: 'sm',\n} satisfies Partial<TagsInputProps>;\n\nexport const TagsInput = factory<TagsInputFactory>((_props) => {\n const props = useProps(['Input', 'InputWrapper', 'TagsInput'], defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n size,\n value,\n defaultValue,\n onChange,\n onKeyDown,\n maxTags,\n allowDuplicates,\n onDuplicate,\n variant,\n data,\n dropdownOpened,\n defaultDropdownOpened,\n onDropdownOpen,\n onDropdownClose,\n selectFirstOptionOnChange,\n selectFirstOptionOnDropdownOpen,\n onOptionSubmit,\n comboboxProps,\n filter,\n limit,\n withScrollArea,\n maxDropdownHeight,\n searchValue,\n defaultSearchValue,\n onSearchChange,\n readOnly,\n disabled,\n splitChars,\n onFocus,\n onBlur,\n onPaste,\n radius,\n rightSection,\n rightSectionWidth,\n rightSectionPointerEvents,\n rightSectionProps,\n leftSection,\n leftSectionWidth,\n leftSectionPointerEvents,\n leftSectionProps,\n inputContainer,\n inputWrapperOrder,\n withAsterisk,\n required,\n labelProps,\n descriptionProps,\n errorProps,\n wrapperProps,\n description,\n label,\n error,\n withErrorStyles,\n name,\n form,\n id,\n clearable,\n clearSectionMode,\n clearButtonProps,\n hiddenInputProps,\n hiddenInputValuesDivider,\n mod,\n renderOption,\n renderPill,\n onRemove,\n onClear,\n onMaxTags,\n scrollAreaProps,\n acceptValueOnBlur,\n isDuplicate,\n openOnFocus,\n attributes,\n ref,\n loading,\n loadingPosition,\n withPillsReorder,\n ...others\n } = props;\n\n const _id = useId(id);\n const parsedData = getParsedComboboxData(data);\n const optionsLockup = getOptionsLockup(parsedData);\n const inputRef = useRef<HTMLInputElement>(null);\n const _ref = useMergedRef(inputRef, ref);\n\n const combobox = useCombobox({\n opened: dropdownOpened,\n defaultOpened: defaultDropdownOpened,\n onDropdownOpen: () => {\n onDropdownOpen?.();\n if (selectFirstOptionOnDropdownOpen) {\n combobox.selectFirstOption();\n }\n },\n onDropdownClose: () => {\n onDropdownClose?.();\n combobox.resetSelectedOption();\n },\n });\n\n const {\n styleProps,\n rest: { type, autoComplete, ...rest },\n } = extractStyleProps(others);\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: [],\n onChange,\n });\n\n const { getPillProps, getListProps, handleInputKeyDown } = usePillsReorder({\n value: _value,\n onChange: setValue,\n enabled: withPillsReorder && !disabled && !readOnly,\n });\n\n const [_searchValue, setSearchValue] = useUncontrolled({\n value: searchValue,\n defaultValue: defaultSearchValue,\n finalValue: '',\n onChange: onSearchChange,\n });\n\n const handleSearchChange = (value: string) => {\n setSearchValue(value);\n combobox.resetSelectedOption();\n };\n\n const getStyles = useStyles<TagsInputFactory>({\n name: 'TagsInput',\n classes: {} as any,\n props: props as any,\n classNames,\n styles,\n unstyled,\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<TagsInputFactory>({\n props,\n styles,\n classNames,\n });\n\n const handleValueSelect = (val: string) => {\n const isDuplicated = isDuplicate\n ? isDuplicate(val, _value)\n : _value.some((tag) => tag.toLowerCase() === val.toLowerCase());\n\n if (isDuplicated) {\n onDuplicate?.(val);\n if (!allowDuplicates) {\n handleSearchChange('');\n return;\n }\n }\n\n if (_value.length >= maxTags) {\n onMaxTags?.(val);\n return;\n }\n\n onOptionSubmit?.(val);\n handleSearchChange('');\n if (val.length > 0) {\n setValue([..._value, val]);\n }\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown?.(event);\n\n if (event.defaultPrevented || event.isPropagationStopped()) {\n return;\n }\n\n const inputValue = _searchValue.trim();\n const { length } = inputValue;\n\n if (splitChars.includes(event.key) && length > 0) {\n setValue(\n getSplittedTags({\n splitChars,\n allowDuplicates,\n maxTags,\n value: _searchValue,\n currentTags: _value,\n isDuplicate,\n onDuplicate,\n })\n );\n handleSearchChange('');\n event.preventDefault();\n }\n\n if (event.key === 'Enter' && length > 0 && !event.nativeEvent.isComposing) {\n event.preventDefault();\n\n const hasActiveSelection = !!document.querySelector<HTMLDivElement>(\n `#${combobox.listId} [data-combobox-option][data-combobox-selected]`\n );\n\n if (hasActiveSelection) {\n return;\n }\n\n handleValueSelect(inputValue);\n }\n\n if (\n event.key === 'Backspace' &&\n length === 0 &&\n _value.length > 0 &&\n !event.nativeEvent.isComposing &&\n !readOnly\n ) {\n onRemove?.(_value[_value.length - 1]);\n setValue(_value.slice(0, _value.length - 1));\n }\n\n handleInputKeyDown(event);\n };\n\n const handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n onPaste?.(event);\n event.preventDefault();\n\n if (event.clipboardData) {\n const pastedText = event.clipboardData.getData('text/plain');\n setValue(\n getSplittedTags({\n splitChars,\n allowDuplicates,\n maxTags,\n value: `${_searchValue}${pastedText}`,\n currentTags: _value,\n isDuplicate,\n onDuplicate,\n })\n );\n handleSearchChange('');\n }\n };\n\n const values = _value.map((item, index) => {\n const onRemoveItem = () => {\n const next_value = _value.slice();\n next_value.splice(index, 1);\n setValue(next_value);\n onRemove?.(item);\n };\n\n const reorderProps = getPillProps(index);\n\n if (renderPill) {\n return (\n <Fragment key={`${item}-${index}`}>\n {renderPill({\n option: optionsLockup[item] || { value: item, label: item, disabled: false },\n value: item,\n onRemove: onRemoveItem,\n disabled: disabled || readOnly,\n reorderProps,\n })}\n </Fragment>\n );\n }\n\n return (\n <Pill\n key={`${item}-${index}`}\n withRemoveButton={!readOnly}\n onRemove={onRemoveItem}\n unstyled={unstyled}\n disabled={disabled}\n attributes={attributes}\n {...getStyles('pill')}\n {...reorderProps}\n >\n {item}\n </Pill>\n );\n });\n\n useEffect(() => {\n if (selectFirstOptionOnChange) {\n combobox.selectFirstOption();\n }\n }, [selectFirstOptionOnChange, _value, _searchValue]);\n\n const clearButton = (\n <Combobox.ClearButton\n {...clearButtonProps}\n onClear={() => {\n setValue([]);\n handleSearchChange('');\n inputRef.current?.focus();\n combobox.openDropdown();\n onClear?.();\n }}\n />\n );\n\n return (\n <>\n <Combobox\n store={combobox}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n size={size}\n readOnly={readOnly}\n __staticSelector=\"TagsInput\"\n attributes={attributes}\n onOptionSubmit={(val) => {\n onOptionSubmit?.(val);\n handleSearchChange('');\n\n if (_value.length >= maxTags) {\n onMaxTags?.(val);\n } else {\n setValue([..._value, optionsLockup[val].value]);\n }\n\n combobox.resetSelectedOption();\n }}\n {...comboboxProps}\n >\n <Combobox.DropdownTarget>\n <PillsInput\n {...styleProps}\n __staticSelector=\"TagsInput\"\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n size={size}\n className={className}\n style={style}\n variant={variant}\n disabled={disabled}\n radius={radius}\n rightSection={rightSection}\n __clearSection={clearButton}\n __clearable={clearable && _value.length > 0 && !disabled && !readOnly}\n __clearSectionMode={clearSectionMode}\n rightSectionWidth={rightSectionWidth}\n rightSectionPointerEvents={rightSectionPointerEvents}\n rightSectionProps={rightSectionProps}\n leftSection={leftSection}\n leftSectionWidth={leftSectionWidth}\n leftSectionPointerEvents={leftSectionPointerEvents}\n leftSectionProps={leftSectionProps}\n loading={loading}\n loadingPosition={loadingPosition}\n inputContainer={inputContainer}\n inputWrapperOrder={inputWrapperOrder}\n withAsterisk={withAsterisk}\n required={required}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorProps={errorProps}\n wrapperProps={wrapperProps}\n description={description}\n label={label}\n error={error}\n withErrorStyles={withErrorStyles}\n __stylesApiProps={{ ...props, multiline: true }}\n id={_id}\n mod={mod}\n attributes={attributes}\n >\n <Pill.Group\n disabled={disabled}\n unstyled={unstyled}\n {...getStyles('pillsList')}\n {...getListProps()}\n >\n {values}\n <Combobox.EventsTarget autoComplete={autoComplete} withExpandedAttribute>\n <PillsInput.Field\n {...rest}\n ref={_ref}\n {...getStyles('inputField')}\n unstyled={unstyled}\n onKeyDown={handleInputKeydown}\n onFocus={(event) => {\n onFocus?.(event);\n openOnFocus && combobox.openDropdown();\n }}\n onBlur={(event) => {\n onBlur?.(event);\n acceptValueOnBlur && handleValueSelect(_searchValue);\n combobox.closeDropdown();\n }}\n onPaste={handlePaste}\n value={_searchValue}\n onChange={(event) => handleSearchChange(event.currentTarget.value)}\n required={required && _value.length === 0}\n disabled={disabled}\n readOnly={readOnly}\n id={_id}\n />\n </Combobox.EventsTarget>\n </Pill.Group>\n </PillsInput>\n </Combobox.DropdownTarget>\n\n <OptionsDropdown\n data={filterPickedTags({ data: parsedData, value: _value })}\n hidden={readOnly || disabled}\n filter={filter as OptionsFilter<Primitive> | undefined}\n search={_searchValue}\n limit={limit}\n hiddenWhenEmpty\n withScrollArea={withScrollArea}\n maxDropdownHeight={maxDropdownHeight}\n unstyled={unstyled}\n labelId={label ? `${_id}-label` : undefined}\n aria-label={label ? undefined : others['aria-label']}\n renderOption={renderOption}\n scrollAreaProps={scrollAreaProps}\n />\n </Combobox>\n <Combobox.HiddenInput\n name={name}\n form={form}\n value={_value}\n valuesDivider={hiddenInputValuesDivider}\n disabled={disabled}\n {...hiddenInputProps}\n />\n </>\n );\n});\n\nTagsInput.classes = { ...InputBase.classes, ...Combobox.classes };\nTagsInput.displayName = '@mantine/core/TagsInput';\n\nexport namespace TagsInput {\n export type Props = TagsInputProps;\n export type StylesNames = TagsInputStylesNames;\n export type Factory = TagsInputFactory;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TagsInput.mjs","names":["useId"],"sources":["../../../src/components/TagsInput/TagsInput.tsx"],"sourcesContent":["import { Fragment, useEffect, useRef } from 'react';\nimport { useId, useMergedRef, useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n ElementProps,\n extractStyleProps,\n factory,\n Factory,\n Primitive,\n StylesApiProps,\n useProps,\n useResolvedStylesApi,\n useStyles,\n} from '../../core';\nimport {\n Combobox,\n ComboboxGenericData,\n ComboboxGenericItem,\n ComboboxLikeProps,\n ComboboxLikeRenderOptionInput,\n ComboboxLikeStylesNames,\n ComboboxRenderPillInput,\n getOptionsLockup,\n getParsedComboboxData,\n OptionsDropdown,\n OptionsFilter,\n useCombobox,\n usePillsReorder,\n} from '../Combobox';\nimport {\n __BaseInputProps,\n __InputStylesNames,\n ClearSectionMode,\n InputClearButtonProps,\n} from '../Input';\nimport { InputBase } from '../InputBase';\nimport { Pill } from '../Pill';\nimport { PillsInput } from '../PillsInput';\nimport { ScrollAreaProps } from '../ScrollArea';\nimport { filterPickedTags } from './filter-picked-tags';\nimport { getSplittedTags } from './get-splitted-tags';\n\nexport type TagsInputStylesNames =\n | __InputStylesNames\n | ComboboxLikeStylesNames\n | 'pill'\n | 'pillsList'\n | 'inputField';\n\nexport interface TagsInputProps\n extends\n BoxProps,\n __BaseInputProps,\n Omit<ComboboxLikeProps, 'data'>,\n StylesApiProps<TagsInputFactory>,\n ElementProps<'input', 'size' | 'value' | 'defaultValue' | 'onChange'> {\n /** Data displayed in the dropdown. Values must be unique. */\n data?: ComboboxGenericData;\n\n /** Controlled component value */\n value?: string[];\n\n /** Uncontrolled component default value */\n defaultValue?: string[];\n\n /** Called when value changes */\n onChange?: (value: string[]) => void;\n\n /** Called when tag is removed */\n onRemove?: (value: string) => void;\n\n /** Called when the clear button is clicked */\n onClear?: () => void;\n\n /** Controlled search value */\n searchValue?: string;\n\n /** Default search value */\n defaultSearchValue?: string;\n\n /** Called when search changes */\n onSearchChange?: (value: string) => void;\n\n /** Maximum number of tags @default Infinity */\n maxTags?: number;\n\n /** Called when user tries to add more tags than maxTags */\n onMaxTags?: (value: string) => void;\n\n /** If set, duplicate tags are allowed @default false */\n allowDuplicates?: boolean;\n\n /** Called when user tries to submit a duplicated tag */\n onDuplicate?: (value: string) => void;\n\n /** Characters that should trigger tags split, `[',']` by default */\n splitChars?: string[];\n\n /** If set, the clear button is displayed in the right section when the component has value @default false */\n clearable?: boolean;\n\n /** Determines how the clear button and rightSection are rendered @default 'both' */\n clearSectionMode?: ClearSectionMode;\n\n /** Props passed down to the clear button */\n clearButtonProps?: InputClearButtonProps;\n\n /** Props passed down to the hidden input */\n hiddenInputProps?: Omit<React.ComponentProps<'input'>, 'value'>;\n\n /** Divider used to separate values in the hidden input `value` attribute @default ',' */\n hiddenInputValuesDivider?: string;\n\n /** A function to render content of the option, replaces the default content of the option */\n renderOption?: (input: ComboboxLikeRenderOptionInput<ComboboxGenericItem>) => React.ReactNode;\n\n /** A function to render content of the pill, replaces the default content of the pill */\n renderPill?: (props: ComboboxRenderPillInput) => React.ReactNode;\n\n /** Props passed down to the underlying `ScrollArea` component in the dropdown */\n scrollAreaProps?: ScrollAreaProps;\n\n /** If set, the value typed in by the user but not submitted is accepted when the input is blurred @default true */\n acceptValueOnBlur?: boolean;\n\n /** Custom function to determine if a tag is duplicate. Accepts tag value and array of current values. By default, checks if the tag exists case-insensitively. */\n isDuplicate?: (value: string, currentValues: string[]) => boolean;\n\n /** If set, the dropdown opens when the input receives focus @default true */\n openOnFocus?: boolean;\n\n /** If set, tags can be reordered by dragging pills. Disabled when `disabled` or `readOnly` is set. @default false */\n withPillsReorder?: boolean;\n}\n\nexport type TagsInputFactory = Factory<{\n props: TagsInputProps;\n ref: HTMLInputElement;\n stylesNames: TagsInputStylesNames;\n}>;\n\nconst defaultProps = {\n maxTags: Infinity,\n acceptValueOnBlur: true,\n splitChars: [','],\n hiddenInputValuesDivider: ',',\n openOnFocus: true,\n size: 'sm',\n} satisfies Partial<TagsInputProps>;\n\nexport const TagsInput = factory<TagsInputFactory>((_props) => {\n const props = useProps(['Input', 'InputWrapper', 'TagsInput'], defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n size,\n value,\n defaultValue,\n onChange,\n onKeyDown,\n maxTags,\n allowDuplicates,\n onDuplicate,\n variant,\n data,\n dropdownOpened,\n defaultDropdownOpened,\n onDropdownOpen,\n onDropdownClose,\n selectFirstOptionOnChange,\n selectFirstOptionOnDropdownOpen,\n onOptionSubmit,\n comboboxProps,\n filter,\n limit,\n withScrollArea,\n maxDropdownHeight,\n floatingHeight,\n searchValue,\n defaultSearchValue,\n onSearchChange,\n readOnly,\n disabled,\n splitChars,\n onFocus,\n onBlur,\n onPaste,\n radius,\n rightSection,\n rightSectionWidth,\n rightSectionPointerEvents,\n rightSectionProps,\n leftSection,\n leftSectionWidth,\n leftSectionPointerEvents,\n leftSectionProps,\n inputContainer,\n inputWrapperOrder,\n withAsterisk,\n required,\n labelProps,\n descriptionProps,\n errorProps,\n wrapperProps,\n description,\n label,\n error,\n withErrorStyles,\n name,\n form,\n id,\n clearable,\n clearSectionMode,\n clearButtonProps,\n hiddenInputProps,\n hiddenInputValuesDivider,\n mod,\n renderOption,\n renderPill,\n onRemove,\n onClear,\n onMaxTags,\n scrollAreaProps,\n acceptValueOnBlur,\n isDuplicate,\n openOnFocus,\n attributes,\n ref,\n loading,\n loadingPosition,\n withPillsReorder,\n ...others\n } = props;\n\n const _id = useId(id);\n const parsedData = getParsedComboboxData(data);\n const optionsLockup = getOptionsLockup(parsedData);\n const inputRef = useRef<HTMLInputElement>(null);\n const _ref = useMergedRef(inputRef, ref);\n\n const combobox = useCombobox({\n opened: dropdownOpened,\n defaultOpened: defaultDropdownOpened,\n onDropdownOpen: () => {\n onDropdownOpen?.();\n if (selectFirstOptionOnDropdownOpen) {\n combobox.selectFirstOption();\n }\n },\n onDropdownClose: () => {\n onDropdownClose?.();\n combobox.resetSelectedOption();\n },\n });\n\n const {\n styleProps,\n rest: { type, autoComplete, ...rest },\n } = extractStyleProps(others);\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: [],\n onChange,\n });\n\n const { getPillProps, getListProps, handleInputKeyDown } = usePillsReorder({\n value: _value,\n onChange: setValue,\n enabled: withPillsReorder && !disabled && !readOnly,\n });\n\n const [_searchValue, setSearchValue] = useUncontrolled({\n value: searchValue,\n defaultValue: defaultSearchValue,\n finalValue: '',\n onChange: onSearchChange,\n });\n\n const handleSearchChange = (value: string) => {\n setSearchValue(value);\n combobox.resetSelectedOption();\n };\n\n const getStyles = useStyles<TagsInputFactory>({\n name: 'TagsInput',\n classes: {} as any,\n props: props as any,\n classNames,\n styles,\n unstyled,\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<TagsInputFactory>({\n props,\n styles,\n classNames,\n });\n\n const handleValueSelect = (val: string) => {\n const isDuplicated = isDuplicate\n ? isDuplicate(val, _value)\n : _value.some((tag) => tag.toLowerCase() === val.toLowerCase());\n\n if (isDuplicated) {\n onDuplicate?.(val);\n if (!allowDuplicates) {\n handleSearchChange('');\n return;\n }\n }\n\n if (_value.length >= maxTags) {\n onMaxTags?.(val);\n return;\n }\n\n onOptionSubmit?.(val);\n handleSearchChange('');\n if (val.length > 0) {\n setValue([..._value, val]);\n }\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown?.(event);\n\n if (event.defaultPrevented || event.isPropagationStopped()) {\n return;\n }\n\n const inputValue = _searchValue.trim();\n const { length } = inputValue;\n\n if (splitChars.includes(event.key) && length > 0) {\n setValue(\n getSplittedTags({\n splitChars,\n allowDuplicates,\n maxTags,\n value: _searchValue,\n currentTags: _value,\n isDuplicate,\n onDuplicate,\n })\n );\n handleSearchChange('');\n event.preventDefault();\n }\n\n if (event.key === 'Enter' && length > 0 && !event.nativeEvent.isComposing) {\n event.preventDefault();\n\n const hasActiveSelection = !!document.querySelector<HTMLDivElement>(\n `#${combobox.listId} [data-combobox-option][data-combobox-selected]`\n );\n\n if (hasActiveSelection) {\n return;\n }\n\n handleValueSelect(inputValue);\n }\n\n if (\n event.key === 'Backspace' &&\n length === 0 &&\n _value.length > 0 &&\n !event.nativeEvent.isComposing &&\n !readOnly\n ) {\n onRemove?.(_value[_value.length - 1]);\n setValue(_value.slice(0, _value.length - 1));\n }\n\n handleInputKeyDown(event);\n };\n\n const handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n onPaste?.(event);\n event.preventDefault();\n\n if (event.clipboardData) {\n const pastedText = event.clipboardData.getData('text/plain');\n setValue(\n getSplittedTags({\n splitChars,\n allowDuplicates,\n maxTags,\n value: `${_searchValue}${pastedText}`,\n currentTags: _value,\n isDuplicate,\n onDuplicate,\n })\n );\n handleSearchChange('');\n }\n };\n\n const values = _value.map((item, index) => {\n const onRemoveItem = () => {\n const next_value = _value.slice();\n next_value.splice(index, 1);\n setValue(next_value);\n onRemove?.(item);\n };\n\n const reorderProps = getPillProps(index);\n\n if (renderPill) {\n return (\n <Fragment key={`${item}-${index}`}>\n {renderPill({\n option: optionsLockup[item] || { value: item, label: item, disabled: false },\n value: item,\n onRemove: onRemoveItem,\n disabled: disabled || readOnly,\n reorderProps,\n })}\n </Fragment>\n );\n }\n\n return (\n <Pill\n key={`${item}-${index}`}\n withRemoveButton={!readOnly}\n onRemove={onRemoveItem}\n unstyled={unstyled}\n disabled={disabled}\n attributes={attributes}\n {...getStyles('pill')}\n {...reorderProps}\n >\n {item}\n </Pill>\n );\n });\n\n useEffect(() => {\n if (selectFirstOptionOnChange) {\n combobox.selectFirstOption();\n }\n }, [selectFirstOptionOnChange, _value, _searchValue]);\n\n const clearButton = (\n <Combobox.ClearButton\n {...clearButtonProps}\n onClear={() => {\n setValue([]);\n handleSearchChange('');\n inputRef.current?.focus();\n combobox.openDropdown();\n onClear?.();\n }}\n />\n );\n\n return (\n <>\n <Combobox\n store={combobox}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n size={size}\n readOnly={readOnly}\n __staticSelector=\"TagsInput\"\n attributes={attributes}\n floatingHeight={floatingHeight}\n onOptionSubmit={(val) => {\n onOptionSubmit?.(val);\n handleSearchChange('');\n\n if (_value.length >= maxTags) {\n onMaxTags?.(val);\n } else {\n setValue([..._value, optionsLockup[val].value]);\n }\n\n combobox.resetSelectedOption();\n }}\n {...comboboxProps}\n >\n <Combobox.DropdownTarget>\n <PillsInput\n {...styleProps}\n __staticSelector=\"TagsInput\"\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n unstyled={unstyled}\n size={size}\n className={className}\n style={style}\n variant={variant}\n disabled={disabled}\n radius={radius}\n rightSection={rightSection}\n __clearSection={clearButton}\n __clearable={clearable && _value.length > 0 && !disabled && !readOnly}\n __clearSectionMode={clearSectionMode}\n rightSectionWidth={rightSectionWidth}\n rightSectionPointerEvents={rightSectionPointerEvents}\n rightSectionProps={rightSectionProps}\n leftSection={leftSection}\n leftSectionWidth={leftSectionWidth}\n leftSectionPointerEvents={leftSectionPointerEvents}\n leftSectionProps={leftSectionProps}\n loading={loading}\n loadingPosition={loadingPosition}\n inputContainer={inputContainer}\n inputWrapperOrder={inputWrapperOrder}\n withAsterisk={withAsterisk}\n required={required}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorProps={errorProps}\n wrapperProps={wrapperProps}\n description={description}\n label={label}\n error={error}\n withErrorStyles={withErrorStyles}\n __stylesApiProps={{ ...props, multiline: true }}\n id={_id}\n mod={mod}\n attributes={attributes}\n >\n <Pill.Group\n disabled={disabled}\n unstyled={unstyled}\n {...getStyles('pillsList')}\n {...getListProps()}\n >\n {values}\n <Combobox.EventsTarget autoComplete={autoComplete} withExpandedAttribute>\n <PillsInput.Field\n {...rest}\n ref={_ref}\n {...getStyles('inputField')}\n unstyled={unstyled}\n onKeyDown={handleInputKeydown}\n onFocus={(event) => {\n onFocus?.(event);\n openOnFocus && combobox.openDropdown();\n }}\n onBlur={(event) => {\n onBlur?.(event);\n acceptValueOnBlur && handleValueSelect(_searchValue);\n combobox.closeDropdown();\n }}\n onPaste={handlePaste}\n value={_searchValue}\n onChange={(event) => handleSearchChange(event.currentTarget.value)}\n required={required && _value.length === 0}\n disabled={disabled}\n readOnly={readOnly}\n id={_id}\n />\n </Combobox.EventsTarget>\n </Pill.Group>\n </PillsInput>\n </Combobox.DropdownTarget>\n\n <OptionsDropdown\n data={filterPickedTags({ data: parsedData, value: _value })}\n hidden={readOnly || disabled}\n filter={filter as OptionsFilter<Primitive> | undefined}\n search={_searchValue}\n limit={limit}\n hiddenWhenEmpty\n withScrollArea={withScrollArea}\n maxDropdownHeight={maxDropdownHeight}\n unstyled={unstyled}\n labelId={label ? `${_id}-label` : undefined}\n aria-label={label ? undefined : others['aria-label']}\n renderOption={renderOption}\n scrollAreaProps={scrollAreaProps}\n />\n </Combobox>\n <Combobox.HiddenInput\n name={name}\n form={form}\n value={_value}\n valuesDivider={hiddenInputValuesDivider}\n disabled={disabled}\n {...hiddenInputProps}\n />\n </>\n );\n});\n\nTagsInput.classes = { ...InputBase.classes, ...Combobox.classes };\nTagsInput.displayName = '@mantine/core/TagsInput';\n\nexport namespace TagsInput {\n export type Props = TagsInputProps;\n export type StylesNames = TagsInputStylesNames;\n export type Factory = TagsInputFactory;\n}\n"],"mappings":"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"}
|
|
@@ -14,15 +14,16 @@ function getTextTruncate(truncate) {
|
|
|
14
14
|
if (truncate === "end" || truncate) return "end";
|
|
15
15
|
}
|
|
16
16
|
const defaultProps = { inherit: false };
|
|
17
|
-
const varsResolver = createVarsResolver((theme, { variant, lineClamp, gradient, size }) => ({ root: {
|
|
17
|
+
const varsResolver = createVarsResolver((theme, { variant, lineClamp, gradient, size, textWrap }) => ({ root: {
|
|
18
18
|
"--text-fz": getFontSize(size),
|
|
19
19
|
"--text-lh": getLineHeight(size),
|
|
20
20
|
"--text-gradient": variant === "gradient" ? getGradient(gradient, theme) : void 0,
|
|
21
|
-
"--text-line-clamp": typeof lineClamp === "number" ? lineClamp.toString() : void 0
|
|
21
|
+
"--text-line-clamp": typeof lineClamp === "number" ? lineClamp.toString() : void 0,
|
|
22
|
+
"--text-text-wrap": textWrap
|
|
22
23
|
} }));
|
|
23
24
|
const Text = polymorphicFactory((_props) => {
|
|
24
25
|
const props = useProps("Text", defaultProps, _props);
|
|
25
|
-
const { lineClamp, truncate, inline, inherit, gradient, span, __staticSelector, vars, className, style, classNames, styles, unstyled, variant, mod, size, attributes, ...others } = props;
|
|
26
|
+
const { lineClamp, truncate, inline, inherit, gradient, span, textWrap, __staticSelector, vars, className, style, classNames, styles, unstyled, variant, mod, size, attributes, ...others } = props;
|
|
26
27
|
return /* @__PURE__ */ jsx(Box, {
|
|
27
28
|
...useStyles({
|
|
28
29
|
name: ["Text", __staticSelector],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.mjs","names":["classes"],"sources":["../../../src/components/Text/Text.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n getFontSize,\n getGradient,\n getLineHeight,\n MantineFontSize,\n MantineGradient,\n MantineLineHeight,\n polymorphicFactory,\n PolymorphicFactory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport classes from './Text.module.css';\n\ntype TextTruncate = 'end' | 'start' | boolean;\n\nfunction getTextTruncate(truncate: TextTruncate | undefined) {\n if (truncate === 'start') {\n return 'start';\n }\n\n if (truncate === 'end' || truncate) {\n return 'end';\n }\n\n return undefined;\n}\n\nexport type TextStylesNames = 'root';\nexport type TextVariant = 'text' | 'gradient';\nexport type TextCssVariables = {\n root: '--text-gradient' | '--text-line-clamp' | '--text-fz' | '--text-lh';\n};\n\nexport interface TextProps extends BoxProps, StylesApiProps<TextFactory> {\n __staticSelector?: string;\n\n /** Controls `font-size` and `line-height` @default 'md' */\n size?: MantineFontSize | MantineLineHeight;\n\n /** Number of lines after which Text will be truncated */\n lineClamp?: number;\n\n /** Side on which Text must be truncated, if `true`, text is truncated from the start */\n truncate?: TextTruncate;\n\n /** Sets `line-height` to 1 for centering @default false */\n inline?: boolean;\n\n /** Determines whether font properties should be inherited from the parent @default false */\n inherit?: boolean;\n\n /** Gradient configuration, ignored when `variant` is not `gradient` @default theme.defaultGradient */\n gradient?: MantineGradient;\n\n /** Shorthand for `component=\"span\"` */\n span?: boolean;\n}\n\nexport type TextFactory = PolymorphicFactory<{\n props: TextProps;\n defaultComponent: 'p';\n defaultRef: HTMLParagraphElement;\n stylesNames: TextStylesNames;\n vars: TextCssVariables;\n variant: TextVariant;\n}>;\n\nconst defaultProps = {\n inherit: false,\n} satisfies Partial<TextProps>;\n\nconst varsResolver = createVarsResolver<TextFactory>(\n // Will be removed in 9.0\n\n (theme, { variant, lineClamp, gradient, size }) => ({\n root: {\n '--text-fz': getFontSize(size),\n '--text-lh': getLineHeight(size),\n '--text-gradient': variant === 'gradient' ? getGradient(gradient, theme) : undefined,\n '--text-line-clamp': typeof lineClamp === 'number' ? lineClamp.toString() : undefined,\n },\n })\n);\n\nexport const Text = polymorphicFactory<TextFactory>((_props) => {\n const props = useProps('Text', defaultProps, _props);\n const {\n lineClamp,\n truncate,\n inline,\n inherit,\n gradient,\n span,\n __staticSelector,\n vars,\n className,\n style,\n classNames,\n styles,\n unstyled,\n variant,\n mod,\n size,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<TextFactory>({\n name: ['Text', __staticSelector],\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n return (\n <Box\n {...getStyles('root', { focusable: true })}\n component={span ? 'span' : 'p'}\n variant={variant}\n mod={[\n {\n 'data-truncate': getTextTruncate(truncate),\n 'data-line-clamp': typeof lineClamp === 'number',\n 'data-inline': inline,\n 'data-inherit': inherit,\n },\n mod,\n ]}\n size={size}\n {...others}\n />\n );\n});\n\nText.classes = classes;\nText.varsResolver = varsResolver;\nText.displayName = '@mantine/core/Text';\n\nexport namespace Text {\n export type Props = TextProps;\n export type StylesNames = TextStylesNames;\n export type CssVariables = TextCssVariables;\n export type Factory = TextFactory;\n export type Variant = TextVariant;\n}\n"],"mappings":";;;;;;;;;;;AAoBA,SAAS,gBAAgB,UAAoC;CAC3D,IAAI,aAAa,SACf,OAAO;CAGT,IAAI,aAAa,SAAS,UACxB,OAAO;AAIX;
|
|
1
|
+
{"version":3,"file":"Text.mjs","names":["classes"],"sources":["../../../src/components/Text/Text.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n getFontSize,\n getGradient,\n getLineHeight,\n MantineFontSize,\n MantineGradient,\n MantineLineHeight,\n polymorphicFactory,\n PolymorphicFactory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport classes from './Text.module.css';\n\ntype TextTruncate = 'end' | 'start' | boolean;\n\nfunction getTextTruncate(truncate: TextTruncate | undefined) {\n if (truncate === 'start') {\n return 'start';\n }\n\n if (truncate === 'end' || truncate) {\n return 'end';\n }\n\n return undefined;\n}\n\nexport type TextStylesNames = 'root';\nexport type TextVariant = 'text' | 'gradient';\nexport type TextCssVariables = {\n root: '--text-gradient' | '--text-line-clamp' | '--text-fz' | '--text-lh' | '--text-text-wrap';\n};\n\nexport interface TextProps extends BoxProps, StylesApiProps<TextFactory> {\n __staticSelector?: string;\n\n /** Controls `font-size` and `line-height` @default 'md' */\n size?: MantineFontSize | MantineLineHeight;\n\n /** Number of lines after which Text will be truncated */\n lineClamp?: number;\n\n /** Side on which Text must be truncated, if `true`, text is truncated from the start */\n truncate?: TextTruncate;\n\n /** Sets `line-height` to 1 for centering @default false */\n inline?: boolean;\n\n /** Determines whether font properties should be inherited from the parent @default false */\n inherit?: boolean;\n\n /** Gradient configuration, ignored when `variant` is not `gradient` @default theme.defaultGradient */\n gradient?: MantineGradient;\n\n /** Shorthand for `component=\"span\"` */\n span?: boolean;\n\n /** Controls `text-wrap` CSS property */\n textWrap?: 'wrap' | 'nowrap' | 'balance' | 'pretty' | 'stable';\n}\n\nexport type TextFactory = PolymorphicFactory<{\n props: TextProps;\n defaultComponent: 'p';\n defaultRef: HTMLParagraphElement;\n stylesNames: TextStylesNames;\n vars: TextCssVariables;\n variant: TextVariant;\n}>;\n\nconst defaultProps = {\n inherit: false,\n} satisfies Partial<TextProps>;\n\nconst varsResolver = createVarsResolver<TextFactory>(\n // Will be removed in 9.0\n\n (theme, { variant, lineClamp, gradient, size, textWrap }) => ({\n root: {\n '--text-fz': getFontSize(size),\n '--text-lh': getLineHeight(size),\n '--text-gradient': variant === 'gradient' ? getGradient(gradient, theme) : undefined,\n '--text-line-clamp': typeof lineClamp === 'number' ? lineClamp.toString() : undefined,\n '--text-text-wrap': textWrap,\n },\n })\n);\n\nexport const Text = polymorphicFactory<TextFactory>((_props) => {\n const props = useProps('Text', defaultProps, _props);\n const {\n lineClamp,\n truncate,\n inline,\n inherit,\n gradient,\n span,\n textWrap,\n __staticSelector,\n vars,\n className,\n style,\n classNames,\n styles,\n unstyled,\n variant,\n mod,\n size,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<TextFactory>({\n name: ['Text', __staticSelector],\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n return (\n <Box\n {...getStyles('root', { focusable: true })}\n component={span ? 'span' : 'p'}\n variant={variant}\n mod={[\n {\n 'data-truncate': getTextTruncate(truncate),\n 'data-line-clamp': typeof lineClamp === 'number',\n 'data-inline': inline,\n 'data-inherit': inherit,\n },\n mod,\n ]}\n size={size}\n {...others}\n />\n );\n});\n\nText.classes = classes;\nText.varsResolver = varsResolver;\nText.displayName = '@mantine/core/Text';\n\nexport namespace Text {\n export type Props = TextProps;\n export type StylesNames = TextStylesNames;\n export type CssVariables = TextCssVariables;\n export type Factory = TextFactory;\n export type Variant = TextVariant;\n}\n"],"mappings":";;;;;;;;;;;AAoBA,SAAS,gBAAgB,UAAoC;CAC3D,IAAI,aAAa,SACf,OAAO;CAGT,IAAI,aAAa,SAAS,UACxB,OAAO;AAIX;AA6CA,MAAM,eAAe,EACnB,SAAS,MACX;AAEA,MAAM,eAAe,oBAGlB,OAAO,EAAE,SAAS,WAAW,UAAU,MAAM,gBAAgB,EAC5D,MAAM;CACJ,aAAa,YAAY,IAAI;CAC7B,aAAa,cAAc,IAAI;CAC/B,mBAAmB,YAAY,aAAa,YAAY,UAAU,KAAK,IAAI,KAAA;CAC3E,qBAAqB,OAAO,cAAc,WAAW,UAAU,SAAS,IAAI,KAAA;CAC5E,oBAAoB;AACtB,EACF,EACF;AAEA,MAAa,OAAO,oBAAiC,WAAW;CAC9D,MAAM,QAAQ,SAAS,QAAQ,cAAc,MAAM;CACnD,MAAM,EACJ,WACA,UACA,QACA,SACA,UACA,MACA,UACA,kBACA,MACA,WACA,OACA,YACA,QACA,UACA,SACA,KACA,MACA,YACA,GAAG,WACD;CAgBJ,OACE,oBAAC,KAAD;EACE,GAhBc,UAAuB;GACvC,MAAM,CAAC,QAAQ,gBAAgB;GAC/B;GACA,SAAA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;EACF,CAIgB,EAAE,QAAQ,EAAE,WAAW,KAAK,CAAC;EACzC,WAAW,OAAO,SAAS;EAClB;EACT,KAAK,CACH;GACE,iBAAiB,gBAAgB,QAAQ;GACzC,mBAAmB,OAAO,cAAc;GACxC,eAAe;GACf,gBAAgB;EAClB,GACA,GACF;EACM;EACN,GAAI;CACL,CAAA;AAEL,CAAC;AAED,KAAK,UAAUA;AACf,KAAK,eAAe;AACpB,KAAK,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.module.mjs","names":[],"sources":["../../../src/components/Text/Text.module.css"],"sourcesContent":[".root {\n -webkit-tap-highlight-color: transparent;\n text-decoration: none;\n font-size: var(--text-fz, var(--mantine-font-size-md));\n line-height: var(--text-lh, var(--mantine-line-height-md));\n font-weight: var(--mantine-font-weight-regular);\n margin: 0;\n padding: 0;\n\n &:where([data-truncate]) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &:where([data-truncate='start']) {\n direction: rtl;\n text-align:
|
|
1
|
+
{"version":3,"file":"Text.module.mjs","names":[],"sources":["../../../src/components/Text/Text.module.css"],"sourcesContent":[".root {\n -webkit-tap-highlight-color: transparent;\n text-decoration: none;\n font-size: var(--text-fz, var(--mantine-font-size-md));\n line-height: var(--text-lh, var(--mantine-line-height-md));\n font-weight: var(--mantine-font-weight-regular);\n text-wrap: var(--text-text-wrap, var(--mantine-text-wrap, wrap));\n margin: 0;\n padding: 0;\n\n &:where([data-truncate]) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n &:where([data-truncate='start']) {\n direction: rtl;\n text-align: end;\n\n @mixin where-rtl {\n direction: ltr;\n text-align: start;\n }\n }\n\n &:where([data-variant='gradient']) {\n background-image: var(--text-gradient);\n background-clip: text;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n }\n\n &:where([data-line-clamp]) {\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: var(--text-line-clamp);\n -webkit-box-orient: vertical;\n }\n\n &:where([data-inherit]) {\n line-height: inherit;\n font-weight: inherit;\n font-size: inherit;\n }\n\n &:where([data-inline]) {\n line-height: 1;\n }\n}\n"],"mappings":""}
|
|
@@ -7,7 +7,7 @@ import { TextareaAutosize } from "./Autosize.mjs";
|
|
|
7
7
|
import { jsx } from "react/jsx-runtime";
|
|
8
8
|
//#region packages/@mantine/core/src/components/Textarea/Textarea.tsx
|
|
9
9
|
const Textarea = factory((props) => {
|
|
10
|
-
const { autosize, maxRows, minRows, __staticSelector, resize, ...others } = useProps([
|
|
10
|
+
const { autosize, maxRows, minRows, __staticSelector, resize, bottomSection, bottomSectionProps, ...others } = useProps([
|
|
11
11
|
"Input",
|
|
12
12
|
"InputWrapper",
|
|
13
13
|
"Textarea"
|
|
@@ -21,6 +21,8 @@ const Textarea = factory((props) => {
|
|
|
21
21
|
component: shouldAutosize ? TextareaAutosize : "textarea",
|
|
22
22
|
...others,
|
|
23
23
|
__staticSelector: __staticSelector || "Textarea",
|
|
24
|
+
__bottomSection: bottomSection,
|
|
25
|
+
__bottomSectionProps: bottomSectionProps,
|
|
24
26
|
multiline: true,
|
|
25
27
|
"data-no-overflow": autosize && maxRows === void 0 || void 0,
|
|
26
28
|
__vars: { "--input-resize": resize },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Textarea.mjs","names":[],"sources":["../../../src/components/Textarea/Textarea.tsx"],"sourcesContent":["import {\n BoxProps,\n ElementProps,\n factory,\n Factory,\n getEnv,\n StylesApiProps,\n useProps,\n} from '../../core';\nimport { __BaseInputProps, __InputStylesNames } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { TextareaAutosize } from './Autosize';\n\nexport interface TextareaProps\n extends\n BoxProps,\n __BaseInputProps,\n StylesApiProps<TextareaFactory>,\n ElementProps<'textarea', 'size'> {\n __staticSelector?: string;\n\n /** If set, enables textarea height growing with its content @default false */\n autosize?: boolean;\n\n /** Maximum rows for autosize textarea to grow, ignored if `autosize` prop is not set */\n maxRows?: number;\n\n /** Minimum rows of autosize textarea, ignored if `autosize` prop is not set */\n minRows?: number;\n\n /** Controls `resize` CSS property @default 'none' */\n resize?: React.CSSProperties['resize'];\n}\n\nexport type TextareaFactory = Factory<{\n props: TextareaProps;\n ref: HTMLTextAreaElement;\n stylesNames: __InputStylesNames;\n}>;\n\nexport const Textarea = factory<TextareaFactory>((props) => {\n const {
|
|
1
|
+
{"version":3,"file":"Textarea.mjs","names":[],"sources":["../../../src/components/Textarea/Textarea.tsx"],"sourcesContent":["import {\n BoxProps,\n ElementProps,\n factory,\n Factory,\n getEnv,\n StylesApiProps,\n useProps,\n} from '../../core';\nimport { __BaseInputProps, __InputStylesNames } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { TextareaAutosize } from './Autosize';\n\nexport interface TextareaProps\n extends\n BoxProps,\n __BaseInputProps,\n StylesApiProps<TextareaFactory>,\n ElementProps<'textarea', 'size'> {\n __staticSelector?: string;\n\n /** If set, enables textarea height growing with its content @default false */\n autosize?: boolean;\n\n /** Maximum rows for autosize textarea to grow, ignored if `autosize` prop is not set */\n maxRows?: number;\n\n /** Minimum rows of autosize textarea, ignored if `autosize` prop is not set */\n minRows?: number;\n\n /** Controls `resize` CSS property @default 'none' */\n resize?: React.CSSProperties['resize'];\n\n /** Content rendered at the bottom of the input, inside the border */\n bottomSection?: React.ReactNode;\n\n /** Props passed down to the `bottomSection` element */\n bottomSectionProps?: React.ComponentProps<'div'>;\n}\n\nexport type TextareaFactory = Factory<{\n props: TextareaProps;\n ref: HTMLTextAreaElement;\n stylesNames: __InputStylesNames;\n}>;\n\nexport const Textarea = factory<TextareaFactory>((props) => {\n const {\n autosize,\n maxRows,\n minRows,\n __staticSelector,\n resize,\n bottomSection,\n bottomSectionProps,\n ...others\n } = useProps(['Input', 'InputWrapper', 'Textarea'], null, props);\n\n const shouldAutosize = autosize && getEnv() !== 'test';\n const autosizeProps = shouldAutosize ? { maxRows, minRows } : {};\n\n return (\n <InputBase<any>\n component={shouldAutosize ? TextareaAutosize : 'textarea'}\n {...others}\n __staticSelector={__staticSelector || 'Textarea'}\n __bottomSection={bottomSection}\n __bottomSectionProps={bottomSectionProps}\n multiline\n data-no-overflow={(autosize && maxRows === undefined) || undefined}\n __vars={{ '--input-resize': resize }}\n {...autosizeProps}\n />\n );\n});\n\nTextarea.classes = InputBase.classes;\nTextarea.displayName = '@mantine/core/Textarea';\n\nexport namespace Textarea {\n export type Props = TextareaProps;\n export type Factory = TextareaFactory;\n}\n"],"mappings":";;;;;;;;AA8CA,MAAa,WAAW,SAA0B,UAAU;CAC1D,MAAM,EACJ,UACA,SACA,SACA,kBACA,QACA,eACA,oBACA,GAAG,WACD,SAAS;EAAC;EAAS;EAAgB;CAAU,GAAG,MAAM,KAAK;CAE/D,MAAM,iBAAiB,YAAY,OAAO,MAAM;CAChD,MAAM,gBAAgB,iBAAiB;EAAE;EAAS;CAAQ,IAAI,CAAC;CAE/D,OACE,oBAAC,WAAD;EACE,WAAW,iBAAiB,mBAAmB;EAC/C,GAAI;EACJ,kBAAkB,oBAAoB;EACtC,iBAAiB;EACjB,sBAAsB;EACtB,WAAA;EACA,oBAAmB,YAAY,YAAY,KAAA,KAAc,KAAA;EACzD,QAAQ,EAAE,kBAAkB,OAAO;EACnC,GAAI;CACL,CAAA;AAEL,CAAC;AAED,SAAS,UAAU,UAAU;AAC7B,SAAS,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timeline.module.mjs","names":[],"sources":["../../../src/components/Timeline/Timeline.module.css"],"sourcesContent":[".root {\n --offset: calc(var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2);\n --tl-bullet-size: 20px;\n --tl-line-width: 4px;\n --tl-radius: 1000px;\n --tl-color: var(--mantine-primary-color-filled);\n\n &:where([data-align='left']) {\n padding-inline-start: var(--offset);\n }\n\n &:where([data-align='right']) {\n padding-inline-end: var(--offset);\n }\n}\n\n.itemTitle {\n font-weight: var(--mantine-font-weight-medium);\n line-height: 1;\n margin-bottom: calc(var(--mantine-spacing-xs) / 2);\n}\n\n.item {\n --item-border: var(--tl-line-width) var(--tli-border-style, solid) var(--item-border-color);\n\n position: relative;\n color: var(--mantine-color-text);\n\n &::before {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n
|
|
1
|
+
{"version":3,"file":"Timeline.module.mjs","names":[],"sources":["../../../src/components/Timeline/Timeline.module.css"],"sourcesContent":[".root {\n --offset: calc(var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2);\n --tl-bullet-size: 20px;\n --tl-line-width: 4px;\n --tl-radius: 1000px;\n --tl-color: var(--mantine-primary-color-filled);\n\n &:where([data-align='left']) {\n padding-inline-start: var(--offset);\n }\n\n &:where([data-align='right']) {\n padding-inline-end: var(--offset);\n }\n}\n\n.itemTitle {\n font-weight: var(--mantine-font-weight-medium);\n line-height: 1;\n margin-bottom: calc(var(--mantine-spacing-xs) / 2);\n}\n\n.item {\n --item-border: var(--tl-line-width) var(--tli-border-style, solid) var(--item-border-color);\n\n position: relative;\n color: var(--mantine-color-text);\n\n &::before {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n inset-inline-start: var(--timeline-line-start, 0);\n inset-inline-end: var(--timeline-line-end, 0);\n bottom: calc(var(--mantine-spacing-xl) * -1);\n border-inline-start: var(--item-border);\n display: var(--timeline-line-display, none);\n\n .root[data-align='left'] & {\n --timeline-line-start: calc(var(--tl-line-width) * -1);\n --timeline-line-end: auto;\n }\n\n .root[data-align='right'] & {\n --timeline-line-start: auto;\n --timeline-line-end: calc(var(--tl-line-width) * -1);\n }\n }\n\n .root:where([data-align='left']) & {\n padding-inline-start: var(--offset);\n text-align: start;\n }\n\n .root:where([data-align='right']) & {\n padding-inline-end: var(--offset);\n text-align: end;\n }\n\n @mixin where-light {\n --item-border-color: var(--mantine-color-gray-3);\n }\n\n @mixin where-dark {\n --item-border-color: var(--mantine-color-dark-4);\n }\n\n &:where([data-line-active]) {\n &::before {\n border-color: var(--tli-color, var(--tl-color));\n }\n }\n\n &:where(:not(:last-of-type)) {\n --timeline-line-display: block;\n }\n\n &:where(:not(:first-of-type)) {\n margin-top: var(--mantine-spacing-xl);\n }\n}\n\n.itemBullet {\n width: var(--tl-bullet-size);\n height: var(--tl-bullet-size);\n border-radius: var(--tli-radius, var(--tl-radius));\n border: var(--tl-line-width) solid;\n background-color: var(--mantine-color-body);\n position: absolute;\n top: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--mantine-color-text);\n\n @mixin where-light {\n border-color: var(--mantine-color-gray-3);\n }\n\n @mixin where-dark {\n border-color: var(--mantine-color-dark-4);\n }\n\n .root:where([data-align='left']) & {\n inset-inline-start: calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);\n inset-inline-end: auto;\n }\n\n .root:where([data-align='right']) & {\n inset-inline-start: auto;\n inset-inline-end: calc((var(--tl-bullet-size) / 2 + var(--tl-line-width) / 2) * -1);\n }\n\n &:where([data-with-child]) {\n border-width: var(--tl-line-width);\n\n @mixin where-light {\n background-color: var(--mantine-color-gray-3);\n }\n\n @mixin where-dark {\n background-color: var(--mantine-color-dark-4);\n }\n }\n\n &:where([data-active]) {\n border-color: var(--tli-color, var(--tl-color));\n background-color: var(--mantine-color-white);\n color: var(--tl-icon-color, var(--mantine-color-white));\n\n &:where([data-with-child]) {\n background-color: var(--tli-color, var(--tl-color));\n color: var(--tl-icon-color, var(--mantine-color-white));\n }\n }\n}\n\n.itemBody {\n .root:where([data-align='left']) & {\n padding-inline-start: var(--offset);\n text-align: start;\n }\n\n .root:where([data-align='right']) & {\n padding-inline-end: var(--offset);\n text-align: end;\n }\n}\n"],"mappings":""}
|