@mantine/core 6.0.0 → 6.0.2

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 (197) hide show
  1. package/cjs/Affix/Affix.js +3 -3
  2. package/cjs/Affix/Affix.js.map +1 -1
  3. package/cjs/Alert/Alert.js +5 -5
  4. package/cjs/Alert/Alert.js.map +1 -1
  5. package/cjs/Alert/Alert.styles.js +3 -5
  6. package/cjs/Alert/Alert.styles.js.map +1 -1
  7. package/cjs/Anchor/Anchor.js +5 -3
  8. package/cjs/Anchor/Anchor.js.map +1 -1
  9. package/cjs/Anchor/Anchor.styles.js +9 -3
  10. package/cjs/Anchor/Anchor.styles.js.map +1 -1
  11. package/cjs/AppShell/AppShell.styles.js +4 -4
  12. package/cjs/AppShell/AppShell.styles.js.map +1 -1
  13. package/cjs/Button/ButtonGroup/ButtonGroup.styles.js +2 -2
  14. package/cjs/Button/ButtonGroup/ButtonGroup.styles.js.map +1 -1
  15. package/cjs/ColorInput/ColorInput.js +3 -0
  16. package/cjs/ColorInput/ColorInput.js.map +1 -1
  17. package/cjs/Drawer/DrawerRoot/DrawerRoot.js +1 -1
  18. package/cjs/Drawer/DrawerRoot/DrawerRoot.js.map +1 -1
  19. package/cjs/Floating/FloatingArrow/FloatingArrow.js +0 -3
  20. package/cjs/Floating/FloatingArrow/FloatingArrow.js.map +1 -1
  21. package/cjs/Floating/FloatingArrow/get-arrow-position-styles.js +9 -10
  22. package/cjs/Floating/FloatingArrow/get-arrow-position-styles.js.map +1 -1
  23. package/cjs/Floating/use-floating-auto-update.js +13 -2
  24. package/cjs/Floating/use-floating-auto-update.js.map +1 -1
  25. package/cjs/HoverCard/HoverCard.errors.js +1 -1
  26. package/cjs/HoverCard/HoverCard.errors.js.map +1 -1
  27. package/cjs/InlineInput/InlineInput.js +4 -3
  28. package/cjs/InlineInput/InlineInput.js.map +1 -1
  29. package/cjs/JsonInput/JsonInput.js +2 -2
  30. package/cjs/JsonInput/JsonInput.js.map +1 -1
  31. package/cjs/Menu/Menu.errors.js +1 -1
  32. package/cjs/Menu/Menu.errors.js.map +1 -1
  33. package/cjs/ModalBase/ModalBase.js +4 -2
  34. package/cjs/ModalBase/ModalBase.js.map +1 -1
  35. package/cjs/PinInput/PinInput.js +6 -6
  36. package/cjs/PinInput/PinInput.js.map +1 -1
  37. package/cjs/Popover/Popover.context.js.map +1 -1
  38. package/cjs/Popover/Popover.errors.js +1 -1
  39. package/cjs/Popover/Popover.errors.js.map +1 -1
  40. package/cjs/Popover/Popover.js +3 -0
  41. package/cjs/Popover/Popover.js.map +1 -1
  42. package/cjs/Popover/PopoverDropdown/PopoverDropdown.js +2 -4
  43. package/cjs/Popover/PopoverDropdown/PopoverDropdown.js.map +1 -1
  44. package/cjs/Popover/use-popover.js +9 -0
  45. package/cjs/Popover/use-popover.js.map +1 -1
  46. package/cjs/Portal/Portal.js +36 -3
  47. package/cjs/Portal/Portal.js.map +1 -1
  48. package/cjs/ScrollArea/ScrollArea.js +6 -3
  49. package/cjs/ScrollArea/ScrollArea.js.map +1 -1
  50. package/cjs/SegmentedControl/SegmentedControl.styles.js +1 -2
  51. package/cjs/SegmentedControl/SegmentedControl.styles.js.map +1 -1
  52. package/cjs/Select/Select.js +3 -0
  53. package/cjs/Select/Select.js.map +1 -1
  54. package/cjs/Select/SelectPopover/SelectPopover.js +3 -0
  55. package/cjs/Select/SelectPopover/SelectPopover.js.map +1 -1
  56. package/cjs/Select/SelectScrollArea/SelectScrollArea.js +1 -0
  57. package/cjs/Select/SelectScrollArea/SelectScrollArea.js.map +1 -1
  58. package/cjs/Slider/RangeSlider/RangeSlider.js +4 -2
  59. package/cjs/Slider/RangeSlider/RangeSlider.js.map +1 -1
  60. package/cjs/Slider/Slider/Slider.js +2 -1
  61. package/cjs/Slider/Slider/Slider.js.map +1 -1
  62. package/cjs/Slider/Thumb/Thumb.js +5 -1
  63. package/cjs/Slider/Thumb/Thumb.js.map +1 -1
  64. package/cjs/Switch/Switch.js +2 -2
  65. package/cjs/Switch/Switch.js.map +1 -1
  66. package/cjs/Switch/Switch.styles.js +3 -0
  67. package/cjs/Switch/Switch.styles.js.map +1 -1
  68. package/cjs/Title/Title.js +1 -0
  69. package/cjs/Title/Title.js.map +1 -1
  70. package/cjs/Tooltip/Tooltip.js +0 -1
  71. package/cjs/Tooltip/Tooltip.js.map +1 -1
  72. package/cjs/Tooltip/use-tooltip.js +1 -0
  73. package/cjs/Tooltip/use-tooltip.js.map +1 -1
  74. package/cjs/Transition/use-transition.js +5 -4
  75. package/cjs/Transition/use-transition.js.map +1 -1
  76. package/esm/Affix/Affix.js +3 -3
  77. package/esm/Affix/Affix.js.map +1 -1
  78. package/esm/Alert/Alert.js +5 -5
  79. package/esm/Alert/Alert.js.map +1 -1
  80. package/esm/Alert/Alert.styles.js +3 -5
  81. package/esm/Alert/Alert.styles.js.map +1 -1
  82. package/esm/Anchor/Anchor.js +5 -3
  83. package/esm/Anchor/Anchor.js.map +1 -1
  84. package/esm/Anchor/Anchor.styles.js +9 -3
  85. package/esm/Anchor/Anchor.styles.js.map +1 -1
  86. package/esm/AppShell/AppShell.styles.js +4 -4
  87. package/esm/AppShell/AppShell.styles.js.map +1 -1
  88. package/esm/Button/ButtonGroup/ButtonGroup.styles.js +2 -2
  89. package/esm/Button/ButtonGroup/ButtonGroup.styles.js.map +1 -1
  90. package/esm/ColorInput/ColorInput.js +3 -0
  91. package/esm/ColorInput/ColorInput.js.map +1 -1
  92. package/esm/Drawer/DrawerRoot/DrawerRoot.js +1 -1
  93. package/esm/Drawer/DrawerRoot/DrawerRoot.js.map +1 -1
  94. package/esm/Floating/FloatingArrow/FloatingArrow.js +0 -3
  95. package/esm/Floating/FloatingArrow/FloatingArrow.js.map +1 -1
  96. package/esm/Floating/FloatingArrow/get-arrow-position-styles.js +9 -10
  97. package/esm/Floating/FloatingArrow/get-arrow-position-styles.js.map +1 -1
  98. package/esm/Floating/use-floating-auto-update.js +13 -2
  99. package/esm/Floating/use-floating-auto-update.js.map +1 -1
  100. package/esm/HoverCard/HoverCard.errors.js +1 -1
  101. package/esm/HoverCard/HoverCard.errors.js.map +1 -1
  102. package/esm/InlineInput/InlineInput.js +5 -4
  103. package/esm/InlineInput/InlineInput.js.map +1 -1
  104. package/esm/JsonInput/JsonInput.js +2 -2
  105. package/esm/JsonInput/JsonInput.js.map +1 -1
  106. package/esm/Menu/Menu.errors.js +1 -1
  107. package/esm/Menu/Menu.errors.js.map +1 -1
  108. package/esm/ModalBase/ModalBase.js +4 -2
  109. package/esm/ModalBase/ModalBase.js.map +1 -1
  110. package/esm/PinInput/PinInput.js +7 -7
  111. package/esm/PinInput/PinInput.js.map +1 -1
  112. package/esm/Popover/Popover.context.js.map +1 -1
  113. package/esm/Popover/Popover.errors.js +1 -1
  114. package/esm/Popover/Popover.errors.js.map +1 -1
  115. package/esm/Popover/Popover.js +3 -0
  116. package/esm/Popover/Popover.js.map +1 -1
  117. package/esm/Popover/PopoverDropdown/PopoverDropdown.js +2 -4
  118. package/esm/Popover/PopoverDropdown/PopoverDropdown.js.map +1 -1
  119. package/esm/Popover/use-popover.js +9 -0
  120. package/esm/Popover/use-popover.js.map +1 -1
  121. package/esm/Portal/Portal.js +36 -3
  122. package/esm/Portal/Portal.js.map +1 -1
  123. package/esm/ScrollArea/ScrollArea.js +6 -3
  124. package/esm/ScrollArea/ScrollArea.js.map +1 -1
  125. package/esm/SegmentedControl/SegmentedControl.styles.js +1 -2
  126. package/esm/SegmentedControl/SegmentedControl.styles.js.map +1 -1
  127. package/esm/Select/Select.js +3 -0
  128. package/esm/Select/Select.js.map +1 -1
  129. package/esm/Select/SelectPopover/SelectPopover.js +3 -0
  130. package/esm/Select/SelectPopover/SelectPopover.js.map +1 -1
  131. package/esm/Select/SelectScrollArea/SelectScrollArea.js +1 -0
  132. package/esm/Select/SelectScrollArea/SelectScrollArea.js.map +1 -1
  133. package/esm/Slider/RangeSlider/RangeSlider.js +4 -2
  134. package/esm/Slider/RangeSlider/RangeSlider.js.map +1 -1
  135. package/esm/Slider/Slider/Slider.js +2 -1
  136. package/esm/Slider/Slider/Slider.js.map +1 -1
  137. package/esm/Slider/Thumb/Thumb.js +5 -1
  138. package/esm/Slider/Thumb/Thumb.js.map +1 -1
  139. package/esm/Switch/Switch.js +2 -2
  140. package/esm/Switch/Switch.js.map +1 -1
  141. package/esm/Switch/Switch.styles.js +3 -0
  142. package/esm/Switch/Switch.styles.js.map +1 -1
  143. package/esm/Title/Title.js +1 -0
  144. package/esm/Title/Title.js.map +1 -1
  145. package/esm/Tooltip/Tooltip.js +0 -1
  146. package/esm/Tooltip/Tooltip.js.map +1 -1
  147. package/esm/Tooltip/use-tooltip.js +1 -0
  148. package/esm/Tooltip/use-tooltip.js.map +1 -1
  149. package/esm/Transition/use-transition.js +5 -4
  150. package/esm/Transition/use-transition.js.map +1 -1
  151. package/lib/Affix/Affix.d.ts +3 -0
  152. package/lib/Affix/Affix.d.ts.map +1 -1
  153. package/lib/Alert/Alert.styles.d.ts.map +1 -1
  154. package/lib/Anchor/Anchor.d.ts.map +1 -1
  155. package/lib/Anchor/Anchor.styles.d.ts +3 -2
  156. package/lib/Anchor/Anchor.styles.d.ts.map +1 -1
  157. package/lib/ColorInput/ColorInput.d.ts +3 -0
  158. package/lib/ColorInput/ColorInput.d.ts.map +1 -1
  159. package/lib/Floating/FloatingArrow/FloatingArrow.d.ts +0 -1
  160. package/lib/Floating/FloatingArrow/FloatingArrow.d.ts.map +1 -1
  161. package/lib/Floating/FloatingArrow/get-arrow-position-styles.d.ts +1 -2
  162. package/lib/Floating/FloatingArrow/get-arrow-position-styles.d.ts.map +1 -1
  163. package/lib/Floating/use-floating-auto-update.d.ts +3 -1
  164. package/lib/Floating/use-floating-auto-update.d.ts.map +1 -1
  165. package/lib/InlineInput/InlineInput.d.ts +1 -4
  166. package/lib/InlineInput/InlineInput.d.ts.map +1 -1
  167. package/lib/JsonInput/JsonInput.d.ts +5 -5
  168. package/lib/JsonInput/JsonInput.d.ts.map +1 -1
  169. package/lib/ModalBase/ModalBase.d.ts +3 -0
  170. package/lib/ModalBase/ModalBase.d.ts.map +1 -1
  171. package/lib/PinInput/PinInput.d.ts.map +1 -1
  172. package/lib/Popover/Popover.context.d.ts +2 -0
  173. package/lib/Popover/Popover.context.d.ts.map +1 -1
  174. package/lib/Popover/Popover.d.ts +3 -0
  175. package/lib/Popover/Popover.d.ts.map +1 -1
  176. package/lib/Popover/PopoverDropdown/PopoverDropdown.d.ts.map +1 -1
  177. package/lib/Popover/use-popover.d.ts.map +1 -1
  178. package/lib/Portal/Portal.d.ts +3 -1
  179. package/lib/Portal/Portal.d.ts.map +1 -1
  180. package/lib/ScrollArea/ScrollArea.d.ts.map +1 -1
  181. package/lib/SegmentedControl/SegmentedControl.styles.d.ts.map +1 -1
  182. package/lib/Select/Select.d.ts +3 -0
  183. package/lib/Select/Select.d.ts.map +1 -1
  184. package/lib/Select/SelectPopover/SelectPopover.d.ts +3 -1
  185. package/lib/Select/SelectPopover/SelectPopover.d.ts.map +1 -1
  186. package/lib/Select/SelectScrollArea/SelectScrollArea.d.ts.map +1 -1
  187. package/lib/Slider/RangeSlider/RangeSlider.d.ts.map +1 -1
  188. package/lib/Slider/Slider/Slider.d.ts.map +1 -1
  189. package/lib/Slider/Thumb/Thumb.d.ts +1 -0
  190. package/lib/Slider/Thumb/Thumb.d.ts.map +1 -1
  191. package/lib/Switch/Switch.styles.d.ts +1 -0
  192. package/lib/Switch/Switch.styles.d.ts.map +1 -1
  193. package/lib/Title/Title.d.ts.map +1 -1
  194. package/lib/Tooltip/Tooltip.d.ts.map +1 -1
  195. package/lib/Tooltip/use-tooltip.d.ts.map +1 -1
  196. package/lib/Transition/use-transition.d.ts.map +1 -1
  197. package/package.json +4 -4
