@mantine/core 4.1.3 → 4.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/components/Accordion/AccordionItem/AccordionItem.styles.js +5 -6
- package/cjs/components/Accordion/AccordionItem/AccordionItem.styles.js.map +1 -1
- package/cjs/components/ActionIcon/ActionIcon.js +1 -1
- package/cjs/components/ActionIcon/ActionIcon.js.map +1 -1
- package/cjs/components/ActionIcon/ActionIcon.styles.js +9 -13
- package/cjs/components/ActionIcon/ActionIcon.styles.js.map +1 -1
- package/cjs/components/Alert/Alert.js +12 -0
- package/cjs/components/Alert/Alert.js.map +1 -1
- package/cjs/components/Alert/Alert.styles.js +6 -6
- package/cjs/components/Alert/Alert.styles.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/Autocomplete/Autocomplete.js +8 -4
- package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
- package/cjs/components/Avatar/Avatar.styles.js +40 -36
- package/cjs/components/Avatar/Avatar.styles.js.map +1 -1
- package/cjs/components/Badge/Badge.styles.js +5 -6
- package/cjs/components/Badge/Badge.styles.js.map +1 -1
- package/cjs/components/Blockquote/Blockquote.styles.js +1 -1
- package/cjs/components/Blockquote/Blockquote.styles.js.map +1 -1
- package/cjs/components/Button/Button.js +1 -1
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.styles.js +9 -15
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.styles.js +3 -2
- package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/components/Chips/Chip/Chip.styles.js +19 -21
- package/cjs/components/Chips/Chip/Chip.styles.js.map +1 -1
- package/cjs/components/Code/Code.styles.js +1 -1
- package/cjs/components/Code/Code.styles.js.map +1 -1
- package/cjs/components/Container/Container.js +0 -1
- package/cjs/components/Container/Container.js.map +1 -1
- package/cjs/components/Container/Container.styles.js +2 -0
- package/cjs/components/Container/Container.styles.js.map +1 -1
- package/cjs/components/Divider/Divider.styles.js +1 -1
- package/cjs/components/Divider/Divider.styles.js.map +1 -1
- package/cjs/components/Drawer/Drawer.js +7 -3
- package/cjs/components/Drawer/Drawer.js.map +1 -1
- package/cjs/components/Grid/Col/Col.js +23 -13
- package/cjs/components/Grid/Col/Col.js.map +1 -1
- package/cjs/components/Indicator/Indicator.js +92 -0
- package/cjs/components/Indicator/Indicator.js.map +1 -0
- package/cjs/components/Indicator/Indicator.styles.js +83 -0
- package/cjs/components/Indicator/Indicator.styles.js.map +1 -0
- package/cjs/components/InputWrapper/InputWrapper.js +2 -1
- package/cjs/components/InputWrapper/InputWrapper.js.map +1 -1
- package/cjs/components/Loader/Loader.js +1 -1
- package/cjs/components/Loader/Loader.js.map +1 -1
- package/cjs/components/Menu/MenuItem/MenuItem.styles.js +3 -3
- package/cjs/components/Menu/MenuItem/MenuItem.styles.js.map +1 -1
- package/cjs/components/Modal/Modal.js +9 -2
- package/cjs/components/Modal/Modal.js.map +1 -1
- package/cjs/components/MultiSelect/MultiSelect.js +21 -9
- 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 +6 -4
- 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/Pagination/Pagination.styles.js +1 -5
- package/cjs/components/Pagination/Pagination.styles.js.map +1 -1
- package/cjs/components/Popper/Popper.js +3 -4
- package/cjs/components/Popper/Popper.js.map +1 -1
- package/cjs/components/Progress/Progress.js +1 -1
- package/cjs/components/Progress/Progress.js.map +1 -1
- package/cjs/components/Progress/Progress.styles.js +1 -1
- package/cjs/components/Progress/Progress.styles.js.map +1 -1
- package/cjs/components/RadioGroup/Radio/Radio.js +2 -1
- package/cjs/components/RadioGroup/Radio/Radio.js.map +1 -1
- package/cjs/components/RadioGroup/Radio/Radio.styles.js +3 -2
- package/cjs/components/RadioGroup/Radio/Radio.styles.js.map +1 -1
- package/cjs/components/RadioGroup/RadioGroup.js +5 -0
- package/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/cjs/components/RingProgress/Curve/Curve.js +1 -1
- package/cjs/components/RingProgress/Curve/Curve.js.map +1 -1
- package/cjs/components/SegmentedControl/SegmentedControl.js +14 -7
- package/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/cjs/components/SegmentedControl/SegmentedControl.styles.js +9 -4
- package/cjs/components/SegmentedControl/SegmentedControl.styles.js.map +1 -1
- package/cjs/components/Select/Select.js +17 -6
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/SelectDropdown/SelectDropdown.js +3 -1
- package/cjs/components/Select/SelectDropdown/SelectDropdown.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/Slider/Marks/Marks.styles.js +4 -3
- package/cjs/components/Slider/Marks/Marks.styles.js.map +1 -1
- package/cjs/components/Slider/Thumb/Thumb.styles.js +3 -3
- package/cjs/components/Slider/Thumb/Thumb.styles.js.map +1 -1
- package/cjs/components/Slider/Track/Track.styles.js +1 -1
- package/cjs/components/Slider/Track/Track.styles.js.map +1 -1
- package/cjs/components/Stepper/Step/Step.styles.js +4 -3
- package/cjs/components/Stepper/Step/Step.styles.js.map +1 -1
- package/cjs/components/Stepper/Stepper.styles.js +1 -1
- package/cjs/components/Stepper/Stepper.styles.js.map +1 -1
- package/cjs/components/Switch/Switch.styles.js +3 -2
- package/cjs/components/Switch/Switch.styles.js.map +1 -1
- package/cjs/components/Text/Text.styles.js +6 -8
- package/cjs/components/Text/Text.styles.js.map +1 -1
- package/cjs/components/ThemeIcon/ThemeIcon.styles.js +2 -3
- package/cjs/components/ThemeIcon/ThemeIcon.styles.js.map +1 -1
- package/cjs/components/Timeline/TimelineItem/TimelineItem.styles.js +70 -67
- package/cjs/components/Timeline/TimelineItem/TimelineItem.styles.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/cjs/components/Tooltip/Tooltip.js +2 -2
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/TransferList/RenderList/RenderList.styles.js +2 -2
- package/cjs/components/TransferList/RenderList/RenderList.styles.js.map +1 -1
- package/cjs/index.js +2 -0
- package/cjs/index.js.map +1 -1
- package/esm/components/Accordion/AccordionItem/AccordionItem.styles.js +5 -6
- package/esm/components/Accordion/AccordionItem/AccordionItem.styles.js.map +1 -1
- package/esm/components/ActionIcon/ActionIcon.js +2 -2
- package/esm/components/ActionIcon/ActionIcon.js.map +1 -1
- package/esm/components/ActionIcon/ActionIcon.styles.js +10 -14
- package/esm/components/ActionIcon/ActionIcon.styles.js.map +1 -1
- package/esm/components/Alert/Alert.js +12 -0
- package/esm/components/Alert/Alert.js.map +1 -1
- package/esm/components/Alert/Alert.styles.js +6 -6
- package/esm/components/Alert/Alert.styles.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/Autocomplete/Autocomplete.js +8 -4
- package/esm/components/Autocomplete/Autocomplete.js.map +1 -1
- package/esm/components/Avatar/Avatar.styles.js +41 -37
- package/esm/components/Avatar/Avatar.styles.js.map +1 -1
- package/esm/components/Badge/Badge.styles.js +6 -7
- package/esm/components/Badge/Badge.styles.js.map +1 -1
- package/esm/components/Blockquote/Blockquote.styles.js +1 -1
- package/esm/components/Blockquote/Blockquote.styles.js.map +1 -1
- package/esm/components/Button/Button.js +2 -2
- package/esm/components/Button/Button.js.map +1 -1
- package/esm/components/Button/Button.styles.js +10 -16
- package/esm/components/Button/Button.styles.js.map +1 -1
- package/esm/components/Checkbox/Checkbox.styles.js +3 -2
- package/esm/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/esm/components/Chips/Chip/Chip.styles.js +20 -22
- package/esm/components/Chips/Chip/Chip.styles.js.map +1 -1
- package/esm/components/Code/Code.styles.js +2 -2
- package/esm/components/Code/Code.styles.js.map +1 -1
- package/esm/components/Container/Container.js +0 -1
- package/esm/components/Container/Container.js.map +1 -1
- package/esm/components/Container/Container.styles.js +2 -0
- package/esm/components/Container/Container.styles.js.map +1 -1
- package/esm/components/Divider/Divider.styles.js +1 -1
- package/esm/components/Divider/Divider.styles.js.map +1 -1
- package/esm/components/Drawer/Drawer.js +7 -3
- package/esm/components/Drawer/Drawer.js.map +1 -1
- package/esm/components/Grid/Col/Col.js +22 -12
- package/esm/components/Grid/Col/Col.js.map +1 -1
- package/esm/components/Indicator/Indicator.js +84 -0
- package/esm/components/Indicator/Indicator.js.map +1 -0
- package/esm/components/Indicator/Indicator.styles.js +79 -0
- package/esm/components/Indicator/Indicator.styles.js.map +1 -0
- package/esm/components/InputWrapper/InputWrapper.js +2 -1
- package/esm/components/InputWrapper/InputWrapper.js.map +1 -1
- package/esm/components/Loader/Loader.js +1 -1
- package/esm/components/Loader/Loader.js.map +1 -1
- package/esm/components/Menu/MenuItem/MenuItem.styles.js +3 -3
- package/esm/components/Menu/MenuItem/MenuItem.styles.js.map +1 -1
- package/esm/components/Modal/Modal.js +9 -2
- package/esm/components/Modal/Modal.js.map +1 -1
- package/esm/components/MultiSelect/MultiSelect.js +21 -9
- 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 +6 -4
- 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/Pagination/Pagination.styles.js +2 -6
- package/esm/components/Pagination/Pagination.styles.js.map +1 -1
- package/esm/components/Popper/Popper.js +3 -4
- package/esm/components/Popper/Popper.js.map +1 -1
- package/esm/components/Progress/Progress.js +1 -1
- package/esm/components/Progress/Progress.js.map +1 -1
- package/esm/components/Progress/Progress.styles.js +1 -1
- package/esm/components/Progress/Progress.styles.js.map +1 -1
- package/esm/components/RadioGroup/Radio/Radio.js +2 -1
- package/esm/components/RadioGroup/Radio/Radio.js.map +1 -1
- package/esm/components/RadioGroup/Radio/Radio.styles.js +3 -2
- package/esm/components/RadioGroup/Radio/Radio.styles.js.map +1 -1
- package/esm/components/RadioGroup/RadioGroup.js +5 -0
- package/esm/components/RadioGroup/RadioGroup.js.map +1 -1
- package/esm/components/RingProgress/Curve/Curve.js +1 -1
- package/esm/components/RingProgress/Curve/Curve.js.map +1 -1
- package/esm/components/SegmentedControl/SegmentedControl.js +16 -9
- package/esm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/esm/components/SegmentedControl/SegmentedControl.styles.js +9 -4
- package/esm/components/SegmentedControl/SegmentedControl.styles.js.map +1 -1
- package/esm/components/Select/Select.js +17 -6
- package/esm/components/Select/Select.js.map +1 -1
- package/esm/components/Select/SelectDropdown/SelectDropdown.js +3 -1
- package/esm/components/Select/SelectDropdown/SelectDropdown.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/Slider/Marks/Marks.styles.js +4 -3
- package/esm/components/Slider/Marks/Marks.styles.js.map +1 -1
- package/esm/components/Slider/Thumb/Thumb.styles.js +3 -3
- package/esm/components/Slider/Thumb/Thumb.styles.js.map +1 -1
- package/esm/components/Slider/Track/Track.styles.js +1 -1
- package/esm/components/Slider/Track/Track.styles.js.map +1 -1
- package/esm/components/Stepper/Step/Step.styles.js +4 -3
- package/esm/components/Stepper/Step/Step.styles.js.map +1 -1
- package/esm/components/Stepper/Stepper.styles.js +1 -1
- package/esm/components/Stepper/Stepper.styles.js.map +1 -1
- package/esm/components/Switch/Switch.styles.js +3 -2
- package/esm/components/Switch/Switch.styles.js.map +1 -1
- package/esm/components/Text/Text.styles.js +7 -9
- package/esm/components/Text/Text.styles.js.map +1 -1
- package/esm/components/ThemeIcon/ThemeIcon.styles.js +3 -4
- package/esm/components/ThemeIcon/ThemeIcon.styles.js.map +1 -1
- package/esm/components/Timeline/TimelineItem/TimelineItem.styles.js +70 -67
- package/esm/components/Timeline/TimelineItem/TimelineItem.styles.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/esm/components/Tooltip/Tooltip.js +2 -2
- package/esm/components/Tooltip/Tooltip.js.map +1 -1
- package/esm/components/TransferList/RenderList/RenderList.styles.js +2 -2
- package/esm/components/TransferList/RenderList/RenderList.styles.js.map +1 -1
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -1
- package/lib/components/ActionIcon/ActionIcon.d.ts.map +1 -1
- package/lib/components/ActionIcon/ActionIcon.styles.d.ts.map +1 -1
- package/lib/components/Alert/Alert.d.ts.map +1 -1
- package/lib/components/Alert/Alert.styles.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/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/lib/components/Avatar/Avatar.styles.d.ts.map +1 -1
- package/lib/components/Badge/Badge.styles.d.ts.map +1 -1
- package/lib/components/Button/Button.d.ts.map +1 -1
- package/lib/components/Button/Button.styles.d.ts.map +1 -1
- package/lib/components/Checkbox/Checkbox.styles.d.ts.map +1 -1
- package/lib/components/Chips/Chip/Chip.styles.d.ts.map +1 -1
- package/lib/components/Code/Code.styles.d.ts.map +1 -1
- package/lib/components/Container/Container.d.ts.map +1 -1
- package/lib/components/Container/Container.styles.d.ts.map +1 -1
- package/lib/components/Divider/Divider.styles.d.ts.map +1 -1
- package/lib/components/Drawer/Drawer.d.ts +4 -2
- package/lib/components/Drawer/Drawer.d.ts.map +1 -1
- package/lib/components/Grid/Col/Col.d.ts +1 -4
- package/lib/components/Grid/Col/Col.d.ts.map +1 -1
- package/lib/components/Indicator/Indicator.d.ts +29 -0
- package/lib/components/Indicator/Indicator.d.ts.map +1 -0
- package/lib/components/Indicator/Indicator.styles.d.ts +19 -0
- package/lib/components/Indicator/Indicator.styles.d.ts.map +1 -0
- package/lib/components/Indicator/Indicator.types.d.ts +5 -0
- package/lib/components/Indicator/Indicator.types.d.ts.map +1 -0
- package/lib/components/Indicator/index.d.ts +4 -0
- package/lib/components/Indicator/index.d.ts.map +1 -0
- package/lib/components/InputWrapper/InputWrapper.d.ts.map +1 -1
- package/lib/components/Loader/Loader.d.ts.map +1 -1
- package/lib/components/Menu/MenuItem/MenuItem.styles.d.ts.map +1 -1
- package/lib/components/Modal/Modal.d.ts +4 -2
- 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/Pagination/Pagination.styles.d.ts.map +1 -1
- package/lib/components/Popper/Popper.d.ts +1 -6
- package/lib/components/Popper/Popper.d.ts.map +1 -1
- package/lib/components/Progress/Progress.styles.d.ts.map +1 -1
- package/lib/components/RadioGroup/Radio/Radio.styles.d.ts.map +1 -1
- package/lib/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/lib/components/SegmentedControl/SegmentedControl.d.ts +1 -0
- 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/SelectDropdown/SelectDropdown.d.ts +1 -0
- package/lib/components/Select/SelectDropdown/SelectDropdown.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/Slider/Marks/Marks.styles.d.ts.map +1 -1
- package/lib/components/Slider/Thumb/Thumb.styles.d.ts.map +1 -1
- package/lib/components/Stepper/Step/Step.styles.d.ts.map +1 -1
- package/lib/components/Switch/Switch.styles.d.ts.map +1 -1
- package/lib/components/Text/Text.styles.d.ts.map +1 -1
- package/lib/components/ThemeIcon/ThemeIcon.styles.d.ts.map +1 -1
- package/lib/components/Timeline/TimelineItem/TimelineItem.styles.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/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -85,6 +85,7 @@ const NumberInput = React.forwardRef((props, ref) => {
|
|
|
85
85
|
styles: styles$1,
|
|
86
86
|
size,
|
|
87
87
|
rightSection,
|
|
88
|
+
rightSectionWidth,
|
|
88
89
|
formatter,
|
|
89
90
|
parser
|
|
90
91
|
} = _a, others = __objRest(_a, [
|
|
@@ -110,6 +111,7 @@ const NumberInput = React.forwardRef((props, ref) => {
|
|
|
110
111
|
"styles",
|
|
111
112
|
"size",
|
|
112
113
|
"rightSection",
|
|
114
|
+
"rightSectionWidth",
|
|
113
115
|
"formatter",
|
|
114
116
|
"parser"
|
|
115
117
|
]);
|
|
@@ -298,7 +300,7 @@ const NumberInput = React.forwardRef((props, ref) => {
|
|
|
298
300
|
onKeyDown: handleKeyDown,
|
|
299
301
|
onKeyUp: handleKeyUp,
|
|
300
302
|
rightSection: rightSection || (disabled || hideControls || variant === "unstyled" ? null : controls),
|
|
301
|
-
rightSectionWidth: theme.fn.size({ size, sizes: NumberInput_styles.CONTROL_SIZES }) + 1,
|
|
303
|
+
rightSectionWidth: rightSectionWidth || theme.fn.size({ size, sizes: NumberInput_styles.CONTROL_SIZES }) + 1,
|
|
302
304
|
radius,
|
|
303
305
|
max,
|
|
304
306
|
min,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberInput.js","sources":["../../../src/components/NumberInput/NumberInput.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef, forwardRef } from 'react';\nimport { useMergedRef, assignRef, clamp, useOs } from '@mantine/hooks';\nimport { DefaultProps, ClassNames, useMantineDefaultProps } from '@mantine/styles';\nimport { getInputMode } from '../../utils';\nimport { TextInput } from '../TextInput/TextInput';\nimport { InputStylesNames } from '../Input/Input';\nimport { InputWrapperStylesNames } from '../InputWrapper/InputWrapper';\nimport useStyles, { CONTROL_SIZES } from './NumberInput.styles';\n\nexport type InnerNumberInputStylesNames = ClassNames<typeof useStyles>;\nexport type NumberInputStylesNames =\n | InputStylesNames\n | InputWrapperStylesNames\n | InnerNumberInputStylesNames;\n\nexport interface NumberInputHandlers {\n increment(): void;\n decrement(): void;\n}\n\ntype Formatter = (value: string | undefined) => string;\ntype Parser = (value: string | undefined) => string | undefined;\n\nexport interface NumberInputProps\n extends DefaultProps<NumberInputStylesNames>,\n Omit<\n React.ComponentPropsWithoutRef<typeof TextInput>,\n 'onChange' | 'value' | 'classNames' | 'styles'\n > {\n /** onChange input handler for controlled variant, note that input event is not exposed. It will return undefined if the input is empty, otherwise it'll return a number */\n onChange?(value: number | undefined): void;\n\n /** Input value for controlled variant */\n value?: number | undefined;\n\n /** The decimal separator */\n decimalSeparator?: string;\n\n /** Maximum possible value */\n max?: number;\n\n /** Minimal possible value */\n min?: number;\n\n /** Number by which value will be incremented/decremented with controls and up/down arrows */\n step?: number;\n\n /** Delay before stepping the value. Can be a number of milliseconds or a function that receives the current step count and returns the delay in milliseconds. */\n stepHoldInterval?: number | ((stepCount: number) => number);\n\n /** Initial delay in milliseconds before stepping the value. */\n stepHoldDelay?: number;\n\n /** Removes increment/decrement controls */\n hideControls?: boolean;\n\n /** Amount of digits after the decimal point */\n precision?: number;\n\n /** Default value for uncontrolled variant only */\n defaultValue?: number | undefined;\n\n /** Prevent value clamp on blur */\n noClampOnBlur?: boolean;\n\n /** Get increment/decrement handlers */\n handlersRef?: React.ForwardedRef<NumberInputHandlers | undefined>;\n\n /** Formats the number into the input */\n formatter?: Formatter;\n\n /** Parsers the value from formatter, should be used with formatter at the same time */\n parser?: Parser;\n}\n\nconst defaultFormatter: Formatter = (value) => value || '';\nconst defaultParser: Parser = (num) => {\n const parsedNum = parseFloat(num);\n\n if (Number.isNaN(parsedNum)) {\n return undefined;\n }\n\n return num;\n};\n\nconst defaultProps: Partial<NumberInputProps> = {\n step: 1,\n hideControls: false,\n size: 'sm',\n precision: 0,\n noClampOnBlur: false,\n formatter: defaultFormatter,\n parser: defaultParser,\n};\n\nexport const NumberInput = forwardRef<HTMLInputElement, NumberInputProps>(\n (props: NumberInputProps, ref) => {\n const {\n disabled,\n value,\n onChange,\n decimalSeparator,\n min,\n max,\n step,\n stepHoldInterval,\n stepHoldDelay,\n onBlur,\n onFocus,\n hideControls,\n radius,\n variant,\n precision,\n defaultValue,\n noClampOnBlur,\n handlersRef,\n classNames,\n styles,\n size,\n rightSection,\n formatter,\n parser,\n ...others\n } = useMantineDefaultProps('NumberInput', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { radius, size },\n { classNames, styles, name: 'NumberInput' }\n );\n\n const [focused, setFocused] = useState(false);\n const [_value, setValue] = useState(\n typeof value === 'number'\n ? value\n : typeof defaultValue === 'number'\n ? defaultValue\n : undefined\n );\n const finalValue = typeof value === 'number' ? value : _value;\n const [tempValue, setTempValue] = useState(\n typeof finalValue === 'number' ? finalValue.toFixed(precision) : ''\n );\n const inputRef = useRef<HTMLInputElement>();\n const handleValueChange = (val: number | undefined) => {\n typeof onChange === 'function' && onChange(val);\n setValue(val);\n };\n\n const formatNum = (val: string | number = '') => {\n let parsedStr = typeof val === 'number' ? String(val) : val;\n\n if (decimalSeparator) {\n parsedStr = parsedStr.replace(/\\./g, decimalSeparator);\n }\n\n return formatter(parsedStr);\n };\n\n const parseNum = (val: string): string | undefined => {\n let num = val;\n\n if (decimalSeparator) {\n num = num.replace(new RegExp(`\\\\${decimalSeparator}`, 'g'), '.');\n }\n\n return parser(num);\n };\n\n const _min = typeof min === 'number' ? min : -Infinity;\n const _max = typeof max === 'number' ? max : Infinity;\n\n const incrementRef = useRef<() => void>();\n incrementRef.current = () => {\n if (_value === undefined) {\n handleValueChange(min ?? 0);\n setTempValue(min?.toFixed(precision) ?? '0');\n } else {\n const result = clamp({ value: _value + step, min: _min, max: _max }).toFixed(precision);\n\n handleValueChange(parseFloat(result));\n setTempValue(result);\n }\n };\n\n const decrementRef = useRef<() => void>();\n decrementRef.current = () => {\n if (_value === undefined) {\n handleValueChange(min ?? 0);\n setTempValue(min?.toFixed(precision) ?? '0');\n } else {\n const result = clamp({ value: _value - step, min: _min, max: _max }).toFixed(precision);\n handleValueChange(parseFloat(result));\n setTempValue(result);\n }\n };\n\n assignRef(handlersRef, { increment: incrementRef.current, decrement: decrementRef.current });\n\n useEffect(() => {\n if (typeof value === 'number' && !focused) {\n setValue(value);\n setTempValue(value.toFixed(precision));\n }\n if (defaultValue === undefined && value === undefined && !focused) {\n setValue(value);\n setTempValue('');\n }\n }, [value]);\n\n const shouldUseStepInterval = stepHoldDelay !== undefined && stepHoldInterval !== undefined;\n const onStepTimeoutRef = useRef<number>(null);\n const stepCountRef = useRef<number>(0);\n\n const onStepDone = () => {\n if (onStepTimeoutRef.current) {\n window.clearTimeout(onStepTimeoutRef.current);\n }\n onStepTimeoutRef.current = null;\n stepCountRef.current = 0;\n };\n\n const onStepHandleChange = (isIncrement: boolean) => {\n if (isIncrement) {\n incrementRef.current();\n } else {\n decrementRef.current();\n }\n stepCountRef.current += 1;\n };\n\n const onStepLoop = (isIncrement: boolean) => {\n onStepHandleChange(isIncrement);\n\n if (shouldUseStepInterval) {\n const interval =\n typeof stepHoldInterval === 'number'\n ? stepHoldInterval\n : stepHoldInterval(stepCountRef.current);\n onStepTimeoutRef.current = window.setTimeout(() => onStepLoop(isIncrement), interval);\n }\n };\n\n const onStep = (\n event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>,\n isIncrement: boolean\n ) => {\n event.preventDefault();\n onStepHandleChange(isIncrement);\n if (shouldUseStepInterval) {\n onStepTimeoutRef.current = window.setTimeout(() => onStepLoop(isIncrement), stepHoldDelay);\n }\n inputRef.current.focus();\n };\n\n useEffect(() => {\n onStepDone();\n return onStepDone;\n }, []);\n\n const controls = (\n <div className={classes.rightSection}>\n <button\n type=\"button\"\n tabIndex={-1}\n aria-hidden\n disabled={finalValue >= max}\n className={cx(classes.control, classes.controlUp)}\n onMouseDown={(event) => {\n onStep(event, true);\n }}\n onMouseUp={onStepDone}\n onMouseLeave={onStepDone}\n />\n <button\n type=\"button\"\n tabIndex={-1}\n aria-hidden\n disabled={finalValue <= min}\n className={cx(classes.control, classes.controlDown)}\n onMouseDown={(event) => {\n onStep(event, false);\n }}\n onMouseUp={onStepDone}\n onMouseLeave={onStepDone}\n />\n </div>\n );\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const val = event.target.value;\n const parsed = parseNum(val);\n\n setTempValue(parsed);\n\n if (val === '') {\n handleValueChange(undefined);\n } else {\n val.trim() !== '' && !Number.isNaN(parsed) && handleValueChange(parseFloat(parsed));\n }\n };\n\n const handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n if (event.target.value === '') {\n setTempValue('');\n handleValueChange(undefined);\n } else {\n const parsedVal = parseNum(event.target.value);\n const val = clamp({ value: parseFloat(parsedVal), min: _min, max: _max });\n\n if (!Number.isNaN(val)) {\n if (!noClampOnBlur) {\n setTempValue(val.toFixed(precision));\n handleValueChange(parseFloat(val.toFixed(precision)));\n }\n } else {\n setTempValue(finalValue?.toFixed(precision) ?? '');\n }\n }\n\n setFocused(false);\n typeof onBlur === 'function' && onBlur(event);\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true);\n typeof onFocus === 'function' && onFocus(event);\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.repeat && shouldUseStepInterval) {\n event.preventDefault();\n return;\n }\n\n if (event.key === 'ArrowUp') {\n onStep(event, true);\n } else if (event.key === 'ArrowDown') {\n onStep(event, false);\n }\n };\n\n const handleKeyUp = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n onStepDone();\n }\n };\n\n return (\n <TextInput\n {...others}\n variant={variant}\n value={formatNum(tempValue)}\n disabled={disabled}\n ref={useMergedRef(inputRef, ref)}\n type=\"text\"\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n rightSection={\n rightSection || (disabled || hideControls || variant === 'unstyled' ? null : controls)\n }\n rightSectionWidth={theme.fn.size({ size, sizes: CONTROL_SIZES }) + 1}\n radius={radius}\n max={max}\n min={min}\n step={step}\n size={size}\n styles={styles}\n classNames={classNames}\n inputMode={getInputMode(step, precision, useOs())}\n __staticSelector=\"NumberInput\"\n />\n );\n }\n);\n\nNumberInput.displayName = '@mantine/core/NumberInput';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useStyles","useState","useRef","clamp","assignRef","useEffect","React","TextInput","useMergedRef","CONTROL_SIZES","getInputMode","useOs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NumberInput.js","sources":["../../../src/components/NumberInput/NumberInput.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef, forwardRef } from 'react';\nimport { useMergedRef, assignRef, clamp, useOs } from '@mantine/hooks';\nimport { DefaultProps, ClassNames, useMantineDefaultProps } from '@mantine/styles';\nimport { getInputMode } from '../../utils';\nimport { TextInput } from '../TextInput/TextInput';\nimport { InputStylesNames } from '../Input/Input';\nimport { InputWrapperStylesNames } from '../InputWrapper/InputWrapper';\nimport useStyles, { CONTROL_SIZES } from './NumberInput.styles';\n\nexport type InnerNumberInputStylesNames = ClassNames<typeof useStyles>;\nexport type NumberInputStylesNames =\n | InputStylesNames\n | InputWrapperStylesNames\n | InnerNumberInputStylesNames;\n\nexport interface NumberInputHandlers {\n increment(): void;\n decrement(): void;\n}\n\ntype Formatter = (value: string | undefined) => string;\ntype Parser = (value: string | undefined) => string | undefined;\n\nexport interface NumberInputProps\n extends DefaultProps<NumberInputStylesNames>,\n Omit<\n React.ComponentPropsWithoutRef<typeof TextInput>,\n 'onChange' | 'value' | 'classNames' | 'styles'\n > {\n /** onChange input handler for controlled variant, note that input event is not exposed. It will return undefined if the input is empty, otherwise it'll return a number */\n onChange?(value: number | undefined): void;\n\n /** Input value for controlled variant */\n value?: number | undefined;\n\n /** The decimal separator */\n decimalSeparator?: string;\n\n /** Maximum possible value */\n max?: number;\n\n /** Minimal possible value */\n min?: number;\n\n /** Number by which value will be incremented/decremented with controls and up/down arrows */\n step?: number;\n\n /** Delay before stepping the value. Can be a number of milliseconds or a function that receives the current step count and returns the delay in milliseconds. */\n stepHoldInterval?: number | ((stepCount: number) => number);\n\n /** Initial delay in milliseconds before stepping the value. */\n stepHoldDelay?: number;\n\n /** Removes increment/decrement controls */\n hideControls?: boolean;\n\n /** Amount of digits after the decimal point */\n precision?: number;\n\n /** Default value for uncontrolled variant only */\n defaultValue?: number | undefined;\n\n /** Prevent value clamp on blur */\n noClampOnBlur?: boolean;\n\n /** Get increment/decrement handlers */\n handlersRef?: React.ForwardedRef<NumberInputHandlers | undefined>;\n\n /** Formats the number into the input */\n formatter?: Formatter;\n\n /** Parsers the value from formatter, should be used with formatter at the same time */\n parser?: Parser;\n}\n\nconst defaultFormatter: Formatter = (value) => value || '';\nconst defaultParser: Parser = (num) => {\n const parsedNum = parseFloat(num);\n\n if (Number.isNaN(parsedNum)) {\n return undefined;\n }\n\n return num;\n};\n\nconst defaultProps: Partial<NumberInputProps> = {\n step: 1,\n hideControls: false,\n size: 'sm',\n precision: 0,\n noClampOnBlur: false,\n formatter: defaultFormatter,\n parser: defaultParser,\n};\n\nexport const NumberInput = forwardRef<HTMLInputElement, NumberInputProps>(\n (props: NumberInputProps, ref) => {\n const {\n disabled,\n value,\n onChange,\n decimalSeparator,\n min,\n max,\n step,\n stepHoldInterval,\n stepHoldDelay,\n onBlur,\n onFocus,\n hideControls,\n radius,\n variant,\n precision,\n defaultValue,\n noClampOnBlur,\n handlersRef,\n classNames,\n styles,\n size,\n rightSection,\n rightSectionWidth,\n formatter,\n parser,\n ...others\n } = useMantineDefaultProps('NumberInput', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { radius, size },\n { classNames, styles, name: 'NumberInput' }\n );\n\n const [focused, setFocused] = useState(false);\n const [_value, setValue] = useState(\n typeof value === 'number'\n ? value\n : typeof defaultValue === 'number'\n ? defaultValue\n : undefined\n );\n const finalValue = typeof value === 'number' ? value : _value;\n const [tempValue, setTempValue] = useState(\n typeof finalValue === 'number' ? finalValue.toFixed(precision) : ''\n );\n const inputRef = useRef<HTMLInputElement>();\n const handleValueChange = (val: number | undefined) => {\n typeof onChange === 'function' && onChange(val);\n setValue(val);\n };\n\n const formatNum = (val: string | number = '') => {\n let parsedStr = typeof val === 'number' ? String(val) : val;\n\n if (decimalSeparator) {\n parsedStr = parsedStr.replace(/\\./g, decimalSeparator);\n }\n\n return formatter(parsedStr);\n };\n\n const parseNum = (val: string): string | undefined => {\n let num = val;\n\n if (decimalSeparator) {\n num = num.replace(new RegExp(`\\\\${decimalSeparator}`, 'g'), '.');\n }\n\n return parser(num);\n };\n\n const _min = typeof min === 'number' ? min : -Infinity;\n const _max = typeof max === 'number' ? max : Infinity;\n\n const incrementRef = useRef<() => void>();\n incrementRef.current = () => {\n if (_value === undefined) {\n handleValueChange(min ?? 0);\n setTempValue(min?.toFixed(precision) ?? '0');\n } else {\n const result = clamp({ value: _value + step, min: _min, max: _max }).toFixed(precision);\n\n handleValueChange(parseFloat(result));\n setTempValue(result);\n }\n };\n\n const decrementRef = useRef<() => void>();\n decrementRef.current = () => {\n if (_value === undefined) {\n handleValueChange(min ?? 0);\n setTempValue(min?.toFixed(precision) ?? '0');\n } else {\n const result = clamp({ value: _value - step, min: _min, max: _max }).toFixed(precision);\n handleValueChange(parseFloat(result));\n setTempValue(result);\n }\n };\n\n assignRef(handlersRef, { increment: incrementRef.current, decrement: decrementRef.current });\n\n useEffect(() => {\n if (typeof value === 'number' && !focused) {\n setValue(value);\n setTempValue(value.toFixed(precision));\n }\n if (defaultValue === undefined && value === undefined && !focused) {\n setValue(value);\n setTempValue('');\n }\n }, [value]);\n\n const shouldUseStepInterval = stepHoldDelay !== undefined && stepHoldInterval !== undefined;\n const onStepTimeoutRef = useRef<number>(null);\n const stepCountRef = useRef<number>(0);\n\n const onStepDone = () => {\n if (onStepTimeoutRef.current) {\n window.clearTimeout(onStepTimeoutRef.current);\n }\n onStepTimeoutRef.current = null;\n stepCountRef.current = 0;\n };\n\n const onStepHandleChange = (isIncrement: boolean) => {\n if (isIncrement) {\n incrementRef.current();\n } else {\n decrementRef.current();\n }\n stepCountRef.current += 1;\n };\n\n const onStepLoop = (isIncrement: boolean) => {\n onStepHandleChange(isIncrement);\n\n if (shouldUseStepInterval) {\n const interval =\n typeof stepHoldInterval === 'number'\n ? stepHoldInterval\n : stepHoldInterval(stepCountRef.current);\n onStepTimeoutRef.current = window.setTimeout(() => onStepLoop(isIncrement), interval);\n }\n };\n\n const onStep = (\n event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>,\n isIncrement: boolean\n ) => {\n event.preventDefault();\n onStepHandleChange(isIncrement);\n if (shouldUseStepInterval) {\n onStepTimeoutRef.current = window.setTimeout(() => onStepLoop(isIncrement), stepHoldDelay);\n }\n inputRef.current.focus();\n };\n\n useEffect(() => {\n onStepDone();\n return onStepDone;\n }, []);\n\n const controls = (\n <div className={classes.rightSection}>\n <button\n type=\"button\"\n tabIndex={-1}\n aria-hidden\n disabled={finalValue >= max}\n className={cx(classes.control, classes.controlUp)}\n onMouseDown={(event) => {\n onStep(event, true);\n }}\n onMouseUp={onStepDone}\n onMouseLeave={onStepDone}\n />\n <button\n type=\"button\"\n tabIndex={-1}\n aria-hidden\n disabled={finalValue <= min}\n className={cx(classes.control, classes.controlDown)}\n onMouseDown={(event) => {\n onStep(event, false);\n }}\n onMouseUp={onStepDone}\n onMouseLeave={onStepDone}\n />\n </div>\n );\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const val = event.target.value;\n const parsed = parseNum(val);\n\n setTempValue(parsed);\n\n if (val === '') {\n handleValueChange(undefined);\n } else {\n val.trim() !== '' && !Number.isNaN(parsed) && handleValueChange(parseFloat(parsed));\n }\n };\n\n const handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n if (event.target.value === '') {\n setTempValue('');\n handleValueChange(undefined);\n } else {\n const parsedVal = parseNum(event.target.value);\n const val = clamp({ value: parseFloat(parsedVal), min: _min, max: _max });\n\n if (!Number.isNaN(val)) {\n if (!noClampOnBlur) {\n setTempValue(val.toFixed(precision));\n handleValueChange(parseFloat(val.toFixed(precision)));\n }\n } else {\n setTempValue(finalValue?.toFixed(precision) ?? '');\n }\n }\n\n setFocused(false);\n typeof onBlur === 'function' && onBlur(event);\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true);\n typeof onFocus === 'function' && onFocus(event);\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.repeat && shouldUseStepInterval) {\n event.preventDefault();\n return;\n }\n\n if (event.key === 'ArrowUp') {\n onStep(event, true);\n } else if (event.key === 'ArrowDown') {\n onStep(event, false);\n }\n };\n\n const handleKeyUp = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n onStepDone();\n }\n };\n\n return (\n <TextInput\n {...others}\n variant={variant}\n value={formatNum(tempValue)}\n disabled={disabled}\n ref={useMergedRef(inputRef, ref)}\n type=\"text\"\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n rightSection={\n rightSection || (disabled || hideControls || variant === 'unstyled' ? null : controls)\n }\n rightSectionWidth={rightSectionWidth || theme.fn.size({ size, sizes: CONTROL_SIZES }) + 1}\n radius={radius}\n max={max}\n min={min}\n step={step}\n size={size}\n styles={styles}\n classNames={classNames}\n inputMode={getInputMode(step, precision, useOs())}\n __staticSelector=\"NumberInput\"\n />\n );\n }\n);\n\nNumberInput.displayName = '@mantine/core/NumberInput';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useStyles","useState","useRef","clamp","assignRef","useEffect","React","TextInput","useMergedRef","CONTROL_SIZES","getInputMode","useOs"],"mappings":"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"}
|
|
@@ -31,11 +31,7 @@ const sizes = {
|
|
|
31
31
|
xl: 44
|
|
32
32
|
};
|
|
33
33
|
var useStyles = styles.createStyles((theme, { size, radius, color }, getRef) => {
|
|
34
|
-
const colors =
|
|
35
|
-
color,
|
|
36
|
-
theme,
|
|
37
|
-
variant: "filled"
|
|
38
|
-
});
|
|
34
|
+
const colors = theme.fn.variant({ color, variant: "filled" });
|
|
39
35
|
return {
|
|
40
36
|
item: __spreadProps(__spreadValues({}, theme.fn.focusStyles()), {
|
|
41
37
|
cursor: "pointer",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.styles.js","sources":["../../../src/components/Pagination/Pagination.styles.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"Pagination.styles.js","sources":["../../../src/components/Pagination/Pagination.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineColor } from '@mantine/styles';\n\nexport interface PaginationStylesParams {\n size: MantineNumberSize;\n radius: MantineNumberSize;\n color: MantineColor;\n}\n\nconst sizes = {\n xs: 22,\n sm: 26,\n md: 32,\n lg: 38,\n xl: 44,\n};\n\nexport default createStyles((theme, { size, radius, color }: PaginationStylesParams, getRef) => {\n const colors = theme.fn.variant({ color, variant: 'filled' });\n\n return {\n item: {\n ...theme.fn.focusStyles(),\n cursor: 'pointer',\n userSelect: 'none',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n fontWeight: 500,\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[5] : theme.colors.gray[3]\n }`,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n height: theme.fn.size({ size, sizes }),\n minWidth: theme.fn.size({ size, sizes }),\n padding: `0 ${theme.fn.size({ size, sizes: theme.spacing }) / 2}px`,\n fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),\n borderRadius: theme.fn.radius(radius),\n lineHeight: 1,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[5] : theme.white,\n\n [`&:active:not(:disabled):not(.${getRef('dots')})`]: {\n transform: 'translateY(1px)',\n },\n\n '&:disabled': {\n opacity: 0.6,\n cursor: 'not-allowed',\n color: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[5],\n },\n },\n\n active: {\n borderColor: 'transparent',\n color: colors.color,\n backgroundColor: colors.background,\n },\n\n dots: {\n ref: getRef('dots'),\n cursor: 'default',\n borderColor: 'transparent',\n backgroundColor: 'transparent',\n },\n };\n});\n"],"names":["createStyles"],"mappings":"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"}
|
|
@@ -78,8 +78,7 @@ function Popper({
|
|
|
78
78
|
forceUpdateDependencies = [],
|
|
79
79
|
modifiers = [],
|
|
80
80
|
onTransitionEnd,
|
|
81
|
-
withinPortal = true
|
|
82
|
-
coordinates
|
|
81
|
+
withinPortal = true
|
|
83
82
|
}) {
|
|
84
83
|
var _a;
|
|
85
84
|
const padding = withArrow ? gutter + arrowSize : gutter;
|
|
@@ -116,9 +115,9 @@ function Popper({
|
|
|
116
115
|
zIndex
|
|
117
116
|
}, /* @__PURE__ */ React__default.createElement("div", __spreadValues({
|
|
118
117
|
ref: setPopperElement,
|
|
119
|
-
style:
|
|
118
|
+
style: __spreadProps(__spreadValues({}, styles.popper), {
|
|
120
119
|
pointerEvents: "none"
|
|
121
|
-
})
|
|
120
|
+
})
|
|
122
121
|
}, attributes.popper), /* @__PURE__ */ React__default.createElement("div", {
|
|
123
122
|
style: transitionStyles
|
|
124
123
|
}, children, withArrow && /* @__PURE__ */ React__default.createElement("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popper.js","sources":["../../../src/components/Popper/Popper.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { usePopper, StrictModifier } from 'react-popper';\nimport { getDefaultZIndex } from '@mantine/styles';\nimport type { Placement } from '@popperjs/core';\nimport { useDidUpdate } from '@mantine/hooks';\nimport { Transition, MantineTransition } from '../Transition';\nimport { parsePopperPosition } from './parse-popper-position/parse-popper-position';\nimport { PopperContainer } from './PopperContainer/PopperContainer';\nimport useStyles from './Popper.styles';\n\nexport interface SharedPopperProps {\n /** Position relative to reference element */\n position?: 'top' | 'left' | 'bottom' | 'right';\n\n /** Placement relative to reference element */\n placement?: 'start' | 'center' | 'end';\n\n /** Spacing between element and popper in px */\n gutter?: number;\n\n /** Arrow size in px */\n arrowSize?: number;\n\n /** Arrow distance to the left/right * arrowSize */\n arrowDistance?: number;\n\n /** Renders arrow if true */\n withArrow?: boolean;\n\n /** Popper z-index */\n zIndex?: number;\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 /** Exact coordinates where to position popper on page */\n coordinates?: { x: number; y: number };\n}\n\nexport interface PopperProps<T extends HTMLElement> extends SharedPopperProps {\n /** Element at which popper should be attached */\n referenceElement: T;\n\n /** Popper content */\n children: React.ReactNode;\n\n /** True to show popper, false to hide */\n mounted: boolean;\n\n /** Arrow class name */\n arrowClassName?: string;\n\n /** Arrow inline styles */\n arrowStyle?: React.CSSProperties;\n\n /** useEffect dependencies to force update popper position */\n forceUpdateDependencies?: any[];\n\n /** Called when transition ends */\n onTransitionEnd?(): void;\n\n /** Popperjs modifiers array */\n modifiers?: StrictModifier[];\n\n /** Whether to render the target element in a Portal */\n withinPortal?: boolean;\n}\n\nfunction flipPlacement(placement: 'start' | 'center' | 'end', dir: 'ltr' | 'rtl') {\n if (placement === 'center') {\n return placement;\n }\n\n if (dir === 'rtl') {\n if (placement === 'end') {\n return 'start';\n }\n\n return 'end';\n }\n\n return placement;\n}\n\nfunction flipPosition(position: 'top' | 'left' | 'bottom' | 'right', dir: 'ltr' | 'rtl') {\n if (position === 'top' || position === 'bottom') {\n return position;\n }\n\n if (dir === 'rtl') {\n if (position === 'left') {\n return 'right';\n }\n\n return 'left';\n }\n\n return position;\n}\n\nexport function Popper<T extends HTMLElement = HTMLDivElement>({\n position = 'top',\n placement = 'center',\n gutter = 5,\n arrowSize = 2,\n arrowDistance = 2,\n withArrow = false,\n referenceElement,\n children,\n mounted,\n transition = 'pop-top-left',\n transitionDuration,\n exitTransitionDuration = transitionDuration,\n transitionTimingFunction,\n arrowClassName,\n arrowStyle,\n zIndex = getDefaultZIndex('popover'),\n forceUpdateDependencies = [],\n modifiers = [],\n onTransitionEnd,\n withinPortal = true,\n coordinates,\n}: PopperProps<T>) {\n const padding = withArrow ? gutter + arrowSize : gutter;\n const { classes, cx, theme } = useStyles({ arrowSize, arrowDistance }, { name: 'Popper' });\n const [popperElement, setPopperElement] = useState(null);\n const _placement = flipPlacement(placement, theme.dir);\n const _position = flipPosition(position, theme.dir);\n\n const initialPlacement: Placement =\n _placement === 'center' ? _position : `${_position}-${_placement}`;\n\n const { styles, attributes, forceUpdate } = usePopper(referenceElement, popperElement, {\n placement: initialPlacement,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, padding],\n },\n },\n ...modifiers,\n ],\n });\n\n const parsedAttributes = parsePopperPosition(attributes.popper?.['data-popper-placement']);\n\n useDidUpdate(() => {\n typeof forceUpdate === 'function' && forceUpdate();\n }, forceUpdateDependencies);\n\n return (\n <Transition\n mounted={mounted && !!referenceElement}\n duration={transitionDuration}\n exitDuration={exitTransitionDuration}\n transition={transition}\n timingFunction={transitionTimingFunction}\n onExited={onTransitionEnd}\n >\n {(transitionStyles) => (\n <div>\n <PopperContainer withinPortal={withinPortal} zIndex={zIndex}>\n <div\n ref={setPopperElement}\n style={{\n ...styles.popper,\n pointerEvents: 'none',\n ...(coordinates && { top: coordinates.y || 0, left: coordinates.x || 0 }),\n }}\n {...attributes.popper}\n >\n <div style={transitionStyles}>\n {children}\n {withArrow && (\n <div\n style={arrowStyle}\n className={cx(\n classes.arrow,\n classes[parsedAttributes.placement],\n classes[parsedAttributes.position],\n arrowClassName\n )}\n />\n )}\n </div>\n </div>\n </PopperContainer>\n </div>\n )}\n </Transition>\n );\n}\n\nPopper.displayName = '@mantine/core/Popper';\n"],"names":["getDefaultZIndex","useStyles","useState","usePopper","parsePopperPosition","useDidUpdate","React","Transition","PopperContainer"],"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;AASlE,SAAS,aAAa,CAAC,SAAS,EAAE,GAAG,EAAE;AACvC,EAAE,IAAI,SAAS,KAAK,QAAQ,EAAE;AAC9B,IAAI,OAAO,SAAS,CAAC;AACrB,GAAG;AACH,EAAE,IAAI,GAAG,KAAK,KAAK,EAAE;AACrB,IAAI,IAAI,SAAS,KAAK,KAAK,EAAE;AAC7B,MAAM,OAAO,OAAO,CAAC;AACrB,KAAK;AACL,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH,EAAE,OAAO,SAAS,CAAC;AACnB,CAAC;AACD,SAAS,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE;AACrC,EAAE,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,QAAQ,EAAE;AACnD,IAAI,OAAO,QAAQ,CAAC;AACpB,GAAG;AACH,EAAE,IAAI,GAAG,KAAK,KAAK,EAAE;AACrB,IAAI,IAAI,QAAQ,KAAK,MAAM,EAAE;AAC7B,MAAM,OAAO,OAAO,CAAC;AACrB,KAAK;AACL,IAAI,OAAO,MAAM,CAAC;AAClB,GAAG;AACH,EAAE,OAAO,QAAQ,CAAC;AAClB,CAAC;AACM,SAAS,MAAM,CAAC;AACvB,EAAE,QAAQ,GAAG,KAAK;AAClB,EAAE,SAAS,GAAG,QAAQ;AACtB,EAAE,MAAM,GAAG,CAAC;AACZ,EAAE,SAAS,GAAG,CAAC;AACf,EAAE,aAAa,GAAG,CAAC;AACnB,EAAE,SAAS,GAAG,KAAK;AACnB,EAAE,gBAAgB;AAClB,EAAE,QAAQ;AACV,EAAE,OAAO;AACT,EAAE,UAAU,GAAG,cAAc;AAC7B,EAAE,kBAAkB;AACpB,EAAE,sBAAsB,GAAG,kBAAkB;AAC7C,EAAE,wBAAwB;AAC1B,EAAE,cAAc;AAChB,EAAE,UAAU;AACZ,EAAE,MAAM,GAAGA,uBAAgB,CAAC,SAAS,CAAC;AACtC,EAAE,uBAAuB,GAAG,EAAE;AAC9B,EAAE,SAAS,GAAG,EAAE;AAChB,EAAE,eAAe;AACjB,EAAE,YAAY,GAAG,IAAI;AACrB,EAAE,WAAW;AACb,CAAC,EAAE;AACH,EAAE,IAAI,EAAE,CAAC;AACT,EAAE,MAAM,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAC1D,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAGC,wBAAS,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC7F,EAAE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAGC,cAAQ,CAAC,IAAI,CAAC,CAAC;AAC3D,EAAE,MAAM,UAAU,GAAG,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;AACzD,EAAE,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;AACtD,EAAE,MAAM,gBAAgB,GAAG,UAAU,KAAK,QAAQ,GAAG,SAAS,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;AAC9F,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAGC,qBAAS,CAAC,gBAAgB,EAAE,aAAa,EAAE;AACzF,IAAI,SAAS,EAAE,gBAAgB;AAC/B,IAAI,SAAS,EAAE;AACf,MAAM;AACN,QAAQ,IAAI,EAAE,QAAQ;AACtB,QAAQ,OAAO,EAAE;AACjB,UAAU,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC;AAC9B,SAAS;AACT,OAAO;AACP,MAAM,GAAG,SAAS;AAClB,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,gBAAgB,GAAGC,uCAAmB,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,MAAM,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC;AACxH,EAAEC,kBAAY,CAAC,MAAM;AACrB,IAAI,OAAO,WAAW,KAAK,UAAU,IAAI,WAAW,EAAE,CAAC;AACvD,GAAG,EAAE,uBAAuB,CAAC,CAAC;AAC9B,EAAE,uBAAuBC,cAAK,CAAC,aAAa,CAACC,qBAAU,EAAE;AACzD,IAAI,OAAO,EAAE,OAAO,IAAI,CAAC,CAAC,gBAAgB;AAC1C,IAAI,QAAQ,EAAE,kBAAkB;AAChC,IAAI,YAAY,EAAE,sBAAsB;AACxC,IAAI,UAAU;AACd,IAAI,cAAc,EAAE,wBAAwB;AAC5C,IAAI,QAAQ,EAAE,eAAe;AAC7B,GAAG,EAAE,CAAC,gBAAgB,qBAAqBD,cAAK,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,kBAAkBA,cAAK,CAAC,aAAa,CAACE,+BAAe,EAAE;AACjI,IAAI,YAAY;AAChB,IAAI,MAAM;AACV,GAAG,kBAAkBF,cAAK,CAAC,aAAa,CAAC,KAAK,EAAE,cAAc,CAAC;AAC/D,IAAI,GAAG,EAAE,gBAAgB;AACzB,IAAI,KAAK,EAAE,cAAc,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE;AAC3E,MAAM,aAAa,EAAE,MAAM;AAC3B,KAAK,CAAC,EAAE,WAAW,IAAI,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AAC7E,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,kBAAkBA,cAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACpE,IAAI,KAAK,EAAE,gBAAgB;AAC3B,GAAG,EAAE,QAAQ,EAAE,SAAS,oBAAoBA,cAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACvE,IAAI,KAAK,EAAE,UAAU;AACrB,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;AACzH,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACV,CAAC;AACD,MAAM,CAAC,WAAW,GAAG,sBAAsB;;;;"}
|
|
1
|
+
{"version":3,"file":"Popper.js","sources":["../../../src/components/Popper/Popper.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { usePopper, StrictModifier } from 'react-popper';\nimport { getDefaultZIndex } from '@mantine/styles';\nimport type { Placement } from '@popperjs/core';\nimport { useDidUpdate } from '@mantine/hooks';\nimport { Transition, MantineTransition } from '../Transition';\nimport { parsePopperPosition } from './parse-popper-position/parse-popper-position';\nimport { PopperContainer } from './PopperContainer/PopperContainer';\nimport useStyles from './Popper.styles';\n\nexport interface SharedPopperProps {\n /** Position relative to reference element */\n position?: 'top' | 'left' | 'bottom' | 'right';\n\n /** Placement relative to reference element */\n placement?: 'start' | 'center' | 'end';\n\n /** Spacing between element and popper in px */\n gutter?: number;\n\n /** Arrow size in px */\n arrowSize?: number;\n\n /** Arrow distance to the left/right * arrowSize */\n arrowDistance?: number;\n\n /** Renders arrow if true */\n withArrow?: boolean;\n\n /** Popper z-index */\n zIndex?: number;\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\nexport interface PopperProps<T extends HTMLElement> extends SharedPopperProps {\n /** Element at which popper should be attached */\n referenceElement: T;\n\n /** Popper content */\n children: React.ReactNode;\n\n /** True to show popper, false to hide */\n mounted: boolean;\n\n /** Arrow class name */\n arrowClassName?: string;\n\n /** Arrow inline styles */\n arrowStyle?: React.CSSProperties;\n\n /** useEffect dependencies to force update popper position */\n forceUpdateDependencies?: any[];\n\n /** Called when transition ends */\n onTransitionEnd?(): void;\n\n /** Popperjs modifiers array */\n modifiers?: StrictModifier[];\n\n /** Whether to render the target element in a Portal */\n withinPortal?: boolean;\n}\n\nfunction flipPlacement(placement: 'start' | 'center' | 'end', dir: 'ltr' | 'rtl') {\n if (placement === 'center') {\n return placement;\n }\n\n if (dir === 'rtl') {\n if (placement === 'end') {\n return 'start';\n }\n\n return 'end';\n }\n\n return placement;\n}\n\nfunction flipPosition(position: 'top' | 'left' | 'bottom' | 'right', dir: 'ltr' | 'rtl') {\n if (position === 'top' || position === 'bottom') {\n return position;\n }\n\n if (dir === 'rtl') {\n if (position === 'left') {\n return 'right';\n }\n\n return 'left';\n }\n\n return position;\n}\n\nexport function Popper<T extends HTMLElement = HTMLDivElement>({\n position = 'top',\n placement = 'center',\n gutter = 5,\n arrowSize = 2,\n arrowDistance = 2,\n withArrow = false,\n referenceElement,\n children,\n mounted,\n transition = 'pop-top-left',\n transitionDuration,\n exitTransitionDuration = transitionDuration,\n transitionTimingFunction,\n arrowClassName,\n arrowStyle,\n zIndex = getDefaultZIndex('popover'),\n forceUpdateDependencies = [],\n modifiers = [],\n onTransitionEnd,\n withinPortal = true,\n}: PopperProps<T>) {\n const padding = withArrow ? gutter + arrowSize : gutter;\n const { classes, cx, theme } = useStyles({ arrowSize, arrowDistance }, { name: 'Popper' });\n const [popperElement, setPopperElement] = useState(null);\n const _placement = flipPlacement(placement, theme.dir);\n const _position = flipPosition(position, theme.dir);\n\n const initialPlacement: Placement =\n _placement === 'center' ? _position : `${_position}-${_placement}`;\n\n const { styles, attributes, forceUpdate } = usePopper(referenceElement, popperElement, {\n placement: initialPlacement,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, padding],\n },\n },\n ...modifiers,\n ],\n });\n\n const parsedAttributes = parsePopperPosition(attributes.popper?.['data-popper-placement']);\n\n useDidUpdate(() => {\n typeof forceUpdate === 'function' && forceUpdate();\n }, forceUpdateDependencies);\n\n return (\n <Transition\n mounted={mounted && !!referenceElement}\n duration={transitionDuration}\n exitDuration={exitTransitionDuration}\n transition={transition}\n timingFunction={transitionTimingFunction}\n onExited={onTransitionEnd}\n >\n {(transitionStyles) => (\n <div>\n <PopperContainer withinPortal={withinPortal} zIndex={zIndex}>\n <div\n ref={setPopperElement}\n style={{\n ...styles.popper,\n pointerEvents: 'none',\n }}\n {...attributes.popper}\n >\n <div style={transitionStyles}>\n {children}\n {withArrow && (\n <div\n style={arrowStyle}\n className={cx(\n classes.arrow,\n classes[parsedAttributes.placement],\n classes[parsedAttributes.position],\n arrowClassName\n )}\n />\n )}\n </div>\n </div>\n </PopperContainer>\n </div>\n )}\n </Transition>\n );\n}\n\nPopper.displayName = '@mantine/core/Popper';\n"],"names":["getDefaultZIndex","useStyles","useState","usePopper","parsePopperPosition","useDidUpdate","React","Transition","PopperContainer"],"mappings":"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"}
|
|
@@ -92,7 +92,7 @@ const Progress = React.forwardRef((props, ref) => {
|
|
|
92
92
|
sx: {
|
|
93
93
|
width: `${section.value}%`,
|
|
94
94
|
left: `${section.accumulated}%`,
|
|
95
|
-
backgroundColor: theme.fn.themeColor(section.color,
|
|
95
|
+
backgroundColor: theme.fn.themeColor(section.color, theme.fn.primaryShade(), false)
|
|
96
96
|
}
|
|
97
97
|
}, section.label && /* @__PURE__ */ React__default.createElement(Text.Text, {
|
|
98
98
|
className: classes.label
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Progress.js","sources":["../../../src/components/Progress/Progress.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n ClassNames,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport useStyles from './Progress.styles';\nimport { Text } from '../Text';\n\nexport type ProgressStylesNames = ClassNames<typeof useStyles>;\n\nexport interface ProgressProps\n extends DefaultProps<ProgressStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n /** Percent of filled bar (0-100) */\n value?: number;\n\n /** Progress color from theme */\n color?: MantineColor;\n\n /** Predefined progress height or number for height in px */\n size?: MantineNumberSize;\n\n /** Predefined progress radius from theme.radius or number for height in px */\n radius?: MantineNumberSize;\n\n /** Adds stripes */\n striped?: boolean;\n\n /** Whether to animate striped progress bars */\n animate?: boolean;\n\n /** Text to be placed inside the progress bar */\n label?: string;\n\n /** Replaces value if present, renders multiple sections instead of single one */\n sections?: { value: number; color: MantineColor; label?: string }[];\n}\n\nfunction getCumulativeSections(\n sections: { value: number; color: MantineColor; label?: string }[]\n): { value: number; color: MantineColor; accumulated: number; label?: string }[] {\n return sections.reduce(\n (acc, section) => {\n acc.sections.push({ ...section, accumulated: acc.accumulated });\n acc.accumulated += section.value;\n return acc;\n },\n { accumulated: 0, sections: [] }\n ).sections;\n}\n\nconst defaultProps: Partial<ProgressProps> = {\n size: 'md',\n radius: 'sm',\n striped: false,\n animate: false,\n label: '',\n};\n\nexport const Progress = forwardRef<HTMLDivElement, ProgressProps>((props: ProgressProps, ref) => {\n const {\n className,\n value,\n color,\n size,\n radius,\n striped,\n animate,\n label,\n 'aria-label': ariaLabel,\n classNames,\n styles,\n sections,\n ...others\n } = useMantineDefaultProps('Progress', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { color, size, radius, striped: striped || animate, animate },\n { classNames, styles, name: 'Progress' }\n );\n\n const segments = Array.isArray(sections)\n ? getCumulativeSections(sections).map((section, index) => (\n <Box\n key={index}\n className={classes.bar}\n sx={{\n width: `${section.value}%`,\n left: `${section.accumulated}%`,\n backgroundColor: theme.fn.themeColor(section.color,
|
|
1
|
+
{"version":3,"file":"Progress.js","sources":["../../../src/components/Progress/Progress.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n ClassNames,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport useStyles from './Progress.styles';\nimport { Text } from '../Text';\n\nexport type ProgressStylesNames = ClassNames<typeof useStyles>;\n\nexport interface ProgressProps\n extends DefaultProps<ProgressStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n /** Percent of filled bar (0-100) */\n value?: number;\n\n /** Progress color from theme */\n color?: MantineColor;\n\n /** Predefined progress height or number for height in px */\n size?: MantineNumberSize;\n\n /** Predefined progress radius from theme.radius or number for height in px */\n radius?: MantineNumberSize;\n\n /** Adds stripes */\n striped?: boolean;\n\n /** Whether to animate striped progress bars */\n animate?: boolean;\n\n /** Text to be placed inside the progress bar */\n label?: string;\n\n /** Replaces value if present, renders multiple sections instead of single one */\n sections?: { value: number; color: MantineColor; label?: string }[];\n}\n\nfunction getCumulativeSections(\n sections: { value: number; color: MantineColor; label?: string }[]\n): { value: number; color: MantineColor; accumulated: number; label?: string }[] {\n return sections.reduce(\n (acc, section) => {\n acc.sections.push({ ...section, accumulated: acc.accumulated });\n acc.accumulated += section.value;\n return acc;\n },\n { accumulated: 0, sections: [] }\n ).sections;\n}\n\nconst defaultProps: Partial<ProgressProps> = {\n size: 'md',\n radius: 'sm',\n striped: false,\n animate: false,\n label: '',\n};\n\nexport const Progress = forwardRef<HTMLDivElement, ProgressProps>((props: ProgressProps, ref) => {\n const {\n className,\n value,\n color,\n size,\n radius,\n striped,\n animate,\n label,\n 'aria-label': ariaLabel,\n classNames,\n styles,\n sections,\n ...others\n } = useMantineDefaultProps('Progress', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { color, size, radius, striped: striped || animate, animate },\n { classNames, styles, name: 'Progress' }\n );\n\n const segments = Array.isArray(sections)\n ? getCumulativeSections(sections).map((section, index) => (\n <Box\n key={index}\n className={classes.bar}\n sx={{\n width: `${section.value}%`,\n left: `${section.accumulated}%`,\n backgroundColor: theme.fn.themeColor(section.color, theme.fn.primaryShade(), false),\n }}\n >\n {section.label && <Text className={classes.label}>{section.label}</Text>}\n </Box>\n ))\n : null;\n\n return (\n <Box className={cx(classes.root, className)} ref={ref} {...others}>\n {segments || (\n <div\n role=\"progressbar\"\n aria-valuemax={100}\n aria-valuemin={0}\n aria-valuenow={value}\n aria-label={ariaLabel}\n className={classes.bar}\n style={{ width: `${value}%` }}\n >\n {label ? <Text className={classes.label}>{label}</Text> : ''}\n </div>\n )}\n </Box>\n );\n});\n\nProgress.displayName = '@mantine/core/Progress';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useStyles","React","Box","Text"],"mappings":"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"}
|
|
@@ -32,7 +32,7 @@ var useStyles = styles.createStyles((theme, { color, radius, size, striped, anim
|
|
|
32
32
|
display: "flex",
|
|
33
33
|
justifyContent: "center",
|
|
34
34
|
alignItems: "center",
|
|
35
|
-
backgroundColor: theme.fn.themeColor(color || theme.primaryColor,
|
|
35
|
+
backgroundColor: theme.fn.themeColor(color || theme.primaryColor, theme.fn.primaryShade(), false),
|
|
36
36
|
transition: "width 100ms linear",
|
|
37
37
|
animation: animate ? `${stripesAnimation} 1000ms linear infinite` : "none",
|
|
38
38
|
backgroundSize: "20px 20px",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Progress.styles.js","sources":["../../../src/components/Progress/Progress.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineColor, keyframes } from '@mantine/styles';\n\nexport const sizes = {\n xs: 3,\n sm: 5,\n md: 8,\n lg: 12,\n xl: 16,\n};\n\nexport interface ProgressStylesParams {\n color: MantineColor;\n radius: MantineNumberSize;\n size: MantineNumberSize;\n striped: boolean;\n animate: boolean;\n}\n\nconst stripesAnimation = keyframes({\n from: { backgroundPosition: '0 0' },\n to: { backgroundPosition: '40px 0' },\n});\n\nexport default createStyles(\n (theme, { color, radius, size, striped, animate }: ProgressStylesParams) => ({\n root: {\n position: 'relative',\n height: theme.fn.size({ size, sizes }),\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n borderRadius: theme.fn.size({ size: radius, sizes: theme.radius }),\n overflow: 'hidden',\n },\n\n bar: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n left: 0,\n height: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: theme.fn.themeColor(color || theme.primaryColor
|
|
1
|
+
{"version":3,"file":"Progress.styles.js","sources":["../../../src/components/Progress/Progress.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineColor, keyframes } from '@mantine/styles';\n\nexport const sizes = {\n xs: 3,\n sm: 5,\n md: 8,\n lg: 12,\n xl: 16,\n};\n\nexport interface ProgressStylesParams {\n color: MantineColor;\n radius: MantineNumberSize;\n size: MantineNumberSize;\n striped: boolean;\n animate: boolean;\n}\n\nconst stripesAnimation = keyframes({\n from: { backgroundPosition: '0 0' },\n to: { backgroundPosition: '40px 0' },\n});\n\nexport default createStyles(\n (theme, { color, radius, size, striped, animate }: ProgressStylesParams) => ({\n root: {\n position: 'relative',\n height: theme.fn.size({ size, sizes }),\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n borderRadius: theme.fn.size({ size: radius, sizes: theme.radius }),\n overflow: 'hidden',\n },\n\n bar: {\n position: 'absolute',\n top: 0,\n bottom: 0,\n left: 0,\n height: '100%',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: theme.fn.themeColor(\n color || theme.primaryColor,\n theme.fn.primaryShade(),\n false\n ),\n transition: 'width 100ms linear',\n animation: animate ? `${stripesAnimation} 1000ms linear infinite` : 'none',\n backgroundSize: '20px 20px',\n backgroundImage: striped\n ? 'linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)'\n : 'none',\n\n '&:last-of-type': {\n borderTopRightRadius: theme.fn.size({ size: radius, sizes: theme.radius }),\n borderBottomRightRadius: theme.fn.size({ size: radius, sizes: theme.radius }),\n },\n\n '&:first-of-type': {\n borderTopLeftRadius: theme.fn.size({ size: radius, sizes: theme.radius }),\n borderBottomLeftRadius: theme.fn.size({ size: radius, sizes: theme.radius }),\n },\n\n '@media (prefers-reduced-motion)': {\n transitionDuration: '0ms',\n },\n },\n\n label: {\n color: theme.white,\n fontSize: theme.fn.size({ size, sizes }) * 0.65,\n fontWeight: 700,\n userSelect: 'none',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n },\n })\n);\n"],"names":["keyframes","createStyles"],"mappings":"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"}
|
|
@@ -95,7 +95,8 @@ const Radio = React.forwardRef((props, ref) => {
|
|
|
95
95
|
id: uuid,
|
|
96
96
|
disabled
|
|
97
97
|
}, rest)), /* @__PURE__ */ React__default.createElement(Icon, {
|
|
98
|
-
className: classes.icon
|
|
98
|
+
className: classes.icon,
|
|
99
|
+
"aria-hidden": true
|
|
99
100
|
})), label && /* @__PURE__ */ React__default.createElement("label", {
|
|
100
101
|
className: cx(classes.label, { [classes.labelDisabled]: disabled }),
|
|
101
102
|
htmlFor: uuid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Radio.js","sources":["../../../../src/components/RadioGroup/Radio/Radio.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useUuid } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineSize,\n MantineColor,\n ClassNames,\n extractSystemStyles,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { RadioIcon } from './RadioIcon';\nimport useStyles from './Radio.styles';\n\nexport type RadioStylesNames = Exclude<ClassNames<typeof useStyles>, 'labelDisabled'>;\n\nexport interface RadioProps\n extends DefaultProps<RadioStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'input'>, 'size'> {\n /** Radio label */\n label?: React.ReactNode;\n\n /** Radio value */\n value: string;\n\n /** Active radio color from theme.colors */\n color?: MantineColor;\n\n /** Predefined label fontSize, radio width, height and border-radius */\n size?: MantineSize;\n\n /** Static selector base */\n __staticSelector?: string;\n\n /** Replace default icon */\n icon?: React.FC<React.ComponentPropsWithoutRef<'svg'>>;\n\n /** Animation duration in ms */\n transitionDuration?: number;\n}\n\nconst defaultProps: Partial<RadioProps> = {\n __staticSelector: 'Radio',\n icon: RadioIcon,\n transitionDuration: 100,\n};\n\nexport const Radio = forwardRef<HTMLInputElement, RadioProps>((props: RadioProps, ref) => {\n const {\n className,\n style,\n id,\n label,\n size,\n title,\n disabled,\n color,\n classNames,\n styles,\n __staticSelector,\n sx,\n icon: Icon,\n transitionDuration,\n ...others\n } = useMantineDefaultProps('Radio', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { color, size, transitionDuration },\n { classNames, styles, name: __staticSelector }\n );\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useUuid(id);\n\n return (\n <Box\n className={cx(classes.radioWrapper, className)}\n style={style}\n title={title}\n sx={sx}\n {...systemStyles}\n >\n <div className={classes.inner}>\n <input\n ref={ref}\n className={classes.radio}\n type=\"radio\"\n id={uuid}\n disabled={disabled}\n {...rest}\n />\n <Icon className={classes.icon} />\n </div>\n\n {label && (\n <label className={cx(classes.label, { [classes.labelDisabled]: disabled })} htmlFor={uuid}>\n {label}\n </label>\n )}\n </Box>\n );\n});\n\nRadio.displayName = '@mantine/core/Radio';\n"],"names":["RadioIcon","forwardRef","useMantineDefaultProps","styles","useStyles","extractSystemStyles","useUuid","React","Box"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Radio.js","sources":["../../../../src/components/RadioGroup/Radio/Radio.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useUuid } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineSize,\n MantineColor,\n ClassNames,\n extractSystemStyles,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../../Box';\nimport { RadioIcon } from './RadioIcon';\nimport useStyles from './Radio.styles';\n\nexport type RadioStylesNames = Exclude<ClassNames<typeof useStyles>, 'labelDisabled'>;\n\nexport interface RadioProps\n extends DefaultProps<RadioStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'input'>, 'size'> {\n /** Radio label */\n label?: React.ReactNode;\n\n /** Radio value */\n value: string;\n\n /** Active radio color from theme.colors */\n color?: MantineColor;\n\n /** Predefined label fontSize, radio width, height and border-radius */\n size?: MantineSize;\n\n /** Static selector base */\n __staticSelector?: string;\n\n /** Replace default icon */\n icon?: React.FC<React.ComponentPropsWithoutRef<'svg'>>;\n\n /** Animation duration in ms */\n transitionDuration?: number;\n}\n\nconst defaultProps: Partial<RadioProps> = {\n __staticSelector: 'Radio',\n icon: RadioIcon,\n transitionDuration: 100,\n};\n\nexport const Radio = forwardRef<HTMLInputElement, RadioProps>((props: RadioProps, ref) => {\n const {\n className,\n style,\n id,\n label,\n size,\n title,\n disabled,\n color,\n classNames,\n styles,\n __staticSelector,\n sx,\n icon: Icon,\n transitionDuration,\n ...others\n } = useMantineDefaultProps('Radio', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { color, size, transitionDuration },\n { classNames, styles, name: __staticSelector }\n );\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useUuid(id);\n\n return (\n <Box\n className={cx(classes.radioWrapper, className)}\n style={style}\n title={title}\n sx={sx}\n {...systemStyles}\n >\n <div className={classes.inner}>\n <input\n ref={ref}\n className={classes.radio}\n type=\"radio\"\n id={uuid}\n disabled={disabled}\n {...rest}\n />\n <Icon className={classes.icon} aria-hidden />\n </div>\n\n {label && (\n <label className={cx(classes.label, { [classes.labelDisabled]: disabled })} htmlFor={uuid}>\n {label}\n </label>\n )}\n </Box>\n );\n});\n\nRadio.displayName = '@mantine/core/Radio';\n"],"names":["RadioIcon","forwardRef","useMantineDefaultProps","styles","useStyles","extractSystemStyles","useUuid","React","Box"],"mappings":"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"}
|
|
@@ -32,6 +32,7 @@ const sizes = {
|
|
|
32
32
|
};
|
|
33
33
|
var useStyles = styles.createStyles((theme, { size, color, transitionDuration }, getRef) => {
|
|
34
34
|
const labelDisabled = { ref: getRef("labelDisabled") };
|
|
35
|
+
const colors = theme.fn.variant({ variant: "filled", color });
|
|
35
36
|
return {
|
|
36
37
|
labelDisabled,
|
|
37
38
|
radioWrapper: {
|
|
@@ -71,8 +72,8 @@ var useStyles = styles.createStyles((theme, { size, color, transitionDuration },
|
|
|
71
72
|
transitionTimingFunction: theme.transitionTimingFunction,
|
|
72
73
|
transitionDuration: `${transitionDuration}ms`,
|
|
73
74
|
"&:checked": {
|
|
74
|
-
background:
|
|
75
|
-
borderColor:
|
|
75
|
+
background: colors.background,
|
|
76
|
+
borderColor: colors.background,
|
|
76
77
|
[`& + .${getRef("icon")}`]: {
|
|
77
78
|
opacity: 1,
|
|
78
79
|
transform: "scale(1)"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Radio.styles.js","sources":["../../../../src/components/RadioGroup/Radio/Radio.styles.ts"],"sourcesContent":["import { createStyles, MantineSize, MantineColor } from '@mantine/styles';\n\nexport interface RadioStylesParams {\n size: MantineSize;\n color: MantineColor;\n transitionDuration: number;\n}\n\nexport const sizes = {\n xs: 12,\n sm: 16,\n md: 20,\n lg: 24,\n xl: 36,\n};\n\nexport default createStyles(\n (theme, { size, color, transitionDuration }: RadioStylesParams, getRef) => {\n const labelDisabled = { ref: getRef('labelDisabled') } as const;\n\n return {\n labelDisabled,\n\n radioWrapper: {\n display: 'flex',\n alignItems: 'center',\n WebkitTapHighlightColor: 'transparent',\n },\n\n inner: {\n position: 'relative',\n },\n\n icon: {\n ref: getRef('icon'),\n color: theme.white,\n opacity: 0,\n transform: 'scale(0.75) translateY(2px)',\n transition: `opacity ${transitionDuration}ms ${theme.transitionTimingFunction}`,\n pointerEvents: 'none',\n width: theme.fn.size({ sizes, size }) / 2,\n height: theme.fn.size({ sizes, size }) / 2,\n position: 'absolute',\n top: `calc(50% - ${theme.fn.size({ sizes, size }) / 4}px)`,\n left: `calc(50% - ${theme.fn.size({ sizes, size }) / 4}px)`,\n },\n\n radio: {\n ...theme.fn.focusStyles(),\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.white,\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n position: 'relative',\n appearance: 'none',\n width: theme.fn.size({ sizes, size }),\n height: theme.fn.size({ sizes, size }),\n borderRadius: theme.fn.size({ sizes, size }),\n margin: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n transitionProperty: 'background-color, border-color',\n transitionTimingFunction: theme.transitionTimingFunction,\n transitionDuration: `${transitionDuration}ms`,\n\n '&:checked': {\n background:
|
|
1
|
+
{"version":3,"file":"Radio.styles.js","sources":["../../../../src/components/RadioGroup/Radio/Radio.styles.ts"],"sourcesContent":["import { createStyles, MantineSize, MantineColor } from '@mantine/styles';\n\nexport interface RadioStylesParams {\n size: MantineSize;\n color: MantineColor;\n transitionDuration: number;\n}\n\nexport const sizes = {\n xs: 12,\n sm: 16,\n md: 20,\n lg: 24,\n xl: 36,\n};\n\nexport default createStyles(\n (theme, { size, color, transitionDuration }: RadioStylesParams, getRef) => {\n const labelDisabled = { ref: getRef('labelDisabled') } as const;\n const colors = theme.fn.variant({ variant: 'filled', color });\n\n return {\n labelDisabled,\n\n radioWrapper: {\n display: 'flex',\n alignItems: 'center',\n WebkitTapHighlightColor: 'transparent',\n },\n\n inner: {\n position: 'relative',\n },\n\n icon: {\n ref: getRef('icon'),\n color: theme.white,\n opacity: 0,\n transform: 'scale(0.75) translateY(2px)',\n transition: `opacity ${transitionDuration}ms ${theme.transitionTimingFunction}`,\n pointerEvents: 'none',\n width: theme.fn.size({ sizes, size }) / 2,\n height: theme.fn.size({ sizes, size }) / 2,\n position: 'absolute',\n top: `calc(50% - ${theme.fn.size({ sizes, size }) / 4}px)`,\n left: `calc(50% - ${theme.fn.size({ sizes, size }) / 4}px)`,\n },\n\n radio: {\n ...theme.fn.focusStyles(),\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.white,\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n position: 'relative',\n appearance: 'none',\n width: theme.fn.size({ sizes, size }),\n height: theme.fn.size({ sizes, size }),\n borderRadius: theme.fn.size({ sizes, size }),\n margin: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n transitionProperty: 'background-color, border-color',\n transitionTimingFunction: theme.transitionTimingFunction,\n transitionDuration: `${transitionDuration}ms`,\n\n '&:checked': {\n background: colors.background,\n borderColor: colors.background,\n\n [`& + .${getRef('icon')}`]: {\n opacity: 1,\n transform: 'scale(1)',\n },\n },\n\n '&:disabled': {\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[5] : theme.colors.gray[4],\n backgroundColor:\n theme.colorScheme === 'dark' ? theme.colors.dark[5] : theme.colors.gray[1],\n\n [`& + .${getRef('icon')}`]: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.colors.gray[4],\n },\n },\n },\n\n label: {\n ...theme.fn.fontStyles(),\n display: 'flex',\n alignItems: 'flex-start',\n fontSize: theme.fontSizes[size] || theme.fontSizes.md,\n lineHeight: `${theme.fn.size({ sizes, size })}px`,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n marginLeft: theme.spacing.sm,\n\n [`&.${labelDisabled.ref}`]: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[5],\n },\n },\n };\n }\n);\n"],"names":["createStyles"],"mappings":"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"}
|
|
@@ -48,6 +48,7 @@ const defaultProps = {
|
|
|
48
48
|
};
|
|
49
49
|
const RadioGroup = React.forwardRef((props, ref) => {
|
|
50
50
|
const _a = styles.useMantineDefaultProps("RadioGroup", defaultProps, props), {
|
|
51
|
+
id,
|
|
51
52
|
name,
|
|
52
53
|
children,
|
|
53
54
|
value,
|
|
@@ -64,6 +65,7 @@ const RadioGroup = React.forwardRef((props, ref) => {
|
|
|
64
65
|
labelProps,
|
|
65
66
|
descriptionProps
|
|
66
67
|
} = _a, others = __objRest(_a, [
|
|
68
|
+
"id",
|
|
67
69
|
"name",
|
|
68
70
|
"children",
|
|
69
71
|
"value",
|
|
@@ -80,6 +82,7 @@ const RadioGroup = React.forwardRef((props, ref) => {
|
|
|
80
82
|
"labelProps",
|
|
81
83
|
"descriptionProps"
|
|
82
84
|
]);
|
|
85
|
+
const rootId = hooks.useUuid(id);
|
|
83
86
|
const uuid = hooks.useUuid(name);
|
|
84
87
|
const [_value, setValue] = hooks.useUncontrolled({
|
|
85
88
|
value,
|
|
@@ -100,6 +103,7 @@ const RadioGroup = React.forwardRef((props, ref) => {
|
|
|
100
103
|
onChange: (event) => setValue(event.currentTarget.value)
|
|
101
104
|
}));
|
|
102
105
|
return /* @__PURE__ */ React__default.createElement(InputWrapper.InputWrapper, __spreadValues(__spreadValues({
|
|
106
|
+
id: rootId,
|
|
103
107
|
labelElement: "div",
|
|
104
108
|
size,
|
|
105
109
|
__staticSelector: "RadioGroup",
|
|
@@ -111,6 +115,7 @@ const RadioGroup = React.forwardRef((props, ref) => {
|
|
|
111
115
|
labelProps
|
|
112
116
|
}, wrapperProps), others), /* @__PURE__ */ React__default.createElement(Group.Group, {
|
|
113
117
|
role: "radiogroup",
|
|
118
|
+
"aria-labelledby": `${rootId}-label`,
|
|
114
119
|
spacing,
|
|
115
120
|
direction: orientation === "horizontal" ? "row" : "column",
|
|
116
121
|
style: { paddingTop: 5 }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroup.js","sources":["../../../src/components/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import React, { cloneElement, forwardRef } from 'react';\nimport { useUncontrolled, useUuid } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n MantineColor,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { filterChildrenByType } from '../../utils';\nimport {\n InputWrapper,\n InputWrapperBaseProps,\n InputWrapperStylesNames,\n} from '../InputWrapper/InputWrapper';\nimport { Radio, RadioStylesNames } from './Radio/Radio';\nimport { Group } from '../Group/Group';\n\nexport type RadioGroupStylesNames = InputWrapperStylesNames | RadioStylesNames;\n\nexport interface RadioGroupProps\n extends DefaultProps<RadioGroupStylesNames>,\n InputWrapperBaseProps,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {\n /** <Radio /> components only */\n children: React.ReactNode;\n\n /** Input name attribute, used to bind radios in one group, by default generated randomly with use-id hook */\n name?: string;\n\n /** Value of currently selected radio */\n value?: string;\n\n /** Called when value changes */\n onChange?(value: string): void;\n\n /** Initial value for uncontrolled component */\n defaultValue?: string;\n\n /** Horizontal or vertical orientation */\n orientation?: 'horizontal' | 'vertical';\n\n /** Spacing between radios in horizontal orientation */\n spacing?: MantineNumberSize;\n\n /** Active radio color from theme.colors */\n color?: MantineColor;\n\n /** Predefined label fontSize, radio width, height and border-radius */\n size?: MantineSize;\n\n /** Props spread to InputWrapper */\n wrapperProps?: { [key: string]: any };\n}\n\nconst defaultProps: Partial<RadioGroupProps> = {\n orientation: 'horizontal',\n spacing: 'sm',\n};\n\nexport const RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n (props: RadioGroupProps, ref) => {\n const {\n name,\n children,\n value,\n defaultValue,\n onChange,\n orientation,\n spacing,\n color,\n size,\n classNames,\n styles,\n wrapperProps,\n errorProps,\n labelProps,\n descriptionProps,\n ...others\n } = useMantineDefaultProps('RadioGroup', defaultProps, props);\n\n const uuid = useUuid(name);\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n rule: (val) => typeof val === 'string',\n });\n\n const radios = filterChildrenByType(children, Radio).map((radio, index) =>\n cloneElement(radio, {\n key: index,\n checked: _value === radio.props.value,\n name: uuid,\n color,\n size,\n classNames,\n styles,\n __staticSelector: 'RadioGroup',\n onChange: (event: React.ChangeEvent<HTMLInputElement>) =>\n setValue(event.currentTarget.value),\n })\n );\n\n return (\n <InputWrapper\n labelElement=\"div\"\n size={size}\n __staticSelector=\"RadioGroup\"\n classNames={classNames}\n styles={styles}\n ref={ref}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n {...wrapperProps}\n {...others}\n >\n <Group\n role=\"radiogroup\"\n spacing={spacing}\n direction={orientation === 'horizontal' ? 'row' : 'column'}\n style={{ paddingTop: 5 }}\n >\n {radios}\n </Group>\n </InputWrapper>\n );\n }\n);\n\nRadioGroup.displayName = '@mantine/core/RadioGroup';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useUuid","useUncontrolled","filterChildrenByType","Radio","cloneElement","React","InputWrapper","Group"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RadioGroup.js","sources":["../../../src/components/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import React, { cloneElement, forwardRef } from 'react';\nimport { useUncontrolled, useUuid } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n MantineColor,\n useMantineDefaultProps,\n} from '@mantine/styles';\nimport { filterChildrenByType } from '../../utils';\nimport {\n InputWrapper,\n InputWrapperBaseProps,\n InputWrapperStylesNames,\n} from '../InputWrapper/InputWrapper';\nimport { Radio, RadioStylesNames } from './Radio/Radio';\nimport { Group } from '../Group/Group';\n\nexport type RadioGroupStylesNames = InputWrapperStylesNames | RadioStylesNames;\n\nexport interface RadioGroupProps\n extends DefaultProps<RadioGroupStylesNames>,\n InputWrapperBaseProps,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {\n /** <Radio /> components only */\n children: React.ReactNode;\n\n /** Input name attribute, used to bind radios in one group, by default generated randomly with use-id hook */\n name?: string;\n\n /** Value of currently selected radio */\n value?: string;\n\n /** Called when value changes */\n onChange?(value: string): void;\n\n /** Initial value for uncontrolled component */\n defaultValue?: string;\n\n /** Horizontal or vertical orientation */\n orientation?: 'horizontal' | 'vertical';\n\n /** Spacing between radios in horizontal orientation */\n spacing?: MantineNumberSize;\n\n /** Active radio color from theme.colors */\n color?: MantineColor;\n\n /** Predefined label fontSize, radio width, height and border-radius */\n size?: MantineSize;\n\n /** Props spread to InputWrapper */\n wrapperProps?: { [key: string]: any };\n}\n\nconst defaultProps: Partial<RadioGroupProps> = {\n orientation: 'horizontal',\n spacing: 'sm',\n};\n\nexport const RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n (props: RadioGroupProps, ref) => {\n const {\n id,\n name,\n children,\n value,\n defaultValue,\n onChange,\n orientation,\n spacing,\n color,\n size,\n classNames,\n styles,\n wrapperProps,\n errorProps,\n labelProps,\n descriptionProps,\n ...others\n } = useMantineDefaultProps('RadioGroup', defaultProps, props);\n\n const rootId = useUuid(id);\n const uuid = useUuid(name);\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n rule: (val) => typeof val === 'string',\n });\n\n const radios = filterChildrenByType(children, Radio).map((radio, index) =>\n cloneElement(radio, {\n key: index,\n checked: _value === radio.props.value,\n name: uuid,\n color,\n size,\n classNames,\n styles,\n __staticSelector: 'RadioGroup',\n onChange: (event: React.ChangeEvent<HTMLInputElement>) =>\n setValue(event.currentTarget.value),\n })\n );\n\n return (\n <InputWrapper\n id={rootId}\n labelElement=\"div\"\n size={size}\n __staticSelector=\"RadioGroup\"\n classNames={classNames}\n styles={styles}\n ref={ref}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n {...wrapperProps}\n {...others}\n >\n <Group\n role=\"radiogroup\"\n aria-labelledby={`${rootId}-label`}\n spacing={spacing}\n direction={orientation === 'horizontal' ? 'row' : 'column'}\n style={{ paddingTop: 5 }}\n >\n {radios}\n </Group>\n </InputWrapper>\n );\n }\n);\n\nRadioGroup.displayName = '@mantine/core/RadioGroup';\n"],"names":["forwardRef","useMantineDefaultProps","styles","useUuid","useUncontrolled","filterChildrenByType","Radio","cloneElement","React","InputWrapper","Group"],"mappings":"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"}
|
|
@@ -37,7 +37,7 @@ function Curve({
|
|
|
37
37
|
lineRoundCaps
|
|
38
38
|
}) {
|
|
39
39
|
const theme = styles.useMantineTheme();
|
|
40
|
-
const stroke = theme.fn.themeColor(color || (theme.colorScheme === "dark" ? "dark" : "gray"), color ?
|
|
40
|
+
const stroke = theme.fn.themeColor(color || (theme.colorScheme === "dark" ? "dark" : "gray"), color ? theme.fn.primaryShade() : theme.colorScheme === "dark" ? 4 : 1, false);
|
|
41
41
|
return /* @__PURE__ */ React__default.createElement("circle", __spreadValues({
|
|
42
42
|
fill: "none",
|
|
43
43
|
strokeLinecap: lineRoundCaps ? "round" : "butt",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Curve.js","sources":["../../../../src/components/RingProgress/Curve/Curve.tsx"],"sourcesContent":["import React from 'react';\nimport { useMantineTheme, MantineColor } from '@mantine/styles';\nimport { getCurveProps } from './get-curve-props';\n\ninterface CurveProps {\n value?: number;\n size: number;\n offset: number;\n sum: number;\n thickness: number;\n lineRoundCaps: boolean;\n root?: boolean;\n color?: MantineColor;\n}\n\nexport function Curve({\n size,\n value,\n offset,\n sum,\n thickness,\n root,\n color,\n lineRoundCaps,\n}: CurveProps) {\n const theme = useMantineTheme();\n const stroke = theme.fn.themeColor(\n color || (theme.colorScheme === 'dark' ? 'dark' : 'gray'),\n color ?
|
|
1
|
+
{"version":3,"file":"Curve.js","sources":["../../../../src/components/RingProgress/Curve/Curve.tsx"],"sourcesContent":["import React from 'react';\nimport { useMantineTheme, MantineColor } from '@mantine/styles';\nimport { getCurveProps } from './get-curve-props';\n\ninterface CurveProps {\n value?: number;\n size: number;\n offset: number;\n sum: number;\n thickness: number;\n lineRoundCaps: boolean;\n root?: boolean;\n color?: MantineColor;\n}\n\nexport function Curve({\n size,\n value,\n offset,\n sum,\n thickness,\n root,\n color,\n lineRoundCaps,\n}: CurveProps) {\n const theme = useMantineTheme();\n const stroke = theme.fn.themeColor(\n color || (theme.colorScheme === 'dark' ? 'dark' : 'gray'),\n color ? theme.fn.primaryShade() : theme.colorScheme === 'dark' ? 4 : 1,\n false\n );\n\n return (\n <circle\n fill=\"none\"\n strokeLinecap={lineRoundCaps ? 'round' : 'butt'}\n stroke={stroke}\n {...getCurveProps({ sum, size, thickness, value, offset, root })}\n />\n );\n}\n\nCurve.displayName = '@mantine/core/Curve';\n"],"names":["useMantineTheme","React","getCurveProps"],"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;AAIK,SAAS,KAAK,CAAC;AACtB,EAAE,IAAI;AACN,EAAE,KAAK;AACP,EAAE,MAAM;AACR,EAAE,GAAG;AACL,EAAE,SAAS;AACX,EAAE,IAAI;AACN,EAAE,KAAK;AACP,EAAE,aAAa;AACf,CAAC,EAAE;AACH,EAAE,MAAM,KAAK,GAAGA,sBAAe,EAAE,CAAC;AAClC,EAAE,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,KAAK,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;AAC/K,EAAE,uBAAuBC,cAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,CAAC;AACtE,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,aAAa,EAAE,aAAa,GAAG,OAAO,GAAG,MAAM;AACnD,IAAI,MAAM;AACV,GAAG,EAAEC,2BAAa,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACpE,CAAC;AACD,KAAK,CAAC,WAAW,GAAG,qBAAqB;;;;"}
|