@mantine/core 4.2.0 → 4.2.3
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/AccordionItem/AccordionItem.js.map +1 -1
- package/cjs/components/ActionIcon/ActionIcon.js.map +1 -1
- package/cjs/components/Alert/Alert.js +1 -1
- package/cjs/components/Alert/Alert.js.map +1 -1
- package/cjs/components/AppShell/AppShell.js.map +1 -1
- package/cjs/components/AppShell/HorizontalSection/HorizontalSection.js.map +1 -1
- package/cjs/components/Autocomplete/Autocomplete.js +1 -3
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Avatar/Avatar.js.map +1 -1
- package/cjs/components/Avatar/AvatarsGroup/AvatarsGroup.js.map +1 -1
- package/cjs/components/Badge/Badge.js.map +1 -1
- package/cjs/components/Blockquote/Blockquote.js.map +1 -1
- package/cjs/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/cjs/components/Burger/Burger.js.map +1 -1
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Chips/Chip/Chip.js.map +1 -1
- package/cjs/components/ColorInput/ColorInput.js.map +1 -1
- package/cjs/components/ColorPicker/ColorPicker.js.map +1 -1
- package/cjs/components/ColorPicker/ColorSlider/ColorSlider.js.map +1 -1
- package/cjs/components/ColorPicker/Saturation/Saturation.js.map +1 -1
- package/cjs/components/ColorPicker/Swatches/Swatches.js.map +1 -1
- package/cjs/components/ColorPicker/Thumb/Thumb.js.map +1 -1
- package/cjs/components/ColorSwatch/ColorSwatch.js.map +1 -1
- package/cjs/components/Dialog/Dialog.js.map +1 -1
- package/cjs/components/Divider/Divider.js +6 -4
- package/cjs/components/Divider/Divider.js.map +1 -1
- package/cjs/components/Divider/Divider.styles.js +3 -1
- package/cjs/components/Divider/Divider.styles.js.map +1 -1
- package/cjs/components/Drawer/Drawer.js +0 -1
- package/cjs/components/Drawer/Drawer.js.map +1 -1
- package/cjs/components/Image/Image.js.map +1 -1
- package/cjs/components/Indicator/Indicator.js +7 -4
- package/cjs/components/Indicator/Indicator.js.map +1 -1
- package/cjs/components/Indicator/Indicator.styles.js +12 -2
- package/cjs/components/Indicator/Indicator.styles.js.map +1 -1
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/InputWrapper/InputWrapper.js.map +1 -1
- package/cjs/components/List/List.js.map +1 -1
- package/cjs/components/List/ListItem/ListItem.js.map +1 -1
- package/cjs/components/Menu/Menu.js.map +1 -1
- package/cjs/components/Menu/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/Menu/MenuLabel/MenuLabel.js.map +1 -1
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/MultiSelect/DefaultValue/DefaultValue.js.map +1 -1
- package/cjs/components/MultiSelect/MultiSelect.js +5 -2
- package/cjs/components/MultiSelect/MultiSelect.js.map +1 -1
- package/cjs/components/Notification/Notification.js.map +1 -1
- package/cjs/components/NumberInput/NumberInput.js.map +1 -1
- package/cjs/components/Pagination/Pagination.js.map +1 -1
- package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/components/Popover/Popover.js.map +1 -1
- package/cjs/components/Popover/PopoverBody/PopoverBody.js.map +1 -1
- package/cjs/components/Progress/Progress.js.map +1 -1
- package/cjs/components/RadioGroup/Radio/Radio.js.map +1 -1
- package/cjs/components/RingProgress/RingProgress.js.map +1 -1
- package/cjs/components/ScrollArea/ScrollArea.js.map +1 -1
- package/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/cjs/components/Select/SelectDropdown/SelectDropdown.js.map +1 -1
- package/cjs/components/Select/SelectItems/SelectItems.js.map +1 -1
- package/cjs/components/Slider/Marks/Marks.js.map +1 -1
- package/cjs/components/Slider/SliderRoot/SliderRoot.js.map +1 -1
- package/cjs/components/Slider/Thumb/Thumb.js.map +1 -1
- package/cjs/components/Slider/Track/Track.js.map +1 -1
- package/cjs/components/Spoiler/Spoiler.js.map +1 -1
- package/cjs/components/Stepper/Step/Step.js.map +1 -1
- package/cjs/components/Stepper/Stepper.js.map +1 -1
- package/cjs/components/Switch/Switch.js.map +1 -1
- package/cjs/components/Tabs/TabControl/TabControl.js.map +1 -1
- package/cjs/components/Tabs/Tabs.js.map +1 -1
- package/cjs/components/Text/Text.js.map +1 -1
- package/cjs/components/Text/Text.styles.js.map +1 -1
- package/cjs/components/Timeline/TimelineItem/TimelineItem.js.map +1 -1
- package/cjs/components/Tooltip/FloatingTooltip/FloatingTooltip.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/TransferList/RenderList/RenderList.js.map +1 -1
- package/esm/components/Accordion/AccordionItem/AccordionItem.js.map +1 -1
- package/esm/components/ActionIcon/ActionIcon.js.map +1 -1
- package/esm/components/Alert/Alert.js +1 -1
- package/esm/components/Alert/Alert.js.map +1 -1
- package/esm/components/AppShell/AppShell.js.map +1 -1
- package/esm/components/AppShell/HorizontalSection/HorizontalSection.js.map +1 -1
- package/esm/components/Autocomplete/Autocomplete.js +1 -3
- package/esm/components/Autocomplete/Autocomplete.js.map +1 -1
- package/esm/components/Avatar/Avatar.js.map +1 -1
- package/esm/components/Avatar/AvatarsGroup/AvatarsGroup.js.map +1 -1
- package/esm/components/Badge/Badge.js.map +1 -1
- package/esm/components/Blockquote/Blockquote.js.map +1 -1
- package/esm/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/esm/components/Burger/Burger.js.map +1 -1
- package/esm/components/Button/Button.js.map +1 -1
- package/esm/components/Checkbox/Checkbox.js.map +1 -1
- package/esm/components/Chips/Chip/Chip.js.map +1 -1
- package/esm/components/ColorInput/ColorInput.js.map +1 -1
- package/esm/components/ColorPicker/ColorPicker.js.map +1 -1
- package/esm/components/ColorPicker/ColorSlider/ColorSlider.js.map +1 -1
- package/esm/components/ColorPicker/Saturation/Saturation.js.map +1 -1
- package/esm/components/ColorPicker/Swatches/Swatches.js.map +1 -1
- package/esm/components/ColorPicker/Thumb/Thumb.js.map +1 -1
- package/esm/components/ColorSwatch/ColorSwatch.js.map +1 -1
- package/esm/components/Dialog/Dialog.js.map +1 -1
- package/esm/components/Divider/Divider.js +6 -4
- package/esm/components/Divider/Divider.js.map +1 -1
- package/esm/components/Divider/Divider.styles.js +3 -1
- package/esm/components/Divider/Divider.styles.js.map +1 -1
- package/esm/components/Drawer/Drawer.js +0 -1
- package/esm/components/Drawer/Drawer.js.map +1 -1
- package/esm/components/Image/Image.js.map +1 -1
- package/esm/components/Indicator/Indicator.js +8 -5
- package/esm/components/Indicator/Indicator.js.map +1 -1
- package/esm/components/Indicator/Indicator.styles.js +13 -3
- package/esm/components/Indicator/Indicator.styles.js.map +1 -1
- package/esm/components/Input/Input.js.map +1 -1
- package/esm/components/InputWrapper/InputWrapper.js.map +1 -1
- package/esm/components/List/List.js.map +1 -1
- package/esm/components/List/ListItem/ListItem.js.map +1 -1
- package/esm/components/Menu/Menu.js.map +1 -1
- package/esm/components/Menu/MenuItem/MenuItem.js.map +1 -1
- package/esm/components/Menu/MenuLabel/MenuLabel.js.map +1 -1
- package/esm/components/Modal/Modal.js.map +1 -1
- package/esm/components/MultiSelect/DefaultValue/DefaultValue.js.map +1 -1
- package/esm/components/MultiSelect/MultiSelect.js +5 -2
- package/esm/components/MultiSelect/MultiSelect.js.map +1 -1
- package/esm/components/Notification/Notification.js.map +1 -1
- package/esm/components/NumberInput/NumberInput.js.map +1 -1
- package/esm/components/Pagination/Pagination.js.map +1 -1
- package/esm/components/PasswordInput/PasswordInput.js.map +1 -1
- package/esm/components/Popover/Popover.js.map +1 -1
- package/esm/components/Popover/PopoverBody/PopoverBody.js.map +1 -1
- package/esm/components/Progress/Progress.js.map +1 -1
- package/esm/components/RadioGroup/Radio/Radio.js.map +1 -1
- package/esm/components/RingProgress/RingProgress.js.map +1 -1
- package/esm/components/ScrollArea/ScrollArea.js.map +1 -1
- package/esm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/esm/components/Select/SelectDropdown/SelectDropdown.js.map +1 -1
- package/esm/components/Select/SelectItems/SelectItems.js.map +1 -1
- package/esm/components/Slider/Marks/Marks.js.map +1 -1
- package/esm/components/Slider/SliderRoot/SliderRoot.js.map +1 -1
- package/esm/components/Slider/Thumb/Thumb.js.map +1 -1
- package/esm/components/Slider/Track/Track.js.map +1 -1
- package/esm/components/Spoiler/Spoiler.js.map +1 -1
- package/esm/components/Stepper/Step/Step.js.map +1 -1
- package/esm/components/Stepper/Stepper.js.map +1 -1
- package/esm/components/Switch/Switch.js.map +1 -1
- package/esm/components/Tabs/TabControl/TabControl.js.map +1 -1
- package/esm/components/Tabs/Tabs.js.map +1 -1
- package/esm/components/Text/Text.js.map +1 -1
- package/esm/components/Text/Text.styles.js.map +1 -1
- package/esm/components/Timeline/TimelineItem/TimelineItem.js.map +1 -1
- package/esm/components/Tooltip/FloatingTooltip/FloatingTooltip.js.map +1 -1
- package/esm/components/Tooltip/Tooltip.js.map +1 -1
- package/esm/components/TransferList/RenderList/RenderList.js.map +1 -1
- package/lib/components/Accordion/AccordionItem/AccordionItem.d.ts +2 -2
- package/lib/components/Accordion/AccordionItem/AccordionItem.d.ts.map +1 -1
- package/lib/components/ActionIcon/ActionIcon.d.ts +2 -2
- package/lib/components/ActionIcon/ActionIcon.d.ts.map +1 -1
- package/lib/components/Alert/Alert.d.ts +2 -2
- package/lib/components/Alert/Alert.d.ts.map +1 -1
- package/lib/components/AppShell/AppShell.d.ts +2 -2
- package/lib/components/AppShell/AppShell.d.ts.map +1 -1
- package/lib/components/AppShell/HorizontalSection/HorizontalSection.d.ts +2 -2
- package/lib/components/AppShell/HorizontalSection/HorizontalSection.d.ts.map +1 -1
- package/lib/components/Autocomplete/Autocomplete.d.ts +2 -2
- package/lib/components/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/lib/components/Avatar/Avatar.d.ts +2 -2
- package/lib/components/Avatar/Avatar.d.ts.map +1 -1
- package/lib/components/Avatar/AvatarsGroup/AvatarsGroup.d.ts +2 -2
- package/lib/components/Avatar/AvatarsGroup/AvatarsGroup.d.ts.map +1 -1
- package/lib/components/Badge/Badge.d.ts +2 -2
- package/lib/components/Badge/Badge.d.ts.map +1 -1
- package/lib/components/Blockquote/Blockquote.d.ts +2 -2
- package/lib/components/Blockquote/Blockquote.d.ts.map +1 -1
- package/lib/components/Breadcrumbs/Breadcrumbs.d.ts +2 -2
- package/lib/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/lib/components/Burger/Burger.d.ts +2 -2
- package/lib/components/Burger/Burger.d.ts.map +1 -1
- package/lib/components/Button/Button.d.ts +2 -2
- package/lib/components/Button/Button.d.ts.map +1 -1
- package/lib/components/Checkbox/Checkbox.d.ts +2 -2
- package/lib/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/lib/components/Chips/Chip/Chip.d.ts +2 -2
- package/lib/components/Chips/Chip/Chip.d.ts.map +1 -1
- package/lib/components/ColorInput/ColorInput.d.ts +2 -2
- package/lib/components/ColorInput/ColorInput.d.ts.map +1 -1
- package/lib/components/ColorPicker/ColorPicker.d.ts +2 -2
- package/lib/components/ColorPicker/ColorPicker.d.ts.map +1 -1
- package/lib/components/ColorPicker/ColorSlider/ColorSlider.d.ts +2 -2
- package/lib/components/ColorPicker/ColorSlider/ColorSlider.d.ts.map +1 -1
- package/lib/components/ColorPicker/Saturation/Saturation.d.ts +2 -2
- package/lib/components/ColorPicker/Saturation/Saturation.d.ts.map +1 -1
- package/lib/components/ColorPicker/Swatches/Swatches.d.ts +2 -2
- package/lib/components/ColorPicker/Swatches/Swatches.d.ts.map +1 -1
- package/lib/components/ColorPicker/Thumb/Thumb.d.ts +2 -2
- package/lib/components/ColorPicker/Thumb/Thumb.d.ts.map +1 -1
- package/lib/components/ColorSwatch/ColorSwatch.d.ts +2 -2
- package/lib/components/ColorSwatch/ColorSwatch.d.ts.map +1 -1
- package/lib/components/Dialog/Dialog.d.ts +2 -2
- package/lib/components/Dialog/Dialog.d.ts.map +1 -1
- package/lib/components/Divider/Divider.d.ts +2 -1
- package/lib/components/Divider/Divider.d.ts.map +1 -1
- package/lib/components/Divider/Divider.styles.d.ts +2 -2
- package/lib/components/Divider/Divider.styles.d.ts.map +1 -1
- package/lib/components/Drawer/Drawer.d.ts +2 -2
- package/lib/components/Drawer/Drawer.d.ts.map +1 -1
- package/lib/components/Image/Image.d.ts +2 -2
- package/lib/components/Image/Image.d.ts.map +1 -1
- package/lib/components/Indicator/Indicator.d.ts +4 -2
- package/lib/components/Indicator/Indicator.d.ts.map +1 -1
- package/lib/components/Indicator/Indicator.styles.d.ts +1 -0
- package/lib/components/Indicator/Indicator.styles.d.ts.map +1 -1
- package/lib/components/Input/Input.d.ts +2 -2
- package/lib/components/Input/Input.d.ts.map +1 -1
- package/lib/components/InputWrapper/InputWrapper.d.ts +2 -2
- package/lib/components/InputWrapper/InputWrapper.d.ts.map +1 -1
- package/lib/components/List/List.d.ts +2 -2
- package/lib/components/List/List.d.ts.map +1 -1
- package/lib/components/List/ListItem/ListItem.d.ts +2 -2
- package/lib/components/List/ListItem/ListItem.d.ts.map +1 -1
- package/lib/components/Menu/Menu.d.ts +2 -2
- package/lib/components/Menu/Menu.d.ts.map +1 -1
- package/lib/components/Menu/MenuItem/MenuItem.d.ts +2 -2
- package/lib/components/Menu/MenuItem/MenuItem.d.ts.map +1 -1
- package/lib/components/Menu/MenuLabel/MenuLabel.d.ts +2 -2
- package/lib/components/Menu/MenuLabel/MenuLabel.d.ts.map +1 -1
- package/lib/components/Modal/Modal.d.ts +2 -2
- package/lib/components/Modal/Modal.d.ts.map +1 -1
- package/lib/components/MultiSelect/DefaultValue/DefaultValue.d.ts +2 -2
- package/lib/components/MultiSelect/DefaultValue/DefaultValue.d.ts.map +1 -1
- package/lib/components/MultiSelect/MultiSelect.d.ts +2 -2
- package/lib/components/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/lib/components/Notification/Notification.d.ts +2 -2
- package/lib/components/Notification/Notification.d.ts.map +1 -1
- package/lib/components/NumberInput/NumberInput.d.ts +3 -3
- package/lib/components/NumberInput/NumberInput.d.ts.map +1 -1
- package/lib/components/Pagination/Pagination.d.ts +2 -2
- package/lib/components/Pagination/Pagination.d.ts.map +1 -1
- package/lib/components/PasswordInput/PasswordInput.d.ts +2 -2
- package/lib/components/PasswordInput/PasswordInput.d.ts.map +1 -1
- package/lib/components/Popover/Popover.d.ts +2 -2
- package/lib/components/Popover/Popover.d.ts.map +1 -1
- package/lib/components/Popover/PopoverBody/PopoverBody.d.ts +2 -2
- package/lib/components/Popover/PopoverBody/PopoverBody.d.ts.map +1 -1
- package/lib/components/Progress/Progress.d.ts +2 -2
- package/lib/components/Progress/Progress.d.ts.map +1 -1
- package/lib/components/RadioGroup/Radio/Radio.d.ts +2 -2
- package/lib/components/RadioGroup/Radio/Radio.d.ts.map +1 -1
- package/lib/components/RingProgress/RingProgress.d.ts +2 -2
- package/lib/components/RingProgress/RingProgress.d.ts.map +1 -1
- package/lib/components/ScrollArea/ScrollArea.d.ts +2 -2
- package/lib/components/ScrollArea/ScrollArea.d.ts.map +1 -1
- package/lib/components/SegmentedControl/SegmentedControl.d.ts +2 -2
- package/lib/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/lib/components/Select/SelectDropdown/SelectDropdown.d.ts +2 -2
- package/lib/components/Select/SelectDropdown/SelectDropdown.d.ts.map +1 -1
- package/lib/components/Select/SelectItems/SelectItems.d.ts +2 -2
- package/lib/components/Select/SelectItems/SelectItems.d.ts.map +1 -1
- package/lib/components/Slider/Marks/Marks.d.ts +2 -2
- package/lib/components/Slider/Marks/Marks.d.ts.map +1 -1
- package/lib/components/Slider/SliderRoot/SliderRoot.d.ts +2 -2
- package/lib/components/Slider/SliderRoot/SliderRoot.d.ts.map +1 -1
- package/lib/components/Slider/Thumb/Thumb.d.ts +2 -2
- package/lib/components/Slider/Thumb/Thumb.d.ts.map +1 -1
- package/lib/components/Slider/Track/Track.d.ts +2 -2
- package/lib/components/Slider/Track/Track.d.ts.map +1 -1
- package/lib/components/Spoiler/Spoiler.d.ts +2 -2
- package/lib/components/Spoiler/Spoiler.d.ts.map +1 -1
- package/lib/components/Stepper/Step/Step.d.ts +2 -2
- package/lib/components/Stepper/Step/Step.d.ts.map +1 -1
- package/lib/components/Stepper/Stepper.d.ts +2 -2
- package/lib/components/Stepper/Stepper.d.ts.map +1 -1
- package/lib/components/Switch/Switch.d.ts +2 -2
- package/lib/components/Switch/Switch.d.ts.map +1 -1
- package/lib/components/Tabs/TabControl/TabControl.d.ts +2 -2
- package/lib/components/Tabs/TabControl/TabControl.d.ts.map +1 -1
- package/lib/components/Tabs/Tabs.d.ts +2 -2
- package/lib/components/Tabs/Tabs.d.ts.map +1 -1
- package/lib/components/Text/Text.d.ts +3 -3
- package/lib/components/Text/Text.d.ts.map +1 -1
- package/lib/components/Text/Text.styles.d.ts +1 -1
- package/lib/components/Text/Text.styles.d.ts.map +1 -1
- package/lib/components/Timeline/TimelineItem/TimelineItem.d.ts +2 -2
- package/lib/components/Timeline/TimelineItem/TimelineItem.d.ts.map +1 -1
- package/lib/components/Tooltip/FloatingTooltip/FloatingTooltip.d.ts +2 -2
- package/lib/components/Tooltip/FloatingTooltip/FloatingTooltip.d.ts.map +1 -1
- package/lib/components/Tooltip/Tooltip.d.ts +2 -2
- package/lib/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/lib/components/TransferList/RenderList/RenderList.d.ts +2 -2
- package/lib/components/TransferList/RenderList/RenderList.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Switch.js","sources":["../../../src/components/Switch/Switch.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useUuid } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n MantineColor,\n
|
|
1
|
+
{"version":3,"file":"Switch.js","sources":["../../../src/components/Switch/Switch.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useUuid } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n MantineColor,\n Selectors,\n extractSystemStyles,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport useStyles from './Switch.styles';\n\nexport type SwitchStylesNames = Selectors<typeof useStyles>;\n\nexport interface SwitchProps\n extends DefaultProps<SwitchStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'input'>, 'type' | 'size'> {\n /** Id is used to bind input and label, if not passed unique id will be generated for each input */\n id?: string;\n\n /** Switch label */\n label?: React.ReactNode;\n\n /** Inner label when Switch is in unchecked state */\n offLabel?: string;\n\n /** Inner label when Switch is in checked state */\n onLabel?: string;\n\n /** Switch checked state color from theme.colors, defaults to theme.primaryColor */\n color?: MantineColor;\n\n /** Predefined size value */\n size?: MantineSize;\n\n /** Radius from theme.radius or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Props spread to wrapper element */\n wrapperProps?: { [key: string]: any };\n}\n\nconst defaultProps: Partial<SwitchProps> = {\n offLabel: '',\n onLabel: '',\n size: 'sm',\n radius: 'xl',\n};\n\nexport const Switch = forwardRef<HTMLInputElement, SwitchProps>((props: SwitchProps, ref) => {\n const {\n className,\n color,\n label,\n offLabel,\n onLabel,\n id,\n style,\n size,\n radius,\n wrapperProps,\n children,\n classNames,\n styles,\n sx,\n ...others\n } = useMantineDefaultProps('Switch', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { size, color, radius, offLabel, onLabel },\n { classNames, styles, name: 'Switch' }\n );\n\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useUuid(id);\n\n return (\n <Box\n className={cx(classes.root, className)}\n style={style}\n sx={sx}\n {...systemStyles}\n {...wrapperProps}\n >\n <input {...rest} id={uuid} ref={ref} type=\"checkbox\" className={classes.input} />\n\n {label && (\n <label className={classes.label} htmlFor={uuid}>\n {label}\n </label>\n )}\n </Box>\n );\n});\n\nSwitch.displayName = '@mantine/core/Switch';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useStyles","extractSystemStyles","useUuid","React","Box"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TabControl.js","sources":["../../../../src/components/Tabs/TabControl/TabControl.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, MantineColor,
|
|
1
|
+
{"version":3,"file":"TabControl.js","sources":["../../../../src/components/Tabs/TabControl/TabControl.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, MantineColor, Selectors } from '@mantine/styles';\nimport { mergeRefs } from '@mantine/hooks';\nimport { Box } from '../../Box';\nimport type { TabsVariant } from '../Tabs';\nimport useStyles from './TabControl.styles';\n\nexport type TabControlStylesNames = Exclude<Selectors<typeof useStyles>, TabsVariant>;\n\nexport interface TabControlProps\n extends DefaultProps<TabControlStylesNames>,\n React.ComponentPropsWithRef<'button'> {\n active?: boolean;\n color?: MantineColor;\n variant?: TabsVariant;\n orientation?: 'horizontal' | 'vertical';\n icon?: React.ReactNode;\n tabKey?: string;\n label?: React.ReactNode;\n children?: React.ReactNode;\n elementRef?: React.ForwardedRef<HTMLButtonElement>;\n}\n\nexport const TabControl = forwardRef<HTMLButtonElement, TabControlProps>(\n (\n {\n className,\n active,\n color,\n variant = 'default',\n classNames,\n styles,\n orientation = 'horizontal',\n icon: __,\n label,\n icon,\n tabKey,\n color: overrideColor,\n elementRef,\n ...others\n }: TabControlProps,\n ref\n ) => {\n const { classes, cx } = useStyles(\n { color: overrideColor || color, orientation },\n { classNames, styles, name: 'Tabs' }\n );\n\n return (\n <Box\n {...others}\n component=\"button\"\n tabIndex={active ? 0 : -1}\n className={cx(\n classes.tabControl,\n classes[variant],\n { [classes.tabActive]: active },\n className\n )}\n type=\"button\"\n role=\"tab\"\n aria-selected={active}\n ref={mergeRefs(ref, elementRef)}\n >\n <div className={classes.tabInner}>\n {icon && <div className={classes.tabIcon}>{icon}</div>}\n {label && <div className={classes.tabLabel}>{label}</div>}\n </div>\n </Box>\n );\n }\n);\n\nTabControl.displayName = '@mantine/core/TabControl';\n"],"names":["forwardRef","useStyles","React","Box","mergeRefs"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tabs.js","sources":["../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import React, { useRef, forwardRef, Children } from 'react';\nimport { useUncontrolled, clamp } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n ClassNames,\n ForwardRefWithStaticComponents,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport { Group, GroupPosition } from '../Group';\nimport { TabControl, TabControlStylesNames } from './TabControl/TabControl';\nimport useStyles from './Tabs.styles';\n\nexport type TabsVariant = 'default' | 'outline' | 'pills' | 'unstyled';\nexport type TabsStylesNames =\n | Exclude<ClassNames<typeof useStyles>, TabsVariant>\n | TabControlStylesNames;\n\nexport interface TabsProps\n extends DefaultProps<TabsStylesNames>,\n React.ComponentPropsWithRef<'div'> {\n /** <Tab /> components only */\n children: React.ReactNode;\n\n /** Index of initial tab */\n initialTab?: number;\n\n /** Index of active tab, overrides internal state */\n active?: number;\n\n /** Active tab color from theme.colors */\n color?: MantineColor;\n\n /** True if tabs should take all available space */\n grow?: boolean;\n\n /** Tab controls position */\n position?: GroupPosition;\n\n /** Called when tab control is clicked with tab index */\n onTabChange?(tabIndex: number, tabKey?: string): void;\n\n /** Controls appearance */\n variant?: TabsVariant;\n\n /** Controls tab content padding-top */\n tabPadding?: MantineNumberSize;\n\n /** Controls tab orientation */\n orientation?: 'horizontal' | 'vertical';\n}\n\nfunction getPreviousTab(active: number, tabs: React.ReactElement[]) {\n for (let i = active - 1; i >= 0; i -= 1) {\n if (!tabs[i].props.disabled) {\n return i;\n }\n }\n\n return active;\n}\n\nfunction getNextTab(active: number, tabs: React.ReactElement[]) {\n for (let i = active + 1; i < tabs.length; i += 1) {\n if (!tabs[i].props.disabled) {\n return i;\n }\n }\n\n return active;\n}\n\nfunction findInitialTab(tabs: React.ReactElement[]) {\n for (let i = 0; i < tabs.length; i += 1) {\n if (!tabs[i].props.disabled) {\n return i;\n }\n }\n\n return -1;\n}\n\ntype TabsComponent = ForwardRefWithStaticComponents<TabsProps, { Tab: typeof TabControl }>;\n\nconst defaultProps: Partial<TabsProps> = {\n position: 'left',\n grow: false,\n variant: 'default',\n tabPadding: 'xs',\n orientation: 'horizontal',\n};\n\nexport const Tabs: TabsComponent = forwardRef<HTMLDivElement, TabsProps>(\n (props: TabsProps, ref) => {\n const {\n className,\n children,\n initialTab,\n active,\n position,\n grow,\n onTabChange,\n color,\n variant,\n classNames,\n styles,\n tabPadding,\n orientation,\n ...others\n } = useMantineDefaultProps('Tabs', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { tabPadding, orientation },\n { classNames, styles, name: 'Tabs' }\n );\n\n const controlRefs = useRef<Record<string, HTMLButtonElement>>({});\n const tabs = Children.toArray(children) as React.ReactElement[];\n\n const [_activeTab, handleActiveTabChange] = useUncontrolled({\n value: active,\n defaultValue: initialTab,\n finalValue: findInitialTab(tabs),\n rule: (value) => typeof value === 'number',\n onChange: (value) => {\n if (onTabChange) {\n tabs.some((tab) => tab.props.tabKey)\n ? onTabChange(value, tabs[value].props.tabKey)\n : onTabChange(value);\n }\n },\n });\n\n const activeTab = clamp({ value: _activeTab, min: 0, max: tabs.length - 1 });\n\n const nextTabCode =\n orientation === 'horizontal'\n ? theme.dir === 'ltr'\n ? 'ArrowRight'\n : 'ArrowLeft'\n : 'ArrowDown';\n const previousTabCode =\n orientation === 'horizontal' ? (theme.dir === 'ltr' ? 'ArrowLeft' : 'ArrowRight') : 'ArrowUp';\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (event.nativeEvent.code === nextTabCode) {\n event.preventDefault();\n const nextTab = getNextTab(activeTab, tabs);\n handleActiveTabChange(nextTab);\n controlRefs.current[nextTab].focus();\n }\n\n if (event.nativeEvent.code === previousTabCode) {\n event.preventDefault();\n const previousTab = getPreviousTab(activeTab, tabs);\n handleActiveTabChange(previousTab);\n controlRefs.current[previousTab].focus();\n }\n };\n\n const panes = tabs.map((tab, index) =>\n React.cloneElement(tab, {\n key: index,\n active: activeTab === index,\n onKeyDown: handleKeyDown,\n color: tab.props.color || color,\n variant,\n orientation,\n elementRef: (node: HTMLButtonElement) => {\n controlRefs.current[index] = node;\n },\n onClick: () => activeTab !== index && handleActiveTabChange(index),\n classNames,\n styles,\n })\n );\n\n const content = tabs[activeTab].props.children;\n\n return (\n <Box ref={ref} className={cx(classes.root, className)} {...others}>\n <div className={cx(classes.tabsListWrapper, classes[variant])}>\n <Group\n className={classes.tabsList}\n role=\"tablist\"\n direction={orientation === 'horizontal' ? 'row' : 'column'}\n aria-orientation={orientation}\n spacing={variant === 'pills' ? 5 : 0}\n position={position}\n grow={grow}\n >\n {panes}\n </Group>\n </div>\n\n {content && (\n <div role=\"tabpanel\" className={classes.body} key={activeTab}>\n {content}\n </div>\n )}\n </Box>\n );\n }\n) as any;\n\nTabs.displayName = '@mantine/core/Tabs';\nTabs.Tab = TabControl;\n"],"names":["forwardRef","useMantineDefaultProps","styles","useStyles","useRef","Children","useUncontrolled","clamp","React","Box","Group","TabControl"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tabs.js","sources":["../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import React, { useRef, forwardRef, Children } from 'react';\nimport { useUncontrolled, clamp } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n Selectors,\n ForwardRefWithStaticComponents,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport { Group, GroupPosition } from '../Group';\nimport { TabControl, TabControlStylesNames } from './TabControl/TabControl';\nimport useStyles from './Tabs.styles';\n\nexport type TabsVariant = 'default' | 'outline' | 'pills' | 'unstyled';\nexport type TabsStylesNames =\n | Exclude<Selectors<typeof useStyles>, TabsVariant>\n | TabControlStylesNames;\n\nexport interface TabsProps\n extends DefaultProps<TabsStylesNames>,\n React.ComponentPropsWithRef<'div'> {\n /** <Tab /> components only */\n children: React.ReactNode;\n\n /** Index of initial tab */\n initialTab?: number;\n\n /** Index of active tab, overrides internal state */\n active?: number;\n\n /** Active tab color from theme.colors */\n color?: MantineColor;\n\n /** True if tabs should take all available space */\n grow?: boolean;\n\n /** Tab controls position */\n position?: GroupPosition;\n\n /** Called when tab control is clicked with tab index */\n onTabChange?(tabIndex: number, tabKey?: string): void;\n\n /** Controls appearance */\n variant?: TabsVariant;\n\n /** Controls tab content padding-top */\n tabPadding?: MantineNumberSize;\n\n /** Controls tab orientation */\n orientation?: 'horizontal' | 'vertical';\n}\n\nfunction getPreviousTab(active: number, tabs: React.ReactElement[]) {\n for (let i = active - 1; i >= 0; i -= 1) {\n if (!tabs[i].props.disabled) {\n return i;\n }\n }\n\n return active;\n}\n\nfunction getNextTab(active: number, tabs: React.ReactElement[]) {\n for (let i = active + 1; i < tabs.length; i += 1) {\n if (!tabs[i].props.disabled) {\n return i;\n }\n }\n\n return active;\n}\n\nfunction findInitialTab(tabs: React.ReactElement[]) {\n for (let i = 0; i < tabs.length; i += 1) {\n if (!tabs[i].props.disabled) {\n return i;\n }\n }\n\n return -1;\n}\n\ntype TabsComponent = ForwardRefWithStaticComponents<TabsProps, { Tab: typeof TabControl }>;\n\nconst defaultProps: Partial<TabsProps> = {\n position: 'left',\n grow: false,\n variant: 'default',\n tabPadding: 'xs',\n orientation: 'horizontal',\n};\n\nexport const Tabs: TabsComponent = forwardRef<HTMLDivElement, TabsProps>(\n (props: TabsProps, ref) => {\n const {\n className,\n children,\n initialTab,\n active,\n position,\n grow,\n onTabChange,\n color,\n variant,\n classNames,\n styles,\n tabPadding,\n orientation,\n ...others\n } = useMantineDefaultProps('Tabs', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { tabPadding, orientation },\n { classNames, styles, name: 'Tabs' }\n );\n\n const controlRefs = useRef<Record<string, HTMLButtonElement>>({});\n const tabs = Children.toArray(children) as React.ReactElement[];\n\n const [_activeTab, handleActiveTabChange] = useUncontrolled({\n value: active,\n defaultValue: initialTab,\n finalValue: findInitialTab(tabs),\n rule: (value) => typeof value === 'number',\n onChange: (value) => {\n if (onTabChange) {\n tabs.some((tab) => tab.props.tabKey)\n ? onTabChange(value, tabs[value].props.tabKey)\n : onTabChange(value);\n }\n },\n });\n\n const activeTab = clamp({ value: _activeTab, min: 0, max: tabs.length - 1 });\n\n const nextTabCode =\n orientation === 'horizontal'\n ? theme.dir === 'ltr'\n ? 'ArrowRight'\n : 'ArrowLeft'\n : 'ArrowDown';\n const previousTabCode =\n orientation === 'horizontal' ? (theme.dir === 'ltr' ? 'ArrowLeft' : 'ArrowRight') : 'ArrowUp';\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLButtonElement>) => {\n if (event.nativeEvent.code === nextTabCode) {\n event.preventDefault();\n const nextTab = getNextTab(activeTab, tabs);\n handleActiveTabChange(nextTab);\n controlRefs.current[nextTab].focus();\n }\n\n if (event.nativeEvent.code === previousTabCode) {\n event.preventDefault();\n const previousTab = getPreviousTab(activeTab, tabs);\n handleActiveTabChange(previousTab);\n controlRefs.current[previousTab].focus();\n }\n };\n\n const panes = tabs.map((tab, index) =>\n React.cloneElement(tab, {\n key: index,\n active: activeTab === index,\n onKeyDown: handleKeyDown,\n color: tab.props.color || color,\n variant,\n orientation,\n elementRef: (node: HTMLButtonElement) => {\n controlRefs.current[index] = node;\n },\n onClick: () => activeTab !== index && handleActiveTabChange(index),\n classNames,\n styles,\n })\n );\n\n const content = tabs[activeTab].props.children;\n\n return (\n <Box ref={ref} className={cx(classes.root, className)} {...others}>\n <div className={cx(classes.tabsListWrapper, classes[variant])}>\n <Group\n className={classes.tabsList}\n role=\"tablist\"\n direction={orientation === 'horizontal' ? 'row' : 'column'}\n aria-orientation={orientation}\n spacing={variant === 'pills' ? 5 : 0}\n position={position}\n grow={grow}\n >\n {panes}\n </Group>\n </div>\n\n {content && (\n <div role=\"tabpanel\" className={classes.body} key={activeTab}>\n {content}\n </div>\n )}\n </Box>\n );\n }\n) as any;\n\nTabs.displayName = '@mantine/core/Tabs';\nTabs.Tab = TabControl;\n"],"names":["forwardRef","useMantineDefaultProps","styles","useStyles","useRef","Children","useUncontrolled","clamp","React","Box","Group","TabControl"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.js","sources":["../../../src/components/Text/Text.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineSize,\n MantineGradient,\n
|
|
1
|
+
{"version":3,"file":"Text.js","sources":["../../../src/components/Text/Text.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineSize,\n MantineGradient,\n PolymorphicComponentProps,\n PolymorphicRef,\n useMantineDefaultProps,\n MantineColor,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport useStyles from './Text.styles';\n\nexport interface SharedTextProps extends DefaultProps {\n /** Predefined font-size from theme.fontSizes */\n size?: MantineSize;\n\n /** Text color from theme or dimmed variant */\n color?: 'dimmed' | MantineColor;\n\n /** Sets font-weight css property */\n weight?: React.CSSProperties['fontWeight'];\n\n /** Sets text-transform css property */\n transform?: 'capitalize' | 'uppercase' | 'lowercase' | 'none';\n\n /** Sets text-align css property */\n align?: 'left' | 'center' | 'right' | 'justify';\n\n /** Link or text variant */\n variant?: 'text' | 'link' | 'gradient';\n\n /** CSS -webkit-line-clamp property */\n lineClamp?: number;\n\n /** Sets line-height to 1 for centering */\n inline?: boolean;\n\n /** Underline the text */\n underline?: boolean;\n\n /** Inherit font properties from parent element */\n inherit?: boolean;\n\n /** Controls gradient settings in gradient variant only */\n gradient?: MantineGradient;\n}\n\nexport type TextProps<C> = PolymorphicComponentProps<C, SharedTextProps>;\n\ntype TextComponent = (<C = 'div'>(props: TextProps<C>) => React.ReactElement) & {\n displayName?: string;\n};\n\nconst defaultProps: Partial<TextProps<any>> = {\n size: 'md',\n variant: 'text',\n gradient: { from: 'blue', to: 'cyan', deg: 45 },\n inline: false,\n inherit: false,\n};\n\nexport const Text: TextComponent = forwardRef(\n (props: TextProps<'div'>, ref: PolymorphicRef<'div'>) => {\n const {\n className,\n component,\n size = 'md',\n weight,\n transform,\n color,\n align,\n variant = 'text',\n lineClamp,\n gradient = { from: 'blue', to: 'cyan', deg: 45 },\n inline = false,\n inherit = false,\n underline,\n classNames,\n styles,\n ...others\n } = useMantineDefaultProps('Text', defaultProps, props);\n\n const { classes, cx } = useStyles(\n {\n variant,\n color,\n size,\n lineClamp,\n inline,\n inherit,\n underline,\n weight,\n transform,\n align,\n gradientFrom: gradient.from,\n gradientTo: gradient.to,\n gradientDeg: gradient.deg,\n },\n { classNames, styles, name: 'Text' }\n );\n\n return (\n <Box\n ref={ref}\n component={component || 'div'}\n className={cx(classes.root, { [classes.gradient]: variant === 'gradient' }, className)}\n {...others}\n />\n );\n }\n) as any;\n\nText.displayName = '@mantine/core/Text';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useStyles","React","Box"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Text.styles.js","sources":["../../../src/components/Text/Text.styles.ts"],"sourcesContent":["import { createStyles, MantineTheme, MantineSize,
|
|
1
|
+
{"version":3,"file":"Text.styles.js","sources":["../../../src/components/Text/Text.styles.ts"],"sourcesContent":["import { createStyles, MantineTheme, MantineSize, CSSObject, MantineColor } from '@mantine/styles';\n\nexport interface TextStylesParams {\n color: 'dimmed' | MantineColor;\n variant: 'text' | 'link' | 'gradient';\n size: MantineSize;\n lineClamp: number;\n inline: boolean;\n inherit: boolean;\n underline: boolean;\n gradientFrom: string;\n gradientTo: string;\n gradientDeg: number;\n transform: 'capitalize' | 'uppercase' | 'lowercase' | 'none';\n align: 'left' | 'center' | 'right' | 'justify';\n weight: React.CSSProperties['fontWeight'];\n}\n\ninterface GetTextColor {\n theme: MantineTheme;\n color: 'dimmed' | MantineColor;\n variant: TextStylesParams['variant'];\n}\n\nfunction getTextColor({ theme, color, variant }: GetTextColor) {\n if (color === 'dimmed') {\n return theme.colorScheme === 'dark' ? theme.colors.dark[2] : theme.colors.gray[6];\n }\n\n return color in theme.colors\n ? theme.colors[color][theme.colorScheme === 'dark' ? 5 : 7]\n : variant === 'link'\n ? theme.colors[theme.primaryColor][theme.colorScheme === 'dark' ? 4 : 7]\n : color || 'inherit';\n}\n\nfunction getLineClamp(lineClamp: number): CSSObject {\n if (typeof lineClamp === 'number') {\n return {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n WebkitLineClamp: lineClamp,\n WebkitBoxOrient: 'vertical',\n };\n }\n\n return null;\n}\n\nexport default createStyles(\n (\n theme,\n {\n color,\n variant,\n size,\n lineClamp,\n inline,\n inherit,\n underline,\n gradientDeg,\n gradientTo,\n gradientFrom,\n weight,\n transform,\n align,\n }: TextStylesParams\n ) => {\n const colors = theme.fn.variant({\n variant: 'gradient',\n gradient: { from: gradientFrom, to: gradientTo, deg: gradientDeg },\n });\n\n return {\n root: {\n ...theme.fn.fontStyles(),\n ...theme.fn.focusStyles(),\n ...getLineClamp(lineClamp),\n color: getTextColor({ color, theme, variant }),\n fontFamily: inherit ? 'inherit' : theme.fontFamily,\n fontSize: inherit ? 'inherit' : theme.fontSizes[size],\n lineHeight: inherit ? 'inherit' : inline ? 1 : theme.lineHeight,\n textDecoration: underline ? 'underline' : 'none',\n WebkitTapHighlightColor: 'transparent',\n fontWeight: inherit ? 'inherit' : weight,\n textTransform: transform,\n textAlign: align,\n\n ...theme.fn.hover(\n variant === 'link' && underline === undefined\n ? {\n textDecoration: 'underline',\n }\n : undefined\n ),\n },\n\n gradient: {\n backgroundImage: colors.background,\n WebkitBackgroundClip: 'text',\n WebkitTextFillColor: 'transparent',\n },\n };\n }\n);\n"],"names":["createStyles"],"mappings":";;;;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,IAAI,iBAAiB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACzD,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAElE,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;AACjD,EAAE,IAAI,KAAK,KAAK,QAAQ,EAAE;AAC1B,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACtF,GAAG;AACH,EAAE,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,IAAI,SAAS,CAAC;AAC9M,CAAC;AACD,SAAS,YAAY,CAAC,SAAS,EAAE;AACjC,EAAE,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;AACrC,IAAI,OAAO;AACX,MAAM,QAAQ,EAAE,QAAQ;AACxB,MAAM,YAAY,EAAE,UAAU;AAC9B,MAAM,OAAO,EAAE,aAAa;AAC5B,MAAM,eAAe,EAAE,SAAS;AAChC,MAAM,eAAe,EAAE,UAAU;AACjC,KAAK,CAAC;AACN,GAAG;AACH,EAAE,OAAO,IAAI,CAAC;AACd,CAAC;AACD,gBAAeA,mBAAY,CAAC,CAAC,KAAK,EAAE;AACpC,EAAE,KAAK;AACP,EAAE,OAAO;AACT,EAAE,IAAI;AACN,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,OAAO;AACT,EAAE,SAAS;AACX,EAAE,WAAW;AACb,EAAE,UAAU;AACZ,EAAE,YAAY;AACd,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,KAAK;AACP,CAAC,KAAK;AACN,EAAE,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC;AAClC,IAAI,OAAO,EAAE,UAAU;AACvB,IAAI,QAAQ,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE;AACtE,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,aAAa,CAAC,cAAc,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE;AACnK,MAAM,KAAK,EAAE,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACpD,MAAM,UAAU,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC,UAAU;AACxD,MAAM,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;AAC3D,MAAM,UAAU,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,UAAU;AACrE,MAAM,cAAc,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM;AACtD,MAAM,uBAAuB,EAAE,aAAa;AAC5C,MAAM,UAAU,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM;AAC9C,MAAM,aAAa,EAAE,SAAS;AAC9B,MAAM,SAAS,EAAE,KAAK;AACtB,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,SAAS,KAAK,KAAK,CAAC,GAAG;AACpE,MAAM,cAAc,EAAE,WAAW;AACjC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC;AAChB,IAAI,QAAQ,EAAE;AACd,MAAM,eAAe,EAAE,MAAM,CAAC,UAAU;AACxC,MAAM,oBAAoB,EAAE,MAAM;AAClC,MAAM,mBAAmB,EAAE,aAAa;AACxC,KAAK;AACL,GAAG,CAAC;AACJ,CAAC,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimelineItem.js","sources":["../../../../src/components/Timeline/TimelineItem/TimelineItem.tsx"],"sourcesContent":["import React from 'react';\nimport { DefaultProps, MantineColor,
|
|
1
|
+
{"version":3,"file":"TimelineItem.js","sources":["../../../../src/components/Timeline/TimelineItem/TimelineItem.tsx"],"sourcesContent":["import React from 'react';\nimport { DefaultProps, MantineColor, Selectors, MantineNumberSize } from '@mantine/styles';\nimport { Text } from '../../Text';\nimport { Box } from '../../Box';\nimport useStyles from './TimelineItem.styles';\n\nexport type TimelineItemStylesNames = Selectors<typeof useStyles>;\n\nexport interface TimelineItemProps\n extends DefaultProps<TimelineItemStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'title'> {\n /** Item title, rendered next to bullet */\n title?: React.ReactNode;\n\n /** React node that should be rendered inside bullet – icon, image, avatar, etc. */\n bullet?: React.ReactNode;\n\n /** Bullet width, height and border-radius in px, controlled by Timeline component */\n bulletSize?: number;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** React node that will be rendered after title */\n children?: React.ReactNode;\n\n /** Should this item be highlighted, controlled by Timeline component */\n active?: boolean;\n\n /** Should line of this item be highlighted, controlled by Timeline component */\n lineActive?: boolean;\n\n /** Highlight color for active item */\n color?: MantineColor;\n\n /** Line and bullet position relative to item content, controlled by Timeline component */\n align?: 'right' | 'left';\n\n /** Line border style */\n lineVariant?: 'solid' | 'dashed' | 'dotted';\n\n /** Line border width in px, controlled by Timeline component */\n lineWidth?: number;\n}\n\nexport function TimelineItem({\n className,\n bullet,\n title,\n bulletSize = 20,\n radius = 'xl',\n lineWidth = 4,\n active,\n lineActive,\n classNames,\n styles,\n children,\n color,\n align,\n lineVariant = 'solid',\n ...others\n}: TimelineItemProps) {\n const { classes, cx } = useStyles(\n { bulletSize, color, radius, align, lineVariant, lineWidth },\n { classNames, styles, name: 'Timeline' }\n );\n\n return (\n <Box\n className={cx(\n classes.item,\n { [classes.itemLineActive]: lineActive, [classes.itemActive]: active },\n className\n )}\n {...others}\n >\n <div className={cx(classes.itemBullet, { [classes.itemBulletWithChild]: bullet })}>\n {bullet}\n </div>\n\n <div className={classes.itemBody}>\n {title && <Text className={classes.itemTitle}>{title}</Text>}\n <div className={classes.itemContent}>{children}</div>\n </div>\n </Box>\n );\n}\n\nTimelineItem.displayName = '@mantine/core/TimelineItem';\n"],"names":["useStyles","React","Box","Text"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingTooltip.js","sources":["../../../../src/components/Tooltip/FloatingTooltip/FloatingTooltip.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef, useEffect, useMemo } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n ClassNames,\n getDefaultZIndex,\n MantineNumberSize,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { useMergedRef, useMouse } from '@mantine/hooks';\nimport { Box } from '../../Box';\nimport { MantineTransition, Transition } from '../../Transition';\nimport useStyles from './FloatingTooltip.styles';\n\nexport type FloatingTooltipStylesNames = ClassNames<typeof useStyles>;\n\nexport interface FloatingTooltipProps\n extends DefaultProps<FloatingTooltipStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n /** Tooltip content */\n label: React.ReactNode;\n\n /** Any react node that should trigger tooltip */\n children: React.ReactNode;\n\n /** Open delay in ms, 0 to disable delay */\n openDelay?: number;\n\n /** Close delay in ms, 0 to disable delay */\n closeDelay?: number;\n\n /** Any color from theme.colors, defaults to gray in light color scheme and dark in dark colors scheme */\n color?: MantineColor;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** True to disable tooltip */\n disabled?: boolean;\n\n /** Tooltip width in px or auto */\n width?: number | 'auto';\n\n /** Allow multiline tooltip content */\n wrapLines?: boolean;\n\n /** Get tooltip ref */\n tooltipRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Tooltip id to bind aria-describedby */\n tooltipId?: string;\n\n /** useEffect dependencies to force update tooltip position */\n positionDependencies?: any[];\n\n /** Position of the tooltip relative to the cursor */\n position?: 'top' | 'left' | 'bottom' | 'right';\n\n /** Customize mount/unmount transition */\n transition?: MantineTransition;\n\n /** Mount transition duration in ms */\n transitionDuration?: number;\n\n /** Unmount transition duration in ms */\n exitTransitionDuration?: number;\n\n /** Mount/unmount transition timing function, defaults to theme.transitionTimingFunction */\n transitionTimingFunction?: string;\n\n /** Tooltip z-index */\n zIndex?: number;\n}\n\nconst defaultProps: Partial<FloatingTooltipProps> = {\n openDelay: 0,\n closeDelay: 0,\n color: 'gray',\n disabled: false,\n position: 'right',\n transition: 'pop-top-left',\n transitionDuration: 0,\n zIndex: getDefaultZIndex('popover'),\n width: 'auto',\n wrapLines: false,\n positionDependencies: [],\n};\n\nexport const FloatingTooltip = forwardRef<HTMLDivElement, FloatingTooltipProps>(\n (props: FloatingTooltipProps, ref) => {\n const {\n className,\n label,\n children,\n openDelay,\n closeDelay,\n color,\n radius,\n disabled,\n position,\n transition,\n transitionDuration,\n zIndex,\n transitionTimingFunction,\n width,\n wrapLines,\n positionDependencies,\n tooltipRef,\n tooltipId,\n classNames,\n styles,\n onMouseLeave,\n onMouseEnter,\n ...others\n } = useMantineDefaultProps('FloatingTooltip', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { color, radius },\n { classNames, styles, name: 'FloatingTooltip' }\n );\n const openTimeoutRef = useRef<number>();\n const closeTimeoutRef = useRef<number>();\n const _tooltipRef = useRef<HTMLDivElement>();\n const mergedTooltipRefs = useMergedRef(_tooltipRef, tooltipRef);\n const [opened, setOpened] = useState(false);\n const { ref: mouseRef, x, y } = useMouse();\n const visible = opened && !disabled;\n const mergedRefs = useMergedRef(ref, mouseRef);\n const coordinates = useMemo(() => {\n // There's no way to get the exact size of the\n // cursor using JS, however most OS's use 32x32\n const estimatedCursorSize = 32;\n const tooltipWidth =\n typeof width === 'number' ? width : _tooltipRef.current?.offsetWidth || 0;\n const tooltipHeight = _tooltipRef.current?.offsetHeight || 0;\n\n switch (position) {\n case 'top':\n return {\n left: x - tooltipWidth / 2,\n top: y - tooltipHeight,\n };\n case 'left':\n return {\n left: x - tooltipWidth - estimatedCursorSize / 2,\n top: y,\n };\n case 'right':\n return {\n left: x + estimatedCursorSize / 2,\n top: y,\n };\n case 'bottom':\n return {\n left: x - tooltipWidth / 2,\n top: y + tooltipHeight,\n };\n default:\n return {\n left: x || 0,\n top: y || 0,\n };\n }\n }, [x, y, ...positionDependencies]);\n\n const handleOpen = () => {\n window.clearTimeout(closeTimeoutRef.current);\n\n if (openDelay !== 0) {\n openTimeoutRef.current = window.setTimeout(() => {\n setOpened(true);\n }, openDelay);\n } else {\n setOpened(true);\n }\n };\n\n const handleClose = () => {\n window.clearTimeout(openTimeoutRef.current);\n\n if (closeDelay !== 0) {\n closeTimeoutRef.current = window.setTimeout(() => {\n setOpened(false);\n }, closeDelay);\n } else {\n setOpened(false);\n }\n };\n\n useEffect(\n () => () => {\n window.clearTimeout(openTimeoutRef.current);\n window.clearTimeout(closeTimeoutRef.current);\n },\n []\n );\n\n return (\n <Box<'div'>\n className={cx(classes.root, className)}\n onMouseEnter={(event) => {\n handleOpen();\n typeof onMouseEnter === 'function' && onMouseEnter(event);\n }}\n onMouseLeave={(event) => {\n handleClose();\n typeof onMouseLeave === 'function' && onMouseLeave(event);\n }}\n onFocusCapture={handleOpen}\n onBlurCapture={handleClose}\n ref={mergedRefs}\n {...others}\n >\n <Transition\n mounted={visible}\n duration={transitionDuration}\n transition={transition}\n exitDuration={transitionDuration}\n timingFunction={transitionTimingFunction}\n >\n {(transitionStyles) => (\n <div style={{ ...transitionStyles, zIndex, position: 'relative' }}>\n <Box\n className={classes.body}\n ref={mergedTooltipRefs}\n sx={{\n whiteSpace: wrapLines ? 'normal' : 'nowrap',\n width,\n ...coordinates,\n }}\n >\n {label}\n </Box>\n </div>\n )}\n </Transition>\n {children}\n </Box>\n );\n }\n);\n\nFloatingTooltip.displayName = '@mantine/core/FloatingTooltip';\n"],"names":["getDefaultZIndex","forwardRef","useMantineDefaultProps","styles","useStyles","useRef","useMergedRef","useState","useMouse","useMemo","useEffect","React","Box","Transition"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FloatingTooltip.js","sources":["../../../../src/components/Tooltip/FloatingTooltip/FloatingTooltip.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef, useEffect, useMemo } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n Selectors,\n getDefaultZIndex,\n MantineNumberSize,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { useMergedRef, useMouse } from '@mantine/hooks';\nimport { Box } from '../../Box';\nimport { MantineTransition, Transition } from '../../Transition';\nimport useStyles from './FloatingTooltip.styles';\n\nexport type FloatingTooltipStylesNames = Selectors<typeof useStyles>;\n\nexport interface FloatingTooltipProps\n extends DefaultProps<FloatingTooltipStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n /** Tooltip content */\n label: React.ReactNode;\n\n /** Any react node that should trigger tooltip */\n children: React.ReactNode;\n\n /** Open delay in ms, 0 to disable delay */\n openDelay?: number;\n\n /** Close delay in ms, 0 to disable delay */\n closeDelay?: number;\n\n /** Any color from theme.colors, defaults to gray in light color scheme and dark in dark colors scheme */\n color?: MantineColor;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** True to disable tooltip */\n disabled?: boolean;\n\n /** Tooltip width in px or auto */\n width?: number | 'auto';\n\n /** Allow multiline tooltip content */\n wrapLines?: boolean;\n\n /** Get tooltip ref */\n tooltipRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Tooltip id to bind aria-describedby */\n tooltipId?: string;\n\n /** useEffect dependencies to force update tooltip position */\n positionDependencies?: any[];\n\n /** Position of the tooltip relative to the cursor */\n position?: 'top' | 'left' | 'bottom' | 'right';\n\n /** Customize mount/unmount transition */\n transition?: MantineTransition;\n\n /** Mount transition duration in ms */\n transitionDuration?: number;\n\n /** Unmount transition duration in ms */\n exitTransitionDuration?: number;\n\n /** Mount/unmount transition timing function, defaults to theme.transitionTimingFunction */\n transitionTimingFunction?: string;\n\n /** Tooltip z-index */\n zIndex?: number;\n}\n\nconst defaultProps: Partial<FloatingTooltipProps> = {\n openDelay: 0,\n closeDelay: 0,\n color: 'gray',\n disabled: false,\n position: 'right',\n transition: 'pop-top-left',\n transitionDuration: 0,\n zIndex: getDefaultZIndex('popover'),\n width: 'auto',\n wrapLines: false,\n positionDependencies: [],\n};\n\nexport const FloatingTooltip = forwardRef<HTMLDivElement, FloatingTooltipProps>(\n (props: FloatingTooltipProps, ref) => {\n const {\n className,\n label,\n children,\n openDelay,\n closeDelay,\n color,\n radius,\n disabled,\n position,\n transition,\n transitionDuration,\n zIndex,\n transitionTimingFunction,\n width,\n wrapLines,\n positionDependencies,\n tooltipRef,\n tooltipId,\n classNames,\n styles,\n onMouseLeave,\n onMouseEnter,\n ...others\n } = useMantineDefaultProps('FloatingTooltip', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { color, radius },\n { classNames, styles, name: 'FloatingTooltip' }\n );\n const openTimeoutRef = useRef<number>();\n const closeTimeoutRef = useRef<number>();\n const _tooltipRef = useRef<HTMLDivElement>();\n const mergedTooltipRefs = useMergedRef(_tooltipRef, tooltipRef);\n const [opened, setOpened] = useState(false);\n const { ref: mouseRef, x, y } = useMouse();\n const visible = opened && !disabled;\n const mergedRefs = useMergedRef(ref, mouseRef);\n const coordinates = useMemo(() => {\n // There's no way to get the exact size of the\n // cursor using JS, however most OS's use 32x32\n const estimatedCursorSize = 32;\n const tooltipWidth =\n typeof width === 'number' ? width : _tooltipRef.current?.offsetWidth || 0;\n const tooltipHeight = _tooltipRef.current?.offsetHeight || 0;\n\n switch (position) {\n case 'top':\n return {\n left: x - tooltipWidth / 2,\n top: y - tooltipHeight,\n };\n case 'left':\n return {\n left: x - tooltipWidth - estimatedCursorSize / 2,\n top: y,\n };\n case 'right':\n return {\n left: x + estimatedCursorSize / 2,\n top: y,\n };\n case 'bottom':\n return {\n left: x - tooltipWidth / 2,\n top: y + tooltipHeight,\n };\n default:\n return {\n left: x || 0,\n top: y || 0,\n };\n }\n }, [x, y, ...positionDependencies]);\n\n const handleOpen = () => {\n window.clearTimeout(closeTimeoutRef.current);\n\n if (openDelay !== 0) {\n openTimeoutRef.current = window.setTimeout(() => {\n setOpened(true);\n }, openDelay);\n } else {\n setOpened(true);\n }\n };\n\n const handleClose = () => {\n window.clearTimeout(openTimeoutRef.current);\n\n if (closeDelay !== 0) {\n closeTimeoutRef.current = window.setTimeout(() => {\n setOpened(false);\n }, closeDelay);\n } else {\n setOpened(false);\n }\n };\n\n useEffect(\n () => () => {\n window.clearTimeout(openTimeoutRef.current);\n window.clearTimeout(closeTimeoutRef.current);\n },\n []\n );\n\n return (\n <Box<'div'>\n className={cx(classes.root, className)}\n onMouseEnter={(event) => {\n handleOpen();\n typeof onMouseEnter === 'function' && onMouseEnter(event);\n }}\n onMouseLeave={(event) => {\n handleClose();\n typeof onMouseLeave === 'function' && onMouseLeave(event);\n }}\n onFocusCapture={handleOpen}\n onBlurCapture={handleClose}\n ref={mergedRefs}\n {...others}\n >\n <Transition\n mounted={visible}\n duration={transitionDuration}\n transition={transition}\n exitDuration={transitionDuration}\n timingFunction={transitionTimingFunction}\n >\n {(transitionStyles) => (\n <div style={{ ...transitionStyles, zIndex, position: 'relative' }}>\n <Box\n className={classes.body}\n ref={mergedTooltipRefs}\n sx={{\n whiteSpace: wrapLines ? 'normal' : 'nowrap',\n width,\n ...coordinates,\n }}\n >\n {label}\n </Box>\n </div>\n )}\n </Transition>\n {children}\n </Box>\n );\n }\n);\n\nFloatingTooltip.displayName = '@mantine/core/FloatingTooltip';\n"],"names":["getDefaultZIndex","forwardRef","useMantineDefaultProps","styles","useStyles","useRef","useMergedRef","useState","useMouse","useMemo","useEffect","React","Box","Transition"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef, useEffect } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n ClassNames,\n getDefaultZIndex,\n MantineNumberSize,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { useMergedRef } from '@mantine/hooks';\nimport { Box } from '../Box';\nimport { Popper, SharedPopperProps } from '../Popper';\nimport useStyles from './Tooltip.styles';\n\nexport type TooltipStylesNames = ClassNames<typeof useStyles>;\n\nexport interface TooltipProps\n extends DefaultProps<TooltipStylesNames>,\n SharedPopperProps,\n React.ComponentPropsWithoutRef<'div'> {\n /** Tooltip content */\n label: React.ReactNode;\n\n /** Any react node that should trigger tooltip */\n children: React.ReactNode;\n\n /** Tooltip opened state for controlled variant */\n opened?: boolean;\n\n /** Open delay in ms, 0 to disable delay */\n openDelay?: number;\n\n /** Close delay in ms, 0 to disable delay */\n closeDelay?: number;\n\n /** Any color from theme.colors, defaults to gray in light color scheme and dark in dark colors scheme */\n color?: MantineColor;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** True to disable tooltip */\n disabled?: boolean;\n\n /** Arrow size in px */\n arrowSize?: number;\n\n /** Tooltip width in px or auto */\n width?: number | 'auto';\n\n /** Allow multiline tooltip content */\n wrapLines?: boolean;\n\n /** Allow pointer events on tooltip, warning: this may break some animations */\n allowPointerEvents?: boolean;\n\n /** Get tooltip ref */\n tooltipRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Tooltip id to bind aria-describedby */\n tooltipId?: string;\n\n /** useEffect dependencies to force update tooltip position */\n positionDependencies?: any[];\n\n /** Whether to render the target element in a Portal */\n withinPortal?: boolean;\n}\n\nconst defaultProps: Partial<TooltipProps> = {\n openDelay: 0,\n closeDelay: 0,\n gutter: 5,\n color: 'gray',\n disabled: false,\n withArrow: false,\n arrowSize: 2,\n position: 'top',\n placement: 'center',\n transition: 'pop-top-left',\n transitionDuration: 100,\n zIndex: getDefaultZIndex('popover'),\n width: 'auto',\n wrapLines: false,\n allowPointerEvents: false,\n positionDependencies: [],\n withinPortal: true,\n};\n\nexport const Tooltip = forwardRef<HTMLDivElement, TooltipProps>((props: TooltipProps, ref) => {\n const {\n className,\n label,\n children,\n opened,\n openDelay,\n closeDelay,\n gutter,\n color,\n radius,\n disabled,\n withArrow,\n arrowSize,\n position,\n placement,\n transition,\n transitionDuration,\n zIndex,\n transitionTimingFunction,\n width,\n wrapLines,\n allowPointerEvents,\n positionDependencies,\n withinPortal,\n tooltipRef,\n tooltipId,\n classNames,\n styles,\n onMouseLeave,\n onMouseEnter,\n ...others\n } = useMantineDefaultProps('Tooltip', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { color, radius },\n { classNames, styles, name: 'Tooltip' }\n );\n const openTimeoutRef = useRef<number>();\n const closeTimeoutRef = useRef<number>();\n const [_opened, setOpened] = useState(false);\n const visible = (typeof opened === 'boolean' ? opened : _opened) && !disabled;\n const [referenceElement, setReferenceElement] = useState(null);\n const mergedRefs = useMergedRef(ref, setReferenceElement);\n\n const handleOpen = () => {\n window.clearTimeout(closeTimeoutRef.current);\n\n if (openDelay !== 0) {\n openTimeoutRef.current = window.setTimeout(() => {\n setOpened(true);\n }, openDelay);\n } else {\n setOpened(true);\n }\n };\n\n const handleClose = () => {\n window.clearTimeout(openTimeoutRef.current);\n\n if (closeDelay !== 0) {\n closeTimeoutRef.current = window.setTimeout(() => {\n setOpened(false);\n }, closeDelay);\n } else {\n setOpened(false);\n }\n };\n\n useEffect(\n () => () => {\n window.clearTimeout(openTimeoutRef.current);\n window.clearTimeout(closeTimeoutRef.current);\n },\n []\n );\n\n return (\n <Box<'div'>\n className={cx(classes.root, className)}\n onPointerEnter={(event) => {\n handleOpen();\n typeof onMouseEnter === 'function' && onMouseEnter(event);\n }}\n onPointerLeave={(event) => {\n handleClose();\n typeof onMouseLeave === 'function' && onMouseLeave(event);\n }}\n onFocusCapture={handleOpen}\n onBlurCapture={handleClose}\n ref={mergedRefs}\n {...others}\n >\n <Popper\n referenceElement={referenceElement}\n transitionDuration={transitionDuration}\n transition={transition}\n mounted={visible}\n position={position}\n placement={placement}\n gutter={gutter}\n withArrow={withArrow}\n arrowSize={arrowSize}\n arrowDistance={theme.fn.radius(radius) > 10 ? 7 : 3}\n zIndex={zIndex}\n arrowClassName={classes.arrow}\n forceUpdateDependencies={[color, radius, ...positionDependencies]}\n withinPortal={withinPortal}\n >\n <Box\n className={classes.body}\n ref={tooltipRef}\n sx={{\n pointerEvents: allowPointerEvents ? 'all' : 'none',\n whiteSpace: wrapLines ? 'normal' : 'nowrap',\n width,\n }}\n >\n {label}\n </Box>\n </Popper>\n\n {children}\n </Box>\n );\n});\n\nTooltip.displayName = '@mantine/core/Tooltip';\n"],"names":["getDefaultZIndex","forwardRef","useMantineDefaultProps","styles","useStyles","useRef","useState","useMergedRef","useEffect","React","Box","Popper"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tooltip.js","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef, useEffect } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n Selectors,\n getDefaultZIndex,\n MantineNumberSize,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { useMergedRef } from '@mantine/hooks';\nimport { Box } from '../Box';\nimport { Popper, SharedPopperProps } from '../Popper';\nimport useStyles from './Tooltip.styles';\n\nexport type TooltipStylesNames = Selectors<typeof useStyles>;\n\nexport interface TooltipProps\n extends DefaultProps<TooltipStylesNames>,\n SharedPopperProps,\n React.ComponentPropsWithoutRef<'div'> {\n /** Tooltip content */\n label: React.ReactNode;\n\n /** Any react node that should trigger tooltip */\n children: React.ReactNode;\n\n /** Tooltip opened state for controlled variant */\n opened?: boolean;\n\n /** Open delay in ms, 0 to disable delay */\n openDelay?: number;\n\n /** Close delay in ms, 0 to disable delay */\n closeDelay?: number;\n\n /** Any color from theme.colors, defaults to gray in light color scheme and dark in dark colors scheme */\n color?: MantineColor;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** True to disable tooltip */\n disabled?: boolean;\n\n /** Arrow size in px */\n arrowSize?: number;\n\n /** Tooltip width in px or auto */\n width?: number | 'auto';\n\n /** Allow multiline tooltip content */\n wrapLines?: boolean;\n\n /** Allow pointer events on tooltip, warning: this may break some animations */\n allowPointerEvents?: boolean;\n\n /** Get tooltip ref */\n tooltipRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Tooltip id to bind aria-describedby */\n tooltipId?: string;\n\n /** useEffect dependencies to force update tooltip position */\n positionDependencies?: any[];\n\n /** Whether to render the target element in a Portal */\n withinPortal?: boolean;\n}\n\nconst defaultProps: Partial<TooltipProps> = {\n openDelay: 0,\n closeDelay: 0,\n gutter: 5,\n color: 'gray',\n disabled: false,\n withArrow: false,\n arrowSize: 2,\n position: 'top',\n placement: 'center',\n transition: 'pop-top-left',\n transitionDuration: 100,\n zIndex: getDefaultZIndex('popover'),\n width: 'auto',\n wrapLines: false,\n allowPointerEvents: false,\n positionDependencies: [],\n withinPortal: true,\n};\n\nexport const Tooltip = forwardRef<HTMLDivElement, TooltipProps>((props: TooltipProps, ref) => {\n const {\n className,\n label,\n children,\n opened,\n openDelay,\n closeDelay,\n gutter,\n color,\n radius,\n disabled,\n withArrow,\n arrowSize,\n position,\n placement,\n transition,\n transitionDuration,\n zIndex,\n transitionTimingFunction,\n width,\n wrapLines,\n allowPointerEvents,\n positionDependencies,\n withinPortal,\n tooltipRef,\n tooltipId,\n classNames,\n styles,\n onMouseLeave,\n onMouseEnter,\n ...others\n } = useMantineDefaultProps('Tooltip', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { color, radius },\n { classNames, styles, name: 'Tooltip' }\n );\n const openTimeoutRef = useRef<number>();\n const closeTimeoutRef = useRef<number>();\n const [_opened, setOpened] = useState(false);\n const visible = (typeof opened === 'boolean' ? opened : _opened) && !disabled;\n const [referenceElement, setReferenceElement] = useState(null);\n const mergedRefs = useMergedRef(ref, setReferenceElement);\n\n const handleOpen = () => {\n window.clearTimeout(closeTimeoutRef.current);\n\n if (openDelay !== 0) {\n openTimeoutRef.current = window.setTimeout(() => {\n setOpened(true);\n }, openDelay);\n } else {\n setOpened(true);\n }\n };\n\n const handleClose = () => {\n window.clearTimeout(openTimeoutRef.current);\n\n if (closeDelay !== 0) {\n closeTimeoutRef.current = window.setTimeout(() => {\n setOpened(false);\n }, closeDelay);\n } else {\n setOpened(false);\n }\n };\n\n useEffect(\n () => () => {\n window.clearTimeout(openTimeoutRef.current);\n window.clearTimeout(closeTimeoutRef.current);\n },\n []\n );\n\n return (\n <Box<'div'>\n className={cx(classes.root, className)}\n onPointerEnter={(event) => {\n handleOpen();\n typeof onMouseEnter === 'function' && onMouseEnter(event);\n }}\n onPointerLeave={(event) => {\n handleClose();\n typeof onMouseLeave === 'function' && onMouseLeave(event);\n }}\n onFocusCapture={handleOpen}\n onBlurCapture={handleClose}\n ref={mergedRefs}\n {...others}\n >\n <Popper\n referenceElement={referenceElement}\n transitionDuration={transitionDuration}\n transition={transition}\n mounted={visible}\n position={position}\n placement={placement}\n gutter={gutter}\n withArrow={withArrow}\n arrowSize={arrowSize}\n arrowDistance={theme.fn.radius(radius) > 10 ? 7 : 3}\n zIndex={zIndex}\n arrowClassName={classes.arrow}\n forceUpdateDependencies={[color, radius, ...positionDependencies]}\n withinPortal={withinPortal}\n >\n <Box\n className={classes.body}\n ref={tooltipRef}\n sx={{\n pointerEvents: allowPointerEvents ? 'all' : 'none',\n whiteSpace: wrapLines ? 'normal' : 'nowrap',\n width,\n }}\n >\n {label}\n </Box>\n </Popper>\n\n {children}\n </Box>\n );\n});\n\nTooltip.displayName = '@mantine/core/Tooltip';\n"],"names":["getDefaultZIndex","forwardRef","useMantineDefaultProps","styles","useStyles","useRef","useState","useMergedRef","useEffect","React","Box","Popper"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderList.js","sources":["../../../../src/components/TransferList/RenderList/RenderList.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { DefaultProps, ClassNames, MantineNumberSize } from '@mantine/styles';\nimport { useScrollIntoView } from '@mantine/hooks';\nimport { SelectScrollArea } from '../../Select/SelectScrollArea/SelectScrollArea';\nimport { UnstyledButton } from '../../Button';\nimport { ActionIcon } from '../../ActionIcon';\nimport { TextInput } from '../../TextInput';\nimport { Text } from '../../Text';\nimport { Divider } from '../../Divider/Divider';\nimport { LastIcon, NextIcon, FirstIcon, PrevIcon } from '../../Pagination/icons';\nimport { TransferListItem, TransferListItemComponent } from '../types';\nimport useStyles from './RenderList.styles';\nimport { groupOptions } from '../../../utils';\n\nexport type RenderListStylesNames = ClassNames<typeof useStyles>;\n\nexport interface RenderListProps extends DefaultProps<RenderListStylesNames> {\n data: TransferListItem[];\n onSelect(value: string): void;\n selection: string[];\n itemComponent: TransferListItemComponent;\n searchPlaceholder: string;\n filter(query: string, item: TransferListItem): boolean;\n nothingFound?: React.ReactNode;\n title?: React.ReactNode;\n reversed?: boolean;\n showTransferAll?: boolean;\n onMoveAll(): void;\n onMove(): void;\n height: number;\n radius: MantineNumberSize;\n listComponent?: React.FC<any>;\n limit?: number;\n}\n\nconst icons = {\n Prev: PrevIcon,\n Next: NextIcon,\n First: FirstIcon,\n Last: LastIcon,\n};\n\nconst rtlIons = {\n Next: PrevIcon,\n Prev: NextIcon,\n Last: FirstIcon,\n First: LastIcon,\n};\n\nexport function RenderList({\n className,\n data,\n onSelect,\n selection,\n itemComponent: ItemComponent,\n listComponent,\n searchPlaceholder,\n filter,\n nothingFound,\n title,\n showTransferAll,\n reversed,\n onMoveAll,\n onMove,\n height,\n radius,\n classNames,\n styles,\n limit,\n}: RenderListProps) {\n const { classes, cx, theme } = useStyles(\n { reversed, native: listComponent !== SelectScrollArea, radius },\n { name: 'TransferList', classNames, styles }\n );\n const unGroupedItems: React.ReactElement<any>[] = [];\n const groupedItems: React.ReactElement<any>[] = [];\n const [query, setQuery] = useState('');\n const [hovered, setHovered] = useState(-1);\n const filteredData = data.filter((item) => filter(query, item)).slice(0, limit);\n const ListComponent = listComponent || 'div';\n const Icons = theme.dir === 'rtl' ? rtlIons : icons;\n\n const itemsRefs = useRef<Record<string, HTMLButtonElement>>({});\n\n const sortedData: TransferListItem[] = groupOptions({ data: filteredData });\n\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n let groupName = null;\n\n sortedData.forEach((item, index) => {\n const itemComponent = (\n <UnstyledButton\n tabIndex={-1}\n onClick={() => onSelect(item.value)}\n key={item.value}\n onMouseEnter={() => setHovered(index)}\n className={cx(classes.transferListItem, {\n [classes.transferListItemHovered]: index === hovered,\n })}\n ref={(node: HTMLButtonElement) => {\n if (itemsRefs && itemsRefs.current) {\n itemsRefs.current[item.value] = node;\n }\n }}\n >\n <ItemComponent data={item} selected={selection.includes(item.value)} radius={radius} />\n </UnstyledButton>\n );\n\n if (!item.group) {\n unGroupedItems.push(itemComponent);\n } else {\n if (groupName !== item.group) {\n groupName = item.group;\n groupedItems.push(\n <div className={classes.separator} key={groupName}>\n <Divider classNames={{ label: classes.separatorLabel }} label={groupName} />\n </div>\n );\n }\n groupedItems.push(itemComponent);\n }\n });\n\n if (groupedItems.length > 0 && unGroupedItems.length > 0) {\n unGroupedItems.unshift(\n <div className={classes.separator}>\n <Divider classNames={{ label: classes.separatorLabel }} />\n </div>\n );\n }\n\n const handleSearchKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.code) {\n case 'Enter': {\n event.preventDefault();\n if (filteredData[hovered]) {\n onSelect(filteredData[hovered].value);\n }\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n setHovered((current) => {\n const nextIndex = current < filteredData.length - 1 ? current + 1 : current;\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: 'end',\n });\n\n return nextIndex;\n });\n break;\n }\n\n case 'ArrowUp': {\n event.preventDefault();\n setHovered((current) => {\n const nextIndex = current > 0 ? current - 1 : current;\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: 'start',\n });\n\n return nextIndex;\n });\n }\n }\n };\n\n return (\n <div className={cx(classes.transferList, className)}>\n {title && (\n <Text weight={500} className={classes.transferListTitle}>\n {title}\n </Text>\n )}\n\n <div className={classes.transferListBody}>\n <div className={classes.transferListHeader}>\n <TextInput\n value={query}\n onChange={(event) => {\n setQuery(event.currentTarget.value);\n setHovered(0);\n }}\n onFocus={() => setHovered(0)}\n onBlur={() => setHovered(-1)}\n placeholder={searchPlaceholder}\n radius={0}\n onKeyDown={handleSearchKeydown}\n sx={{ flex: 1 }}\n classNames={{ input: classes.transferListSearch }}\n />\n\n <ActionIcon\n variant=\"default\"\n size={36}\n radius={0}\n className={classes.transferListControl}\n disabled={selection.length === 0}\n onClick={onMove}\n >\n {reversed ? <Icons.Prev /> : <Icons.Next />}\n </ActionIcon>\n\n {showTransferAll && (\n <ActionIcon\n variant=\"default\"\n size={36}\n radius={0}\n className={classes.transferListControl}\n disabled={data.length === 0}\n onClick={onMoveAll}\n >\n {reversed ? <Icons.First /> : <Icons.Last />}\n </ActionIcon>\n )}\n </div>\n\n <ListComponent\n ref={scrollableRef}\n onMouseLeave={() => setHovered(-1)}\n className={classes.transferListItems}\n style={{ height, position: 'relative', overflowX: 'hidden' }}\n >\n {groupedItems.length > 0 || unGroupedItems.length > 0 ? (\n <>\n {groupedItems}\n {unGroupedItems}\n </>\n ) : (\n <Text color=\"dimmed\" size=\"sm\" align=\"center\" mt=\"sm\">\n {nothingFound}\n </Text>\n )}\n </ListComponent>\n </div>\n </div>\n );\n}\n\nRenderList.displayName = '@mantine/core/RenderList';\n"],"names":["PrevIcon","NextIcon","FirstIcon","LastIcon","useStyles","SelectScrollArea","useState","useRef","groupOptions","useScrollIntoView","React","UnstyledButton","Divider","Text","TextInput","ActionIcon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RenderList.js","sources":["../../../../src/components/TransferList/RenderList/RenderList.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { DefaultProps, Selectors, MantineNumberSize } from '@mantine/styles';\nimport { useScrollIntoView } from '@mantine/hooks';\nimport { SelectScrollArea } from '../../Select/SelectScrollArea/SelectScrollArea';\nimport { UnstyledButton } from '../../Button';\nimport { ActionIcon } from '../../ActionIcon';\nimport { TextInput } from '../../TextInput';\nimport { Text } from '../../Text';\nimport { Divider } from '../../Divider/Divider';\nimport { LastIcon, NextIcon, FirstIcon, PrevIcon } from '../../Pagination/icons';\nimport { TransferListItem, TransferListItemComponent } from '../types';\nimport useStyles from './RenderList.styles';\nimport { groupOptions } from '../../../utils';\n\nexport type RenderListStylesNames = Selectors<typeof useStyles>;\n\nexport interface RenderListProps extends DefaultProps<RenderListStylesNames> {\n data: TransferListItem[];\n onSelect(value: string): void;\n selection: string[];\n itemComponent: TransferListItemComponent;\n searchPlaceholder: string;\n filter(query: string, item: TransferListItem): boolean;\n nothingFound?: React.ReactNode;\n title?: React.ReactNode;\n reversed?: boolean;\n showTransferAll?: boolean;\n onMoveAll(): void;\n onMove(): void;\n height: number;\n radius: MantineNumberSize;\n listComponent?: React.FC<any>;\n limit?: number;\n}\n\nconst icons = {\n Prev: PrevIcon,\n Next: NextIcon,\n First: FirstIcon,\n Last: LastIcon,\n};\n\nconst rtlIons = {\n Next: PrevIcon,\n Prev: NextIcon,\n Last: FirstIcon,\n First: LastIcon,\n};\n\nexport function RenderList({\n className,\n data,\n onSelect,\n selection,\n itemComponent: ItemComponent,\n listComponent,\n searchPlaceholder,\n filter,\n nothingFound,\n title,\n showTransferAll,\n reversed,\n onMoveAll,\n onMove,\n height,\n radius,\n classNames,\n styles,\n limit,\n}: RenderListProps) {\n const { classes, cx, theme } = useStyles(\n { reversed, native: listComponent !== SelectScrollArea, radius },\n { name: 'TransferList', classNames, styles }\n );\n const unGroupedItems: React.ReactElement<any>[] = [];\n const groupedItems: React.ReactElement<any>[] = [];\n const [query, setQuery] = useState('');\n const [hovered, setHovered] = useState(-1);\n const filteredData = data.filter((item) => filter(query, item)).slice(0, limit);\n const ListComponent = listComponent || 'div';\n const Icons = theme.dir === 'rtl' ? rtlIons : icons;\n\n const itemsRefs = useRef<Record<string, HTMLButtonElement>>({});\n\n const sortedData: TransferListItem[] = groupOptions({ data: filteredData });\n\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n let groupName = null;\n\n sortedData.forEach((item, index) => {\n const itemComponent = (\n <UnstyledButton\n tabIndex={-1}\n onClick={() => onSelect(item.value)}\n key={item.value}\n onMouseEnter={() => setHovered(index)}\n className={cx(classes.transferListItem, {\n [classes.transferListItemHovered]: index === hovered,\n })}\n ref={(node: HTMLButtonElement) => {\n if (itemsRefs && itemsRefs.current) {\n itemsRefs.current[item.value] = node;\n }\n }}\n >\n <ItemComponent data={item} selected={selection.includes(item.value)} radius={radius} />\n </UnstyledButton>\n );\n\n if (!item.group) {\n unGroupedItems.push(itemComponent);\n } else {\n if (groupName !== item.group) {\n groupName = item.group;\n groupedItems.push(\n <div className={classes.separator} key={groupName}>\n <Divider classNames={{ label: classes.separatorLabel }} label={groupName} />\n </div>\n );\n }\n groupedItems.push(itemComponent);\n }\n });\n\n if (groupedItems.length > 0 && unGroupedItems.length > 0) {\n unGroupedItems.unshift(\n <div className={classes.separator}>\n <Divider classNames={{ label: classes.separatorLabel }} />\n </div>\n );\n }\n\n const handleSearchKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.code) {\n case 'Enter': {\n event.preventDefault();\n if (filteredData[hovered]) {\n onSelect(filteredData[hovered].value);\n }\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n setHovered((current) => {\n const nextIndex = current < filteredData.length - 1 ? current + 1 : current;\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: 'end',\n });\n\n return nextIndex;\n });\n break;\n }\n\n case 'ArrowUp': {\n event.preventDefault();\n setHovered((current) => {\n const nextIndex = current > 0 ? current - 1 : current;\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: 'start',\n });\n\n return nextIndex;\n });\n }\n }\n };\n\n return (\n <div className={cx(classes.transferList, className)}>\n {title && (\n <Text weight={500} className={classes.transferListTitle}>\n {title}\n </Text>\n )}\n\n <div className={classes.transferListBody}>\n <div className={classes.transferListHeader}>\n <TextInput\n value={query}\n onChange={(event) => {\n setQuery(event.currentTarget.value);\n setHovered(0);\n }}\n onFocus={() => setHovered(0)}\n onBlur={() => setHovered(-1)}\n placeholder={searchPlaceholder}\n radius={0}\n onKeyDown={handleSearchKeydown}\n sx={{ flex: 1 }}\n classNames={{ input: classes.transferListSearch }}\n />\n\n <ActionIcon\n variant=\"default\"\n size={36}\n radius={0}\n className={classes.transferListControl}\n disabled={selection.length === 0}\n onClick={onMove}\n >\n {reversed ? <Icons.Prev /> : <Icons.Next />}\n </ActionIcon>\n\n {showTransferAll && (\n <ActionIcon\n variant=\"default\"\n size={36}\n radius={0}\n className={classes.transferListControl}\n disabled={data.length === 0}\n onClick={onMoveAll}\n >\n {reversed ? <Icons.First /> : <Icons.Last />}\n </ActionIcon>\n )}\n </div>\n\n <ListComponent\n ref={scrollableRef}\n onMouseLeave={() => setHovered(-1)}\n className={classes.transferListItems}\n style={{ height, position: 'relative', overflowX: 'hidden' }}\n >\n {groupedItems.length > 0 || unGroupedItems.length > 0 ? (\n <>\n {groupedItems}\n {unGroupedItems}\n </>\n ) : (\n <Text color=\"dimmed\" size=\"sm\" align=\"center\" mt=\"sm\">\n {nothingFound}\n </Text>\n )}\n </ListComponent>\n </div>\n </div>\n );\n}\n\nRenderList.displayName = '@mantine/core/RenderList';\n"],"names":["PrevIcon","NextIcon","FirstIcon","LastIcon","useStyles","SelectScrollArea","useState","useRef","groupOptions","useScrollIntoView","React","UnstyledButton","Divider","Text","TextInput","ActionIcon"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionItem.js","sources":["../../../../src/components/Accordion/AccordionItem/AccordionItem.tsx"],"sourcesContent":["import React from 'react';\nimport { useReducedMotion } from '@mantine/hooks';\nimport { DefaultProps,
|
|
1
|
+
{"version":3,"file":"AccordionItem.js","sources":["../../../../src/components/Accordion/AccordionItem/AccordionItem.tsx"],"sourcesContent":["import React from 'react';\nimport { useReducedMotion } from '@mantine/hooks';\nimport { DefaultProps, Selectors } from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { Collapse } from '../../Collapse';\nimport { UnstyledButton } from '../../Button';\nimport { Center } from '../../Center';\nimport { ChevronIcon } from './ChevronIcon';\nimport useStyles, { AccordionIconPosition } from './AccordionItem.styles';\n\nexport type { AccordionIconPosition };\nexport type AccordionItemStylesNames = Selectors<typeof useStyles>;\n\nexport interface PublicAccordionItemProps\n extends DefaultProps<AccordionItemStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n label?: React.ReactNode;\n icon?: React.ReactNode;\n children?: React.ReactNode;\n disableIconRotation?: boolean;\n iconPosition?: AccordionIconPosition;\n controlRef?: React.ForwardedRef<HTMLButtonElement>;\n}\n\nexport interface AccordionItemProps extends PublicAccordionItemProps {\n opened?: boolean;\n onToggle?(): void;\n transitionDuration?: number;\n id?: string;\n onControlKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void;\n offsetIcon?: boolean;\n iconSize?: number;\n order?: 2 | 3 | 4 | 5 | 6;\n}\n\nexport function AccordionItem({\n opened,\n onToggle,\n label,\n children,\n className,\n classNames,\n styles,\n transitionDuration,\n icon = <ChevronIcon />,\n disableIconRotation = false,\n offsetIcon = true,\n iconSize = 24,\n iconPosition = 'left',\n order = 3,\n id,\n controlRef,\n onControlKeyDown,\n ...others\n}: AccordionItemProps) {\n const reduceMotion = useReducedMotion();\n const duration = reduceMotion ? 0 : transitionDuration;\n const { classes, cx } = useStyles(\n { transitionDuration: duration, disableIconRotation, iconPosition, offsetIcon, iconSize },\n { classNames, styles, name: 'Accordion' }\n );\n\n const cappedOrder = Math.min(6, Math.max(2, order)) as 2 | 3 | 4 | 5 | 6;\n const Heading = `h${cappedOrder}` as const;\n\n return (\n <Box className={cx(classes.item, { [classes.itemOpened]: opened }, className)} {...others}>\n <Heading className={classes.itemTitle}>\n <UnstyledButton\n className={classes.control}\n onClick={onToggle}\n type=\"button\"\n aria-expanded={opened}\n aria-controls={`${id}-body`}\n id={id}\n ref={controlRef}\n onKeyDown={onControlKeyDown}\n >\n <Center className={classes.icon}>{icon}</Center>\n <div className={classes.label}>{label}</div>\n </UnstyledButton>\n </Heading>\n\n <Collapse in={opened} transitionDuration={duration}>\n <div className={classes.content} role=\"region\" id={`${id}-body`} aria-labelledby={id}>\n <div className={classes.contentInner}>{children}</div>\n </div>\n </Collapse>\n </Box>\n );\n}\n\nAccordionItem.displayName = '@mantine/core/AccordionItem';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionIcon.js","sources":["../../../src/components/ActionIcon/ActionIcon.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n PolymorphicComponentProps,\n PolymorphicRef,\n
|
|
1
|
+
{"version":3,"file":"ActionIcon.js","sources":["../../../src/components/ActionIcon/ActionIcon.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n PolymorphicComponentProps,\n PolymorphicRef,\n Selectors,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport useStyles, { sizes, ActionIconVariant } from './ActionIcon.styles';\nimport { Loader, LoaderProps } from '../Loader';\n\nexport type ActionIconStylesNames = Selectors<typeof useStyles>;\n\ninterface _ActionIconProps extends DefaultProps<ActionIconStylesNames> {\n /** Icon rendered inside button */\n children?: React.ReactNode;\n\n /** Controls appearance */\n variant?: ActionIconVariant;\n\n /** Button hover, active and icon colors from theme, defaults to gray */\n color?: MantineColor;\n\n /** Button border-radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined icon size or number to set width and height in px */\n size?: MantineNumberSize;\n\n /** Props spread to Loader component */\n loaderProps?: LoaderProps;\n\n /** Indicate loading state */\n loading?: boolean;\n}\n\nexport type ActionIconProps<C> = PolymorphicComponentProps<C, _ActionIconProps>;\n\ntype ActionIconComponent = (<C = 'button'>(props: ActionIconProps<C>) => React.ReactElement) & {\n displayName?: string;\n};\n\nconst defaultProps: Partial<ActionIconProps<any>> = {\n color: 'gray',\n size: 'md',\n variant: 'hover',\n disabled: false,\n loading: false,\n};\n\nexport const ActionIcon: ActionIconComponent = forwardRef(\n (props: ActionIconProps<'button'>, ref: PolymorphicRef<'button'>) => {\n const {\n className,\n color,\n children,\n radius,\n size,\n variant,\n disabled,\n loaderProps,\n loading,\n component,\n styles,\n classNames,\n ...others\n } = useMantineDefaultProps('ActionIcon', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { size, radius, color },\n { name: 'ActionIcon', classNames, styles }\n );\n const colors = theme.fn.variant({ color, variant: 'light' });\n\n const loader = (\n <Loader color={colors.color} size={theme.fn.size({ size, sizes }) - 12} {...loaderProps} />\n );\n\n return (\n <Box<any>\n component={component || 'button'}\n className={cx(classes[variant], classes.root, { [classes.loading]: loading }, className)}\n type=\"button\"\n ref={ref}\n disabled={disabled || loading}\n {...others}\n >\n {loading ? loader : children}\n </Box>\n );\n }\n) as any;\n\nActionIcon.displayName = '@mantine/core/ActionIcon';\n"],"names":[],"mappings":"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"}
|
|
@@ -68,7 +68,7 @@ const Alert = forwardRef((props, ref) => {
|
|
|
68
68
|
]);
|
|
69
69
|
const { classes, cx } = useStyles({ color, radius, variant }, { classNames, styles, name: "Alert" });
|
|
70
70
|
const rootId = useUuid(id);
|
|
71
|
-
const titleId = title &&
|
|
71
|
+
const titleId = title && `${rootId}-title`;
|
|
72
72
|
const bodyId = `${rootId}-body`;
|
|
73
73
|
return /* @__PURE__ */ React.createElement(Box, __spreadValues({
|
|
74
74
|
id: rootId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert.js","sources":["../../../src/components/Alert/Alert.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n
|
|
1
|
+
{"version":3,"file":"Alert.js","sources":["../../../src/components/Alert/Alert.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n Selectors,\n MantineNumberSize,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { useUuid } from '@mantine/hooks';\nimport { CloseButton } from '../ActionIcon';\nimport { Box } from '../Box';\nimport useStyles from './Alert.styles';\n\nexport type AlertVariant = 'filled' | 'outline' | 'light';\nexport type AlertStylesNames = Selectors<typeof useStyles>;\n\nexport interface AlertProps\n extends DefaultProps<AlertStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'title'> {\n /** Alert title */\n title?: React.ReactNode;\n\n /** Controls Alert background, color and border styles, defaults to light */\n variant?: AlertVariant;\n\n /** Alert message */\n children: React.ReactNode;\n\n /** Color from theme.colors */\n color?: MantineColor;\n\n /** Icon displayed next to title */\n icon?: React.ReactNode;\n\n /** True to display close button */\n withCloseButton?: boolean;\n\n /** Called when close button is clicked */\n onClose?(): void;\n\n /** Close button aria-label */\n closeButtonLabel?: string;\n\n /** Radius from theme.radius, or number to set border-radius in px, defaults to theme.defaultRadius */\n radius?: MantineNumberSize;\n}\n\nconst defaultProps: Partial<AlertProps> = {\n variant: 'light',\n};\n\nexport const Alert = forwardRef<HTMLDivElement, AlertProps>((props: AlertProps, ref) => {\n const {\n id,\n className,\n title,\n variant,\n children,\n color,\n classNames,\n icon,\n styles,\n onClose,\n radius,\n withCloseButton,\n closeButtonLabel,\n ...others\n } = useMantineDefaultProps('Alert', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { color, radius, variant },\n { classNames, styles, name: 'Alert' }\n );\n\n const rootId = useUuid(id);\n\n const titleId = title && `${rootId}-title`;\n const bodyId = `${rootId}-body`;\n\n return (\n <Box\n id={rootId}\n role=\"alert\"\n aria-labelledby={titleId}\n aria-describedby={bodyId}\n className={cx(classes.root, classes[variant], className)}\n ref={ref}\n {...others}\n >\n <div className={classes.wrapper}>\n {icon && <div className={classes.icon}>{icon}</div>}\n\n <div className={classes.body}>\n {title && (\n <div className={classes.title}>\n <span id={titleId} className={classes.label}>\n {title}\n </span>\n\n {withCloseButton && (\n <CloseButton\n className={classes.closeButton}\n onClick={() => onClose?.()}\n variant=\"transparent\"\n size={16}\n iconSize={16}\n aria-label={closeButtonLabel}\n />\n )}\n </div>\n )}\n\n <div id={bodyId} className={classes.message}>\n {children}\n </div>\n </div>\n </div>\n </Box>\n );\n});\n\nAlert.displayName = '@mantine/core/Alert';\n"],"names":[],"mappings":"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"}
|