@mantine/core 5.3.3 → 5.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/AppShell/Aside/Aside.js.map +1 -1
- package/cjs/AppShell/HorizontalSection/HorizontalSection.js.map +1 -1
- package/cjs/AppShell/Navbar/Navbar.js.map +1 -1
- package/cjs/Checkbox/Checkbox.js +5 -1
- package/cjs/Checkbox/Checkbox.js.map +1 -1
- package/cjs/Checkbox/Checkbox.styles.js +4 -1
- package/cjs/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/Chip/Chip.js.map +1 -1
- package/cjs/ColorInput/ColorInput.js +10 -1
- package/cjs/ColorInput/ColorInput.js.map +1 -1
- package/cjs/ColorPicker/AlphaSlider/AlphaSlider.js +2 -1
- package/cjs/ColorPicker/AlphaSlider/AlphaSlider.js.map +1 -1
- package/cjs/ColorPicker/ColorPicker.js +14 -1
- package/cjs/ColorPicker/ColorPicker.js.map +1 -1
- package/cjs/ColorPicker/ColorSlider/ColorSlider.js +13 -1
- package/cjs/ColorPicker/ColorSlider/ColorSlider.js.map +1 -1
- package/cjs/ColorPicker/HueSlider/HueSlider.js +2 -1
- package/cjs/ColorPicker/HueSlider/HueSlider.js.map +1 -1
- package/cjs/ColorPicker/Saturation/Saturation.js +9 -0
- package/cjs/ColorPicker/Saturation/Saturation.js.map +1 -1
- package/cjs/ColorPicker/Swatches/Swatches.js +8 -3
- package/cjs/ColorPicker/Swatches/Swatches.js.map +1 -1
- package/cjs/Floating/FloatingArrow/FloatingArrow.js +7 -16
- package/cjs/Floating/FloatingArrow/FloatingArrow.js.map +1 -1
- package/cjs/Floating/FloatingArrow/get-arrow-position-styles.js +10 -8
- package/cjs/Floating/FloatingArrow/get-arrow-position-styles.js.map +1 -1
- package/cjs/Grid/Col/Col.styles.js +1 -1
- package/cjs/Grid/Col/Col.styles.js.map +1 -1
- package/cjs/Grid/Grid.js.map +1 -1
- package/cjs/Group/Group.js +1 -10
- package/cjs/Group/Group.js.map +1 -1
- package/cjs/Group/Group.styles.js +6 -6
- package/cjs/Group/Group.styles.js.map +1 -1
- package/cjs/List/List.js.map +1 -1
- package/cjs/List/ListItem/ListItem.js +1 -1
- package/cjs/List/ListItem/ListItem.js.map +1 -1
- package/cjs/MultiSelect/MultiSelect.js +15 -12
- package/cjs/MultiSelect/MultiSelect.js.map +1 -1
- package/cjs/Pagination/Pagination.js +14 -11
- package/cjs/Pagination/Pagination.js.map +1 -1
- package/cjs/PasswordInput/PasswordInput.js +22 -10
- package/cjs/PasswordInput/PasswordInput.js.map +1 -1
- package/cjs/Popover/Popover.context.js.map +1 -1
- package/cjs/Popover/Popover.js +6 -0
- package/cjs/Popover/Popover.js.map +1 -1
- package/cjs/Popover/PopoverDropdown/PopoverDropdown.js +3 -0
- package/cjs/Popover/PopoverDropdown/PopoverDropdown.js.map +1 -1
- package/cjs/Popover/use-popover.js +1 -0
- package/cjs/Popover/use-popover.js.map +1 -1
- package/cjs/Radio/Radio.js.map +1 -1
- package/cjs/ScrollArea/ScrollArea.js.map +1 -1
- package/cjs/SegmentedControl/SegmentedControl.styles.js +3 -3
- package/cjs/SegmentedControl/SegmentedControl.styles.js.map +1 -1
- package/cjs/Select/Select.js +8 -1
- package/cjs/Select/Select.js.map +1 -1
- package/cjs/SimpleGrid/SimpleGrid.js +2 -2
- package/cjs/SimpleGrid/SimpleGrid.js.map +1 -1
- package/cjs/SimpleGrid/SimpleGrid.styles.js +14 -4
- package/cjs/SimpleGrid/SimpleGrid.styles.js.map +1 -1
- package/cjs/Slider/RangeSlider/RangeSlider.js +10 -7
- package/cjs/Slider/RangeSlider/RangeSlider.js.map +1 -1
- package/cjs/Slider/Slider/Slider.js +11 -7
- package/cjs/Slider/Slider/Slider.js.map +1 -1
- package/cjs/Stepper/Stepper.js.map +1 -1
- package/cjs/Switch/Switch.js +13 -3
- package/cjs/Switch/Switch.js.map +1 -1
- package/cjs/Switch/Switch.styles.js +4 -1
- package/cjs/Switch/Switch.styles.js.map +1 -1
- package/cjs/Switch/SwitchGroup/SwitchGroup.js +98 -0
- package/cjs/Switch/SwitchGroup/SwitchGroup.js.map +1 -0
- package/cjs/Switch/SwitchGroup.context.js +13 -0
- package/cjs/Switch/SwitchGroup.context.js.map +1 -0
- package/cjs/Tabs/Tabs.js.map +1 -1
- package/cjs/ThemeIcon/ThemeIcon.styles.js.map +1 -1
- package/cjs/Timeline/Timeline.js.map +1 -1
- package/cjs/Tooltip/Tooltip.js +5 -0
- package/cjs/Tooltip/Tooltip.js.map +1 -1
- package/cjs/Tooltip/use-tooltip.js +21 -2
- package/cjs/Tooltip/use-tooltip.js.map +1 -1
- package/esm/AppShell/Aside/Aside.js.map +1 -1
- package/esm/AppShell/HorizontalSection/HorizontalSection.js.map +1 -1
- package/esm/AppShell/Navbar/Navbar.js.map +1 -1
- package/esm/Checkbox/Checkbox.js +5 -1
- package/esm/Checkbox/Checkbox.js.map +1 -1
- package/esm/Checkbox/Checkbox.styles.js +4 -1
- package/esm/Checkbox/Checkbox.styles.js.map +1 -1
- package/esm/Chip/Chip.js.map +1 -1
- package/esm/ColorInput/ColorInput.js +10 -1
- package/esm/ColorInput/ColorInput.js.map +1 -1
- package/esm/ColorPicker/AlphaSlider/AlphaSlider.js +2 -1
- package/esm/ColorPicker/AlphaSlider/AlphaSlider.js.map +1 -1
- package/esm/ColorPicker/ColorPicker.js +14 -1
- package/esm/ColorPicker/ColorPicker.js.map +1 -1
- package/esm/ColorPicker/ColorSlider/ColorSlider.js +14 -2
- package/esm/ColorPicker/ColorSlider/ColorSlider.js.map +1 -1
- package/esm/ColorPicker/HueSlider/HueSlider.js +2 -1
- package/esm/ColorPicker/HueSlider/HueSlider.js.map +1 -1
- package/esm/ColorPicker/Saturation/Saturation.js +10 -1
- package/esm/ColorPicker/Saturation/Saturation.js.map +1 -1
- package/esm/ColorPicker/Swatches/Swatches.js +8 -3
- package/esm/ColorPicker/Swatches/Swatches.js.map +1 -1
- package/esm/Floating/FloatingArrow/FloatingArrow.js +8 -17
- package/esm/Floating/FloatingArrow/FloatingArrow.js.map +1 -1
- package/esm/Floating/FloatingArrow/get-arrow-position-styles.js +10 -8
- package/esm/Floating/FloatingArrow/get-arrow-position-styles.js.map +1 -1
- package/esm/Grid/Col/Col.styles.js +1 -1
- package/esm/Grid/Col/Col.styles.js.map +1 -1
- package/esm/Grid/Grid.js.map +1 -1
- package/esm/Group/Group.js +1 -10
- package/esm/Group/Group.js.map +1 -1
- package/esm/Group/Group.styles.js +6 -6
- package/esm/Group/Group.styles.js.map +1 -1
- package/esm/List/List.js.map +1 -1
- package/esm/List/ListItem/ListItem.js +1 -1
- package/esm/List/ListItem/ListItem.js.map +1 -1
- package/esm/MultiSelect/MultiSelect.js +16 -13
- package/esm/MultiSelect/MultiSelect.js.map +1 -1
- package/esm/Pagination/Pagination.js +14 -11
- package/esm/Pagination/Pagination.js.map +1 -1
- package/esm/PasswordInput/PasswordInput.js +23 -11
- package/esm/PasswordInput/PasswordInput.js.map +1 -1
- package/esm/Popover/Popover.context.js.map +1 -1
- package/esm/Popover/Popover.js +7 -1
- package/esm/Popover/Popover.js.map +1 -1
- package/esm/Popover/PopoverDropdown/PopoverDropdown.js +3 -0
- package/esm/Popover/PopoverDropdown/PopoverDropdown.js.map +1 -1
- package/esm/Popover/use-popover.js +2 -1
- package/esm/Popover/use-popover.js.map +1 -1
- package/esm/Radio/Radio.js.map +1 -1
- package/esm/ScrollArea/ScrollArea.js.map +1 -1
- package/esm/SegmentedControl/SegmentedControl.styles.js +3 -3
- package/esm/SegmentedControl/SegmentedControl.styles.js.map +1 -1
- package/esm/Select/Select.js +8 -1
- package/esm/Select/Select.js.map +1 -1
- package/esm/SimpleGrid/SimpleGrid.js +2 -2
- package/esm/SimpleGrid/SimpleGrid.js.map +1 -1
- package/esm/SimpleGrid/SimpleGrid.styles.js +14 -4
- package/esm/SimpleGrid/SimpleGrid.styles.js.map +1 -1
- package/esm/Slider/RangeSlider/RangeSlider.js +10 -7
- package/esm/Slider/RangeSlider/RangeSlider.js.map +1 -1
- package/esm/Slider/Slider/Slider.js +11 -7
- package/esm/Slider/Slider/Slider.js.map +1 -1
- package/esm/Stepper/Stepper.js.map +1 -1
- package/esm/Switch/Switch.js +13 -3
- package/esm/Switch/Switch.js.map +1 -1
- package/esm/Switch/Switch.styles.js +4 -1
- package/esm/Switch/Switch.styles.js.map +1 -1
- package/esm/Switch/SwitchGroup/SwitchGroup.js +90 -0
- package/esm/Switch/SwitchGroup/SwitchGroup.js.map +1 -0
- package/esm/Switch/SwitchGroup.context.js +8 -0
- package/esm/Switch/SwitchGroup.context.js.map +1 -0
- package/esm/Tabs/Tabs.js.map +1 -1
- package/esm/ThemeIcon/ThemeIcon.styles.js.map +1 -1
- package/esm/Timeline/Timeline.js.map +1 -1
- package/esm/Tooltip/Tooltip.js +6 -1
- package/esm/Tooltip/Tooltip.js.map +1 -1
- package/esm/Tooltip/use-tooltip.js +22 -3
- package/esm/Tooltip/use-tooltip.js.map +1 -1
- package/lib/AppShell/Aside/Aside.d.ts +2 -2
- package/lib/AppShell/Aside/Aside.d.ts.map +1 -1
- package/lib/AppShell/HorizontalSection/HorizontalSection.d.ts +2 -2
- package/lib/AppShell/HorizontalSection/HorizontalSection.d.ts.map +1 -1
- package/lib/AppShell/Navbar/Navbar.d.ts +2 -2
- package/lib/AppShell/Navbar/Navbar.d.ts.map +1 -1
- package/lib/Checkbox/Checkbox.d.ts +2 -2
- package/lib/Checkbox/Checkbox.d.ts.map +1 -1
- package/lib/Checkbox/Checkbox.styles.d.ts.map +1 -1
- package/lib/Chip/Chip.d.ts +2 -2
- package/lib/Chip/Chip.d.ts.map +1 -1
- package/lib/ColorInput/ColorInput.d.ts.map +1 -1
- package/lib/ColorPicker/AlphaSlider/AlphaSlider.d.ts.map +1 -1
- package/lib/ColorPicker/ColorPicker.d.ts +2 -0
- package/lib/ColorPicker/ColorPicker.d.ts.map +1 -1
- package/lib/ColorPicker/ColorSlider/ColorSlider.d.ts +1 -0
- package/lib/ColorPicker/ColorSlider/ColorSlider.d.ts.map +1 -1
- package/lib/ColorPicker/HueSlider/HueSlider.d.ts.map +1 -1
- package/lib/ColorPicker/Saturation/Saturation.d.ts +2 -1
- package/lib/ColorPicker/Saturation/Saturation.d.ts.map +1 -1
- package/lib/ColorPicker/Swatches/Swatches.d.ts +2 -1
- package/lib/ColorPicker/Swatches/Swatches.d.ts.map +1 -1
- package/lib/Floating/FloatingArrow/FloatingArrow.d.ts +3 -4
- package/lib/Floating/FloatingArrow/FloatingArrow.d.ts.map +1 -1
- package/lib/Floating/FloatingArrow/get-arrow-position-styles.d.ts +3 -1
- package/lib/Floating/FloatingArrow/get-arrow-position-styles.d.ts.map +1 -1
- package/lib/Grid/Grid.d.ts +1 -1
- package/lib/Grid/Grid.d.ts.map +1 -1
- package/lib/Group/Group.d.ts.map +1 -1
- package/lib/Group/Group.styles.d.ts +2 -2
- package/lib/Group/Group.styles.d.ts.map +1 -1
- package/lib/List/List.d.ts +1 -1
- package/lib/List/List.d.ts.map +1 -1
- package/lib/MultiSelect/MultiSelect.d.ts +2 -0
- package/lib/MultiSelect/MultiSelect.d.ts.map +1 -1
- package/lib/Pagination/Pagination.d.ts +2 -0
- package/lib/Pagination/Pagination.d.ts.map +1 -1
- package/lib/PasswordInput/PasswordInput.d.ts +6 -0
- package/lib/PasswordInput/PasswordInput.d.ts.map +1 -1
- package/lib/Popover/Popover.context.d.ts +3 -0
- package/lib/Popover/Popover.context.d.ts.map +1 -1
- package/lib/Popover/Popover.d.ts.map +1 -1
- package/lib/Popover/PopoverDropdown/PopoverDropdown.d.ts.map +1 -1
- package/lib/Popover/use-popover.d.ts +2 -0
- package/lib/Popover/use-popover.d.ts.map +1 -1
- package/lib/Radio/Radio.d.ts +2 -2
- package/lib/Radio/Radio.d.ts.map +1 -1
- package/lib/ScrollArea/ScrollArea.d.ts +1 -1
- package/lib/ScrollArea/ScrollArea.d.ts.map +1 -1
- package/lib/SegmentedControl/SegmentedControl.styles.d.ts.map +1 -1
- package/lib/Select/Select.d.ts +2 -0
- package/lib/Select/Select.d.ts.map +1 -1
- package/lib/SimpleGrid/SimpleGrid.d.ts +3 -1
- package/lib/SimpleGrid/SimpleGrid.d.ts.map +1 -1
- package/lib/SimpleGrid/SimpleGrid.styles.d.ts +2 -0
- package/lib/SimpleGrid/SimpleGrid.styles.d.ts.map +1 -1
- package/lib/Slider/RangeSlider/RangeSlider.d.ts +2 -0
- package/lib/Slider/RangeSlider/RangeSlider.d.ts.map +1 -1
- package/lib/Slider/Slider/Slider.d.ts +2 -0
- package/lib/Slider/Slider/Slider.d.ts.map +1 -1
- package/lib/Stepper/Stepper.d.ts +2 -2
- package/lib/Stepper/Stepper.d.ts.map +1 -1
- package/lib/Switch/Switch.d.ts +7 -1
- package/lib/Switch/Switch.d.ts.map +1 -1
- package/lib/Switch/Switch.styles.d.ts.map +1 -1
- package/lib/Switch/SwitchGroup/SwitchGroup.d.ts +26 -0
- package/lib/Switch/SwitchGroup/SwitchGroup.d.ts.map +1 -0
- package/lib/Switch/SwitchGroup.context.d.ts +11 -0
- package/lib/Switch/SwitchGroup.context.d.ts.map +1 -0
- package/lib/Switch/index.d.ts +1 -0
- package/lib/Switch/index.d.ts.map +1 -1
- package/lib/Tabs/Tabs.d.ts +1 -1
- package/lib/Tabs/Tabs.d.ts.map +1 -1
- package/lib/ThemeIcon/ThemeIcon.styles.d.ts +1 -1
- package/lib/ThemeIcon/ThemeIcon.styles.d.ts.map +1 -1
- package/lib/Timeline/Timeline.d.ts +1 -1
- package/lib/Timeline/Timeline.d.ts.map +1 -1
- package/lib/Tooltip/Tooltip.d.ts +1 -1
- package/lib/Tooltip/Tooltip.d.ts.map +1 -1
- package/lib/Tooltip/use-tooltip.d.ts +4 -0
- package/lib/Tooltip/use-tooltip.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -54,7 +54,8 @@ const defaultProps = {
|
|
|
54
54
|
thumbFromLabel: "",
|
|
55
55
|
thumbToLabel: "",
|
|
56
56
|
showLabelOnHover: true,
|
|
57
|
-
disabled: false
|
|
57
|
+
disabled: false,
|
|
58
|
+
scale: (v) => v
|
|
58
59
|
};
|
|
59
60
|
const RangeSlider = forwardRef((props, ref) => {
|
|
60
61
|
const _a = useComponentDefaultProps("RangeSlider", defaultProps, props), {
|
|
@@ -85,7 +86,8 @@ const RangeSlider = forwardRef((props, ref) => {
|
|
|
85
86
|
thumbChildren,
|
|
86
87
|
disabled,
|
|
87
88
|
unstyled,
|
|
88
|
-
thumbSize
|
|
89
|
+
thumbSize,
|
|
90
|
+
scale
|
|
89
91
|
} = _a, others = __objRest(_a, [
|
|
90
92
|
"classNames",
|
|
91
93
|
"styles",
|
|
@@ -114,7 +116,8 @@ const RangeSlider = forwardRef((props, ref) => {
|
|
|
114
116
|
"thumbChildren",
|
|
115
117
|
"disabled",
|
|
116
118
|
"unstyled",
|
|
117
|
-
"thumbSize"
|
|
119
|
+
"thumbSize",
|
|
120
|
+
"scale"
|
|
118
121
|
]);
|
|
119
122
|
const theme = useMantineTheme();
|
|
120
123
|
const [focused, setFocused] = useState(-1);
|
|
@@ -286,10 +289,10 @@ const RangeSlider = forwardRef((props, ref) => {
|
|
|
286
289
|
disabled,
|
|
287
290
|
unstyled
|
|
288
291
|
}, /* @__PURE__ */ React.createElement(Thumb, __spreadProps(__spreadValues({}, sharedThumbProps), {
|
|
289
|
-
value: _value[0],
|
|
292
|
+
value: scale(_value[0]),
|
|
290
293
|
position: positions[0],
|
|
291
294
|
dragging: active,
|
|
292
|
-
label: typeof label === "function" ? label(_value[0]) : label,
|
|
295
|
+
label: typeof label === "function" ? label(scale(_value[0])) : label,
|
|
293
296
|
ref: (node) => {
|
|
294
297
|
thumbs.current[0] = node;
|
|
295
298
|
},
|
|
@@ -302,10 +305,10 @@ const RangeSlider = forwardRef((props, ref) => {
|
|
|
302
305
|
thumbSize
|
|
303
306
|
}), hasArrayThumbChildren ? thumbChildren[0] : thumbChildren), /* @__PURE__ */ React.createElement(Thumb, __spreadProps(__spreadValues({}, sharedThumbProps), {
|
|
304
307
|
thumbLabel: thumbToLabel,
|
|
305
|
-
value: _value[1],
|
|
308
|
+
value: scale(_value[1]),
|
|
306
309
|
position: positions[1],
|
|
307
310
|
dragging: active,
|
|
308
|
-
label: typeof label === "function" ? label(_value[1]) : label,
|
|
311
|
+
label: typeof label === "function" ? label(scale(_value[1])) : label,
|
|
309
312
|
ref: (node) => {
|
|
310
313
|
thumbs.current[1] = node;
|
|
311
314
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RangeSlider.js","sources":["../../../src/Slider/RangeSlider/RangeSlider.tsx"],"sourcesContent":["import React, { useRef, useState, forwardRef, useEffect } from 'react';\nimport { useMove, useUncontrolled, useMergedRef } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n useMantineTheme,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { MantineTransition } from '../../Transition';\nimport { getClientPosition } from '../utils/get-client-position/get-client-position';\nimport { getPosition } from '../utils/get-position/get-position';\nimport { getChangeValue } from '../utils/get-change-value/get-change-value';\nimport { Thumb, ThumbStylesNames } from '../Thumb/Thumb';\nimport { Track, TrackStylesNames } from '../Track/Track';\nimport { MarksStylesNames } from '../Marks/Marks';\nimport { SliderRoot, SliderRootStylesNames } from '../SliderRoot/SliderRoot';\n\nexport type RangeSliderStylesNames =\n | SliderRootStylesNames\n | ThumbStylesNames\n | TrackStylesNames\n | MarksStylesNames;\n\ntype Value = [number, number];\n\nexport interface RangeSliderProps\n extends DefaultProps<RangeSliderStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'value' | 'onChange' | 'defaultValue'> {\n /** Color from theme.colors */\n color?: MantineColor;\n\n /** Track border-radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined track and thumb size, number to set sizes in px */\n size?: MantineNumberSize;\n\n /** Minimal possible value */\n min?: number;\n\n /** Maximum possible value */\n max?: number;\n\n /** Minimal range interval */\n minRange?: number;\n\n /** Number by which value will be incremented/decremented with thumb drag and arrows */\n step?: number;\n\n /** Amount of digits after the decimal point */\n precision?: number;\n\n /** Current value for controlled slider */\n value?: Value;\n\n /** Default value for uncontrolled slider */\n defaultValue?: Value;\n\n /** Called each time value changes */\n onChange?(value: Value): void;\n\n /** Called when user stops dragging slider or changes value with arrows */\n onChangeEnd?(value: Value): void;\n\n /** Hidden input name, use with uncontrolled variant */\n name?: string;\n\n /** Marks which will be placed on the track */\n marks?: { value: number; label?: React.ReactNode }[];\n\n /** Function to generate label or any react node to render instead, set to null to disable label */\n label?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Label appear/disappear transition */\n labelTransition?: MantineTransition;\n\n /** Label appear/disappear transition duration in ms */\n labelTransitionDuration?: number;\n\n /** Label appear/disappear transition timing function, defaults to theme.transitionRimingFunction */\n labelTransitionTimingFunction?: string;\n\n /** If true label will be not be hidden when user stops dragging */\n labelAlwaysOn?: boolean;\n\n /** First thumb aria-label */\n thumbFromLabel?: string;\n\n /** Second thumb aria-label */\n thumbToLabel?: string;\n\n /**If true slider label will appear on hover */\n showLabelOnHover?: boolean;\n\n /** Thumbs children, can be used to add icons */\n thumbChildren?: React.ReactNode;\n\n /** Disables slider */\n disabled?: boolean;\n\n /** Thumb width and height in px */\n thumbSize?: number;\n}\n\nconst defaultProps: Partial<RangeSliderProps> = {\n size: 'md',\n radius: 'xl',\n min: 0,\n max: 100,\n minRange: 10,\n step: 1,\n marks: [],\n label: (f) => f,\n labelTransition: 'skew-down',\n labelTransitionDuration: 0,\n labelAlwaysOn: false,\n thumbFromLabel: '',\n thumbToLabel: '',\n showLabelOnHover: true,\n disabled: false,\n};\n\nexport const RangeSlider = forwardRef<HTMLDivElement, RangeSliderProps>((props, ref) => {\n const {\n classNames,\n styles,\n color,\n value,\n onChange,\n onChangeEnd,\n size,\n radius,\n min,\n max,\n minRange,\n step,\n precision,\n defaultValue,\n name,\n marks,\n label,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n thumbFromLabel,\n thumbToLabel,\n showLabelOnHover,\n thumbChildren,\n disabled,\n unstyled,\n thumbSize,\n ...others\n } = useComponentDefaultProps('RangeSlider', defaultProps, props);\n\n const theme = useMantineTheme();\n const [focused, setFocused] = useState(-1);\n const [hovered, setHovered] = useState(false);\n const [_value, setValue] = useUncontrolled<Value>({\n value,\n defaultValue,\n finalValue: [min, max],\n onChange,\n });\n const valueRef = useRef(_value);\n const thumbs = useRef<HTMLDivElement[]>([]);\n const thumbIndex = useRef<number>(undefined);\n const positions = [\n getPosition({ value: _value[0], min, max }),\n getPosition({ value: _value[1], min, max }),\n ];\n\n const _setValue = (val: Value) => {\n setValue(val);\n valueRef.current = val;\n };\n\n useEffect(\n () => {\n if (Array.isArray(value)) {\n valueRef.current = value;\n }\n },\n Array.isArray(value) ? [value[0], value[1]] : [null, null]\n );\n\n const setRangedValue = (val: number, index: number, triggerChangeEnd: boolean) => {\n const clone: Value = [...valueRef.current];\n clone[index] = val;\n\n if (index === 0) {\n if (val > clone[1] - minRange) {\n clone[1] = Math.min(val + minRange, max);\n }\n\n if (val > (max - minRange || min)) {\n clone[index] = valueRef.current[index];\n }\n }\n\n if (index === 1) {\n if (val < clone[0] + minRange) {\n clone[0] = Math.max(val - minRange, min);\n }\n\n if (val < clone[0] + minRange) {\n clone[index] = valueRef.current[index];\n }\n }\n\n _setValue(clone);\n\n if (triggerChangeEnd) {\n onChangeEnd?.(valueRef.current);\n }\n };\n\n const handleChange = (val: number) => {\n if (!disabled) {\n const nextValue = getChangeValue({ value: val, min, max, step, precision });\n setRangedValue(nextValue, thumbIndex.current, false);\n }\n };\n\n const { ref: container, active } = useMove(\n ({ x }) => handleChange(x),\n { onScrubEnd: () => onChangeEnd?.(valueRef.current) },\n theme.dir\n );\n\n function handleThumbMouseDown(\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>,\n index: number\n ) {\n event.stopPropagation();\n thumbIndex.current = index;\n }\n\n const handleTrackMouseDownCapture = (\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>\n ) => {\n container.current.focus();\n const rect = container.current.getBoundingClientRect();\n const changePosition = getClientPosition(event.nativeEvent);\n const changeValue = getChangeValue({\n value: changePosition - rect.left,\n max,\n min,\n step,\n containerWidth: rect.width,\n });\n\n const nearestHandle =\n Math.abs(_value[0] - changeValue) > Math.abs(_value[1] - changeValue) ? 1 : 0;\n const _nearestHandle = theme.dir === 'ltr' ? nearestHandle : nearestHandle === 1 ? 0 : 1;\n\n thumbIndex.current = _nearestHandle;\n };\n\n const getFocusedThumbIndex = () => {\n if (focused !== 1 && focused !== 0) {\n setFocused(0);\n return 0;\n }\n\n return focused;\n };\n\n const handleTrackKeydownCapture = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(Math.max(valueRef.current[focusedIndex] + step, min), max),\n focusedIndex,\n true\n );\n break;\n }\n case 'ArrowRight': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(\n Math.max(\n theme.dir === 'rtl'\n ? valueRef.current[focusedIndex] - step\n : valueRef.current[focusedIndex] + step,\n min\n ),\n max\n ),\n focusedIndex,\n true\n );\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(Math.max(valueRef.current[focusedIndex] - step, min), max),\n focusedIndex,\n true\n );\n break;\n }\n case 'ArrowLeft': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(\n Math.max(\n theme.dir === 'rtl'\n ? valueRef.current[focusedIndex] + step\n : valueRef.current[focusedIndex] - step,\n min\n ),\n max\n ),\n focusedIndex,\n true\n );\n break;\n }\n\n default: {\n break;\n }\n }\n }\n };\n\n const sharedThumbProps = {\n max,\n min,\n color,\n size,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n onBlur: () => setFocused(-1),\n classNames,\n styles,\n };\n\n const hasArrayThumbChildren = Array.isArray(thumbChildren);\n\n return (\n <SliderRoot\n {...others}\n size={size}\n ref={useMergedRef(container, ref)}\n onTouchStartCapture={handleTrackMouseDownCapture}\n onTouchEndCapture={() => {\n thumbIndex.current = -1;\n }}\n onMouseDownCapture={handleTrackMouseDownCapture}\n onMouseUpCapture={() => {\n thumbIndex.current = -1;\n }}\n onKeyDownCapture={handleTrackKeydownCapture}\n styles={styles}\n classNames={classNames}\n disabled={disabled}\n unstyled={unstyled}\n >\n <Track\n offset={positions[0]}\n marksOffset={_value[0]}\n filled={positions[1] - positions[0]}\n marks={marks}\n size={size}\n radius={radius}\n color={color}\n min={min}\n max={max}\n value={_value[1]}\n styles={styles}\n classNames={classNames}\n onMouseEnter={showLabelOnHover ? () => setHovered(true) : undefined}\n onMouseLeave={showLabelOnHover ? () => setHovered(false) : undefined}\n onChange={(val) => {\n const nearestValue = Math.abs(_value[0] - val) > Math.abs(_value[1] - val) ? 1 : 0;\n const clone: Value = [..._value];\n clone[nearestValue] = val;\n _setValue(clone);\n }}\n disabled={disabled}\n unstyled={unstyled}\n >\n <Thumb\n {...sharedThumbProps}\n value={_value[0]}\n position={positions[0]}\n dragging={active}\n label={typeof label === 'function' ? label(_value[0]) : label}\n ref={(node) => {\n thumbs.current[0] = node;\n }}\n thumbLabel={thumbFromLabel}\n onMouseDown={(event) => handleThumbMouseDown(event, 0)}\n onFocus={() => setFocused(0)}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n unstyled={unstyled}\n thumbSize={thumbSize}\n >\n {hasArrayThumbChildren ? thumbChildren[0] : thumbChildren}\n </Thumb>\n\n <Thumb\n {...sharedThumbProps}\n thumbLabel={thumbToLabel}\n value={_value[1]}\n position={positions[1]}\n dragging={active}\n label={typeof label === 'function' ? label(_value[1]) : label}\n ref={(node) => {\n thumbs.current[1] = node;\n }}\n onMouseDown={(event) => handleThumbMouseDown(event, 1)}\n onFocus={() => setFocused(1)}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n unstyled={unstyled}\n thumbSize={thumbSize}\n >\n {hasArrayThumbChildren ? thumbChildren[1] : thumbChildren}\n </Thumb>\n </Track>\n\n <input type=\"hidden\" name={`${name}_from`} value={_value[0]} />\n <input type=\"hidden\" name={`${name}_to`} value={_value[1]} />\n </SliderRoot>\n );\n});\n\nRangeSlider.displayName = '@mantine/core/RangeSlider';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RangeSlider.js","sources":["../../../src/Slider/RangeSlider/RangeSlider.tsx"],"sourcesContent":["import React, { useRef, useState, forwardRef, useEffect } from 'react';\nimport { useMove, useUncontrolled, useMergedRef } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineColor,\n useMantineTheme,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { MantineTransition } from '../../Transition';\nimport { getClientPosition } from '../utils/get-client-position/get-client-position';\nimport { getPosition } from '../utils/get-position/get-position';\nimport { getChangeValue } from '../utils/get-change-value/get-change-value';\nimport { Thumb, ThumbStylesNames } from '../Thumb/Thumb';\nimport { Track, TrackStylesNames } from '../Track/Track';\nimport { MarksStylesNames } from '../Marks/Marks';\nimport { SliderRoot, SliderRootStylesNames } from '../SliderRoot/SliderRoot';\n\nexport type RangeSliderStylesNames =\n | SliderRootStylesNames\n | ThumbStylesNames\n | TrackStylesNames\n | MarksStylesNames;\n\ntype Value = [number, number];\n\nexport interface RangeSliderProps\n extends DefaultProps<RangeSliderStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'value' | 'onChange' | 'defaultValue'> {\n /** Color from theme.colors */\n color?: MantineColor;\n\n /** Track border-radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined track and thumb size, number to set sizes in px */\n size?: MantineNumberSize;\n\n /** Minimal possible value */\n min?: number;\n\n /** Maximum possible value */\n max?: number;\n\n /** Minimal range interval */\n minRange?: number;\n\n /** Number by which value will be incremented/decremented with thumb drag and arrows */\n step?: number;\n\n /** Amount of digits after the decimal point */\n precision?: number;\n\n /** Current value for controlled slider */\n value?: Value;\n\n /** Default value for uncontrolled slider */\n defaultValue?: Value;\n\n /** Called each time value changes */\n onChange?(value: Value): void;\n\n /** Called when user stops dragging slider or changes value with arrows */\n onChangeEnd?(value: Value): void;\n\n /** Hidden input name, use with uncontrolled variant */\n name?: string;\n\n /** Marks which will be placed on the track */\n marks?: { value: number; label?: React.ReactNode }[];\n\n /** Function to generate label or any react node to render instead, set to null to disable label */\n label?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Label appear/disappear transition */\n labelTransition?: MantineTransition;\n\n /** Label appear/disappear transition duration in ms */\n labelTransitionDuration?: number;\n\n /** Label appear/disappear transition timing function, defaults to theme.transitionRimingFunction */\n labelTransitionTimingFunction?: string;\n\n /** If true label will be not be hidden when user stops dragging */\n labelAlwaysOn?: boolean;\n\n /** First thumb aria-label */\n thumbFromLabel?: string;\n\n /** Second thumb aria-label */\n thumbToLabel?: string;\n\n /**If true slider label will appear on hover */\n showLabelOnHover?: boolean;\n\n /** Thumbs children, can be used to add icons */\n thumbChildren?: React.ReactNode;\n\n /** Disables slider */\n disabled?: boolean;\n\n /** Thumb width and height in px */\n thumbSize?: number;\n\n /** A transformation function, to change the scale of the slider */\n scale?: (value: number) => number;\n}\n\nconst defaultProps: Partial<RangeSliderProps> = {\n size: 'md',\n radius: 'xl',\n min: 0,\n max: 100,\n minRange: 10,\n step: 1,\n marks: [],\n label: (f) => f,\n labelTransition: 'skew-down',\n labelTransitionDuration: 0,\n labelAlwaysOn: false,\n thumbFromLabel: '',\n thumbToLabel: '',\n showLabelOnHover: true,\n disabled: false,\n scale: (v) => v,\n};\n\nexport const RangeSlider = forwardRef<HTMLDivElement, RangeSliderProps>((props, ref) => {\n const {\n classNames,\n styles,\n color,\n value,\n onChange,\n onChangeEnd,\n size,\n radius,\n min,\n max,\n minRange,\n step,\n precision,\n defaultValue,\n name,\n marks,\n label,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n thumbFromLabel,\n thumbToLabel,\n showLabelOnHover,\n thumbChildren,\n disabled,\n unstyled,\n thumbSize,\n scale,\n ...others\n } = useComponentDefaultProps('RangeSlider', defaultProps, props);\n\n const theme = useMantineTheme();\n const [focused, setFocused] = useState(-1);\n const [hovered, setHovered] = useState(false);\n const [_value, setValue] = useUncontrolled<Value>({\n value,\n defaultValue,\n finalValue: [min, max],\n onChange,\n });\n const valueRef = useRef(_value);\n const thumbs = useRef<HTMLDivElement[]>([]);\n const thumbIndex = useRef<number>(undefined);\n const positions = [\n getPosition({ value: _value[0], min, max }),\n getPosition({ value: _value[1], min, max }),\n ];\n\n const _setValue = (val: Value) => {\n setValue(val);\n valueRef.current = val;\n };\n\n useEffect(\n () => {\n if (Array.isArray(value)) {\n valueRef.current = value;\n }\n },\n Array.isArray(value) ? [value[0], value[1]] : [null, null]\n );\n\n const setRangedValue = (val: number, index: number, triggerChangeEnd: boolean) => {\n const clone: Value = [...valueRef.current];\n clone[index] = val;\n\n if (index === 0) {\n if (val > clone[1] - minRange) {\n clone[1] = Math.min(val + minRange, max);\n }\n\n if (val > (max - minRange || min)) {\n clone[index] = valueRef.current[index];\n }\n }\n\n if (index === 1) {\n if (val < clone[0] + minRange) {\n clone[0] = Math.max(val - minRange, min);\n }\n\n if (val < clone[0] + minRange) {\n clone[index] = valueRef.current[index];\n }\n }\n\n _setValue(clone);\n\n if (triggerChangeEnd) {\n onChangeEnd?.(valueRef.current);\n }\n };\n\n const handleChange = (val: number) => {\n if (!disabled) {\n const nextValue = getChangeValue({ value: val, min, max, step, precision });\n setRangedValue(nextValue, thumbIndex.current, false);\n }\n };\n\n const { ref: container, active } = useMove(\n ({ x }) => handleChange(x),\n { onScrubEnd: () => onChangeEnd?.(valueRef.current) },\n theme.dir\n );\n\n function handleThumbMouseDown(\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>,\n index: number\n ) {\n event.stopPropagation();\n thumbIndex.current = index;\n }\n\n const handleTrackMouseDownCapture = (\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>\n ) => {\n container.current.focus();\n const rect = container.current.getBoundingClientRect();\n const changePosition = getClientPosition(event.nativeEvent);\n const changeValue = getChangeValue({\n value: changePosition - rect.left,\n max,\n min,\n step,\n containerWidth: rect.width,\n });\n\n const nearestHandle =\n Math.abs(_value[0] - changeValue) > Math.abs(_value[1] - changeValue) ? 1 : 0;\n const _nearestHandle = theme.dir === 'ltr' ? nearestHandle : nearestHandle === 1 ? 0 : 1;\n\n thumbIndex.current = _nearestHandle;\n };\n\n const getFocusedThumbIndex = () => {\n if (focused !== 1 && focused !== 0) {\n setFocused(0);\n return 0;\n }\n\n return focused;\n };\n\n const handleTrackKeydownCapture = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(Math.max(valueRef.current[focusedIndex] + step, min), max),\n focusedIndex,\n true\n );\n break;\n }\n case 'ArrowRight': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(\n Math.max(\n theme.dir === 'rtl'\n ? valueRef.current[focusedIndex] - step\n : valueRef.current[focusedIndex] + step,\n min\n ),\n max\n ),\n focusedIndex,\n true\n );\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(Math.max(valueRef.current[focusedIndex] - step, min), max),\n focusedIndex,\n true\n );\n break;\n }\n case 'ArrowLeft': {\n event.preventDefault();\n const focusedIndex = getFocusedThumbIndex();\n thumbs.current[focusedIndex].focus();\n setRangedValue(\n Math.min(\n Math.max(\n theme.dir === 'rtl'\n ? valueRef.current[focusedIndex] + step\n : valueRef.current[focusedIndex] - step,\n min\n ),\n max\n ),\n focusedIndex,\n true\n );\n break;\n }\n\n default: {\n break;\n }\n }\n }\n };\n\n const sharedThumbProps = {\n max,\n min,\n color,\n size,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n onBlur: () => setFocused(-1),\n classNames,\n styles,\n };\n\n const hasArrayThumbChildren = Array.isArray(thumbChildren);\n\n return (\n <SliderRoot\n {...others}\n size={size}\n ref={useMergedRef(container, ref)}\n onTouchStartCapture={handleTrackMouseDownCapture}\n onTouchEndCapture={() => {\n thumbIndex.current = -1;\n }}\n onMouseDownCapture={handleTrackMouseDownCapture}\n onMouseUpCapture={() => {\n thumbIndex.current = -1;\n }}\n onKeyDownCapture={handleTrackKeydownCapture}\n styles={styles}\n classNames={classNames}\n disabled={disabled}\n unstyled={unstyled}\n >\n <Track\n offset={positions[0]}\n marksOffset={_value[0]}\n filled={positions[1] - positions[0]}\n marks={marks}\n size={size}\n radius={radius}\n color={color}\n min={min}\n max={max}\n value={_value[1]}\n styles={styles}\n classNames={classNames}\n onMouseEnter={showLabelOnHover ? () => setHovered(true) : undefined}\n onMouseLeave={showLabelOnHover ? () => setHovered(false) : undefined}\n onChange={(val) => {\n const nearestValue = Math.abs(_value[0] - val) > Math.abs(_value[1] - val) ? 1 : 0;\n const clone: Value = [..._value];\n clone[nearestValue] = val;\n _setValue(clone);\n }}\n disabled={disabled}\n unstyled={unstyled}\n >\n <Thumb\n {...sharedThumbProps}\n value={scale(_value[0])}\n position={positions[0]}\n dragging={active}\n label={typeof label === 'function' ? label(scale(_value[0])) : label}\n ref={(node) => {\n thumbs.current[0] = node;\n }}\n thumbLabel={thumbFromLabel}\n onMouseDown={(event) => handleThumbMouseDown(event, 0)}\n onFocus={() => setFocused(0)}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n unstyled={unstyled}\n thumbSize={thumbSize}\n >\n {hasArrayThumbChildren ? thumbChildren[0] : thumbChildren}\n </Thumb>\n\n <Thumb\n {...sharedThumbProps}\n thumbLabel={thumbToLabel}\n value={scale(_value[1])}\n position={positions[1]}\n dragging={active}\n label={typeof label === 'function' ? label(scale(_value[1])) : label}\n ref={(node) => {\n thumbs.current[1] = node;\n }}\n onMouseDown={(event) => handleThumbMouseDown(event, 1)}\n onFocus={() => setFocused(1)}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n unstyled={unstyled}\n thumbSize={thumbSize}\n >\n {hasArrayThumbChildren ? thumbChildren[1] : thumbChildren}\n </Thumb>\n </Track>\n\n <input type=\"hidden\" name={`${name}_from`} value={_value[0]} />\n <input type=\"hidden\" name={`${name}_to`} value={_value[1]} />\n </SliderRoot>\n );\n});\n\nRangeSlider.displayName = '@mantine/core/RangeSlider';\n"],"names":[],"mappings":"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"}
|
|
@@ -51,7 +51,8 @@ const defaultProps = {
|
|
|
51
51
|
labelAlwaysOn: false,
|
|
52
52
|
thumbLabel: "",
|
|
53
53
|
showLabelOnHover: true,
|
|
54
|
-
disabled: false
|
|
54
|
+
disabled: false,
|
|
55
|
+
scale: (v) => v
|
|
55
56
|
};
|
|
56
57
|
const Slider = forwardRef((props, ref) => {
|
|
57
58
|
const _a = useComponentDefaultProps("Slider", defaultProps, props), {
|
|
@@ -80,7 +81,8 @@ const Slider = forwardRef((props, ref) => {
|
|
|
80
81
|
thumbChildren,
|
|
81
82
|
disabled,
|
|
82
83
|
unstyled,
|
|
83
|
-
thumbSize
|
|
84
|
+
thumbSize,
|
|
85
|
+
scale
|
|
84
86
|
} = _a, others = __objRest(_a, [
|
|
85
87
|
"classNames",
|
|
86
88
|
"styles",
|
|
@@ -107,7 +109,8 @@ const Slider = forwardRef((props, ref) => {
|
|
|
107
109
|
"thumbChildren",
|
|
108
110
|
"disabled",
|
|
109
111
|
"unstyled",
|
|
110
|
-
"thumbSize"
|
|
112
|
+
"thumbSize",
|
|
113
|
+
"scale"
|
|
111
114
|
]);
|
|
112
115
|
const theme = useMantineTheme();
|
|
113
116
|
const [hovered, setHovered] = useState(false);
|
|
@@ -120,7 +123,8 @@ const Slider = forwardRef((props, ref) => {
|
|
|
120
123
|
const valueRef = useRef(_value);
|
|
121
124
|
const thumb = useRef();
|
|
122
125
|
const position = getPosition({ value: _value, min, max });
|
|
123
|
-
const
|
|
126
|
+
const scaledValue = scale(_value);
|
|
127
|
+
const _label = typeof label === "function" ? label(scaledValue) : label;
|
|
124
128
|
const handleChange = useCallback(({ x }) => {
|
|
125
129
|
if (!disabled) {
|
|
126
130
|
const nextValue = getChangeValue({ value: x, min, max, step, precision });
|
|
@@ -205,7 +209,7 @@ const Slider = forwardRef((props, ref) => {
|
|
|
205
209
|
color,
|
|
206
210
|
min,
|
|
207
211
|
max,
|
|
208
|
-
value:
|
|
212
|
+
value: scaledValue,
|
|
209
213
|
onChange: setValue,
|
|
210
214
|
onMouseEnter: showLabelOnHover ? () => setHovered(true) : void 0,
|
|
211
215
|
onMouseLeave: showLabelOnHover ? () => setHovered(false) : void 0,
|
|
@@ -216,7 +220,7 @@ const Slider = forwardRef((props, ref) => {
|
|
|
216
220
|
}, /* @__PURE__ */ React.createElement(Thumb, {
|
|
217
221
|
max,
|
|
218
222
|
min,
|
|
219
|
-
value:
|
|
223
|
+
value: scaledValue,
|
|
220
224
|
position,
|
|
221
225
|
dragging: active,
|
|
222
226
|
color,
|
|
@@ -238,7 +242,7 @@ const Slider = forwardRef((props, ref) => {
|
|
|
238
242
|
}, thumbChildren)), /* @__PURE__ */ React.createElement("input", {
|
|
239
243
|
type: "hidden",
|
|
240
244
|
name,
|
|
241
|
-
value:
|
|
245
|
+
value: scaledValue
|
|
242
246
|
}));
|
|
243
247
|
});
|
|
244
248
|
Slider.displayName = "@mantine/core/Slider";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Slider.js","sources":["../../../src/Slider/Slider/Slider.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useState, useCallback } from 'react';\nimport { useMergedRef, useMove, useUncontrolled, clamp } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineColor,\n MantineNumberSize,\n useComponentDefaultProps,\n useMantineTheme,\n} from '@mantine/styles';\nimport { MantineTransition } from '../../Transition';\nimport { getPosition } from '../utils/get-position/get-position';\nimport { getChangeValue } from '../utils/get-change-value/get-change-value';\nimport { Thumb, ThumbStylesNames } from '../Thumb/Thumb';\nimport { Track, TrackStylesNames } from '../Track/Track';\nimport { MarksStylesNames } from '../Marks/Marks';\nimport { SliderRoot, SliderRootStylesNames } from '../SliderRoot/SliderRoot';\n\nexport type SliderStylesNames =\n | SliderRootStylesNames\n | ThumbStylesNames\n | TrackStylesNames\n | MarksStylesNames;\n\nexport interface SliderProps\n extends DefaultProps<SliderStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'value' | 'onChange'> {\n /** Color from theme.colors */\n color?: MantineColor;\n\n /** Track border-radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined track and thumb size, number to set sizes in px */\n size?: MantineNumberSize;\n\n /** Minimal possible value */\n min?: number;\n\n /** Maximum possible value */\n max?: number;\n\n /** Number by which value will be incremented/decremented with thumb drag and arrows */\n step?: number;\n\n /** Amount of digits after the decimal point */\n precision?: number;\n\n /** Current value for controlled slider */\n value?: number;\n\n /** Default value for uncontrolled slider */\n defaultValue?: number;\n\n /** Called each time value changes */\n onChange?(value: number): void;\n\n /** Called when user stops dragging slider or changes value with arrows */\n onChangeEnd?(value: number): void;\n\n /** Hidden input name, use with uncontrolled variant */\n name?: string;\n\n /** Marks which will be placed on the track */\n marks?: { value: number; label?: React.ReactNode }[];\n\n /** Function to generate label or any react node to render instead, set to null to disable label */\n label?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Label appear/disappear transition */\n labelTransition?: MantineTransition;\n\n /** Label appear/disappear transition duration in ms */\n labelTransitionDuration?: number;\n\n /** Label appear/disappear transition timing function, defaults to theme.transitionRimingFunction */\n labelTransitionTimingFunction?: string;\n\n /** If true label will be not be hidden when user stops dragging */\n labelAlwaysOn?: boolean;\n\n /** Thumb aria-label */\n thumbLabel?: string;\n\n /** If true slider label will appear on hover */\n showLabelOnHover?: boolean;\n\n /** Thumb children, can be used to add icon */\n thumbChildren?: React.ReactNode;\n\n /** Disables slider */\n disabled?: boolean;\n\n /** Thumb width and height in px */\n thumbSize?: number;\n}\n\nconst defaultProps: Partial<SliderProps> = {\n size: 'md',\n radius: 'xl',\n min: 0,\n max: 100,\n step: 1,\n marks: [],\n label: (f) => f,\n labelTransition: 'skew-down',\n labelTransitionDuration: 0,\n labelAlwaysOn: false,\n thumbLabel: '',\n showLabelOnHover: true,\n disabled: false,\n};\n\nexport const Slider = forwardRef<HTMLDivElement, SliderProps>((props, ref) => {\n const {\n classNames,\n styles,\n color,\n value,\n onChange,\n onChangeEnd,\n size,\n radius,\n min,\n max,\n step,\n precision,\n defaultValue,\n name,\n marks,\n label,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n thumbLabel,\n showLabelOnHover,\n thumbChildren,\n disabled,\n unstyled,\n thumbSize,\n ...others\n } = useComponentDefaultProps('Slider', defaultProps, props);\n\n const theme = useMantineTheme();\n const [hovered, setHovered] = useState(false);\n const [_value, setValue] = useUncontrolled({\n value: typeof value === 'number' ? clamp(value, min, max) : value,\n defaultValue: typeof defaultValue === 'number' ? clamp(defaultValue, min, max) : defaultValue,\n finalValue: clamp(0, min, max),\n onChange,\n });\n\n const valueRef = useRef(_value);\n const thumb = useRef<HTMLDivElement>();\n const position = getPosition({ value: _value, min, max });\n const _label = typeof label === 'function' ? label(_value) : label;\n\n const handleChange = useCallback(\n ({ x }: { x: number }) => {\n if (!disabled) {\n const nextValue = getChangeValue({ value: x, min, max, step, precision });\n setValue(nextValue);\n valueRef.current = nextValue;\n }\n },\n [disabled, min, max, step, precision]\n );\n\n const { ref: container, active } = useMove(\n handleChange,\n { onScrubEnd: () => onChangeEnd?.(valueRef.current) },\n theme.dir\n );\n\n const handleThumbMouseDown = (\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>\n ) => {\n event.stopPropagation();\n };\n\n const handleTrackKeydownCapture = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n thumb.current.focus();\n const nextValue = Math.min(Math.max(_value + step, min), max);\n onChangeEnd?.(nextValue);\n setValue(nextValue);\n break;\n }\n\n case 'ArrowRight': {\n event.preventDefault();\n thumb.current.focus();\n const nextValue = Math.min(\n Math.max(theme.dir === 'rtl' ? _value - step : _value + step, min),\n max\n );\n onChangeEnd?.(nextValue);\n setValue(nextValue);\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n thumb.current.focus();\n const nextValue = Math.min(Math.max(_value - step, min), max);\n onChangeEnd?.(nextValue);\n setValue(nextValue);\n break;\n }\n\n case 'ArrowLeft': {\n event.preventDefault();\n thumb.current.focus();\n const nextValue = Math.min(\n Math.max(theme.dir === 'rtl' ? _value + step : _value - step, min),\n max\n );\n onChangeEnd?.(nextValue);\n setValue(nextValue);\n break;\n }\n\n case 'Home': {\n event.preventDefault();\n thumb.current.focus();\n onChangeEnd?.(min);\n setValue(min);\n break;\n }\n\n case 'End': {\n event.preventDefault();\n thumb.current.focus();\n onChangeEnd?.(max);\n setValue(max);\n break;\n }\n\n default: {\n break;\n }\n }\n }\n };\n\n return (\n <SliderRoot\n {...others}\n size={size}\n ref={useMergedRef(container, ref)}\n onKeyDownCapture={handleTrackKeydownCapture}\n onMouseDownCapture={() => container.current?.focus()}\n classNames={classNames}\n styles={styles}\n disabled={disabled}\n unstyled={unstyled}\n >\n <Track\n offset={0}\n filled={position}\n marks={marks}\n size={size}\n radius={radius}\n color={color}\n min={min}\n max={max}\n value={_value}\n onChange={setValue}\n onMouseEnter={showLabelOnHover ? () => setHovered(true) : undefined}\n onMouseLeave={showLabelOnHover ? () => setHovered(false) : undefined}\n classNames={classNames}\n styles={styles}\n disabled={disabled}\n unstyled={unstyled}\n >\n <Thumb\n max={max}\n min={min}\n value={_value}\n position={position}\n dragging={active}\n color={color}\n size={size}\n label={_label}\n ref={thumb}\n onMouseDown={handleThumbMouseDown}\n labelTransition={labelTransition}\n labelTransitionDuration={labelTransitionDuration}\n labelTransitionTimingFunction={labelTransitionTimingFunction}\n labelAlwaysOn={labelAlwaysOn}\n classNames={classNames}\n styles={styles}\n thumbLabel={thumbLabel}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n unstyled={unstyled}\n thumbSize={thumbSize}\n >\n {thumbChildren}\n </Thumb>\n </Track>\n\n <input type=\"hidden\" name={name} value={_value} />\n </SliderRoot>\n );\n});\n\nSlider.displayName = '@mantine/core/Slider';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Slider.js","sources":["../../../src/Slider/Slider/Slider.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useState, useCallback } from 'react';\nimport { useMergedRef, useMove, useUncontrolled, clamp } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineColor,\n MantineNumberSize,\n useComponentDefaultProps,\n useMantineTheme,\n} from '@mantine/styles';\nimport { MantineTransition } from '../../Transition';\nimport { getPosition } from '../utils/get-position/get-position';\nimport { getChangeValue } from '../utils/get-change-value/get-change-value';\nimport { Thumb, ThumbStylesNames } from '../Thumb/Thumb';\nimport { Track, TrackStylesNames } from '../Track/Track';\nimport { MarksStylesNames } from '../Marks/Marks';\nimport { SliderRoot, SliderRootStylesNames } from '../SliderRoot/SliderRoot';\n\nexport type SliderStylesNames =\n | SliderRootStylesNames\n | ThumbStylesNames\n | TrackStylesNames\n | MarksStylesNames;\n\nexport interface SliderProps\n extends DefaultProps<SliderStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'value' | 'onChange'> {\n /** Color from theme.colors */\n color?: MantineColor;\n\n /** Track border-radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Predefined track and thumb size, number to set sizes in px */\n size?: MantineNumberSize;\n\n /** Minimal possible value */\n min?: number;\n\n /** Maximum possible value */\n max?: number;\n\n /** Number by which value will be incremented/decremented with thumb drag and arrows */\n step?: number;\n\n /** Amount of digits after the decimal point */\n precision?: number;\n\n /** Current value for controlled slider */\n value?: number;\n\n /** Default value for uncontrolled slider */\n defaultValue?: number;\n\n /** Called each time value changes */\n onChange?(value: number): void;\n\n /** Called when user stops dragging slider or changes value with arrows */\n onChangeEnd?(value: number): void;\n\n /** Hidden input name, use with uncontrolled variant */\n name?: string;\n\n /** Marks which will be placed on the track */\n marks?: { value: number; label?: React.ReactNode }[];\n\n /** Function to generate label or any react node to render instead, set to null to disable label */\n label?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Label appear/disappear transition */\n labelTransition?: MantineTransition;\n\n /** Label appear/disappear transition duration in ms */\n labelTransitionDuration?: number;\n\n /** Label appear/disappear transition timing function, defaults to theme.transitionRimingFunction */\n labelTransitionTimingFunction?: string;\n\n /** If true label will be not be hidden when user stops dragging */\n labelAlwaysOn?: boolean;\n\n /** Thumb aria-label */\n thumbLabel?: string;\n\n /** If true slider label will appear on hover */\n showLabelOnHover?: boolean;\n\n /** Thumb children, can be used to add icon */\n thumbChildren?: React.ReactNode;\n\n /** Disables slider */\n disabled?: boolean;\n\n /** Thumb width and height in px */\n thumbSize?: number;\n\n /** A transformation function, to change the scale of the slider */\n scale?: (value: number) => number;\n}\n\nconst defaultProps: Partial<SliderProps> = {\n size: 'md',\n radius: 'xl',\n min: 0,\n max: 100,\n step: 1,\n marks: [],\n label: (f) => f,\n labelTransition: 'skew-down',\n labelTransitionDuration: 0,\n labelAlwaysOn: false,\n thumbLabel: '',\n showLabelOnHover: true,\n disabled: false,\n scale: (v) => v,\n};\n\nexport const Slider = forwardRef<HTMLDivElement, SliderProps>((props, ref) => {\n const {\n classNames,\n styles,\n color,\n value,\n onChange,\n onChangeEnd,\n size,\n radius,\n min,\n max,\n step,\n precision,\n defaultValue,\n name,\n marks,\n label,\n labelTransition,\n labelTransitionDuration,\n labelTransitionTimingFunction,\n labelAlwaysOn,\n thumbLabel,\n showLabelOnHover,\n thumbChildren,\n disabled,\n unstyled,\n thumbSize,\n scale,\n ...others\n } = useComponentDefaultProps('Slider', defaultProps, props);\n\n const theme = useMantineTheme();\n const [hovered, setHovered] = useState(false);\n const [_value, setValue] = useUncontrolled({\n value: typeof value === 'number' ? clamp(value, min, max) : value,\n defaultValue: typeof defaultValue === 'number' ? clamp(defaultValue, min, max) : defaultValue,\n finalValue: clamp(0, min, max),\n onChange,\n });\n\n const valueRef = useRef(_value);\n const thumb = useRef<HTMLDivElement>();\n const position = getPosition({ value: _value, min, max });\n const scaledValue = scale(_value);\n const _label = typeof label === 'function' ? label(scaledValue) : label;\n\n const handleChange = useCallback(\n ({ x }: { x: number }) => {\n if (!disabled) {\n const nextValue = getChangeValue({ value: x, min, max, step, precision });\n setValue(nextValue);\n valueRef.current = nextValue;\n }\n },\n [disabled, min, max, step, precision]\n );\n\n const { ref: container, active } = useMove(\n handleChange,\n { onScrubEnd: () => onChangeEnd?.(valueRef.current) },\n theme.dir\n );\n\n const handleThumbMouseDown = (\n event: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>\n ) => {\n event.stopPropagation();\n };\n\n const handleTrackKeydownCapture = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (!disabled) {\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n thumb.current.focus();\n const nextValue = Math.min(Math.max(_value + step, min), max);\n onChangeEnd?.(nextValue);\n setValue(nextValue);\n break;\n }\n\n case 'ArrowRight': {\n event.preventDefault();\n thumb.current.focus();\n const nextValue = Math.min(\n Math.max(theme.dir === 'rtl' ? _value - step : _value + step, min),\n max\n );\n onChangeEnd?.(nextValue);\n setValue(nextValue);\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n thumb.current.focus();\n const nextValue = Math.min(Math.max(_value - step, min), max);\n onChangeEnd?.(nextValue);\n setValue(nextValue);\n break;\n }\n\n case 'ArrowLeft': {\n event.preventDefault();\n thumb.current.focus();\n const nextValue = Math.min(\n Math.max(theme.dir === 'rtl' ? _value + step : _value - step, min),\n max\n );\n onChangeEnd?.(nextValue);\n setValue(nextValue);\n break;\n }\n\n case 'Home': {\n event.preventDefault();\n thumb.current.focus();\n onChangeEnd?.(min);\n setValue(min);\n break;\n }\n\n case 'End': {\n event.preventDefault();\n thumb.current.focus();\n onChangeEnd?.(max);\n setValue(max);\n break;\n }\n\n default: {\n break;\n }\n }\n }\n };\n\n return (\n <SliderRoot\n {...others}\n size={size}\n ref={useMergedRef(container, ref)}\n onKeyDownCapture={handleTrackKeydownCapture}\n onMouseDownCapture={() => container.current?.focus()}\n classNames={classNames}\n styles={styles}\n disabled={disabled}\n unstyled={unstyled}\n >\n <Track\n offset={0}\n filled={position}\n marks={marks}\n size={size}\n radius={radius}\n color={color}\n min={min}\n max={max}\n value={scaledValue}\n onChange={setValue}\n onMouseEnter={showLabelOnHover ? () => setHovered(true) : undefined}\n onMouseLeave={showLabelOnHover ? () => setHovered(false) : undefined}\n classNames={classNames}\n styles={styles}\n disabled={disabled}\n unstyled={unstyled}\n >\n <Thumb\n max={max}\n min={min}\n value={scaledValue}\n position={position}\n dragging={active}\n color={color}\n size={size}\n label={_label}\n ref={thumb}\n onMouseDown={handleThumbMouseDown}\n labelTransition={labelTransition}\n labelTransitionDuration={labelTransitionDuration}\n labelTransitionTimingFunction={labelTransitionTimingFunction}\n labelAlwaysOn={labelAlwaysOn}\n classNames={classNames}\n styles={styles}\n thumbLabel={thumbLabel}\n showLabelOnHover={showLabelOnHover && hovered}\n disabled={disabled}\n unstyled={unstyled}\n thumbSize={thumbSize}\n >\n {thumbChildren}\n </Thumb>\n </Track>\n\n <input type=\"hidden\" name={name} value={scaledValue} />\n </SliderRoot>\n );\n});\n\nSlider.displayName = '@mantine/core/Slider';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stepper.js","sources":["../../src/Stepper/Stepper.tsx"],"sourcesContent":["import React, { forwardRef, Children, cloneElement } from 'react';\nimport {\n MantineColor,\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n Selectors,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { ForwardRefWithStaticComponents } from '@mantine/utils';\nimport { Box } from '../Box';\nimport { Step, StepStylesNames } from './Step/Step';\nimport { StepCompleted } from './StepCompleted/StepCompleted';\nimport useStyles from './Stepper.styles';\n\nexport type StepperStylesNames = Selectors<typeof useStyles> | StepStylesNames;\n\nexport interface StepperProps\n extends DefaultProps<StepperStylesNames>,\n React.ComponentPropsWithRef<'div'> {\n /** <Stepper.Step /> components only */\n children: React.ReactNode;\n\n /** Called when step is clicked */\n onStepClick?(stepIndex: number): void;\n\n /** Active step index */\n active: number;\n\n /** Step icon displayed when step is completed */\n completedIcon?: React.ReactNode;\n\n /** Step icon displayed when step is in progress */\n progressIcon?: React.ReactNode;\n\n /** Active and progress Step colors from theme.colors */\n color?: MantineColor;\n\n /** Step icon size in px */\n iconSize?: number;\n\n /** Content padding-top from theme.spacing or number to set value in px */\n contentPadding?: MantineNumberSize;\n\n /** Component orientation */\n orientation?: 'vertical' | 'horizontal';\n\n /** Icon position relative to step body */\n iconPosition?: 'right' | 'left';\n\n /** Component size */\n size?: MantineSize;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Breakpoint at which orientation will change from horizontal to vertical */\n breakpoint?: MantineNumberSize;\n}\n\ntype StepperComponent = ForwardRefWithStaticComponents<\n StepperProps,\n {\n Step: typeof Step;\n Completed: typeof StepCompleted;\n }\n>;\n\nconst defaultProps: Partial<StepperProps> = {\n contentPadding: 'md',\n size: 'md',\n radius: 'xl',\n orientation: 'horizontal',\n iconPosition: 'left',\n};\n\nexport const Stepper: StepperComponent = forwardRef<HTMLDivElement, StepperProps>((props, ref) => {\n const {\n className,\n children,\n onStepClick,\n active,\n completedIcon,\n progressIcon,\n color,\n iconSize,\n contentPadding,\n size,\n radius,\n orientation,\n breakpoint,\n iconPosition,\n classNames,\n styles,\n unstyled,\n ...others\n } = useComponentDefaultProps('Stepper', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { contentPadding, color, orientation, iconPosition, size, iconSize, breakpoint },\n { classNames, styles, unstyled, name: 'Stepper' }\n );\n\n const convertedChildren = Children.toArray(children) as React.ReactElement[];\n const _children = convertedChildren.filter((child) => child.type !== StepCompleted);\n const completedStep = convertedChildren.find((item) => item.type === StepCompleted);\n\n const items = _children.reduce<React.ReactElement[]>((acc, item, index) => {\n const shouldAllowSelect =\n typeof item.props.allowStepSelect === 'boolean'\n ? item.props.allowStepSelect\n : typeof onStepClick === 'function';\n\n acc.push(\n cloneElement(item, {\n __staticSelector: 'Stepper',\n icon: item.props.icon || index + 1,\n key: index,\n state:\n active === index ? 'stepProgress' : active > index ? 'stepCompleted' : 'stepInactive',\n onClick: () => shouldAllowSelect && typeof onStepClick === 'function' && onStepClick(index),\n allowStepClick: shouldAllowSelect && typeof onStepClick === 'function',\n completedIcon: item.props.completedIcon || completedIcon,\n progressIcon: item.props.progressIcon || progressIcon,\n color: item.props.color || color,\n iconSize,\n size,\n radius,\n classNames,\n styles,\n iconPosition: item.props.iconPosition || iconPosition,\n orientation,\n unstyled,\n })\n );\n\n if (orientation === 'horizontal' && index !== _children.length - 1) {\n acc.push(\n <div\n className={cx(classes.separator, { [classes.separatorActive]: index < active })}\n key={`separator-${index}`}\n />\n );\n }\n\n return acc;\n }, []);\n\n const stepContent = _children[active]?.props?.children;\n const completedContent = completedStep?.props?.children;\n const content = active > _children.length - 1 ? completedContent : stepContent;\n\n return (\n <Box className={cx(classes.root, className)} ref={ref} {...others}>\n <div className={classes.steps}>{items}</div>\n {content && <div className={classes.content}>{content}</div>}\n </Box>\n );\n}) as any;\n\nStepper.Step = Step;\nStepper.Completed = StepCompleted;\nStepper.displayName = '@mantine/core/Stepper';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Stepper.js","sources":["../../src/Stepper/Stepper.tsx"],"sourcesContent":["import React, { forwardRef, Children, cloneElement } from 'react';\nimport {\n MantineColor,\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n Selectors,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { ForwardRefWithStaticComponents } from '@mantine/utils';\nimport { Box } from '../Box';\nimport { Step, StepStylesNames } from './Step/Step';\nimport { StepCompleted } from './StepCompleted/StepCompleted';\nimport useStyles from './Stepper.styles';\n\nexport type StepperStylesNames = Selectors<typeof useStyles> | StepStylesNames;\n\nexport interface StepperProps\n extends DefaultProps<StepperStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n /** <Stepper.Step /> components only */\n children: React.ReactNode;\n\n /** Called when step is clicked */\n onStepClick?(stepIndex: number): void;\n\n /** Active step index */\n active: number;\n\n /** Step icon displayed when step is completed */\n completedIcon?: React.ReactNode;\n\n /** Step icon displayed when step is in progress */\n progressIcon?: React.ReactNode;\n\n /** Active and progress Step colors from theme.colors */\n color?: MantineColor;\n\n /** Step icon size in px */\n iconSize?: number;\n\n /** Content padding-top from theme.spacing or number to set value in px */\n contentPadding?: MantineNumberSize;\n\n /** Component orientation */\n orientation?: 'vertical' | 'horizontal';\n\n /** Icon position relative to step body */\n iconPosition?: 'right' | 'left';\n\n /** Component size */\n size?: MantineSize;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Breakpoint at which orientation will change from horizontal to vertical */\n breakpoint?: MantineNumberSize;\n}\n\ntype StepperComponent = ForwardRefWithStaticComponents<\n HTMLDivElement,\n StepperProps,\n {\n Step: typeof Step;\n Completed: typeof StepCompleted;\n }\n>;\n\nconst defaultProps: Partial<StepperProps> = {\n contentPadding: 'md',\n size: 'md',\n radius: 'xl',\n orientation: 'horizontal',\n iconPosition: 'left',\n};\n\nexport const Stepper: StepperComponent = forwardRef<HTMLDivElement, StepperProps>((props, ref) => {\n const {\n className,\n children,\n onStepClick,\n active,\n completedIcon,\n progressIcon,\n color,\n iconSize,\n contentPadding,\n size,\n radius,\n orientation,\n breakpoint,\n iconPosition,\n classNames,\n styles,\n unstyled,\n ...others\n } = useComponentDefaultProps('Stepper', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { contentPadding, color, orientation, iconPosition, size, iconSize, breakpoint },\n { classNames, styles, unstyled, name: 'Stepper' }\n );\n\n const convertedChildren = Children.toArray(children) as React.ReactElement[];\n const _children = convertedChildren.filter((child) => child.type !== StepCompleted);\n const completedStep = convertedChildren.find((item) => item.type === StepCompleted);\n\n const items = _children.reduce<React.ReactElement[]>((acc, item, index) => {\n const shouldAllowSelect =\n typeof item.props.allowStepSelect === 'boolean'\n ? item.props.allowStepSelect\n : typeof onStepClick === 'function';\n\n acc.push(\n cloneElement(item, {\n __staticSelector: 'Stepper',\n icon: item.props.icon || index + 1,\n key: index,\n state:\n active === index ? 'stepProgress' : active > index ? 'stepCompleted' : 'stepInactive',\n onClick: () => shouldAllowSelect && typeof onStepClick === 'function' && onStepClick(index),\n allowStepClick: shouldAllowSelect && typeof onStepClick === 'function',\n completedIcon: item.props.completedIcon || completedIcon,\n progressIcon: item.props.progressIcon || progressIcon,\n color: item.props.color || color,\n iconSize,\n size,\n radius,\n classNames,\n styles,\n iconPosition: item.props.iconPosition || iconPosition,\n orientation,\n unstyled,\n })\n );\n\n if (orientation === 'horizontal' && index !== _children.length - 1) {\n acc.push(\n <div\n className={cx(classes.separator, { [classes.separatorActive]: index < active })}\n key={`separator-${index}`}\n />\n );\n }\n\n return acc;\n }, []);\n\n const stepContent = _children[active]?.props?.children;\n const completedContent = completedStep?.props?.children;\n const content = active > _children.length - 1 ? completedContent : stepContent;\n\n return (\n <Box className={cx(classes.root, className)} ref={ref} {...others}>\n <div className={classes.steps}>{items}</div>\n {content && <div className={classes.content}>{content}</div>}\n </Box>\n );\n}) as any;\n\nStepper.Step = Step;\nStepper.Completed = StepCompleted;\nStepper.displayName = '@mantine/core/Stepper';\n"],"names":[],"mappings":"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"}
|
package/esm/Switch/Switch.js
CHANGED
|
@@ -2,6 +2,8 @@ import React, { forwardRef } from 'react';
|
|
|
2
2
|
import { useId, useUncontrolled } from '@mantine/hooks';
|
|
3
3
|
import { useComponentDefaultProps, extractSystemStyles } from '@mantine/styles';
|
|
4
4
|
import useStyles from './Switch.styles.js';
|
|
5
|
+
import { SwitchGroup } from './SwitchGroup/SwitchGroup.js';
|
|
6
|
+
import { useSwitchGroupContext } from './SwitchGroup.context.js';
|
|
5
7
|
import { Box } from '../Box/Box.js';
|
|
6
8
|
|
|
7
9
|
var __defProp = Object.defineProperty;
|
|
@@ -42,6 +44,7 @@ const defaultProps = {
|
|
|
42
44
|
radius: "xl"
|
|
43
45
|
};
|
|
44
46
|
const Switch = forwardRef((props, ref) => {
|
|
47
|
+
var _b;
|
|
45
48
|
const _a = useComponentDefaultProps("Switch", defaultProps, props), {
|
|
46
49
|
className,
|
|
47
50
|
color,
|
|
@@ -83,11 +86,16 @@ const Switch = forwardRef((props, ref) => {
|
|
|
83
86
|
"defaultChecked",
|
|
84
87
|
"onChange"
|
|
85
88
|
]);
|
|
86
|
-
const
|
|
89
|
+
const ctx = useSwitchGroupContext();
|
|
90
|
+
const { classes, cx } = useStyles({ size: (ctx == null ? void 0 : ctx.size) || size, color, radius }, { unstyled, styles, classNames, name: "Switch" });
|
|
87
91
|
const { systemStyles, rest } = extractSystemStyles(others);
|
|
88
92
|
const uuid = useId(id);
|
|
93
|
+
const contextProps = ctx ? {
|
|
94
|
+
checked: ctx.value.includes(rest.value),
|
|
95
|
+
onChange: ctx.onChange
|
|
96
|
+
} : {};
|
|
89
97
|
const [_checked, handleChange] = useUncontrolled({
|
|
90
|
-
value: checked,
|
|
98
|
+
value: (_b = contextProps.checked) != null ? _b : checked,
|
|
91
99
|
defaultValue: defaultChecked,
|
|
92
100
|
finalValue: false
|
|
93
101
|
});
|
|
@@ -101,7 +109,7 @@ const Switch = forwardRef((props, ref) => {
|
|
|
101
109
|
}, /* @__PURE__ */ React.createElement("input", __spreadProps(__spreadValues({}, rest), {
|
|
102
110
|
checked: _checked,
|
|
103
111
|
onChange: (event) => {
|
|
104
|
-
onChange == null ? void 0 : onChange(event);
|
|
112
|
+
ctx ? contextProps.onChange(event) : onChange == null ? void 0 : onChange(event);
|
|
105
113
|
handleChange(event.currentTarget.checked);
|
|
106
114
|
},
|
|
107
115
|
id: uuid,
|
|
@@ -116,10 +124,12 @@ const Switch = forwardRef((props, ref) => {
|
|
|
116
124
|
className: classes.trackLabel
|
|
117
125
|
}, _checked ? onLabel : offLabel)), label && /* @__PURE__ */ React.createElement("div", {
|
|
118
126
|
"data-testid": "label",
|
|
127
|
+
"data-disabled": rest.disabled || void 0,
|
|
119
128
|
className: classes.label
|
|
120
129
|
}, label)));
|
|
121
130
|
});
|
|
122
131
|
Switch.displayName = "@mantine/core/Switch";
|
|
132
|
+
Switch.Group = SwitchGroup;
|
|
123
133
|
|
|
124
134
|
export { Switch };
|
|
125
135
|
//# sourceMappingURL=Switch.js.map
|
package/esm/Switch/Switch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Switch.js","sources":["../../src/Switch/Switch.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useId, useUncontrolled } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n MantineColor,\n Selectors,\n extractSystemStyles,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport useStyles, { SwitchStylesParams } from './Switch.styles';\n\nexport type SwitchStylesNames = Selectors<typeof useStyles>;\n\nexport interface SwitchProps\n extends DefaultProps<SwitchStylesNames, SwitchStylesParams>,\n Omit<React.ComponentPropsWithoutRef<'input'>, 'type' | 'size'> {\n /** Id is used to bind input and label, if not passed unique id will be generated for each input */\n id?: string;\n\n /** Switch label */\n label?: React.ReactNode;\n\n /** Inner label when Switch is in unchecked state */\n offLabel?: React.ReactNode;\n\n /** Inner label when Switch is in checked state */\n onLabel?: React.ReactNode;\n\n /** Switch checked state color from theme.colors, defaults to theme.primaryColor */\n color?: MantineColor;\n\n /** Predefined size value */\n size?: MantineSize;\n\n /** Radius from theme.radius or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Props spread to wrapper element */\n wrapperProps?: Record<string, any>;\n\n /** Icon inside the thumb of switch */\n thumbIcon?: React.ReactNode;\n}\n\nconst defaultProps: Partial<SwitchProps> = {\n offLabel: '',\n onLabel: '',\n size: 'sm',\n radius: 'xl',\n};\n\nexport const Switch = forwardRef<HTMLInputElement, SwitchProps>((props, ref) => {\n const {\n className,\n color,\n label,\n offLabel,\n onLabel,\n id,\n style,\n size,\n radius,\n wrapperProps,\n children,\n unstyled,\n styles,\n classNames,\n thumbIcon,\n sx,\n checked,\n defaultChecked,\n onChange,\n ...others\n } = useComponentDefaultProps('Switch', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { size, color, radius },\n { unstyled, styles, classNames, name: 'Switch' }\n );\n\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useId(id);\n\n const [_checked, handleChange] = useUncontrolled({\n value: checked,\n defaultValue: defaultChecked,\n finalValue: false,\n });\n\n return (\n <Box\n className={cx(classes.root, className)}\n style={style}\n sx={sx}\n {...systemStyles}\n {...wrapperProps}\n >\n <label className={classes.body} htmlFor={uuid}>\n <input\n {...rest}\n checked={_checked}\n onChange={(event) => {\n onChange?.(event);\n handleChange(event.currentTarget.checked);\n }}\n id={uuid}\n ref={ref}\n type=\"checkbox\"\n className={classes.input}\n />\n\n <div className={classes.track}>\n <div className={classes.thumb}>{thumbIcon}</div>\n <div className={classes.trackLabel}>{_checked ? onLabel : offLabel}</div>\n </div>\n\n {label && (\n <div
|
|
1
|
+
{"version":3,"file":"Switch.js","sources":["../../src/Switch/Switch.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useId, useUncontrolled } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n MantineColor,\n Selectors,\n extractSystemStyles,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { ForwardRefWithStaticComponents } from '@mantine/utils';\nimport { Box } from '../Box';\nimport useStyles, { SwitchStylesParams } from './Switch.styles';\nimport { SwitchGroup } from './SwitchGroup/SwitchGroup';\nimport { useSwitchGroupContext } from './SwitchGroup.context';\n\nexport type SwitchStylesNames = Selectors<typeof useStyles>;\n\nexport interface SwitchProps\n extends DefaultProps<SwitchStylesNames, SwitchStylesParams>,\n Omit<React.ComponentPropsWithoutRef<'input'>, 'type' | 'size'> {\n /** Id is used to bind input and label, if not passed unique id will be generated for each input */\n id?: string;\n\n /** Switch label */\n label?: React.ReactNode;\n\n /** Inner label when Switch is in unchecked state */\n offLabel?: React.ReactNode;\n\n /** Inner label when Switch is in checked state */\n onLabel?: React.ReactNode;\n\n /** Switch checked state color from theme.colors, defaults to theme.primaryColor */\n color?: MantineColor;\n\n /** Predefined size value */\n size?: MantineSize;\n\n /** Radius from theme.radius or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Props spread to wrapper element */\n wrapperProps?: Record<string, any>;\n\n /** Icon inside the thumb of switch */\n thumbIcon?: React.ReactNode;\n}\n\nconst defaultProps: Partial<SwitchProps> = {\n offLabel: '',\n onLabel: '',\n size: 'sm',\n radius: 'xl',\n};\n\ntype SwitchComponent = ForwardRefWithStaticComponents<\n HTMLInputElement,\n SwitchProps,\n { Group: typeof SwitchGroup }\n>;\n\nexport const Switch: SwitchComponent = forwardRef<HTMLInputElement, SwitchProps>((props, ref) => {\n const {\n className,\n color,\n label,\n offLabel,\n onLabel,\n id,\n style,\n size,\n radius,\n wrapperProps,\n children,\n unstyled,\n styles,\n classNames,\n thumbIcon,\n sx,\n checked,\n defaultChecked,\n onChange,\n ...others\n } = useComponentDefaultProps('Switch', defaultProps, props);\n\n const ctx = useSwitchGroupContext();\n\n const { classes, cx } = useStyles(\n { size: ctx?.size || size, color, radius },\n { unstyled, styles, classNames, name: 'Switch' }\n );\n\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useId(id);\n\n const contextProps = ctx\n ? {\n checked: ctx.value.includes(rest.value as string),\n onChange: ctx.onChange,\n }\n : {};\n\n const [_checked, handleChange] = useUncontrolled({\n value: contextProps.checked ?? checked,\n defaultValue: defaultChecked,\n finalValue: false,\n });\n\n return (\n <Box\n className={cx(classes.root, className)}\n style={style}\n sx={sx}\n {...systemStyles}\n {...wrapperProps}\n >\n <label className={classes.body} htmlFor={uuid}>\n <input\n {...rest}\n checked={_checked}\n onChange={(event) => {\n ctx ? contextProps.onChange(event) : onChange?.(event);\n handleChange(event.currentTarget.checked);\n }}\n id={uuid}\n ref={ref}\n type=\"checkbox\"\n className={classes.input}\n />\n\n <div className={classes.track}>\n <div className={classes.thumb}>{thumbIcon}</div>\n <div className={classes.trackLabel}>{_checked ? onLabel : offLabel}</div>\n </div>\n\n {label && (\n <div\n data-testid=\"label\"\n data-disabled={rest.disabled || undefined}\n className={classes.label}\n >\n {label}\n </div>\n )}\n </label>\n </Box>\n );\n}) as any;\n\nSwitch.displayName = '@mantine/core/Switch';\nSwitch.Group = SwitchGroup;\n"],"names":[],"mappings":"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"}
|
|
@@ -151,7 +151,10 @@ var useStyles = createStyles((theme, { size, radius, color }) => {
|
|
|
151
151
|
fontFamily: theme.fontFamily,
|
|
152
152
|
paddingLeft: theme.spacing.sm,
|
|
153
153
|
color: theme.colorScheme === "dark" ? theme.colors.dark[0] : theme.black,
|
|
154
|
-
cursor: theme.cursorType
|
|
154
|
+
cursor: theme.cursorType,
|
|
155
|
+
"&[data-disabled]": {
|
|
156
|
+
color: theme.colorScheme === "dark" ? theme.colors.dark[3] : theme.colors.gray[5]
|
|
157
|
+
}
|
|
155
158
|
}),
|
|
156
159
|
trackLabel: {
|
|
157
160
|
height: "100%",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Switch.styles.js","sources":["../../src/Switch/Switch.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineSize, MantineColor } from '@mantine/styles';\n\nexport interface SwitchStylesParams {\n color: MantineColor;\n size: MantineSize;\n radius: MantineNumberSize;\n}\n\nconst switchHeight = {\n xs: 16,\n sm: 20,\n md: 24,\n lg: 30,\n xl: 36,\n};\n\nconst switchWidth = {\n xs: 32,\n sm: 38,\n md: 46,\n lg: 56,\n xl: 72,\n};\n\nconst handleSizes = {\n xs: 12,\n sm: 14,\n md: 18,\n lg: 22,\n xl: 28,\n};\n\nconst labelFontSizes = {\n xs: 5,\n sm: 6,\n md: 7,\n lg: 9,\n xl: 11,\n};\n\nconst trackLabelPaddings = {\n xs: 4,\n sm: 5,\n md: 6,\n lg: 8,\n xl: 10,\n};\n\nexport default createStyles((theme, { size, radius, color }: SwitchStylesParams) => {\n const handleSize = theme.fn.size({ size, sizes: handleSizes });\n const borderRadius = theme.fn.size({ size: radius, sizes: theme.radius });\n const colors = theme.fn.variant({ variant: 'filled', color });\n const trackWidth = theme.fn.size({ size, sizes: switchWidth });\n const trackPadding = size === 'xs' ? 1 : 2;\n\n return {\n root: {\n display: 'flex',\n alignItems: 'center',\n },\n\n body: {\n display: 'flex',\n },\n\n input: {\n clip: 'rect(1px, 1px, 1px, 1px)',\n height: '1px',\n overflow: 'hidden',\n width: '1px',\n whiteSpace: 'nowrap',\n padding: '0',\n WebkitClipPath: 'inset(50%)',\n clipPath: 'inset(50%)',\n },\n\n track: {\n ...theme.fn.focusStyles('input:focus + &'),\n cursor: theme.cursorType,\n overflow: 'hidden',\n WebkitTapHighlightColor: 'transparent',\n position: 'relative',\n borderRadius,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.colors.gray[2],\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[3]\n }`,\n height: theme.fn.size({ size, sizes: switchHeight }),\n minWidth: trackWidth,\n margin: 0,\n transitionProperty: 'background-color, border-color',\n transitionTimingFunction: theme.transitionTimingFunction,\n transitionDuration: '150ms',\n boxSizing: 'border-box',\n appearance: 'none',\n display: 'flex',\n alignItems: 'center',\n fontSize: theme.fn.size({ size, sizes: labelFontSizes }),\n fontWeight: 600,\n\n // for disabling text selection on double click\n userSelect: 'none',\n MozUserSelect: 'none',\n WebkitUserSelect: 'none',\n MsUserSelect: 'none',\n\n zIndex: 0,\n lineHeight: 0,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[1] : theme.colors.gray[6],\n transition: `color 150ms ${theme.transitionTimingFunction}`,\n\n 'input:checked + &': {\n backgroundColor: colors.background,\n borderColor: colors.background,\n color: theme.white,\n transition: `color 150ms ${theme.transitionTimingFunction}`,\n },\n\n 'input:disabled + &': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n cursor: 'not-allowed',\n },\n },\n\n thumb: {\n position: 'absolute',\n zIndex: 1,\n borderRadius,\n boxSizing: 'border-box',\n display: 'flex',\n backgroundColor: theme.white,\n height: handleSize,\n width: handleSize,\n border: `1px solid ${theme.colorScheme === 'dark' ? theme.white : theme.colors.gray[3]}`,\n left: `${trackPadding}px`,\n transition: `left 150ms ${theme.transitionTimingFunction}`,\n\n '& > *': {\n margin: 'auto',\n },\n\n '@media (prefers-reduced-motion)': {\n transitionDuration: theme.respectReducedMotion ? '0ms' : '',\n },\n\n 'input:checked + * > &': {\n left: `calc(100% - ${handleSize}px - ${trackPadding}px)`,\n borderColor: theme.white,\n },\n\n 'input:disabled + * > &': {\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[0],\n },\n },\n\n label: {\n ...theme.fn.fontStyles(),\n WebkitTapHighlightColor: 'transparent',\n fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),\n fontFamily: theme.fontFamily,\n paddingLeft: theme.spacing.sm,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n cursor: theme.cursorType,\n },\n\n trackLabel: {\n height: '100%',\n display: 'grid',\n placeContent: 'center',\n\n minWidth: trackWidth - handleSize,\n paddingInline: theme.fn.size({ size, sizes: trackLabelPaddings }),\n margin: `0 0 0 ${handleSize + trackPadding}px`,\n transition: `margin 150ms ${theme.transitionTimingFunction}`,\n\n 'input:checked + * > &': {\n margin: `0 ${handleSize + trackPadding}px 0 0`,\n },\n },\n };\n});\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Switch.styles.js","sources":["../../src/Switch/Switch.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize, MantineSize, MantineColor } from '@mantine/styles';\n\nexport interface SwitchStylesParams {\n color: MantineColor;\n size: MantineSize;\n radius: MantineNumberSize;\n}\n\nconst switchHeight = {\n xs: 16,\n sm: 20,\n md: 24,\n lg: 30,\n xl: 36,\n};\n\nconst switchWidth = {\n xs: 32,\n sm: 38,\n md: 46,\n lg: 56,\n xl: 72,\n};\n\nconst handleSizes = {\n xs: 12,\n sm: 14,\n md: 18,\n lg: 22,\n xl: 28,\n};\n\nconst labelFontSizes = {\n xs: 5,\n sm: 6,\n md: 7,\n lg: 9,\n xl: 11,\n};\n\nconst trackLabelPaddings = {\n xs: 4,\n sm: 5,\n md: 6,\n lg: 8,\n xl: 10,\n};\n\nexport default createStyles((theme, { size, radius, color }: SwitchStylesParams) => {\n const handleSize = theme.fn.size({ size, sizes: handleSizes });\n const borderRadius = theme.fn.size({ size: radius, sizes: theme.radius });\n const colors = theme.fn.variant({ variant: 'filled', color });\n const trackWidth = theme.fn.size({ size, sizes: switchWidth });\n const trackPadding = size === 'xs' ? 1 : 2;\n\n return {\n root: {\n display: 'flex',\n alignItems: 'center',\n },\n\n body: {\n display: 'flex',\n },\n\n input: {\n clip: 'rect(1px, 1px, 1px, 1px)',\n height: '1px',\n overflow: 'hidden',\n width: '1px',\n whiteSpace: 'nowrap',\n padding: '0',\n WebkitClipPath: 'inset(50%)',\n clipPath: 'inset(50%)',\n },\n\n track: {\n ...theme.fn.focusStyles('input:focus + &'),\n cursor: theme.cursorType,\n overflow: 'hidden',\n WebkitTapHighlightColor: 'transparent',\n position: 'relative',\n borderRadius,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.colors.gray[2],\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[3]\n }`,\n height: theme.fn.size({ size, sizes: switchHeight }),\n minWidth: trackWidth,\n margin: 0,\n transitionProperty: 'background-color, border-color',\n transitionTimingFunction: theme.transitionTimingFunction,\n transitionDuration: '150ms',\n boxSizing: 'border-box',\n appearance: 'none',\n display: 'flex',\n alignItems: 'center',\n fontSize: theme.fn.size({ size, sizes: labelFontSizes }),\n fontWeight: 600,\n\n // for disabling text selection on double click\n userSelect: 'none',\n MozUserSelect: 'none',\n WebkitUserSelect: 'none',\n MsUserSelect: 'none',\n\n zIndex: 0,\n lineHeight: 0,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[1] : theme.colors.gray[6],\n transition: `color 150ms ${theme.transitionTimingFunction}`,\n\n 'input:checked + &': {\n backgroundColor: colors.background,\n borderColor: colors.background,\n color: theme.white,\n transition: `color 150ms ${theme.transitionTimingFunction}`,\n },\n\n 'input:disabled + &': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n cursor: 'not-allowed',\n },\n },\n\n thumb: {\n position: 'absolute',\n zIndex: 1,\n borderRadius,\n boxSizing: 'border-box',\n display: 'flex',\n backgroundColor: theme.white,\n height: handleSize,\n width: handleSize,\n border: `1px solid ${theme.colorScheme === 'dark' ? theme.white : theme.colors.gray[3]}`,\n left: `${trackPadding}px`,\n transition: `left 150ms ${theme.transitionTimingFunction}`,\n\n '& > *': {\n margin: 'auto',\n },\n\n '@media (prefers-reduced-motion)': {\n transitionDuration: theme.respectReducedMotion ? '0ms' : '',\n },\n\n 'input:checked + * > &': {\n left: `calc(100% - ${handleSize}px - ${trackPadding}px)`,\n borderColor: theme.white,\n },\n\n 'input:disabled + * > &': {\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[2],\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[0],\n },\n },\n\n label: {\n ...theme.fn.fontStyles(),\n WebkitTapHighlightColor: 'transparent',\n fontSize: theme.fn.size({ size, sizes: theme.fontSizes }),\n fontFamily: theme.fontFamily,\n paddingLeft: theme.spacing.sm,\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n cursor: theme.cursorType,\n '&[data-disabled]': {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[5],\n },\n },\n\n trackLabel: {\n height: '100%',\n display: 'grid',\n placeContent: 'center',\n\n minWidth: trackWidth - handleSize,\n paddingInline: theme.fn.size({ size, sizes: trackLabelPaddings }),\n margin: `0 0 0 ${handleSize + trackPadding}px`,\n transition: `margin 150ms ${theme.transitionTimingFunction}`,\n\n 'input:checked + * > &': {\n margin: `0 ${handleSize + trackPadding}px 0 0`,\n },\n },\n };\n});\n"],"names":[],"mappings":"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"}
|