@mantine/core 7.1.3 → 7.2.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (404) hide show
  1. package/cjs/components/Accordion/Accordion.context.js.map +1 -1
  2. package/cjs/components/Accordion/Accordion.js.map +1 -1
  3. package/cjs/components/ActionIcon/ActionIcon.js +1 -0
  4. package/cjs/components/ActionIcon/ActionIcon.js.map +1 -1
  5. package/cjs/components/Alert/Alert.js.map +1 -1
  6. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  7. package/cjs/components/Button/Button.js +2 -1
  8. package/cjs/components/Button/Button.js.map +1 -1
  9. package/cjs/components/Checkbox/Checkbox.js +15 -10
  10. package/cjs/components/Checkbox/Checkbox.js.map +1 -1
  11. package/cjs/components/Checkbox/CheckboxGroup/CheckboxGroup.js.map +1 -1
  12. package/cjs/components/Checkbox/CheckboxGroup.context.js.map +1 -1
  13. package/cjs/components/Chip/Chip.js.map +1 -1
  14. package/cjs/components/Chip/ChipGroup/ChipGroup.js.map +1 -1
  15. package/cjs/components/Chip/ChipGroup.context.js.map +1 -1
  16. package/cjs/components/Collapse/Collapse.js.map +1 -1
  17. package/cjs/components/ColorInput/ColorInput.js +1 -1
  18. package/cjs/components/ColorInput/ColorInput.js.map +1 -1
  19. package/cjs/components/ColorPicker/ColorPicker.js.map +1 -1
  20. package/cjs/components/ColorPicker/ColorSlider/ColorSlider.js.map +1 -1
  21. package/cjs/components/ColorPicker/Saturation/Saturation.js.map +1 -1
  22. package/cjs/components/ColorPicker/Swatches/Swatches.js.map +1 -1
  23. package/cjs/components/Combobox/Combobox.context.js.map +1 -1
  24. package/cjs/components/Combobox/Combobox.js.map +1 -1
  25. package/cjs/components/Combobox/ComboboxClearButton/ComboboxClearButton.js.map +1 -1
  26. package/cjs/components/Combobox/use-combobox/use-combobox.js.map +1 -1
  27. package/cjs/components/Combobox/use-combobox/use-virtualized-combobox.js.map +1 -1
  28. package/cjs/components/CopyButton/CopyButton.js.map +1 -1
  29. package/cjs/components/Dialog/Dialog.js.map +1 -1
  30. package/cjs/components/FileButton/FileButton.js.map +1 -1
  31. package/cjs/components/FileInput/FileInput.js.map +1 -1
  32. package/cjs/components/Flex/Flex.js +2 -2
  33. package/cjs/components/Flex/Flex.js.map +1 -1
  34. package/cjs/components/Floating/use-delayed-hover.js.map +1 -1
  35. package/cjs/components/Floating/use-floating-auto-update.js.map +1 -1
  36. package/cjs/components/Highlight/highlighter/highlighter.js +1 -1
  37. package/cjs/components/Highlight/highlighter/highlighter.js.map +1 -1
  38. package/cjs/components/HoverCard/HoverCard.context.js.map +1 -1
  39. package/cjs/components/HoverCard/HoverCard.js.map +1 -1
  40. package/cjs/components/HoverCard/HoverCardTarget/HoverCardTarget.js +10 -2
  41. package/cjs/components/HoverCard/HoverCardTarget/HoverCardTarget.js.map +1 -1
  42. package/cjs/components/Image/Image.js.map +1 -1
  43. package/cjs/components/Input/Input.js.map +1 -1
  44. package/cjs/components/Input/InputWrapper/InputWrapper.js.map +1 -1
  45. package/cjs/components/JsonInput/JsonInput.js.map +1 -1
  46. package/cjs/components/Loader/Loader.js +7 -2
  47. package/cjs/components/Loader/Loader.js.map +1 -1
  48. package/cjs/components/Menu/Menu.context.js.map +1 -1
  49. package/cjs/components/Menu/Menu.js.map +1 -1
  50. package/cjs/components/ModalBase/ModalBase.context.js.map +1 -1
  51. package/cjs/components/ModalBase/ModalBase.js.map +1 -1
  52. package/cjs/components/ModalBase/use-modal.js.map +1 -1
  53. package/cjs/components/MultiSelect/MultiSelect.js.map +1 -1
  54. package/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  55. package/cjs/components/NavLink/NavLink.js.map +1 -1
  56. package/cjs/components/Notification/Notification.js.map +1 -1
  57. package/cjs/components/NumberFormatter/NumberFormatter.js +56 -0
  58. package/cjs/components/NumberFormatter/NumberFormatter.js.map +1 -0
  59. package/cjs/components/NumberInput/NumberInput.js.map +1 -1
  60. package/cjs/components/Pagination/Pagination.context.js.map +1 -1
  61. package/cjs/components/Pagination/Pagination.js.map +1 -1
  62. package/cjs/components/Pagination/PaginationRoot/PaginationRoot.js.map +1 -1
  63. package/cjs/components/PasswordInput/PasswordInput.js +5 -6
  64. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  65. package/cjs/components/Pill/Pill.js.map +1 -1
  66. package/cjs/components/PillsInput/PillsInput.js.map +1 -1
  67. package/cjs/components/PinInput/PinInput.js.map +1 -1
  68. package/cjs/components/Popover/Popover.context.js.map +1 -1
  69. package/cjs/components/Popover/Popover.js.map +1 -1
  70. package/cjs/components/Popover/use-popover.js.map +1 -1
  71. package/cjs/components/Radio/Radio.js +14 -9
  72. package/cjs/components/Radio/Radio.js.map +1 -1
  73. package/cjs/components/Radio/RadioGroup/RadioGroup.js.map +1 -1
  74. package/cjs/components/Radio/RadioGroup.context.js.map +1 -1
  75. package/cjs/components/Radio/RadioIcon.js +1 -1
  76. package/cjs/components/Radio/RadioIcon.js.map +1 -1
  77. package/cjs/components/Rating/Rating.js.map +1 -1
  78. package/cjs/components/Rating/RatingItem/RatingItem.js.map +1 -1
  79. package/cjs/components/ScrollArea/ScrollArea.context.js.map +1 -1
  80. package/cjs/components/ScrollArea/ScrollArea.js.map +1 -1
  81. package/cjs/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.js.map +1 -1
  82. package/cjs/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.js.map +1 -1
  83. package/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  84. package/cjs/components/Select/Select.js.map +1 -1
  85. package/cjs/components/Slider/RangeSlider/RangeSlider.js.map +1 -1
  86. package/cjs/components/Slider/Slider/Slider.js.map +1 -1
  87. package/cjs/components/Slider/Thumb/Thumb.js.map +1 -1
  88. package/cjs/components/Stepper/Stepper.js.map +1 -1
  89. package/cjs/components/Switch/SwitchGroup/SwitchGroup.js.map +1 -1
  90. package/cjs/components/Switch/SwitchGroup.context.js.map +1 -1
  91. package/cjs/components/Table/Table.components.js +4 -1
  92. package/cjs/components/Table/Table.components.js.map +1 -1
  93. package/cjs/components/Table/Table.context.js.map +1 -1
  94. package/cjs/components/Table/Table.js +21 -5
  95. package/cjs/components/Table/Table.js.map +1 -1
  96. package/cjs/components/Table/Table.module.css.js +1 -1
  97. package/cjs/components/Table/TableDataRenderer.js +19 -0
  98. package/cjs/components/Table/TableDataRenderer.js.map +1 -0
  99. package/cjs/components/Tabs/Tabs.context.js.map +1 -1
  100. package/cjs/components/Tabs/Tabs.js.map +1 -1
  101. package/cjs/components/TagsInput/TagsInput.js +4 -0
  102. package/cjs/components/TagsInput/TagsInput.js.map +1 -1
  103. package/cjs/components/TextInput/TextInput.js.map +1 -1
  104. package/cjs/components/Textarea/Textarea.js.map +1 -1
  105. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  106. package/cjs/components/Tooltip/use-tooltip.js.map +1 -1
  107. package/cjs/components/Transition/Transition.js.map +1 -1
  108. package/cjs/components/Transition/transitions.js +8 -8
  109. package/cjs/components/Transition/transitions.js.map +1 -1
  110. package/cjs/components/Transition/use-transition.js.map +1 -1
  111. package/cjs/core/Box/Box.js +6 -0
  112. package/cjs/core/Box/Box.js.map +1 -1
  113. package/cjs/core/Box/style-props/extract-style-props/extract-style-props.js +9 -3
  114. package/cjs/core/Box/style-props/extract-style-props/extract-style-props.js.map +1 -1
  115. package/cjs/core/DirectionProvider/DirectionProvider.js.map +1 -1
  116. package/cjs/core/MantineProvider/Mantine.context.js.map +1 -1
  117. package/cjs/core/MantineProvider/MantineCssVariables/get-merged-variables.js.map +1 -1
  118. package/cjs/core/MantineProvider/MantineProvider.js.map +1 -1
  119. package/cjs/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.js.map +1 -1
  120. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.js +5 -3
  121. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.js.map +1 -1
  122. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.js.map +1 -1
  123. package/cjs/core/RemoveScroll.js +11 -0
  124. package/cjs/core/RemoveScroll.js.map +1 -0
  125. package/cjs/core/factory/create-polymorphic-component.js.map +1 -1
  126. package/cjs/core/utils/close-on-escape/close-on-escape.js.map +1 -1
  127. package/cjs/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.js.map +1 -1
  128. package/cjs/index.css +2 -2
  129. package/cjs/index.js +2 -0
  130. package/cjs/index.js.map +1 -1
  131. package/esm/components/Accordion/Accordion.context.mjs.map +1 -1
  132. package/esm/components/Accordion/Accordion.mjs.map +1 -1
  133. package/esm/components/ActionIcon/ActionIcon.mjs +1 -0
  134. package/esm/components/ActionIcon/ActionIcon.mjs.map +1 -1
  135. package/esm/components/Alert/Alert.mjs.map +1 -1
  136. package/esm/components/Autocomplete/Autocomplete.mjs.map +1 -1
  137. package/esm/components/Button/Button.mjs +2 -1
  138. package/esm/components/Button/Button.mjs.map +1 -1
  139. package/esm/components/Checkbox/Checkbox.mjs +15 -10
  140. package/esm/components/Checkbox/Checkbox.mjs.map +1 -1
  141. package/esm/components/Checkbox/CheckboxGroup/CheckboxGroup.mjs.map +1 -1
  142. package/esm/components/Checkbox/CheckboxGroup.context.mjs.map +1 -1
  143. package/esm/components/Chip/Chip.mjs.map +1 -1
  144. package/esm/components/Chip/ChipGroup/ChipGroup.mjs.map +1 -1
  145. package/esm/components/Chip/ChipGroup.context.mjs.map +1 -1
  146. package/esm/components/Collapse/Collapse.mjs.map +1 -1
  147. package/esm/components/ColorInput/ColorInput.mjs +1 -1
  148. package/esm/components/ColorInput/ColorInput.mjs.map +1 -1
  149. package/esm/components/ColorPicker/ColorPicker.mjs.map +1 -1
  150. package/esm/components/ColorPicker/ColorSlider/ColorSlider.mjs.map +1 -1
  151. package/esm/components/ColorPicker/Saturation/Saturation.mjs.map +1 -1
  152. package/esm/components/ColorPicker/Swatches/Swatches.mjs.map +1 -1
  153. package/esm/components/Combobox/Combobox.context.mjs.map +1 -1
  154. package/esm/components/Combobox/Combobox.mjs.map +1 -1
  155. package/esm/components/Combobox/ComboboxClearButton/ComboboxClearButton.mjs.map +1 -1
  156. package/esm/components/Combobox/use-combobox/use-combobox.mjs.map +1 -1
  157. package/esm/components/Combobox/use-combobox/use-virtualized-combobox.mjs.map +1 -1
  158. package/esm/components/CopyButton/CopyButton.mjs.map +1 -1
  159. package/esm/components/Dialog/Dialog.mjs.map +1 -1
  160. package/esm/components/FileButton/FileButton.mjs.map +1 -1
  161. package/esm/components/FileInput/FileInput.mjs.map +1 -1
  162. package/esm/components/Flex/Flex.mjs +2 -2
  163. package/esm/components/Flex/Flex.mjs.map +1 -1
  164. package/esm/components/Floating/use-delayed-hover.mjs.map +1 -1
  165. package/esm/components/Floating/use-floating-auto-update.mjs.map +1 -1
  166. package/esm/components/Highlight/highlighter/highlighter.mjs +1 -1
  167. package/esm/components/Highlight/highlighter/highlighter.mjs.map +1 -1
  168. package/esm/components/HoverCard/HoverCard.context.mjs.map +1 -1
  169. package/esm/components/HoverCard/HoverCard.mjs.map +1 -1
  170. package/esm/components/HoverCard/HoverCardTarget/HoverCardTarget.mjs +10 -2
  171. package/esm/components/HoverCard/HoverCardTarget/HoverCardTarget.mjs.map +1 -1
  172. package/esm/components/Image/Image.mjs.map +1 -1
  173. package/esm/components/Input/Input.mjs.map +1 -1
  174. package/esm/components/Input/InputWrapper/InputWrapper.mjs.map +1 -1
  175. package/esm/components/JsonInput/JsonInput.mjs.map +1 -1
  176. package/esm/components/Loader/Loader.mjs +7 -2
  177. package/esm/components/Loader/Loader.mjs.map +1 -1
  178. package/esm/components/Menu/Menu.context.mjs.map +1 -1
  179. package/esm/components/Menu/Menu.mjs.map +1 -1
  180. package/esm/components/ModalBase/ModalBase.context.mjs.map +1 -1
  181. package/esm/components/ModalBase/ModalBase.mjs.map +1 -1
  182. package/esm/components/ModalBase/use-modal.mjs.map +1 -1
  183. package/esm/components/MultiSelect/MultiSelect.mjs.map +1 -1
  184. package/esm/components/NativeSelect/NativeSelect.mjs.map +1 -1
  185. package/esm/components/NavLink/NavLink.mjs.map +1 -1
  186. package/esm/components/Notification/Notification.mjs.map +1 -1
  187. package/esm/components/NumberFormatter/NumberFormatter.mjs +48 -0
  188. package/esm/components/NumberFormatter/NumberFormatter.mjs.map +1 -0
  189. package/esm/components/NumberInput/NumberInput.mjs.map +1 -1
  190. package/esm/components/Pagination/Pagination.context.mjs.map +1 -1
  191. package/esm/components/Pagination/Pagination.mjs.map +1 -1
  192. package/esm/components/Pagination/PaginationRoot/PaginationRoot.mjs.map +1 -1
  193. package/esm/components/PasswordInput/PasswordInput.mjs +5 -6
  194. package/esm/components/PasswordInput/PasswordInput.mjs.map +1 -1
  195. package/esm/components/Pill/Pill.mjs.map +1 -1
  196. package/esm/components/PillsInput/PillsInput.mjs.map +1 -1
  197. package/esm/components/PinInput/PinInput.mjs.map +1 -1
  198. package/esm/components/Popover/Popover.context.mjs.map +1 -1
  199. package/esm/components/Popover/Popover.mjs.map +1 -1
  200. package/esm/components/Popover/use-popover.mjs.map +1 -1
  201. package/esm/components/Radio/Radio.mjs +14 -9
  202. package/esm/components/Radio/Radio.mjs.map +1 -1
  203. package/esm/components/Radio/RadioGroup/RadioGroup.mjs.map +1 -1
  204. package/esm/components/Radio/RadioGroup.context.mjs.map +1 -1
  205. package/esm/components/Radio/RadioIcon.mjs +1 -1
  206. package/esm/components/Radio/RadioIcon.mjs.map +1 -1
  207. package/esm/components/Rating/Rating.mjs.map +1 -1
  208. package/esm/components/Rating/RatingItem/RatingItem.mjs.map +1 -1
  209. package/esm/components/ScrollArea/ScrollArea.context.mjs.map +1 -1
  210. package/esm/components/ScrollArea/ScrollArea.mjs.map +1 -1
  211. package/esm/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.mjs.map +1 -1
  212. package/esm/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.mjs.map +1 -1
  213. package/esm/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
  214. package/esm/components/Select/Select.mjs.map +1 -1
  215. package/esm/components/Slider/RangeSlider/RangeSlider.mjs.map +1 -1
  216. package/esm/components/Slider/Slider/Slider.mjs.map +1 -1
  217. package/esm/components/Slider/Thumb/Thumb.mjs.map +1 -1
  218. package/esm/components/Stepper/Stepper.mjs.map +1 -1
  219. package/esm/components/Switch/SwitchGroup/SwitchGroup.mjs.map +1 -1
  220. package/esm/components/Switch/SwitchGroup.context.mjs.map +1 -1
  221. package/esm/components/Table/Table.components.mjs +4 -1
  222. package/esm/components/Table/Table.components.mjs.map +1 -1
  223. package/esm/components/Table/Table.context.mjs.map +1 -1
  224. package/esm/components/Table/Table.mjs +21 -5
  225. package/esm/components/Table/Table.mjs.map +1 -1
  226. package/esm/components/Table/Table.module.mjs +1 -1
  227. package/esm/components/Table/TableDataRenderer.mjs +11 -0
  228. package/esm/components/Table/TableDataRenderer.mjs.map +1 -0
  229. package/esm/components/Tabs/Tabs.context.mjs.map +1 -1
  230. package/esm/components/Tabs/Tabs.mjs.map +1 -1
  231. package/esm/components/TagsInput/TagsInput.mjs +4 -0
  232. package/esm/components/TagsInput/TagsInput.mjs.map +1 -1
  233. package/esm/components/TextInput/TextInput.mjs.map +1 -1
  234. package/esm/components/Textarea/Textarea.mjs.map +1 -1
  235. package/esm/components/Tooltip/Tooltip.mjs.map +1 -1
  236. package/esm/components/Tooltip/use-tooltip.mjs.map +1 -1
  237. package/esm/components/Transition/Transition.mjs.map +1 -1
  238. package/esm/components/Transition/transitions.mjs +8 -8
  239. package/esm/components/Transition/transitions.mjs.map +1 -1
  240. package/esm/components/Transition/use-transition.mjs.map +1 -1
  241. package/esm/core/Box/Box.mjs +6 -0
  242. package/esm/core/Box/Box.mjs.map +1 -1
  243. package/esm/core/Box/style-props/extract-style-props/extract-style-props.mjs +9 -3
  244. package/esm/core/Box/style-props/extract-style-props/extract-style-props.mjs.map +1 -1
  245. package/esm/core/DirectionProvider/DirectionProvider.mjs.map +1 -1
  246. package/esm/core/MantineProvider/Mantine.context.mjs.map +1 -1
  247. package/esm/core/MantineProvider/MantineCssVariables/get-merged-variables.mjs.map +1 -1
  248. package/esm/core/MantineProvider/MantineProvider.mjs.map +1 -1
  249. package/esm/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs.map +1 -1
  250. package/esm/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.mjs +5 -3
  251. package/esm/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.mjs.map +1 -1
  252. package/esm/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.mjs.map +1 -1
  253. package/esm/core/RemoveScroll.mjs +7 -0
  254. package/esm/core/RemoveScroll.mjs.map +1 -0
  255. package/esm/core/factory/create-polymorphic-component.mjs.map +1 -1
  256. package/esm/core/utils/close-on-escape/close-on-escape.mjs.map +1 -1
  257. package/esm/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.mjs.map +1 -1
  258. package/esm/index.css +2 -2
  259. package/esm/index.layer.css +2 -2
  260. package/esm/index.mjs +1 -0
  261. package/esm/index.mjs.map +1 -1
  262. package/esm/styles/ActionIcon.css +1 -1
  263. package/esm/styles/ActionIcon.layer.css +1 -1
  264. package/esm/styles/Button.css +1 -1
  265. package/esm/styles/Button.layer.css +1 -1
  266. package/esm/styles/Checkbox.css +1 -1
  267. package/esm/styles/Checkbox.layer.css +1 -1
  268. package/esm/styles/ColorPicker.css +1 -1
  269. package/esm/styles/ColorPicker.layer.css +1 -1
  270. package/esm/styles/Radio.css +1 -1
  271. package/esm/styles/Radio.layer.css +1 -1
  272. package/esm/styles/Table.css +1 -1
  273. package/esm/styles/Table.layer.css +1 -1
  274. package/esm/styles/global.css +1 -1
  275. package/esm/styles/global.layer.css +1 -1
  276. package/lib/components/Accordion/Accordion.context.d.ts +4 -4
  277. package/lib/components/Accordion/Accordion.d.ts +1 -1
  278. package/lib/components/ActionIcon/ActionIcon.d.ts +3 -3
  279. package/lib/components/Alert/Alert.d.ts +1 -1
  280. package/lib/components/Anchor/Anchor.d.ts +2 -2
  281. package/lib/components/AppShell/AppShellSection/AppShellSection.d.ts +2 -2
  282. package/lib/components/Autocomplete/Autocomplete.d.ts +1 -1
  283. package/lib/components/Avatar/Avatar.d.ts +2 -2
  284. package/lib/components/BackgroundImage/BackgroundImage.d.ts +2 -2
  285. package/lib/components/Badge/Badge.d.ts +3 -3
  286. package/lib/components/Button/Button.d.ts +3 -3
  287. package/lib/components/Card/Card.d.ts +2 -2
  288. package/lib/components/Card/CardSection/CardSection.d.ts +2 -2
  289. package/lib/components/Center/Center.d.ts +2 -2
  290. package/lib/components/Checkbox/Checkbox.d.ts +4 -2
  291. package/lib/components/Checkbox/CheckboxGroup/CheckboxGroup.d.ts +1 -1
  292. package/lib/components/Checkbox/CheckboxGroup.context.d.ts +1 -1
  293. package/lib/components/Chip/Chip.d.ts +5 -5
  294. package/lib/components/Chip/ChipGroup/ChipGroup.d.ts +3 -3
  295. package/lib/components/Chip/ChipGroup.context.d.ts +2 -2
  296. package/lib/components/CloseButton/CloseButton.d.ts +2 -2
  297. package/lib/components/Collapse/Collapse.d.ts +1 -1
  298. package/lib/components/ColorPicker/ColorPicker.d.ts +3 -3
  299. package/lib/components/ColorPicker/ColorSlider/ColorSlider.d.ts +4 -4
  300. package/lib/components/ColorPicker/Saturation/Saturation.d.ts +4 -4
  301. package/lib/components/ColorPicker/Swatches/Swatches.d.ts +1 -1
  302. package/lib/components/ColorSwatch/ColorSwatch.d.ts +2 -2
  303. package/lib/components/Combobox/Combobox.context.d.ts +1 -1
  304. package/lib/components/Combobox/Combobox.d.ts +1 -1
  305. package/lib/components/Combobox/Combobox.types.d.ts +3 -3
  306. package/lib/components/Combobox/ComboboxClearButton/ComboboxClearButton.d.ts +1 -1
  307. package/lib/components/Combobox/use-combobox/use-combobox.d.ts +17 -17
  308. package/lib/components/Combobox/use-combobox/use-virtualized-combobox.d.ts +7 -7
  309. package/lib/components/CopyButton/CopyButton.d.ts +3 -3
  310. package/lib/components/Dialog/Dialog.d.ts +1 -1
  311. package/lib/components/FileButton/FileButton.d.ts +4 -4
  312. package/lib/components/FileInput/FileInput.d.ts +4 -5
  313. package/lib/components/Flex/Flex.d.ts +24 -9
  314. package/lib/components/Floating/use-delayed-hover.d.ts +2 -2
  315. package/lib/components/Floating/use-floating-auto-update.d.ts +1 -1
  316. package/lib/components/Highlight/Highlight.d.ts +2 -2
  317. package/lib/components/HoverCard/HoverCard.context.d.ts +2 -2
  318. package/lib/components/HoverCard/HoverCard.d.ts +2 -2
  319. package/lib/components/HoverCard/HoverCardTarget/HoverCardTarget.d.ts +2 -0
  320. package/lib/components/Image/Image.d.ts +4 -3
  321. package/lib/components/Input/Input.d.ts +5 -3
  322. package/lib/components/Input/InputWrapper/InputWrapper.d.ts +1 -1
  323. package/lib/components/Input/use-input-props.d.ts +4 -4
  324. package/lib/components/InputBase/InputBase.d.ts +2 -2
  325. package/lib/components/JsonInput/JsonInput.d.ts +1 -1
  326. package/lib/components/Loader/Loader.d.ts +2 -0
  327. package/lib/components/Menu/Menu.context.d.ts +6 -6
  328. package/lib/components/Menu/Menu.d.ts +5 -5
  329. package/lib/components/Menu/MenuItem/MenuItem.d.ts +2 -2
  330. package/lib/components/ModalBase/ModalBase.context.d.ts +5 -5
  331. package/lib/components/ModalBase/ModalBase.d.ts +1 -1
  332. package/lib/components/ModalBase/use-modal.d.ts +1 -1
  333. package/lib/components/MultiSelect/MultiSelect.d.ts +2 -2
  334. package/lib/components/NativeSelect/NativeSelect.d.ts +3 -4
  335. package/lib/components/NavLink/NavLink.d.ts +4 -4
  336. package/lib/components/Notification/Notification.d.ts +1 -1
  337. package/lib/components/NumberFormatter/NumberFormatter.d.ts +34 -0
  338. package/lib/components/NumberFormatter/index.d.ts +2 -0
  339. package/lib/components/NumberInput/NumberInput.d.ts +4 -4
  340. package/lib/components/Overlay/Overlay.d.ts +2 -2
  341. package/lib/components/Pagination/Pagination.context.d.ts +6 -6
  342. package/lib/components/Pagination/Pagination.d.ts +1 -1
  343. package/lib/components/Pagination/PaginationEdges/PaginationEdges.d.ts +10 -10
  344. package/lib/components/Pagination/PaginationRoot/PaginationRoot.d.ts +6 -6
  345. package/lib/components/Paper/Paper.d.ts +2 -2
  346. package/lib/components/PasswordInput/PasswordInput.d.ts +4 -5
  347. package/lib/components/Pill/Pill.d.ts +1 -1
  348. package/lib/components/PillsInput/PillsInput.d.ts +6 -4
  349. package/lib/components/PinInput/PinInput.d.ts +2 -2
  350. package/lib/components/Popover/Popover.context.d.ts +6 -6
  351. package/lib/components/Popover/Popover.d.ts +4 -4
  352. package/lib/components/Popover/use-popover.d.ts +4 -4
  353. package/lib/components/Radio/Radio.d.ts +3 -1
  354. package/lib/components/Radio/RadioGroup/RadioGroup.d.ts +1 -1
  355. package/lib/components/Radio/RadioGroup.context.d.ts +1 -1
  356. package/lib/components/Rating/Rating.d.ts +2 -2
  357. package/lib/components/Rating/RatingItem/RatingItem.d.ts +2 -2
  358. package/lib/components/ScrollArea/ScrollArea.context.d.ts +8 -8
  359. package/lib/components/ScrollArea/ScrollArea.d.ts +2 -2
  360. package/lib/components/ScrollArea/ScrollArea.types.d.ts +7 -7
  361. package/lib/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.d.ts +5 -5
  362. package/lib/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.d.ts +4 -4
  363. package/lib/components/SegmentedControl/SegmentedControl.d.ts +1 -1
  364. package/lib/components/Select/Select.d.ts +2 -2
  365. package/lib/components/Slider/RangeSlider/RangeSlider.d.ts +3 -3
  366. package/lib/components/Slider/Slider/Slider.d.ts +3 -3
  367. package/lib/components/Slider/Thumb/Thumb.d.ts +4 -4
  368. package/lib/components/Stepper/Stepper.d.ts +1 -1
  369. package/lib/components/Switch/SwitchGroup/SwitchGroup.d.ts +1 -1
  370. package/lib/components/Switch/SwitchGroup.context.d.ts +1 -1
  371. package/lib/components/Table/Table.components.d.ts +1 -0
  372. package/lib/components/Table/Table.context.d.ts +1 -0
  373. package/lib/components/Table/Table.d.ts +16 -1
  374. package/lib/components/Table/TableDataRenderer.d.ts +8 -0
  375. package/lib/components/Table/index.d.ts +1 -1
  376. package/lib/components/Tabs/Tabs.context.d.ts +3 -3
  377. package/lib/components/Tabs/Tabs.d.ts +1 -1
  378. package/lib/components/TagsInput/TagsInput.d.ts +3 -3
  379. package/lib/components/Text/Text.d.ts +2 -2
  380. package/lib/components/TextInput/TextInput.d.ts +3 -4
  381. package/lib/components/Textarea/Textarea.d.ts +4 -4
  382. package/lib/components/Tooltip/Tooltip.d.ts +1 -1
  383. package/lib/components/Tooltip/use-tooltip.d.ts +1 -1
  384. package/lib/components/Transition/Transition.d.ts +1 -1
  385. package/lib/components/Transition/use-transition.d.ts +4 -4
  386. package/lib/components/UnstyledButton/UnstyledButton.d.ts +2 -2
  387. package/lib/components/index.d.ts +1 -0
  388. package/lib/core/Box/Box.d.ts +6 -2
  389. package/lib/core/DirectionProvider/DirectionProvider.d.ts +2 -2
  390. package/lib/core/MantineProvider/Mantine.context.d.ts +5 -5
  391. package/lib/core/MantineProvider/MantineCssVariables/get-merged-variables.d.ts +1 -1
  392. package/lib/core/MantineProvider/MantineProvider.d.ts +2 -2
  393. package/lib/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.d.ts +1 -0
  394. package/lib/core/MantineProvider/color-scheme-managers/types.d.ts +5 -5
  395. package/lib/core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.d.ts +1 -1
  396. package/lib/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.d.ts +3 -1
  397. package/lib/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.d.ts +1 -1
  398. package/lib/core/MantineType.d.ts +3 -0
  399. package/lib/core/RemoveScroll.d.ts +1 -0
  400. package/lib/core/factory/create-polymorphic-component.d.ts +4 -4
  401. package/lib/core/factory/polymorphic-factory.d.ts +2 -2
  402. package/lib/core/utils/close-on-escape/close-on-escape.d.ts +2 -2
  403. package/lib/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.d.ts +1 -1
  404. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React, { useRef, useState, useCallback } from 'react';\nimport { useId, useClickOutside } from '@mantine/hooks';\nimport {\n MantineShadow,\n getDefaultZIndex,\n useProps,\n MantineRadius,\n useDirection,\n useStyles,\n Factory,\n createVarsResolver,\n getRadius,\n getShadow,\n StylesApiProps,\n ExtendComponent,\n} from '../../core';\nimport { TransitionOverride } from '../Transition';\nimport {\n getFloatingPosition,\n FloatingAxesOffsets,\n FloatingPosition,\n ArrowPosition,\n} from '../Floating';\nimport { PortalProps } from '../Portal';\nimport { usePopover } from './use-popover';\nimport { PopoverContextProvider } from './Popover.context';\nimport { PopoverWidth, PopoverMiddlewares } from './Popover.types';\nimport { PopoverTarget } from './PopoverTarget/PopoverTarget';\nimport { PopoverDropdown } from './PopoverDropdown/PopoverDropdown';\nimport classes from './Popover.module.css';\n\nexport type PopoverStylesNames = 'dropdown' | 'arrow';\nexport type PopoverCssVariables = {\n dropdown: '--popover-radius' | '--popover-shadow';\n};\n\nexport interface __PopoverProps {\n /** Dropdown position relative to the target element, `'bottom'` by default */\n position?: FloatingPosition;\n\n /** Offset of the dropdown element, `8` by default */\n offset?: number | FloatingAxesOffsets;\n\n /** Called when dropdown position changes */\n onPositionChange?(position: FloatingPosition): void;\n\n /** `useEffect` dependencies to force update dropdown position, `[]` by default */\n positionDependencies?: any[];\n\n /** Called when dropdown closes */\n onClose?(): void;\n\n /** Called when dropdown opens */\n onOpen?(): void;\n\n /** If set dropdown will not be unmounted from the DOM when it is hidden, `display: none` styles will be added instead, `false` by default */\n keepMounted?: boolean;\n\n /** Props passed down to the `Transition` component that used to animate dropdown presence, use to configure duration and animation type, `{ duration: 150, transition: 'fade' }` by default */\n transitionProps?: TransitionOverride;\n\n /** Dropdown width, or `'target'` to make dropdown width the same as target element, `'max-content'` by default */\n width?: PopoverWidth;\n\n /** Floating ui middlewares to configure position handling, `{ flip: true, shift: true, inline: false }` by default */\n middlewares?: PopoverMiddlewares;\n\n /** Determines whether component should have an arrow, `false` by default */\n withArrow?: boolean;\n\n /** Arrow size in px, `7` by default */\n arrowSize?: number;\n\n /** Arrow offset in px, `5` by default */\n arrowOffset?: number;\n\n /** Arrow `border-radius` in px, `0` by default */\n arrowRadius?: number;\n\n /** Arrow position */\n arrowPosition?: ArrowPosition;\n\n /** Determines whether dropdown should be rendered within the `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'>;\n\n /** Dropdown `z-index`, `300` by default */\n zIndex?: string | number;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius, `theme.defaultRadius` by default */\n radius?: MantineRadius;\n\n /** Key of `theme.shadows` or any other valid CSS `box-shadow` value */\n shadow?: MantineShadow;\n\n /** If set, popover dropdown will not be rendered */\n disabled?: boolean;\n\n /** Determines whether focus should be automatically returned to control when dropdown closes, `false` by default */\n returnFocus?: boolean;\n}\n\nexport interface PopoverProps extends __PopoverProps, StylesApiProps<PopoverFactory> {\n __staticSelector?: string;\n\n /** `Popover.Target` and `Popover.Dropdown` components */\n children?: React.ReactNode;\n\n /** Initial opened state for uncontrolled component */\n defaultOpened?: boolean;\n\n /** Controlled dropdown opened state */\n opened?: boolean;\n\n /** Called with current state when dropdown opens or closes */\n onChange?(opened: boolean): void;\n\n /** Determines whether dropdown should be closed on outside clicks, `true` by default */\n closeOnClickOutside?: boolean;\n\n /** Events that trigger outside clicks */\n clickOutsideEvents?: string[];\n\n /** Determines whether focus should be trapped within dropdown, `false` by default */\n trapFocus?: boolean;\n\n /** Determines whether dropdown should be closed when `Escape` key is pressed, `true` by default */\n closeOnEscape?: boolean;\n\n /** id base to create accessibility connections */\n id?: string;\n\n /** Determines whether dropdown and target elements should have accessible roles, `true` by default */\n withRoles?: boolean;\n}\n\nexport type PopoverFactory = Factory<{\n props: PopoverProps;\n stylesNames: PopoverStylesNames;\n vars: PopoverCssVariables;\n}>;\n\nconst defaultProps: Partial<PopoverProps> = {\n position: 'bottom',\n offset: 8,\n positionDependencies: [],\n transitionProps: { transition: 'fade', duration: 150 },\n middlewares: { flip: true, shift: true, inline: false },\n arrowSize: 7,\n arrowOffset: 5,\n arrowRadius: 0,\n arrowPosition: 'side',\n closeOnClickOutside: true,\n withinPortal: true,\n closeOnEscape: true,\n trapFocus: false,\n withRoles: true,\n returnFocus: false,\n clickOutsideEvents: ['mousedown', 'touchstart'],\n zIndex: getDefaultZIndex('popover'),\n __staticSelector: 'Popover',\n width: 'max-content',\n};\n\nconst varsResolver = createVarsResolver<PopoverFactory>((_, { radius, shadow }) => ({\n dropdown: {\n '--popover-radius': radius === undefined ? undefined : getRadius(radius),\n '--popover-shadow': getShadow(shadow),\n },\n}));\n\nexport function Popover(_props: PopoverProps) {\n const props = useProps('Popover', defaultProps, _props);\n const {\n children,\n position,\n offset,\n onPositionChange,\n positionDependencies,\n opened,\n transitionProps,\n width,\n middlewares,\n withArrow,\n arrowSize,\n arrowOffset,\n arrowRadius,\n arrowPosition,\n unstyled,\n classNames,\n styles,\n closeOnClickOutside,\n withinPortal,\n portalProps,\n closeOnEscape,\n clickOutsideEvents,\n trapFocus,\n onClose,\n onOpen,\n onChange,\n zIndex,\n radius,\n shadow,\n id,\n defaultOpened,\n __staticSelector,\n withRoles,\n disabled,\n returnFocus,\n variant,\n keepMounted,\n vars,\n ...others\n } = props;\n\n const getStyles = useStyles<PopoverFactory>({\n name: __staticSelector!,\n props,\n classes,\n classNames,\n styles,\n unstyled,\n rootSelector: 'dropdown',\n vars,\n varsResolver,\n });\n\n const arrowRef = useRef<HTMLDivElement | null>(null);\n const [targetNode, setTargetNode] = useState<HTMLElement | null>(null);\n const [dropdownNode, setDropdownNode] = useState<HTMLElement | null>(null);\n const { dir } = useDirection();\n\n const uid = useId(id);\n const popover = usePopover({\n middlewares,\n width,\n position: getFloatingPosition(dir, position!),\n offset: typeof offset === 'number' ? offset + (withArrow ? arrowSize! / 2 : 0) : offset!,\n arrowRef,\n arrowOffset: arrowOffset!,\n onPositionChange,\n positionDependencies,\n opened,\n defaultOpened,\n onChange,\n onOpen,\n onClose,\n });\n\n useClickOutside(() => closeOnClickOutside && popover.onClose(), clickOutsideEvents, [\n targetNode,\n dropdownNode,\n ]);\n\n const reference = useCallback(\n (node: HTMLElement) => {\n setTargetNode(node);\n popover.floating.refs.setReference(node);\n },\n [popover.floating.refs.setReference]\n );\n\n const floating = useCallback(\n (node: HTMLElement) => {\n setDropdownNode(node);\n popover.floating.refs.setFloating(node);\n },\n [popover.floating.refs.setFloating]\n );\n\n return (\n <PopoverContextProvider\n value={{\n returnFocus,\n disabled,\n controlled: popover.controlled,\n reference,\n floating,\n x: popover.floating.x!,\n y: popover.floating.y!,\n arrowX: popover.floating?.middlewareData?.arrow?.x!,\n arrowY: popover.floating?.middlewareData?.arrow?.y!,\n opened: popover.opened,\n arrowRef,\n transitionProps,\n width,\n withArrow,\n arrowSize: arrowSize!,\n arrowOffset: arrowOffset!,\n arrowRadius: arrowRadius!,\n arrowPosition: arrowPosition!,\n placement: popover.floating.placement,\n trapFocus,\n withinPortal,\n portalProps,\n zIndex,\n radius,\n shadow,\n closeOnEscape,\n onClose: popover.onClose,\n onToggle: popover.onToggle,\n getTargetId: () => `${uid}-target`,\n getDropdownId: () => `${uid}-dropdown`,\n withRoles,\n targetProps: others,\n __staticSelector: __staticSelector!,\n classNames,\n styles,\n unstyled,\n variant,\n keepMounted,\n getStyles,\n }}\n >\n {children}\n </PopoverContextProvider>\n );\n}\n\nPopover.Target = PopoverTarget;\nPopover.Dropdown = PopoverDropdown;\nPopover.displayName = '@mantine/core/Popover';\nPopover.extend = (input: ExtendComponent<PopoverFactory>) => input;\n"],"names":["getDefaultZIndex","createVarsResolver","getRadius","getShadow","useProps","useStyles","classes","useRef","useState","useDirection","useId","usePopover","getFloatingPosition","useClickOutside","useCallback","React","PopoverContextProvider","PopoverTarget","PopoverDropdown"],"mappings":"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"}
