@mantine/core 6.0.6 → 6.0.8

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.
Files changed (133) hide show
  1. package/cjs/Accordion/AccordionControl/AccordionControl.styles.js +2 -2
  2. package/cjs/Accordion/AccordionControl/AccordionControl.styles.js.map +1 -1
  3. package/cjs/Affix/Affix.js +5 -2
  4. package/cjs/Affix/Affix.js.map +1 -1
  5. package/cjs/ColorInput/ColorInput.js +6 -2
  6. package/cjs/ColorInput/ColorInput.js.map +1 -1
  7. package/cjs/Dialog/Dialog.styles.js +1 -1
  8. package/cjs/Dialog/Dialog.styles.js.map +1 -1
  9. package/cjs/Menu/Menu.js +1 -3
  10. package/cjs/Menu/Menu.js.map +1 -1
  11. package/cjs/ModalBase/ModalBase.js +4 -3
  12. package/cjs/ModalBase/ModalBase.js.map +1 -1
  13. package/cjs/MultiSelect/MultiSelect.js +3 -2
  14. package/cjs/MultiSelect/MultiSelect.js.map +1 -1
  15. package/cjs/Notification/Notification.js +3 -0
  16. package/cjs/Notification/Notification.js.map +1 -1
  17. package/cjs/Notification/Notification.styles.js +3 -1
  18. package/cjs/Notification/Notification.styles.js.map +1 -1
  19. package/cjs/Popover/Popover.context.js.map +1 -1
  20. package/cjs/Popover/Popover.js.map +1 -1
  21. package/cjs/Popover/PopoverDropdown/PopoverDropdown.js +2 -2
  22. package/cjs/Popover/PopoverDropdown/PopoverDropdown.js.map +1 -1
  23. package/cjs/Select/Select.js.map +1 -1
  24. package/cjs/Select/SelectPopover/SelectPopover.js.map +1 -1
  25. package/cjs/Slider/Marks/Marks.js +3 -1
  26. package/cjs/Slider/Marks/Marks.js.map +1 -1
  27. package/cjs/Slider/Marks/Marks.styles.js +14 -6
  28. package/cjs/Slider/Marks/Marks.styles.js.map +1 -1
  29. package/cjs/Slider/RangeSlider/RangeSlider.js +19 -17
  30. package/cjs/Slider/RangeSlider/RangeSlider.js.map +1 -1
  31. package/cjs/Slider/Slider/Slider.js +10 -10
  32. package/cjs/Slider/Slider/Slider.js.map +1 -1
  33. package/cjs/Slider/SliderRoot/SliderRoot.js +8 -1
  34. package/cjs/Slider/SliderRoot/SliderRoot.js.map +1 -1
  35. package/cjs/Slider/SliderRoot/SliderRoot.styles.js +4 -3
  36. package/cjs/Slider/SliderRoot/SliderRoot.styles.js.map +1 -1
  37. package/cjs/Slider/Thumb/Thumb.js +3 -4
  38. package/cjs/Slider/Thumb/Thumb.js.map +1 -1
  39. package/cjs/Slider/Track/Track.js +9 -11
  40. package/cjs/Slider/Track/Track.js.map +1 -1
  41. package/cjs/Slider/Track/Track.styles.js +7 -0
  42. package/cjs/Slider/Track/Track.styles.js.map +1 -1
  43. package/cjs/Switch/SwitchGroup/SwitchGroup.js.map +1 -1
  44. package/cjs/Tooltip/Tooltip.js +4 -2
  45. package/cjs/Tooltip/Tooltip.js.map +1 -1
  46. package/cjs/Tooltip/TooltipFloating/TooltipFloating.js +4 -2
  47. package/cjs/Tooltip/TooltipFloating/TooltipFloating.js.map +1 -1
  48. package/esm/Accordion/AccordionControl/AccordionControl.styles.js +2 -2
  49. package/esm/Accordion/AccordionControl/AccordionControl.styles.js.map +1 -1
  50. package/esm/Affix/Affix.js +5 -2
  51. package/esm/Affix/Affix.js.map +1 -1
  52. package/esm/ColorInput/ColorInput.js +6 -2
  53. package/esm/ColorInput/ColorInput.js.map +1 -1
  54. package/esm/Dialog/Dialog.styles.js +1 -1
  55. package/esm/Dialog/Dialog.styles.js.map +1 -1
  56. package/esm/Menu/Menu.js +1 -3
  57. package/esm/Menu/Menu.js.map +1 -1
  58. package/esm/ModalBase/ModalBase.js +4 -3
  59. package/esm/ModalBase/ModalBase.js.map +1 -1
  60. package/esm/MultiSelect/MultiSelect.js +3 -2
  61. package/esm/MultiSelect/MultiSelect.js.map +1 -1
  62. package/esm/Notification/Notification.js +3 -0
  63. package/esm/Notification/Notification.js.map +1 -1
  64. package/esm/Notification/Notification.styles.js +3 -1
  65. package/esm/Notification/Notification.styles.js.map +1 -1
  66. package/esm/Popover/Popover.context.js.map +1 -1
  67. package/esm/Popover/Popover.js.map +1 -1
  68. package/esm/Popover/PopoverDropdown/PopoverDropdown.js +2 -2
  69. package/esm/Popover/PopoverDropdown/PopoverDropdown.js.map +1 -1
  70. package/esm/Select/Select.js.map +1 -1
  71. package/esm/Select/SelectPopover/SelectPopover.js.map +1 -1
  72. package/esm/Slider/Marks/Marks.js +3 -1
  73. package/esm/Slider/Marks/Marks.js.map +1 -1
  74. package/esm/Slider/Marks/Marks.styles.js +15 -7
  75. package/esm/Slider/Marks/Marks.styles.js.map +1 -1
  76. package/esm/Slider/RangeSlider/RangeSlider.js +20 -18
  77. package/esm/Slider/RangeSlider/RangeSlider.js.map +1 -1
  78. package/esm/Slider/Slider/Slider.js +10 -10
  79. package/esm/Slider/Slider/Slider.js.map +1 -1
  80. package/esm/Slider/SliderRoot/SliderRoot.js +8 -1
  81. package/esm/Slider/SliderRoot/SliderRoot.js.map +1 -1
  82. package/esm/Slider/SliderRoot/SliderRoot.styles.js +4 -3
  83. package/esm/Slider/SliderRoot/SliderRoot.styles.js.map +1 -1
  84. package/esm/Slider/Thumb/Thumb.js +3 -4
  85. package/esm/Slider/Thumb/Thumb.js.map +1 -1
  86. package/esm/Slider/Track/Track.js +9 -11
  87. package/esm/Slider/Track/Track.js.map +1 -1
  88. package/esm/Slider/Track/Track.styles.js +7 -0
  89. package/esm/Slider/Track/Track.styles.js.map +1 -1
  90. package/esm/Switch/SwitchGroup/SwitchGroup.js.map +1 -1
  91. package/esm/Tooltip/Tooltip.js +4 -2
  92. package/esm/Tooltip/Tooltip.js.map +1 -1
  93. package/esm/Tooltip/TooltipFloating/TooltipFloating.js +4 -2
  94. package/esm/Tooltip/TooltipFloating/TooltipFloating.js.map +1 -1
  95. package/lib/Affix/Affix.d.ts +1 -1
  96. package/lib/Affix/Affix.d.ts.map +1 -1
  97. package/lib/ColorInput/ColorInput.d.ts +1 -1
  98. package/lib/ColorInput/ColorInput.d.ts.map +1 -1
  99. package/lib/Menu/Menu.d.ts.map +1 -1
  100. package/lib/ModalBase/ModalBase.d.ts +3 -3
  101. package/lib/ModalBase/ModalBase.d.ts.map +1 -1
  102. package/lib/MultiSelect/MultiSelect.d.ts.map +1 -1
  103. package/lib/Notification/Notification.d.ts +2 -0
  104. package/lib/Notification/Notification.d.ts.map +1 -1
  105. package/lib/Notification/Notification.styles.d.ts.map +1 -1
  106. package/lib/Popover/Popover.context.d.ts +1 -1
  107. package/lib/Popover/Popover.context.d.ts.map +1 -1
  108. package/lib/Popover/Popover.d.ts +1 -1
  109. package/lib/Popover/Popover.d.ts.map +1 -1
  110. package/lib/Select/Select.d.ts +1 -1
  111. package/lib/Select/Select.d.ts.map +1 -1
  112. package/lib/Select/SelectPopover/SelectPopover.d.ts +1 -1
  113. package/lib/Select/SelectPopover/SelectPopover.d.ts.map +1 -1
  114. package/lib/Slider/Marks/Marks.styles.d.ts +1 -0
  115. package/lib/Slider/Marks/Marks.styles.d.ts.map +1 -1
  116. package/lib/Slider/RangeSlider/RangeSlider.d.ts.map +1 -1
  117. package/lib/Slider/Slider/Slider.d.ts.map +1 -1
  118. package/lib/Slider/SliderRoot/SliderRoot.d.ts.map +1 -1
  119. package/lib/Slider/SliderRoot/SliderRoot.styles.d.ts +1 -4
  120. package/lib/Slider/SliderRoot/SliderRoot.styles.d.ts.map +1 -1
  121. package/lib/Slider/Thumb/Thumb.d.ts +2 -1
  122. package/lib/Slider/Thumb/Thumb.d.ts.map +1 -1
  123. package/lib/Slider/Track/Track.d.ts +2 -3
  124. package/lib/Slider/Track/Track.d.ts.map +1 -1
  125. package/lib/Slider/Track/Track.styles.d.ts +1 -0
  126. package/lib/Slider/Track/Track.styles.d.ts.map +1 -1
  127. package/lib/Switch/SwitchGroup/SwitchGroup.d.ts +1 -1
  128. package/lib/Switch/SwitchGroup/SwitchGroup.d.ts.map +1 -1
  129. package/lib/Tooltip/Tooltip.d.ts.map +1 -1
  130. package/lib/Tooltip/Tooltip.types.d.ts +3 -0
  131. package/lib/Tooltip/Tooltip.types.d.ts.map +1 -1
  132. package/lib/Tooltip/TooltipFloating/TooltipFloating.d.ts.map +1 -1
  133. package/package.json +4 -4
@@ -5,6 +5,8 @@ import { OptionalPortal } from '../Portal/OptionalPortal.js';
5
5
  import { Box } from '../Box/Box.js';
6
6
 
7
7
  var __defProp = Object.defineProperty;
8
+ var __defProps = Object.defineProperties;
9
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
8
10
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
9
11
  var __hasOwnProp = Object.prototype.hasOwnProperty;
10
12
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -20,6 +22,7 @@ var __spreadValues = (a, b) => {
20
22
  }
21
23
  return a;
22
24
  };
