@mantine/core 4.1.1 → 4.1.4
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/ActionIcon/ActionIcon.js.map +1 -1
- package/cjs/components/Alert/Alert.js +12 -0
- package/cjs/components/Alert/Alert.js.map +1 -1
- package/cjs/components/Anchor/Anchor.js.map +1 -1
- package/cjs/components/AppShell/HorizontalSection/HorizontalSection.js +2 -1
- package/cjs/components/AppShell/HorizontalSection/HorizontalSection.js.map +1 -1
- package/cjs/components/AppShell/HorizontalSection/HorizontalSection.styles.js +2 -2
- package/cjs/components/AppShell/HorizontalSection/HorizontalSection.styles.js.map +1 -1
- package/cjs/components/AppShell/HorizontalSection/Section/Section.js.map +1 -1
- package/cjs/components/Autocomplete/Autocomplete.js +10 -3
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Avatar/Avatar.js.map +1 -1
- package/cjs/components/Badge/Badge.js.map +1 -1
- package/cjs/components/Box/Box.js.map +1 -1
- package/cjs/components/Burger/Burger.js +2 -4
- package/cjs/components/Burger/Burger.js.map +1 -1
- package/cjs/components/Burger/Burger.styles.js +6 -27
- package/cjs/components/Burger/Burger.styles.js.map +1 -1
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/UnstyledButton/UnstyledButton.js +2 -2
- package/cjs/components/Button/UnstyledButton/UnstyledButton.js.map +1 -1
- package/cjs/components/Card/Card.js +1 -1
- package/cjs/components/Card/Card.js.map +1 -1
- package/cjs/components/Card/CardSection/CardSection.js.map +1 -1
- package/cjs/components/Center/Center.js.map +1 -1
- package/cjs/components/ColorSwatch/ColorSwatch.js.map +1 -1
- package/cjs/components/Grid/Col/Col.js +4 -3
- package/cjs/components/Grid/Col/Col.js.map +1 -1
- package/cjs/components/Highlight/Highlight.js.map +1 -1
- package/cjs/components/Image/BackgroundImage/BackgroundImage.js.map +1 -1
- package/cjs/components/Input/Input.js.map +1 -1
- package/cjs/components/InputWrapper/InputWrapper.js +2 -1
- package/cjs/components/InputWrapper/InputWrapper.js.map +1 -1
- package/cjs/components/Modal/Modal.js +2 -0
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/MultiSelect/MultiSelect.js +20 -8
- package/cjs/components/MultiSelect/MultiSelect.js.map +1 -1
- package/cjs/components/MultiSelect/MultiSelect.styles.js +2 -1
- package/cjs/components/MultiSelect/MultiSelect.styles.js.map +1 -1
- package/cjs/components/Notification/Notification.js +1 -1
- package/cjs/components/Notification/Notification.js.map +1 -1
- package/cjs/components/Notification/Notification.styles.js +3 -2
- package/cjs/components/Notification/Notification.styles.js.map +1 -1
- package/cjs/components/NumberInput/NumberInput.js +3 -1
- package/cjs/components/NumberInput/NumberInput.js.map +1 -1
- package/cjs/components/Overlay/Overlay.js.map +1 -1
- package/cjs/components/Paper/Paper.js.map +1 -1
- package/cjs/components/Popper/Popper.js +3 -4
- package/cjs/components/Popper/Popper.js.map +1 -1
- package/cjs/components/SegmentedControl/SegmentedControl.js +10 -4
- package/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/cjs/components/SegmentedControl/SegmentedControl.styles.js +5 -2
- package/cjs/components/SegmentedControl/SegmentedControl.styles.js.map +1 -1
- package/cjs/components/Select/Select.js +32 -19
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/Select.styles.js +4 -1
- package/cjs/components/Select/Select.styles.js.map +1 -1
- package/cjs/components/Select/SelectItems/SelectItems.js +1 -1
- package/cjs/components/Select/SelectItems/SelectItems.js.map +1 -1
- package/cjs/components/Select/SelectRightSection/SelectRightSection.js +4 -2
- package/cjs/components/Select/SelectRightSection/SelectRightSection.js.map +1 -1
- package/cjs/components/Select/filter-data/filter-data.js +13 -1
- package/cjs/components/Select/filter-data/filter-data.js.map +1 -1
- package/cjs/components/Slider/RangeSlider/RangeSlider.js +2 -1
- package/cjs/components/Slider/RangeSlider/RangeSlider.js.map +1 -1
- package/cjs/components/Slider/Track/Track.js +5 -3
- package/cjs/components/Slider/Track/Track.js.map +1 -1
- package/cjs/components/Text/Text.js.map +1 -1
- package/cjs/components/Tooltip/FloatingTooltip/FloatingTooltip.js +40 -32
- package/cjs/components/Tooltip/FloatingTooltip/FloatingTooltip.js.map +1 -1
- package/cjs/components/Tooltip/FloatingTooltip/FloatingTooltip.styles.js +3 -2
- package/cjs/components/Tooltip/FloatingTooltip/FloatingTooltip.styles.js.map +1 -1
- package/esm/components/ActionIcon/ActionIcon.js.map +1 -1
- package/esm/components/Alert/Alert.js +12 -0
- package/esm/components/Alert/Alert.js.map +1 -1
- package/esm/components/Anchor/Anchor.js.map +1 -1
- package/esm/components/AppShell/HorizontalSection/HorizontalSection.js +2 -1
- package/esm/components/AppShell/HorizontalSection/HorizontalSection.js.map +1 -1
- package/esm/components/AppShell/HorizontalSection/HorizontalSection.styles.js +2 -2
- package/esm/components/AppShell/HorizontalSection/HorizontalSection.styles.js.map +1 -1
- package/esm/components/AppShell/HorizontalSection/Section/Section.js.map +1 -1
- package/esm/components/Autocomplete/Autocomplete.js +10 -3
- package/esm/components/Autocomplete/Autocomplete.js.map +1 -1
- package/esm/components/Avatar/Avatar.js.map +1 -1
- package/esm/components/Badge/Badge.js.map +1 -1
- package/esm/components/Box/Box.js.map +1 -1
- package/esm/components/Burger/Burger.js +2 -4
- package/esm/components/Burger/Burger.js.map +1 -1
- package/esm/components/Burger/Burger.styles.js +6 -27
- package/esm/components/Burger/Burger.styles.js.map +1 -1
- package/esm/components/Button/Button.js.map +1 -1
- package/esm/components/Button/UnstyledButton/UnstyledButton.js +2 -2
- package/esm/components/Button/UnstyledButton/UnstyledButton.js.map +1 -1
- package/esm/components/Card/Card.js +1 -1
- package/esm/components/Card/Card.js.map +1 -1
- package/esm/components/Card/CardSection/CardSection.js.map +1 -1
- package/esm/components/Center/Center.js.map +1 -1
- package/esm/components/ColorSwatch/ColorSwatch.js.map +1 -1
- package/esm/components/Grid/Col/Col.js +4 -3
- package/esm/components/Grid/Col/Col.js.map +1 -1
- package/esm/components/Highlight/Highlight.js.map +1 -1
- package/esm/components/Image/BackgroundImage/BackgroundImage.js.map +1 -1
- package/esm/components/Input/Input.js.map +1 -1
- package/esm/components/InputWrapper/InputWrapper.js +2 -1
- package/esm/components/InputWrapper/InputWrapper.js.map +1 -1
- package/esm/components/Modal/Modal.js +2 -0
- package/esm/components/Modal/Modal.js.map +1 -1
- package/esm/components/MultiSelect/MultiSelect.js +20 -8
- package/esm/components/MultiSelect/MultiSelect.js.map +1 -1
- package/esm/components/MultiSelect/MultiSelect.styles.js +2 -1
- package/esm/components/MultiSelect/MultiSelect.styles.js.map +1 -1
- package/esm/components/Notification/Notification.js +1 -1
- package/esm/components/Notification/Notification.js.map +1 -1
- package/esm/components/Notification/Notification.styles.js +3 -2
- package/esm/components/Notification/Notification.styles.js.map +1 -1
- package/esm/components/NumberInput/NumberInput.js +3 -1
- package/esm/components/NumberInput/NumberInput.js.map +1 -1
- package/esm/components/Overlay/Overlay.js.map +1 -1
- package/esm/components/Paper/Paper.js.map +1 -1
- package/esm/components/Popper/Popper.js +3 -4
- package/esm/components/Popper/Popper.js.map +1 -1
- package/esm/components/SegmentedControl/SegmentedControl.js +11 -5
- package/esm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/esm/components/SegmentedControl/SegmentedControl.styles.js +5 -2
- package/esm/components/SegmentedControl/SegmentedControl.styles.js.map +1 -1
- package/esm/components/Select/Select.js +32 -19
- package/esm/components/Select/Select.js.map +1 -1
- package/esm/components/Select/Select.styles.js +4 -1
- package/esm/components/Select/Select.styles.js.map +1 -1
- package/esm/components/Select/SelectItems/SelectItems.js +1 -1
- package/esm/components/Select/SelectItems/SelectItems.js.map +1 -1
- package/esm/components/Select/SelectRightSection/SelectRightSection.js +4 -2
- package/esm/components/Select/SelectRightSection/SelectRightSection.js.map +1 -1
- package/esm/components/Select/filter-data/filter-data.js +13 -1
- package/esm/components/Select/filter-data/filter-data.js.map +1 -1
- package/esm/components/Slider/RangeSlider/RangeSlider.js +2 -1
- package/esm/components/Slider/RangeSlider/RangeSlider.js.map +1 -1
- package/esm/components/Slider/Track/Track.js +5 -3
- package/esm/components/Slider/Track/Track.js.map +1 -1
- package/esm/components/Text/Text.js.map +1 -1
- package/esm/components/Tooltip/FloatingTooltip/FloatingTooltip.js +40 -32
- package/esm/components/Tooltip/FloatingTooltip/FloatingTooltip.js.map +1 -1
- package/esm/components/Tooltip/FloatingTooltip/FloatingTooltip.styles.js +3 -2
- package/esm/components/Tooltip/FloatingTooltip/FloatingTooltip.styles.js.map +1 -1
- package/lib/components/ActionIcon/ActionIcon.d.ts.map +1 -1
- package/lib/components/ActionIcon/CloseButton/CloseButton.d.ts +1 -1
- package/lib/components/Alert/Alert.d.ts.map +1 -1
- package/lib/components/Anchor/Anchor.d.ts.map +1 -1
- package/lib/components/AppShell/HorizontalSection/HorizontalSection.d.ts.map +1 -1
- package/lib/components/AppShell/HorizontalSection/HorizontalSection.styles.d.ts +1 -0
- package/lib/components/AppShell/HorizontalSection/HorizontalSection.styles.d.ts.map +1 -1
- package/lib/components/AppShell/HorizontalSection/Section/Section.d.ts.map +1 -1
- package/lib/components/Autocomplete/Autocomplete.d.ts +4 -0
- package/lib/components/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/lib/components/Avatar/Avatar.d.ts.map +1 -1
- package/lib/components/Badge/Badge.d.ts.map +1 -1
- package/lib/components/Box/Box.d.ts.map +1 -1
- package/lib/components/Burger/Burger.d.ts.map +1 -1
- package/lib/components/Burger/Burger.styles.d.ts.map +1 -1
- package/lib/components/Button/Button.d.ts.map +1 -1
- package/lib/components/Button/Button.styles.d.ts +2 -2
- package/lib/components/Button/UnstyledButton/UnstyledButton.d.ts.map +1 -1
- package/lib/components/Card/CardSection/CardSection.d.ts.map +1 -1
- package/lib/components/Center/Center.d.ts.map +1 -1
- package/lib/components/ColorSwatch/ColorSwatch.d.ts +4 -2
- package/lib/components/ColorSwatch/ColorSwatch.d.ts.map +1 -1
- package/lib/components/ColorSwatch/index.d.ts +1 -1
- package/lib/components/ColorSwatch/index.d.ts.map +1 -1
- package/lib/components/Grid/Col/Col.d.ts.map +1 -1
- package/lib/components/Highlight/Highlight.d.ts.map +1 -1
- package/lib/components/Image/BackgroundImage/BackgroundImage.d.ts.map +1 -1
- package/lib/components/Input/Input.d.ts.map +1 -1
- package/lib/components/InputWrapper/InputWrapper.d.ts.map +1 -1
- package/lib/components/Modal/Modal.d.ts.map +1 -1
- package/lib/components/MultiSelect/MultiSelect.d.ts +2 -0
- package/lib/components/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/lib/components/MultiSelect/MultiSelect.styles.d.ts.map +1 -1
- package/lib/components/Notification/Notification.styles.d.ts +0 -1
- package/lib/components/Notification/Notification.styles.d.ts.map +1 -1
- package/lib/components/NumberInput/NumberInput.d.ts.map +1 -1
- package/lib/components/Overlay/Overlay.d.ts.map +1 -1
- package/lib/components/Paper/Paper.d.ts.map +1 -1
- package/lib/components/Popover/Popover.styles.d.ts +2 -2
- package/lib/components/Popper/Popper.d.ts +1 -6
- package/lib/components/Popper/Popper.d.ts.map +1 -1
- package/lib/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/lib/components/SegmentedControl/SegmentedControl.styles.d.ts.map +1 -1
- package/lib/components/Select/Select.d.ts +4 -0
- package/lib/components/Select/Select.d.ts.map +1 -1
- package/lib/components/Select/Select.styles.d.ts.map +1 -1
- package/lib/components/Select/SelectRightSection/SelectRightSection.d.ts +2 -1
- package/lib/components/Select/SelectRightSection/SelectRightSection.d.ts.map +1 -1
- package/lib/components/Select/filter-data/filter-data.d.ts +3 -1
- package/lib/components/Select/filter-data/filter-data.d.ts.map +1 -1
- package/lib/components/Slider/RangeSlider/RangeSlider.d.ts.map +1 -1
- package/lib/components/Slider/Track/Track.d.ts +3 -2
- package/lib/components/Slider/Track/Track.d.ts.map +1 -1
- package/lib/components/Tabs/TabControl/TabControl.d.ts +1 -1
- package/lib/components/Text/Text.d.ts.map +1 -1
- package/lib/components/Tooltip/FloatingTooltip/FloatingTooltip.d.ts +14 -4
- package/lib/components/Tooltip/FloatingTooltip/FloatingTooltip.d.ts.map +1 -1
- package/lib/components/Tooltip/FloatingTooltip/FloatingTooltip.styles.d.ts.map +1 -1
- package/package.json +3 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.styles.js","sources":["../../../src/components/Select/Select.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\nexport default createStyles(() => ({\n input: {\n '&:not(:disabled)': {\n cursor: 'pointer',\n },\n },\n}));\n"],"names":["createStyles"],"mappings":";;;;;;AACA,gBAAeA,mBAAY,CAAC,OAAO;AACnC,EAAE,KAAK,EAAE;AACT,IAAI,kBAAkB,EAAE;AACxB,MAAM,MAAM,EAAE,SAAS;AACvB,KAAK;AACL,GAAG;AACH,CAAC,CAAC,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"Select.styles.js","sources":["../../../src/components/Select/Select.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\nexport default createStyles(() => ({\n input: {\n '&:not(:disabled)': {\n cursor: 'pointer',\n\n '&::selection': {\n backgroundColor: 'transparent',\n },\n },\n },\n}));\n"],"names":["createStyles"],"mappings":";;;;;;AACA,gBAAeA,mBAAY,CAAC,OAAO;AACnC,EAAE,KAAK,EAAE;AACT,IAAI,kBAAkB,EAAE;AACxB,MAAM,MAAM,EAAE,SAAS;AACvB,MAAM,cAAc,EAAE;AACtB,QAAQ,eAAe,EAAE,aAAa;AACtC,OAAO;AACP,KAAK;AACL,GAAG;AACH,CAAC,CAAC,CAAC;;;;"}
|
|
@@ -86,7 +86,7 @@ function SelectItems({
|
|
|
86
86
|
groupName = item.group;
|
|
87
87
|
groupedItems.push(/* @__PURE__ */ React__default.createElement("div", {
|
|
88
88
|
className: classes.separator,
|
|
89
|
-
key: index
|
|
89
|
+
key: `__mantine-divider-${index}`
|
|
90
90
|
}, /* @__PURE__ */ React__default.createElement(Divider.Divider, {
|
|
91
91
|
classNames: { label: classes.separatorLabel },
|
|
92
92
|
label: item.group
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectItems.js","sources":["../../../../src/components/Select/SelectItems/SelectItems.tsx"],"sourcesContent":["import React from 'react';\nimport { DefaultProps, MantineSize, ClassNames } from '@mantine/styles';\nimport { Text } from '../../Text/Text';\nimport { Divider } from '../../Divider/Divider';\nimport { SelectItem } from '../types';\nimport useStyles from './SelectItems.styles';\n\nexport type SelectItemsStylesNames = ClassNames<typeof useStyles>;\n\nexport interface SelectItemsProps extends DefaultProps<SelectItemsStylesNames> {\n data: SelectItem[];\n hovered: number;\n __staticSelector: string;\n isItemSelected?(itemValue: string): boolean;\n uuid: string;\n itemsRefs?: React.MutableRefObject<Record<string, HTMLDivElement>>;\n onItemHover(index: number): void;\n onItemSelect(item: SelectItem): void;\n size: MantineSize;\n itemComponent: React.FC<any>;\n nothingFound?: React.ReactNode;\n creatable?: boolean;\n createLabel?: React.ReactNode;\n}\n\nexport function SelectItems({\n data,\n hovered,\n classNames,\n styles,\n isItemSelected,\n uuid,\n __staticSelector,\n onItemHover,\n onItemSelect,\n itemsRefs,\n itemComponent: Item,\n size,\n nothingFound,\n creatable,\n createLabel,\n}: SelectItemsProps) {\n const { classes, cx } = useStyles({ size }, { classNames, styles, name: __staticSelector });\n const unGroupedItems: React.ReactElement<any>[] = [];\n const groupedItems: React.ReactElement<any>[] = [];\n let creatableDataIndex = null;\n\n const constructItemComponent = (item: SelectItem, index: number) => {\n const selected = typeof isItemSelected === 'function' ? isItemSelected(item.value) : false;\n return (\n <Item\n key={item.value}\n className={cx(classes.item, {\n [classes.hovered]: !item.disabled && hovered === index,\n [classes.selected]: !item.disabled && selected,\n [classes.disabled]: item.disabled,\n })}\n onMouseEnter={() => onItemHover(index)}\n id={`${uuid}-${index}`}\n role=\"option\"\n data-ignore-outside-clicks\n tabIndex={-1}\n aria-selected={hovered === index}\n ref={(node: HTMLDivElement) => {\n if (itemsRefs && itemsRefs.current) {\n // eslint-disable-next-line no-param-reassign\n itemsRefs.current[item.value] = node;\n }\n }}\n onMouseDown={\n !item.disabled\n ? (event: React.MouseEvent<HTMLDivElement>) => {\n event.preventDefault();\n onItemSelect(item);\n }\n : null\n }\n disabled={item.disabled}\n {...item}\n />\n );\n };\n\n let groupName = null;\n data.forEach((item, index) => {\n if (item.creatable) {\n creatableDataIndex = index;\n } else if (!item.group) {\n unGroupedItems.push(constructItemComponent(item, index));\n } else {\n if (groupName !== item.group) {\n groupName = item.group;\n groupedItems.push(\n <div className={classes.separator} key={index}>\n <Divider classNames={{ label: classes.separatorLabel }} label={item.group} />\n </div>\n );\n }\n groupedItems.push(constructItemComponent(item, index));\n }\n });\n\n if (creatable) {\n const creatableDataItem = data[creatableDataIndex];\n const selected =\n typeof isItemSelected === 'function' ? isItemSelected(data[creatableDataIndex].value) : false;\n unGroupedItems.push(\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div\n key={creatableDataItem.value}\n className={cx(classes.item, {\n [classes.hovered]: hovered === creatableDataIndex,\n [classes.selected]: selected,\n })}\n onMouseEnter={() => onItemHover(creatableDataIndex)}\n onMouseDown={(event: React.MouseEvent<HTMLDivElement>) => {\n event.preventDefault();\n onItemSelect(creatableDataItem);\n }}\n tabIndex={-1}\n ref={(node: HTMLDivElement) => {\n if (itemsRefs && itemsRefs.current) {\n // eslint-disable-next-line no-param-reassign\n itemsRefs.current[creatableDataItem.value] = node;\n }\n }}\n >\n {createLabel}\n </div>\n );\n }\n\n if (groupedItems.length > 0 && unGroupedItems.length > 0) {\n unGroupedItems.unshift(\n <div className={classes.separator}>\n <Divider />\n </div>\n );\n }\n\n return groupedItems.length > 0 || unGroupedItems.length > 0 ? (\n <>\n {groupedItems}\n {unGroupedItems}\n </>\n ) : (\n <Text size={size} className={classes.nothingFound}>\n {nothingFound}\n </Text>\n );\n}\n\nSelectItems.displayName = '@mantine/core/SelectItems';\n"],"names":["useStyles","React","Divider","Text"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SelectItems.js","sources":["../../../../src/components/Select/SelectItems/SelectItems.tsx"],"sourcesContent":["import React from 'react';\nimport { DefaultProps, MantineSize, ClassNames } from '@mantine/styles';\nimport { Text } from '../../Text/Text';\nimport { Divider } from '../../Divider/Divider';\nimport { SelectItem } from '../types';\nimport useStyles from './SelectItems.styles';\n\nexport type SelectItemsStylesNames = ClassNames<typeof useStyles>;\n\nexport interface SelectItemsProps extends DefaultProps<SelectItemsStylesNames> {\n data: SelectItem[];\n hovered: number;\n __staticSelector: string;\n isItemSelected?(itemValue: string): boolean;\n uuid: string;\n itemsRefs?: React.MutableRefObject<Record<string, HTMLDivElement>>;\n onItemHover(index: number): void;\n onItemSelect(item: SelectItem): void;\n size: MantineSize;\n itemComponent: React.FC<any>;\n nothingFound?: React.ReactNode;\n creatable?: boolean;\n createLabel?: React.ReactNode;\n}\n\nexport function SelectItems({\n data,\n hovered,\n classNames,\n styles,\n isItemSelected,\n uuid,\n __staticSelector,\n onItemHover,\n onItemSelect,\n itemsRefs,\n itemComponent: Item,\n size,\n nothingFound,\n creatable,\n createLabel,\n}: SelectItemsProps) {\n const { classes, cx } = useStyles({ size }, { classNames, styles, name: __staticSelector });\n const unGroupedItems: React.ReactElement<any>[] = [];\n const groupedItems: React.ReactElement<any>[] = [];\n let creatableDataIndex = null;\n\n const constructItemComponent = (item: SelectItem, index: number) => {\n const selected = typeof isItemSelected === 'function' ? isItemSelected(item.value) : false;\n return (\n <Item\n key={item.value}\n className={cx(classes.item, {\n [classes.hovered]: !item.disabled && hovered === index,\n [classes.selected]: !item.disabled && selected,\n [classes.disabled]: item.disabled,\n })}\n onMouseEnter={() => onItemHover(index)}\n id={`${uuid}-${index}`}\n role=\"option\"\n data-ignore-outside-clicks\n tabIndex={-1}\n aria-selected={hovered === index}\n ref={(node: HTMLDivElement) => {\n if (itemsRefs && itemsRefs.current) {\n // eslint-disable-next-line no-param-reassign\n itemsRefs.current[item.value] = node;\n }\n }}\n onMouseDown={\n !item.disabled\n ? (event: React.MouseEvent<HTMLDivElement>) => {\n event.preventDefault();\n onItemSelect(item);\n }\n : null\n }\n disabled={item.disabled}\n {...item}\n />\n );\n };\n\n let groupName = null;\n data.forEach((item, index) => {\n if (item.creatable) {\n creatableDataIndex = index;\n } else if (!item.group) {\n unGroupedItems.push(constructItemComponent(item, index));\n } else {\n if (groupName !== item.group) {\n groupName = item.group;\n groupedItems.push(\n <div className={classes.separator} key={`__mantine-divider-${index}`}>\n <Divider classNames={{ label: classes.separatorLabel }} label={item.group} />\n </div>\n );\n }\n groupedItems.push(constructItemComponent(item, index));\n }\n });\n\n if (creatable) {\n const creatableDataItem = data[creatableDataIndex];\n const selected =\n typeof isItemSelected === 'function' ? isItemSelected(data[creatableDataIndex].value) : false;\n unGroupedItems.push(\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div\n key={creatableDataItem.value}\n className={cx(classes.item, {\n [classes.hovered]: hovered === creatableDataIndex,\n [classes.selected]: selected,\n })}\n onMouseEnter={() => onItemHover(creatableDataIndex)}\n onMouseDown={(event: React.MouseEvent<HTMLDivElement>) => {\n event.preventDefault();\n onItemSelect(creatableDataItem);\n }}\n tabIndex={-1}\n ref={(node: HTMLDivElement) => {\n if (itemsRefs && itemsRefs.current) {\n // eslint-disable-next-line no-param-reassign\n itemsRefs.current[creatableDataItem.value] = node;\n }\n }}\n >\n {createLabel}\n </div>\n );\n }\n\n if (groupedItems.length > 0 && unGroupedItems.length > 0) {\n unGroupedItems.unshift(\n <div className={classes.separator}>\n <Divider />\n </div>\n );\n }\n\n return groupedItems.length > 0 || unGroupedItems.length > 0 ? (\n <>\n {groupedItems}\n {unGroupedItems}\n </>\n ) : (\n <Text size={size} className={classes.nothingFound}>\n {nothingFound}\n </Text>\n );\n}\n\nSelectItems.displayName = '@mantine/core/SelectItems';\n"],"names":["useStyles","React","Divider","Text"],"mappings":"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"}
|
|
@@ -15,13 +15,15 @@ function SelectRightSection({
|
|
|
15
15
|
clearButtonLabel,
|
|
16
16
|
onClear,
|
|
17
17
|
size,
|
|
18
|
-
error
|
|
18
|
+
error,
|
|
19
|
+
clearButtonTabIndex
|
|
19
20
|
}) {
|
|
20
21
|
return shouldClear ? /* @__PURE__ */ React__default.createElement(CloseButton.CloseButton, {
|
|
21
22
|
variant: "transparent",
|
|
22
23
|
"aria-label": clearButtonLabel,
|
|
23
24
|
onClick: onClear,
|
|
24
|
-
size
|
|
25
|
+
size,
|
|
26
|
+
tabIndex: clearButtonTabIndex
|
|
25
27
|
}) : /* @__PURE__ */ React__default.createElement(ChevronIcon.ChevronIcon, {
|
|
26
28
|
error,
|
|
27
29
|
size
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectRightSection.js","sources":["../../../../src/components/Select/SelectRightSection/SelectRightSection.tsx"],"sourcesContent":["import React from 'react';\nimport { MantineSize } from '@mantine/styles';\nimport { CloseButton } from '../../ActionIcon/CloseButton/CloseButton';\nimport { ChevronIcon } from './ChevronIcon';\n\nexport interface SelectRightSectionProps {\n shouldClear: boolean;\n clearButtonLabel?: string;\n onClear?: () => void;\n size: MantineSize;\n error?: any;\n // eslint-disable-next-line react/no-unused-prop-types\n disabled?: boolean;\n}\n\nexport function SelectRightSection({\n shouldClear,\n clearButtonLabel,\n onClear,\n size,\n error,\n}: SelectRightSectionProps) {\n return shouldClear ? (\n <CloseButton\n variant=\"transparent\"\n aria-label={clearButtonLabel}\n onClick={onClear}\n size={size}\n />\n ) : (\n <ChevronIcon error={error} size={size} />\n );\n}\n\nSelectRightSection.displayName = '@mantine/core/SelectRightSection';\n"],"names":["React","CloseButton","ChevronIcon"],"mappings":";;;;;;;;;;;;AAGO,SAAS,kBAAkB,CAAC;AACnC,EAAE,WAAW;AACb,EAAE,gBAAgB;AAClB,EAAE,OAAO;AACT,EAAE,IAAI;AACN,EAAE,KAAK;AACP,CAAC,EAAE;AACH,EAAE,OAAO,WAAW,mBAAmBA,cAAK,CAAC,aAAa,CAACC,uBAAW,EAAE;AACxE,IAAI,OAAO,EAAE,aAAa;AAC1B,IAAI,YAAY,EAAE,gBAAgB;AAClC,IAAI,OAAO,EAAE,OAAO;AACpB,IAAI,IAAI;AACR,GAAG,CAAC,mBAAmBD,cAAK,CAAC,aAAa,CAACE,uBAAW,EAAE;AACxD,IAAI,KAAK;AACT,IAAI,IAAI;AACR,GAAG,CAAC,CAAC;AACL,CAAC;AACD,kBAAkB,CAAC,WAAW,GAAG,kCAAkC;;;;"}
|
|
1
|
+
{"version":3,"file":"SelectRightSection.js","sources":["../../../../src/components/Select/SelectRightSection/SelectRightSection.tsx"],"sourcesContent":["import React from 'react';\nimport { MantineSize } from '@mantine/styles';\nimport { CloseButton } from '../../ActionIcon/CloseButton/CloseButton';\nimport { ChevronIcon } from './ChevronIcon';\n\nexport interface SelectRightSectionProps {\n shouldClear: boolean;\n clearButtonLabel?: string;\n onClear?: () => void;\n size: MantineSize;\n error?: any;\n // eslint-disable-next-line react/no-unused-prop-types\n disabled?: boolean;\n clearButtonTabIndex?: number;\n}\n\nexport function SelectRightSection({\n shouldClear,\n clearButtonLabel,\n onClear,\n size,\n error,\n clearButtonTabIndex,\n}: SelectRightSectionProps) {\n return shouldClear ? (\n <CloseButton\n variant=\"transparent\"\n aria-label={clearButtonLabel}\n onClick={onClear}\n size={size}\n tabIndex={clearButtonTabIndex}\n />\n ) : (\n <ChevronIcon error={error} size={size} />\n );\n}\n\nSelectRightSection.displayName = '@mantine/core/SelectRightSection';\n"],"names":["React","CloseButton","ChevronIcon"],"mappings":";;;;;;;;;;;;AAGO,SAAS,kBAAkB,CAAC;AACnC,EAAE,WAAW;AACb,EAAE,gBAAgB;AAClB,EAAE,OAAO;AACT,EAAE,IAAI;AACN,EAAE,KAAK;AACP,EAAE,mBAAmB;AACrB,CAAC,EAAE;AACH,EAAE,OAAO,WAAW,mBAAmBA,cAAK,CAAC,aAAa,CAACC,uBAAW,EAAE;AACxE,IAAI,OAAO,EAAE,aAAa;AAC1B,IAAI,YAAY,EAAE,gBAAgB;AAClC,IAAI,OAAO,EAAE,OAAO;AACpB,IAAI,IAAI;AACR,IAAI,QAAQ,EAAE,mBAAmB;AACjC,GAAG,CAAC,mBAAmBD,cAAK,CAAC,aAAa,CAACE,uBAAW,EAAE;AACxD,IAAI,KAAK;AACT,IAAI,IAAI;AACR,GAAG,CAAC,CAAC;AACL,CAAC;AACD,kBAAkB,CAAC,WAAW,GAAG,kCAAkC;;;;"}
|
|
@@ -2,10 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
function filterData({
|
|
5
|
+
function filterData({
|
|
6
|
+
data,
|
|
7
|
+
searchable,
|
|
8
|
+
limit,
|
|
9
|
+
searchValue,
|
|
10
|
+
filter,
|
|
11
|
+
value,
|
|
12
|
+
filterDataOnExactSearchMatch
|
|
13
|
+
}) {
|
|
6
14
|
if (!searchable) {
|
|
7
15
|
return data;
|
|
8
16
|
}
|
|
17
|
+
const selected = value != null ? data.find((item) => item.value === value) || null : null;
|
|
18
|
+
if (selected && !filterDataOnExactSearchMatch && (selected == null ? void 0 : selected.label) === searchValue) {
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
9
21
|
const result = [];
|
|
10
22
|
for (let i = 0; i < data.length; i += 1) {
|
|
11
23
|
if (filter(searchValue, data[i])) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-data.js","sources":["../../../../src/components/Select/filter-data/filter-data.ts"],"sourcesContent":["import type { SelectItem } from '../types';\n\ninterface FilterData {\n data: SelectItem[];\n limit: number;\n searchable: boolean;\n searchValue: string;\n filter(value: string, item: SelectItem): boolean;\n}\n\nexport function filterData({
|
|
1
|
+
{"version":3,"file":"filter-data.js","sources":["../../../../src/components/Select/filter-data/filter-data.ts"],"sourcesContent":["import type { SelectItem } from '../types';\n\ninterface FilterData {\n data: SelectItem[];\n limit: number;\n searchable: boolean;\n searchValue: string;\n filterDataOnExactSearchMatch: boolean;\n value: string;\n filter(value: string, item: SelectItem): boolean;\n}\n\nexport function filterData({\n data,\n searchable,\n limit,\n searchValue,\n filter,\n value,\n filterDataOnExactSearchMatch,\n}: FilterData) {\n if (!searchable) {\n return data;\n }\n\n const selected = value != null ? data.find((item) => item.value === value) || null : null;\n\n if (selected && !filterDataOnExactSearchMatch && selected?.label === searchValue) {\n return data;\n }\n\n const result = [];\n\n for (let i = 0; i < data.length; i += 1) {\n if (filter(searchValue, data[i])) {\n result.push(data[i]);\n }\n\n if (result.length >= limit) {\n break;\n }\n }\n\n return result;\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,UAAU,CAAC;AAC3B,EAAE,IAAI;AACN,EAAE,UAAU;AACZ,EAAE,KAAK;AACP,EAAE,WAAW;AACb,EAAE,MAAM;AACR,EAAE,KAAK;AACP,EAAE,4BAA4B;AAC9B,CAAC,EAAE;AACH,EAAE,IAAI,CAAC,UAAU,EAAE;AACnB,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH,EAAE,MAAM,QAAQ,GAAG,KAAK,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC;AAC5F,EAAE,IAAI,QAAQ,IAAI,CAAC,4BAA4B,IAAI,CAAC,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,KAAK,MAAM,WAAW,EAAE;AACjH,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH,EAAE,MAAM,MAAM,GAAG,EAAE,CAAC;AACpB,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;AAC3C,IAAI,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;AACtC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3B,KAAK;AACL,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK,EAAE;AAChC,MAAM,MAAM;AACZ,KAAK;AACL,GAAG;AACH,EAAE,OAAO,MAAM,CAAC;AAChB;;;;"}
|
|
@@ -161,7 +161,7 @@ const RangeSlider = React.forwardRef((props, ref) => {
|
|
|
161
161
|
if (val < clone[0] + minRange) {
|
|
162
162
|
clone[0] = Math.max(val - minRange, min);
|
|
163
163
|
}
|
|
164
|
-
if (val <
|
|
164
|
+
if (val < clone[0] + minRange) {
|
|
165
165
|
clone[index] = valueRef.current[index];
|
|
166
166
|
}
|
|
167
167
|
}
|
|
@@ -274,6 +274,7 @@ const RangeSlider = React.forwardRef((props, ref) => {
|
|
|
274
274
|
disabled
|
|
275
275
|
}), /* @__PURE__ */ React__default.createElement(Track.Track, {
|
|
276
276
|
offset: positions[0],
|
|
277
|
+
marksOffset: _value[0],
|
|
277
278
|
filled: positions[1] - positions[0],
|
|
278
279
|
marks,
|
|
279
280
|
size,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RangeSlider.js","sources":["../../../../src/components/Slider/RangeSlider/RangeSlider.tsx"],"sourcesContent":["import React, { useRef, useState, forwardRef, useEffect } from 'react';\nimport { useMove, useUncontrolled, useMergedRef } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n useMantineTheme,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { MantineTransition } from '../../Transition';\nimport { getClientPosition } from '../utils/get-client-position/get-client-position';\nimport { getPosition } from '../utils/get-position/get-position';\nimport { getChangeValue } from '../utils/get-change-value/get-change-value';\nimport { Thumb, ThumbStylesNames } from '../Thumb/Thumb';\nimport { Track, TrackStylesNames } from '../Track/Track';\nimport { MarksStylesNames } from '../Marks/Marks';\nimport { SliderRoot, SliderRootStylesNames } from '../SliderRoot/SliderRoot';\n\nexport type RangeSliderStylesNames =\n | SliderRootStylesNames\n | ThumbStylesNames\n | TrackStylesNames\n | MarksStylesNames;\n\ntype Value = [number, number];\n\nexport interface RangeSliderProps\n extends DefaultProps<RangeSliderStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'value' | 'onChange' | 'defaultValue'> {\n /** Color from theme.colors */\n color?: MantineColor;\n\n /** Track border-radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined track and thumb size, number to set sizes in px */\n size?: MantineNumberSize;\n\n /** Minimal possible value */\n min?: number;\n\n /** Maximum possible value */\n max?: number;\n\n /** Minimal range interval */\n minRange?: number;\n\n /** Number by which value will be incremented/decremented with thumb drag and arrows */\n step?: number;\n\n /** Amount of digits after the decimal point */\n precision?: number;\n\n /** Current value for controlled slider */\n value?: Value;\n\n /** Default value for uncontrolled slider */\n defaultValue?: Value;\n\n /** Called each time value changes */\n onChange?(value: Value): void;\n\n /** Called when user stops dragging slider or changes value with arrows */\n onChangeEnd?(value: Value): void;\n\n /** Hidden input name, use with uncontrolled variant */\n name?: string;\n\n /** Marks which will be placed on the track */\n marks?: { value: number; label?: React.ReactNode }[];\n\n /** Function to generate label or any react node to render instead, set to null to disable label */\n label?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Label appear/disappear transition */\n labelTransition?: MantineTransition;\n\n /** Label appear/disappear transition duration in ms */\n labelTransitionDuration?: number;\n\n /** Label appear/disappear transition timing function, defaults to theme.transitionRimingFunction */\n labelTransitionTimingFunction?: string;\n\n /** If true label will be not be hidden when user stops dragging */\n labelAlwaysOn?: boolean;\n\n /** First thumb aria-label */\n thumbFromLabel?: string;\n\n /** Second thumb aria-label */\n thumbToLabel?: string;\n\n /**If true slider label will appear on hover */\n showLabelOnHover?: boolean;\n\n /** Thumbs children, can be used to add icons */\n thumbChildren?: React.ReactNode;\n\n /** Disables slider */\n disabled?: boolean;\n}\n\nconst defaultProps: Partial<RangeSliderProps> = {\n size: 'md',\n radius: 'xl',\n min: 0,\n max: 100,\n minRange: 10,\n step: 1,\n marks: [],\n label: (f) => f,\n labelTransition: 'skew-down',\n labelTransitionDuration: 0,\n labelAlwaysOn: false,\n thumbFromLabel: '',\n thumbToLabel: '',\n showLabelOnHover: true,\n disabled: false,\n};\n\nexport const RangeSlider = forwardRef<HTMLDivElement, RangeSliderProps>(\n (props: RangeSliderProps, ref) => {\n const {\n classNames,\n styles,\n color,\n value,\n onChange,\n onChangeEnd,\n size,\n radius,\n min,\n max,\n minRange,\n step,\n precision,\n defaultValue,\n name,\n marks,\n label,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n thumbFromLabel,\n thumbToLabel,\n showLabelOnHover,\n thumbChildren,\n disabled,\n ...others\n } = useMantineDefaultProps('RangeSlider', defaultProps, props);\n\n const theme = useMantineTheme();\n const [focused, setFocused] = useState(-1);\n const [hovered, setHovered] = useState(false);\n const [_value, setValue] = useUncontrolled<Value>({\n value,\n defaultValue,\n finalValue: [min, max],\n rule: (val) => Array.isArray(val),\n onChange,\n });\n const valueRef = useRef(_value);\n const thumbs = useRef<HTMLDivElement[]>([]);\n const thumbIndex = useRef<number>(undefined);\n const positions = [\n getPosition({ value: _value[0], min, max }),\n getPosition({ value: _value[1], min, max }),\n ];\n\n const _setValue = (val: Value) => {\n setValue(val);\n valueRef.current = val;\n };\n\n useEffect(\n () => {\n if (Array.isArray(value)) {\n valueRef.current = value;\n }\n },\n Array.isArray(value) ? [value[0], value[1]] : [null, null]\n );\n\n const setRangedValue = (val: number, index: number, triggerChangeEnd: boolean) => {\n const clone: Value = [...valueRef.current];\n clone[index] = val;\n\n if (index === 0) {\n if (val > clone[1] - minRange) {\n clone[1] = Math.min(val + minRange, max);\n }\n\n if (val > (max - minRange || min)) {\n clone[index] = valueRef.current[index];\n }\n }\n\n if (index === 1) {\n if (val < clone[0] + minRange) {\n clone[0] = Math.max(val - minRange, min);\n }\n\n if (val < (minRange || min)) {\n clone[index] = valueRef.current[index];\n }\n }\n _setValue(clone);\n\n if (triggerChangeEnd) {\n onChangeEnd?.(valueRef.current);\n }\n };\n\n const handleChange = (val: number) => {\n if (!disabled) {\n const nextValue = getChangeValue({ value: val, min, max, step, precision });\n setRangedValue(nextValue, thumbIndex.current, false);\n }\n };\n\n const { ref: container, active } = useMove(\n ({ x }) => handleChange(x),\n { onScrubEnd: () => onChangeEnd?.(valueRef.current) },\n theme.dir\n );\n\n function handleThumbMouseDown(\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>,\n index: number\n ) {\n if (event.cancelable) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n thumbIndex.current = index;\n }\n\n const handleTrackMouseDownCapture = (\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>\n ) => {\n if (event.cancelable) {\n event.preventDefault();\n }\n\n container.current.focus();\n const rect = container.current.getBoundingClientRect();\n const changePosition = getClientPosition(event.nativeEvent);\n const changeValue = getChangeValue({\n value: changePosition - rect.left,\n max,\n min,\n step,\n containerWidth: rect.width,\n });\n\n const nearestHandle =\n Math.abs(_value[0] - changeValue) > Math.abs(_value[1] - changeValue) ? 1 : 0;\n const _nearestHandle = theme.dir === 'ltr' ? nearestHandle : nearestHandle === 1 ? 0 : 1;\n\n thumbIndex.current = _nearestHandle;\n };\n\n const getFocusedThumbIndex = () => {\n if (focused !== 1 && focused !== 0) {\n setFocused(0);\n return 0;\n }\n\n return focused;\n };\n\n const handleTrackKeydownCapture = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n switch (event.nativeEvent.code) {\n case 'ArrowUp': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(Math.max(valueRef.current[focusedIndex] + step, min), max),\n focusedIndex,\n true\n );\n break;\n }\n case 'ArrowRight': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(\n Math.max(\n theme.dir === 'rtl'\n ? valueRef.current[focusedIndex] - step\n : valueRef.current[focusedIndex] + step,\n min\n ),\n max\n ),\n focusedIndex,\n true\n );\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(Math.max(valueRef.current[focusedIndex] - step, min), max),\n focusedIndex,\n true\n );\n break;\n }\n case 'ArrowLeft': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(\n Math.max(\n theme.dir === 'rtl'\n ? valueRef.current[focusedIndex] + step\n : valueRef.current[focusedIndex] - step,\n min\n ),\n max\n ),\n focusedIndex,\n true\n );\n break;\n }\n\n default: {\n break;\n }\n }\n }\n };\n\n const sharedThumbProps = {\n max,\n min,\n color,\n size,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n onBlur: () => setFocused(-1),\n classNames,\n styles,\n };\n\n const hasArrayThumbChildren = Array.isArray(thumbChildren);\n\n return (\n <SliderRoot\n {...others}\n size={size}\n ref={useMergedRef(container, ref)}\n onTouchStartCapture={handleTrackMouseDownCapture}\n onTouchEndCapture={() => {\n thumbIndex.current = -1;\n }}\n onMouseDownCapture={handleTrackMouseDownCapture}\n onMouseUpCapture={() => {\n thumbIndex.current = -1;\n }}\n onKeyDownCapture={handleTrackKeydownCapture}\n styles={styles}\n classNames={classNames}\n disabled={disabled}\n >\n <Track\n offset={positions[0]}\n filled={positions[1] - positions[0]}\n marks={marks}\n size={size}\n radius={radius}\n color={color}\n min={min}\n max={max}\n value={_value[1]}\n styles={styles}\n classNames={classNames}\n onMouseEnter={showLabelOnHover ? () => setHovered(true) : undefined}\n onMouseLeave={showLabelOnHover ? () => setHovered(false) : undefined}\n onChange={(val) => {\n const nearestValue = Math.abs(_value[0] - val) > Math.abs(_value[1] - val) ? 1 : 0;\n const clone: Value = [..._value];\n clone[nearestValue] = val;\n _setValue(clone);\n }}\n disabled={disabled}\n >\n <Thumb\n {...sharedThumbProps}\n value={_value[0]}\n position={positions[0]}\n dragging={active}\n label={typeof label === 'function' ? label(_value[0]) : label}\n ref={(node) => {\n thumbs.current[0] = node;\n }}\n thumbLabel={thumbFromLabel}\n onMouseDown={(event) => handleThumbMouseDown(event, 0)}\n onFocus={() => setFocused(0)}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n >\n {hasArrayThumbChildren ? thumbChildren[0] : thumbChildren}\n </Thumb>\n\n <Thumb\n {...sharedThumbProps}\n thumbLabel={thumbToLabel}\n value={_value[1]}\n position={positions[1]}\n dragging={active}\n label={typeof label === 'function' ? label(_value[1]) : label}\n ref={(node) => {\n thumbs.current[1] = node;\n }}\n onMouseDown={(event) => handleThumbMouseDown(event, 1)}\n onFocus={() => setFocused(1)}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n >\n {hasArrayThumbChildren ? thumbChildren[1] : thumbChildren}\n </Thumb>\n </Track>\n\n <input type=\"hidden\" name={`${name}_from`} value={_value[0]} />\n <input type=\"hidden\" name={`${name}_to`} value={_value[1]} />\n </SliderRoot>\n );\n }\n);\n\nRangeSlider.displayName = '@mantine/core/RangeSlider';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useMantineTheme","useState","useUncontrolled","useRef","getPosition","useEffect","getChangeValue","useMove","getClientPosition","React","SliderRoot","useMergedRef","Track","Thumb"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RangeSlider.js","sources":["../../../../src/components/Slider/RangeSlider/RangeSlider.tsx"],"sourcesContent":["import React, { useRef, useState, forwardRef, useEffect } from 'react';\nimport { useMove, useUncontrolled, useMergedRef } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n useMantineTheme,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { MantineTransition } from '../../Transition';\nimport { getClientPosition } from '../utils/get-client-position/get-client-position';\nimport { getPosition } from '../utils/get-position/get-position';\nimport { getChangeValue } from '../utils/get-change-value/get-change-value';\nimport { Thumb, ThumbStylesNames } from '../Thumb/Thumb';\nimport { Track, TrackStylesNames } from '../Track/Track';\nimport { MarksStylesNames } from '../Marks/Marks';\nimport { SliderRoot, SliderRootStylesNames } from '../SliderRoot/SliderRoot';\n\nexport type RangeSliderStylesNames =\n | SliderRootStylesNames\n | ThumbStylesNames\n | TrackStylesNames\n | MarksStylesNames;\n\ntype Value = [number, number];\n\nexport interface RangeSliderProps\n extends DefaultProps<RangeSliderStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'value' | 'onChange' | 'defaultValue'> {\n /** Color from theme.colors */\n color?: MantineColor;\n\n /** Track border-radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined track and thumb size, number to set sizes in px */\n size?: MantineNumberSize;\n\n /** Minimal possible value */\n min?: number;\n\n /** Maximum possible value */\n max?: number;\n\n /** Minimal range interval */\n minRange?: number;\n\n /** Number by which value will be incremented/decremented with thumb drag and arrows */\n step?: number;\n\n /** Amount of digits after the decimal point */\n precision?: number;\n\n /** Current value for controlled slider */\n value?: Value;\n\n /** Default value for uncontrolled slider */\n defaultValue?: Value;\n\n /** Called each time value changes */\n onChange?(value: Value): void;\n\n /** Called when user stops dragging slider or changes value with arrows */\n onChangeEnd?(value: Value): void;\n\n /** Hidden input name, use with uncontrolled variant */\n name?: string;\n\n /** Marks which will be placed on the track */\n marks?: { value: number; label?: React.ReactNode }[];\n\n /** Function to generate label or any react node to render instead, set to null to disable label */\n label?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Label appear/disappear transition */\n labelTransition?: MantineTransition;\n\n /** Label appear/disappear transition duration in ms */\n labelTransitionDuration?: number;\n\n /** Label appear/disappear transition timing function, defaults to theme.transitionRimingFunction */\n labelTransitionTimingFunction?: string;\n\n /** If true label will be not be hidden when user stops dragging */\n labelAlwaysOn?: boolean;\n\n /** First thumb aria-label */\n thumbFromLabel?: string;\n\n /** Second thumb aria-label */\n thumbToLabel?: string;\n\n /**If true slider label will appear on hover */\n showLabelOnHover?: boolean;\n\n /** Thumbs children, can be used to add icons */\n thumbChildren?: React.ReactNode;\n\n /** Disables slider */\n disabled?: boolean;\n}\n\nconst defaultProps: Partial<RangeSliderProps> = {\n size: 'md',\n radius: 'xl',\n min: 0,\n max: 100,\n minRange: 10,\n step: 1,\n marks: [],\n label: (f) => f,\n labelTransition: 'skew-down',\n labelTransitionDuration: 0,\n labelAlwaysOn: false,\n thumbFromLabel: '',\n thumbToLabel: '',\n showLabelOnHover: true,\n disabled: false,\n};\n\nexport const RangeSlider = forwardRef<HTMLDivElement, RangeSliderProps>(\n (props: RangeSliderProps, ref) => {\n const {\n classNames,\n styles,\n color,\n value,\n onChange,\n onChangeEnd,\n size,\n radius,\n min,\n max,\n minRange,\n step,\n precision,\n defaultValue,\n name,\n marks,\n label,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n thumbFromLabel,\n thumbToLabel,\n showLabelOnHover,\n thumbChildren,\n disabled,\n ...others\n } = useMantineDefaultProps('RangeSlider', defaultProps, props);\n\n const theme = useMantineTheme();\n const [focused, setFocused] = useState(-1);\n const [hovered, setHovered] = useState(false);\n const [_value, setValue] = useUncontrolled<Value>({\n value,\n defaultValue,\n finalValue: [min, max],\n rule: (val) => Array.isArray(val),\n onChange,\n });\n const valueRef = useRef(_value);\n const thumbs = useRef<HTMLDivElement[]>([]);\n const thumbIndex = useRef<number>(undefined);\n const positions = [\n getPosition({ value: _value[0], min, max }),\n getPosition({ value: _value[1], min, max }),\n ];\n\n const _setValue = (val: Value) => {\n setValue(val);\n valueRef.current = val;\n };\n\n useEffect(\n () => {\n if (Array.isArray(value)) {\n valueRef.current = value;\n }\n },\n Array.isArray(value) ? [value[0], value[1]] : [null, null]\n );\n\n const setRangedValue = (val: number, index: number, triggerChangeEnd: boolean) => {\n const clone: Value = [...valueRef.current];\n clone[index] = val;\n\n if (index === 0) {\n if (val > clone[1] - minRange) {\n clone[1] = Math.min(val + minRange, max);\n }\n\n if (val > (max - minRange || min)) {\n clone[index] = valueRef.current[index];\n }\n }\n\n if (index === 1) {\n if (val < clone[0] + minRange) {\n clone[0] = Math.max(val - minRange, min);\n }\n\n if (val < clone[0] + minRange) {\n clone[index] = valueRef.current[index];\n }\n }\n\n _setValue(clone);\n\n if (triggerChangeEnd) {\n onChangeEnd?.(valueRef.current);\n }\n };\n\n const handleChange = (val: number) => {\n if (!disabled) {\n const nextValue = getChangeValue({ value: val, min, max, step, precision });\n setRangedValue(nextValue, thumbIndex.current, false);\n }\n };\n\n const { ref: container, active } = useMove(\n ({ x }) => handleChange(x),\n { onScrubEnd: () => onChangeEnd?.(valueRef.current) },\n theme.dir\n );\n\n function handleThumbMouseDown(\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>,\n index: number\n ) {\n if (event.cancelable) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n thumbIndex.current = index;\n }\n\n const handleTrackMouseDownCapture = (\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>\n ) => {\n if (event.cancelable) {\n event.preventDefault();\n }\n\n container.current.focus();\n const rect = container.current.getBoundingClientRect();\n const changePosition = getClientPosition(event.nativeEvent);\n const changeValue = getChangeValue({\n value: changePosition - rect.left,\n max,\n min,\n step,\n containerWidth: rect.width,\n });\n\n const nearestHandle =\n Math.abs(_value[0] - changeValue) > Math.abs(_value[1] - changeValue) ? 1 : 0;\n const _nearestHandle = theme.dir === 'ltr' ? nearestHandle : nearestHandle === 1 ? 0 : 1;\n\n thumbIndex.current = _nearestHandle;\n };\n\n const getFocusedThumbIndex = () => {\n if (focused !== 1 && focused !== 0) {\n setFocused(0);\n return 0;\n }\n\n return focused;\n };\n\n const handleTrackKeydownCapture = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n switch (event.nativeEvent.code) {\n case 'ArrowUp': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(Math.max(valueRef.current[focusedIndex] + step, min), max),\n focusedIndex,\n true\n );\n break;\n }\n case 'ArrowRight': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(\n Math.max(\n theme.dir === 'rtl'\n ? valueRef.current[focusedIndex] - step\n : valueRef.current[focusedIndex] + step,\n min\n ),\n max\n ),\n focusedIndex,\n true\n );\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(Math.max(valueRef.current[focusedIndex] - step, min), max),\n focusedIndex,\n true\n );\n break;\n }\n case 'ArrowLeft': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(\n Math.max(\n theme.dir === 'rtl'\n ? valueRef.current[focusedIndex] + step\n : valueRef.current[focusedIndex] - step,\n min\n ),\n max\n ),\n focusedIndex,\n true\n );\n break;\n }\n\n default: {\n break;\n }\n }\n }\n };\n\n const sharedThumbProps = {\n max,\n min,\n color,\n size,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n onBlur: () => setFocused(-1),\n classNames,\n styles,\n };\n\n const hasArrayThumbChildren = Array.isArray(thumbChildren);\n\n return (\n <SliderRoot\n {...others}\n size={size}\n ref={useMergedRef(container, ref)}\n onTouchStartCapture={handleTrackMouseDownCapture}\n onTouchEndCapture={() => {\n thumbIndex.current = -1;\n }}\n onMouseDownCapture={handleTrackMouseDownCapture}\n onMouseUpCapture={() => {\n thumbIndex.current = -1;\n }}\n onKeyDownCapture={handleTrackKeydownCapture}\n styles={styles}\n classNames={classNames}\n disabled={disabled}\n >\n <Track\n offset={positions[0]}\n marksOffset={_value[0]}\n filled={positions[1] - positions[0]}\n marks={marks}\n size={size}\n radius={radius}\n color={color}\n min={min}\n max={max}\n value={_value[1]}\n styles={styles}\n classNames={classNames}\n onMouseEnter={showLabelOnHover ? () => setHovered(true) : undefined}\n onMouseLeave={showLabelOnHover ? () => setHovered(false) : undefined}\n onChange={(val) => {\n const nearestValue = Math.abs(_value[0] - val) > Math.abs(_value[1] - val) ? 1 : 0;\n const clone: Value = [..._value];\n clone[nearestValue] = val;\n _setValue(clone);\n }}\n disabled={disabled}\n >\n <Thumb\n {...sharedThumbProps}\n value={_value[0]}\n position={positions[0]}\n dragging={active}\n label={typeof label === 'function' ? label(_value[0]) : label}\n ref={(node) => {\n thumbs.current[0] = node;\n }}\n thumbLabel={thumbFromLabel}\n onMouseDown={(event) => handleThumbMouseDown(event, 0)}\n onFocus={() => setFocused(0)}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n >\n {hasArrayThumbChildren ? thumbChildren[0] : thumbChildren}\n </Thumb>\n\n <Thumb\n {...sharedThumbProps}\n thumbLabel={thumbToLabel}\n value={_value[1]}\n position={positions[1]}\n dragging={active}\n label={typeof label === 'function' ? label(_value[1]) : label}\n ref={(node) => {\n thumbs.current[1] = node;\n }}\n onMouseDown={(event) => handleThumbMouseDown(event, 1)}\n onFocus={() => setFocused(1)}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n >\n {hasArrayThumbChildren ? thumbChildren[1] : thumbChildren}\n </Thumb>\n </Track>\n\n <input type=\"hidden\" name={`${name}_from`} value={_value[0]} />\n <input type=\"hidden\" name={`${name}_to`} value={_value[1]} />\n </SliderRoot>\n );\n }\n);\n\nRangeSlider.displayName = '@mantine/core/RangeSlider';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useMantineTheme","useState","useUncontrolled","useRef","getPosition","useEffect","getChangeValue","useMove","getClientPosition","React","SliderRoot","useMergedRef","Track","Thumb"],"mappings":"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"}
|
|
@@ -55,7 +55,8 @@ function Track(_a) {
|
|
|
55
55
|
offset,
|
|
56
56
|
onMouseLeave,
|
|
57
57
|
onMouseEnter,
|
|
58
|
-
disabled
|
|
58
|
+
disabled,
|
|
59
|
+
marksOffset
|
|
59
60
|
} = _b, others = __objRest(_b, [
|
|
60
61
|
"filled",
|
|
61
62
|
"size",
|
|
@@ -67,7 +68,8 @@ function Track(_a) {
|
|
|
67
68
|
"offset",
|
|
68
69
|
"onMouseLeave",
|
|
69
70
|
"onMouseEnter",
|
|
70
|
-
"disabled"
|
|
71
|
+
"disabled",
|
|
72
|
+
"marksOffset"
|
|
71
73
|
]);
|
|
72
74
|
const { classes } = Track_styles['default']({ color, size, radius, disabled }, { classNames, styles, name: "Slider" });
|
|
73
75
|
return /* @__PURE__ */ React__default.createElement("div", {
|
|
@@ -83,7 +85,7 @@ function Track(_a) {
|
|
|
83
85
|
}), children, /* @__PURE__ */ React__default.createElement(Marks.Marks, __spreadProps(__spreadValues({}, others), {
|
|
84
86
|
size,
|
|
85
87
|
color,
|
|
86
|
-
offset,
|
|
88
|
+
offset: marksOffset,
|
|
87
89
|
classNames,
|
|
88
90
|
styles,
|
|
89
91
|
disabled
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Track.js","sources":["../../../../src/components/Slider/Track/Track.tsx"],"sourcesContent":["import React from 'react';\nimport { DefaultProps, MantineNumberSize, MantineColor, ClassNames } from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { Marks, MarksStylesNames } from '../Marks/Marks';\nimport { sizes } from '../SliderRoot/SliderRoot.styles';\nimport useStyles from './Track.styles';\n\nexport type TrackStylesNames = ClassNames<typeof useStyles> | MarksStylesNames;\n\nexport interface TrackProps extends DefaultProps<TrackStylesNames> {\n filled: number;\n offset
|
|
1
|
+
{"version":3,"file":"Track.js","sources":["../../../../src/components/Slider/Track/Track.tsx"],"sourcesContent":["import React from 'react';\nimport { DefaultProps, MantineNumberSize, MantineColor, ClassNames } from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { Marks, MarksStylesNames } from '../Marks/Marks';\nimport { sizes } from '../SliderRoot/SliderRoot.styles';\nimport useStyles from './Track.styles';\n\nexport type TrackStylesNames = ClassNames<typeof useStyles> | MarksStylesNames;\n\nexport interface TrackProps extends DefaultProps<TrackStylesNames> {\n filled: number;\n offset?: number;\n marksOffset?: number;\n marks: { value: number; label?: React.ReactNode }[];\n size: MantineNumberSize;\n radius: MantineNumberSize;\n color: MantineColor;\n min: number;\n max: number;\n value: number;\n children: React.ReactNode;\n onChange(value: number): void;\n onMouseEnter?(event?: React.MouseEvent<HTMLDivElement>): void;\n onMouseLeave?(event?: React.MouseEvent<HTMLDivElement>): void;\n disabled: boolean;\n}\n\nexport function Track({\n filled,\n size,\n color,\n classNames,\n styles,\n radius,\n children,\n offset,\n onMouseLeave,\n onMouseEnter,\n disabled,\n marksOffset,\n ...others\n}: TrackProps) {\n const { classes } = useStyles(\n { color, size, radius, disabled },\n { classNames, styles, name: 'Slider' }\n );\n\n return (\n <div className={classes.track} onMouseLeave={onMouseLeave} onMouseEnter={onMouseEnter}>\n <Box\n className={classes.bar}\n sx={(theme) => ({\n left: `calc(${offset}% - ${theme.fn.size({ size, sizes })}px)`,\n width: `calc(${filled}% + ${theme.fn.size({ size, sizes })}px)`,\n })}\n />\n\n {children}\n\n <Marks\n {...others}\n size={size}\n color={color}\n offset={marksOffset}\n classNames={classNames}\n styles={styles}\n disabled={disabled}\n />\n </div>\n );\n}\n\nTrack.displayName = '@mantine/core/SliderTrack';\n"],"names":["useStyles","React","Box","sizes","Marks"],"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 MantineColor,\n PolymorphicComponentProps,\n PolymorphicRef,\n useMantineDefaultProps,\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 */\n color?: 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
|
|
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 MantineColor,\n PolymorphicComponentProps,\n PolymorphicRef,\n useMantineDefaultProps,\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 */\n color?: 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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"}
|
|
@@ -7,13 +7,15 @@ var styles = require('@mantine/styles');
|
|
|
7
7
|
var hooks = require('@mantine/hooks');
|
|
8
8
|
var FloatingTooltip_styles = require('./FloatingTooltip.styles.js');
|
|
9
9
|
var Box = require('../../Box/Box.js');
|
|
10
|
-
var
|
|
10
|
+
var Transition = require('../../Transition/Transition.js');
|
|
11
11
|
|
|
12
12
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
|
|
13
13
|
|
|
14
14
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
15
15
|
|
|
16
16
|
var __defProp = Object.defineProperty;
|
|
17
|
+
var __defProps = Object.defineProperties;
|
|
18
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
17
19
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
18
20
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
19
21
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
@@ -29,6 +31,7 @@ var __spreadValues = (a, b) => {
|
|
|
29
31
|
}
|
|
30
32
|
return a;
|
|
31
33
|
};
|
|
34
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
32
35
|
var __objRest = (source, exclude) => {
|
|
33
36
|
var target = {};
|
|
34
37
|
for (var prop in source)
|
|
@@ -44,7 +47,6 @@ var __objRest = (source, exclude) => {
|
|
|
44
47
|
const defaultProps = {
|
|
45
48
|
openDelay: 0,
|
|
46
49
|
closeDelay: 0,
|
|
47
|
-
gutter: 0,
|
|
48
50
|
color: "gray",
|
|
49
51
|
disabled: false,
|
|
50
52
|
position: "right",
|
|
@@ -53,8 +55,7 @@ const defaultProps = {
|
|
|
53
55
|
zIndex: styles.getDefaultZIndex("popover"),
|
|
54
56
|
width: "auto",
|
|
55
57
|
wrapLines: false,
|
|
56
|
-
positionDependencies: []
|
|
57
|
-
withinPortal: true
|
|
58
|
+
positionDependencies: []
|
|
58
59
|
};
|
|
59
60
|
const FloatingTooltip = React.forwardRef((props, ref) => {
|
|
60
61
|
const _a = styles.useMantineDefaultProps("FloatingTooltip", defaultProps, props), {
|
|
@@ -63,7 +64,6 @@ const FloatingTooltip = React.forwardRef((props, ref) => {
|
|
|
63
64
|
children,
|
|
64
65
|
openDelay,
|
|
65
66
|
closeDelay,
|
|
66
|
-
gutter,
|
|
67
67
|
color,
|
|
68
68
|
radius,
|
|
69
69
|
disabled,
|
|
@@ -75,7 +75,6 @@ const FloatingTooltip = React.forwardRef((props, ref) => {
|
|
|
75
75
|
width,
|
|
76
76
|
wrapLines,
|
|
77
77
|
positionDependencies,
|
|
78
|
-
withinPortal,
|
|
79
78
|
tooltipRef,
|
|
80
79
|
tooltipId,
|
|
81
80
|
classNames,
|
|
@@ -88,7 +87,6 @@ const FloatingTooltip = React.forwardRef((props, ref) => {
|
|
|
88
87
|
"children",
|
|
89
88
|
"openDelay",
|
|
90
89
|
"closeDelay",
|
|
91
|
-
"gutter",
|
|
92
90
|
"color",
|
|
93
91
|
"radius",
|
|
94
92
|
"disabled",
|
|
@@ -100,7 +98,6 @@ const FloatingTooltip = React.forwardRef((props, ref) => {
|
|
|
100
98
|
"width",
|
|
101
99
|
"wrapLines",
|
|
102
100
|
"positionDependencies",
|
|
103
|
-
"withinPortal",
|
|
104
101
|
"tooltipRef",
|
|
105
102
|
"tooltipId",
|
|
106
103
|
"classNames",
|
|
@@ -116,25 +113,40 @@ const FloatingTooltip = React.forwardRef((props, ref) => {
|
|
|
116
113
|
const [opened, setOpened] = React.useState(false);
|
|
117
114
|
const { ref: mouseRef, x, y } = hooks.useMouse();
|
|
118
115
|
const visible = opened && !disabled;
|
|
119
|
-
const
|
|
120
|
-
const mergedRefs = hooks.useMergedRef(ref, setReferenceElement, mouseRef);
|
|
116
|
+
const mergedRefs = hooks.useMergedRef(ref, mouseRef);
|
|
121
117
|
const coordinates = React.useMemo(() => {
|
|
122
|
-
var _a2;
|
|
118
|
+
var _a2, _b;
|
|
123
119
|
const estimatedCursorSize = 32;
|
|
124
|
-
const tooltipWidth = ((_a2 = _tooltipRef.current) == null ? void 0 : _a2.offsetWidth) || 0;
|
|
120
|
+
const tooltipWidth = typeof width === "number" ? width : ((_a2 = _tooltipRef.current) == null ? void 0 : _a2.offsetWidth) || 0;
|
|
121
|
+
const tooltipHeight = ((_b = _tooltipRef.current) == null ? void 0 : _b.offsetHeight) || 0;
|
|
125
122
|
switch (position) {
|
|
126
123
|
case "top":
|
|
127
|
-
return {
|
|
124
|
+
return {
|
|
125
|
+
left: x - tooltipWidth / 2,
|
|
126
|
+
top: y - tooltipHeight
|
|
127
|
+
};
|
|
128
128
|
case "left":
|
|
129
|
-
return {
|
|
129
|
+
return {
|
|
130
|
+
left: x - tooltipWidth - estimatedCursorSize / 2,
|
|
131
|
+
top: y
|
|
132
|
+
};
|
|
130
133
|
case "right":
|
|
131
|
-
return {
|
|
134
|
+
return {
|
|
135
|
+
left: x + estimatedCursorSize / 2,
|
|
136
|
+
top: y
|
|
137
|
+
};
|
|
132
138
|
case "bottom":
|
|
133
|
-
return {
|
|
139
|
+
return {
|
|
140
|
+
left: x - tooltipWidth / 2,
|
|
141
|
+
top: y + tooltipHeight
|
|
142
|
+
};
|
|
134
143
|
default:
|
|
135
|
-
return {
|
|
144
|
+
return {
|
|
145
|
+
left: x || 0,
|
|
146
|
+
top: y || 0
|
|
147
|
+
};
|
|
136
148
|
}
|
|
137
|
-
}, [x, y]);
|
|
149
|
+
}, [x, y, ...positionDependencies]);
|
|
138
150
|
const handleOpen = () => {
|
|
139
151
|
window.clearTimeout(closeTimeoutRef.current);
|
|
140
152
|
if (openDelay !== 0) {
|
|
@@ -172,26 +184,22 @@ const FloatingTooltip = React.forwardRef((props, ref) => {
|
|
|
172
184
|
onFocusCapture: handleOpen,
|
|
173
185
|
onBlurCapture: handleClose,
|
|
174
186
|
ref: mergedRefs
|
|
175
|
-
}, others), /* @__PURE__ */ React__default.createElement(
|
|
176
|
-
referenceElement,
|
|
177
|
-
transitionDuration,
|
|
178
|
-
transition,
|
|
187
|
+
}, others), /* @__PURE__ */ React__default.createElement(Transition.Transition, {
|
|
179
188
|
mounted: visible,
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
coordinates
|
|
189
|
+
duration: transitionDuration,
|
|
190
|
+
transition,
|
|
191
|
+
exitDuration: transitionDuration,
|
|
192
|
+
timingFunction: transitionTimingFunction
|
|
193
|
+
}, (transitionStyles) => /* @__PURE__ */ React__default.createElement("div", {
|
|
194
|
+
style: __spreadProps(__spreadValues({}, transitionStyles), { zIndex, position: "relative" })
|
|
187
195
|
}, /* @__PURE__ */ React__default.createElement(Box.Box, {
|
|
188
196
|
className: classes.body,
|
|
189
197
|
ref: mergedTooltipRefs,
|
|
190
|
-
sx: {
|
|
198
|
+
sx: __spreadValues({
|
|
191
199
|
whiteSpace: wrapLines ? "normal" : "nowrap",
|
|
192
200
|
width
|
|
193
|
-
}
|
|
194
|
-
}, label)), children);
|
|
201
|
+
}, coordinates)
|
|
202
|
+
}, label))), children);
|
|
195
203
|
});
|
|
196
204
|
FloatingTooltip.displayName = "@mantine/core/FloatingTooltip";
|
|
197
205
|
|
|
@@ -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 { Popper, SharedPopperProps } from '../../Popper';\nimport useStyles from './FloatingTooltip.styles';\n\nexport type FloatingTooltipStylesNames = ClassNames<typeof useStyles>;\n\nexport interface FloatingTooltipProps\n extends DefaultProps<FloatingTooltipStylesNames>,\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 /** 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 /** Whether to render the target element in a Portal */\n withinPortal?: boolean;\n}\n\nconst defaultProps: Partial<FloatingTooltipProps> = {\n openDelay: 0,\n closeDelay: 0,\n gutter: 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 withinPortal: true,\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 gutter,\n color,\n radius,\n disabled,\n position,\n transition,\n transitionDuration,\n zIndex,\n transitionTimingFunction,\n width,\n wrapLines,\n positionDependencies,\n withinPortal,\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 [referenceElement, setReferenceElement] = useState(null);\n const mergedRefs = useMergedRef(ref, setReferenceElement, 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 = _tooltipRef.current?.offsetWidth || 0;\n\n switch (position) {\n case 'top':\n return { x: x - tooltipWidth / 2, y: y - estimatedCursorSize };\n case 'left':\n return { x: x - estimatedCursorSize / 2 - tooltipWidth, y };\n case 'right':\n return { x: x + estimatedCursorSize / 2, y };\n case 'bottom':\n return { x: x - tooltipWidth / 2, y: y + estimatedCursorSize };\n default:\n return { x: x || 0, y: y || 0 };\n }\n }, [x, y]);\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 <Popper\n referenceElement={referenceElement}\n transitionDuration={transitionDuration}\n transition={transition}\n mounted={visible}\n position=\"top\"\n placement=\"start\" // fixed because we are following the cursor\n gutter={gutter}\n zIndex={zIndex}\n forceUpdateDependencies={[color, radius, ...positionDependencies]}\n withinPortal={withinPortal}\n coordinates={coordinates}\n >\n <Box\n className={classes.body}\n ref={mergedTooltipRefs}\n sx={{\n whiteSpace: wrapLines ? 'normal' : 'nowrap',\n width,\n }}\n >\n {label}\n </Box>\n </Popper>\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","Popper"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,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,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK;AACrC,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;AAClB,EAAE,KAAK,IAAI,IAAI,IAAI,MAAM;AACzB,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AACpE,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,IAAI,MAAM,IAAI,IAAI,IAAI,mBAAmB;AAC3C,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;AAClD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;AACtE,QAAQ,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AACpC,KAAK;AACL,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAUF,MAAM,YAAY,GAAG;AACrB,EAAE,SAAS,EAAE,CAAC;AACd,EAAE,UAAU,EAAE,CAAC;AACf,EAAE,MAAM,EAAE,CAAC;AACX,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,UAAU,EAAE,cAAc;AAC5B,EAAE,kBAAkB,EAAE,CAAC;AACvB,EAAE,MAAM,EAAEA,uBAAgB,CAAC,SAAS,CAAC;AACrC,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,SAAS,EAAE,KAAK;AAClB,EAAE,oBAAoB,EAAE,EAAE;AAC1B,EAAE,YAAY,EAAE,IAAI;AACpB,CAAC,CAAC;AACU,MAAC,eAAe,GAAGC,gBAAU,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK;AAC1D,EAAE,MAAM,EAAE,GAAGC,6BAAsB,CAAC,iBAAiB,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE;AAC7E,IAAI,SAAS;AACb,IAAI,KAAK;AACT,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,MAAM;AACV,IAAI,KAAK;AACT,IAAI,MAAM;AACV,IAAI,QAAQ;AACZ,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,kBAAkB;AACtB,IAAI,MAAM;AACV,IAAI,wBAAwB;AAC5B,IAAI,KAAK;AACT,IAAI,SAAS;AACb,IAAI,oBAAoB;AACxB,IAAI,YAAY;AAChB,IAAI,UAAU;AACd,IAAI,SAAS;AACb,IAAI,UAAU;AACd,YAAIC,QAAM;AACV,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,GAAG,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE;AACjC,IAAI,WAAW;AACf,IAAI,OAAO;AACX,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,UAAU;AACd,IAAI,YAAY;AAChB,IAAI,oBAAoB;AACxB,IAAI,QAAQ;AACZ,IAAI,0BAA0B;AAC9B,IAAI,OAAO;AACX,IAAI,WAAW;AACf,IAAI,sBAAsB;AAC1B,IAAI,cAAc;AAClB,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,IAAI,cAAc;AAClB,IAAI,cAAc;AAClB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAGC,iCAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,UAAED,QAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;AACxG,EAAE,MAAM,cAAc,GAAGE,YAAM,EAAE,CAAC;AAClC,EAAE,MAAM,eAAe,GAAGA,YAAM,EAAE,CAAC;AACnC,EAAE,MAAM,WAAW,GAAGA,YAAM,EAAE,CAAC;AAC/B,EAAE,MAAM,iBAAiB,GAAGC,kBAAY,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;AAClE,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAGC,cAAQ,CAAC,KAAK,CAAC,CAAC;AAC9C,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,GAAGC,cAAQ,EAAE,CAAC;AAC7C,EAAE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC;AACtC,EAAE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAGD,cAAQ,CAAC,IAAI,CAAC,CAAC;AACjE,EAAE,MAAM,UAAU,GAAGD,kBAAY,CAAC,GAAG,EAAE,mBAAmB,EAAE,QAAQ,CAAC,CAAC;AACtE,EAAE,MAAM,WAAW,GAAGG,aAAO,CAAC,MAAM;AACpC,IAAI,IAAI,GAAG,CAAC;AACZ,IAAI,MAAM,mBAAmB,GAAG,EAAE,CAAC;AACnC,IAAI,MAAM,YAAY,GAAG,CAAC,CAAC,GAAG,GAAG,WAAW,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,WAAW,KAAK,CAAC,CAAC;AAC/F,IAAI,QAAQ,QAAQ;AACpB,MAAM,KAAK,KAAK;AAChB,QAAQ,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,mBAAmB,EAAE,CAAC;AACvE,MAAM,KAAK,MAAM;AACjB,QAAQ,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,mBAAmB,GAAG,CAAC,GAAG,YAAY,EAAE,CAAC,EAAE,CAAC;AACpE,MAAM,KAAK,OAAO;AAClB,QAAQ,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,mBAAmB,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;AACrD,MAAM,KAAK,QAAQ;AACnB,QAAQ,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,mBAAmB,EAAE,CAAC;AACvE,MAAM;AACN,QAAQ,OAAO,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;AACxC,KAAK;AACL,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACb,EAAE,MAAM,UAAU,GAAG,MAAM;AAC3B,IAAI,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;AACjD,IAAI,IAAI,SAAS,KAAK,CAAC,EAAE;AACzB,MAAM,cAAc,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACvD,QAAQ,SAAS,CAAC,IAAI,CAAC,CAAC;AACxB,OAAO,EAAE,SAAS,CAAC,CAAC;AACpB,KAAK,MAAM;AACX,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;AACtB,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,MAAM,WAAW,GAAG,MAAM;AAC5B,IAAI,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,IAAI,UAAU,KAAK,CAAC,EAAE;AAC1B,MAAM,eAAe,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACxD,QAAQ,SAAS,CAAC,KAAK,CAAC,CAAC;AACzB,OAAO,EAAE,UAAU,CAAC,CAAC;AACrB,KAAK,MAAM;AACX,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;AACvB,KAAK;AACL,GAAG,CAAC;AACJ,EAAEC,eAAS,CAAC,MAAM,MAAM;AACxB,IAAI,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;AAChD,IAAI,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;AACjD,GAAG,EAAE,EAAE,CAAC,CAAC;AACT,EAAE,uBAAuBC,cAAK,CAAC,aAAa,CAACC,OAAG,EAAE,cAAc,CAAC;AACjE,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;AAC1C,IAAI,YAAY,EAAE,CAAC,KAAK,KAAK;AAC7B,MAAM,UAAU,EAAE,CAAC;AACnB,MAAM,OAAO,YAAY,KAAK,UAAU,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;AAChE,KAAK;AACL,IAAI,YAAY,EAAE,CAAC,KAAK,KAAK;AAC7B,MAAM,WAAW,EAAE,CAAC;AACpB,MAAM,OAAO,YAAY,KAAK,UAAU,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;AAChE,KAAK;AACL,IAAI,cAAc,EAAE,UAAU;AAC9B,IAAI,aAAa,EAAE,WAAW;AAC9B,IAAI,GAAG,EAAE,UAAU;AACnB,GAAG,EAAE,MAAM,CAAC,kBAAkBD,cAAK,CAAC,aAAa,CAACE,aAAM,EAAE;AAC1D,IAAI,gBAAgB;AACpB,IAAI,kBAAkB;AACtB,IAAI,UAAU;AACd,IAAI,OAAO,EAAE,OAAO;AACpB,IAAI,QAAQ,EAAE,KAAK;AACnB,IAAI,SAAS,EAAE,OAAO;AACtB,IAAI,MAAM;AACV,IAAI,MAAM;AACV,IAAI,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAAC;AACrE,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,GAAG,kBAAkBF,cAAK,CAAC,aAAa,CAACC,OAAG,EAAE;AAC9C,IAAI,SAAS,EAAE,OAAO,CAAC,IAAI;AAC3B,IAAI,GAAG,EAAE,iBAAiB;AAC1B,IAAI,EAAE,EAAE;AACR,MAAM,UAAU,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ;AACjD,MAAM,KAAK;AACX,KAAK;AACL,GAAG,EAAE,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxB,CAAC,EAAE;AACH,eAAe,CAAC,WAAW,GAAG,+BAA+B;;;;"}
|
|
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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"}
|
|
@@ -35,9 +35,10 @@ var useStyles = styles.createStyles((theme, { color, radius }) => ({
|
|
|
35
35
|
borderRadius: theme.fn.radius(radius),
|
|
36
36
|
padding: `${theme.spacing.xs / 2}px ${theme.spacing.xs}px`,
|
|
37
37
|
color: theme.colorScheme === "dark" ? theme.colors.dark[9] : theme.white,
|
|
38
|
-
position: "
|
|
38
|
+
position: "absolute",
|
|
39
39
|
overflow: "hidden",
|
|
40
|
-
textOverflow: "ellipsis"
|
|
40
|
+
textOverflow: "ellipsis",
|
|
41
|
+
pointerEvents: "none"
|
|
41
42
|
})
|
|
42
43
|
}));
|
|
43
44
|
|