1
+ {"version":3,"file":"Popover.js","sources":["../../../src/components/Popover/Popover.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React, { useRef, useState, useCallback } from 'react';\nimport { useId, useClickOutside } from '@mantine/hooks';\nimport {\n MantineShadow,\n getDefaultZIndex,\n useProps,\n MantineRadius,\n useDirection,\n useStyles,\n Factory,\n createVarsResolver,\n getRadius,\n getShadow,\n StylesApiProps,\n ExtendComponent,\n} from '../../core';\nimport { TransitionOverride } from '../Transition';\nimport {\n getFloatingPosition,\n FloatingAxesOffsets,\n FloatingPosition,\n ArrowPosition,\n} from '../Floating';\nimport { PortalProps } from '../Portal';\nimport { usePopover } from './use-popover';\nimport { PopoverContextProvider } from './Popover.context';\nimport { PopoverWidth, PopoverMiddlewares } from './Popover.types';\nimport { PopoverTarget } from './PopoverTarget/PopoverTarget';\nimport { PopoverDropdown } from './PopoverDropdown/PopoverDropdown';\nimport classes from './Popover.module.css';\n\nexport type PopoverStylesNames = 'dropdown' | 'arrow';\nexport type PopoverCssVariables = {\n dropdown: '--popover-radius' | '--popover-shadow';\n};\n\nexport interface __PopoverProps {\n /** Dropdown position relative to the target element, `'bottom'` by default */\n position?: FloatingPosition;\n\n /** Offset of the dropdown element, `8` by default */\n offset?: number | FloatingAxesOffsets;\n\n /** Called when dropdown position changes */\n onPositionChange?: (position: FloatingPosition) => void;\n\n /** `useEffect` dependencies to force update dropdown position, `[]` by default */\n positionDependencies?: any[];\n\n /** Called when dropdown closes */\n onClose?: () => void;\n\n /** Called when dropdown opens */\n onOpen?: () => void;\n\n /** If set dropdown will not be unmounted from the DOM when it is hidden, `display: none` styles will be added instead, `false` by default */\n keepMounted?: boolean;\n\n /** Props passed down to the `Transition` component that used to animate dropdown presence, use to configure duration and animation type, `{ duration: 150, transition: 'fade' }` by default */\n transitionProps?: TransitionOverride;\n\n /** Dropdown width, or `'target'` to make dropdown width the same as target element, `'max-content'` by default */\n width?: PopoverWidth;\n\n /** Floating ui middlewares to configure position handling, `{ flip: true, shift: true, inline: false }` by default */\n middlewares?: PopoverMiddlewares;\n\n /** Determines whether component should have an arrow, `false` by default */\n withArrow?: boolean;\n\n /** Arrow size in px, `7` by default */\n arrowSize?: number;\n\n /** Arrow offset in px, `5` by default */\n arrowOffset?: number;\n\n /** Arrow `border-radius` in px, `0` by default */\n arrowRadius?: number;\n\n /** Arrow position */\n arrowPosition?: ArrowPosition;\n\n /** Determines whether dropdown should be rendered within the `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'>;\n\n /** Dropdown `z-index`, `300` by default */\n zIndex?: string | number;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius, `theme.defaultRadius` by default */\n radius?: MantineRadius;\n\n /** Key of `theme.shadows` or any other valid CSS `box-shadow` value */\n shadow?: MantineShadow;\n\n /** If set, popover dropdown will not be rendered */\n disabled?: boolean;\n\n /** Determines whether focus should be automatically returned to control when dropdown closes, `false` by default */\n returnFocus?: boolean;\n}\n\nexport interface PopoverProps extends __PopoverProps, StylesApiProps<PopoverFactory> {\n __staticSelector?: string;\n\n /** `Popover.Target` and `Popover.Dropdown` components */\n children?: React.ReactNode;\n\n /** Initial opened state for uncontrolled component */\n defaultOpened?: boolean;\n\n /** Controlled dropdown opened state */\n opened?: boolean;\n\n /** Called with current state when dropdown opens or closes */\n onChange?: (opened: boolean) => void;\n\n /** Determines whether dropdown should be closed on outside clicks, `true` by default */\n closeOnClickOutside?: boolean;\n\n /** Events that trigger outside clicks */\n clickOutsideEvents?: string[];\n\n /** Determines whether focus should be trapped within dropdown, `false` by default */\n trapFocus?: boolean;\n\n /** Determines whether dropdown should be closed when `Escape` key is pressed, `true` by default */\n closeOnEscape?: boolean;\n\n /** id base to create accessibility connections */\n id?: string;\n\n /** Determines whether dropdown and target elements should have accessible roles, `true` by default */\n withRoles?: boolean;\n}\n\nexport type PopoverFactory = Factory<{\n props: PopoverProps;\n stylesNames: PopoverStylesNames;\n vars: PopoverCssVariables;\n}>;\n\nconst defaultProps: Partial<PopoverProps> = {\n position: 'bottom',\n offset: 8,\n positionDependencies: [],\n transitionProps: { transition: 'fade', duration: 150 },\n middlewares: { flip: true, shift: true, inline: false },\n arrowSize: 7,\n arrowOffset: 5,\n arrowRadius: 0,\n arrowPosition: 'side',\n closeOnClickOutside: true,\n withinPortal: true,\n closeOnEscape: true,\n trapFocus: false,\n withRoles: true,\n returnFocus: false,\n clickOutsideEvents: ['mousedown', 'touchstart'],\n zIndex: getDefaultZIndex('popover'),\n __staticSelector: 'Popover',\n width: 'max-content',\n};\n\nconst varsResolver = createVarsResolver<PopoverFactory>((_, { radius, shadow }) => ({\n dropdown: {\n '--popover-radius': radius === undefined ? undefined : getRadius(radius),\n '--popover-shadow': getShadow(shadow),\n },\n}));\n\nexport function Popover(_props: PopoverProps) {\n const props = useProps('Popover', defaultProps, _props);\n const {\n children,\n position,\n offset,\n onPositionChange,\n positionDependencies,\n opened,\n transitionProps,\n width,\n middlewares,\n withArrow,\n arrowSize,\n arrowOffset,\n arrowRadius,\n arrowPosition,\n unstyled,\n classNames,\n styles,\n closeOnClickOutside,\n withinPortal,\n portalProps,\n closeOnEscape,\n clickOutsideEvents,\n trapFocus,\n onClose,\n onOpen,\n onChange,\n zIndex,\n radius,\n shadow,\n id,\n defaultOpened,\n __staticSelector,\n withRoles,\n disabled,\n returnFocus,\n variant,\n keepMounted,\n vars,\n ...others\n } = props;\n\n const getStyles = useStyles<PopoverFactory>({\n name: __staticSelector!,\n props,\n classes,\n classNames,\n styles,\n unstyled,\n rootSelector: 'dropdown',\n vars,\n varsResolver,\n });\n\n const arrowRef = useRef<HTMLDivElement | null>(null);\n const [targetNode, setTargetNode] = useState<HTMLElement | null>(null);\n const [dropdownNode, setDropdownNode] = useState<HTMLElement | null>(null);\n const { dir } = useDirection();\n\n const uid = useId(id);\n const popover = usePopover({\n middlewares,\n width,\n position: getFloatingPosition(dir, position!),\n offset: typeof offset === 'number' ? offset + (withArrow ? arrowSize! / 2 : 0) : offset!,\n arrowRef,\n arrowOffset: arrowOffset!,\n onPositionChange,\n positionDependencies,\n opened,\n defaultOpened,\n onChange,\n onOpen,\n onClose,\n });\n\n useClickOutside(() => closeOnClickOutside && popover.onClose(), clickOutsideEvents, [\n targetNode,\n dropdownNode,\n ]);\n\n const reference = useCallback(\n (node: HTMLElement) => {\n setTargetNode(node);\n popover.floating.refs.setReference(node);\n },\n [popover.floating.refs.setReference]\n );\n\n const floating = useCallback(\n (node: HTMLElement) => {\n setDropdownNode(node);\n popover.floating.refs.setFloating(node);\n },\n [popover.floating.refs.setFloating]\n );\n\n return (\n <PopoverContextProvider\n value={{\n returnFocus,\n disabled,\n controlled: popover.controlled,\n reference,\n floating,\n x: popover.floating.x!,\n y: popover.floating.y!,\n arrowX: popover.floating?.middlewareData?.arrow?.x!,\n arrowY: popover.floating?.middlewareData?.arrow?.y!,\n opened: popover.opened,\n arrowRef,\n transitionProps,\n width,\n withArrow,\n arrowSize: arrowSize!,\n arrowOffset: arrowOffset!,\n arrowRadius: arrowRadius!,\n arrowPosition: arrowPosition!,\n placement: popover.floating.placement,\n trapFocus,\n withinPortal,\n portalProps,\n zIndex,\n radius,\n shadow,\n closeOnEscape,\n onClose: popover.onClose,\n onToggle: popover.onToggle,\n getTargetId: () => `${uid}-target`,\n getDropdownId: () => `${uid}-dropdown`,\n withRoles,\n targetProps: others,\n __staticSelector: __staticSelector!,\n classNames,\n styles,\n unstyled,\n variant,\n keepMounted,\n getStyles,\n }}\n >\n {children}\n </PopoverContextProvider>\n );\n}\n\nPopover.Target = PopoverTarget;\nPopover.Dropdown = PopoverDropdown;\nPopover.displayName = '@mantine/core/Popover';\nPopover.extend = (input: ExtendComponent<PopoverFactory>) => input;\n"],"names":["getDefaultZIndex","createVarsResolver","getRadius","getShadow","useProps","useStyles","classes","useRef","useState","useDirection","useId","usePopover","getFloatingPosition","useClickOutside","useCallback","React","PopoverContextProvider","PopoverTarget","PopoverDropdown"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-popover.js","sources":["../../../src/components/Popover/use-popover.ts"],"sourcesContent":["import { useDidUpdate, useUncontrolled } from '@mantine/hooks';\nimport {\n useFloating,\n shift,\n flip,\n arrow,\n offset,\n size,\n Middleware,\n inline,\n limitShift,\n} from '@floating-ui/react';\nimport { FloatingAxesOffsets, FloatingPosition, useFloatingAutoUpdate } from '../Floating';\nimport { PopoverWidth, PopoverMiddlewares } from './Popover.types';\n\ninterface UsePopoverOptions {\n offset: number | FloatingAxesOffsets;\n position: FloatingPosition;\n positionDependencies: any[] | undefined;\n onPositionChange?(position: FloatingPosition): void;\n opened: boolean | undefined;\n defaultOpened: boolean | undefined;\n onChange?(opened: boolean): void;\n onClose?(): void;\n onOpen?(): void;\n width: PopoverWidth;\n middlewares: PopoverMiddlewares | undefined;\n arrowRef: React.RefObject<HTMLDivElement>;\n arrowOffset: number;\n}\n\nfunction getPopoverMiddlewares(options: UsePopoverOptions) {\n const middlewares: Middleware[] = [offset(options.offset)];\n\n if (options.middlewares?.shift) {\n middlewares.push(shift({ limiter: limitShift() }));\n }\n\n if (options.middlewares?.flip) {\n middlewares.push(flip());\n }\n\n if (options.middlewares?.inline) {\n middlewares.push(inline());\n }\n\n middlewares.push(arrow({ element: options.arrowRef, padding: options.arrowOffset }));\n\n return middlewares;\n}\n\nexport function usePopover(options: UsePopoverOptions) {\n const [_opened, setOpened] = useUncontrolled({\n value: options.opened,\n defaultValue: options.defaultOpened,\n finalValue: false,\n onChange: options.onChange,\n });\n\n const onClose = () => {\n if (_opened) {\n options.onClose?.();\n setOpened(false);\n }\n };\n\n const onToggle = () => {\n if (_opened) {\n options.onClose?.();\n setOpened(false);\n } else {\n options.onOpen?.();\n setOpened(true);\n }\n };\n\n const floating = useFloating({\n placement: options.position,\n middleware: [\n ...getPopoverMiddlewares(options),\n ...(options.width === 'target'\n ? [\n size({\n apply({ rects }) {\n Object.assign(floating.refs.floating.current?.style ?? {}, {\n width: `${rects.reference.width}px`,\n });\n },\n }),\n ]\n : []),\n ],\n });\n\n useFloatingAutoUpdate({\n opened: options.opened,\n position: options.position,\n positionDependencies: options.positionDependencies || [],\n floating,\n });\n\n useDidUpdate(() => {\n options.onPositionChange?.(floating.placement);\n }, [floating.placement]);\n\n useDidUpdate(() => {\n if (!options.opened) {\n options.onClose?.();\n } else {\n options.onOpen?.();\n }\n }, [options.opened]);\n\n return {\n floating,\n controlled: typeof options.opened === 'boolean',\n opened: _opened,\n onClose,\n onToggle,\n };\n}\n"],"names":["offset","shift","limitShift","flip","inline","arrow","useUncontrolled","useFloating","size","useFloatingAutoUpdate","useDidUpdate"],"mappings":"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"}
1
+ {"version":3,"file":"use-popover.js","sources":["../../../src/components/Popover/use-popover.ts"],"sourcesContent":["import { useDidUpdate, useUncontrolled } from '@mantine/hooks';\nimport {\n useFloating,\n shift,\n flip,\n arrow,\n offset,\n size,\n Middleware,\n inline,\n limitShift,\n} from '@floating-ui/react';\nimport { FloatingAxesOffsets, FloatingPosition, useFloatingAutoUpdate } from '../Floating';\nimport { PopoverWidth, PopoverMiddlewares } from './Popover.types';\n\ninterface UsePopoverOptions {\n offset: number | FloatingAxesOffsets;\n position: FloatingPosition;\n positionDependencies: any[] | undefined;\n onPositionChange?: (position: FloatingPosition) => void;\n opened: boolean | undefined;\n defaultOpened: boolean | undefined;\n onChange?: (opened: boolean) => void;\n onClose?: () => void;\n onOpen?: () => void;\n width: PopoverWidth;\n middlewares: PopoverMiddlewares | undefined;\n arrowRef: React.RefObject<HTMLDivElement>;\n arrowOffset: number;\n}\n\nfunction getPopoverMiddlewares(options: UsePopoverOptions) {\n const middlewares: Middleware[] = [offset(options.offset)];\n\n if (options.middlewares?.shift) {\n middlewares.push(shift({ limiter: limitShift() }));\n }\n\n if (options.middlewares?.flip) {\n middlewares.push(flip());\n }\n\n if (options.middlewares?.inline) {\n middlewares.push(inline());\n }\n\n middlewares.push(arrow({ element: options.arrowRef, padding: options.arrowOffset }));\n\n return middlewares;\n}\n\nexport function usePopover(options: UsePopoverOptions) {\n const [_opened, setOpened] = useUncontrolled({\n value: options.opened,\n defaultValue: options.defaultOpened,\n finalValue: false,\n onChange: options.onChange,\n });\n\n const onClose = () => {\n if (_opened) {\n options.onClose?.();\n setOpened(false);\n }\n };\n\n const onToggle = () => {\n if (_opened) {\n options.onClose?.();\n setOpened(false);\n } else {\n options.onOpen?.();\n setOpened(true);\n }\n };\n\n const floating = useFloating({\n placement: options.position,\n middleware: [\n ...getPopoverMiddlewares(options),\n ...(options.width === 'target'\n ? [\n size({\n apply({ rects }) {\n Object.assign(floating.refs.floating.current?.style ?? {}, {\n width: `${rects.reference.width}px`,\n });\n },\n }),\n ]\n : []),\n ],\n });\n\n useFloatingAutoUpdate({\n opened: options.opened,\n position: options.position,\n positionDependencies: options.positionDependencies || [],\n floating,\n });\n\n useDidUpdate(() => {\n options.onPositionChange?.(floating.placement);\n }, [floating.placement]);\n\n useDidUpdate(() => {\n if (!options.opened) {\n options.onClose?.();\n } else {\n options.onOpen?.();\n }\n }, [options.opened]);\n\n return {\n floating,\n controlled: typeof options.opened === 'boolean',\n opened: _opened,\n onClose,\n onToggle,\n };\n}\n"],"names":["offset","shift","limitShift","flip","inline","arrow","useUncontrolled","useFloating","size","useFloatingAutoUpdate","useDidUpdate"],"mappings":"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"}
@@ -57,13 +57,16 @@ var __objRest = (source, exclude) => {
57
57
  const defaultProps = {
58
58
  labelPosition: "right"
59
59
  };
60
- const varsResolver = createVarsResolver.createVarsResolver((theme, { size, radius, color }) => ({
61
- root: {
62
- "--radio-size": getSize.getSize(size, "radio-size"),
63
- "--radio-radius": radius === void 0 ? void 0 : getSize.getRadius(radius),
64
- "--radio-color": color ? getThemeColor.getThemeColor(color, theme) : void 0
65
- }
66
- }));
60
+ const varsResolver = createVarsResolver.createVarsResolver(
61
+ (theme, { size, radius, color, iconColor }) => ({
62
+ root: {
63
+ "--radio-size": getSize.getSize(size, "radio-size"),
64
+ "--radio-radius": radius === void 0 ? void 0 : getSize.getRadius(radius),
65
+ "--radio-color": color ? getThemeColor.getThemeColor(color, theme) : void 0,
66
+ "--radio-icon-color": iconColor ? getThemeColor.getThemeColor(iconColor, theme) : void 0
67
+ }
68
+ })
69
+ );
67
70
  const Radio = factory.factory((_props, ref) => {
68
71
  var _b, _c;
69
72
  const props = useProps.useProps("Radio", defaultProps, _props);
@@ -86,7 +89,8 @@ const Radio = factory.factory((_props, ref) => {
86
89
  disabled,
87
90
  wrapperProps,
88
91
  icon: Icon = RadioIcon.RadioIcon,
89
- rootRef
92
+ rootRef,
93
+ iconColor
90
94
  } = _a, others = __objRest(_a, [
91
95
  "classNames",
92
96
  "className",
@@ -106,7 +110,8 @@ const Radio = factory.factory((_props, ref) => {
106
110
  "disabled",
107
111
  "wrapperProps",
108
112
  "icon",
109
- "rootRef"
113
+ "rootRef",
114
+ "iconColor"
110
115
  ]);
111
116
  const getStyles = useStyles.useStyles({
112
117
  name: "Radio",
@@ -1 +1 @@
1
- {"version":3,"file":"Radio.js","sources":["../../../src/components/Radio/Radio.tsx"],"sourcesContent":["import React from 'react';\nimport { useId } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n getSize,\n getRadius,\n getThemeColor,\n MantineColor,\n MantineSize,\n MantineRadius,\n extractStyleProps,\n} from '../../core';\nimport { InlineInput, InlineInputStylesNames } from '../InlineInput';\nimport { RadioIcon, RadioIconProps } from './RadioIcon';\nimport { RadioGroup } from './RadioGroup/RadioGroup';\nimport { useRadioGroupContext } from './RadioGroup.context';\nimport classes from './Radio.module.css';\n\nexport type RadioStylesNames = InlineInputStylesNames | 'inner' | 'radio' | 'icon';\nexport type RadioCssVariables = {\n root: '--radio-size' | '--radio-radius' | '--radio-color';\n};\n\nexport interface RadioProps\n extends BoxProps,\n StylesApiProps<RadioFactory>,\n ElementProps<'input', 'size'> {\n /** Radio label */\n label?: React.ReactNode;\n\n /** Key of `theme.colors` or any valid CSS color to set input color in checked state, `theme.primaryColor` by default */\n color?: MantineColor;\n\n /** Controls size of all elements, `'sm'` by default */\n size?: MantineSize;\n\n /** Custom checked icon component, by default a circle is displayed in checked state */\n icon?: React.FC<RadioIconProps>;\n\n /** Props passed down to the root element */\n wrapperProps?: Record<string, any>;\n\n /** Position of the label relative to the input, `'right'` by default */\n labelPosition?: 'left' | 'right';\n\n /** Description displayed below the label */\n description?: React.ReactNode;\n\n /** Error displayed below the label */\n error?: React.ReactNode;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius,` \"xl\" by default */\n radius?: MantineRadius;\n\n /** Assigns ref of the root element, can be used with `Tooltip` and other similar components */\n rootRef?: React.ForwardedRef<HTMLDivElement>;\n}\n\nexport type RadioFactory = Factory<{\n props: RadioProps;\n ref: HTMLInputElement;\n stylesNames: RadioStylesNames;\n vars: RadioCssVariables;\n staticComponents: {\n Group: typeof RadioGroup;\n };\n}>;\n\nconst defaultProps: Partial<RadioProps> = {\n labelPosition: 'right',\n};\n\nconst varsResolver = createVarsResolver<RadioFactory>((theme, { size, radius, color }) => ({\n root: {\n '--radio-size': getSize(size, 'radio-size'),\n '--radio-radius': radius === undefined ? undefined : getRadius(radius),\n '--radio-color': color ? getThemeColor(color, theme) : undefined,\n },\n}));\n\nexport const Radio = factory<RadioFactory>((_props, ref) => {\n const props = useProps('Radio', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n id,\n size,\n label,\n labelPosition,\n description,\n error,\n radius,\n color,\n variant,\n disabled,\n wrapperProps,\n icon: Icon = RadioIcon,\n rootRef,\n ...others\n } = props;\n\n const getStyles = useStyles<RadioFactory>({\n name: 'Radio',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const ctx = useRadioGroupContext();\n\n const contextSize = ctx?.size ?? size;\n const componentSize = props.size ? size : contextSize;\n\n const { styleProps, rest } = extractStyleProps(others);\n const uuid = useId(id);\n\n const contextProps = ctx\n ? {\n checked: ctx.value === rest.value,\n name: rest.name ?? ctx.name,\n onChange: ctx.onChange,\n }\n : {};\n\n return (\n <InlineInput\n {...getStyles('root')}\n __staticSelector=\"Radio\"\n __stylesApiProps={props}\n id={uuid}\n size={componentSize}\n labelPosition={labelPosition}\n label={label}\n description={description}\n error={error}\n disabled={disabled}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n data-checked={contextProps.checked || undefined}\n variant={variant}\n ref={rootRef}\n {...styleProps}\n {...wrapperProps}\n >\n <Box {...getStyles('inner')} mod={{ 'label-position': labelPosition }}>\n <Box\n {...getStyles('radio', { focusable: true })}\n {...rest}\n {...contextProps}\n component=\"input\"\n mod={{ error: !!error }}\n ref={ref}\n id={uuid}\n disabled={disabled}\n type=\"radio\"\n />\n <Icon {...getStyles('icon')} aria-hidden />\n </Box>\n </InlineInput>\n );\n});\n\nRadio.classes = classes;\nRadio.displayName = '@mantine/core/Radio';\nRadio.Group = RadioGroup;\n"],"names":["createVarsResolver","getSize","getRadius","getThemeColor","factory","useProps","RadioIcon","useStyles","classes","useRadioGroupContext","extractStyleProps","useId","React","InlineInput","Box","RadioGroup"],"mappings":"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"}
1
+ {"version":3,"file":"Radio.js","sources":["../../../src/components/Radio/Radio.tsx"],"sourcesContent":["import React from 'react';\nimport { useId } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n getSize,\n getRadius,\n getThemeColor,\n MantineColor,\n MantineSize,\n MantineRadius,\n extractStyleProps,\n} from '../../core';\nimport { InlineInput, InlineInputStylesNames } from '../InlineInput';\nimport { RadioIcon, RadioIconProps } from './RadioIcon';\nimport { RadioGroup } from './RadioGroup/RadioGroup';\nimport { useRadioGroupContext } from './RadioGroup.context';\nimport classes from './Radio.module.css';\n\nexport type RadioStylesNames = InlineInputStylesNames | 'inner' | 'radio' | 'icon';\nexport type RadioCssVariables = {\n root: '--radio-size' | '--radio-radius' | '--radio-color' | '--radio-icon-color';\n};\n\nexport interface RadioProps\n extends BoxProps,\n StylesApiProps<RadioFactory>,\n ElementProps<'input', 'size'> {\n /** Radio label */\n label?: React.ReactNode;\n\n /** Key of `theme.colors` or any valid CSS color to set input color in checked state, `theme.primaryColor` by default */\n color?: MantineColor;\n\n /** Controls size of all elements, `'sm'` by default */\n size?: MantineSize;\n\n /** Custom checked icon component, by default a circle is displayed in checked state */\n icon?: React.FC<RadioIconProps>;\n\n /** Props passed down to the root element */\n wrapperProps?: Record<string, any>;\n\n /** Position of the label relative to the input, `'right'` by default */\n labelPosition?: 'left' | 'right';\n\n /** Description displayed below the label */\n description?: React.ReactNode;\n\n /** Error displayed below the label */\n error?: React.ReactNode;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius,` \"xl\" by default */\n radius?: MantineRadius;\n\n /** Assigns ref of the root element, can be used with `Tooltip` and other similar components */\n rootRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Key of `theme.colors` or any valid CSS color to set icon color, `theme.white` by default */\n iconColor?: MantineColor;\n}\n\nexport type RadioFactory = Factory<{\n props: RadioProps;\n ref: HTMLInputElement;\n stylesNames: RadioStylesNames;\n vars: RadioCssVariables;\n staticComponents: {\n Group: typeof RadioGroup;\n };\n}>;\n\nconst defaultProps: Partial<RadioProps> = {\n labelPosition: 'right',\n};\n\nconst varsResolver = createVarsResolver<RadioFactory>(\n (theme, { size, radius, color, iconColor }) => ({\n root: {\n '--radio-size': getSize(size, 'radio-size'),\n '--radio-radius': radius === undefined ? undefined : getRadius(radius),\n '--radio-color': color ? getThemeColor(color, theme) : undefined,\n '--radio-icon-color': iconColor ? getThemeColor(iconColor, theme) : undefined,\n },\n })\n);\n\nexport const Radio = factory<RadioFactory>((_props, ref) => {\n const props = useProps('Radio', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n id,\n size,\n label,\n labelPosition,\n description,\n error,\n radius,\n color,\n variant,\n disabled,\n wrapperProps,\n icon: Icon = RadioIcon,\n rootRef,\n iconColor,\n ...others\n } = props;\n\n const getStyles = useStyles<RadioFactory>({\n name: 'Radio',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const ctx = useRadioGroupContext();\n\n const contextSize = ctx?.size ?? size;\n const componentSize = props.size ? size : contextSize;\n\n const { styleProps, rest } = extractStyleProps(others);\n const uuid = useId(id);\n\n const contextProps = ctx\n ? {\n checked: ctx.value === rest.value,\n name: rest.name ?? ctx.name,\n onChange: ctx.onChange,\n }\n : {};\n\n return (\n <InlineInput\n {...getStyles('root')}\n __staticSelector=\"Radio\"\n __stylesApiProps={props}\n id={uuid}\n size={componentSize}\n labelPosition={labelPosition}\n label={label}\n description={description}\n error={error}\n disabled={disabled}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n data-checked={contextProps.checked || undefined}\n variant={variant}\n ref={rootRef}\n {...styleProps}\n {...wrapperProps}\n >\n <Box {...getStyles('inner')} mod={{ 'label-position': labelPosition }}>\n <Box\n {...getStyles('radio', { focusable: true })}\n {...rest}\n {...contextProps}\n component=\"input\"\n mod={{ error: !!error }}\n ref={ref}\n id={uuid}\n disabled={disabled}\n type=\"radio\"\n />\n <Icon {...getStyles('icon')} aria-hidden />\n </Box>\n </InlineInput>\n );\n});\n\nRadio.classes = classes;\nRadio.displayName = '@mantine/core/Radio';\nRadio.Group = RadioGroup;\n"],"names":["createVarsResolver","getSize","getRadius","getThemeColor","factory","useProps","RadioIcon","useStyles","classes","useRadioGroupContext","extractStyleProps","useId","React","InlineInput","Box","RadioGroup"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroup.js","sources":["../../../../src/components/Radio/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import React from 'react';\nimport { useId, useUncontrolled } from '@mantine/hooks';\nimport { factory, useProps, MantineSize, Factory } from '../../../core';\nimport { InputWrapperStylesNames, Input, InputWrapperProps } from '../../Input';\nimport { InputsGroupFieldset } from '../../InputsGroupFieldset';\nimport { RadioGroupProvider } from '../RadioGroup.context';\n\nexport type RadioGroupStylesNames = InputWrapperStylesNames;\n\nexport interface RadioGroupProps extends Omit<InputWrapperProps, 'onChange'> {\n /** `Radio` components */\n children: React.ReactNode;\n\n /** Controlled component value */\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 /** Props passed down to the `Input.Wrapper` */\n wrapperProps?: Record<string, any>;\n\n /** Controls size of the `Input.Wrapper`, `'sm'` by default */\n size?: MantineSize;\n\n /** Name attribute of child radio inputs */\n name?: string;\n}\n\nexport type RadioGroupFactory = Factory<{\n props: RadioGroupProps;\n ref: HTMLDivElement;\n stylesNames: RadioGroupStylesNames;\n}>;\n\nconst defaultProps: Partial<RadioGroupProps> = {};\n\nexport const RadioGroup = factory<RadioGroupFactory>((props, ref) => {\n const { value, defaultValue, onChange, size, wrapperProps, children, name, ...others } = useProps(\n 'RadioGroup',\n defaultProps,\n props\n );\n\n const _name = useId(name);\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) =>\n setValue(event.currentTarget.value);\n\n return (\n <RadioGroupProvider value={{ value: _value, onChange: handleChange, size, name: _name }}>\n <Input.Wrapper\n size={size}\n ref={ref}\n {...wrapperProps}\n {...others}\n labelElement=\"div\"\n __staticSelector=\"RadioGroup\"\n >\n <InputsGroupFieldset role=\"radiogroup\">{children}</InputsGroupFieldset>\n </Input.Wrapper>\n </RadioGroupProvider>\n );\n});\n\nRadioGroup.classes = Input.Wrapper.classes;\nRadioGroup.displayName = '@mantine/core/RadioGroup';\n"],"names":["factory","useProps","useId","useUncontrolled","React","RadioGroupProvider","Input","InputsGroupFieldset"],"mappings":"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"}
1
+ {"version":3,"file":"RadioGroup.js","sources":["../../../../src/components/Radio/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import React from 'react';\nimport { useId, useUncontrolled } from '@mantine/hooks';\nimport { factory, useProps, MantineSize, Factory } from '../../../core';\nimport { InputWrapperStylesNames, Input, InputWrapperProps } from '../../Input';\nimport { InputsGroupFieldset } from '../../InputsGroupFieldset';\nimport { RadioGroupProvider } from '../RadioGroup.context';\n\nexport type RadioGroupStylesNames = InputWrapperStylesNames;\n\nexport interface RadioGroupProps extends Omit<InputWrapperProps, 'onChange'> {\n /** `Radio` components */\n children: React.ReactNode;\n\n /** Controlled component value */\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 /** Props passed down to the `Input.Wrapper` */\n wrapperProps?: Record<string, any>;\n\n /** Controls size of the `Input.Wrapper`, `'sm'` by default */\n size?: MantineSize;\n\n /** Name attribute of child radio inputs */\n name?: string;\n}\n\nexport type RadioGroupFactory = Factory<{\n props: RadioGroupProps;\n ref: HTMLDivElement;\n stylesNames: RadioGroupStylesNames;\n}>;\n\nconst defaultProps: Partial<RadioGroupProps> = {};\n\nexport const RadioGroup = factory<RadioGroupFactory>((props, ref) => {\n const { value, defaultValue, onChange, size, wrapperProps, children, name, ...others } = useProps(\n 'RadioGroup',\n defaultProps,\n props\n );\n\n const _name = useId(name);\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: '',\n onChange,\n });\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) =>\n setValue(event.currentTarget.value);\n\n return (\n <RadioGroupProvider value={{ value: _value, onChange: handleChange, size, name: _name }}>\n <Input.Wrapper\n size={size}\n ref={ref}\n {...wrapperProps}\n {...others}\n labelElement=\"div\"\n __staticSelector=\"RadioGroup\"\n >\n <InputsGroupFieldset role=\"radiogroup\">{children}</InputsGroupFieldset>\n </Input.Wrapper>\n </RadioGroupProvider>\n );\n});\n\nRadioGroup.classes = Input.Wrapper.classes;\nRadioGroup.displayName = '@mantine/core/RadioGroup';\n"],"names":["factory","useProps","useId","useUncontrolled","React","RadioGroupProvider","Input","InputsGroupFieldset"],"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;AAOF,MAAM,YAAY,GAAG,EAAE,CAAC;AACZ,MAAC,UAAU,GAAGA,eAAO,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK;AAClD,EAAE,MAAM,EAAE,GAAGC,iBAAQ;AACrB,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,IAAI,KAAK;AACT,GAAG,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3L,EAAE,MAAM,KAAK,GAAGC,WAAK,CAAC,IAAI,CAAC,CAAC;AAC5B,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAGC,qBAAe,CAAC;AAC7C,IAAI,KAAK;AACT,IAAI,YAAY;AAChB,IAAI,UAAU,EAAE,EAAE;AAClB,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,YAAY,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AACtE,EAAE,uBAAuBC,cAAK,CAAC,aAAa,CAACC,qCAAkB,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,kBAAkBD,cAAK,CAAC,aAAa;AAC7K,IAAIE,WAAK,CAAC,OAAO;AACjB,IAAI,aAAa,CAAC,cAAc,CAAC,cAAc,CAAC;AAChD,MAAM,IAAI;AACV,MAAM,GAAG;AACT,KAAK,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,EAAE;AAC/B,MAAM,YAAY,EAAE,KAAK;AACzB,MAAM,gBAAgB,EAAE,YAAY;AACpC,KAAK,CAAC;AACN,oBAAoBF,cAAK,CAAC,aAAa,CAACG,uCAAmB,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,QAAQ,CAAC;AAC9F,GAAG,CAAC,CAAC;AACL,CAAC,EAAE;AACH,UAAU,CAAC,OAAO,GAAGD,WAAK,CAAC,OAAO,CAAC,OAAO,CAAC;AAC3C,UAAU,CAAC,WAAW,GAAG,0BAA0B;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"RadioGroup.context.js","sources":["../../../src/components/Radio/RadioGroup.context.ts"],"sourcesContent":["import { MantineSize, createOptionalContext } from '../../core';\n\ninterface RadioGroupContextValue {\n size: MantineSize | undefined;\n value: string;\n onChange(event: React.ChangeEvent<HTMLInputElement>): void;\n name: string;\n}\n\nexport const [RadioGroupProvider, useRadioGroupContext] =\n createOptionalContext<RadioGroupContextValue>();\n"],"names":["createOptionalContext"],"mappings":";;;;;;;AACY,MAAC,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,GAAGA,2CAAqB;;;"}
1
+ {"version":3,"file":"RadioGroup.context.js","sources":["../../../src/components/Radio/RadioGroup.context.ts"],"sourcesContent":["import { MantineSize, createOptionalContext } from '../../core';\n\ninterface RadioGroupContextValue {\n size: MantineSize | undefined;\n value: string;\n onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;\n name: string;\n}\n\nexport const [RadioGroupProvider, useRadioGroupContext] =\n createOptionalContext<RadioGroupContextValue>();\n"],"names":["createOptionalContext"],"mappings":";;;;;;;AACY,MAAC,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,GAAGA,2CAAqB;;;"}
@@ -48,7 +48,7 @@ function RadioIcon(_a) {
48
48
  viewBox: "0 0 5 5",
49
49
  style: __spreadValues({ width: rem.rem(size), height: rem.rem(size) }, style)
50
50
  }, others),
51
- /* @__PURE__ */ React__default.createElement("path", { fill: "currentColor", d: "M0 2.5a2.5 2.5 0 115 0 2.5 2.5 0 01-5 0z" })
51
+ /* @__PURE__ */ React__default.createElement("circle", { cx: "2.5", cy: "2.5", r: "2.5", fill: "currentColor" })
52
52
  );
53
53
  }
54
54
 
@@ -1 +1 @@
1
- {"version":3,"file":"RadioIcon.js","sources":["../../../src/components/Radio/RadioIcon.tsx"],"sourcesContent":["import React from 'react';\nimport { rem } from '../../core';\n\nexport interface RadioIconProps extends React.ComponentPropsWithoutRef<'svg'> {\n size?: string | number;\n}\n\nexport function RadioIcon({ size, style, ...others }: RadioIconProps) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 5 5\"\n style={{ width: rem(size), height: rem(size), ...style }}\n {...others}\n >\n <path fill=\"currentColor\" d=\"M0 2.5a2.5 2.5 0 115 0 2.5 2.5 0 01-5 0z\" />\n </svg>\n );\n}\n"],"names":["React","rem"],"mappings":"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"}
1
+ {"version":3,"file":"RadioIcon.js","sources":["../../../src/components/Radio/RadioIcon.tsx"],"sourcesContent":["import React from 'react';\nimport { rem } from '../../core';\n\nexport interface RadioIconProps extends React.ComponentPropsWithoutRef<'svg'> {\n size?: string | number;\n}\n\nexport function RadioIcon({ size, style, ...others }: RadioIconProps) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 5 5\"\n style={{ width: rem(size), height: rem(size), ...style }}\n {...others}\n >\n <circle cx=\"2.5\" cy=\"2.5\" r=\"2.5\" fill=\"currentColor\" />\n </svg>\n );\n}\n"],"names":["React","rem"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Rating.js","sources":["../../../src/components/Rating/Rating.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { clamp, useId, useMergedRef, useUncontrolled } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n MantineSize,\n MantineColor,\n useDirection,\n getSize,\n getThemeColor,\n} from '../../core';\nimport { RatingProvider } from './Rating.context';\nimport classes from './Rating.module.css';\nimport { RatingItem } from './RatingItem/RatingItem';\n\nfunction roundValueTo(value: number, to: number) {\n const rounded = Math.round(value / to) * to;\n const precision = `${to}`.split('.')[1]?.length || 0;\n return Number(rounded.toFixed(precision));\n}\n\nexport type RatingStylesNames =\n | 'root'\n | 'starSymbol'\n | 'input'\n | 'label'\n | 'symbolBody'\n | 'symbolGroup';\n\nexport type RatingCssVariables = {\n root: '--rating-size' | '--rating-color';\n};\n\nexport interface RatingProps\n extends BoxProps,\n StylesApiProps<RatingFactory>,\n ElementProps<'div', 'onChange'> {\n /** Default value for uncontrolled component */\n defaultValue?: number;\n\n /** Value for controlled component */\n value?: number;\n\n /** Called when value changes */\n onChange?(value: number): void;\n\n /** The icon that is displayed when symbol is empty */\n emptySymbol?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** This icon that is displayed when symbol is full */\n fullSymbol?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Number of fractions each item can be divided into, 1 by default */\n fractions?: number;\n\n /** Controls component size */\n size?: MantineSize;\n\n /** Number of controls that should be rendered */\n count?: number;\n\n /** Called when item is hovered */\n onHover?(value: number): void;\n\n /** Function should return labelText for the symbols */\n getSymbolLabel?: (value: number) => string;\n\n /** Name of rating, should be unique within the page */\n name?: string;\n\n /** If true, you won't be able to interact */\n readOnly?: boolean;\n\n /** If true, only the selected symbol will change to full symbol */\n highlightSelectedOnly?: boolean;\n\n /** Key of theme.colors or any CSS color value, yellow by default */\n color?: MantineColor;\n}\n\nexport type RatingFactory = Factory<{\n props: RatingProps;\n ref: HTMLDivElement;\n stylesNames: RatingStylesNames;\n vars: RatingCssVariables;\n}>;\n\nconst defaultProps: Partial<RatingProps> = {\n size: 'sm',\n getSymbolLabel: (value) => `${value}`,\n count: 5,\n fractions: 1,\n color: 'yellow',\n};\n\nconst varsResolver = createVarsResolver<RatingFactory>((theme, { size, color }) => ({\n root: {\n '--rating-size': getSize(size, 'rating-size'),\n '--rating-color': getThemeColor(color, theme),\n },\n}));\n\nexport const Rating = factory<RatingFactory>((_props, ref) => {\n const props = useProps('Rating', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n name,\n id,\n value,\n defaultValue,\n onChange,\n fractions,\n count,\n onMouseEnter,\n readOnly,\n onMouseMove,\n onHover,\n onMouseLeave,\n onTouchStart,\n onTouchEnd,\n size,\n variant,\n getSymbolLabel,\n color,\n emptySymbol,\n fullSymbol,\n highlightSelectedOnly,\n ...others\n } = props;\n\n const getStyles = useStyles<RatingFactory>({\n name: 'Rating',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const { dir } = useDirection();\n\n const _name = useId(name);\n const _id = useId(id);\n const rootRef = useRef<HTMLDivElement>(null);\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: 0,\n onChange,\n });\n\n const [hovered, setHovered] = useState(-1);\n const [isOutside, setOutside] = useState(true);\n\n const _fractions = Math.floor(fractions!);\n const _count = Math.floor(count!);\n\n const decimalUnit = 1 / _fractions;\n const stableValueRounded = roundValueTo(_value, decimalUnit);\n const finalValue = hovered !== -1 ? hovered : stableValueRounded;\n\n const getRatingFromCoordinates = (x: number) => {\n const { left, right, width } = rootRef.current!.getBoundingClientRect();\n const symbolWidth = width / _count;\n\n const hoverPosition = dir === 'rtl' ? right - x : x - left;\n const hoverValue = hoverPosition / symbolWidth;\n\n return clamp(roundValueTo(hoverValue + decimalUnit / 2, decimalUnit), decimalUnit, _count);\n };\n\n const handleMouseEnter = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseEnter?.(event);\n !readOnly && setOutside(false);\n };\n\n const handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseMove?.(event);\n\n if (readOnly) {\n return;\n }\n\n const rounded = getRatingFromCoordinates(event.clientX);\n\n setHovered(rounded);\n rounded !== hovered && onHover?.(rounded);\n };\n\n const handleMouseLeave = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseLeave?.(event);\n\n if (readOnly) {\n return;\n }\n\n setHovered(-1);\n setOutside(true);\n hovered !== -1 && onHover?.(-1);\n };\n\n const handleTouchStart = (event: React.TouchEvent<HTMLDivElement>) => {\n event.preventDefault();\n\n const { touches } = event;\n if (touches.length !== 1) {\n return;\n }\n\n const touch = touches[0];\n setValue(getRatingFromCoordinates(touch.clientX));\n\n onTouchStart?.(event);\n };\n\n const handleTouchEnd = (event: React.TouchEvent<HTMLDivElement>) => {\n event.preventDefault();\n\n onTouchEnd?.(event);\n };\n\n const handleItemBlur = () => isOutside && setHovered(-1);\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement> | number) => {\n if (!readOnly) {\n if (typeof event === 'number') {\n setHovered(event);\n } else {\n setHovered(parseFloat(event.target.value));\n }\n }\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement> | number) => {\n if (!readOnly) {\n if (typeof event === 'number') {\n setValue(event);\n } else {\n setValue(parseFloat(event.target.value));\n }\n }\n };\n\n const items = Array(_count)\n .fill(0)\n .map((_, index) => {\n const integerValue = index + 1;\n const fractionItems = Array.from(new Array(index === 0 ? _fractions + 1 : _fractions));\n const isGroupActive = !readOnly && Math.ceil(hovered) === integerValue;\n\n return (\n <div\n key={integerValue}\n data-active={isGroupActive || undefined}\n {...getStyles('symbolGroup')}\n >\n {fractionItems.map((__, fractionIndex) => {\n const fractionValue = decimalUnit * (index === 0 ? fractionIndex : fractionIndex + 1);\n const symbolValue = roundValueTo(integerValue - 1 + fractionValue, decimalUnit);\n\n return (\n <RatingItem\n key={`${integerValue}-${symbolValue}`}\n size={size!}\n getSymbolLabel={getSymbolLabel}\n emptyIcon={emptySymbol}\n fullIcon={fullSymbol}\n full={\n highlightSelectedOnly ? symbolValue === finalValue : symbolValue <= finalValue\n }\n active={symbolValue === finalValue}\n checked={symbolValue === stableValueRounded}\n readOnly={readOnly}\n fractionValue={fractionValue}\n value={symbolValue}\n name={_name}\n onChange={handleChange}\n onBlur={handleItemBlur}\n onInputChange={handleInputChange}\n id={`${_id}-${index}-${fractionIndex}`}\n />\n );\n })}\n </div>\n );\n });\n\n return (\n <RatingProvider value={{ getStyles }}>\n <Box\n ref={useMergedRef(rootRef, ref)}\n {...getStyles('root')}\n onMouseMove={handleMouseMove}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onTouchStart={handleTouchStart}\n onTouchEnd={handleTouchEnd}\n variant={variant}\n size={size}\n id={_id}\n {...others}\n >\n {items}\n </Box>\n </RatingProvider>\n );\n});\n\nRating.classes = classes;\nRating.displayName = '@mantine/core/Rating';\n"],"names":["createVarsResolver","getSize","getThemeColor","factory","useProps","useStyles","classes","useDirection","useId","useRef","useUncontrolled","useState","clamp","React","RatingItem","RatingProvider","Box","useMergedRef"],"mappings":"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"}
1
+ {"version":3,"file":"Rating.js","sources":["../../../src/components/Rating/Rating.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { clamp, useId, useMergedRef, useUncontrolled } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n createVarsResolver,\n Factory,\n MantineSize,\n MantineColor,\n useDirection,\n getSize,\n getThemeColor,\n} from '../../core';\nimport { RatingProvider } from './Rating.context';\nimport classes from './Rating.module.css';\nimport { RatingItem } from './RatingItem/RatingItem';\n\nfunction roundValueTo(value: number, to: number) {\n const rounded = Math.round(value / to) * to;\n const precision = `${to}`.split('.')[1]?.length || 0;\n return Number(rounded.toFixed(precision));\n}\n\nexport type RatingStylesNames =\n | 'root'\n | 'starSymbol'\n | 'input'\n | 'label'\n | 'symbolBody'\n | 'symbolGroup';\n\nexport type RatingCssVariables = {\n root: '--rating-size' | '--rating-color';\n};\n\nexport interface RatingProps\n extends BoxProps,\n StylesApiProps<RatingFactory>,\n ElementProps<'div', 'onChange'> {\n /** Default value for uncontrolled component */\n defaultValue?: number;\n\n /** Value for controlled component */\n value?: number;\n\n /** Called when value changes */\n onChange?: (value: number) => void;\n\n /** The icon that is displayed when symbol is empty */\n emptySymbol?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** This icon that is displayed when symbol is full */\n fullSymbol?: React.ReactNode | ((value: number) => React.ReactNode);\n\n /** Number of fractions each item can be divided into, 1 by default */\n fractions?: number;\n\n /** Controls component size */\n size?: MantineSize;\n\n /** Number of controls that should be rendered */\n count?: number;\n\n /** Called when item is hovered */\n onHover?: (value: number) => void;\n\n /** Function should return labelText for the symbols */\n getSymbolLabel?: (value: number) => string;\n\n /** Name of rating, should be unique within the page */\n name?: string;\n\n /** If true, you won't be able to interact */\n readOnly?: boolean;\n\n /** If true, only the selected symbol will change to full symbol */\n highlightSelectedOnly?: boolean;\n\n /** Key of theme.colors or any CSS color value, yellow by default */\n color?: MantineColor;\n}\n\nexport type RatingFactory = Factory<{\n props: RatingProps;\n ref: HTMLDivElement;\n stylesNames: RatingStylesNames;\n vars: RatingCssVariables;\n}>;\n\nconst defaultProps: Partial<RatingProps> = {\n size: 'sm',\n getSymbolLabel: (value) => `${value}`,\n count: 5,\n fractions: 1,\n color: 'yellow',\n};\n\nconst varsResolver = createVarsResolver<RatingFactory>((theme, { size, color }) => ({\n root: {\n '--rating-size': getSize(size, 'rating-size'),\n '--rating-color': getThemeColor(color, theme),\n },\n}));\n\nexport const Rating = factory<RatingFactory>((_props, ref) => {\n const props = useProps('Rating', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n name,\n id,\n value,\n defaultValue,\n onChange,\n fractions,\n count,\n onMouseEnter,\n readOnly,\n onMouseMove,\n onHover,\n onMouseLeave,\n onTouchStart,\n onTouchEnd,\n size,\n variant,\n getSymbolLabel,\n color,\n emptySymbol,\n fullSymbol,\n highlightSelectedOnly,\n ...others\n } = props;\n\n const getStyles = useStyles<RatingFactory>({\n name: 'Rating',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n const { dir } = useDirection();\n\n const _name = useId(name);\n const _id = useId(id);\n const rootRef = useRef<HTMLDivElement>(null);\n\n const [_value, setValue] = useUncontrolled({\n value,\n defaultValue,\n finalValue: 0,\n onChange,\n });\n\n const [hovered, setHovered] = useState(-1);\n const [isOutside, setOutside] = useState(true);\n\n const _fractions = Math.floor(fractions!);\n const _count = Math.floor(count!);\n\n const decimalUnit = 1 / _fractions;\n const stableValueRounded = roundValueTo(_value, decimalUnit);\n const finalValue = hovered !== -1 ? hovered : stableValueRounded;\n\n const getRatingFromCoordinates = (x: number) => {\n const { left, right, width } = rootRef.current!.getBoundingClientRect();\n const symbolWidth = width / _count;\n\n const hoverPosition = dir === 'rtl' ? right - x : x - left;\n const hoverValue = hoverPosition / symbolWidth;\n\n return clamp(roundValueTo(hoverValue + decimalUnit / 2, decimalUnit), decimalUnit, _count);\n };\n\n const handleMouseEnter = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseEnter?.(event);\n !readOnly && setOutside(false);\n };\n\n const handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseMove?.(event);\n\n if (readOnly) {\n return;\n }\n\n const rounded = getRatingFromCoordinates(event.clientX);\n\n setHovered(rounded);\n rounded !== hovered && onHover?.(rounded);\n };\n\n const handleMouseLeave = (event: React.MouseEvent<HTMLDivElement>) => {\n onMouseLeave?.(event);\n\n if (readOnly) {\n return;\n }\n\n setHovered(-1);\n setOutside(true);\n hovered !== -1 && onHover?.(-1);\n };\n\n const handleTouchStart = (event: React.TouchEvent<HTMLDivElement>) => {\n event.preventDefault();\n\n const { touches } = event;\n if (touches.length !== 1) {\n return;\n }\n\n const touch = touches[0];\n setValue(getRatingFromCoordinates(touch.clientX));\n\n onTouchStart?.(event);\n };\n\n const handleTouchEnd = (event: React.TouchEvent<HTMLDivElement>) => {\n event.preventDefault();\n\n onTouchEnd?.(event);\n };\n\n const handleItemBlur = () => isOutside && setHovered(-1);\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement> | number) => {\n if (!readOnly) {\n if (typeof event === 'number') {\n setHovered(event);\n } else {\n setHovered(parseFloat(event.target.value));\n }\n }\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement> | number) => {\n if (!readOnly) {\n if (typeof event === 'number') {\n setValue(event);\n } else {\n setValue(parseFloat(event.target.value));\n }\n }\n };\n\n const items = Array(_count)\n .fill(0)\n .map((_, index) => {\n const integerValue = index + 1;\n const fractionItems = Array.from(new Array(index === 0 ? _fractions + 1 : _fractions));\n const isGroupActive = !readOnly && Math.ceil(hovered) === integerValue;\n\n return (\n <div\n key={integerValue}\n data-active={isGroupActive || undefined}\n {...getStyles('symbolGroup')}\n >\n {fractionItems.map((__, fractionIndex) => {\n const fractionValue = decimalUnit * (index === 0 ? fractionIndex : fractionIndex + 1);\n const symbolValue = roundValueTo(integerValue - 1 + fractionValue, decimalUnit);\n\n return (\n <RatingItem\n key={`${integerValue}-${symbolValue}`}\n size={size!}\n getSymbolLabel={getSymbolLabel}\n emptyIcon={emptySymbol}\n fullIcon={fullSymbol}\n full={\n highlightSelectedOnly ? symbolValue === finalValue : symbolValue <= finalValue\n }\n active={symbolValue === finalValue}\n checked={symbolValue === stableValueRounded}\n readOnly={readOnly}\n fractionValue={fractionValue}\n value={symbolValue}\n name={_name}\n onChange={handleChange}\n onBlur={handleItemBlur}\n onInputChange={handleInputChange}\n id={`${_id}-${index}-${fractionIndex}`}\n />\n );\n })}\n </div>\n );\n });\n\n return (\n <RatingProvider value={{ getStyles }}>\n <Box\n ref={useMergedRef(rootRef, ref)}\n {...getStyles('root')}\n onMouseMove={handleMouseMove}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onTouchStart={handleTouchStart}\n onTouchEnd={handleTouchEnd}\n variant={variant}\n size={size}\n id={_id}\n {...others}\n >\n {items}\n </Box>\n </RatingProvider>\n );\n});\n\nRating.classes = classes;\nRating.displayName = '@mantine/core/Rating';\n"],"names":["createVarsResolver","getSize","getThemeColor","factory","useProps","useStyles","classes","useDirection","useId","useRef","useUncontrolled","useState","clamp","React","RatingItem","RatingProvider","Box","useMergedRef"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RatingItem.js","sources":["../../../../src/components/Rating/RatingItem/RatingItem.tsx"],"sourcesContent":["import React from 'react';\nimport { MantineSize, BoxProps, ElementProps, Box, useDirection } from '../../../core';\nimport { StarSymbol } from '../StarSymbol/StarSymbol';\nimport { useRatingContext } from '../Rating.context';\n\nexport interface RatingItemProps extends BoxProps, ElementProps<'input', 'value' | 'size'> {\n size: MantineSize;\n getSymbolLabel: ((value: number) => string) | undefined;\n emptyIcon?: React.ReactNode | ((value: number) => React.ReactNode);\n fullIcon?: React.ReactNode | ((value: number) => React.ReactNode);\n full: boolean;\n active: boolean;\n fractionValue: number;\n value: number;\n id: string;\n onChange(event: React.ChangeEvent<HTMLInputElement> | number): void;\n onInputChange(event: React.ChangeEvent<HTMLInputElement> | number): void;\n}\n\nexport function RatingItem({\n size,\n getSymbolLabel,\n emptyIcon,\n fullIcon,\n full,\n active,\n value,\n readOnly,\n fractionValue,\n color,\n id,\n onBlur,\n onChange,\n onInputChange,\n style,\n ...others\n}: RatingItemProps) {\n const ctx = useRatingContext();\n const _fullIcon = typeof fullIcon === 'function' ? fullIcon(value) : fullIcon;\n const _emptyIcon = typeof emptyIcon === 'function' ? emptyIcon(value) : emptyIcon;\n const { dir } = useDirection();\n\n return (\n <>\n {!readOnly && (\n <input\n {...ctx.getStyles('input')}\n onKeyDown={(event) => event.key === ' ' && onChange(value)}\n id={id}\n type=\"radio\"\n data-active={active || undefined}\n aria-label={getSymbolLabel?.(value)}\n value={value}\n onBlur={onBlur}\n onChange={onInputChange}\n {...others}\n />\n )}\n\n <Box\n component={readOnly ? 'div' : 'label'}\n {...ctx.getStyles('label')}\n data-read-only={readOnly || undefined}\n htmlFor={id}\n onClick={() => onChange(value)}\n __vars={{\n '--rating-item-z-index': (fractionValue === 1 ? undefined : active ? 2 : 0)?.toString(),\n }}\n >\n <Box\n {...ctx.getStyles('symbolBody')}\n __vars={{\n '--rating-symbol-clip-path':\n fractionValue === 1\n ? undefined\n : dir === 'ltr'\n ? `inset(0 ${active ? 100 - fractionValue * 100 : 100}% 0 0)`\n : `inset(0 0 0 ${active ? 100 - fractionValue * 100 : 100}% )`,\n }}\n >\n {full\n ? _fullIcon || <StarSymbol type=\"full\" />\n : _emptyIcon || <StarSymbol type=\"empty\" />}\n </Box>\n </Box>\n </>\n );\n}\n\nRatingItem.displayName = '@mantine/core/RatingItem';\n"],"names":["useRatingContext","useDirection","React","Box","StarSymbol"],"mappings":"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"}
1
+ {"version":3,"file":"RatingItem.js","sources":["../../../../src/components/Rating/RatingItem/RatingItem.tsx"],"sourcesContent":["import React from 'react';\nimport { MantineSize, BoxProps, ElementProps, Box, useDirection } from '../../../core';\nimport { StarSymbol } from '../StarSymbol/StarSymbol';\nimport { useRatingContext } from '../Rating.context';\n\nexport interface RatingItemProps extends BoxProps, ElementProps<'input', 'value' | 'size'> {\n size: MantineSize;\n getSymbolLabel: ((value: number) => string) | undefined;\n emptyIcon?: React.ReactNode | ((value: number) => React.ReactNode);\n fullIcon?: React.ReactNode | ((value: number) => React.ReactNode);\n full: boolean;\n active: boolean;\n fractionValue: number;\n value: number;\n id: string;\n onChange: (event: React.ChangeEvent<HTMLInputElement> | number) => void;\n onInputChange: (event: React.ChangeEvent<HTMLInputElement> | number) => void;\n}\n\nexport function RatingItem({\n size,\n getSymbolLabel,\n emptyIcon,\n fullIcon,\n full,\n active,\n value,\n readOnly,\n fractionValue,\n color,\n id,\n onBlur,\n onChange,\n onInputChange,\n style,\n ...others\n}: RatingItemProps) {\n const ctx = useRatingContext();\n const _fullIcon = typeof fullIcon === 'function' ? fullIcon(value) : fullIcon;\n const _emptyIcon = typeof emptyIcon === 'function' ? emptyIcon(value) : emptyIcon;\n const { dir } = useDirection();\n\n return (\n <>\n {!readOnly && (\n <input\n {...ctx.getStyles('input')}\n onKeyDown={(event) => event.key === ' ' && onChange(value)}\n id={id}\n type=\"radio\"\n data-active={active || undefined}\n aria-label={getSymbolLabel?.(value)}\n value={value}\n onBlur={onBlur}\n onChange={onInputChange}\n {...others}\n />\n )}\n\n <Box\n component={readOnly ? 'div' : 'label'}\n {...ctx.getStyles('label')}\n data-read-only={readOnly || undefined}\n htmlFor={id}\n onClick={() => onChange(value)}\n __vars={{\n '--rating-item-z-index': (fractionValue === 1 ? undefined : active ? 2 : 0)?.toString(),\n }}\n >\n <Box\n {...ctx.getStyles('symbolBody')}\n __vars={{\n '--rating-symbol-clip-path':\n fractionValue === 1\n ? undefined\n : dir === 'ltr'\n ? `inset(0 ${active ? 100 - fractionValue * 100 : 100}% 0 0)`\n : `inset(0 0 0 ${active ? 100 - fractionValue * 100 : 100}% )`,\n }}\n >\n {full\n ? _fullIcon || <StarSymbol type=\"full\" />\n : _emptyIcon || <StarSymbol type=\"empty\" />}\n </Box>\n </Box>\n </>\n );\n}\n\nRatingItem.displayName = '@mantine/core/RatingItem';\n"],"names":["useRatingContext","useDirection","React","Box","StarSymbol"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollArea.context.js","sources":["../../../src/components/ScrollArea/ScrollArea.context.ts"],"sourcesContent":["import { createSafeContext } from '../../core';\n\nexport interface ScrollAreaContextValue {\n type: 'auto' | 'always' | 'scroll' | 'hover' | 'never';\n scrollHideDelay: number;\n scrollArea: HTMLDivElement | null;\n viewport: HTMLDivElement | null;\n onViewportChange(viewport: HTMLDivElement | null): void;\n content: HTMLDivElement | null;\n onContentChange(content: HTMLDivElement): void;\n scrollbarX: HTMLDivElement | null;\n onScrollbarXChange(scrollbar: HTMLDivElement | null): void;\n scrollbarXEnabled: boolean;\n onScrollbarXEnabledChange(rendered: boolean): void;\n scrollbarY: HTMLDivElement | null;\n onScrollbarYChange(scrollbar: HTMLDivElement | null): void;\n scrollbarYEnabled: boolean;\n onScrollbarYEnabledChange(rendered: boolean): void;\n onCornerWidthChange(width: number): void;\n onCornerHeightChange(height: number): void;\n}\n\nexport const [ScrollAreaProvider, useScrollAreaContext] = createSafeContext<ScrollAreaContextValue>(\n 'ScrollArea.Root component was not found in tree'\n);\n"],"names":["createSafeContext"],"mappings":";;;;;;;AACY,MAAC,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,GAAGA,mCAAiB;AAC3E,EAAE,iDAAiD;AACnD;;;"}
1
+ {"version":3,"file":"ScrollArea.context.js","sources":["../../../src/components/ScrollArea/ScrollArea.context.ts"],"sourcesContent":["import { createSafeContext } from '../../core';\n\nexport interface ScrollAreaContextValue {\n type: 'auto' | 'always' | 'scroll' | 'hover' | 'never';\n scrollHideDelay: number;\n scrollArea: HTMLDivElement | null;\n viewport: HTMLDivElement | null;\n onViewportChange: (viewport: HTMLDivElement | null) => void;\n content: HTMLDivElement | null;\n onContentChange: (content: HTMLDivElement) => void;\n scrollbarX: HTMLDivElement | null;\n onScrollbarXChange: (scrollbar: HTMLDivElement | null) => void;\n scrollbarXEnabled: boolean;\n onScrollbarXEnabledChange: (rendered: boolean) => void;\n scrollbarY: HTMLDivElement | null;\n onScrollbarYChange: (scrollbar: HTMLDivElement | null) => void;\n scrollbarYEnabled: boolean;\n onScrollbarYEnabledChange: (rendered: boolean) => void;\n onCornerWidthChange: (width: number) => void;\n onCornerHeightChange: (height: number) => void;\n}\n\nexport const [ScrollAreaProvider, useScrollAreaContext] = createSafeContext<ScrollAreaContextValue>(\n 'ScrollArea.Root component was not found in tree'\n);\n"],"names":["createSafeContext"],"mappings":";;;;;;;AACY,MAAC,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,GAAGA,mCAAiB;AAC3E,EAAE,iDAAiD;AACnD;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollArea.js","sources":["../../../src/components/ScrollArea/ScrollArea.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n rem,\n createVarsResolver,\n Factory,\n} from '../../core';\nimport { ScrollAreaScrollbar } from './ScrollAreaScrollbar/ScrollAreaScrollbar';\nimport { ScrollAreaCorner } from './ScrollAreaCorner/ScrollAreaCorner';\nimport { ScrollAreaRoot } from './ScrollAreaRoot/ScrollAreaRoot';\nimport { ScrollAreaViewport } from './ScrollAreaViewport/ScrollAreaViewport';\nimport classes from './ScrollArea.module.css';\nimport { ScrollAreaThumb } from './ScrollAreaThumb/ScrollAreaThumb';\n\nexport type ScrollAreaStylesNames = 'root' | 'viewport' | 'scrollbar' | 'thumb' | 'corner';\nexport type ScrollAreaCssVariables = {\n root: '--scrollarea-scrollbar-size';\n};\n\nexport interface ScrollAreaProps\n extends BoxProps,\n StylesApiProps<ScrollAreaFactory>,\n ElementProps<'div'> {\n /** Scrollbar size, any valid CSS value for width/height, numbers are converted to rem, default value is 0.75rem */\n scrollbarSize?: number | string;\n\n /**\n * Defines scrollbars behavior, `hover` by default\n * - `hover` – scrollbars are visible when mouse is over the scroll area\n * - `scroll` – scrollbars are visible when the scroll area is scrolled\n * - `always` – scrollbars are always visible\n * - `never` – scrollbars are always hidden\n * - `auto` – similar to `overflow: auto` – scrollbars are always visible when the content is overflowing\n * */\n type?: 'auto' | 'always' | 'scroll' | 'hover' | 'never';\n\n /** Scroll hide delay in ms, applicable only when type is set to `hover` or `scroll`, `1000` by default */\n scrollHideDelay?: number;\n\n /** Determines whether scrollbars should be offset with padding on given axis, `false` by default */\n offsetScrollbars?: boolean | 'x' | 'y';\n\n /** Assigns viewport element (scrollable container) ref */\n viewportRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Props passed down to the viewport element */\n viewportProps?: React.ComponentPropsWithRef<'div'>;\n\n /** Called with current position (`x` and `y` coordinates) when viewport is scrolled */\n onScrollPositionChange?(position: { x: number; y: number }): void;\n}\n\nexport interface ScrollAreaAutosizeProps extends ScrollAreaProps {}\n\nexport type ScrollAreaFactory = Factory<{\n props: ScrollAreaProps;\n ref: HTMLDivElement;\n stylesNames: ScrollAreaStylesNames;\n vars: ScrollAreaCssVariables;\n staticComponents: {\n Autosize: typeof ScrollAreaAutosize;\n };\n}>;\n\nconst defaultProps: Partial<ScrollAreaProps> = {\n scrollHideDelay: 1000,\n type: 'hover',\n};\n\nconst varsResolver = createVarsResolver<ScrollAreaFactory>((_, { scrollbarSize }) => ({\n root: {\n '--scrollarea-scrollbar-size': rem(scrollbarSize),\n },\n}));\n\nexport const ScrollArea = factory<ScrollAreaFactory>((_props, ref) => {\n const props = useProps('ScrollArea', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n scrollbarSize,\n vars,\n type,\n scrollHideDelay,\n viewportProps,\n viewportRef,\n onScrollPositionChange,\n children,\n offsetScrollbars,\n ...others\n } = props;\n\n const [scrollbarHovered, setScrollbarHovered] = useState(false);\n\n const getStyles = useStyles<ScrollAreaFactory>({\n name: 'ScrollArea',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <ScrollAreaRoot\n type={type === 'never' ? 'always' : type}\n scrollHideDelay={scrollHideDelay}\n ref={ref}\n {...getStyles('root')}\n {...others}\n >\n <ScrollAreaViewport\n {...viewportProps}\n {...getStyles('viewport')}\n ref={viewportRef}\n data-offset-scrollbars={offsetScrollbars === true ? 'xy' : offsetScrollbars || undefined}\n onScroll={\n typeof onScrollPositionChange === 'function'\n ? ({ currentTarget }) =>\n onScrollPositionChange({\n x: currentTarget.scrollLeft,\n y: currentTarget.scrollTop,\n })\n : undefined\n }\n >\n {children}\n </ScrollAreaViewport>\n <ScrollAreaScrollbar\n {...getStyles('scrollbar')}\n orientation=\"horizontal\"\n data-hidden={type === 'never' || undefined}\n forceMount\n onMouseEnter={() => setScrollbarHovered(true)}\n onMouseLeave={() => setScrollbarHovered(false)}\n >\n <ScrollAreaThumb {...getStyles('thumb')} />\n </ScrollAreaScrollbar>\n <ScrollAreaScrollbar\n {...getStyles('scrollbar')}\n orientation=\"vertical\"\n data-hidden={type === 'never' || undefined}\n forceMount\n onMouseEnter={() => setScrollbarHovered(true)}\n onMouseLeave={() => setScrollbarHovered(false)}\n >\n <ScrollAreaThumb {...getStyles('thumb')} />\n </ScrollAreaScrollbar>\n <ScrollAreaCorner\n {...getStyles('corner')}\n data-hovered={scrollbarHovered || undefined}\n data-hidden={type === 'never' || undefined}\n />\n </ScrollAreaRoot>\n );\n});\n\nScrollArea.displayName = '@mantine/core/ScrollArea';\n\nexport const ScrollAreaAutosize = factory<ScrollAreaFactory>((props, ref) => {\n const {\n children,\n classNames,\n styles,\n scrollbarSize,\n scrollHideDelay,\n type,\n dir,\n offsetScrollbars,\n viewportRef,\n onScrollPositionChange,\n unstyled,\n variant,\n viewportProps,\n style,\n vars,\n ...others\n } = useProps('ScrollAreaAutosize', defaultProps, props);\n\n return (\n <Box {...others} ref={ref} style={[{ display: 'flex' }, style]}>\n <Box style={{ display: 'flex', flexDirection: 'column', flex: 1 }}>\n <ScrollArea\n classNames={classNames}\n styles={styles}\n scrollHideDelay={scrollHideDelay}\n scrollbarSize={scrollbarSize}\n type={type}\n dir={dir}\n offsetScrollbars={offsetScrollbars}\n viewportRef={viewportRef}\n onScrollPositionChange={onScrollPositionChange}\n unstyled={unstyled}\n variant={variant}\n viewportProps={viewportProps}\n vars={vars}\n >\n {children}\n </ScrollArea>\n </Box>\n </Box>\n );\n});\n\nScrollArea.classes = classes;\nScrollAreaAutosize.displayName = '@mantine/core/ScrollAreaAutosize';\nScrollAreaAutosize.classes = classes;\nScrollArea.Autosize = ScrollAreaAutosize;\n"],"names":["createVarsResolver","rem","factory","useProps","useState","useStyles","classes","React","ScrollAreaRoot","ScrollAreaViewport","ScrollAreaScrollbar","ScrollAreaThumb","ScrollAreaCorner","Box"],"mappings":"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"}
1
+ {"version":3,"file":"ScrollArea.js","sources":["../../../src/components/ScrollArea/ScrollArea.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n rem,\n createVarsResolver,\n Factory,\n} from '../../core';\nimport { ScrollAreaScrollbar } from './ScrollAreaScrollbar/ScrollAreaScrollbar';\nimport { ScrollAreaCorner } from './ScrollAreaCorner/ScrollAreaCorner';\nimport { ScrollAreaRoot } from './ScrollAreaRoot/ScrollAreaRoot';\nimport { ScrollAreaViewport } from './ScrollAreaViewport/ScrollAreaViewport';\nimport classes from './ScrollArea.module.css';\nimport { ScrollAreaThumb } from './ScrollAreaThumb/ScrollAreaThumb';\n\nexport type ScrollAreaStylesNames = 'root' | 'viewport' | 'scrollbar' | 'thumb' | 'corner';\nexport type ScrollAreaCssVariables = {\n root: '--scrollarea-scrollbar-size';\n};\n\nexport interface ScrollAreaProps\n extends BoxProps,\n StylesApiProps<ScrollAreaFactory>,\n ElementProps<'div'> {\n /** Scrollbar size, any valid CSS value for width/height, numbers are converted to rem, default value is 0.75rem */\n scrollbarSize?: number | string;\n\n /**\n * Defines scrollbars behavior, `hover` by default\n * - `hover` – scrollbars are visible when mouse is over the scroll area\n * - `scroll` – scrollbars are visible when the scroll area is scrolled\n * - `always` – scrollbars are always visible\n * - `never` – scrollbars are always hidden\n * - `auto` – similar to `overflow: auto` – scrollbars are always visible when the content is overflowing\n * */\n type?: 'auto' | 'always' | 'scroll' | 'hover' | 'never';\n\n /** Scroll hide delay in ms, applicable only when type is set to `hover` or `scroll`, `1000` by default */\n scrollHideDelay?: number;\n\n /** Determines whether scrollbars should be offset with padding on given axis, `false` by default */\n offsetScrollbars?: boolean | 'x' | 'y';\n\n /** Assigns viewport element (scrollable container) ref */\n viewportRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Props passed down to the viewport element */\n viewportProps?: React.ComponentPropsWithRef<'div'>;\n\n /** Called with current position (`x` and `y` coordinates) when viewport is scrolled */\n onScrollPositionChange?: (position: { x: number; y: number }) => void;\n}\n\nexport interface ScrollAreaAutosizeProps extends ScrollAreaProps {}\n\nexport type ScrollAreaFactory = Factory<{\n props: ScrollAreaProps;\n ref: HTMLDivElement;\n stylesNames: ScrollAreaStylesNames;\n vars: ScrollAreaCssVariables;\n staticComponents: {\n Autosize: typeof ScrollAreaAutosize;\n };\n}>;\n\nconst defaultProps: Partial<ScrollAreaProps> = {\n scrollHideDelay: 1000,\n type: 'hover',\n};\n\nconst varsResolver = createVarsResolver<ScrollAreaFactory>((_, { scrollbarSize }) => ({\n root: {\n '--scrollarea-scrollbar-size': rem(scrollbarSize),\n },\n}));\n\nexport const ScrollArea = factory<ScrollAreaFactory>((_props, ref) => {\n const props = useProps('ScrollArea', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n scrollbarSize,\n vars,\n type,\n scrollHideDelay,\n viewportProps,\n viewportRef,\n onScrollPositionChange,\n children,\n offsetScrollbars,\n ...others\n } = props;\n\n const [scrollbarHovered, setScrollbarHovered] = useState(false);\n\n const getStyles = useStyles<ScrollAreaFactory>({\n name: 'ScrollArea',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver,\n });\n\n return (\n <ScrollAreaRoot\n type={type === 'never' ? 'always' : type}\n scrollHideDelay={scrollHideDelay}\n ref={ref}\n {...getStyles('root')}\n {...others}\n >\n <ScrollAreaViewport\n {...viewportProps}\n {...getStyles('viewport')}\n ref={viewportRef}\n data-offset-scrollbars={offsetScrollbars === true ? 'xy' : offsetScrollbars || undefined}\n onScroll={\n typeof onScrollPositionChange === 'function'\n ? ({ currentTarget }) =>\n onScrollPositionChange({\n x: currentTarget.scrollLeft,\n y: currentTarget.scrollTop,\n })\n : undefined\n }\n >\n {children}\n </ScrollAreaViewport>\n <ScrollAreaScrollbar\n {...getStyles('scrollbar')}\n orientation=\"horizontal\"\n data-hidden={type === 'never' || undefined}\n forceMount\n onMouseEnter={() => setScrollbarHovered(true)}\n onMouseLeave={() => setScrollbarHovered(false)}\n >\n <ScrollAreaThumb {...getStyles('thumb')} />\n </ScrollAreaScrollbar>\n <ScrollAreaScrollbar\n {...getStyles('scrollbar')}\n orientation=\"vertical\"\n data-hidden={type === 'never' || undefined}\n forceMount\n onMouseEnter={() => setScrollbarHovered(true)}\n onMouseLeave={() => setScrollbarHovered(false)}\n >\n <ScrollAreaThumb {...getStyles('thumb')} />\n </ScrollAreaScrollbar>\n <ScrollAreaCorner\n {...getStyles('corner')}\n data-hovered={scrollbarHovered || undefined}\n data-hidden={type === 'never' || undefined}\n />\n </ScrollAreaRoot>\n );\n});\n\nScrollArea.displayName = '@mantine/core/ScrollArea';\n\nexport const ScrollAreaAutosize = factory<ScrollAreaFactory>((props, ref) => {\n const {\n children,\n classNames,\n styles,\n scrollbarSize,\n scrollHideDelay,\n type,\n dir,\n offsetScrollbars,\n viewportRef,\n onScrollPositionChange,\n unstyled,\n variant,\n viewportProps,\n style,\n vars,\n ...others\n } = useProps('ScrollAreaAutosize', defaultProps, props);\n\n return (\n <Box {...others} ref={ref} style={[{ display: 'flex' }, style]}>\n <Box style={{ display: 'flex', flexDirection: 'column', flex: 1 }}>\n <ScrollArea\n classNames={classNames}\n styles={styles}\n scrollHideDelay={scrollHideDelay}\n scrollbarSize={scrollbarSize}\n type={type}\n dir={dir}\n offsetScrollbars={offsetScrollbars}\n viewportRef={viewportRef}\n onScrollPositionChange={onScrollPositionChange}\n unstyled={unstyled}\n variant={variant}\n viewportProps={viewportProps}\n vars={vars}\n >\n {children}\n </ScrollArea>\n </Box>\n </Box>\n );\n});\n\nScrollArea.classes = classes;\nScrollAreaAutosize.displayName = '@mantine/core/ScrollAreaAutosize';\nScrollAreaAutosize.classes = classes;\nScrollArea.Autosize = ScrollAreaAutosize;\n"],"names":["createVarsResolver","rem","factory","useProps","useState","useStyles","classes","React","ScrollAreaRoot","ScrollAreaViewport","ScrollAreaScrollbar","ScrollAreaThumb","ScrollAreaCorner","Box"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Scrollbar.context.js","sources":["../../../../src/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.ts"],"sourcesContent":["import { createSafeContext } from '../../../core';\n\nexport interface ScrollbarContextValue {\n hasThumb: boolean;\n scrollbar: HTMLDivElement | null;\n onThumbChange(thumb: HTMLDivElement | null): void;\n onThumbPointerUp(): void;\n onThumbPointerDown(pointerPos: { x: number; y: number }): void;\n onThumbPositionChange(): void;\n}\n\nexport const [ScrollbarProvider, useScrollbarContext] = createSafeContext<ScrollbarContextValue>(\n 'ScrollAreaScrollbar was not found in tree'\n);\n"],"names":["createSafeContext"],"mappings":";;;;;;;AACY,MAAC,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,GAAGA,mCAAiB;AACzE,EAAE,2CAA2C;AAC7C;;;"}
1
+ {"version":3,"file":"Scrollbar.context.js","sources":["../../../../src/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.ts"],"sourcesContent":["import { createSafeContext } from '../../../core';\n\nexport interface ScrollbarContextValue {\n hasThumb: boolean;\n scrollbar: HTMLDivElement | null;\n onThumbChange: (thumb: HTMLDivElement | null) => void;\n onThumbPointerUp: () => void;\n onThumbPointerDown: (pointerPos: { x: number; y: number }) => void;\n onThumbPositionChange: () => void;\n}\n\nexport const [ScrollbarProvider, useScrollbarContext] = createSafeContext<ScrollbarContextValue>(\n 'ScrollAreaScrollbar was not found in tree'\n);\n"],"names":["createSafeContext"],"mappings":";;;;;;;AACY,MAAC,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,GAAGA,mCAAiB;AACzE,EAAE,2CAA2C;AAC7C;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Scrollbar.js","sources":["../../../../src/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.tsx"],"sourcesContent":["import React, { useEffect, forwardRef } from 'react';\nimport { useMergedRef, useCallbackRef, useDebounceCallback } from '@mantine/hooks';\nimport { useResizeObserver } from '../use-resize-observer';\nimport { useScrollAreaContext } from '../ScrollArea.context';\nimport { Sizes } from '../ScrollArea.types';\nimport { ScrollbarProvider, ScrollbarContextValue } from './Scrollbar.context';\nimport { composeEventHandlers } from '../utils';\n\nexport interface ScrollbarPrivateProps {\n sizes: Sizes;\n hasThumb: boolean;\n onThumbChange: ScrollbarContextValue['onThumbChange'];\n onThumbPointerUp: ScrollbarContextValue['onThumbPointerUp'];\n onThumbPointerDown: ScrollbarContextValue['onThumbPointerDown'];\n onThumbPositionChange: ScrollbarContextValue['onThumbPositionChange'];\n onWheelScroll(event: WheelEvent, maxScrollPos: number): void;\n onDragScroll(pointerPos: { x: number; y: number }): void;\n onResize(): void;\n}\n\ninterface ScrollbarProps\n extends ScrollbarPrivateProps,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onResize'> {}\n\nexport const Scrollbar = forwardRef<HTMLDivElement, ScrollbarProps>((props, forwardedRef) => {\n const {\n sizes,\n hasThumb,\n onThumbChange,\n onThumbPointerUp,\n onThumbPointerDown,\n onThumbPositionChange,\n onDragScroll,\n onWheelScroll,\n onResize,\n ...scrollbarProps\n } = props;\n const context = useScrollAreaContext();\n const [scrollbar, setScrollbar] = React.useState<HTMLDivElement | null>(null);\n const composeRefs = useMergedRef(forwardedRef, (node) => setScrollbar(node));\n const rectRef = React.useRef<ClientRect | null>(null);\n const prevWebkitUserSelectRef = React.useRef<string>('');\n const { viewport } = context;\n const maxScrollPos = sizes.content - sizes.viewport;\n const handleWheelScroll = useCallbackRef(onWheelScroll);\n const handleThumbPositionChange = useCallbackRef(onThumbPositionChange);\n const handleResize = useDebounceCallback(onResize, 10);\n\n const handleDragScroll = (event: React.PointerEvent<HTMLElement>) => {\n if (rectRef.current) {\n const x = event.clientX - rectRef.current.left;\n const y = event.clientY - rectRef.current.top;\n onDragScroll({ x, y });\n }\n };\n\n useEffect(() => {\n const handleWheel = (event: WheelEvent) => {\n const element = event.target as HTMLElement;\n const isScrollbarWheel = scrollbar?.contains(element);\n if (isScrollbarWheel) handleWheelScroll(event, maxScrollPos);\n };\n document.addEventListener('wheel', handleWheel, { passive: false });\n return () => document.removeEventListener('wheel', handleWheel, { passive: false } as any);\n }, [viewport, scrollbar, maxScrollPos, handleWheelScroll]);\n\n useEffect(handleThumbPositionChange, [sizes, handleThumbPositionChange]);\n\n useResizeObserver(scrollbar, handleResize);\n useResizeObserver(context.content, handleResize);\n\n return (\n <ScrollbarProvider\n value={{\n scrollbar,\n hasThumb,\n onThumbChange: useCallbackRef(onThumbChange),\n onThumbPointerUp: useCallbackRef(onThumbPointerUp),\n onThumbPositionChange: handleThumbPositionChange,\n onThumbPointerDown: useCallbackRef(onThumbPointerDown),\n }}\n >\n <div\n {...scrollbarProps}\n ref={composeRefs}\n style={{ position: 'absolute', ...scrollbarProps.style }}\n onPointerDown={composeEventHandlers(props.onPointerDown, (event) => {\n const mainPointer = 0;\n if (event.button === mainPointer) {\n const element = event.target as HTMLElement;\n element.setPointerCapture(event.pointerId);\n rectRef.current = scrollbar!.getBoundingClientRect();\n prevWebkitUserSelectRef.current = document.body.style.webkitUserSelect;\n document.body.style.webkitUserSelect = 'none';\n handleDragScroll(event);\n }\n })}\n onPointerMove={composeEventHandlers(props.onPointerMove, handleDragScroll)}\n onPointerUp={composeEventHandlers(props.onPointerUp, (event) => {\n const element = event.target as HTMLElement;\n if (element.hasPointerCapture(event.pointerId)) {\n element.releasePointerCapture(event.pointerId);\n }\n document.body.style.webkitUserSelect = prevWebkitUserSelectRef.current;\n rectRef.current = null;\n })}\n />\n </ScrollbarProvider>\n );\n});\n"],"names":["forwardRef","useScrollAreaContext","React","useMergedRef","useCallbackRef","useDebounceCallback","useEffect","useResizeObserver","ScrollbarProvider","composeEventHandlers"],"mappings":"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"}
1
+ {"version":3,"file":"Scrollbar.js","sources":["../../../../src/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.tsx"],"sourcesContent":["import React, { useEffect, forwardRef } from 'react';\nimport { useMergedRef, useCallbackRef, useDebounceCallback } from '@mantine/hooks';\nimport { useResizeObserver } from '../use-resize-observer';\nimport { useScrollAreaContext } from '../ScrollArea.context';\nimport { Sizes } from '../ScrollArea.types';\nimport { ScrollbarProvider, ScrollbarContextValue } from './Scrollbar.context';\nimport { composeEventHandlers } from '../utils';\n\nexport interface ScrollbarPrivateProps {\n sizes: Sizes;\n hasThumb: boolean;\n onThumbChange: ScrollbarContextValue['onThumbChange'];\n onThumbPointerUp: ScrollbarContextValue['onThumbPointerUp'];\n onThumbPointerDown: ScrollbarContextValue['onThumbPointerDown'];\n onThumbPositionChange: ScrollbarContextValue['onThumbPositionChange'];\n onWheelScroll: (event: WheelEvent, maxScrollPos: number) => void;\n onDragScroll: (pointerPos: { x: number; y: number }) => void;\n onResize: () => void;\n}\n\ninterface ScrollbarProps\n extends ScrollbarPrivateProps,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onResize'> {}\n\nexport const Scrollbar = forwardRef<HTMLDivElement, ScrollbarProps>((props, forwardedRef) => {\n const {\n sizes,\n hasThumb,\n onThumbChange,\n onThumbPointerUp,\n onThumbPointerDown,\n onThumbPositionChange,\n onDragScroll,\n onWheelScroll,\n onResize,\n ...scrollbarProps\n } = props;\n const context = useScrollAreaContext();\n const [scrollbar, setScrollbar] = React.useState<HTMLDivElement | null>(null);\n const composeRefs = useMergedRef(forwardedRef, (node) => setScrollbar(node));\n const rectRef = React.useRef<ClientRect | null>(null);\n const prevWebkitUserSelectRef = React.useRef<string>('');\n const { viewport } = context;\n const maxScrollPos = sizes.content - sizes.viewport;\n const handleWheelScroll = useCallbackRef(onWheelScroll);\n const handleThumbPositionChange = useCallbackRef(onThumbPositionChange);\n const handleResize = useDebounceCallback(onResize, 10);\n\n const handleDragScroll = (event: React.PointerEvent<HTMLElement>) => {\n if (rectRef.current) {\n const x = event.clientX - rectRef.current.left;\n const y = event.clientY - rectRef.current.top;\n onDragScroll({ x, y });\n }\n };\n\n useEffect(() => {\n const handleWheel = (event: WheelEvent) => {\n const element = event.target as HTMLElement;\n const isScrollbarWheel = scrollbar?.contains(element);\n if (isScrollbarWheel) handleWheelScroll(event, maxScrollPos);\n };\n document.addEventListener('wheel', handleWheel, { passive: false });\n return () => document.removeEventListener('wheel', handleWheel, { passive: false } as any);\n }, [viewport, scrollbar, maxScrollPos, handleWheelScroll]);\n\n useEffect(handleThumbPositionChange, [sizes, handleThumbPositionChange]);\n\n useResizeObserver(scrollbar, handleResize);\n useResizeObserver(context.content, handleResize);\n\n return (\n <ScrollbarProvider\n value={{\n scrollbar,\n hasThumb,\n onThumbChange: useCallbackRef(onThumbChange),\n onThumbPointerUp: useCallbackRef(onThumbPointerUp),\n onThumbPositionChange: handleThumbPositionChange,\n onThumbPointerDown: useCallbackRef(onThumbPointerDown),\n }}\n >\n <div\n {...scrollbarProps}\n ref={composeRefs}\n style={{ position: 'absolute', ...scrollbarProps.style }}\n onPointerDown={composeEventHandlers(props.onPointerDown, (event) => {\n const mainPointer = 0;\n if (event.button === mainPointer) {\n const element = event.target as HTMLElement;\n element.setPointerCapture(event.pointerId);\n rectRef.current = scrollbar!.getBoundingClientRect();\n prevWebkitUserSelectRef.current = document.body.style.webkitUserSelect;\n document.body.style.webkitUserSelect = 'none';\n handleDragScroll(event);\n }\n })}\n onPointerMove={composeEventHandlers(props.onPointerMove, handleDragScroll)}\n onPointerUp={composeEventHandlers(props.onPointerUp, (event) => {\n const element = event.target as HTMLElement;\n if (element.hasPointerCapture(event.pointerId)) {\n element.releasePointerCapture(event.pointerId);\n }\n document.body.style.webkitUserSelect = prevWebkitUserSelectRef.current;\n rectRef.current = null;\n })}\n />\n </ScrollbarProvider>\n );\n});\n"],"names":["forwardRef","useScrollAreaContext","React","useMergedRef","useCallbackRef","useDebounceCallback","useEffect","useResizeObserver","ScrollbarProvider","composeEventHandlers"],"mappings":"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"}