25
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
23
26
  var __objRest = (source, exclude) => {
24
27
  var target = {};
25
28
  for (var prop in source)
@@ -39,10 +42,10 @@ const defaultProps = {
39
42
  };
40
43
  const Affix = forwardRef((props, ref) => {
41
44
  const _a = useComponentDefaultProps("Affix", defaultProps, props), { target, position, zIndex, sx, withinPortal, portalProps } = _a, others = __objRest(_a, ["target", "position", "zIndex", "sx", "withinPortal", "portalProps"]);
42
- return /* @__PURE__ */ React.createElement(OptionalPortal, __spreadValues({
45
+ return /* @__PURE__ */ React.createElement(OptionalPortal, __spreadProps(__spreadValues({}, portalProps), {
43
46
  withinPortal,
44
47
  target
45
- }, portalProps), /* @__PURE__ */ React.createElement(Box, __spreadValues({
48
+ }), /* @__PURE__ */ React.createElement(Box, __spreadValues({
46
49
  sx: [__spreadValues({ position: "fixed", zIndex }, position), ...packSx(sx)],
47
50
  ref
48
51
  }, others)));
@@ -1 +1 @@
1
- {"version":3,"file":"Affix.js","sources":["../../src/Affix/Affix.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, getDefaultZIndex, useComponentDefaultProps } from '@mantine/styles';\nimport { packSx } from '@mantine/utils';\nimport { Box } from '../Box';\nimport { OptionalPortal, PortalProps } from '../Portal';\n\nexport interface AffixProps extends DefaultProps, React.ComponentPropsWithoutRef<'div'> {\n /** Element where portal should be rendered, by default new div element is created and appended to document.body */\n target?: HTMLDivElement;\n\n /** Root element z-index property */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Determines whether component should be rendered within portal, defaults to true */\n withinPortal?: boolean;\n\n /** Props to pass down to the portal when withinPortal is true */\n portalProps?: Omit<PortalProps, 'target'>;\n\n /** Affix position on screen, defaults to { bottom: 0, right: 0 } */\n position?: {\n top?: string | number;\n left?: string | number;\n bottom?: string | number;\n right?: string | number;\n };\n}\n\nconst defaultProps: Partial<AffixProps> = {\n position: { bottom: 0, right: 0 },\n zIndex: getDefaultZIndex('modal'),\n withinPortal: true,\n};\n\nexport const Affix = forwardRef<HTMLDivElement, AffixProps>((props: AffixProps, ref) => {\n const { target, position, zIndex, sx, withinPortal, portalProps, ...others } =\n useComponentDefaultProps('Affix', defaultProps, props);\n\n return (\n <OptionalPortal withinPortal={withinPortal} target={target} {...portalProps}>\n <Box sx={[{ position: 'fixed', zIndex, ...position }, ...packSx(sx)]} ref={ref} {...others} />\n </OptionalPortal>\n );\n});\n\nAffix.displayName = '@mantine/core/Affix';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Affix.js","sources":["../../src/Affix/Affix.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, getDefaultZIndex, useComponentDefaultProps } from '@mantine/styles';\nimport { packSx } from '@mantine/utils';\nimport { Box } from '../Box';\nimport { OptionalPortal, PortalProps } from '../Portal';\n\nexport interface AffixProps extends DefaultProps, React.ComponentPropsWithoutRef<'div'> {\n /** Element where portal should be rendered, by default new div element is created and appended to document.body */\n target?: HTMLDivElement;\n\n /** Root element z-index property */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Determines whether component should be rendered within portal, defaults to true */\n withinPortal?: boolean;\n\n /** Props to pass down to the portal when withinPortal is true */\n portalProps?: Omit<PortalProps, 'children' | 'withinPortal' | 'target'>;\n\n /** Affix position on screen, defaults to { bottom: 0, right: 0 } */\n position?: {\n top?: string | number;\n left?: string | number;\n bottom?: string | number;\n right?: string | number;\n };\n}\n\nconst defaultProps: Partial<AffixProps> = {\n position: { bottom: 0, right: 0 },\n zIndex: getDefaultZIndex('modal'),\n withinPortal: true,\n};\n\nexport const Affix = forwardRef<HTMLDivElement, AffixProps>((props: AffixProps, ref) => {\n const { target, position, zIndex, sx, withinPortal, portalProps, ...others } =\n useComponentDefaultProps('Affix', defaultProps, props);\n\n return (\n <OptionalPortal {...portalProps} withinPortal={withinPortal} target={target}>\n <Box sx={[{ position: 'fixed', zIndex, ...position }, ...packSx(sx)]} ref={ref} {...others} />\n </OptionalPortal>\n );\n});\n\nAffix.displayName = '@mantine/core/Affix';\n"],"names":[],"mappings":"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"}
@@ -149,7 +149,11 @@ const ColorInput = forwardRef((props, ref) => {
149
149
  const eyeDropper = /* @__PURE__ */ React.createElement(ActionIcon, {
150
150
  sx: { color: theme.colorScheme === "dark" ? theme.colors.dark[0] : theme.black },
151
151
  size: inputProps.size,
152
- onClick: () => openEyeDropper().then(({ sRGBHex }) => setValue(convertHsvaTo(format, parseColor(sRGBHex)))).catch(noop)
152
+ onClick: () => openEyeDropper().then(({ sRGBHex }) => {
153
+ const color = convertHsvaTo(format, parseColor(sRGBHex));
154
+ setValue(color);
155
+ onChangeEnd == null ? void 0 : onChangeEnd(color);
156
+ }).catch(noop)
153
157
  }, eyeDropperIcon || /* @__PURE__ */ React.createElement(EyeDropperIcon, {
154
158
  size: getSize({ size: inputProps.size, sizes: EYE_DROPPER_SIZES })
155
159
  }));
@@ -158,9 +162,9 @@ const ColorInput = forwardRef((props, ref) => {
158
162
  setDropdownOpened(true);
159
163
  };
160
164
  const handleInputBlur = (event) => {
165
+ fixOnBlur && setValue(lastValidValue);
161
166
  onBlur == null ? void 0 : onBlur(event);
162
167
  setDropdownOpened(false);
163
- fixOnBlur && setValue(lastValidValue);
164
168
  };
165
169
  const handleInputClick = (event) => {
166
170
  onClick == null ? void 0 : onClick(event);
@@ -1 +1 @@
1
- {"version":3,"file":"ColorInput.js","sources":["../../src/ColorInput/ColorInput.tsx"],"sourcesContent":["import React, { useState, useEffect, forwardRef } from 'react';\nimport { useUncontrolled, useDidUpdate, useEyeDropper } from '@mantine/hooks';\nimport {\n DefaultProps,\n getDefaultZIndex,\n MantineShadow,\n useMantineTheme,\n rem,\n getSize,\n} from '@mantine/styles';\nimport { noop } from '@mantine/utils';\nimport {\n InputWrapperBaseProps,\n InputWrapperStylesNames,\n Input,\n InputSharedProps,\n InputStylesNames,\n useInputProps,\n} from '../Input';\nimport { ColorSwatch } from '../ColorSwatch';\nimport { ActionIcon } from '../ActionIcon';\nimport { Popover, PopoverStylesNames } from '../Popover';\nimport { PortalProps } from '../Portal';\nimport { TransitionOverride } from '../Transition';\nimport {\n ColorPicker,\n ColorPickerBaseProps,\n ColorPickerStylesNames,\n} from '../ColorPicker/ColorPicker';\nimport { convertHsvaTo, isColorValid, parseColor } from '../ColorPicker/converters';\nimport { EyeDropperIcon } from './EyeDropperIcon';\n\nexport type ColorInputStylesNames =\n | InputWrapperStylesNames\n | InputStylesNames\n | ColorPickerStylesNames\n | PopoverStylesNames;\n\nexport interface ColorInputProps\n extends InputWrapperBaseProps,\n InputSharedProps,\n ColorPickerBaseProps,\n DefaultProps<ColorInputStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'input'>, 'size' | 'onChange' | 'defaultValue' | 'value'> {\n /** Disallow free input */\n disallowInput?: boolean;\n\n /** call onChange with last valid value onBlur */\n fixOnBlur?: boolean;\n\n /** Dropdown element z-index */\n dropdownZIndex?: number;\n\n /** Display swatch with color preview on the left side of input */\n withPreview?: boolean;\n\n /** Props added to Transition component that used to animate dropdown presence, use to configure duration and animation type, { duration: 0, transition: 'fade' } by default */\n transitionProps?: TransitionOverride;\n\n /** Whether to render the dropdown in a Portal */\n withinPortal?: boolean;\n\n /** Props to pass down to the portal when withinPortal is true */\n portalProps?: PortalProps;\n\n /** Dropdown box-shadow, key of theme.shadows */\n shadow?: MantineShadow;\n\n /** Determines whether eye dropper button should be displayed in the right section, true by default */\n withEyeDropper?: boolean;\n\n /** Replaces default eye dropper icon */\n eyeDropperIcon?: React.ReactNode;\n\n /** Determines whether the dropdown should be closed when color swatch is clicked, false by default */\n closeOnColorSwatchClick?: boolean;\n}\n\nconst SWATCH_SIZES = {\n xs: rem(16),\n sm: rem(18),\n md: rem(22),\n lg: rem(28),\n xl: rem(36),\n};\n\nconst EYE_DROPPER_SIZES = {\n xs: rem(14),\n sm: rem(16),\n md: rem(18),\n lg: rem(20),\n xl: rem(22),\n};\n\nconst defaultProps: Partial<ColorInputProps> = {\n size: 'sm',\n format: 'hex',\n fixOnBlur: true,\n withPreview: true,\n swatchesPerRow: 10,\n withPicker: true,\n transitionProps: { transition: 'fade', duration: 0 },\n dropdownZIndex: getDefaultZIndex('popover'),\n withinPortal: true,\n shadow: 'md',\n withEyeDropper: true,\n};\n\nexport const ColorInput = forwardRef<HTMLInputElement, ColorInputProps>((props, ref) => {\n const {\n wrapperProps,\n inputProps,\n format,\n onChange,\n onChangeEnd,\n onFocus,\n onBlur,\n onClick,\n value,\n defaultValue,\n disallowInput,\n fixOnBlur,\n withPreview,\n swatchesPerRow,\n withPicker,\n icon,\n transitionProps,\n dropdownZIndex,\n withinPortal,\n portalProps,\n swatches,\n shadow,\n classNames,\n styles,\n unstyled,\n readOnly,\n withEyeDropper,\n eyeDropperIcon,\n rightSection,\n closeOnColorSwatchClick,\n disabled,\n ...others\n } = useInputProps('ColorInput', defaultProps, props);\n\n const theme = useMantineTheme();\n const [dropdownOpened, setDropdownOpened] = useState(false);\n const [lastValidValue, setLastValidValue] = useState('');\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const { supported: eyeDropperSupported, open: openEyeDropper } = useEyeDropper();\n\n const eyeDropper = (\n <ActionIcon\n sx={{ color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black }}\n size={inputProps.size}\n onClick={() =>\n openEyeDropper()\n .then(({ sRGBHex }) => setValue(convertHsvaTo(format, parseColor(sRGBHex))))\n .catch(noop)\n }\n >\n {eyeDropperIcon || (\n <EyeDropperIcon size={getSize({ size: inputProps.size, sizes: EYE_DROPPER_SIZES })} />\n )}\n </ActionIcon>\n );\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n onFocus?.(event);\n setDropdownOpened(true);\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n onBlur?.(event);\n setDropdownOpened(false);\n fixOnBlur && setValue(lastValidValue);\n };\n\n const handleInputClick = (event: React.MouseEvent<HTMLInputElement>) => {\n onClick?.(event);\n setDropdownOpened(true);\n };\n\n useEffect(() => {\n if (isColorValid(_value) || _value.trim() === '') {\n setLastValidValue(_value);\n }\n }, [_value]);\n\n useDidUpdate(() => {\n if (isColorValid(_value)) {\n setValue(convertHsvaTo(format, parseColor(_value)));\n }\n }, [format]);\n\n return (\n <Input.Wrapper {...wrapperProps} __staticSelector=\"ColorInput\">\n <Popover\n __staticSelector=\"ColorInput\"\n position=\"bottom-start\"\n offset={5}\n zIndex={dropdownZIndex}\n withinPortal={withinPortal}\n portalProps={portalProps}\n transitionProps={transitionProps}\n opened={dropdownOpened}\n shadow={shadow}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n disabled={\n readOnly || (withPicker === false && (!Array.isArray(swatches) || swatches.length === 0))\n }\n >\n <Popover.Target>\n <div>\n <Input<'input'>\n autoComplete=\"nope\"\n {...others}\n {...inputProps}\n disabled={disabled}\n ref={ref}\n __staticSelector=\"ColorInput\"\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n onClick={handleInputClick}\n spellCheck={false}\n value={_value}\n onChange={(event) => {\n const inputValue = event.currentTarget.value;\n setValue(inputValue);\n if (isColorValid(inputValue)) {\n onChangeEnd?.(convertHsvaTo(format, parseColor(inputValue)));\n }\n }}\n icon={\n icon ||\n (withPreview ? (\n <ColorSwatch\n color={isColorValid(_value) ? _value : '#fff'}\n size={getSize({ size: inputProps.size, sizes: SWATCH_SIZES })}\n />\n ) : null)\n }\n readOnly={disallowInput || readOnly}\n sx={{ cursor: disallowInput ? 'pointer' : undefined }}\n unstyled={unstyled}\n classNames={classNames}\n styles={styles}\n rightSection={\n rightSection ||\n (withEyeDropper && !disabled && !readOnly && eyeDropperSupported\n ? eyeDropper\n : null)\n }\n />\n </div>\n </Popover.Target>\n\n <Popover.Dropdown onMouseDown={(event) => event.preventDefault()} p={inputProps.size}>\n <ColorPicker\n __staticSelector=\"ColorInput\"\n value={_value}\n onChange={setValue}\n onChangeEnd={onChangeEnd}\n format={format}\n swatches={swatches}\n swatchesPerRow={swatchesPerRow}\n withPicker={withPicker}\n size={inputProps.size}\n focusable={false}\n unstyled={unstyled}\n styles={styles}\n classNames={classNames}\n onColorSwatchClick={() => closeOnColorSwatchClick && setDropdownOpened(false)}\n />\n </Popover.Dropdown>\n </Popover>\n </Input.Wrapper>\n );\n});\n\nColorInput.displayName = '@mantine/core/ColorInput';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ColorInput.js","sources":["../../src/ColorInput/ColorInput.tsx"],"sourcesContent":["import React, { useState, useEffect, forwardRef } from 'react';\nimport { useUncontrolled, useDidUpdate, useEyeDropper } from '@mantine/hooks';\nimport {\n DefaultProps,\n getDefaultZIndex,\n MantineShadow,\n useMantineTheme,\n rem,\n getSize,\n} from '@mantine/styles';\nimport { noop } from '@mantine/utils';\nimport {\n InputWrapperBaseProps,\n InputWrapperStylesNames,\n Input,\n InputSharedProps,\n InputStylesNames,\n useInputProps,\n} from '../Input';\nimport { ColorSwatch } from '../ColorSwatch';\nimport { ActionIcon } from '../ActionIcon';\nimport { Popover, PopoverStylesNames } from '../Popover';\nimport { PortalProps } from '../Portal';\nimport { TransitionOverride } from '../Transition';\nimport {\n ColorPicker,\n ColorPickerBaseProps,\n ColorPickerStylesNames,\n} from '../ColorPicker/ColorPicker';\nimport { convertHsvaTo, isColorValid, parseColor } from '../ColorPicker/converters';\nimport { EyeDropperIcon } from './EyeDropperIcon';\n\nexport type ColorInputStylesNames =\n | InputWrapperStylesNames\n | InputStylesNames\n | ColorPickerStylesNames\n | PopoverStylesNames;\n\nexport interface ColorInputProps\n extends InputWrapperBaseProps,\n InputSharedProps,\n ColorPickerBaseProps,\n DefaultProps<ColorInputStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'input'>, 'size' | 'onChange' | 'defaultValue' | 'value'> {\n /** Disallow free input */\n disallowInput?: boolean;\n\n /** call onChange with last valid value onBlur */\n fixOnBlur?: boolean;\n\n /** Dropdown element z-index */\n dropdownZIndex?: number;\n\n /** Display swatch with color preview on the left side of input */\n withPreview?: boolean;\n\n /** Props added to Transition component that used to animate dropdown presence, use to configure duration and animation type, { duration: 0, transition: 'fade' } by default */\n transitionProps?: TransitionOverride;\n\n /** Whether to render the dropdown in a Portal */\n withinPortal?: boolean;\n\n /** Props to pass down to the portal when withinPortal is true */\n portalProps?: Omit<PortalProps, 'children' | 'withinPortal'>;\n\n /** Dropdown box-shadow, key of theme.shadows */\n shadow?: MantineShadow;\n\n /** Determines whether eye dropper button should be displayed in the right section, true by default */\n withEyeDropper?: boolean;\n\n /** Replaces default eye dropper icon */\n eyeDropperIcon?: React.ReactNode;\n\n /** Determines whether the dropdown should be closed when color swatch is clicked, false by default */\n closeOnColorSwatchClick?: boolean;\n}\n\nconst SWATCH_SIZES = {\n xs: rem(16),\n sm: rem(18),\n md: rem(22),\n lg: rem(28),\n xl: rem(36),\n};\n\nconst EYE_DROPPER_SIZES = {\n xs: rem(14),\n sm: rem(16),\n md: rem(18),\n lg: rem(20),\n xl: rem(22),\n};\n\nconst defaultProps: Partial<ColorInputProps> = {\n size: 'sm',\n format: 'hex',\n fixOnBlur: true,\n withPreview: true,\n swatchesPerRow: 10,\n withPicker: true,\n transitionProps: { transition: 'fade', duration: 0 },\n dropdownZIndex: getDefaultZIndex('popover'),\n withinPortal: true,\n shadow: 'md',\n withEyeDropper: true,\n};\n\nexport const ColorInput = forwardRef<HTMLInputElement, ColorInputProps>((props, ref) => {\n const {\n wrapperProps,\n inputProps,\n format,\n onChange,\n onChangeEnd,\n onFocus,\n onBlur,\n onClick,\n value,\n defaultValue,\n disallowInput,\n fixOnBlur,\n withPreview,\n swatchesPerRow,\n withPicker,\n icon,\n transitionProps,\n dropdownZIndex,\n withinPortal,\n portalProps,\n swatches,\n shadow,\n classNames,\n styles,\n unstyled,\n readOnly,\n withEyeDropper,\n eyeDropperIcon,\n rightSection,\n closeOnColorSwatchClick,\n disabled,\n ...others\n } = useInputProps('ColorInput', defaultProps, props);\n\n const theme = useMantineTheme();\n const [dropdownOpened, setDropdownOpened] = useState(false);\n const [lastValidValue, setLastValidValue] = useState('');\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const { supported: eyeDropperSupported, open: openEyeDropper } = useEyeDropper();\n\n const eyeDropper = (\n <ActionIcon\n sx={{ color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black }}\n size={inputProps.size}\n onClick={() =>\n openEyeDropper()\n .then(({ sRGBHex }) => {\n const color = convertHsvaTo(format, parseColor(sRGBHex));\n setValue(color);\n onChangeEnd?.(color);\n })\n .catch(noop)\n }\n >\n {eyeDropperIcon || (\n <EyeDropperIcon size={getSize({ size: inputProps.size, sizes: EYE_DROPPER_SIZES })} />\n )}\n </ActionIcon>\n );\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n onFocus?.(event);\n setDropdownOpened(true);\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n fixOnBlur && setValue(lastValidValue);\n onBlur?.(event);\n setDropdownOpened(false);\n };\n\n const handleInputClick = (event: React.MouseEvent<HTMLInputElement>) => {\n onClick?.(event);\n setDropdownOpened(true);\n };\n\n useEffect(() => {\n if (isColorValid(_value) || _value.trim() === '') {\n setLastValidValue(_value);\n }\n }, [_value]);\n\n useDidUpdate(() => {\n if (isColorValid(_value)) {\n setValue(convertHsvaTo(format, parseColor(_value)));\n }\n }, [format]);\n\n return (\n <Input.Wrapper {...wrapperProps} __staticSelector=\"ColorInput\">\n <Popover\n __staticSelector=\"ColorInput\"\n position=\"bottom-start\"\n offset={5}\n zIndex={dropdownZIndex}\n withinPortal={withinPortal}\n portalProps={portalProps}\n transitionProps={transitionProps}\n opened={dropdownOpened}\n shadow={shadow}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n disabled={\n readOnly || (withPicker === false && (!Array.isArray(swatches) || swatches.length === 0))\n }\n >\n <Popover.Target>\n <div>\n <Input<'input'>\n autoComplete=\"nope\"\n {...others}\n {...inputProps}\n disabled={disabled}\n ref={ref}\n __staticSelector=\"ColorInput\"\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n onClick={handleInputClick}\n spellCheck={false}\n value={_value}\n onChange={(event) => {\n const inputValue = event.currentTarget.value;\n setValue(inputValue);\n if (isColorValid(inputValue)) {\n onChangeEnd?.(convertHsvaTo(format, parseColor(inputValue)));\n }\n }}\n icon={\n icon ||\n (withPreview ? (\n <ColorSwatch\n color={isColorValid(_value) ? _value : '#fff'}\n size={getSize({ size: inputProps.size, sizes: SWATCH_SIZES })}\n />\n ) : null)\n }\n readOnly={disallowInput || readOnly}\n sx={{ cursor: disallowInput ? 'pointer' : undefined }}\n unstyled={unstyled}\n classNames={classNames}\n styles={styles}\n rightSection={\n rightSection ||\n (withEyeDropper && !disabled && !readOnly && eyeDropperSupported\n ? eyeDropper\n : null)\n }\n />\n </div>\n </Popover.Target>\n\n <Popover.Dropdown onMouseDown={(event) => event.preventDefault()} p={inputProps.size}>\n <ColorPicker\n __staticSelector=\"ColorInput\"\n value={_value}\n onChange={setValue}\n onChangeEnd={onChangeEnd}\n format={format}\n swatches={swatches}\n swatchesPerRow={swatchesPerRow}\n withPicker={withPicker}\n size={inputProps.size}\n focusable={false}\n unstyled={unstyled}\n styles={styles}\n classNames={classNames}\n onColorSwatchClick={() => closeOnColorSwatchClick && setDropdownOpened(false)}\n />\n </Popover.Dropdown>\n </Popover>\n </Input.Wrapper>\n );\n});\n\nColorInput.displayName = '@mantine/core/ColorInput';\n"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ var useStyles = createStyles((theme, _params, { size }) => ({
31
31
  color: theme.colorScheme === "dark" ? theme.colors.dark[0] : theme.black,
32
32
  position: "relative",
33
33
  width: getSize({ size, sizes }),
34
- maxWidth: "100%",
34
+ maxWidth: `calc(100vw - ${theme.spacing.xl} * 2)`,
35
35
  minHeight: rem(50)
36
36
  }),
37
37
  closeButton: {
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.styles.js","sources":["../../src/Dialog/Dialog.styles.ts"],"sourcesContent":["import { createStyles, rem, getSize } from '@mantine/styles';\n\nconst sizes = {\n xs: rem(160),\n sm: rem(200),\n md: rem(340),\n lg: rem(400),\n xl: rem(500),\n};\n\nexport default createStyles((theme, _params, { size }) => ({\n root: {\n ...theme.fn.fontStyles(),\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n position: 'relative',\n width: getSize({ size, sizes }),\n maxWidth: '100%',\n minHeight: rem(50),\n },\n\n closeButton: {\n position: 'absolute',\n top: `calc(${theme.spacing.md} / 2)`,\n right: `calc(${theme.spacing.md} / 2)`,\n },\n}));\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dialog.styles.js","sources":["../../src/Dialog/Dialog.styles.ts"],"sourcesContent":["import { createStyles, rem, getSize } from '@mantine/styles';\n\nconst sizes = {\n xs: rem(160),\n sm: rem(200),\n md: rem(340),\n lg: rem(400),\n xl: rem(500),\n};\n\nexport default createStyles((theme, _params, { size }) => ({\n root: {\n ...theme.fn.fontStyles(),\n color: theme.colorScheme === 'dark' ? theme.colors.dark[0] : theme.black,\n position: 'relative',\n width: getSize({ size, sizes }),\n maxWidth: `calc(100vw - ${theme.spacing.xl} * 2)`,\n minHeight: rem(50),\n },\n\n closeButton: {\n position: 'absolute',\n top: `calc(${theme.spacing.md} / 2)`,\n right: `calc(${theme.spacing.md} / 2)`,\n },\n}));\n"],"names":[],"mappings":"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"}
package/esm/Menu/Menu.js CHANGED
@@ -132,7 +132,7 @@ function Menu(props) {
132
132
  }, /* @__PURE__ */ React.createElement(Popover, __spreadProps(__spreadValues({}, others), {
133
133
  radius,
134
134
  opened: _opened,
135
- onChange: setOpened,
135
+ onChange: toggleDropdown,
136
136
  defaultOpened,
137
137
  trapFocus: trigger === "click",
138
138
  closeOnEscape: closeOnEscape && trigger === "click",
@@ -140,8 +140,6 @@ function Menu(props) {
140
140
  classNames: __spreadProps(__spreadValues({}, classNames), { dropdown: cx(classes.dropdown, classNames == null ? void 0 : classNames.dropdown) }),
141
141
  styles,
142
142
  unstyled,
143
- onClose: close,
144
- onOpen: open,
145
143
  variant
146
144
  }), children));
147
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","sources":["../../src/Menu/Menu.tsx"],"sourcesContent":["import React from 'react';\nimport { getContextItemIndex, useHovered } from '@mantine/utils';\nimport { useDidUpdate, useUncontrolled } from '@mantine/hooks';\nimport { ClassNames, Styles, useComponentDefaultProps } from '@mantine/styles';\nimport { useDelayedHover } from '../Floating';\nimport { Popover, PopoverBaseProps, PopoverStylesNames } from '../Popover';\nimport { MenuDivider, MenuDividerStylesNames } from './MenuDivider/MenuDivider';\nimport { MenuDropdown } from './MenuDropdown/MenuDropdown';\nimport { MenuItem, MenuItemStylesNames } from './MenuItem/MenuItem';\nimport { MenuLabel, MenuLabelStylesName } from './MenuLabel/MenuLabel';\nimport { MenuTarget } from './MenuTarget/MenuTarget';\nimport { MenuContextProvider } from './Menu.context';\nimport { MenuTriggerEvent } from './Menu.types';\nimport useStyles from './Menu.styles';\n\nexport type MenuStylesNames =\n | MenuItemStylesNames\n | MenuLabelStylesName\n | MenuDividerStylesNames\n | PopoverStylesNames;\n\nexport interface MenuProps extends PopoverBaseProps {\n variant?: string;\n\n /** Menu content */\n children?: React.ReactNode;\n\n /** Controlled menu opened state */\n opened?: boolean;\n\n /** Uncontrolled menu initial opened state */\n defaultOpened?: boolean;\n\n /** Called when menu opened state changes */\n onChange?(opened: boolean): void;\n\n /** Called when Menu is opened */\n onOpen?(): void;\n\n /** Called when Menu is closed */\n onClose?(): void;\n\n /** Determines whether Menu should be closed when item is clicked */\n closeOnItemClick?: boolean;\n\n /** Determines whether arrow key presses should loop though items (first to last and last to first) */\n loop?: boolean;\n\n /** Determines whether dropdown should be closed when Escape key is pressed, defaults to true */\n closeOnEscape?: boolean;\n\n /** Event which should open menu */\n trigger?: MenuTriggerEvent;\n\n /** Open delay in ms, applicable only to trigger=\"hover\" variant */\n openDelay?: number;\n\n /** Close delay in ms, applicable only to trigger=\"hover\" variant */\n closeDelay?: number;\n\n /** Determines whether dropdown should be closed on outside clicks, default to true */\n closeOnClickOutside?: boolean;\n\n /** Events that trigger outside clicks */\n clickOutsideEvents?: string[];\n\n /** id base to create accessibility connections */\n id?: string;\n\n unstyled?: boolean;\n classNames?: ClassNames<MenuStylesNames>;\n styles?: Styles<MenuStylesNames>;\n}\n\nconst defaultProps: Partial<MenuProps> = {\n closeOnItemClick: true,\n loop: true,\n trigger: 'click',\n openDelay: 0,\n closeDelay: 100,\n};\n\nexport function Menu(props: MenuProps) {\n const {\n children,\n onOpen,\n onClose,\n opened,\n defaultOpened,\n onChange,\n closeOnItemClick,\n loop,\n closeOnEscape,\n trigger,\n openDelay,\n closeDelay,\n classNames,\n styles,\n unstyled,\n radius,\n variant,\n ...others\n } = useComponentDefaultProps('Menu', defaultProps, props);\n const { classes, cx } = useStyles();\n\n const [hovered, { setHovered, resetHovered }] = useHovered();\n const [_opened, setOpened] = useUncontrolled({\n value: opened,\n defaultValue: defaultOpened,\n finalValue: false,\n onChange,\n });\n\n const close = () => {\n setOpened(false);\n _opened && onClose?.();\n };\n\n const open = () => {\n setOpened(true);\n !_opened && onOpen?.();\n };\n\n const toggleDropdown = () => (_opened ? close() : open());\n\n const { openDropdown, closeDropdown } = useDelayedHover({ open, close, closeDelay, openDelay });\n\n const getItemIndex = (node: HTMLButtonElement) =>\n getContextItemIndex('[data-menu-item]', '[data-menu-dropdown]', node);\n\n useDidUpdate(() => {\n resetHovered();\n }, [_opened]);\n\n return (\n <MenuContextProvider\n value={{\n opened: _opened,\n toggleDropdown,\n getItemIndex,\n hovered,\n setHovered,\n closeOnItemClick,\n closeDropdown: trigger === 'click' ? close : closeDropdown,\n openDropdown: trigger === 'click' ? open : openDropdown,\n closeDropdownImmediately: close,\n loop,\n trigger,\n radius,\n classNames,\n styles,\n unstyled,\n variant,\n }}\n >\n <Popover\n {...others}\n radius={radius}\n opened={_opened}\n onChange={setOpened}\n defaultOpened={defaultOpened}\n trapFocus={trigger === 'click'}\n closeOnEscape={closeOnEscape && trigger === 'click'}\n __staticSelector=\"Menu\"\n classNames={{ ...classNames, dropdown: cx(classes.dropdown, classNames?.dropdown) }}\n styles={styles}\n unstyled={unstyled}\n onClose={close}\n onOpen={open}\n variant={variant}\n >\n {children}\n </Popover>\n </MenuContextProvider>\n );\n}\n\nMenu.displayName = '@mantine/core/Menu';\nMenu.Item = MenuItem;\nMenu.Label = MenuLabel;\nMenu.Dropdown = MenuDropdown;\nMenu.Target = MenuTarget;\nMenu.Divider = MenuDivider;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Menu.js","sources":["../../src/Menu/Menu.tsx"],"sourcesContent":["import React from 'react';\nimport { getContextItemIndex, useHovered } from '@mantine/utils';\nimport { useDidUpdate, useUncontrolled } from '@mantine/hooks';\nimport { ClassNames, Styles, useComponentDefaultProps } from '@mantine/styles';\nimport { useDelayedHover } from '../Floating';\nimport { Popover, PopoverBaseProps, PopoverStylesNames } from '../Popover';\nimport { MenuDivider, MenuDividerStylesNames } from './MenuDivider/MenuDivider';\nimport { MenuDropdown } from './MenuDropdown/MenuDropdown';\nimport { MenuItem, MenuItemStylesNames } from './MenuItem/MenuItem';\nimport { MenuLabel, MenuLabelStylesName } from './MenuLabel/MenuLabel';\nimport { MenuTarget } from './MenuTarget/MenuTarget';\nimport { MenuContextProvider } from './Menu.context';\nimport { MenuTriggerEvent } from './Menu.types';\nimport useStyles from './Menu.styles';\n\nexport type MenuStylesNames =\n | MenuItemStylesNames\n | MenuLabelStylesName\n | MenuDividerStylesNames\n | PopoverStylesNames;\n\nexport interface MenuProps extends PopoverBaseProps {\n variant?: string;\n\n /** Menu content */\n children?: React.ReactNode;\n\n /** Controlled menu opened state */\n opened?: boolean;\n\n /** Uncontrolled menu initial opened state */\n defaultOpened?: boolean;\n\n /** Called when menu opened state changes */\n onChange?(opened: boolean): void;\n\n /** Called when Menu is opened */\n onOpen?(): void;\n\n /** Called when Menu is closed */\n onClose?(): void;\n\n /** Determines whether Menu should be closed when item is clicked */\n closeOnItemClick?: boolean;\n\n /** Determines whether arrow key presses should loop though items (first to last and last to first) */\n loop?: boolean;\n\n /** Determines whether dropdown should be closed when Escape key is pressed, defaults to true */\n closeOnEscape?: boolean;\n\n /** Event which should open menu */\n trigger?: MenuTriggerEvent;\n\n /** Open delay in ms, applicable only to trigger=\"hover\" variant */\n openDelay?: number;\n\n /** Close delay in ms, applicable only to trigger=\"hover\" variant */\n closeDelay?: number;\n\n /** Determines whether dropdown should be closed on outside clicks, default to true */\n closeOnClickOutside?: boolean;\n\n /** Events that trigger outside clicks */\n clickOutsideEvents?: string[];\n\n /** id base to create accessibility connections */\n id?: string;\n\n unstyled?: boolean;\n classNames?: ClassNames<MenuStylesNames>;\n styles?: Styles<MenuStylesNames>;\n}\n\nconst defaultProps: Partial<MenuProps> = {\n closeOnItemClick: true,\n loop: true,\n trigger: 'click',\n openDelay: 0,\n closeDelay: 100,\n};\nexport function Menu(props: MenuProps) {\n const {\n children,\n onOpen,\n onClose,\n opened,\n defaultOpened,\n onChange,\n closeOnItemClick,\n loop,\n closeOnEscape,\n trigger,\n openDelay,\n closeDelay,\n classNames,\n styles,\n unstyled,\n radius,\n variant,\n ...others\n } = useComponentDefaultProps('Menu', defaultProps, props);\n const { classes, cx } = useStyles();\n\n const [hovered, { setHovered, resetHovered }] = useHovered();\n const [_opened, setOpened] = useUncontrolled({\n value: opened,\n defaultValue: defaultOpened,\n finalValue: false,\n onChange,\n });\n\n const close = () => {\n setOpened(false);\n _opened && onClose?.();\n };\n\n const open = () => {\n setOpened(true);\n !_opened && onOpen?.();\n };\n\n const toggleDropdown = () => (_opened ? close() : open());\n\n const { openDropdown, closeDropdown } = useDelayedHover({ open, close, closeDelay, openDelay });\n\n const getItemIndex = (node: HTMLButtonElement) =>\n getContextItemIndex('[data-menu-item]', '[data-menu-dropdown]', node);\n\n useDidUpdate(() => {\n resetHovered();\n }, [_opened]);\n\n return (\n <MenuContextProvider\n value={{\n opened: _opened,\n toggleDropdown,\n getItemIndex,\n hovered,\n setHovered,\n closeOnItemClick,\n closeDropdown: trigger === 'click' ? close : closeDropdown,\n openDropdown: trigger === 'click' ? open : openDropdown,\n closeDropdownImmediately: close,\n loop,\n trigger,\n radius,\n classNames,\n styles,\n unstyled,\n variant,\n }}\n >\n <Popover\n {...others}\n radius={radius}\n opened={_opened}\n onChange={toggleDropdown}\n defaultOpened={defaultOpened}\n trapFocus={trigger === 'click'}\n closeOnEscape={closeOnEscape && trigger === 'click'}\n __staticSelector=\"Menu\"\n classNames={{ ...classNames, dropdown: cx(classes.dropdown, classNames?.dropdown) }}\n styles={styles}\n unstyled={unstyled}\n variant={variant}\n >\n {children}\n </Popover>\n </MenuContextProvider>\n );\n}\n\nMenu.displayName = '@mantine/core/Menu';\nMenu.Item = MenuItem;\nMenu.Label = MenuLabel;\nMenu.Dropdown = MenuDropdown;\nMenu.Target = MenuTarget;\nMenu.Divider = MenuDivider;\n"],"names":[],"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;AAClE,IAAI,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK;AACrC,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;AAClB,EAAE,KAAK,IAAI,IAAI,IAAI,MAAM;AACzB,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AACpE,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,IAAI,MAAM,IAAI,IAAI,IAAI,mBAAmB;AAC3C,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;AAClD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;AACtE,QAAQ,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AACpC,KAAK;AACL,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAcF,MAAM,YAAY,GAAG;AACrB,EAAE,gBAAgB,EAAE,IAAI;AACxB,EAAE,IAAI,EAAE,IAAI;AACZ,EAAE,OAAO,EAAE,OAAO;AAClB,EAAE,SAAS,EAAE,CAAC;AACd,EAAE,UAAU,EAAE,GAAG;AACjB,CAAC,CAAC;AACK,SAAS,IAAI,CAAC,KAAK,EAAE;AAC5B,EAAE,MAAM,EAAE,GAAG,wBAAwB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE;AACpE,IAAI,QAAQ;AACZ,IAAI,MAAM;AACV,IAAI,OAAO;AACX,IAAI,MAAM;AACV,IAAI,aAAa;AACjB,IAAI,QAAQ;AACZ,IAAI,gBAAgB;AACpB,IAAI,IAAI;AACR,IAAI,aAAa;AACjB,IAAI,OAAO;AACX,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,UAAU;AACd,IAAI,MAAM;AACV,IAAI,QAAQ;AACZ,IAAI,MAAM;AACV,IAAI,OAAO;AACX,GAAG,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE;AACjC,IAAI,UAAU;AACd,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,IAAI,eAAe;AACnB,IAAI,UAAU;AACd,IAAI,kBAAkB;AACtB,IAAI,MAAM;AACV,IAAI,eAAe;AACnB,IAAI,SAAS;AACb,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,SAAS,EAAE,CAAC;AACtC,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC;AAC/D,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,eAAe,CAAC;AAC/C,IAAI,KAAK,EAAE,MAAM;AACjB,IAAI,YAAY,EAAE,aAAa;AAC/B,IAAI,UAAU,EAAE,KAAK;AACrB,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,KAAK,GAAG,MAAM;AACtB,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;AACrB,IAAI,OAAO,KAAK,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,EAAE,CAAC,CAAC;AACtD,GAAG,CAAC;AACJ,EAAE,MAAM,IAAI,GAAG,MAAM;AACrB,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;AACpB,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;AACrD,GAAG,CAAC;AACJ,EAAE,MAAM,cAAc,GAAG,MAAM,OAAO,GAAG,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC;AAC1D,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;AAClG,EAAE,MAAM,YAAY,GAAG,CAAC,IAAI,KAAK,mBAAmB,CAAC,kBAAkB,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC;AACvG,EAAE,YAAY,CAAC,MAAM;AACrB,IAAI,YAAY,EAAE,CAAC;AACnB,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AAChB,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,mBAAmB,EAAE;AAClE,IAAI,KAAK,EAAE;AACX,MAAM,MAAM,EAAE,OAAO;AACrB,MAAM,cAAc;AACpB,MAAM,YAAY;AAClB,MAAM,OAAO;AACb,MAAM,UAAU;AAChB,MAAM,gBAAgB;AACtB,MAAM,aAAa,EAAE,OAAO,KAAK,OAAO,GAAG,KAAK,GAAG,aAAa;AAChE,MAAM,YAAY,EAAE,OAAO,KAAK,OAAO,GAAG,IAAI,GAAG,YAAY;AAC7D,MAAM,wBAAwB,EAAE,KAAK;AACrC,MAAM,IAAI;AACV,MAAM,OAAO;AACb,MAAM,MAAM;AACZ,MAAM,UAAU;AAChB,MAAM,MAAM;AACZ,MAAM,QAAQ;AACd,MAAM,OAAO;AACb,KAAK;AACL,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE;AAC5F,IAAI,MAAM;AACV,IAAI,MAAM,EAAE,OAAO;AACnB,IAAI,QAAQ,EAAE,cAAc;AAC5B,IAAI,aAAa;AACjB,IAAI,SAAS,EAAE,OAAO,KAAK,OAAO;AAClC,IAAI,aAAa,EAAE,aAAa,IAAI,OAAO,KAAK,OAAO;AACvD,IAAI,gBAAgB,EAAE,MAAM;AAC5B,IAAI,UAAU,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;AACpJ,IAAI,MAAM;AACV,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;AACjB,CAAC;AACD,IAAI,CAAC,WAAW,GAAG,oBAAoB,CAAC;AACxC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;AACrB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;AACvB,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC;AAC7B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;AACzB,IAAI,CAAC,OAAO,GAAG,WAAW;;;;"}
@@ -13,6 +13,7 @@ import { NativeScrollArea } from './NativeScrollArea/NativeScrollArea.js';
13
13
  import { useLockScroll } from './use-lock-scroll.js';
14
14
  import useStyles from './ModalBase.styles.js';
15
15
  import { OptionalPortal } from '../Portal/OptionalPortal.js';
16
+ import { Box } from '../Box/Box.js';
16
17
 
17
18
  var __defProp = Object.defineProperty;
18
19
  var __defProps = Object.defineProperties;
@@ -129,10 +130,10 @@ function ModalBase(props) {
129
130
  }
130
131
  });
131
132
  useFocusReturn({ opened, shouldReturnFocus: trapFocus && returnFocus });
132
- return /* @__PURE__ */ React.createElement(OptionalPortal, __spreadValues({
133
+ return /* @__PURE__ */ React.createElement(OptionalPortal, __spreadProps(__spreadValues({}, portalProps), {
133
134
  withinPortal,
134
135
  target
135
- }, portalProps), /* @__PURE__ */ React.createElement(ModalBaseProvider, {
136
+ }), /* @__PURE__ */ React.createElement(ModalBaseProvider, {
136
137
  value: {
137
138
  __staticSelector,
138
139
  opened,
@@ -162,7 +163,7 @@ function ModalBase(props) {
162
163
  }
163
164
  }, /* @__PURE__ */ React.createElement(RemoveScroll, {
164
165
  enabled: shouldLockScroll && lockScroll
165
- }, /* @__PURE__ */ React.createElement("div", __spreadValues({
166
+ }, /* @__PURE__ */ React.createElement(Box, __spreadValues({
166
167
  className: cx(classes.root, className)
167
168
  }, others), children))));
168
169
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ModalBase.js","sources":["../../src/ModalBase/ModalBase.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React, { useState } from 'react';\nimport { RemoveScroll } from 'react-remove-scroll';\nimport { useId, useWindowEvent, useFocusReturn } from '@mantine/hooks';\nimport {\n getDefaultZIndex,\n MantineNumberSize,\n useComponentDefaultProps,\n ClassNames,\n Styles,\n MantineShadow,\n Selectors,\n} from '@mantine/styles';\nimport { OptionalPortal, PortalProps } from '../Portal';\nimport { TransitionOverride } from '../Transition';\nimport { ModalBaseProvider } from './ModalBase.context';\nimport {\n ModalBaseCloseButton,\n ModalBaseCloseButtonStylesNames,\n} from './ModalBaseCloseButton/ModalBaseCloseButton';\nimport { ModalBaseOverlay, ModalBaseOverlayStylesNames } from './ModalBaseOverlay/ModalBaseOverlay';\nimport { ModalBaseContent, ModalBaseContentStylesNames } from './ModalBaseContent/ModalBaseContent';\nimport { ModalBaseHeader, ModalBaseHeaderStylesNames } from './ModalBaseHeader/ModalBaseHeader';\nimport { ModalBaseTitle, ModalBaseTitleStylesNames } from './ModalBaseTitle/ModalBaseTitle';\nimport { ModalBaseBody, ModalBaseBodyStylesNames } from './ModalBaseBody/ModalBaseBody';\nimport { NativeScrollArea } from './NativeScrollArea/NativeScrollArea';\nimport { useLockScroll } from './use-lock-scroll';\nimport useStyles from './ModalBase.styles';\n\nexport type ModalBaseStylesNames =\n | Selectors<typeof useStyles>\n | ModalBaseCloseButtonStylesNames\n | ModalBaseOverlayStylesNames\n | ModalBaseContentStylesNames\n | ModalBaseHeaderStylesNames\n | ModalBaseTitleStylesNames\n | ModalBaseBodyStylesNames;\n\nexport interface ModalBaseSettings extends React.ComponentPropsWithoutRef<'div'> {\n variant?: string;\n classNames?: ClassNames<ModalBaseStylesNames>;\n styles?: Styles<ModalBaseStylesNames>;\n unstyled?: boolean;\n\n /** If set modal/drawer will not be unmounted from the DOM when it is hidden, display: none styles will be added instead */\n keepMounted?: boolean;\n\n /** Determines whether modal/drawer is opened */\n opened: boolean;\n\n /** Called when modal/drawer is closed */\n onClose(): void;\n\n /** Child component */\n children?: React.ReactNode;\n\n /** Determines whether the modal/drawer should be closed when user clicks on the overlay, true by default */\n closeOnClickOutside?: boolean;\n\n /** Props added to Transition component that used to animate overlay and body, use to configure duration and animation type, { duration: 200, transition: 'pop' } by default */\n transitionProps?: TransitionOverride;\n\n /** Determines whether component should be rendered inside Portal, true by default */\n withinPortal?: boolean;\n\n /** Props to pass down to the portal when withinPortal is true */\n portalProps?: Omit<PortalProps, 'target'>;\n\n /** Target element or selector where Portal should be rendered, by default new element is created and appended to the document.body */\n target?: HTMLElement | string;\n\n /** Determines whether scroll should be locked when opened={true}, defaults to true */\n lockScroll?: boolean;\n\n /** Determines whether focus should be trapped, true by default */\n trapFocus?: boolean;\n\n /** z-index CSS property of root element, 200 by default */\n zIndex?: number;\n\n /** Key of theme.spacing or any valid CSS value to set content, header and footer padding, 'md' by default */\n padding?: MantineNumberSize;\n\n /** Id used to connect modal/drawer with body and title */\n id?: string;\n\n /** Determines whether focus should be returned to the last active element onClose is called, true by default */\n returnFocus?: boolean;\n\n /** Determines whether onClose should be called when user presses escape key, true by default */\n closeOnEscape?: boolean;\n\n /** Controls content width, 'md' by default */\n size?: MantineNumberSize;\n\n /** Key of theme.shadows or any valid css box-shadow value, 'xl' by default */\n shadow?: MantineShadow;\n}\n\nexport interface ModalBaseProps extends ModalBaseSettings {\n /** Base component name for styles and components default props */\n __staticSelector: string;\n}\n\nexport const ModalBaseDefaultProps: Partial<ModalBaseProps> = {\n closeOnClickOutside: true,\n withinPortal: true,\n lockScroll: true,\n trapFocus: true,\n returnFocus: true,\n closeOnEscape: true,\n keepMounted: false,\n zIndex: getDefaultZIndex('modal'),\n padding: 'md',\n size: 'md',\n shadow: 'xl',\n};\n\nexport function ModalBase(props: ModalBaseProps) {\n const {\n opened,\n onClose,\n children,\n closeOnClickOutside,\n __staticSelector,\n transitionProps,\n withinPortal,\n portalProps,\n keepMounted,\n target,\n zIndex,\n lockScroll,\n trapFocus,\n closeOnEscape,\n returnFocus,\n padding,\n shadow,\n id,\n size,\n variant,\n classNames,\n unstyled,\n styles,\n className,\n ...others\n } = useComponentDefaultProps('ModalBase', ModalBaseDefaultProps, props);\n\n const { classes, cx } = useStyles(null, {\n name: __staticSelector,\n classNames,\n styles,\n unstyled,\n variant,\n size,\n });\n\n const _id = useId(id);\n const [titleMounted, setTitleMounted] = useState(false);\n const [bodyMounted, setBodyMounted] = useState(false);\n\n const transitionDuration =\n typeof transitionProps?.duration === 'number' ? transitionProps?.duration : 200;\n\n const shouldLockScroll = useLockScroll({ opened, transitionDuration });\n\n useWindowEvent('keydown', (event) => {\n if (!trapFocus && event.key === 'Escape' && closeOnEscape) {\n onClose();\n }\n });\n\n useFocusReturn({ opened, shouldReturnFocus: trapFocus && returnFocus });\n\n return (\n <OptionalPortal withinPortal={withinPortal} target={target} {...portalProps}>\n <ModalBaseProvider\n value={{\n __staticSelector,\n opened,\n onClose,\n closeOnClickOutside,\n transitionProps: { ...transitionProps, duration: transitionDuration, keepMounted },\n zIndex,\n padding,\n id: _id,\n getTitleId: () => `${_id}-title`,\n getBodyId: () => `${_id}-body`,\n titleMounted,\n bodyMounted,\n setTitleMounted,\n setBodyMounted,\n trapFocus,\n closeOnEscape,\n shadow,\n stylesApi: {\n name: __staticSelector,\n size,\n variant,\n classNames,\n styles,\n unstyled,\n },\n }}\n >\n <RemoveScroll enabled={shouldLockScroll && lockScroll}>\n <div className={cx(classes.root, className)} {...others}>\n {children}\n </div>\n </RemoveScroll>\n </ModalBaseProvider>\n </OptionalPortal>\n );\n}\n\nModalBase.CloseButton = ModalBaseCloseButton;\nModalBase.Overlay = ModalBaseOverlay;\nModalBase.Content = ModalBaseContent;\nModalBase.Header = ModalBaseHeader;\nModalBase.Title = ModalBaseTitle;\nModalBase.Body = ModalBaseBody;\nModalBase.NativeScrollArea = NativeScrollArea;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModalBase.js","sources":["../../src/ModalBase/ModalBase.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React, { useState } from 'react';\nimport { RemoveScroll } from 'react-remove-scroll';\nimport { useId, useWindowEvent, useFocusReturn } from '@mantine/hooks';\nimport {\n getDefaultZIndex,\n MantineNumberSize,\n useComponentDefaultProps,\n ClassNames,\n Styles,\n MantineShadow,\n Selectors,\n DefaultProps,\n} from '@mantine/styles';\nimport { OptionalPortal, PortalProps } from '../Portal';\nimport { TransitionOverride } from '../Transition';\nimport { Box } from '../Box';\nimport { ModalBaseProvider } from './ModalBase.context';\nimport {\n ModalBaseCloseButton,\n ModalBaseCloseButtonStylesNames,\n} from './ModalBaseCloseButton/ModalBaseCloseButton';\nimport { ModalBaseOverlay, ModalBaseOverlayStylesNames } from './ModalBaseOverlay/ModalBaseOverlay';\nimport { ModalBaseContent, ModalBaseContentStylesNames } from './ModalBaseContent/ModalBaseContent';\nimport { ModalBaseHeader, ModalBaseHeaderStylesNames } from './ModalBaseHeader/ModalBaseHeader';\nimport { ModalBaseTitle, ModalBaseTitleStylesNames } from './ModalBaseTitle/ModalBaseTitle';\nimport { ModalBaseBody, ModalBaseBodyStylesNames } from './ModalBaseBody/ModalBaseBody';\nimport { NativeScrollArea } from './NativeScrollArea/NativeScrollArea';\nimport { useLockScroll } from './use-lock-scroll';\nimport useStyles from './ModalBase.styles';\n\nexport type ModalBaseStylesNames =\n | Selectors<typeof useStyles>\n | ModalBaseCloseButtonStylesNames\n | ModalBaseOverlayStylesNames\n | ModalBaseContentStylesNames\n | ModalBaseHeaderStylesNames\n | ModalBaseTitleStylesNames\n | ModalBaseBodyStylesNames;\n\nexport interface ModalBaseSettings extends DefaultProps, React.ComponentPropsWithoutRef<'div'> {\n variant?: string;\n classNames?: ClassNames<ModalBaseStylesNames>;\n styles?: Styles<ModalBaseStylesNames>;\n unstyled?: boolean;\n\n /** If set modal/drawer will not be unmounted from the DOM when it is hidden, display: none styles will be added instead */\n keepMounted?: boolean;\n\n /** Determines whether modal/drawer is opened */\n opened: boolean;\n\n /** Called when modal/drawer is closed */\n onClose(): void;\n\n /** Child component */\n children?: React.ReactNode;\n\n /** Determines whether the modal/drawer should be closed when user clicks on the overlay, true by default */\n closeOnClickOutside?: boolean;\n\n /** Props added to Transition component that used to animate overlay and body, use to configure duration and animation type, { duration: 200, transition: 'pop' } by default */\n transitionProps?: TransitionOverride;\n\n /** Determines whether component should be rendered inside Portal, true by default */\n withinPortal?: boolean;\n\n /** Props to pass down to the portal when withinPortal is true */\n portalProps?: Omit<PortalProps, 'children' | 'withinPortal' | 'target'>;\n\n /** Target element or selector where Portal should be rendered, by default new element is created and appended to the document.body */\n target?: HTMLElement | string;\n\n /** Determines whether scroll should be locked when opened={true}, defaults to true */\n lockScroll?: boolean;\n\n /** Determines whether focus should be trapped, true by default */\n trapFocus?: boolean;\n\n /** z-index CSS property of root element, 200 by default */\n zIndex?: number;\n\n /** Key of theme.spacing or any valid CSS value to set content, header and footer padding, 'md' by default */\n padding?: MantineNumberSize;\n\n /** Id used to connect modal/drawer with body and title */\n id?: string;\n\n /** Determines whether focus should be returned to the last active element onClose is called, true by default */\n returnFocus?: boolean;\n\n /** Determines whether onClose should be called when user presses escape key, true by default */\n closeOnEscape?: boolean;\n\n /** Controls content width, 'md' by default */\n size?: MantineNumberSize;\n\n /** Key of theme.shadows or any valid css box-shadow value, 'xl' by default */\n shadow?: MantineShadow;\n}\n\nexport interface ModalBaseProps extends ModalBaseSettings {\n /** Base component name for styles and components default props */\n __staticSelector: string;\n}\n\nexport const ModalBaseDefaultProps: Partial<ModalBaseProps> = {\n closeOnClickOutside: true,\n withinPortal: true,\n lockScroll: true,\n trapFocus: true,\n returnFocus: true,\n closeOnEscape: true,\n keepMounted: false,\n zIndex: getDefaultZIndex('modal'),\n padding: 'md',\n size: 'md',\n shadow: 'xl',\n};\n\nexport function ModalBase(props: ModalBaseProps) {\n const {\n opened,\n onClose,\n children,\n closeOnClickOutside,\n __staticSelector,\n transitionProps,\n withinPortal,\n portalProps,\n keepMounted,\n target,\n zIndex,\n lockScroll,\n trapFocus,\n closeOnEscape,\n returnFocus,\n padding,\n shadow,\n id,\n size,\n variant,\n classNames,\n unstyled,\n styles,\n className,\n ...others\n } = useComponentDefaultProps('ModalBase', ModalBaseDefaultProps, props);\n\n const { classes, cx } = useStyles(null, {\n name: __staticSelector,\n classNames,\n styles,\n unstyled,\n variant,\n size,\n });\n\n const _id = useId(id);\n const [titleMounted, setTitleMounted] = useState(false);\n const [bodyMounted, setBodyMounted] = useState(false);\n\n const transitionDuration =\n typeof transitionProps?.duration === 'number' ? transitionProps?.duration : 200;\n\n const shouldLockScroll = useLockScroll({ opened, transitionDuration });\n\n useWindowEvent('keydown', (event) => {\n if (!trapFocus && event.key === 'Escape' && closeOnEscape) {\n onClose();\n }\n });\n\n useFocusReturn({ opened, shouldReturnFocus: trapFocus && returnFocus });\n\n return (\n <OptionalPortal {...portalProps} withinPortal={withinPortal} target={target}>\n <ModalBaseProvider\n value={{\n __staticSelector,\n opened,\n onClose,\n closeOnClickOutside,\n transitionProps: { ...transitionProps, duration: transitionDuration, keepMounted },\n zIndex,\n padding,\n id: _id,\n getTitleId: () => `${_id}-title`,\n getBodyId: () => `${_id}-body`,\n titleMounted,\n bodyMounted,\n setTitleMounted,\n setBodyMounted,\n trapFocus,\n closeOnEscape,\n shadow,\n stylesApi: {\n name: __staticSelector,\n size,\n variant,\n classNames,\n styles,\n unstyled,\n },\n }}\n >\n <RemoveScroll enabled={shouldLockScroll && lockScroll}>\n <Box className={cx(classes.root, className)} {...others}>\n {children}\n </Box>\n </RemoveScroll>\n </ModalBaseProvider>\n </OptionalPortal>\n );\n}\n\nModalBase.CloseButton = ModalBaseCloseButton;\nModalBase.Overlay = ModalBaseOverlay;\nModalBase.Content = ModalBaseContent;\nModalBase.Header = ModalBaseHeader;\nModalBase.Title = ModalBaseTitle;\nModalBase.Body = ModalBaseBody;\nModalBase.NativeScrollArea = NativeScrollArea;\n"],"names":[],"mappings":"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"}
@@ -479,7 +479,7 @@ const MultiSelect = forwardRef((props, ref) => {
479
479
  };
480
480
  }
481
481
  return selectedItem;
482
- }).filter((val) => !!val).map((item) => /* @__PURE__ */ React.createElement(Value, __spreadProps(__spreadValues({}, item), {
482
+ }).filter((val) => !!val).map((item, index) => /* @__PURE__ */ React.createElement(Value, __spreadProps(__spreadValues({}, item), {
483
483
  variant,
484
484
  disabled,
485
485
  className: classes.value,
@@ -493,7 +493,8 @@ const MultiSelect = forwardRef((props, ref) => {
493
493
  size,
494
494
  styles,
495
495
  classNames,
496
- radius
496
+ radius,
497
+ index
497
498
  })));
498
499
  const isItemSelected = (itemValue) => _value.includes(itemValue);
499
500
  const handleClear = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"MultiSelect.js","sources":["../../src/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef } from 'react';\nimport {\n useUncontrolled,\n useMergedRef,\n useDidUpdate,\n useScrollIntoView,\n useId,\n} from '@mantine/hooks';\nimport {\n DefaultProps,\n Selectors,\n getDefaultZIndex,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { groupOptions } from '@mantine/utils';\nimport { extractSystemStyles } from '../Box';\nimport { Input } from '../Input';\nimport { DefaultValue, DefaultValueStylesNames } from './DefaultValue/DefaultValue';\nimport { DefaultItem } from '../Select/DefaultItem/DefaultItem';\nimport { filterData } from './filter-data/filter-data';\nimport { getSelectRightSectionProps } from '../Select/SelectRightSection/get-select-right-section-props';\nimport { SelectScrollArea } from '../Select/SelectScrollArea/SelectScrollArea';\nimport { SelectPopover } from '../Select/SelectPopover/SelectPopover';\nimport { SelectItem, BaseSelectProps, BaseSelectStylesNames } from '../Select/types';\nimport { SelectItems } from '../Select/SelectItems/SelectItems';\nimport useStyles from './MultiSelect.styles';\nimport { SelectSharedProps } from '../Select/Select';\n\nexport type MultiSelectStylesNames =\n | DefaultValueStylesNames\n | Exclude<\n Selectors<typeof useStyles>,\n 'searchInputEmpty' | 'searchInputInputHidden' | 'searchInputPointer'\n >\n | Exclude<BaseSelectStylesNames, 'selected'>;\n\nexport interface MultiSelectProps\n extends DefaultProps<MultiSelectStylesNames>,\n BaseSelectProps,\n Omit<SelectSharedProps<SelectItem, string[]>, 'filter'> {\n /** Component used to render values */\n valueComponent?: React.FC<any>;\n\n /** Maximum dropdown height */\n maxDropdownHeight?: number | string;\n\n /** Enable items searching */\n searchable?: boolean;\n\n /** Function based on which items in dropdown are filtered */\n filter?(value: string, selected: boolean, item: SelectItem): boolean;\n\n /** Clear search value when item is selected */\n clearSearchOnChange?: boolean;\n\n /** Allow to clear item */\n clearable?: boolean;\n\n /** Disable removing selected items from the list */\n disableSelectedItemFiltering?: boolean;\n\n /** Clear search field value on blur */\n clearSearchOnBlur?: boolean;\n\n /** Called each time search query changes */\n onSearchChange?(query: string): void;\n\n /** Controlled search input value */\n searchValue?: string;\n\n /** Hovers the first result when search query changes */\n hoverOnSearchChange?: boolean;\n\n /** Allow creatable option */\n creatable?: boolean;\n\n /** Function to get create Label */\n getCreateLabel?(query: string): React.ReactNode;\n\n /** Function to determine if create label should be displayed */\n shouldCreate?(query: string, data: SelectItem[]): boolean;\n\n /** Called when create option is selected */\n onCreate?(query: string): SelectItem | string | null | undefined;\n\n /** Change dropdown component, can be used to add custom scrollbars */\n dropdownComponent?: any;\n\n /** Limit amount of items selected */\n maxSelectedValues?: number;\n\n /** Select highlighted item on blur */\n selectOnBlur?: boolean;\n\n /** Props added to clear button */\n clearButtonProps?: React.ComponentPropsWithoutRef<'button'>;\n}\n\nexport function defaultFilter(value: string, selected: boolean, item: SelectItem) {\n if (selected) {\n return false;\n }\n return item.label.toLowerCase().trim().includes(value.toLowerCase().trim());\n}\n\nexport function defaultShouldCreate(query: string, data: SelectItem[]) {\n return !!query && !data.some((item) => item.value.toLowerCase() === query.toLowerCase());\n}\n\nfunction filterValue(value: string[], data: ReadonlyArray<string | SelectItem>): string[] {\n if (!Array.isArray(value)) {\n return undefined;\n }\n\n if (data.length === 0) {\n return [];\n }\n\n const flatData: string[] = data.map((item) => {\n if (typeof item === 'object') {\n return item.value;\n }\n return item;\n });\n return value.filter((val) => flatData.includes(val));\n}\n\nconst defaultProps: Partial<MultiSelectProps> = {\n size: 'sm',\n valueComponent: DefaultValue,\n itemComponent: DefaultItem,\n transitionProps: { transition: 'fade', duration: 0 },\n maxDropdownHeight: 220,\n shadow: 'sm',\n searchable: false,\n filter: defaultFilter,\n limit: Infinity,\n clearSearchOnChange: true,\n clearable: false,\n clearSearchOnBlur: false,\n disabled: false,\n initiallyOpened: false,\n creatable: false,\n shouldCreate: defaultShouldCreate,\n switchDirectionOnFlip: false,\n zIndex: getDefaultZIndex('popover'),\n selectOnBlur: false,\n positionDependencies: [],\n dropdownPosition: 'flip',\n};\n\nexport const MultiSelect = forwardRef<HTMLInputElement, MultiSelectProps>((props, ref) => {\n const {\n className,\n style,\n required,\n label,\n description,\n size,\n error,\n classNames,\n styles,\n wrapperProps,\n value,\n defaultValue,\n data,\n onChange,\n valueComponent: Value,\n itemComponent,\n id,\n transitionProps,\n maxDropdownHeight,\n shadow,\n nothingFound,\n onFocus,\n onBlur,\n searchable,\n placeholder,\n filter,\n limit,\n clearSearchOnChange,\n clearable,\n clearSearchOnBlur,\n variant,\n onSearchChange,\n searchValue,\n disabled,\n initiallyOpened,\n radius,\n icon,\n rightSection,\n rightSectionWidth,\n creatable,\n getCreateLabel,\n shouldCreate,\n onCreate,\n sx,\n dropdownComponent,\n onDropdownClose,\n onDropdownOpen,\n maxSelectedValues,\n withinPortal,\n switchDirectionOnFlip,\n zIndex,\n selectOnBlur,\n name,\n dropdownPosition,\n errorProps,\n labelProps,\n descriptionProps,\n form,\n positionDependencies,\n onKeyDown,\n unstyled,\n inputContainer,\n inputWrapperOrder,\n readOnly,\n withAsterisk,\n clearButtonProps,\n hoverOnSearchChange,\n disableSelectedItemFiltering,\n ...others\n } = useComponentDefaultProps('MultiSelect', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { invalid: !!error },\n { name: 'MultiSelect', classNames, styles, unstyled, size, variant }\n );\n const { systemStyles, rest } = extractSystemStyles(others);\n const inputRef = useRef<HTMLInputElement>();\n const itemsRefs = useRef<Record<string, HTMLDivElement>>({});\n const uuid = useId(id);\n const [dropdownOpened, setDropdownOpened] = useState(initiallyOpened);\n const [hovered, setHovered] = useState(-1);\n const [direction, setDirection] = useState<React.CSSProperties['flexDirection']>('column');\n const [_searchValue, handleSearchChange] = useUncontrolled({\n value: searchValue,\n defaultValue: '',\n finalValue: undefined,\n onChange: onSearchChange,\n });\n const [IMEOpen, setIMEOpen] = useState(false);\n\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n const isCreatable = creatable && typeof getCreateLabel === 'function';\n let createLabel = null;\n\n const formattedData = data.map((item) =>\n typeof item === 'string' ? { label: item, value: item } : item\n );\n\n const sortedData = groupOptions({ data: formattedData });\n\n const [_value, setValue] = useUncontrolled({\n value: filterValue(value, data),\n defaultValue: filterValue(defaultValue, data),\n finalValue: [],\n onChange,\n });\n\n const valuesOverflow = useRef(!!maxSelectedValues && maxSelectedValues < _value.length);\n\n const handleValueRemove = (_val: string) => {\n if (!readOnly) {\n const newValue = _value.filter((val) => val !== _val);\n setValue(newValue);\n\n if (!!maxSelectedValues && newValue.length < maxSelectedValues) {\n valuesOverflow.current = false;\n }\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n handleSearchChange(event.currentTarget.value);\n !disabled && !valuesOverflow.current && searchable && setDropdownOpened(true);\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n !disabled && !valuesOverflow.current && searchable && setDropdownOpened(true);\n };\n\n const filteredData = filterData({\n data: sortedData,\n searchable,\n searchValue: _searchValue,\n limit,\n filter,\n value: _value,\n disableSelectedItemFiltering,\n });\n\n const getNextIndex = (\n index: number,\n nextItem: (index: number) => number,\n compareFn: (index: number) => boolean\n ) => {\n let i = index;\n while (compareFn(i)) {\n i = nextItem(i);\n if (!filteredData[i].disabled) return i;\n }\n return index;\n };\n\n useDidUpdate(() => {\n if (hoverOnSearchChange && _searchValue) {\n setHovered(0);\n } else {\n setHovered(-1);\n }\n }, [_searchValue, hoverOnSearchChange]);\n\n useDidUpdate(() => {\n if (!disabled && _value.length > data.length) {\n setDropdownOpened(false);\n }\n\n if (!!maxSelectedValues && _value.length < maxSelectedValues) {\n valuesOverflow.current = false;\n }\n\n if (!!maxSelectedValues && _value.length >= maxSelectedValues) {\n valuesOverflow.current = true;\n setDropdownOpened(false);\n }\n }, [_value]);\n\n const handleItemSelect = (item: SelectItem) => {\n if (!readOnly) {\n clearSearchOnChange && handleSearchChange('');\n\n if (_value.includes(item.value)) {\n handleValueRemove(item.value);\n } else {\n if (item.creatable && typeof onCreate === 'function') {\n const createdItem = onCreate(item.value);\n if (typeof createdItem !== 'undefined' && createdItem !== null) {\n if (typeof createdItem === 'string') {\n setValue([..._value, createdItem]);\n } else {\n setValue([..._value, createdItem.value]);\n }\n }\n } else {\n setValue([..._value, item.value]);\n }\n\n if (_value.length === maxSelectedValues - 1) {\n valuesOverflow.current = true;\n setDropdownOpened(false);\n }\n if (hovered === filteredData.length - 1) {\n setHovered(filteredData.length - 2);\n }\n if (filteredData.length === 1) {\n setDropdownOpened(false);\n }\n }\n }\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n if (selectOnBlur && filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n }\n clearSearchOnBlur && handleSearchChange('');\n setDropdownOpened(false);\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (IMEOpen) {\n return;\n }\n\n onKeyDown?.(event);\n\n if (readOnly) {\n return;\n }\n\n if (event.key !== 'Backspace' && !!maxSelectedValues && valuesOverflow.current) {\n return;\n }\n\n const isColumn = direction === 'column';\n\n const handleNext = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index + 1,\n (index) => index < filteredData.length - 1\n );\n\n if (dropdownOpened) {\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n\n return nextIndex;\n });\n };\n\n const handlePrevious = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index - 1,\n (index) => index > 0\n );\n\n if (dropdownOpened) {\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: isColumn ? 'start' : 'end',\n });\n }\n\n return nextIndex;\n });\n };\n\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n setDropdownOpened(true);\n\n isColumn ? handlePrevious() : handleNext();\n\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n setDropdownOpened(true);\n\n isColumn ? handleNext() : handlePrevious();\n\n break;\n }\n\n case 'Enter': {\n event.preventDefault();\n\n if (filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n }\n\n break;\n }\n\n case ' ': {\n if (!searchable) {\n event.preventDefault();\n if (filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n }\n }\n\n break;\n }\n\n case 'Backspace': {\n if (_value.length > 0 && _searchValue.length === 0) {\n setValue(_value.slice(0, -1));\n setDropdownOpened(true);\n if (maxSelectedValues) {\n valuesOverflow.current = false;\n }\n }\n\n break;\n }\n\n case 'Home': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const firstItemIndex = filteredData.findIndex((item) => !item.disabled);\n setHovered(firstItemIndex);\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n break;\n }\n\n case 'End': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const lastItemIndex = filteredData.map((item) => !!item.disabled).lastIndexOf(false);\n setHovered(lastItemIndex);\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n break;\n }\n\n case 'Escape': {\n setDropdownOpened(false);\n }\n }\n };\n\n const selectedItems = _value\n .map((val) => {\n let selectedItem = sortedData.find((item) => item.value === val && !item.disabled);\n if (!selectedItem && isCreatable) {\n selectedItem = {\n value: val,\n label: val,\n };\n }\n return selectedItem;\n })\n .filter((val) => !!val)\n .map((item) => (\n <Value\n {...item}\n variant={variant}\n disabled={disabled}\n className={classes.value}\n readOnly={readOnly}\n onRemove={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.preventDefault();\n event.stopPropagation();\n handleValueRemove(item.value);\n }}\n key={item.value}\n size={size}\n styles={styles}\n classNames={classNames}\n radius={radius}\n />\n ));\n\n const isItemSelected = (itemValue: string) => _value.includes(itemValue);\n\n const handleClear = () => {\n handleSearchChange('');\n setValue([]);\n inputRef.current?.focus();\n if (maxSelectedValues) {\n valuesOverflow.current = false;\n }\n };\n\n if (isCreatable && shouldCreate(_searchValue, sortedData)) {\n createLabel = getCreateLabel(_searchValue);\n filteredData.push({ label: _searchValue, value: _searchValue, creatable: true });\n }\n\n const shouldRenderDropdown =\n !readOnly && (filteredData.length > 0 ? dropdownOpened : dropdownOpened && !!nothingFound);\n\n useDidUpdate(() => {\n const handler = shouldRenderDropdown ? onDropdownOpen : onDropdownClose;\n typeof handler === 'function' && handler();\n }, [shouldRenderDropdown]);\n\n return (\n <Input.Wrapper\n required={required}\n id={uuid}\n label={label}\n error={error}\n description={description}\n size={size}\n className={className}\n style={style}\n classNames={classNames}\n styles={styles}\n __staticSelector=\"MultiSelect\"\n sx={sx}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n inputContainer={inputContainer}\n inputWrapperOrder={inputWrapperOrder}\n unstyled={unstyled}\n withAsterisk={withAsterisk}\n variant={variant}\n {...systemStyles}\n {...wrapperProps}\n >\n <SelectPopover\n opened={shouldRenderDropdown}\n transitionProps={transitionProps}\n shadow=\"sm\"\n withinPortal={withinPortal}\n __staticSelector=\"MultiSelect\"\n onDirectionChange={setDirection}\n switchDirectionOnFlip={switchDirectionOnFlip}\n zIndex={zIndex}\n dropdownPosition={dropdownPosition}\n positionDependencies={[...positionDependencies, _searchValue]}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n variant={variant}\n >\n <SelectPopover.Target>\n <div\n className={classes.wrapper}\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-owns={dropdownOpened && shouldRenderDropdown ? `${uuid}-items` : null}\n aria-controls={uuid}\n aria-expanded={dropdownOpened}\n onMouseLeave={() => setHovered(-1)}\n tabIndex={-1}\n >\n <input\n type=\"hidden\"\n name={name}\n value={_value.join(',')}\n form={form}\n disabled={disabled}\n />\n\n <Input<'div'>\n __staticSelector=\"MultiSelect\"\n style={{ overflow: 'hidden' }}\n component=\"div\"\n multiline\n size={size}\n variant={variant}\n disabled={disabled}\n error={error}\n required={required}\n radius={radius}\n icon={icon}\n unstyled={unstyled}\n onMouseDown={(event) => {\n event.preventDefault();\n !disabled && !valuesOverflow.current && setDropdownOpened(!dropdownOpened);\n inputRef.current?.focus();\n }}\n classNames={{\n ...classNames,\n input: cx({ [classes.input]: !searchable }, classNames?.input),\n }}\n {...getSelectRightSectionProps({\n theme,\n rightSection,\n rightSectionWidth,\n styles,\n size,\n shouldClear: clearable && _value.length > 0,\n onClear: handleClear,\n error,\n disabled,\n clearButtonProps,\n readOnly,\n })}\n >\n <div className={classes.values} data-clearable={clearable || undefined}>\n {selectedItems}\n\n <input\n ref={useMergedRef(ref, inputRef)}\n type=\"search\"\n id={uuid}\n className={cx(classes.searchInput, {\n [classes.searchInputPointer]: !searchable,\n [classes.searchInputInputHidden]:\n (!dropdownOpened && _value.length > 0) || (!searchable && _value.length > 0),\n [classes.searchInputEmpty]: _value.length === 0,\n })}\n onKeyDown={handleInputKeydown}\n value={_searchValue}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n readOnly={!searchable || valuesOverflow.current || readOnly}\n placeholder={_value.length === 0 ? placeholder : undefined}\n disabled={disabled}\n data-mantine-stop-propagation={dropdownOpened}\n autoComplete=\"off\"\n onCompositionStart={() => setIMEOpen(true)}\n onCompositionEnd={() => setIMEOpen(false)}\n {...rest}\n />\n </div>\n </Input>\n </div>\n </SelectPopover.Target>\n\n <SelectPopover.Dropdown\n component={dropdownComponent || SelectScrollArea}\n maxHeight={maxDropdownHeight}\n direction={direction}\n id={uuid}\n innerRef={scrollableRef}\n __staticSelector=\"MultiSelect\"\n classNames={classNames}\n styles={styles}\n >\n <SelectItems\n data={filteredData}\n hovered={hovered}\n classNames={classNames}\n styles={styles}\n uuid={uuid}\n __staticSelector=\"MultiSelect\"\n onItemHover={setHovered}\n onItemSelect={handleItemSelect}\n itemsRefs={itemsRefs}\n itemComponent={itemComponent}\n size={size}\n nothingFound={nothingFound}\n isItemSelected={isItemSelected}\n creatable={creatable && !!createLabel}\n createLabel={createLabel}\n unstyled={unstyled}\n variant={variant}\n />\n </SelectPopover.Dropdown>\n </SelectPopover>\n </Input.Wrapper>\n );\n});\n\nMultiSelect.displayName = '@mantine/core/MultiSelect';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MultiSelect.js","sources":["../../src/MultiSelect/MultiSelect.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef } from 'react';\nimport {\n useUncontrolled,\n useMergedRef,\n useDidUpdate,\n useScrollIntoView,\n useId,\n} from '@mantine/hooks';\nimport {\n DefaultProps,\n Selectors,\n getDefaultZIndex,\n useComponentDefaultProps,\n} from '@mantine/styles';\nimport { groupOptions } from '@mantine/utils';\nimport { extractSystemStyles } from '../Box';\nimport { Input } from '../Input';\nimport { DefaultValue, DefaultValueStylesNames } from './DefaultValue/DefaultValue';\nimport { DefaultItem } from '../Select/DefaultItem/DefaultItem';\nimport { filterData } from './filter-data/filter-data';\nimport { getSelectRightSectionProps } from '../Select/SelectRightSection/get-select-right-section-props';\nimport { SelectScrollArea } from '../Select/SelectScrollArea/SelectScrollArea';\nimport { SelectPopover } from '../Select/SelectPopover/SelectPopover';\nimport { SelectItem, BaseSelectProps, BaseSelectStylesNames } from '../Select/types';\nimport { SelectItems } from '../Select/SelectItems/SelectItems';\nimport useStyles from './MultiSelect.styles';\nimport { SelectSharedProps } from '../Select/Select';\n\nexport type MultiSelectStylesNames =\n | DefaultValueStylesNames\n | Exclude<\n Selectors<typeof useStyles>,\n 'searchInputEmpty' | 'searchInputInputHidden' | 'searchInputPointer'\n >\n | Exclude<BaseSelectStylesNames, 'selected'>;\n\nexport interface MultiSelectProps\n extends DefaultProps<MultiSelectStylesNames>,\n BaseSelectProps,\n Omit<SelectSharedProps<SelectItem, string[]>, 'filter'> {\n /** Component used to render values */\n valueComponent?: React.FC<any>;\n\n /** Maximum dropdown height */\n maxDropdownHeight?: number | string;\n\n /** Enable items searching */\n searchable?: boolean;\n\n /** Function based on which items in dropdown are filtered */\n filter?(value: string, selected: boolean, item: SelectItem): boolean;\n\n /** Clear search value when item is selected */\n clearSearchOnChange?: boolean;\n\n /** Allow to clear item */\n clearable?: boolean;\n\n /** Disable removing selected items from the list */\n disableSelectedItemFiltering?: boolean;\n\n /** Clear search field value on blur */\n clearSearchOnBlur?: boolean;\n\n /** Called each time search query changes */\n onSearchChange?(query: string): void;\n\n /** Controlled search input value */\n searchValue?: string;\n\n /** Hovers the first result when search query changes */\n hoverOnSearchChange?: boolean;\n\n /** Allow creatable option */\n creatable?: boolean;\n\n /** Function to get create Label */\n getCreateLabel?(query: string): React.ReactNode;\n\n /** Function to determine if create label should be displayed */\n shouldCreate?(query: string, data: SelectItem[]): boolean;\n\n /** Called when create option is selected */\n onCreate?(query: string): SelectItem | string | null | undefined;\n\n /** Change dropdown component, can be used to add custom scrollbars */\n dropdownComponent?: any;\n\n /** Limit amount of items selected */\n maxSelectedValues?: number;\n\n /** Select highlighted item on blur */\n selectOnBlur?: boolean;\n\n /** Props added to clear button */\n clearButtonProps?: React.ComponentPropsWithoutRef<'button'>;\n}\n\nexport function defaultFilter(value: string, selected: boolean, item: SelectItem) {\n if (selected) {\n return false;\n }\n return item.label.toLowerCase().trim().includes(value.toLowerCase().trim());\n}\n\nexport function defaultShouldCreate(query: string, data: SelectItem[]) {\n return !!query && !data.some((item) => item.value.toLowerCase() === query.toLowerCase());\n}\n\nfunction filterValue(value: string[], data: ReadonlyArray<string | SelectItem>): string[] {\n if (!Array.isArray(value)) {\n return undefined;\n }\n\n if (data.length === 0) {\n return [];\n }\n\n const flatData: string[] = data.map((item) => {\n if (typeof item === 'object') {\n return item.value;\n }\n return item;\n });\n return value.filter((val) => flatData.includes(val));\n}\n\nconst defaultProps: Partial<MultiSelectProps> = {\n size: 'sm',\n valueComponent: DefaultValue,\n itemComponent: DefaultItem,\n transitionProps: { transition: 'fade', duration: 0 },\n maxDropdownHeight: 220,\n shadow: 'sm',\n searchable: false,\n filter: defaultFilter,\n limit: Infinity,\n clearSearchOnChange: true,\n clearable: false,\n clearSearchOnBlur: false,\n disabled: false,\n initiallyOpened: false,\n creatable: false,\n shouldCreate: defaultShouldCreate,\n switchDirectionOnFlip: false,\n zIndex: getDefaultZIndex('popover'),\n selectOnBlur: false,\n positionDependencies: [],\n dropdownPosition: 'flip',\n};\n\nexport const MultiSelect = forwardRef<HTMLInputElement, MultiSelectProps>((props, ref) => {\n const {\n className,\n style,\n required,\n label,\n description,\n size,\n error,\n classNames,\n styles,\n wrapperProps,\n value,\n defaultValue,\n data,\n onChange,\n valueComponent: Value,\n itemComponent,\n id,\n transitionProps,\n maxDropdownHeight,\n shadow,\n nothingFound,\n onFocus,\n onBlur,\n searchable,\n placeholder,\n filter,\n limit,\n clearSearchOnChange,\n clearable,\n clearSearchOnBlur,\n variant,\n onSearchChange,\n searchValue,\n disabled,\n initiallyOpened,\n radius,\n icon,\n rightSection,\n rightSectionWidth,\n creatable,\n getCreateLabel,\n shouldCreate,\n onCreate,\n sx,\n dropdownComponent,\n onDropdownClose,\n onDropdownOpen,\n maxSelectedValues,\n withinPortal,\n switchDirectionOnFlip,\n zIndex,\n selectOnBlur,\n name,\n dropdownPosition,\n errorProps,\n labelProps,\n descriptionProps,\n form,\n positionDependencies,\n onKeyDown,\n unstyled,\n inputContainer,\n inputWrapperOrder,\n readOnly,\n withAsterisk,\n clearButtonProps,\n hoverOnSearchChange,\n disableSelectedItemFiltering,\n ...others\n } = useComponentDefaultProps('MultiSelect', defaultProps, props);\n\n const { classes, cx, theme } = useStyles(\n { invalid: !!error },\n { name: 'MultiSelect', classNames, styles, unstyled, size, variant }\n );\n const { systemStyles, rest } = extractSystemStyles(others);\n const inputRef = useRef<HTMLInputElement>();\n const itemsRefs = useRef<Record<string, HTMLDivElement>>({});\n const uuid = useId(id);\n const [dropdownOpened, setDropdownOpened] = useState(initiallyOpened);\n const [hovered, setHovered] = useState(-1);\n const [direction, setDirection] = useState<React.CSSProperties['flexDirection']>('column');\n const [_searchValue, handleSearchChange] = useUncontrolled({\n value: searchValue,\n defaultValue: '',\n finalValue: undefined,\n onChange: onSearchChange,\n });\n const [IMEOpen, setIMEOpen] = useState(false);\n\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n const isCreatable = creatable && typeof getCreateLabel === 'function';\n let createLabel = null;\n\n const formattedData = data.map((item) =>\n typeof item === 'string' ? { label: item, value: item } : item\n );\n\n const sortedData = groupOptions({ data: formattedData });\n\n const [_value, setValue] = useUncontrolled({\n value: filterValue(value, data),\n defaultValue: filterValue(defaultValue, data),\n finalValue: [],\n onChange,\n });\n\n const valuesOverflow = useRef(!!maxSelectedValues && maxSelectedValues < _value.length);\n\n const handleValueRemove = (_val: string) => {\n if (!readOnly) {\n const newValue = _value.filter((val) => val !== _val);\n setValue(newValue);\n\n if (!!maxSelectedValues && newValue.length < maxSelectedValues) {\n valuesOverflow.current = false;\n }\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n handleSearchChange(event.currentTarget.value);\n !disabled && !valuesOverflow.current && searchable && setDropdownOpened(true);\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n !disabled && !valuesOverflow.current && searchable && setDropdownOpened(true);\n };\n\n const filteredData = filterData({\n data: sortedData,\n searchable,\n searchValue: _searchValue,\n limit,\n filter,\n value: _value,\n disableSelectedItemFiltering,\n });\n\n const getNextIndex = (\n index: number,\n nextItem: (index: number) => number,\n compareFn: (index: number) => boolean\n ) => {\n let i = index;\n while (compareFn(i)) {\n i = nextItem(i);\n if (!filteredData[i].disabled) return i;\n }\n return index;\n };\n\n useDidUpdate(() => {\n if (hoverOnSearchChange && _searchValue) {\n setHovered(0);\n } else {\n setHovered(-1);\n }\n }, [_searchValue, hoverOnSearchChange]);\n\n useDidUpdate(() => {\n if (!disabled && _value.length > data.length) {\n setDropdownOpened(false);\n }\n\n if (!!maxSelectedValues && _value.length < maxSelectedValues) {\n valuesOverflow.current = false;\n }\n\n if (!!maxSelectedValues && _value.length >= maxSelectedValues) {\n valuesOverflow.current = true;\n setDropdownOpened(false);\n }\n }, [_value]);\n\n const handleItemSelect = (item: SelectItem) => {\n if (!readOnly) {\n clearSearchOnChange && handleSearchChange('');\n\n if (_value.includes(item.value)) {\n handleValueRemove(item.value);\n } else {\n if (item.creatable && typeof onCreate === 'function') {\n const createdItem = onCreate(item.value);\n if (typeof createdItem !== 'undefined' && createdItem !== null) {\n if (typeof createdItem === 'string') {\n setValue([..._value, createdItem]);\n } else {\n setValue([..._value, createdItem.value]);\n }\n }\n } else {\n setValue([..._value, item.value]);\n }\n\n if (_value.length === maxSelectedValues - 1) {\n valuesOverflow.current = true;\n setDropdownOpened(false);\n }\n if (hovered === filteredData.length - 1) {\n setHovered(filteredData.length - 2);\n }\n if (filteredData.length === 1) {\n setDropdownOpened(false);\n }\n }\n }\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n if (selectOnBlur && filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n }\n clearSearchOnBlur && handleSearchChange('');\n setDropdownOpened(false);\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (IMEOpen) {\n return;\n }\n\n onKeyDown?.(event);\n\n if (readOnly) {\n return;\n }\n\n if (event.key !== 'Backspace' && !!maxSelectedValues && valuesOverflow.current) {\n return;\n }\n\n const isColumn = direction === 'column';\n\n const handleNext = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index + 1,\n (index) => index < filteredData.length - 1\n );\n\n if (dropdownOpened) {\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n\n return nextIndex;\n });\n };\n\n const handlePrevious = () => {\n setHovered((current) => {\n const nextIndex = getNextIndex(\n current,\n (index) => index - 1,\n (index) => index > 0\n );\n\n if (dropdownOpened) {\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: isColumn ? 'start' : 'end',\n });\n }\n\n return nextIndex;\n });\n };\n\n switch (event.key) {\n case 'ArrowUp': {\n event.preventDefault();\n setDropdownOpened(true);\n\n isColumn ? handlePrevious() : handleNext();\n\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n setDropdownOpened(true);\n\n isColumn ? handleNext() : handlePrevious();\n\n break;\n }\n\n case 'Enter': {\n event.preventDefault();\n\n if (filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n }\n\n break;\n }\n\n case ' ': {\n if (!searchable) {\n event.preventDefault();\n if (filteredData[hovered] && dropdownOpened) {\n handleItemSelect(filteredData[hovered]);\n } else {\n setDropdownOpened(true);\n }\n }\n\n break;\n }\n\n case 'Backspace': {\n if (_value.length > 0 && _searchValue.length === 0) {\n setValue(_value.slice(0, -1));\n setDropdownOpened(true);\n if (maxSelectedValues) {\n valuesOverflow.current = false;\n }\n }\n\n break;\n }\n\n case 'Home': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const firstItemIndex = filteredData.findIndex((item) => !item.disabled);\n setHovered(firstItemIndex);\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n break;\n }\n\n case 'End': {\n if (!searchable) {\n event.preventDefault();\n\n if (!dropdownOpened) {\n setDropdownOpened(true);\n }\n\n const lastItemIndex = filteredData.map((item) => !!item.disabled).lastIndexOf(false);\n setHovered(lastItemIndex);\n scrollIntoView({\n alignment: isColumn ? 'end' : 'start',\n });\n }\n break;\n }\n\n case 'Escape': {\n setDropdownOpened(false);\n }\n }\n };\n\n const selectedItems = _value\n .map((val) => {\n let selectedItem = sortedData.find((item) => item.value === val && !item.disabled);\n if (!selectedItem && isCreatable) {\n selectedItem = {\n value: val,\n label: val,\n };\n }\n return selectedItem;\n })\n .filter((val) => !!val)\n .map((item, index) => (\n <Value\n {...item}\n variant={variant}\n disabled={disabled}\n className={classes.value}\n readOnly={readOnly}\n onRemove={(event: React.MouseEvent<HTMLButtonElement>) => {\n event.preventDefault();\n event.stopPropagation();\n handleValueRemove(item.value);\n }}\n key={item.value}\n size={size}\n styles={styles}\n classNames={classNames}\n radius={radius}\n index={index}\n />\n ));\n\n const isItemSelected = (itemValue: string) => _value.includes(itemValue);\n\n const handleClear = () => {\n handleSearchChange('');\n setValue([]);\n inputRef.current?.focus();\n if (maxSelectedValues) {\n valuesOverflow.current = false;\n }\n };\n\n if (isCreatable && shouldCreate(_searchValue, sortedData)) {\n createLabel = getCreateLabel(_searchValue);\n filteredData.push({ label: _searchValue, value: _searchValue, creatable: true });\n }\n\n const shouldRenderDropdown =\n !readOnly && (filteredData.length > 0 ? dropdownOpened : dropdownOpened && !!nothingFound);\n\n useDidUpdate(() => {\n const handler = shouldRenderDropdown ? onDropdownOpen : onDropdownClose;\n typeof handler === 'function' && handler();\n }, [shouldRenderDropdown]);\n\n return (\n <Input.Wrapper\n required={required}\n id={uuid}\n label={label}\n error={error}\n description={description}\n size={size}\n className={className}\n style={style}\n classNames={classNames}\n styles={styles}\n __staticSelector=\"MultiSelect\"\n sx={sx}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n inputContainer={inputContainer}\n inputWrapperOrder={inputWrapperOrder}\n unstyled={unstyled}\n withAsterisk={withAsterisk}\n variant={variant}\n {...systemStyles}\n {...wrapperProps}\n >\n <SelectPopover\n opened={shouldRenderDropdown}\n transitionProps={transitionProps}\n shadow=\"sm\"\n withinPortal={withinPortal}\n __staticSelector=\"MultiSelect\"\n onDirectionChange={setDirection}\n switchDirectionOnFlip={switchDirectionOnFlip}\n zIndex={zIndex}\n dropdownPosition={dropdownPosition}\n positionDependencies={[...positionDependencies, _searchValue]}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n variant={variant}\n >\n <SelectPopover.Target>\n <div\n className={classes.wrapper}\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-owns={dropdownOpened && shouldRenderDropdown ? `${uuid}-items` : null}\n aria-controls={uuid}\n aria-expanded={dropdownOpened}\n onMouseLeave={() => setHovered(-1)}\n tabIndex={-1}\n >\n <input\n type=\"hidden\"\n name={name}\n value={_value.join(',')}\n form={form}\n disabled={disabled}\n />\n\n <Input<'div'>\n __staticSelector=\"MultiSelect\"\n style={{ overflow: 'hidden' }}\n component=\"div\"\n multiline\n size={size}\n variant={variant}\n disabled={disabled}\n error={error}\n required={required}\n radius={radius}\n icon={icon}\n unstyled={unstyled}\n onMouseDown={(event) => {\n event.preventDefault();\n !disabled && !valuesOverflow.current && setDropdownOpened(!dropdownOpened);\n inputRef.current?.focus();\n }}\n classNames={{\n ...classNames,\n input: cx({ [classes.input]: !searchable }, classNames?.input),\n }}\n {...getSelectRightSectionProps({\n theme,\n rightSection,\n rightSectionWidth,\n styles,\n size,\n shouldClear: clearable && _value.length > 0,\n onClear: handleClear,\n error,\n disabled,\n clearButtonProps,\n readOnly,\n })}\n >\n <div className={classes.values} data-clearable={clearable || undefined}>\n {selectedItems}\n\n <input\n ref={useMergedRef(ref, inputRef)}\n type=\"search\"\n id={uuid}\n className={cx(classes.searchInput, {\n [classes.searchInputPointer]: !searchable,\n [classes.searchInputInputHidden]:\n (!dropdownOpened && _value.length > 0) || (!searchable && _value.length > 0),\n [classes.searchInputEmpty]: _value.length === 0,\n })}\n onKeyDown={handleInputKeydown}\n value={_searchValue}\n onChange={handleInputChange}\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n readOnly={!searchable || valuesOverflow.current || readOnly}\n placeholder={_value.length === 0 ? placeholder : undefined}\n disabled={disabled}\n data-mantine-stop-propagation={dropdownOpened}\n autoComplete=\"off\"\n onCompositionStart={() => setIMEOpen(true)}\n onCompositionEnd={() => setIMEOpen(false)}\n {...rest}\n />\n </div>\n </Input>\n </div>\n </SelectPopover.Target>\n\n <SelectPopover.Dropdown\n component={dropdownComponent || SelectScrollArea}\n maxHeight={maxDropdownHeight}\n direction={direction}\n id={uuid}\n innerRef={scrollableRef}\n __staticSelector=\"MultiSelect\"\n classNames={classNames}\n styles={styles}\n >\n <SelectItems\n data={filteredData}\n hovered={hovered}\n classNames={classNames}\n styles={styles}\n uuid={uuid}\n __staticSelector=\"MultiSelect\"\n onItemHover={setHovered}\n onItemSelect={handleItemSelect}\n itemsRefs={itemsRefs}\n itemComponent={itemComponent}\n size={size}\n nothingFound={nothingFound}\n isItemSelected={isItemSelected}\n creatable={creatable && !!createLabel}\n createLabel={createLabel}\n unstyled={unstyled}\n variant={variant}\n />\n </SelectPopover.Dropdown>\n </SelectPopover>\n </Input.Wrapper>\n );\n});\n\nMultiSelect.displayName = '@mantine/core/MultiSelect';\n"],"names":[],"mappings":"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"}