@@ -52,7 +52,7 @@ const defaultProps = __spreadProps(__spreadValues({}, ModalBaseDefaultProps), {
52
52
  });
53
53
  function DrawerRoot(props) {
54
54
  const _a = useComponentDefaultProps("DrawerRoot", defaultProps, props), { classNames, variant, size, scrollAreaComponent, position, transitionProps } = _a, others = __objRest(_a, ["classNames", "variant", "size", "scrollAreaComponent", "position", "transitionProps"]);
55
- const { classes, cx, theme } = useStyles({ position }, { name: "Modal", variant, size });
55
+ const { classes, cx, theme } = useStyles({ position }, { name: "Drawer", variant, size });
56
56
  const drawerTransition = (theme.dir === "rtl" ? rtlTransitions : transitions)[position];
57
57
  return /* @__PURE__ */ React.createElement(DrawerProvider, {
58
58
  value: { scrollAreaComponent }
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerRoot.js","sources":["../../../src/Drawer/DrawerRoot/DrawerRoot.tsx"],"sourcesContent":["import React from 'react';\nimport { useComponentDefaultProps } from '@mantine/styles';\nimport { MantineTransition } from '../../Transition';\nimport { ModalBase, ModalBaseDefaultProps, ModalBaseSettings } from '../../ModalBase';\nimport { DrawerProvider, ScrollAreaComponent } from '../Drawer.context';\nimport useStyles from './DrawerRoot.styles';\n\nexport type DrawerPosition = 'bottom' | 'left' | 'right' | 'top';\n\nexport interface DrawerRootProps extends ModalBaseSettings {\n /** Scroll area component, ScrollArea.Autosize by default */\n scrollAreaComponent?: ScrollAreaComponent;\n\n /** Side of the screen where drawer will be opened, 'left' by default */\n position?: 'bottom' | 'left' | 'right' | 'top';\n}\n\nconst transitions: Record<DrawerPosition, MantineTransition> = {\n top: 'slide-down',\n bottom: 'slide-up',\n left: 'slide-right',\n right: 'slide-left',\n};\n\nconst rtlTransitions: Record<DrawerPosition, MantineTransition> = {\n top: 'slide-down',\n bottom: 'slide-up',\n right: 'slide-right',\n left: 'slide-left',\n};\n\nconst defaultProps: Partial<DrawerRootProps> = {\n ...ModalBaseDefaultProps,\n position: 'left',\n};\n\nexport function DrawerRoot(props: DrawerRootProps) {\n const { classNames, variant, size, scrollAreaComponent, position, transitionProps, ...others } =\n useComponentDefaultProps('DrawerRoot', defaultProps, props);\n\n const { classes, cx, theme } = useStyles({ position }, { name: 'Modal', variant, size });\n\n const drawerTransition = (theme.dir === 'rtl' ? rtlTransitions : transitions)[position];\n\n return (\n <DrawerProvider value={{ scrollAreaComponent }}>\n <ModalBase\n __staticSelector=\"Modal\"\n size={size}\n variant={variant}\n transitionProps={{ transition: drawerTransition, duration: 200, ...transitionProps }}\n classNames={{\n ...classNames,\n content: cx(classes.content, classNames?.content),\n inner: cx(classes.inner, classNames?.inner),\n }}\n {...others}\n />\n </DrawerProvider>\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DrawerRoot.js","sources":["../../../src/Drawer/DrawerRoot/DrawerRoot.tsx"],"sourcesContent":["import React from 'react';\nimport { useComponentDefaultProps } from '@mantine/styles';\nimport { MantineTransition } from '../../Transition';\nimport { ModalBase, ModalBaseDefaultProps, ModalBaseSettings } from '../../ModalBase';\nimport { DrawerProvider, ScrollAreaComponent } from '../Drawer.context';\nimport useStyles from './DrawerRoot.styles';\n\nexport type DrawerPosition = 'bottom' | 'left' | 'right' | 'top';\n\nexport interface DrawerRootProps extends ModalBaseSettings {\n /** Scroll area component, ScrollArea.Autosize by default */\n scrollAreaComponent?: ScrollAreaComponent;\n\n /** Side of the screen where drawer will be opened, 'left' by default */\n position?: 'bottom' | 'left' | 'right' | 'top';\n}\n\nconst transitions: Record<DrawerPosition, MantineTransition> = {\n top: 'slide-down',\n bottom: 'slide-up',\n left: 'slide-right',\n right: 'slide-left',\n};\n\nconst rtlTransitions: Record<DrawerPosition, MantineTransition> = {\n top: 'slide-down',\n bottom: 'slide-up',\n right: 'slide-right',\n left: 'slide-left',\n};\n\nconst defaultProps: Partial<DrawerRootProps> = {\n ...ModalBaseDefaultProps,\n position: 'left',\n};\n\nexport function DrawerRoot(props: DrawerRootProps) {\n const { classNames, variant, size, scrollAreaComponent, position, transitionProps, ...others } =\n useComponentDefaultProps('DrawerRoot', defaultProps, props);\n\n const { classes, cx, theme } = useStyles({ position }, { name: 'Drawer', variant, size });\n\n const drawerTransition = (theme.dir === 'rtl' ? rtlTransitions : transitions)[position];\n\n return (\n <DrawerProvider value={{ scrollAreaComponent }}>\n <ModalBase\n __staticSelector=\"Modal\"\n size={size}\n variant={variant}\n transitionProps={{ transition: drawerTransition, duration: 200, ...transitionProps }}\n classNames={{\n ...classNames,\n content: cx(classes.content, classNames?.content),\n inner: cx(classes.inner, classNames?.inner),\n }}\n {...others}\n />\n </DrawerProvider>\n );\n}\n"],"names":[],"mappings":"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"}
@@ -35,7 +35,6 @@ var __objRest = (source, exclude) => {
35
35
  };
36
36
  const FloatingArrow = forwardRef((_a, ref) => {
37
37
  var _b = _a, {
38
- withBorder,
39
38
  position,
40
39
  arrowSize,
41
40
  arrowOffset,
@@ -45,7 +44,6 @@ const FloatingArrow = forwardRef((_a, ref) => {
45
44
  arrowX,
46
45
  arrowY
47
46
  } = _b, others = __objRest(_b, [
48
- "withBorder",
49
47
  "position",
50
48
  "arrowSize",
51
49
  "arrowOffset",
@@ -62,7 +60,6 @@ const FloatingArrow = forwardRef((_a, ref) => {
62
60
  return /* @__PURE__ */ React.createElement("div", __spreadProps(__spreadValues({}, others), {
63
61
  ref,
64
62
  style: getArrowPositionStyles({
65
- withBorder,
66
63
  position,
67
64
  arrowSize,
68
65
  arrowOffset,
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingArrow.js","sources":["../../../src/Floating/FloatingArrow/FloatingArrow.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useMantineTheme } from '@mantine/styles';\nimport { getArrowPositionStyles } from './get-arrow-position-styles';\nimport { ArrowPosition, FloatingPosition } from '../types';\n\ninterface FloatingArrowProps extends React.ComponentPropsWithoutRef<'div'> {\n withBorder: boolean;\n position: FloatingPosition;\n arrowSize: number;\n arrowOffset: number;\n arrowRadius: number;\n arrowPosition: ArrowPosition;\n arrowX: number;\n arrowY: number;\n visible: boolean;\n}\n\nexport const FloatingArrow = forwardRef<HTMLDivElement, FloatingArrowProps>(\n (\n {\n withBorder,\n position,\n arrowSize,\n arrowOffset,\n arrowRadius,\n arrowPosition,\n visible,\n arrowX,\n arrowY,\n ...others\n },\n ref\n ) => {\n const theme = useMantineTheme();\n if (!visible) {\n return null;\n }\n\n return (\n <div\n {...others}\n ref={ref}\n style={getArrowPositionStyles({\n withBorder,\n position,\n arrowSize,\n arrowOffset,\n arrowRadius,\n arrowPosition,\n dir: theme.dir,\n arrowX,\n arrowY,\n })}\n />\n );\n }\n);\n\nFloatingArrow.displayName = '@mantine/core/FloatingArrow';\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;AAIU,MAAC,aAAa,GAAG,UAAU,CAAC,CAAC,EAAE,EAAE,GAAG,KAAK;AACrD,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;AACf,IAAI,UAAU;AACd,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,aAAa;AACjB,IAAI,OAAO;AACX,IAAI,MAAM;AACV,IAAI,MAAM;AACV,GAAG,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE;AACjC,IAAI,YAAY;AAChB,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,aAAa;AACjB,IAAI,aAAa;AACjB,IAAI,eAAe;AACnB,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;AAClC,EAAE,IAAI,CAAC,OAAO,EAAE;AAChB,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE;AAC9F,IAAI,GAAG;AACP,IAAI,KAAK,EAAE,sBAAsB,CAAC;AAClC,MAAM,UAAU;AAChB,MAAM,QAAQ;AACd,MAAM,SAAS;AACf,MAAM,WAAW;AACjB,MAAM,WAAW;AACjB,MAAM,aAAa;AACnB,MAAM,GAAG,EAAE,KAAK,CAAC,GAAG;AACpB,MAAM,MAAM;AACZ,MAAM,MAAM;AACZ,KAAK,CAAC;AACN,GAAG,CAAC,CAAC,CAAC;AACN,CAAC,EAAE;AACH,aAAa,CAAC,WAAW,GAAG,6BAA6B;;;;"}
1
+ {"version":3,"file":"FloatingArrow.js","sources":["../../../src/Floating/FloatingArrow/FloatingArrow.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useMantineTheme } from '@mantine/styles';\nimport { getArrowPositionStyles } from './get-arrow-position-styles';\nimport { ArrowPosition, FloatingPosition } from '../types';\n\ninterface FloatingArrowProps extends React.ComponentPropsWithoutRef<'div'> {\n position: FloatingPosition;\n arrowSize: number;\n arrowOffset: number;\n arrowRadius: number;\n arrowPosition: ArrowPosition;\n arrowX: number;\n arrowY: number;\n visible: boolean;\n}\n\nexport const FloatingArrow = forwardRef<HTMLDivElement, FloatingArrowProps>(\n (\n {\n position,\n arrowSize,\n arrowOffset,\n arrowRadius,\n arrowPosition,\n visible,\n arrowX,\n arrowY,\n ...others\n },\n ref\n ) => {\n const theme = useMantineTheme();\n if (!visible) {\n return null;\n }\n\n return (\n <div\n {...others}\n ref={ref}\n style={getArrowPositionStyles({\n position,\n arrowSize,\n arrowOffset,\n arrowRadius,\n arrowPosition,\n dir: theme.dir,\n arrowX,\n arrowY,\n })}\n />\n );\n }\n);\n\nFloatingArrow.displayName = '@mantine/core/FloatingArrow';\n"],"names":[],"mappings":"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"}
@@ -51,7 +51,6 @@ const radiusByFloatingSide = {
51
51
  };
52
52
  function getArrowPositionStyles({
53
53
  position,
54
- withBorder,
55
54
  arrowSize,
56
55
  arrowOffset,
57
56
  arrowRadius,
@@ -68,33 +67,33 @@ function getArrowPositionStyles({
68
67
  position: "absolute",
69
68
  [radiusByFloatingSide[side]]: rem(arrowRadius)
70
69
  };
71
- const arrowPlacement = withBorder ? -arrowSize / 2 - 1 : -arrowSize / 2;
70
+ const arrowPlacement = rem(-arrowSize / 2);
72
71
  if (side === "left") {
73
72
  return __spreadProps(__spreadValues(__spreadValues({}, baseStyles), horizontalSide(placement, arrowY, arrowOffset, arrowPosition)), {
74
73
  right: arrowPlacement,
75
- borderLeft: 0,
76
- borderBottom: 0
74
+ borderLeftColor: "transparent",
75
+ borderBottomColor: "transparent"
77
76
  });
78
77
  }
79
78
  if (side === "right") {
80
79
  return __spreadProps(__spreadValues(__spreadValues({}, baseStyles), horizontalSide(placement, arrowY, arrowOffset, arrowPosition)), {
81
80
  left: arrowPlacement,
82
- borderRight: 0,
83
- borderTop: 0
81
+ borderRightColor: "transparent",
82
+ borderTopColor: "transparent"
84
83
  });
85
84
  }
86
85
  if (side === "top") {
87
86
  return __spreadProps(__spreadValues(__spreadValues({}, baseStyles), verticalSide(placement, arrowX, arrowOffset, arrowPosition, dir)), {
88
87
  bottom: arrowPlacement,
89
- borderTop: 0,
90
- borderLeft: 0
88
+ borderTopColor: "transparent",
89
+ borderLeftColor: "transparent"
91
90
  });
92
91
  }
93
92
  if (side === "bottom") {
94
93
  return __spreadProps(__spreadValues(__spreadValues({}, baseStyles), verticalSide(placement, arrowX, arrowOffset, arrowPosition, dir)), {
95
94
  top: arrowPlacement,
96
- borderBottom: 0,
97
- borderRight: 0
95
+ borderBottomColor: "transparent",
96
+ borderRightColor: "transparent"
98
97
  });
99
98
  }
100
99
  return {};
@@ -1 +1 @@
1
- {"version":3,"file":"get-arrow-position-styles.js","sources":["../../../src/Floating/FloatingArrow/get-arrow-position-styles.ts"],"sourcesContent":["import { CSSObject, rem } from '@mantine/styles';\nimport type { FloatingPosition, FloatingSide, FloatingPlacement, ArrowPosition } from '../types';\n\nfunction horizontalSide(\n placement: FloatingPlacement | 'center',\n arrowY: number,\n arrowOffset: number,\n arrowPosition: ArrowPosition\n) {\n if (placement === 'center' || arrowPosition === 'center') {\n return { top: arrowY };\n }\n\n if (placement === 'end') {\n return { bottom: arrowOffset };\n }\n\n if (placement === 'start') {\n return { top: arrowOffset };\n }\n\n return {};\n}\n\nfunction verticalSide(\n placement: FloatingPlacement | 'center',\n arrowX: number,\n arrowOffset: number,\n arrowPosition: ArrowPosition,\n dir: 'rtl' | 'ltr'\n) {\n if (placement === 'center' || arrowPosition === 'center') {\n return { left: arrowX };\n }\n\n if (placement === 'end') {\n return { [dir === 'ltr' ? 'right' : 'left']: arrowOffset };\n }\n\n if (placement === 'start') {\n return { [dir === 'ltr' ? 'left' : 'right']: arrowOffset };\n }\n\n return {};\n}\n\nconst radiusByFloatingSide: Record<\n FloatingSide,\n keyof Pick<\n CSSObject,\n | 'borderBottomLeftRadius'\n | 'borderBottomRightRadius'\n | 'borderTopLeftRadius'\n | 'borderTopRightRadius'\n >\n> = {\n bottom: 'borderTopLeftRadius',\n left: 'borderTopRightRadius',\n right: 'borderBottomLeftRadius',\n top: 'borderBottomRightRadius',\n};\n\nexport function getArrowPositionStyles({\n position,\n withBorder,\n arrowSize,\n arrowOffset,\n arrowRadius,\n arrowPosition,\n arrowX,\n arrowY,\n dir,\n}: {\n position: FloatingPosition;\n withBorder: boolean;\n arrowSize: number;\n arrowOffset: number;\n arrowRadius: number;\n arrowPosition: ArrowPosition;\n arrowX: number;\n arrowY: number;\n dir: 'rtl' | 'ltr';\n}) {\n const [side, placement = 'center'] = position.split('-') as [FloatingSide, FloatingPlacement];\n const baseStyles = {\n width: rem(arrowSize),\n height: rem(arrowSize),\n transform: 'rotate(45deg)',\n position: 'absolute',\n [radiusByFloatingSide[side]]: rem(arrowRadius),\n };\n\n const arrowPlacement = withBorder ? -arrowSize / 2 - 1 : -arrowSize / 2;\n\n if (side === 'left') {\n return {\n ...baseStyles,\n ...horizontalSide(placement, arrowY, arrowOffset, arrowPosition),\n right: arrowPlacement,\n borderLeft: 0,\n borderBottom: 0,\n };\n }\n\n if (side === 'right') {\n return {\n ...baseStyles,\n ...horizontalSide(placement, arrowY, arrowOffset, arrowPosition),\n left: arrowPlacement,\n borderRight: 0,\n borderTop: 0,\n };\n }\n\n if (side === 'top') {\n return {\n ...baseStyles,\n ...verticalSide(placement, arrowX, arrowOffset, arrowPosition, dir),\n bottom: arrowPlacement,\n borderTop: 0,\n borderLeft: 0,\n };\n }\n\n if (side === 'bottom') {\n return {\n ...baseStyles,\n ...verticalSide(placement, arrowX, arrowOffset, arrowPosition, dir),\n top: arrowPlacement,\n borderBottom: 0,\n borderRight: 0,\n };\n }\n\n return {};\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-arrow-position-styles.js","sources":["../../../src/Floating/FloatingArrow/get-arrow-position-styles.ts"],"sourcesContent":["import { CSSObject, rem } from '@mantine/styles';\nimport type { FloatingPosition, FloatingSide, FloatingPlacement, ArrowPosition } from '../types';\n\nfunction horizontalSide(\n placement: FloatingPlacement | 'center',\n arrowY: number,\n arrowOffset: number,\n arrowPosition: ArrowPosition\n) {\n if (placement === 'center' || arrowPosition === 'center') {\n return { top: arrowY };\n }\n\n if (placement === 'end') {\n return { bottom: arrowOffset };\n }\n\n if (placement === 'start') {\n return { top: arrowOffset };\n }\n\n return {};\n}\n\nfunction verticalSide(\n placement: FloatingPlacement | 'center',\n arrowX: number,\n arrowOffset: number,\n arrowPosition: ArrowPosition,\n dir: 'rtl' | 'ltr'\n) {\n if (placement === 'center' || arrowPosition === 'center') {\n return { left: arrowX };\n }\n\n if (placement === 'end') {\n return { [dir === 'ltr' ? 'right' : 'left']: arrowOffset };\n }\n\n if (placement === 'start') {\n return { [dir === 'ltr' ? 'left' : 'right']: arrowOffset };\n }\n\n return {};\n}\n\nconst radiusByFloatingSide: Record<\n FloatingSide,\n keyof Pick<\n CSSObject,\n | 'borderBottomLeftRadius'\n | 'borderBottomRightRadius'\n | 'borderTopLeftRadius'\n | 'borderTopRightRadius'\n >\n> = {\n bottom: 'borderTopLeftRadius',\n left: 'borderTopRightRadius',\n right: 'borderBottomLeftRadius',\n top: 'borderBottomRightRadius',\n};\n\nexport function getArrowPositionStyles({\n position,\n arrowSize,\n arrowOffset,\n arrowRadius,\n arrowPosition,\n arrowX,\n arrowY,\n dir,\n}: {\n position: FloatingPosition;\n arrowSize: number;\n arrowOffset: number;\n arrowRadius: number;\n arrowPosition: ArrowPosition;\n arrowX: number;\n arrowY: number;\n dir: 'rtl' | 'ltr';\n}) {\n const [side, placement = 'center'] = position.split('-') as [FloatingSide, FloatingPlacement];\n const baseStyles = {\n width: rem(arrowSize),\n height: rem(arrowSize),\n transform: 'rotate(45deg)',\n position: 'absolute',\n [radiusByFloatingSide[side]]: rem(arrowRadius),\n };\n\n const arrowPlacement = rem(-arrowSize / 2);\n\n if (side === 'left') {\n return {\n ...baseStyles,\n ...horizontalSide(placement, arrowY, arrowOffset, arrowPosition),\n right: arrowPlacement,\n borderLeftColor: 'transparent',\n borderBottomColor: 'transparent',\n };\n }\n\n if (side === 'right') {\n return {\n ...baseStyles,\n ...horizontalSide(placement, arrowY, arrowOffset, arrowPosition),\n left: arrowPlacement,\n borderRightColor: 'transparent',\n borderTopColor: 'transparent',\n };\n }\n\n if (side === 'top') {\n return {\n ...baseStyles,\n ...verticalSide(placement, arrowX, arrowOffset, arrowPosition, dir),\n bottom: arrowPlacement,\n borderTopColor: 'transparent',\n borderLeftColor: 'transparent',\n };\n }\n\n if (side === 'bottom') {\n return {\n ...baseStyles,\n ...verticalSide(placement, arrowX, arrowOffset, arrowPosition, dir),\n top: arrowPlacement,\n borderBottomColor: 'transparent',\n borderRightColor: 'transparent',\n };\n }\n\n return {};\n}\n"],"names":[],"mappings":"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"}
@@ -2,14 +2,25 @@ import { useState, useEffect } from 'react';
2
2
  import { autoUpdate } from '@floating-ui/react';
3
3
  import { useDidUpdate } from '@mantine/hooks';
4
4
 
5
- function useFloatingAutoUpdate({ opened, floating, positionDependencies }) {
5
+ function useFloatingAutoUpdate({
6
+ opened,
7
+ floating,
8
+ position,
9
+ positionDependencies
10
+ }) {
6
11
  const [delayedUpdate, setDelayedUpdate] = useState(0);
7
12
  useEffect(() => {
8
13
  if (floating.refs.reference.current && floating.refs.floating.current) {
9
14
  return autoUpdate(floating.refs.reference.current, floating.refs.floating.current, floating.update);
10
15
  }
11
16
  return void 0;
12
- }, [floating.refs.reference.current, floating.refs.floating.current, opened, delayedUpdate]);
17
+ }, [
18
+ floating.refs.reference.current,
19
+ floating.refs.floating.current,
20
+ opened,
21
+ delayedUpdate,
22
+ position
23
+ ]);
13
24
  useDidUpdate(() => {
14
25
  floating.update();
15
26
  }, positionDependencies);
@@ -1 +1 @@
1
- {"version":3,"file":"use-floating-auto-update.js","sources":["../../src/Floating/use-floating-auto-update.ts"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport { autoUpdate } from '@floating-ui/react';\nimport { useDidUpdate } from '@mantine/hooks';\n\ninterface Payload {\n opened: boolean;\n floating: {\n update(): void;\n refs: {\n floating: React.MutableRefObject<any>;\n reference: React.MutableRefObject<any>;\n };\n };\n positionDependencies: any[];\n}\n\nexport function useFloatingAutoUpdate({ opened, floating, positionDependencies }: Payload) {\n const [delayedUpdate, setDelayedUpdate] = useState(0);\n\n useEffect(() => {\n if (floating.refs.reference.current && floating.refs.floating.current) {\n return autoUpdate(\n floating.refs.reference.current,\n floating.refs.floating.current,\n floating.update\n );\n }\n\n return undefined;\n }, [floating.refs.reference.current, floating.refs.floating.current, opened, delayedUpdate]);\n\n useDidUpdate(() => {\n floating.update();\n }, positionDependencies);\n\n useDidUpdate(() => {\n setDelayedUpdate((c) => c + 1);\n }, [opened]);\n}\n"],"names":[],"mappings":";;;;AAGO,SAAS,qBAAqB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAAE,EAAE;AAClF,EAAE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;AACxD,EAAE,SAAS,CAAC,MAAM;AAClB,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;AAC3E,MAAM,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC1G,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,CAAC;AAClB,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;AAC/F,EAAE,YAAY,CAAC,MAAM;AACrB,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;AACtB,GAAG,EAAE,oBAAoB,CAAC,CAAC;AAC3B,EAAE,YAAY,CAAC,MAAM;AACrB,IAAI,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AACnC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AACf;;;;"}
1
+ {"version":3,"file":"use-floating-auto-update.js","sources":["../../src/Floating/use-floating-auto-update.ts"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport { autoUpdate } from '@floating-ui/react';\nimport { useDidUpdate } from '@mantine/hooks';\nimport { FloatingPosition } from './types';\n\ninterface Payload {\n opened: boolean;\n floating: {\n update(): void;\n refs: {\n floating: React.MutableRefObject<any>;\n reference: React.MutableRefObject<any>;\n };\n };\n positionDependencies: any[];\n position: FloatingPosition;\n}\n\nexport function useFloatingAutoUpdate({\n opened,\n floating,\n position,\n positionDependencies,\n}: Payload) {\n const [delayedUpdate, setDelayedUpdate] = useState(0);\n\n useEffect(() => {\n if (floating.refs.reference.current && floating.refs.floating.current) {\n return autoUpdate(\n floating.refs.reference.current,\n floating.refs.floating.current,\n floating.update\n );\n }\n\n return undefined;\n }, [\n floating.refs.reference.current,\n floating.refs.floating.current,\n opened,\n delayedUpdate,\n position,\n ]);\n\n useDidUpdate(() => {\n floating.update();\n }, positionDependencies);\n\n useDidUpdate(() => {\n setDelayedUpdate((c) => c + 1);\n }, [opened]);\n}\n"],"names":[],"mappings":";;;;AAGO,SAAS,qBAAqB,CAAC;AACtC,EAAE,MAAM;AACR,EAAE,QAAQ;AACV,EAAE,QAAQ;AACV,EAAE,oBAAoB;AACtB,CAAC,EAAE;AACH,EAAE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;AACxD,EAAE,SAAS,CAAC,MAAM;AAClB,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;AAC3E,MAAM,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC1G,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,CAAC;AAClB,GAAG,EAAE;AACL,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO;AACnC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;AAClC,IAAI,MAAM;AACV,IAAI,aAAa;AACjB,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,YAAY,CAAC,MAAM;AACrB,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;AACtB,GAAG,EAAE,oBAAoB,CAAC,CAAC;AAC3B,EAAE,YAAY,CAAC,MAAM;AACrB,IAAI,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AACnC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AACf;;;;"}
@@ -1,6 +1,6 @@
1
1
  const HOVER_CARD_ERRORS = {
2
2
  context: "HoverCard component was not found in the tree",
3
- children: "HoverCard.Target component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported"
3
+ children: "HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported"
4
4
  };
5
5
 
6
6
  export { HOVER_CARD_ERRORS };
@@ -1 +1 @@
1
- {"version":3,"file":"HoverCard.errors.js","sources":["../../src/HoverCard/HoverCard.errors.ts"],"sourcesContent":["export const HOVER_CARD_ERRORS = {\n context: 'HoverCard component was not found in the tree',\n children:\n 'HoverCard.Target component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported',\n};\n"],"names":[],"mappings":"AAAY,MAAC,iBAAiB,GAAG;AACjC,EAAE,OAAO,EAAE,+CAA+C;AAC1D,EAAE,QAAQ,EAAE,oKAAoK;AAChL;;;;"}
1
+ {"version":3,"file":"HoverCard.errors.js","sources":["../../src/HoverCard/HoverCard.errors.ts"],"sourcesContent":["export const HOVER_CARD_ERRORS = {\n context: 'HoverCard component was not found in the tree',\n children:\n 'HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported',\n};\n"],"names":[],"mappings":"AAAY,MAAC,iBAAiB,GAAG;AACjC,EAAE,OAAO,EAAE,+CAA+C;AAC1D,EAAE,QAAQ,EAAE,oKAAoK;AAChL;;;;"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { forwardRef } from 'react';
2
2
  import useStyles from './InlineInput.styles.js';
3
3
  import { Box } from '../Box/Box.js';
4
4
  import { Input } from '../Input/Input.js';
@@ -31,7 +31,7 @@ var __objRest = (source, exclude) => {
31
31
  }
32
32
  return target;
33
33
  };
34
- function InlineInput(_a) {
34
+ const InlineInput = forwardRef((_a, ref) => {
35
35
  var _b = _a, {
36
36
  __staticSelector,
37
37
  className,
@@ -65,7 +65,8 @@ function InlineInput(_a) {
65
65
  ]);
66
66
  const { classes, cx } = useStyles({ labelPosition }, { name: __staticSelector, styles, classNames, unstyled, variant, size });
67
67
  return /* @__PURE__ */ React.createElement(Box, __spreadValues({
68
- className: cx(classes.root, className)
68
+ className: cx(classes.root, className),
69
+ ref
69
70
  }, others), /* @__PURE__ */ React.createElement("div", {
70
71
  className: cx(classes.body)
71
72
  }, children, /* @__PURE__ */ React.createElement("div", {
@@ -79,7 +80,7 @@ function InlineInput(_a) {
79
80
  }, description), error && error !== "boolean" && /* @__PURE__ */ React.createElement(Input.Error, {
80
81
  className: classes.error
81
82
  }, error))));
82
- }
83
+ });
83
84
  InlineInput.displayName = "@mantine/core/InlineInput";
84
85
 
85
86
  export { InlineInput };
@@ -1 +1 @@
1
- {"version":3,"file":"InlineInput.js","sources":["../../src/InlineInput/InlineInput.tsx"],"sourcesContent":["import React from 'react';\nimport { DefaultProps, MantineNumberSize, Selectors } from '@mantine/styles';\nimport { Box } from '../Box';\nimport { Input } from '../Input';\nimport useStyles from './InlineInput.styles';\n\nexport type InlineInputStylesNames = Selectors<typeof useStyles>;\n\nexport interface InlineInputProps\n extends DefaultProps<InlineInputStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n variant?: string;\n __staticSelector: string;\n label: React.ReactNode;\n description: React.ReactNode;\n id: string;\n disabled: boolean;\n error: React.ReactNode;\n size: MantineNumberSize;\n labelPosition: 'left' | 'right';\n}\n\nexport function InlineInput({\n __staticSelector,\n className,\n classNames,\n styles,\n unstyled,\n children,\n label,\n description,\n id,\n disabled,\n error,\n size,\n labelPosition,\n variant,\n ...others\n}: InlineInputProps) {\n const { classes, cx } = useStyles(\n { labelPosition },\n { name: __staticSelector, styles, classNames, unstyled, variant, size }\n );\n\n return (\n <Box className={cx(classes.root, className)} {...others}>\n <div className={cx(classes.body)}>\n {children}\n\n <div className={classes.labelWrapper}>\n {label && (\n <label className={classes.label} data-disabled={disabled || undefined} htmlFor={id}>\n {label}\n </label>\n )}\n\n {description && (\n <Input.Description className={classes.description}>{description}</Input.Description>\n )}\n\n {error && error !== 'boolean' && (\n <Input.Error className={classes.error}>{error}</Input.Error>\n )}\n </div>\n </div>\n </Box>\n );\n}\n\nInlineInput.displayName = '@mantine/core/InlineInput';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InlineInput.js","sources":["../../src/InlineInput/InlineInput.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, MantineNumberSize, Selectors } from '@mantine/styles';\nimport { Box } from '../Box';\nimport { Input } from '../Input';\nimport useStyles from './InlineInput.styles';\n\nexport type InlineInputStylesNames = Selectors<typeof useStyles>;\n\nexport interface InlineInputProps\n extends DefaultProps<InlineInputStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n variant?: string;\n __staticSelector: string;\n label: React.ReactNode;\n description: React.ReactNode;\n id: string;\n disabled: boolean;\n error: React.ReactNode;\n size: MantineNumberSize;\n labelPosition: 'left' | 'right';\n}\n\nexport const InlineInput = forwardRef<HTMLDivElement, InlineInputProps>(\n (\n {\n __staticSelector,\n className,\n classNames,\n styles,\n unstyled,\n children,\n label,\n description,\n id,\n disabled,\n error,\n size,\n labelPosition,\n variant,\n ...others\n },\n ref\n ) => {\n const { classes, cx } = useStyles(\n { labelPosition },\n { name: __staticSelector, styles, classNames, unstyled, variant, size }\n );\n\n return (\n <Box className={cx(classes.root, className)} ref={ref} {...others}>\n <div className={cx(classes.body)}>\n {children}\n\n <div className={classes.labelWrapper}>\n {label && (\n <label className={classes.label} data-disabled={disabled || undefined} htmlFor={id}>\n {label}\n </label>\n )}\n\n {description && (\n <Input.Description className={classes.description}>{description}</Input.Description>\n )}\n\n {error && error !== 'boolean' && (\n <Input.Error className={classes.error}>{error}</Input.Error>\n )}\n </div>\n </div>\n </Box>\n );\n }\n);\n\nInlineInput.displayName = '@mantine/core/InlineInput';\n"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ const defaultProps = {
40
40
  formatOnBlur: false,
41
41
  size: "sm",
42
42
  serialize: JSON.stringify,
43
- deserialize: JSON.stringify
43
+ deserialize: JSON.parse
44
44
  };
45
45
  const JsonInput = forwardRef((props, ref) => {
46
46
  const _a = useComponentDefaultProps("JsonInput", defaultProps, props), {
@@ -91,7 +91,7 @@ const JsonInput = forwardRef((props, ref) => {
91
91
  const handleBlur = (event) => {
92
92
  typeof onBlur === "function" && onBlur(event);
93
93
  const isValid = validateJson(event.currentTarget.value, deserialize);
94
- isValid && event.currentTarget.value.trim() !== "" && setValue(serialize(deserialize(event.currentTarget.value), null, 2));
94
+ formatOnBlur && !readOnly && isValid && event.currentTarget.value.trim() !== "" && setValue(serialize(deserialize(event.currentTarget.value), null, 2));
95
95
  setValid(isValid);
96
96
  };
97
97
  return /* @__PURE__ */ React.createElement(Textarea, __spreadValues({
@@ -1 +1 @@
1
- {"version":3,"file":"JsonInput.js","sources":["../../src/JsonInput/JsonInput.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { DefaultProps, useComponentDefaultProps } from '@mantine/styles';\nimport { validateJson } from './validate-json/validate-json';\nimport { Textarea, TextareaProps } from '../Textarea';\nimport { TextInputStylesNames } from '../TextInput';\nimport useStyles from './JsonInput.styles';\n\nexport type JsonInputStylesNames = TextInputStylesNames;\n\nexport interface JsonInputProps\n extends DefaultProps<JsonInputStylesNames>,\n Omit<TextareaProps, 'onChange'> {\n /** Value for controlled input */\n value?: string;\n\n /** Default value for uncontrolled input */\n defaultValue?: string;\n\n /** onChange value for controlled input */\n onChange?(value: string): void;\n\n /** Format json on blur */\n formatOnBlur?: boolean;\n\n /** Error message shown when json is not valid */\n validationError?: React.ReactNode;\n\n /** Function to serialize value into string, used for value formatting, JSON.stringify by default */\n serialize?: typeof JSON.stringify;\n\n /** Function to deserialize string value, used for value formatting and input json validation, must throw error if string cannot be processed, JSON.parse by default */\n deserialize?: typeof JSON.parse;\n}\n\nconst defaultProps: Partial<JsonInputProps> = {\n formatOnBlur: false,\n size: 'sm',\n serialize: JSON.stringify,\n deserialize: JSON.stringify,\n};\n\nexport const JsonInput = forwardRef<HTMLTextAreaElement, JsonInputProps>((props, ref) => {\n const {\n value,\n defaultValue,\n onChange,\n onFocus,\n onBlur,\n error,\n formatOnBlur,\n size,\n validationError,\n classNames,\n unstyled,\n readOnly,\n variant,\n serialize,\n deserialize,\n ...others\n } = useComponentDefaultProps('JsonInput', defaultProps, props);\n\n const { classes, cx } = useStyles(null, { name: 'JsonInput', unstyled, size, variant });\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const [valid, setValid] = useState(validateJson(_value, deserialize));\n\n const handleFocus = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n setValid(true);\n };\n\n const handleBlur = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n const isValid = validateJson(event.currentTarget.value, deserialize);\n formatOnBlur && !readOnly;\n isValid &&\n event.currentTarget.value.trim() !== '' &&\n setValue(serialize(deserialize(event.currentTarget.value), null, 2));\n setValid(isValid);\n };\n\n return (\n <Textarea\n value={_value}\n onChange={(event) => setValue(event.currentTarget.value)}\n onFocus={handleFocus}\n onBlur={handleBlur}\n error={valid ? error : validationError || true}\n __staticSelector=\"JsonInput\"\n classNames={{ ...classNames, input: cx(classes.input, classNames?.input) }}\n autoComplete=\"nope\"\n ref={ref}\n unstyled={unstyled}\n readOnly={readOnly}\n size={size}\n variant={variant}\n {...others}\n />\n );\n});\n\nJsonInput.displayName = '@mantine/core/JsonInput';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonInput.js","sources":["../../src/JsonInput/JsonInput.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport { DefaultProps, useComponentDefaultProps } from '@mantine/styles';\nimport { validateJson } from './validate-json/validate-json';\nimport { Textarea, TextareaProps } from '../Textarea';\nimport { TextInputStylesNames } from '../TextInput';\nimport useStyles from './JsonInput.styles';\n\nexport type JsonInputStylesNames = TextInputStylesNames;\n\nexport interface JsonInputProps\n extends DefaultProps<JsonInputStylesNames>,\n Omit<TextareaProps, 'onChange'> {\n /** Value for controlled input */\n value?: string;\n\n /** Default value for uncontrolled input */\n defaultValue?: string;\n\n /** Called when value changes */\n onChange?(value: string): void;\n\n /** Format JSON on blur */\n formatOnBlur?: boolean;\n\n /** Error message shown when JSON is not valid */\n validationError?: React.ReactNode;\n\n /** Function to serialize value into a string, used for value formatting, JSON.stringify by default */\n serialize?: typeof JSON.stringify;\n\n /** Function to deserialize string value, used for value formatting and input JSON validation, must throw error if string cannot be processed, JSON.parse by default */\n deserialize?: typeof JSON.parse;\n}\n\nconst defaultProps: Partial<JsonInputProps> = {\n formatOnBlur: false,\n size: 'sm',\n serialize: JSON.stringify,\n deserialize: JSON.parse,\n};\n\nexport const JsonInput = forwardRef<HTMLTextAreaElement, JsonInputProps>((props, ref) => {\n const {\n value,\n defaultValue,\n onChange,\n onFocus,\n onBlur,\n error,\n formatOnBlur,\n size,\n validationError,\n classNames,\n unstyled,\n readOnly,\n variant,\n serialize,\n deserialize,\n ...others\n } = useComponentDefaultProps('JsonInput', defaultProps, props);\n\n const { classes, cx } = useStyles(null, { name: 'JsonInput', unstyled, size, variant });\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const [valid, setValid] = useState(validateJson(_value, deserialize));\n\n const handleFocus = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n setValid(true);\n };\n\n const handleBlur = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n const isValid = validateJson(event.currentTarget.value, deserialize);\n formatOnBlur &&\n !readOnly &&\n isValid &&\n event.currentTarget.value.trim() !== '' &&\n setValue(serialize(deserialize(event.currentTarget.value), null, 2));\n setValid(isValid);\n };\n\n return (\n <Textarea\n value={_value}\n onChange={(event) => setValue(event.currentTarget.value)}\n onFocus={handleFocus}\n onBlur={handleBlur}\n error={valid ? error : validationError || true}\n __staticSelector=\"JsonInput\"\n classNames={{ ...classNames, input: cx(classes.input, classNames?.input) }}\n autoComplete=\"nope\"\n ref={ref}\n unstyled={unstyled}\n readOnly={readOnly}\n size={size}\n variant={variant}\n {...others}\n />\n );\n});\n\nJsonInput.displayName = '@mantine/core/JsonInput';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  const MENU_ERRORS = {
2
2
  context: "Menu component was not found in the tree",
3
- children: "Menu.Target component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported"
3
+ children: "Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported"
4
4
  };
5
5
 
6
6
  export { MENU_ERRORS };
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.errors.js","sources":["../../src/Menu/Menu.errors.ts"],"sourcesContent":["export const MENU_ERRORS = {\n context: 'Menu component was not found in the tree',\n children:\n 'Menu.Target component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported',\n};\n"],"names":[],"mappings":"AAAY,MAAC,WAAW,GAAG;AAC3B,EAAE,OAAO,EAAE,0CAA0C;AACrD,EAAE,QAAQ,EAAE,+JAA+J;AAC3K;;;;"}
1
+ {"version":3,"file":"Menu.errors.js","sources":["../../src/Menu/Menu.errors.ts"],"sourcesContent":["export const MENU_ERRORS = {\n context: 'Menu component was not found in the tree',\n children:\n 'Menu.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported',\n};\n"],"names":[],"mappings":"AAAY,MAAC,WAAW,GAAG;AAC3B,EAAE,OAAO,EAAE,0CAA0C;AACrD,EAAE,QAAQ,EAAE,+JAA+J;AAC3K;;;;"}
@@ -67,6 +67,7 @@ function ModalBase(props) {
67
67
  __staticSelector,
68
68
  transitionProps,
69
69
  withinPortal,
70
+ portalProps,
70
71
  keepMounted,
71
72
  target,
72
73
  zIndex,
@@ -91,6 +92,7 @@ function ModalBase(props) {
91
92
  "__staticSelector",
92
93
  "transitionProps",
93
94
  "withinPortal",
95
+ "portalProps",
94
96
  "keepMounted",
95
97
  "target",
96
98
  "zIndex",
@@ -127,10 +129,10 @@ function ModalBase(props) {
127
129
  }
128
130
  });
129
131
  useFocusReturn({ opened, shouldReturnFocus: trapFocus && returnFocus });
130
- return /* @__PURE__ */ React.createElement(OptionalPortal, {
132
+ return /* @__PURE__ */ React.createElement(OptionalPortal, __spreadValues({
131
133
  withinPortal,
132
134
  target
133
- }, /* @__PURE__ */ React.createElement(ModalBaseProvider, {
135
+ }, portalProps), /* @__PURE__ */ React.createElement(ModalBaseProvider, {
134
136
  value: {
135
137
  __staticSelector,
136
138
  opened,
@@ -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 } 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 /** 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 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(props.__staticSelector, 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}>\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} 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(props.__staticSelector, 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,4 +1,4 @@
1
- import React, { forwardRef, useState, useRef } from 'react';
1
+ import React, { forwardRef, useState, useRef, useEffect } from 'react';
2
2
  import { useId, useUncontrolled } from '@mantine/hooks';
3
3
  import { useComponentDefaultProps } from '@mantine/styles';
4
4
  import { createPinArray } from './create-pin-array/create-pin-array.js';
@@ -153,12 +153,7 @@ const PinInput = forwardRef((props, ref) => {
153
153
  const isValid = validate(nextChar);
154
154
  if (isValid) {
155
155
  setFieldValue(nextChar, index);
156
- const isComplete = _value.length === length;
157
- if (isComplete) {
158
- onComplete == null ? void 0 : onComplete(_value);
159
- } else {
160
- focusInputField("next", index);
161
- }
156
+ focusInputField("next", index);
162
157
  } else {
163
158
  setFieldValue("", index);
164
159
  }
@@ -187,6 +182,11 @@ const PinInput = forwardRef((props, ref) => {
187
182
  setValues(copyValue);
188
183
  }
189
184
  };
185
+ useEffect(() => {
186
+ if (_value.length !== length)
187
+ return;
188
+ onComplete == null ? void 0 : onComplete(_value);
189
+ }, [_value]);
190
190
  return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Group, __spreadValues({
191
191
  role: "group",
192
192
  spacing,
@@ -1 +1 @@
1
- {"version":3,"file":"PinInput.js","sources":["../../src/PinInput/PinInput.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useState } from 'react';\nimport { useUncontrolled, useId } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n useComponentDefaultProps,\n Selectors,\n} from '@mantine/styles';\nimport { Group } from '../Group';\nimport { Input, InputSharedProps, InputStylesNames } from '../Input';\nimport { createPinArray } from './create-pin-array/create-pin-array';\nimport useStyles from './PinInput.styles';\n\nconst regex = {\n number: /^[0-9]+$/,\n alphanumeric: /^[a-zA-Z0-9]+$/i,\n};\n\nexport type PinInputStylesNames = Selectors<typeof useStyles> | InputStylesNames;\n\nexport interface PinInputProps\n extends DefaultProps<PinInputStylesNames>,\n InputSharedProps,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {\n /** Hidden input name attribute */\n name?: string;\n\n /** Hidden input form attribute */\n form?: string;\n\n /** Key of theme.spacing or any valid CSS value to set spacing between inputs */\n spacing?: MantineNumberSize;\n\n /** Key of theme.radius or any valid CSS value to set border-radius, theme.defaultRadius by default */\n radius?: MantineNumberSize;\n\n /** Input width and height */\n size?: MantineSize;\n\n /** If set, first input is focused when component is mounted */\n autoFocus?: boolean;\n\n /** Value for controlled component */\n value?: string;\n\n /** Default value for uncontrolled component */\n defaultValue?: string;\n\n /** Called when value changes */\n onChange?: (value: string) => void;\n\n /** Called when user enters value to all inputs */\n onComplete?(value: string): void;\n\n /** Placeholder for every input field */\n placeholder?: string;\n\n /** Determines whether focus should be moved automatically to the next input once filled */\n manageFocus?: boolean;\n\n /** Determines whether autocomplete=\"one-time-code\" attribute should be set on all inputs */\n oneTimeCode?: boolean;\n\n /** The top-level id that is used as a base in all input fields */\n id?: string;\n\n /** Sets inputs disabled attribute */\n disabled?: boolean;\n\n /** Adds error styles to all inputs */\n error?: boolean;\n\n /** The type of allowed values */\n type?: 'alphanumeric' | 'number' | RegExp;\n\n /** Changes input type to \"password\" */\n mask?: boolean;\n\n /** Number of input boxes */\n length?: number;\n\n /** Determines whether the user can edit input content */\n readOnly?: boolean;\n\n /** Inputs type attribute, inferred from type prop if not specified */\n inputType?: React.HTMLInputTypeAttribute;\n\n /** inputmode attr, inferred from type prop if not specified */\n inputMode?:\n | 'none'\n | 'text'\n | 'tel'\n | 'url'\n | 'email'\n | 'numeric'\n | 'decimal'\n | 'search'\n | undefined;\n}\n\nconst defaultProps: Partial<PinInputProps> = {\n spacing: 'sm',\n size: 'sm',\n length: 4,\n manageFocus: true,\n placeholder: '○',\n type: 'alphanumeric',\n};\n\nexport const PinInput = forwardRef<HTMLDivElement, PinInputProps>((props, ref) => {\n const {\n name,\n form,\n className,\n value,\n defaultValue,\n variant,\n spacing,\n size,\n classNames,\n styles,\n unstyled,\n sx,\n length,\n onChange,\n onComplete,\n manageFocus,\n autoFocus,\n error,\n radius,\n disabled,\n oneTimeCode,\n placeholder,\n type,\n mask,\n 'aria-label': ariaLabel,\n readOnly,\n inputType,\n inputMode,\n ...others\n } = useComponentDefaultProps('PinInput', defaultProps, props);\n\n const uuid = useId(name);\n const { classes, cx } = useStyles(null, {\n name: 'PinInput',\n classNames,\n styles,\n unstyled,\n variant,\n size,\n });\n\n const [focusedIndex, setFocusedIndex] = useState(-1);\n\n const [_value, setValues] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const inputsRef = useRef<Array<HTMLInputElement>>([]);\n\n const validate = (code: string) => {\n const re = type instanceof RegExp ? type : type in regex ? regex[type] : null;\n return re?.test(code);\n };\n\n const focusInputField = (dir: 'next' | 'prev', index: number) => {\n if (!manageFocus) return;\n\n if (dir === 'next') {\n const nextIndex = index + 1;\n inputsRef.current[nextIndex < length ? nextIndex : index].focus();\n }\n\n if (dir === 'prev') {\n const nextIndex = index - 1;\n\n inputsRef.current[nextIndex > -1 ? nextIndex : index].focus();\n }\n };\n\n const setFieldValue = (val: string, index: number) => {\n const values = [...createPinArray(length, _value)];\n values[index] = val;\n setValues(values.join(''));\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>, index: number) => {\n const inputValue = event.target.value;\n const nextChar =\n inputValue.length > 1 ? inputValue.split('')[inputValue.length - 1] : inputValue;\n\n const isValid = validate(nextChar);\n\n if (isValid) {\n setFieldValue(nextChar, index);\n const isComplete = _value.length === length;\n\n if (isComplete) {\n onComplete?.(_value);\n } else {\n focusInputField('next', index);\n }\n } else {\n setFieldValue('', index);\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>, index: number) => {\n if (event.key === 'Backspace') {\n if ((event.target as HTMLInputElement).value !== '') {\n setFieldValue('', index);\n } else {\n focusInputField('prev', index);\n }\n }\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>, index: number) => {\n event.target.select();\n setFocusedIndex(index);\n };\n\n const handleBlur = () => {\n setFocusedIndex(-1);\n };\n\n const handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n event.preventDefault();\n const copyValue = event.clipboardData.getData('Text');\n const isValid = validate(copyValue);\n\n if (isValid) {\n setValues(copyValue);\n }\n };\n\n return (\n <>\n <Group\n role=\"group\"\n spacing={spacing}\n ref={ref}\n className={cx(classes.root, className)}\n sx={sx}\n unstyled={unstyled}\n id={uuid}\n noWrap\n {...others}\n >\n {createPinArray(length, _value).map((char, index) => (\n <Input<'input'>\n __staticSelector=\"PinInput\"\n id={`${uuid}-${index + 1}`}\n key={`${uuid}-${index}`}\n inputMode={inputMode || (type === 'number' ? 'numeric' : 'text')}\n onChange={(event) => handleChange(event, index)}\n onKeyDown={(event) => handleKeyDown(event, index)}\n onFocus={(event) => handleFocus(event, index)}\n onBlur={handleBlur}\n onPaste={handlePaste}\n type={inputType || (mask ? 'password' : type === 'number' ? 'tel' : 'text')}\n radius={radius}\n error={error}\n variant={variant}\n size={size}\n disabled={disabled}\n ref={(node) => {\n inputsRef.current[index] = node;\n }}\n autoComplete={oneTimeCode ? 'one-time-code' : 'off'}\n placeholder={focusedIndex === index ? '' : placeholder}\n value={char}\n autoFocus={autoFocus && index === 0}\n classNames={{\n ...classNames,\n input: cx(classes.input, classNames?.input),\n }}\n styles={styles}\n unstyled={unstyled}\n aria-label={ariaLabel}\n readOnly={readOnly}\n />\n ))}\n </Group>\n <input type=\"hidden\" name={name} form={form} value={_value} />\n </>\n );\n});\n\nPinInput.displayName = '@mantine/core/PinInput';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PinInput.js","sources":["../../src/PinInput/PinInput.tsx"],"sourcesContent":["import React, { forwardRef, useRef, useState, useEffect } from 'react';\nimport { useUncontrolled, useId } from '@mantine/hooks';\nimport {\n DefaultProps,\n MantineNumberSize,\n MantineSize,\n useComponentDefaultProps,\n Selectors,\n} from '@mantine/styles';\nimport { Group } from '../Group';\nimport { Input, InputSharedProps, InputStylesNames } from '../Input';\nimport { createPinArray } from './create-pin-array/create-pin-array';\nimport useStyles from './PinInput.styles';\n\nconst regex = {\n number: /^[0-9]+$/,\n alphanumeric: /^[a-zA-Z0-9]+$/i,\n};\n\nexport type PinInputStylesNames = Selectors<typeof useStyles> | InputStylesNames;\n\nexport interface PinInputProps\n extends DefaultProps<PinInputStylesNames>,\n InputSharedProps,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {\n /** Hidden input name attribute */\n name?: string;\n\n /** Hidden input form attribute */\n form?: string;\n\n /** Key of theme.spacing or any valid CSS value to set spacing between inputs */\n spacing?: MantineNumberSize;\n\n /** Key of theme.radius or any valid CSS value to set border-radius, theme.defaultRadius by default */\n radius?: MantineNumberSize;\n\n /** Input width and height */\n size?: MantineSize;\n\n /** If set, first input is focused when component is mounted */\n autoFocus?: boolean;\n\n /** Value for controlled component */\n value?: string;\n\n /** Default value for uncontrolled component */\n defaultValue?: string;\n\n /** Called when value changes */\n onChange?: (value: string) => void;\n\n /** Called when user enters value to all inputs */\n onComplete?(value: string): void;\n\n /** Placeholder for every input field */\n placeholder?: string;\n\n /** Determines whether focus should be moved automatically to the next input once filled */\n manageFocus?: boolean;\n\n /** Determines whether autocomplete=\"one-time-code\" attribute should be set on all inputs */\n oneTimeCode?: boolean;\n\n /** The top-level id that is used as a base in all input fields */\n id?: string;\n\n /** Sets inputs disabled attribute */\n disabled?: boolean;\n\n /** Adds error styles to all inputs */\n error?: boolean;\n\n /** The type of allowed values */\n type?: 'alphanumeric' | 'number' | RegExp;\n\n /** Changes input type to \"password\" */\n mask?: boolean;\n\n /** Number of input boxes */\n length?: number;\n\n /** Determines whether the user can edit input content */\n readOnly?: boolean;\n\n /** Inputs type attribute, inferred from type prop if not specified */\n inputType?: React.HTMLInputTypeAttribute;\n\n /** inputmode attr, inferred from type prop if not specified */\n inputMode?:\n | 'none'\n | 'text'\n | 'tel'\n | 'url'\n | 'email'\n | 'numeric'\n | 'decimal'\n | 'search'\n | undefined;\n}\n\nconst defaultProps: Partial<PinInputProps> = {\n spacing: 'sm',\n size: 'sm',\n length: 4,\n manageFocus: true,\n placeholder: '○',\n type: 'alphanumeric',\n};\n\nexport const PinInput = forwardRef<HTMLDivElement, PinInputProps>((props, ref) => {\n const {\n name,\n form,\n className,\n value,\n defaultValue,\n variant,\n spacing,\n size,\n classNames,\n styles,\n unstyled,\n sx,\n length,\n onChange,\n onComplete,\n manageFocus,\n autoFocus,\n error,\n radius,\n disabled,\n oneTimeCode,\n placeholder,\n type,\n mask,\n 'aria-label': ariaLabel,\n readOnly,\n inputType,\n inputMode,\n ...others\n } = useComponentDefaultProps('PinInput', defaultProps, props);\n\n const uuid = useId(name);\n const { classes, cx } = useStyles(null, {\n name: 'PinInput',\n classNames,\n styles,\n unstyled,\n variant,\n size,\n });\n\n const [focusedIndex, setFocusedIndex] = useState(-1);\n\n const [_value, setValues] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const inputsRef = useRef<Array<HTMLInputElement>>([]);\n\n const validate = (code: string) => {\n const re = type instanceof RegExp ? type : type in regex ? regex[type] : null;\n return re?.test(code);\n };\n\n const focusInputField = (dir: 'next' | 'prev', index: number) => {\n if (!manageFocus) return;\n\n if (dir === 'next') {\n const nextIndex = index + 1;\n inputsRef.current[nextIndex < length ? nextIndex : index].focus();\n }\n\n if (dir === 'prev') {\n const nextIndex = index - 1;\n\n inputsRef.current[nextIndex > -1 ? nextIndex : index].focus();\n }\n };\n\n const setFieldValue = (val: string, index: number) => {\n const values = [...createPinArray(length, _value)];\n values[index] = val;\n setValues(values.join(''));\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>, index: number) => {\n const inputValue = event.target.value;\n const nextChar =\n inputValue.length > 1 ? inputValue.split('')[inputValue.length - 1] : inputValue;\n\n const isValid = validate(nextChar);\n\n if (isValid) {\n setFieldValue(nextChar, index);\n focusInputField('next', index);\n } else {\n setFieldValue('', index);\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>, index: number) => {\n if (event.key === 'Backspace') {\n if ((event.target as HTMLInputElement).value !== '') {\n setFieldValue('', index);\n } else {\n focusInputField('prev', index);\n }\n }\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>, index: number) => {\n event.target.select();\n setFocusedIndex(index);\n };\n\n const handleBlur = () => {\n setFocusedIndex(-1);\n };\n\n const handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n event.preventDefault();\n const copyValue = event.clipboardData.getData('Text');\n const isValid = validate(copyValue);\n\n if (isValid) {\n setValues(copyValue);\n }\n };\n\n useEffect(() => {\n if (_value.length !== length) return;\n\n onComplete?.(_value);\n }, [_value]);\n\n return (\n <>\n <Group\n role=\"group\"\n spacing={spacing}\n ref={ref}\n className={cx(classes.root, className)}\n sx={sx}\n unstyled={unstyled}\n id={uuid}\n noWrap\n {...others}\n >\n {createPinArray(length, _value).map((char, index) => (\n <Input<'input'>\n __staticSelector=\"PinInput\"\n id={`${uuid}-${index + 1}`}\n key={`${uuid}-${index}`}\n inputMode={inputMode || (type === 'number' ? 'numeric' : 'text')}\n onChange={(event) => handleChange(event, index)}\n onKeyDown={(event) => handleKeyDown(event, index)}\n onFocus={(event) => handleFocus(event, index)}\n onBlur={handleBlur}\n onPaste={handlePaste}\n type={inputType || (mask ? 'password' : type === 'number' ? 'tel' : 'text')}\n radius={radius}\n error={error}\n variant={variant}\n size={size}\n disabled={disabled}\n ref={(node) => {\n inputsRef.current[index] = node;\n }}\n autoComplete={oneTimeCode ? 'one-time-code' : 'off'}\n placeholder={focusedIndex === index ? '' : placeholder}\n value={char}\n autoFocus={autoFocus && index === 0}\n classNames={{\n ...classNames,\n input: cx(classes.input, classNames?.input),\n }}\n styles={styles}\n unstyled={unstyled}\n aria-label={ariaLabel}\n readOnly={readOnly}\n />\n ))}\n </Group>\n <input type=\"hidden\" name={name} form={form} value={_value} />\n </>\n );\n});\n\nPinInput.displayName = '@mantine/core/PinInput';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.context.js","sources":["../../src/Popover/Popover.context.ts"],"sourcesContent":["import { ReferenceType } from '@floating-ui/react';\nimport { createSafeContext } from '@mantine/utils';\nimport { MantineNumberSize, MantineShadow, ClassNames, Styles } from '@mantine/styles';\nimport { FloatingPosition, ArrowPosition } from '../Floating';\nimport { TransitionOverride } from '../Transition';\nimport { POPOVER_ERRORS } from './Popover.errors';\nimport { PopoverWidth, PopoverStylesNames, PopoverStylesParams } from './Popover.types';\n\ninterface PopoverContext {\n x: number;\n y: number;\n arrowX: number;\n arrowY: number;\n arrowRef: React.RefObject<HTMLDivElement>;\n opened: boolean;\n transitionProps?: TransitionOverride;\n reference: (node: ReferenceType) => void;\n floating: (node: HTMLElement) => void;\n width?: PopoverWidth;\n withArrow: boolean;\n arrowSize: number;\n arrowOffset: number;\n arrowRadius: number;\n arrowPosition: ArrowPosition;\n trapFocus: boolean;\n placement: FloatingPosition;\n withinPortal: boolean;\n closeOnEscape: boolean;\n zIndex: React.CSSProperties['zIndex'];\n radius?: MantineNumberSize;\n shadow?: MantineShadow;\n onClose?(): void;\n getDropdownId(): string;\n getTargetId(): string;\n controlled: boolean;\n onToggle(): void;\n withRoles: boolean;\n targetProps: Record<string, any>;\n disabled: boolean;\n returnFocus: boolean;\n classNames: ClassNames<PopoverStylesNames>;\n styles: Styles<PopoverStylesNames, PopoverStylesParams>;\n unstyled: boolean;\n __staticSelector: string;\n variant: string;\n keepMounted: boolean;\n}\n\nexport const [PopoverContextProvider, usePopoverContext] = createSafeContext<PopoverContext>(\n POPOVER_ERRORS.context\n);\n"],"names":[],"mappings":";;;AAEY,MAAC,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,GAAG,iBAAiB,CAAC,cAAc,CAAC,OAAO;;;;"}
1
+ {"version":3,"file":"Popover.context.js","sources":["../../src/Popover/Popover.context.ts"],"sourcesContent":["import { ReferenceType } from '@floating-ui/react';\nimport { createSafeContext } from '@mantine/utils';\nimport { MantineNumberSize, MantineShadow, ClassNames, Styles } from '@mantine/styles';\nimport { FloatingPosition, ArrowPosition } from '../Floating';\nimport { TransitionOverride } from '../Transition';\nimport { PortalProps } from '../Portal';\nimport { POPOVER_ERRORS } from './Popover.errors';\nimport { PopoverWidth, PopoverStylesNames, PopoverStylesParams } from './Popover.types';\n\ninterface PopoverContext {\n x: number;\n y: number;\n arrowX: number;\n arrowY: number;\n arrowRef: React.RefObject<HTMLDivElement>;\n opened: boolean;\n transitionProps?: TransitionOverride;\n reference: (node: ReferenceType) => void;\n floating: (node: HTMLElement) => void;\n width?: PopoverWidth;\n withArrow: boolean;\n arrowSize: number;\n arrowOffset: number;\n arrowRadius: number;\n arrowPosition: ArrowPosition;\n trapFocus: boolean;\n placement: FloatingPosition;\n withinPortal: boolean;\n portalProps?: PortalProps;\n closeOnEscape: boolean;\n zIndex: React.CSSProperties['zIndex'];\n radius?: MantineNumberSize;\n shadow?: MantineShadow;\n onClose?(): void;\n getDropdownId(): string;\n getTargetId(): string;\n controlled: boolean;\n onToggle(): void;\n withRoles: boolean;\n targetProps: Record<string, any>;\n disabled: boolean;\n returnFocus: boolean;\n classNames: ClassNames<PopoverStylesNames>;\n styles: Styles<PopoverStylesNames, PopoverStylesParams>;\n unstyled: boolean;\n __staticSelector: string;\n variant: string;\n keepMounted: boolean;\n}\n\nexport const [PopoverContextProvider, usePopoverContext] = createSafeContext<PopoverContext>(\n POPOVER_ERRORS.context\n);\n"],"names":[],"mappings":";;;AAEY,MAAC,CAAC,sBAAsB,EAAE,iBAAiB,CAAC,GAAG,iBAAiB,CAAC,cAAc,CAAC,OAAO;;;;"}
@@ -1,6 +1,6 @@
1
1
  const POPOVER_ERRORS = {
2
2
  context: "Popover component was not found in the tree",
3
- children: "Popover.Target component children should be an element or a component that accepts ref, fragments, strings, numbers and other primitive values are not supported"
3
+ children: "Popover.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported"
4
4
  };
5
5
 
6
6
  export { POPOVER_ERRORS };