@mantine/core 3.5.4 → 3.6.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 (310) hide show
  1. package/README.md +0 -1
  2. package/cjs/components/Accordion/Accordion.js +4 -1
  3. package/cjs/components/Accordion/Accordion.js.map +1 -1
  4. package/cjs/components/Accordion/AccordionItem/AccordionItem.js +5 -1
  5. package/cjs/components/Accordion/AccordionItem/AccordionItem.js.map +1 -1
  6. package/cjs/components/Autocomplete/Autocomplete.js +1 -1
  7. package/cjs/components/Autocomplete/Autocomplete.js.map +1 -1
  8. package/cjs/components/Button/Button.styles.js +1 -0
  9. package/cjs/components/Button/Button.styles.js.map +1 -1
  10. package/cjs/components/Button/UnstyledButton/UnstyledButton.styles.js +2 -1
  11. package/cjs/components/Button/UnstyledButton/UnstyledButton.styles.js.map +1 -1
  12. package/cjs/components/Code/Code.js +3 -1
  13. package/cjs/components/Code/Code.js.map +1 -1
  14. package/cjs/components/ColorInput/ColorInput.js +0 -2
  15. package/cjs/components/ColorInput/ColorInput.js.map +1 -1
  16. package/cjs/components/ColorInput/ColorInput.styles.js +0 -4
  17. package/cjs/components/ColorInput/ColorInput.styles.js.map +1 -1
  18. package/cjs/components/Drawer/Drawer.js +7 -1
  19. package/cjs/components/Drawer/Drawer.js.map +1 -1
  20. package/cjs/components/Grid/Col/Col.js.map +1 -1
  21. package/cjs/components/Grid/Grid.js +7 -1
  22. package/cjs/components/Grid/Grid.js.map +1 -1
  23. package/cjs/components/Group/Group.js +1 -1
  24. package/cjs/components/Group/Group.js.map +1 -1
  25. package/cjs/components/Input/Input.js +3 -0
  26. package/cjs/components/Input/Input.js.map +1 -1
  27. package/cjs/components/Input/Input.styles.js +11 -2
  28. package/cjs/components/Input/Input.styles.js.map +1 -1
  29. package/cjs/components/Menu/Menu.js.map +1 -1
  30. package/cjs/components/Menu/Menu.styles.js +1 -0
  31. package/cjs/components/Menu/Menu.styles.js.map +1 -1
  32. package/cjs/components/MultiSelect/MultiSelect.js +26 -23
  33. package/cjs/components/MultiSelect/MultiSelect.js.map +1 -1
  34. package/cjs/components/Pagination/DefaultItem/DefaultItem.js +10 -1
  35. package/cjs/components/Pagination/DefaultItem/DefaultItem.js.map +1 -1
  36. package/cjs/components/Popper/Popper.js +30 -2
  37. package/cjs/components/Popper/Popper.js.map +1 -1
  38. package/cjs/components/Popper/Popper.styles.js +20 -12
  39. package/cjs/components/Popper/Popper.styles.js.map +1 -1
  40. package/cjs/components/Portal/Portal.js +3 -0
  41. package/cjs/components/Portal/Portal.js.map +1 -1
  42. package/cjs/components/Progress/Progress.js +3 -3
  43. package/cjs/components/Progress/Progress.js.map +1 -1
  44. package/cjs/components/Progress/Progress.styles.js +1 -1
  45. package/cjs/components/Progress/Progress.styles.js.map +1 -1
  46. package/cjs/components/RadioGroup/Radio/Radio.js +1 -1
  47. package/cjs/components/RadioGroup/Radio/Radio.js.map +1 -1
  48. package/cjs/components/ScrollArea/ScrollArea.js +15 -7
  49. package/cjs/components/ScrollArea/ScrollArea.js.map +1 -1
  50. package/cjs/components/ScrollArea/ScrollArea.styles.js +2 -3
  51. package/cjs/components/ScrollArea/ScrollArea.styles.js.map +1 -1
  52. package/cjs/components/SegmentedControl/SegmentedControl.js +17 -15
  53. package/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  54. package/cjs/components/SegmentedControl/SegmentedControl.styles.js +37 -36
  55. package/cjs/components/SegmentedControl/SegmentedControl.styles.js.map +1 -1
  56. package/cjs/components/Select/Select.js +9 -4
  57. package/cjs/components/Select/Select.js.map +1 -1
  58. package/cjs/components/Select/SelectDropdown/SelectDropdown.js +1 -0
  59. package/cjs/components/Select/SelectDropdown/SelectDropdown.js.map +1 -1
  60. package/cjs/components/Slider/Marks/Marks.js +3 -2
  61. package/cjs/components/Slider/Marks/Marks.js.map +1 -1
  62. package/cjs/components/Slider/Marks/Marks.styles.js +2 -2
  63. package/cjs/components/Slider/Marks/Marks.styles.js.map +1 -1
  64. package/cjs/components/Slider/RangeSlider/RangeSlider.js +14 -6
  65. package/cjs/components/Slider/RangeSlider/RangeSlider.js.map +1 -1
  66. package/cjs/components/Slider/Slider/Slider.js +11 -9
  67. package/cjs/components/Slider/Slider/Slider.js.map +1 -1
  68. package/cjs/components/Slider/Thumb/Thumb.js +3 -2
  69. package/cjs/components/Slider/Thumb/Thumb.js.map +1 -1
  70. package/cjs/components/Slider/Thumb/Thumb.styles.js +1 -1
  71. package/cjs/components/Slider/Thumb/Thumb.styles.js.map +1 -1
  72. package/cjs/components/Slider/Track/Track.js +7 -2
  73. package/cjs/components/Slider/Track/Track.js.map +1 -1
  74. package/cjs/components/Slider/Track/Track.styles.js +14 -3
  75. package/cjs/components/Slider/Track/Track.styles.js.map +1 -1
  76. package/cjs/components/Space/Space.js +1 -1
  77. package/cjs/components/Space/Space.js.map +1 -1
  78. package/cjs/components/Stepper/Step/Step.js +2 -0
  79. package/cjs/components/Stepper/Step/Step.js.map +1 -1
  80. package/cjs/components/Stepper/Stepper.js +3 -2
  81. package/cjs/components/Stepper/Stepper.js.map +1 -1
  82. package/cjs/components/Switch/Switch.js.map +1 -1
  83. package/cjs/components/Table/Table.js +7 -3
  84. package/cjs/components/Table/Table.js.map +1 -1
  85. package/cjs/components/Table/Table.styles.js +9 -3
  86. package/cjs/components/Table/Table.styles.js.map +1 -1
  87. package/cjs/components/Tabs/TabControl/TabControl.js +2 -0
  88. package/cjs/components/Tabs/TabControl/TabControl.js.map +1 -1
  89. package/cjs/components/Tabs/Tabs.js +8 -4
  90. package/cjs/components/Tabs/Tabs.js.map +1 -1
  91. package/cjs/components/Text/Text.styles.js +1 -1
  92. package/cjs/components/Text/Text.styles.js.map +1 -1
  93. package/cjs/components/Textarea/Textarea.js +16 -23
  94. package/cjs/components/Textarea/Textarea.js.map +1 -1
  95. package/cjs/components/Timeline/Timeline.js +12 -10
  96. package/cjs/components/Timeline/Timeline.js.map +1 -1
  97. package/cjs/components/Tooltip/Tooltip.js +24 -14
  98. package/cjs/components/Tooltip/Tooltip.js.map +1 -1
  99. package/cjs/components/TransferList/RenderList/RenderList.js +54 -37
  100. package/cjs/components/TransferList/RenderList/RenderList.js.map +1 -1
  101. package/cjs/components/TransferList/RenderList/RenderList.styles.js +9 -1
  102. package/cjs/components/TransferList/RenderList/RenderList.styles.js.map +1 -1
  103. package/cjs/components/TransferList/TransferList.js +23 -24
  104. package/cjs/components/TransferList/TransferList.js.map +1 -1
  105. package/cjs/components/Transition/GroupedTransition.js +2 -0
  106. package/cjs/components/Transition/GroupedTransition.js.map +1 -1
  107. package/cjs/components/Transition/Transition.js +2 -0
  108. package/cjs/components/Transition/Transition.js.map +1 -1
  109. package/cjs/components/Transition/use-transition.js +6 -3
  110. package/cjs/components/Transition/use-transition.js.map +1 -1
  111. package/cjs/utils/{group-sort-data/group-sort-data.js → group-options/group-options.js} +6 -6
  112. package/cjs/utils/group-options/group-options.js.map +1 -0
  113. package/esm/components/Accordion/Accordion.js +4 -1
  114. package/esm/components/Accordion/Accordion.js.map +1 -1
  115. package/esm/components/Accordion/AccordionItem/AccordionItem.js +5 -1
  116. package/esm/components/Accordion/AccordionItem/AccordionItem.js.map +1 -1
  117. package/esm/components/Autocomplete/Autocomplete.js +1 -1
  118. package/esm/components/Autocomplete/Autocomplete.js.map +1 -1
  119. package/esm/components/Button/Button.styles.js +1 -0
  120. package/esm/components/Button/Button.styles.js.map +1 -1
  121. package/esm/components/Button/UnstyledButton/UnstyledButton.styles.js +2 -1
  122. package/esm/components/Button/UnstyledButton/UnstyledButton.styles.js.map +1 -1
  123. package/esm/components/Code/Code.js +3 -1
  124. package/esm/components/Code/Code.js.map +1 -1
  125. package/esm/components/ColorInput/ColorInput.js +0 -2
  126. package/esm/components/ColorInput/ColorInput.js.map +1 -1
  127. package/esm/components/ColorInput/ColorInput.styles.js +0 -4
  128. package/esm/components/ColorInput/ColorInput.styles.js.map +1 -1
  129. package/esm/components/Drawer/Drawer.js +7 -1
  130. package/esm/components/Drawer/Drawer.js.map +1 -1
  131. package/esm/components/Grid/Col/Col.js.map +1 -1
  132. package/esm/components/Grid/Grid.js +7 -1
  133. package/esm/components/Grid/Grid.js.map +1 -1
  134. package/esm/components/Group/Group.js +1 -1
  135. package/esm/components/Group/Group.js.map +1 -1
  136. package/esm/components/Input/Input.js +3 -0
  137. package/esm/components/Input/Input.js.map +1 -1
  138. package/esm/components/Input/Input.styles.js +11 -2
  139. package/esm/components/Input/Input.styles.js.map +1 -1
  140. package/esm/components/Menu/Menu.js.map +1 -1
  141. package/esm/components/Menu/Menu.styles.js +1 -0
  142. package/esm/components/Menu/Menu.styles.js.map +1 -1
  143. package/esm/components/MultiSelect/MultiSelect.js +26 -23
  144. package/esm/components/MultiSelect/MultiSelect.js.map +1 -1
  145. package/esm/components/Pagination/DefaultItem/DefaultItem.js +10 -1
  146. package/esm/components/Pagination/DefaultItem/DefaultItem.js.map +1 -1
  147. package/esm/components/Popper/Popper.js +30 -2
  148. package/esm/components/Popper/Popper.js.map +1 -1
  149. package/esm/components/Popper/Popper.styles.js +20 -12
  150. package/esm/components/Popper/Popper.styles.js.map +1 -1
  151. package/esm/components/Portal/Portal.js +3 -0
  152. package/esm/components/Portal/Portal.js.map +1 -1
  153. package/esm/components/Progress/Progress.js +3 -3
  154. package/esm/components/Progress/Progress.js.map +1 -1
  155. package/esm/components/Progress/Progress.styles.js +1 -1
  156. package/esm/components/Progress/Progress.styles.js.map +1 -1
  157. package/esm/components/RadioGroup/Radio/Radio.js +1 -1
  158. package/esm/components/RadioGroup/Radio/Radio.js.map +1 -1
  159. package/esm/components/ScrollArea/ScrollArea.js +14 -6
  160. package/esm/components/ScrollArea/ScrollArea.js.map +1 -1
  161. package/esm/components/ScrollArea/ScrollArea.styles.js +2 -3
  162. package/esm/components/ScrollArea/ScrollArea.styles.js.map +1 -1
  163. package/esm/components/SegmentedControl/SegmentedControl.js +19 -17
  164. package/esm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  165. package/esm/components/SegmentedControl/SegmentedControl.styles.js +37 -36
  166. package/esm/components/SegmentedControl/SegmentedControl.styles.js.map +1 -1
  167. package/esm/components/Select/Select.js +9 -4
  168. package/esm/components/Select/Select.js.map +1 -1
  169. package/esm/components/Select/SelectDropdown/SelectDropdown.js +1 -0
  170. package/esm/components/Select/SelectDropdown/SelectDropdown.js.map +1 -1
  171. package/esm/components/Slider/Marks/Marks.js +3 -2
  172. package/esm/components/Slider/Marks/Marks.js.map +1 -1
  173. package/esm/components/Slider/Marks/Marks.styles.js +2 -2
  174. package/esm/components/Slider/Marks/Marks.styles.js.map +1 -1
  175. package/esm/components/Slider/RangeSlider/RangeSlider.js +11 -3
  176. package/esm/components/Slider/RangeSlider/RangeSlider.js.map +1 -1
  177. package/esm/components/Slider/Slider/Slider.js +8 -6
  178. package/esm/components/Slider/Slider/Slider.js.map +1 -1
  179. package/esm/components/Slider/Thumb/Thumb.js +3 -2
  180. package/esm/components/Slider/Thumb/Thumb.js.map +1 -1
  181. package/esm/components/Slider/Thumb/Thumb.styles.js +1 -1
  182. package/esm/components/Slider/Thumb/Thumb.styles.js.map +1 -1
  183. package/esm/components/Slider/Track/Track.js +7 -2
  184. package/esm/components/Slider/Track/Track.js.map +1 -1
  185. package/esm/components/Slider/Track/Track.styles.js +14 -3
  186. package/esm/components/Slider/Track/Track.styles.js.map +1 -1
  187. package/esm/components/Space/Space.js +1 -1
  188. package/esm/components/Space/Space.js.map +1 -1
  189. package/esm/components/Stepper/Step/Step.js +2 -0
  190. package/esm/components/Stepper/Step/Step.js.map +1 -1
  191. package/esm/components/Stepper/Stepper.js +3 -2
  192. package/esm/components/Stepper/Stepper.js.map +1 -1
  193. package/esm/components/Switch/Switch.js.map +1 -1
  194. package/esm/components/Table/Table.js +7 -3
  195. package/esm/components/Table/Table.js.map +1 -1
  196. package/esm/components/Table/Table.styles.js +9 -3
  197. package/esm/components/Table/Table.styles.js.map +1 -1
  198. package/esm/components/Tabs/TabControl/TabControl.js +2 -0
  199. package/esm/components/Tabs/TabControl/TabControl.js.map +1 -1
  200. package/esm/components/Tabs/Tabs.js +8 -4
  201. package/esm/components/Tabs/Tabs.js.map +1 -1
  202. package/esm/components/Text/Text.styles.js +1 -1
  203. package/esm/components/Text/Text.styles.js.map +1 -1
  204. package/esm/components/Textarea/Textarea.js +16 -23
  205. package/esm/components/Textarea/Textarea.js.map +1 -1
  206. package/esm/components/Timeline/Timeline.js +12 -10
  207. package/esm/components/Timeline/Timeline.js.map +1 -1
  208. package/esm/components/Tooltip/Tooltip.js +25 -15
  209. package/esm/components/Tooltip/Tooltip.js.map +1 -1
  210. package/esm/components/TransferList/RenderList/RenderList.js +54 -37
  211. package/esm/components/TransferList/RenderList/RenderList.js.map +1 -1
  212. package/esm/components/TransferList/RenderList/RenderList.styles.js +9 -1
  213. package/esm/components/TransferList/RenderList/RenderList.styles.js.map +1 -1
  214. package/esm/components/TransferList/TransferList.js +23 -24
  215. package/esm/components/TransferList/TransferList.js.map +1 -1
  216. package/esm/components/Transition/GroupedTransition.js +2 -0
  217. package/esm/components/Transition/GroupedTransition.js.map +1 -1
  218. package/esm/components/Transition/Transition.js +2 -0
  219. package/esm/components/Transition/Transition.js.map +1 -1
  220. package/esm/components/Transition/use-transition.js +6 -3
  221. package/esm/components/Transition/use-transition.js.map +1 -1
  222. package/esm/utils/{group-sort-data/group-sort-data.js → group-options/group-options.js} +6 -6
  223. package/esm/utils/group-options/group-options.js.map +1 -0
  224. package/lib/components/Accordion/Accordion.d.ts +2 -0
  225. package/lib/components/Accordion/Accordion.d.ts.map +1 -1
  226. package/lib/components/Accordion/AccordionItem/AccordionItem.d.ts +2 -1
  227. package/lib/components/Accordion/AccordionItem/AccordionItem.d.ts.map +1 -1
  228. package/lib/components/Button/Button.styles.d.ts +3 -3
  229. package/lib/components/Button/Button.styles.d.ts.map +1 -1
  230. package/lib/components/Button/UnstyledButton/UnstyledButton.styles.d.ts.map +1 -1
  231. package/lib/components/Code/Code.d.ts.map +1 -1
  232. package/lib/components/ColorInput/ColorInput.d.ts.map +1 -1
  233. package/lib/components/ColorInput/ColorInput.styles.d.ts +2 -2
  234. package/lib/components/ColorInput/ColorInput.styles.d.ts.map +1 -1
  235. package/lib/components/Drawer/Drawer.d.ts.map +1 -1
  236. package/lib/components/Grid/Col/Col.d.ts +1 -1
  237. package/lib/components/Grid/Col/Col.d.ts.map +1 -1
  238. package/lib/components/Grid/Grid.d.ts.map +1 -1
  239. package/lib/components/Input/Input.d.ts +2 -0
  240. package/lib/components/Input/Input.d.ts.map +1 -1
  241. package/lib/components/Input/Input.styles.d.ts +1 -0
  242. package/lib/components/Input/Input.styles.d.ts.map +1 -1
  243. package/lib/components/Menu/Menu.d.ts +1 -1
  244. package/lib/components/Menu/Menu.d.ts.map +1 -1
  245. package/lib/components/Menu/Menu.styles.d.ts +1 -1
  246. package/lib/components/Menu/Menu.styles.d.ts.map +1 -1
  247. package/lib/components/MultiSelect/MultiSelect.d.ts +2 -0
  248. package/lib/components/MultiSelect/MultiSelect.d.ts.map +1 -1
  249. package/lib/components/Pagination/DefaultItem/DefaultItem.d.ts.map +1 -1
  250. package/lib/components/Popper/Popper.d.ts +4 -2
  251. package/lib/components/Popper/Popper.d.ts.map +1 -1
  252. package/lib/components/Popper/Popper.styles.d.ts +2 -1
  253. package/lib/components/Popper/Popper.styles.d.ts.map +1 -1
  254. package/lib/components/Portal/Portal.d.ts.map +1 -1
  255. package/lib/components/RadioGroup/Radio/Radio.d.ts +1 -1
  256. package/lib/components/RadioGroup/Radio/Radio.d.ts.map +1 -1
  257. package/lib/components/ScrollArea/ScrollArea.d.ts +5 -0
  258. package/lib/components/ScrollArea/ScrollArea.d.ts.map +1 -1
  259. package/lib/components/ScrollArea/ScrollArea.styles.d.ts +0 -1
  260. package/lib/components/ScrollArea/ScrollArea.styles.d.ts.map +1 -1
  261. package/lib/components/SegmentedControl/SegmentedControl.d.ts +7 -10
  262. package/lib/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
  263. package/lib/components/SegmentedControl/SegmentedControl.styles.d.ts.map +1 -1
  264. package/lib/components/Select/Select.d.ts +2 -0
  265. package/lib/components/Select/Select.d.ts.map +1 -1
  266. package/lib/components/Select/SelectDropdown/SelectDropdown.d.ts.map +1 -1
  267. package/lib/components/Slider/Marks/Marks.d.ts.map +1 -1
  268. package/lib/components/Slider/RangeSlider/RangeSlider.d.ts.map +1 -1
  269. package/lib/components/Slider/Slider/Slider.d.ts.map +1 -1
  270. package/lib/components/Slider/Thumb/Thumb.d.ts.map +1 -1
  271. package/lib/components/Slider/Track/Track.d.ts.map +1 -1
  272. package/lib/components/Slider/Track/Track.styles.d.ts.map +1 -1
  273. package/lib/components/Stepper/Step/Step.d.ts +2 -0
  274. package/lib/components/Stepper/Step/Step.d.ts.map +1 -1
  275. package/lib/components/Stepper/Stepper.d.ts.map +1 -1
  276. package/lib/components/Switch/Switch.d.ts +3 -3
  277. package/lib/components/Switch/Switch.d.ts.map +1 -1
  278. package/lib/components/Table/Table.d.ts +5 -1
  279. package/lib/components/Table/Table.d.ts.map +1 -1
  280. package/lib/components/Table/Table.styles.d.ts +3 -0
  281. package/lib/components/Table/Table.styles.d.ts.map +1 -1
  282. package/lib/components/Tabs/TabControl/TabControl.d.ts +2 -1
  283. package/lib/components/Tabs/TabControl/TabControl.d.ts.map +1 -1
  284. package/lib/components/Tabs/Tabs.d.ts +1 -1
  285. package/lib/components/Tabs/Tabs.d.ts.map +1 -1
  286. package/lib/components/Textarea/Textarea.d.ts.map +1 -1
  287. package/lib/components/Timeline/Timeline.d.ts +2 -0
  288. package/lib/components/Timeline/Timeline.d.ts.map +1 -1
  289. package/lib/components/Tooltip/Tooltip.d.ts +1 -4
  290. package/lib/components/Tooltip/Tooltip.d.ts.map +1 -1
  291. package/lib/components/TransferList/RenderList/RenderList.d.ts +3 -3
  292. package/lib/components/TransferList/RenderList/RenderList.d.ts.map +1 -1
  293. package/lib/components/TransferList/RenderList/RenderList.styles.d.ts.map +1 -1
  294. package/lib/components/TransferList/TransferList.d.ts +2 -0
  295. package/lib/components/TransferList/TransferList.d.ts.map +1 -1
  296. package/lib/components/Transition/GroupedTransition.d.ts +4 -2
  297. package/lib/components/Transition/GroupedTransition.d.ts.map +1 -1
  298. package/lib/components/Transition/Transition.d.ts +3 -1
  299. package/lib/components/Transition/Transition.d.ts.map +1 -1
  300. package/lib/components/Transition/use-transition.d.ts +2 -1
  301. package/lib/components/Transition/use-transition.d.ts.map +1 -1
  302. package/lib/utils/group-options/group-options.d.ts +8 -0
  303. package/lib/utils/group-options/group-options.d.ts.map +1 -0
  304. package/lib/utils/index.d.ts +2 -0
  305. package/lib/utils/index.d.ts.map +1 -1
  306. package/package.json +3 -3
  307. package/cjs/utils/group-sort-data/group-sort-data.js.map +0 -1
  308. package/esm/utils/group-sort-data/group-sort-data.js.map +0 -1
  309. package/lib/utils/group-sort-data/group-sort-data.d.ts +0 -9
  310. package/lib/utils/group-sort-data/group-sort-data.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Text.styles.js","sources":["../../../src/components/Text/Text.styles.ts"],"sourcesContent":["import {\n createStyles,\n MantineTheme,\n MantineSize,\n getSharedColorScheme,\n MantineColor,\n CSSObject,\n} from '@mantine/styles';\n\ninterface TextStyles {\n color: MantineColor;\n variant: 'text' | 'link' | 'gradient';\n size: MantineSize;\n lineClamp: number;\n inline: boolean;\n inherit: boolean;\n gradientFrom: string;\n gradientTo: string;\n gradientDeg: number;\n transform: 'capitalize' | 'uppercase' | 'lowercase';\n align: 'left' | 'center' | 'right' | 'justify';\n weight: React.CSSProperties['fontWeight'];\n}\n\ninterface GetTextColor {\n theme: MantineTheme;\n color: MantineColor;\n variant: TextStyles['variant'];\n}\n\nfunction getTextColor({ theme, color, variant }: GetTextColor) {\n if (color === 'dimmed') {\n return theme.colorScheme === 'dark' ? theme.colors.dark[2] : theme.colors.gray[6];\n }\n\n return color in theme.colors\n ? theme.colors[color][theme.colorScheme === 'dark' ? 5 : 7]\n : variant === 'link'\n ? theme.colors[theme.primaryColor][theme.colorScheme === 'dark' ? 5 : 7]\n : theme.colorScheme === 'dark'\n ? color || theme.colors.dark[0]\n : color || theme.black;\n}\n\nfunction getLineClamp(lineClamp: number): CSSObject {\n if (typeof lineClamp === 'number') {\n return {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n WebkitLineClamp: lineClamp,\n WebkitBoxOrient: 'vertical',\n };\n }\n\n return null;\n}\n\nexport default createStyles(\n (\n theme,\n {\n color,\n variant,\n size,\n lineClamp,\n inline,\n inherit,\n gradientDeg,\n gradientTo,\n gradientFrom,\n weight,\n transform,\n align,\n }: TextStyles\n ) => {\n const colors = getSharedColorScheme({\n theme,\n variant: 'gradient',\n gradient: { from: gradientFrom, to: gradientTo, deg: gradientDeg },\n });\n\n return {\n root: {\n ...theme.fn.fontStyles(),\n ...theme.fn.focusStyles(),\n ...getLineClamp(lineClamp),\n color: getTextColor({ color, theme, variant }),\n fontFamily: inherit ? 'inherit' : theme.fontFamily,\n fontSize: inherit ? 'inherit' : theme.fontSizes[size],\n lineHeight: inherit ? 'inherit' : inline ? 1 : theme.lineHeight,\n textDecoration: 'none',\n WebkitTapHighlightColor: 'transparent',\n fontWeight: inherit ? 'inherit' : weight,\n textTransform: transform,\n textAlign: align,\n\n '&:hover': {\n textDecoration: variant === 'link' ? 'underline' : 'none',\n },\n },\n\n gradient: {\n backgroundImage: colors.background,\n WebkitBackgroundClip: 'text',\n WebkitTextFillColor: 'transparent',\n },\n };\n }\n);\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Text.styles.js","sources":["../../../src/components/Text/Text.styles.ts"],"sourcesContent":["import {\n createStyles,\n MantineTheme,\n MantineSize,\n getSharedColorScheme,\n MantineColor,\n CSSObject,\n} from '@mantine/styles';\n\ninterface TextStyles {\n color: MantineColor;\n variant: 'text' | 'link' | 'gradient';\n size: MantineSize;\n lineClamp: number;\n inline: boolean;\n inherit: boolean;\n gradientFrom: string;\n gradientTo: string;\n gradientDeg: number;\n transform: 'capitalize' | 'uppercase' | 'lowercase';\n align: 'left' | 'center' | 'right' | 'justify';\n weight: React.CSSProperties['fontWeight'];\n}\n\ninterface GetTextColor {\n theme: MantineTheme;\n color: MantineColor;\n variant: TextStyles['variant'];\n}\n\nfunction getTextColor({ theme, color, variant }: GetTextColor) {\n if (color === 'dimmed') {\n return theme.colorScheme === 'dark' ? theme.colors.dark[2] : theme.colors.gray[6];\n }\n\n return color in theme.colors\n ? theme.colors[color][theme.colorScheme === 'dark' ? 5 : 7]\n : variant === 'link'\n ? theme.colors[theme.primaryColor][theme.colorScheme === 'dark' ? 4 : 7]\n : theme.colorScheme === 'dark'\n ? color || theme.colors.dark[0]\n : color || theme.black;\n}\n\nfunction getLineClamp(lineClamp: number): CSSObject {\n if (typeof lineClamp === 'number') {\n return {\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n display: '-webkit-box',\n WebkitLineClamp: lineClamp,\n WebkitBoxOrient: 'vertical',\n };\n }\n\n return null;\n}\n\nexport default createStyles(\n (\n theme,\n {\n color,\n variant,\n size,\n lineClamp,\n inline,\n inherit,\n gradientDeg,\n gradientTo,\n gradientFrom,\n weight,\n transform,\n align,\n }: TextStyles\n ) => {\n const colors = getSharedColorScheme({\n theme,\n variant: 'gradient',\n gradient: { from: gradientFrom, to: gradientTo, deg: gradientDeg },\n });\n\n return {\n root: {\n ...theme.fn.fontStyles(),\n ...theme.fn.focusStyles(),\n ...getLineClamp(lineClamp),\n color: getTextColor({ color, theme, variant }),\n fontFamily: inherit ? 'inherit' : theme.fontFamily,\n fontSize: inherit ? 'inherit' : theme.fontSizes[size],\n lineHeight: inherit ? 'inherit' : inline ? 1 : theme.lineHeight,\n textDecoration: 'none',\n WebkitTapHighlightColor: 'transparent',\n fontWeight: inherit ? 'inherit' : weight,\n textTransform: transform,\n textAlign: align,\n\n '&:hover': {\n textDecoration: variant === 'link' ? 'underline' : 'none',\n },\n },\n\n gradient: {\n backgroundImage: colors.background,\n WebkitBackgroundClip: 'text',\n WebkitTextFillColor: 'transparent',\n },\n };\n }\n);\n"],"names":[],"mappings":"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"}
@@ -76,7 +76,17 @@ const Textarea = forwardRef((_a, ref) => {
76
76
  const uuid = useUuid(id);
77
77
  const { classes, cx } = useStyles();
78
78
  const { margins, rest } = extractMargins(others);
79
- const _classNames = __spreadProps(__spreadValues({}, classNames), { input: cx(classes.input, classNames == null ? void 0 : classNames.input) });
79
+ const sharedProps = __spreadValues({
80
+ required,
81
+ ref,
82
+ invalid: !!error,
83
+ id: uuid,
84
+ classNames: __spreadProps(__spreadValues({}, classNames), { input: cx(classes.input, classNames == null ? void 0 : classNames.input) }),
85
+ styles,
86
+ __staticSelector,
87
+ size,
88
+ multiline: true
89
+ }, rest);
80
90
  return /* @__PURE__ */ React.createElement(InputWrapper, __spreadValues(__spreadValues({
81
91
  label,
82
92
  error,
@@ -90,31 +100,14 @@ const Textarea = forwardRef((_a, ref) => {
90
100
  size,
91
101
  __staticSelector,
92
102
  sx
93
- }, margins), wrapperProps), autosize ? /* @__PURE__ */ React.createElement(Input, __spreadValues({
94
- required,
103
+ }, margins), wrapperProps), autosize ? /* @__PURE__ */ React.createElement(Input, __spreadProps(__spreadValues({}, sharedProps), {
95
104
  component: TextareaAutosize,
96
- invalid: !!error,
97
105
  maxRows,
98
- minRows,
99
- id: uuid,
100
- ref,
101
- classNames: _classNames,
102
- styles,
103
- size,
104
- multiline: true
105
- }, rest)) : /* @__PURE__ */ React.createElement(Input, __spreadValues({
106
+ minRows
107
+ })) : /* @__PURE__ */ React.createElement(Input, __spreadProps(__spreadValues({}, sharedProps), {
106
108
  component: "textarea",
107
- required,
108
- id: uuid,
109
- invalid: !!error,
110
- rows: minRows,
111
- ref,
112
- classNames: _classNames,
113
- styles,
114
- size,
115
- __staticSelector,
116
- multiline: true
117
- }, rest)));
109
+ rows: minRows
110
+ })));
118
111
  });
119
112
  Textarea.displayName = "@mantine/core/Textarea";
120
113
 
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","sources":["../../../src/components/Textarea/Textarea.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport TextareaAutosize from 'react-textarea-autosize';\nimport { useUuid } from '@mantine/hooks';\nimport { DefaultProps, MantineSize, extractMargins } from '@mantine/styles';\nimport { InputWrapperBaseProps, InputWrapper } from '../InputWrapper/InputWrapper';\nimport { TextInputStylesNames } from '../TextInput/TextInput';\nimport { Input, InputBaseProps } from '../Input/Input';\nimport useStyles from './Textarea.styles';\n\nexport interface TextareaProps\n extends DefaultProps<TextInputStylesNames>,\n InputWrapperBaseProps,\n InputBaseProps,\n React.ComponentPropsWithoutRef<'textarea'> {\n /** Id is used to bind input and label, if not passed unique id will be generated for each input */\n id?: string;\n\n /** If true textarea will grow with content until maxRows are reached */\n autosize?: boolean;\n\n /** Defines maxRows in autosize variant, not applicable to regular variant */\n maxRows?: number;\n\n /** Defined minRows in autosize variant and rows in regular variant */\n minRows?: number;\n\n /** Props passed to root element (InputWrapper component) */\n wrapperProps?: { [key: string]: any };\n\n /** Input size */\n size?: MantineSize;\n\n /** Static selectors base */\n __staticSelector?: string;\n}\n\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n autosize = false,\n maxRows,\n minRows,\n label,\n error,\n description,\n id,\n className,\n required,\n style,\n wrapperProps,\n classNames,\n styles,\n size = 'sm',\n __staticSelector = 'Textarea',\n sx,\n ...others\n }: TextareaProps,\n ref\n ) => {\n const uuid = useUuid(id);\n const { classes, cx } = useStyles();\n const { margins, rest } = extractMargins(others);\n const _classNames = { ...classNames, input: cx(classes.input, classNames?.input) };\n\n return (\n <InputWrapper\n label={label}\n error={error}\n id={uuid}\n description={description}\n required={required}\n style={style}\n className={className}\n classNames={classNames}\n styles={styles}\n size={size}\n __staticSelector={__staticSelector}\n sx={sx}\n {...margins}\n {...wrapperProps}\n >\n {autosize ? (\n <Input<typeof TextareaAutosize>\n required={required}\n component={TextareaAutosize}\n invalid={!!error}\n maxRows={maxRows}\n minRows={minRows}\n id={uuid}\n ref={ref}\n classNames={_classNames}\n styles={styles}\n size={size}\n multiline\n {...rest}\n />\n ) : (\n <Input<'textarea'>\n component=\"textarea\"\n required={required}\n id={uuid}\n invalid={!!error}\n rows={minRows}\n ref={ref}\n classNames={_classNames}\n styles={styles}\n size={size}\n __staticSelector={__staticSelector}\n multiline\n {...rest}\n />\n )}\n </InputWrapper>\n );\n }\n);\n\nTextarea.displayName = '@mantine/core/Textarea';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Textarea.js","sources":["../../../src/components/Textarea/Textarea.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport TextareaAutosize from 'react-textarea-autosize';\nimport { useUuid } from '@mantine/hooks';\nimport { DefaultProps, MantineSize, extractMargins } from '@mantine/styles';\nimport { InputWrapperBaseProps, InputWrapper } from '../InputWrapper/InputWrapper';\nimport { TextInputStylesNames } from '../TextInput/TextInput';\nimport { Input, InputBaseProps, InputProps } from '../Input/Input';\nimport useStyles from './Textarea.styles';\n\nexport interface TextareaProps\n extends DefaultProps<TextInputStylesNames>,\n InputWrapperBaseProps,\n InputBaseProps,\n React.ComponentPropsWithoutRef<'textarea'> {\n /** Id is used to bind input and label, if not passed unique id will be generated for each input */\n id?: string;\n\n /** If true textarea will grow with content until maxRows are reached */\n autosize?: boolean;\n\n /** Defines maxRows in autosize variant, not applicable to regular variant */\n maxRows?: number;\n\n /** Defined minRows in autosize variant and rows in regular variant */\n minRows?: number;\n\n /** Props passed to root element (InputWrapper component) */\n wrapperProps?: { [key: string]: any };\n\n /** Input size */\n size?: MantineSize;\n\n /** Static selectors base */\n __staticSelector?: string;\n}\n\nexport const Textarea = forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n autosize = false,\n maxRows,\n minRows,\n label,\n error,\n description,\n id,\n className,\n required,\n style,\n wrapperProps,\n classNames,\n styles,\n size = 'sm',\n __staticSelector = 'Textarea',\n sx,\n ...others\n }: TextareaProps,\n ref\n ) => {\n const uuid = useUuid(id);\n const { classes, cx } = useStyles();\n const { margins, rest } = extractMargins(others);\n const sharedProps: InputProps<'textarea'> = {\n required,\n ref,\n invalid: !!error,\n id: uuid,\n classNames: { ...classNames, input: cx(classes.input, classNames?.input) },\n styles,\n __staticSelector,\n size,\n multiline: true,\n ...rest,\n };\n\n return (\n <InputWrapper\n label={label}\n error={error}\n id={uuid}\n description={description}\n required={required}\n style={style}\n className={className}\n classNames={classNames}\n styles={styles}\n size={size}\n __staticSelector={__staticSelector}\n sx={sx}\n {...margins}\n {...wrapperProps}\n >\n {autosize ? (\n <Input<typeof TextareaAutosize>\n {...sharedProps}\n component={TextareaAutosize}\n maxRows={maxRows}\n minRows={minRows}\n />\n ) : (\n <Input<'textarea'> {...sharedProps} component=\"textarea\" rows={minRows} />\n )}\n </InputWrapper>\n );\n }\n);\n\nTextarea.displayName = '@mantine/core/Textarea';\n"],"names":[],"mappings":"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"}
@@ -34,18 +34,18 @@ var __objRest = (source, exclude) => {
34
34
  const Timeline = forwardRef((_a, ref) => {
35
35
  var _b = _a, {
36
36
  children,
37
- style,
38
- active,
37
+ active = -1,
39
38
  color,
40
39
  radius = "xl",
41
40
  bulletSize = 20,
42
41
  align = "left",
43
42
  lineWidth = 4,
44
43
  classNames,
45
- styles
44
+ styles,
45
+ sx,
46
+ reverseActive = false
46
47
  } = _b, others = __objRest(_b, [
47
48
  "children",
48
- "style",
49
49
  "active",
50
50
  "color",
51
51
  "radius",
@@ -53,10 +53,12 @@ const Timeline = forwardRef((_a, ref) => {
53
53
  "align",
54
54
  "lineWidth",
55
55
  "classNames",
56
- "styles"
56
+ "styles",
57
+ "sx",
58
+ "reverseActive"
57
59
  ]);
58
- const hasActive = typeof active === "number";
59
- const items = filterChildrenByType(children, TimelineItem).map((item, index) => React.cloneElement(item, {
60
+ const _children = filterChildrenByType(children, TimelineItem);
61
+ const items = _children.map((item, index) => React.cloneElement(item, {
60
62
  classNames,
61
63
  styles,
62
64
  align,
@@ -64,13 +66,13 @@ const Timeline = forwardRef((_a, ref) => {
64
66
  radius: item.props.radius || radius,
65
67
  color: item.props.color || color,
66
68
  bulletSize: item.props.bulletSize || bulletSize,
67
- active: item.props.active || hasActive && active >= index,
68
- lineActive: item.props.lineActive || hasActive && active - 1 >= index
69
+ active: item.props.active || (reverseActive ? active >= _children.length - index - 1 : active >= index),
70
+ lineActive: item.props.lineActive || (reverseActive ? active >= _children.length - index - 1 : active - 1 >= index)
69
71
  }));
70
72
  const offset = align === "left" ? { paddingLeft: bulletSize / 2 + lineWidth / 2 } : { paddingRight: bulletSize / 2 + lineWidth / 2 };
71
73
  return /* @__PURE__ */ React.createElement(Box, __spreadValues({
72
74
  ref,
73
- style: __spreadValues(__spreadValues({}, offset), style)
75
+ sx: [offset, sx]
74
76
  }, others), items);
75
77
  });
76
78
  Timeline.Item = TimelineItem;
@@ -1 +1 @@
1
- {"version":3,"file":"Timeline.js","sources":["../../../src/components/Timeline/Timeline.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n ForwardRefWithStaticComponents,\n MantineNumberSize,\n} from '@mantine/styles';\nimport { filterChildrenByType } from '../../utils';\nimport { Box } from '../Box';\nimport { TimelineItem, TimelineItemStylesNames } from './TimelineItem/TimelineItem';\n\nexport interface TimelineProps\n extends DefaultProps<TimelineItemStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n /** <Timeline.Item /> components only */\n children: React.ReactNode;\n\n /** Index of active element */\n active?: number;\n\n /** Active color from theme */\n color?: MantineColor;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Bullet size in px */\n bulletSize?: number;\n\n /** Timeline alignment */\n align?: 'right' | 'left';\n\n /** Line width in px */\n lineWidth?: number;\n}\n\ntype TimelineComponent = ForwardRefWithStaticComponents<\n TimelineProps,\n { Item: typeof TimelineItem }\n>;\n\nexport const Timeline: TimelineComponent = forwardRef<HTMLDivElement, TimelineProps>(\n (\n {\n children,\n style,\n active,\n color,\n radius = 'xl',\n bulletSize = 20,\n align = 'left',\n lineWidth = 4,\n classNames,\n styles,\n ...others\n }: TimelineProps,\n ref\n ) => {\n const hasActive = typeof active === 'number';\n\n const items = filterChildrenByType(children, TimelineItem).map(\n (item: React.ReactElement, index) =>\n React.cloneElement(item, {\n classNames,\n styles,\n align,\n lineWidth,\n radius: item.props.radius || radius,\n color: item.props.color || color,\n bulletSize: item.props.bulletSize || bulletSize,\n active: item.props.active || (hasActive && active >= index),\n lineActive: item.props.lineActive || (hasActive && active - 1 >= index),\n })\n );\n\n const offset: React.CSSProperties =\n align === 'left'\n ? { paddingLeft: bulletSize / 2 + lineWidth / 2 }\n : { paddingRight: bulletSize / 2 + lineWidth / 2 };\n\n return (\n <Box ref={ref} style={{ ...offset, ...style }} {...others}>\n {items}\n </Box>\n );\n }\n) as any;\n\nTimeline.Item = TimelineItem;\nTimeline.displayName = '@mantine/core/Timeline';\n"],"names":[],"mappings":";;;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,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;AAKU,MAAC,QAAQ,GAAG,UAAU,CAAC,CAAC,EAAE,EAAE,GAAG,KAAK;AAChD,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;AACf,IAAI,QAAQ;AACZ,IAAI,KAAK;AACT,IAAI,MAAM;AACV,IAAI,KAAK;AACT,IAAI,MAAM,GAAG,IAAI;AACjB,IAAI,UAAU,GAAG,EAAE;AACnB,IAAI,KAAK,GAAG,MAAM;AAClB,IAAI,SAAS,GAAG,CAAC;AACjB,IAAI,UAAU;AACd,IAAI,MAAM;AACV,GAAG,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE;AACjC,IAAI,UAAU;AACd,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,YAAY;AAChB,IAAI,OAAO;AACX,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC;AAC/C,EAAE,MAAM,KAAK,GAAG,oBAAoB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE;AAC3G,IAAI,UAAU;AACd,IAAI,MAAM;AACV,IAAI,KAAK;AACT,IAAI,SAAS;AACb,IAAI,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM;AACvC,IAAI,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK;AACpC,IAAI,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,UAAU;AACnD,IAAI,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,SAAS,IAAI,MAAM,IAAI,KAAK;AAC7D,IAAI,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,SAAS,IAAI,MAAM,GAAG,CAAC,IAAI,KAAK;AACzE,GAAG,CAAC,CAAC,CAAC;AACN,EAAE,MAAM,MAAM,GAAG,KAAK,KAAK,MAAM,GAAG,EAAE,WAAW,EAAE,UAAU,GAAG,CAAC,GAAG,SAAS,GAAG,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,UAAU,GAAG,CAAC,GAAG,SAAS,GAAG,CAAC,EAAE,CAAC;AACvI,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,cAAc,CAAC;AACjE,IAAI,GAAG;AACP,IAAI,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC;AAC5D,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;AACrB,CAAC,EAAE;AACH,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC;AAC7B,QAAQ,CAAC,WAAW,GAAG,wBAAwB;;;;"}
1
+ {"version":3,"file":"Timeline.js","sources":["../../../src/components/Timeline/Timeline.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n ForwardRefWithStaticComponents,\n MantineNumberSize,\n CSSObject,\n} from '@mantine/styles';\nimport { filterChildrenByType } from '../../utils';\nimport { Box } from '../Box';\nimport { TimelineItem, TimelineItemStylesNames } from './TimelineItem/TimelineItem';\n\nexport interface TimelineProps\n extends DefaultProps<TimelineItemStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n /** <Timeline.Item /> components only */\n children: React.ReactNode;\n\n /** Index of active element */\n active?: number;\n\n /** Active color from theme */\n color?: MantineColor;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Bullet size in px */\n bulletSize?: number;\n\n /** Timeline alignment */\n align?: 'right' | 'left';\n\n /** Line width in px */\n lineWidth?: number;\n\n /** Reverse active direction without reversing items */\n reverseActive?: boolean;\n}\n\ntype TimelineComponent = ForwardRefWithStaticComponents<\n TimelineProps,\n { Item: typeof TimelineItem }\n>;\n\nexport const Timeline: TimelineComponent = forwardRef<HTMLDivElement, TimelineProps>(\n (\n {\n children,\n active = -1,\n color,\n radius = 'xl',\n bulletSize = 20,\n align = 'left',\n lineWidth = 4,\n classNames,\n styles,\n sx,\n reverseActive = false,\n ...others\n }: TimelineProps,\n ref\n ) => {\n const _children = filterChildrenByType(children, TimelineItem);\n const items = _children.map((item: React.ReactElement, index) =>\n React.cloneElement(item, {\n classNames,\n styles,\n align,\n lineWidth,\n radius: item.props.radius || radius,\n color: item.props.color || color,\n bulletSize: item.props.bulletSize || bulletSize,\n active:\n item.props.active ||\n (reverseActive ? active >= _children.length - index - 1 : active >= index),\n lineActive:\n item.props.lineActive ||\n (reverseActive ? active >= _children.length - index - 1 : active - 1 >= index),\n })\n );\n\n const offset: CSSObject =\n align === 'left'\n ? { paddingLeft: bulletSize / 2 + lineWidth / 2 }\n : { paddingRight: bulletSize / 2 + lineWidth / 2 };\n\n return (\n <Box ref={ref} sx={[offset, sx]} {...others}>\n {items}\n </Box>\n );\n }\n) as any;\n\nTimeline.Item = TimelineItem;\nTimeline.displayName = '@mantine/core/Timeline';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import React, { useRef, useState } from 'react';
1
+ import React, { forwardRef, useRef, useState } from 'react';
2
2
  import { getDefaultZIndex } from '@mantine/styles';
3
+ import { mergeRefs } from '@mantine/hooks';
3
4
  import useStyles from './Tooltip.styles.js';
4
5
  import { Box } from '../Box/Box.js';
5
6
  import { Popper } from '../Popper/Popper.js';
@@ -32,7 +33,7 @@ var __objRest = (source, exclude) => {
32
33
  }
33
34
  return target;
34
35
  };
35
- function Tooltip(_a) {
36
+ const Tooltip = forwardRef((_a, ref) => {
36
37
  var _b = _a, {
37
38
  className,
38
39
  label,
@@ -59,7 +60,9 @@ function Tooltip(_a) {
59
60
  tooltipRef,
60
61
  tooltipId,
61
62
  classNames,
62
- styles
63
+ styles,
64
+ onMouseLeave,
65
+ onMouseEnter
63
66
  } = _b, others = __objRest(_b, [
64
67
  "className",
65
68
  "label",
@@ -86,7 +89,9 @@ function Tooltip(_a) {
86
89
  "tooltipRef",
87
90
  "tooltipId",
88
91
  "classNames",
89
- "styles"
92
+ "styles",
93
+ "onMouseLeave",
94
+ "onMouseEnter"
90
95
  ]);
91
96
  const { classes, cx } = useStyles({ color, radius }, { classNames, styles, name: "Tooltip" });
92
97
  const timeoutRef = useRef();
@@ -107,7 +112,18 @@ function Tooltip(_a) {
107
112
  }
108
113
  };
109
114
  return /* @__PURE__ */ React.createElement(Box, __spreadValues({
110
- className: cx(classes.root, className)
115
+ className: cx(classes.root, className),
116
+ onMouseEnter: (event) => {
117
+ handleOpen();
118
+ typeof onMouseEnter === "function" && onMouseEnter(event);
119
+ },
120
+ onMouseLeave: (event) => {
121
+ handleClose();
122
+ typeof onMouseLeave === "function" && onMouseLeave(event);
123
+ },
124
+ onFocusCapture: handleOpen,
125
+ onBlurCapture: handleClose,
126
+ ref: mergeRefs(setReferenceElement, ref)
111
127
  }, others), /* @__PURE__ */ React.createElement(Popper, {
112
128
  referenceElement,
113
129
  transitionDuration,
@@ -123,22 +139,16 @@ function Tooltip(_a) {
123
139
  arrowClassName: classes.arrow,
124
140
  forceUpdateDependencies: [color, radius, ...positionDependencies],
125
141
  withinPortal
126
- }, /* @__PURE__ */ React.createElement("div", {
142
+ }, /* @__PURE__ */ React.createElement(Box, {
127
143
  className: classes.body,
128
144
  ref: tooltipRef,
129
- style: {
145
+ sx: {
130
146
  pointerEvents: allowPointerEvents ? "all" : "none",
131
147
  whiteSpace: wrapLines ? "normal" : "nowrap",
132
148
  width
133
149
  }
134
- }, label)), /* @__PURE__ */ React.createElement("div", {
135
- onMouseEnter: handleOpen,
136
- onMouseLeave: handleClose,
137
- onFocusCapture: handleOpen,
138
- onBlurCapture: handleClose,
139
- ref: setReferenceElement
140
- }, children));
141
- }
150
+ }, label)), children);
151
+ });
142
152
  Tooltip.displayName = "@mantine/core/Tooltip";
143
153
 
144
154
  export { Tooltip };
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import React, { useState, useRef } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n ClassNames,\n getDefaultZIndex,\n MantineNumberSize,\n} from '@mantine/styles';\nimport { Box } from '../Box';\nimport { Popper, SharedPopperProps } from '../Popper';\nimport useStyles from './Tooltip.styles';\n\nexport type TooltipStylesNames = ClassNames<typeof useStyles>;\n\nexport interface TooltipProps\n extends DefaultProps<TooltipStylesNames>,\n SharedPopperProps,\n React.ComponentPropsWithoutRef<'div'> {\n /** Tooltip content */\n label: React.ReactNode;\n\n /** Any react node that should trigger tooltip */\n children: React.ReactNode;\n\n /** Tooltip opened state for controlled variant */\n opened?: boolean;\n\n /** Close delay in ms, 0 to disable delay */\n delay?: number;\n\n /** Any color from theme.colors, defaults to gray in light color scheme and dark in dark colors scheme */\n color?: MantineColor;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** True to disable tooltip */\n disabled?: boolean;\n\n /** Arrow size in px */\n arrowSize?: number;\n\n /** Tooltip width in px or auto */\n width?: number | 'auto';\n\n /** Allow multiline tooltip content */\n wrapLines?: boolean;\n\n /** Allow pointer events on tooltip, warning: this may break some animations */\n allowPointerEvents?: boolean;\n\n /** Get tooltip ref */\n tooltipRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Tooltip id to bind aria-describedby */\n tooltipId?: string;\n\n /** useEffect dependencies to force update tooltip position */\n positionDependencies?: any[];\n\n /** Whether to render the target element in a Portal */\n withinPortal?: boolean;\n}\n\nexport function Tooltip({\n className,\n label,\n children,\n opened,\n delay = 0,\n gutter = 5,\n color = 'gray',\n radius = 'sm',\n disabled = false,\n withArrow = false,\n arrowSize = 2,\n position = 'top',\n placement = 'center',\n transition = 'pop-top-left',\n transitionDuration = 100,\n zIndex = getDefaultZIndex('popover'),\n transitionTimingFunction,\n width = 'auto',\n wrapLines = false,\n allowPointerEvents = false,\n positionDependencies = [],\n withinPortal = true,\n tooltipRef,\n tooltipId,\n classNames,\n styles,\n ...others\n}: TooltipProps) {\n const { classes, cx } = useStyles({ color, radius }, { classNames, styles, name: 'Tooltip' });\n const timeoutRef = useRef<number>();\n const [_opened, setOpened] = useState(false);\n const visible = (typeof opened === 'boolean' ? opened : _opened) && !disabled;\n const [referenceElement, setReferenceElement] = useState(null);\n\n const handleOpen = () => {\n window.clearTimeout(timeoutRef.current);\n setOpened(true);\n };\n\n const handleClose = () => {\n if (delay !== 0) {\n timeoutRef.current = window.setTimeout(() => {\n setOpened(false);\n }, delay);\n } else {\n setOpened(false);\n }\n };\n\n return (\n <Box className={cx(classes.root, className)} {...others}>\n <Popper\n referenceElement={referenceElement}\n transitionDuration={transitionDuration}\n transition={transition}\n mounted={visible}\n position={position}\n placement={placement}\n gutter={gutter}\n withArrow={withArrow}\n arrowSize={arrowSize}\n arrowDistance={7}\n zIndex={zIndex}\n arrowClassName={classes.arrow}\n forceUpdateDependencies={[color, radius, ...positionDependencies]}\n withinPortal={withinPortal}\n >\n <div\n className={classes.body}\n ref={tooltipRef}\n style={{\n pointerEvents: allowPointerEvents ? 'all' : 'none',\n whiteSpace: wrapLines ? 'normal' : 'nowrap',\n width,\n }}\n >\n {label}\n </div>\n </Popper>\n\n <div\n onMouseEnter={handleOpen}\n onMouseLeave={handleClose}\n onFocusCapture={handleOpen}\n onBlurCapture={handleClose}\n ref={setReferenceElement}\n >\n {children}\n </div>\n </Box>\n );\n}\n\nTooltip.displayName = '@mantine/core/Tooltip';\n"],"names":[],"mappings":";;;;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,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;AAQK,SAAS,OAAO,CAAC,EAAE,EAAE;AAC5B,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;AACf,IAAI,SAAS;AACb,IAAI,KAAK;AACT,IAAI,QAAQ;AACZ,IAAI,MAAM;AACV,IAAI,KAAK,GAAG,CAAC;AACb,IAAI,MAAM,GAAG,CAAC;AACd,IAAI,KAAK,GAAG,MAAM;AAClB,IAAI,MAAM,GAAG,IAAI;AACjB,IAAI,QAAQ,GAAG,KAAK;AACpB,IAAI,SAAS,GAAG,KAAK;AACrB,IAAI,SAAS,GAAG,CAAC;AACjB,IAAI,QAAQ,GAAG,KAAK;AACpB,IAAI,SAAS,GAAG,QAAQ;AACxB,IAAI,UAAU,GAAG,cAAc;AAC/B,IAAI,kBAAkB,GAAG,GAAG;AAC5B,IAAI,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC;AACxC,IAAI,wBAAwB;AAC5B,IAAI,KAAK,GAAG,MAAM;AAClB,IAAI,SAAS,GAAG,KAAK;AACrB,IAAI,kBAAkB,GAAG,KAAK;AAC9B,IAAI,oBAAoB,GAAG,EAAE;AAC7B,IAAI,YAAY,GAAG,IAAI;AACvB,IAAI,UAAU;AACd,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,MAAM;AACV,GAAG,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE;AACjC,IAAI,WAAW;AACf,IAAI,OAAO;AACX,IAAI,UAAU;AACd,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,oBAAoB;AACxB,IAAI,QAAQ;AACZ,IAAI,0BAA0B;AAC9B,IAAI,OAAO;AACX,IAAI,WAAW;AACf,IAAI,oBAAoB;AACxB,IAAI,sBAAsB;AAC1B,IAAI,cAAc;AAClB,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AAChG,EAAE,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;AAC9B,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC/C,EAAE,MAAM,OAAO,GAAG,CAAC,OAAO,MAAM,KAAK,SAAS,GAAG,MAAM,GAAG,OAAO,KAAK,CAAC,QAAQ,CAAC;AAChF,EAAE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;AACjE,EAAE,MAAM,UAAU,GAAG,MAAM;AAC3B,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5C,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;AACpB,GAAG,CAAC;AACJ,EAAE,MAAM,WAAW,GAAG,MAAM;AAC5B,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE;AACrB,MAAM,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACnD,QAAQ,SAAS,CAAC,KAAK,CAAC,CAAC;AACzB,OAAO,EAAE,KAAK,CAAC,CAAC;AAChB,KAAK,MAAM;AACX,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;AACvB,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,cAAc,CAAC;AACjE,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;AAC1C,GAAG,EAAE,MAAM,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AAC1D,IAAI,gBAAgB;AACpB,IAAI,kBAAkB;AACtB,IAAI,UAAU;AACd,IAAI,OAAO,EAAE,OAAO;AACpB,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,IAAI,MAAM;AACV,IAAI,SAAS;AACb,IAAI,SAAS;AACb,IAAI,aAAa,EAAE,CAAC;AACpB,IAAI,MAAM;AACV,IAAI,cAAc,EAAE,OAAO,CAAC,KAAK;AACjC,IAAI,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAAC;AACrE,IAAI,YAAY;AAChB,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,OAAO,CAAC,IAAI;AAC3B,IAAI,GAAG,EAAE,UAAU;AACnB,IAAI,KAAK,EAAE;AACX,MAAM,aAAa,EAAE,kBAAkB,GAAG,KAAK,GAAG,MAAM;AACxD,MAAM,UAAU,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ;AACjD,MAAM,KAAK;AACX,KAAK;AACL,GAAG,EAAE,KAAK,CAAC,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACzD,IAAI,YAAY,EAAE,UAAU;AAC5B,IAAI,YAAY,EAAE,WAAW;AAC7B,IAAI,cAAc,EAAE,UAAU;AAC9B,IAAI,aAAa,EAAE,WAAW;AAC9B,IAAI,GAAG,EAAE,mBAAmB;AAC5B,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;AAChB,CAAC;AACD,OAAO,CAAC,WAAW,GAAG,uBAAuB;;;;"}
1
+ {"version":3,"file":"Tooltip.js","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"sourcesContent":["import React, { useState, useRef, forwardRef } from 'react';\nimport {\n DefaultProps,\n MantineColor,\n ClassNames,\n getDefaultZIndex,\n MantineNumberSize,\n} from '@mantine/styles';\nimport { mergeRefs } from '@mantine/hooks';\nimport { Box } from '../Box';\nimport { Popper, SharedPopperProps } from '../Popper';\nimport useStyles from './Tooltip.styles';\n\nexport type TooltipStylesNames = ClassNames<typeof useStyles>;\n\nexport interface TooltipProps\n extends DefaultProps<TooltipStylesNames>,\n SharedPopperProps,\n React.ComponentPropsWithoutRef<'div'> {\n /** Tooltip content */\n label: React.ReactNode;\n\n /** Any react node that should trigger tooltip */\n children: React.ReactNode;\n\n /** Tooltip opened state for controlled variant */\n opened?: boolean;\n\n /** Close delay in ms, 0 to disable delay */\n delay?: number;\n\n /** Any color from theme.colors, defaults to gray in light color scheme and dark in dark colors scheme */\n color?: MantineColor;\n\n /** Radius from theme.radius, or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** True to disable tooltip */\n disabled?: boolean;\n\n /** Arrow size in px */\n arrowSize?: number;\n\n /** Tooltip width in px or auto */\n width?: number | 'auto';\n\n /** Allow multiline tooltip content */\n wrapLines?: boolean;\n\n /** Allow pointer events on tooltip, warning: this may break some animations */\n allowPointerEvents?: boolean;\n\n /** Get tooltip ref */\n tooltipRef?: React.ForwardedRef<HTMLDivElement>;\n\n /** Tooltip id to bind aria-describedby */\n tooltipId?: string;\n\n /** useEffect dependencies to force update tooltip position */\n positionDependencies?: any[];\n\n /** Whether to render the target element in a Portal */\n withinPortal?: boolean;\n}\n\nexport const Tooltip = forwardRef<HTMLDivElement, TooltipProps>(\n (\n {\n className,\n label,\n children,\n opened,\n delay = 0,\n gutter = 5,\n color = 'gray',\n radius = 'sm',\n disabled = false,\n withArrow = false,\n arrowSize = 2,\n position = 'top',\n placement = 'center',\n transition = 'pop-top-left',\n transitionDuration = 100,\n zIndex = getDefaultZIndex('popover'),\n transitionTimingFunction,\n width = 'auto',\n wrapLines = false,\n allowPointerEvents = false,\n positionDependencies = [],\n withinPortal = true,\n tooltipRef,\n tooltipId,\n classNames,\n styles,\n onMouseLeave,\n onMouseEnter,\n ...others\n }: TooltipProps,\n ref\n ) => {\n const { classes, cx } = useStyles({ color, radius }, { classNames, styles, name: 'Tooltip' });\n const timeoutRef = useRef<number>();\n const [_opened, setOpened] = useState(false);\n const visible = (typeof opened === 'boolean' ? opened : _opened) && !disabled;\n const [referenceElement, setReferenceElement] = useState(null);\n\n const handleOpen = () => {\n window.clearTimeout(timeoutRef.current);\n setOpened(true);\n };\n\n const handleClose = () => {\n if (delay !== 0) {\n timeoutRef.current = window.setTimeout(() => {\n setOpened(false);\n }, delay);\n } else {\n setOpened(false);\n }\n };\n\n return (\n <Box<'div'>\n className={cx(classes.root, className)}\n onMouseEnter={(event) => {\n handleOpen();\n typeof onMouseEnter === 'function' && onMouseEnter(event);\n }}\n onMouseLeave={(event) => {\n handleClose();\n typeof onMouseLeave === 'function' && onMouseLeave(event);\n }}\n onFocusCapture={handleOpen}\n onBlurCapture={handleClose}\n ref={mergeRefs(setReferenceElement, ref)}\n {...others}\n >\n <Popper\n referenceElement={referenceElement}\n transitionDuration={transitionDuration}\n transition={transition}\n mounted={visible}\n position={position}\n placement={placement}\n gutter={gutter}\n withArrow={withArrow}\n arrowSize={arrowSize}\n arrowDistance={7}\n zIndex={zIndex}\n arrowClassName={classes.arrow}\n forceUpdateDependencies={[color, radius, ...positionDependencies]}\n withinPortal={withinPortal}\n >\n <Box\n className={classes.body}\n ref={tooltipRef}\n sx={{\n pointerEvents: allowPointerEvents ? 'all' : 'none',\n whiteSpace: wrapLines ? 'normal' : 'nowrap',\n width,\n }}\n >\n {label}\n </Box>\n </Popper>\n\n {children}\n </Box>\n );\n }\n);\n\nTooltip.displayName = '@mantine/core/Tooltip';\n"],"names":[],"mappings":";;;;;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,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;AASU,MAAC,OAAO,GAAG,UAAU,CAAC,CAAC,EAAE,EAAE,GAAG,KAAK;AAC/C,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;AACf,IAAI,SAAS;AACb,IAAI,KAAK;AACT,IAAI,QAAQ;AACZ,IAAI,MAAM;AACV,IAAI,KAAK,GAAG,CAAC;AACb,IAAI,MAAM,GAAG,CAAC;AACd,IAAI,KAAK,GAAG,MAAM;AAClB,IAAI,MAAM,GAAG,IAAI;AACjB,IAAI,QAAQ,GAAG,KAAK;AACpB,IAAI,SAAS,GAAG,KAAK;AACrB,IAAI,SAAS,GAAG,CAAC;AACjB,IAAI,QAAQ,GAAG,KAAK;AACpB,IAAI,SAAS,GAAG,QAAQ;AACxB,IAAI,UAAU,GAAG,cAAc;AAC/B,IAAI,kBAAkB,GAAG,GAAG;AAC5B,IAAI,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC;AACxC,IAAI,wBAAwB;AAC5B,IAAI,KAAK,GAAG,MAAM;AAClB,IAAI,SAAS,GAAG,KAAK;AACrB,IAAI,kBAAkB,GAAG,KAAK;AAC9B,IAAI,oBAAoB,GAAG,EAAE;AAC7B,IAAI,YAAY,GAAG,IAAI;AACvB,IAAI,UAAU;AACd,IAAI,SAAS;AACb,IAAI,UAAU;AACd,IAAI,MAAM;AACV,IAAI,YAAY;AAChB,IAAI,YAAY;AAChB,GAAG,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE;AACjC,IAAI,WAAW;AACf,IAAI,OAAO;AACX,IAAI,UAAU;AACd,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,oBAAoB;AACxB,IAAI,QAAQ;AACZ,IAAI,0BAA0B;AAC9B,IAAI,OAAO;AACX,IAAI,WAAW;AACf,IAAI,oBAAoB;AACxB,IAAI,sBAAsB;AAC1B,IAAI,cAAc;AAClB,IAAI,YAAY;AAChB,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,IAAI,cAAc;AAClB,IAAI,cAAc;AAClB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AAChG,EAAE,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;AAC9B,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC/C,EAAE,MAAM,OAAO,GAAG,CAAC,OAAO,MAAM,KAAK,SAAS,GAAG,MAAM,GAAG,OAAO,KAAK,CAAC,QAAQ,CAAC;AAChF,EAAE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;AACjE,EAAE,MAAM,UAAU,GAAG,MAAM;AAC3B,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5C,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;AACpB,GAAG,CAAC;AACJ,EAAE,MAAM,WAAW,GAAG,MAAM;AAC5B,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE;AACrB,MAAM,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACnD,QAAQ,SAAS,CAAC,KAAK,CAAC,CAAC;AACzB,OAAO,EAAE,KAAK,CAAC,CAAC;AAChB,KAAK,MAAM;AACX,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;AACvB,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,cAAc,CAAC;AACjE,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;AAC1C,IAAI,YAAY,EAAE,CAAC,KAAK,KAAK;AAC7B,MAAM,UAAU,EAAE,CAAC;AACnB,MAAM,OAAO,YAAY,KAAK,UAAU,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;AAChE,KAAK;AACL,IAAI,YAAY,EAAE,CAAC,KAAK,KAAK;AAC7B,MAAM,WAAW,EAAE,CAAC;AACpB,MAAM,OAAO,YAAY,KAAK,UAAU,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;AAChE,KAAK;AACL,IAAI,cAAc,EAAE,UAAU;AAC9B,IAAI,aAAa,EAAE,WAAW;AAC9B,IAAI,GAAG,EAAE,SAAS,CAAC,mBAAmB,EAAE,GAAG,CAAC;AAC5C,GAAG,EAAE,MAAM,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE;AAC1D,IAAI,gBAAgB;AACpB,IAAI,kBAAkB;AACtB,IAAI,UAAU;AACd,IAAI,OAAO,EAAE,OAAO;AACpB,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,IAAI,MAAM;AACV,IAAI,SAAS;AACb,IAAI,SAAS;AACb,IAAI,aAAa,EAAE,CAAC;AACpB,IAAI,MAAM;AACV,IAAI,cAAc,EAAE,OAAO,CAAC,KAAK;AACjC,IAAI,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAAC;AACrE,IAAI,YAAY;AAChB,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE;AAC9C,IAAI,SAAS,EAAE,OAAO,CAAC,IAAI;AAC3B,IAAI,GAAG,EAAE,UAAU;AACnB,IAAI,EAAE,EAAE;AACR,MAAM,aAAa,EAAE,kBAAkB,GAAG,KAAK,GAAG,MAAM;AACxD,MAAM,UAAU,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ;AACjD,MAAM,KAAK;AACX,KAAK;AACL,GAAG,EAAE,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxB,CAAC,EAAE;AACH,OAAO,CAAC,WAAW,GAAG,uBAAuB;;;;"}
@@ -3,7 +3,7 @@ import { useScrollIntoView } from '@mantine/hooks';
3
3
  import { SelectScrollArea } from '../../Select/SelectScrollArea/SelectScrollArea.js';
4
4
  import { Divider } from '../../Divider/Divider.js';
5
5
  import useStyles from './RenderList.styles.js';
6
- import { groupSortData } from '../../../utils/group-sort-data/group-sort-data.js';
6
+ import { groupOptions } from '../../../utils/group-options/group-options.js';
7
7
  import { UnstyledButton } from '../../Button/UnstyledButton/UnstyledButton.js';
8
8
  import { Text } from '../../Text/Text.js';
9
9
  import { TextInput } from '../../TextInput/TextInput.js';
@@ -13,6 +13,18 @@ import { NextIcon } from '../../Pagination/icons/NextIcon.js';
13
13
  import { FirstIcon } from '../../Pagination/icons/FirstIcon.js';
14
14
  import { LastIcon } from '../../Pagination/icons/LastIcon.js';
15
15
 
16
+ const icons = {
17
+ Prev: PrevIcon,
18
+ Next: NextIcon,
19
+ First: FirstIcon,
20
+ Last: LastIcon
21
+ };
22
+ const rtlIons = {
23
+ Next: PrevIcon,
24
+ Prev: NextIcon,
25
+ Last: FirstIcon,
26
+ First: LastIcon
27
+ };
16
28
  function RenderList({
17
29
  className,
18
30
  data,
@@ -30,61 +42,66 @@ function RenderList({
30
42
  onMove,
31
43
  height,
32
44
  classNames,
33
- styles
45
+ styles,
46
+ limit
34
47
  }) {
35
- const { classes, cx } = useStyles({ reversed, native: listComponent !== SelectScrollArea }, { name: "TransferList", classNames, styles });
48
+ const { classes, cx, theme } = useStyles({ reversed, native: listComponent !== SelectScrollArea }, { name: "TransferList", classNames, styles });
36
49
  const unGroupedItems = [];
37
50
  const groupedItems = [];
38
51
  const [query, setQuery] = useState("");
39
52
  const [hovered, setHovered] = useState(-1);
40
- const filteredData = data.filter((item) => filter(query, item));
53
+ const filteredData = data.filter((item) => filter(query, item)).slice(0, limit);
41
54
  const ListComponent = listComponent || "div";
55
+ const Icons = theme.dir === "rtl" ? rtlIons : icons;
42
56
  const itemsRefs = useRef({});
43
- const sortedData = groupSortData({ data: filteredData });
57
+ const sortedData = groupOptions({ data: filteredData });
44
58
  const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({
45
59
  duration: 0,
46
60
  offset: 5,
47
61
  cancelable: false,
48
62
  isList: true
49
63
  });
50
- const constructItemComponent = (item, index) => /* @__PURE__ */ React.createElement(UnstyledButton, {
51
- tabIndex: -1,
52
- onClick: () => onSelect(item.value),
53
- key: item.value,
54
- onMouseEnter: () => setHovered(index),
55
- className: cx(classes.transferListItem, {
56
- [classes.transferListItemHovered]: index === hovered
57
- }),
58
- ref: (node) => {
59
- if (itemsRefs && itemsRefs.current) {
60
- itemsRefs.current[item.value] = node;
61
- }
62
- }
63
- }, /* @__PURE__ */ React.createElement(ItemComponent, {
64
- data: item,
65
- selected: selection.includes(item.value)
66
- }));
67
- const constructSeparator = (label) => /* @__PURE__ */ React.createElement("div", {
68
- className: classes.separator,
69
- key: label
70
- }, /* @__PURE__ */ React.createElement(Divider, {
71
- classNames: { label: classes.separatorLabel },
72
- label
73
- }));
74
64
  let groupName = null;
75
65
  sortedData.forEach((item, index) => {
76
- if (!item.group)
77
- unGroupedItems.push(constructItemComponent(item, index));
78
- else {
66
+ const itemComponent = /* @__PURE__ */ React.createElement(UnstyledButton, {
67
+ tabIndex: -1,
68
+ onClick: () => onSelect(item.value),
69
+ key: item.value,
70
+ onMouseEnter: () => setHovered(index),
71
+ className: cx(classes.transferListItem, {
72
+ [classes.transferListItemHovered]: index === hovered
73
+ }),
74
+ ref: (node) => {
75
+ if (itemsRefs && itemsRefs.current) {
76
+ itemsRefs.current[item.value] = node;
77
+ }
78
+ }
79
+ }, /* @__PURE__ */ React.createElement(ItemComponent, {
80
+ data: item,
81
+ selected: selection.includes(item.value)
82
+ }));
83
+ if (!item.group) {
84
+ unGroupedItems.push(itemComponent);
85
+ } else {
79
86
  if (groupName !== item.group) {
80
87
  groupName = item.group;
81
- groupedItems.push(constructSeparator(groupName));
88
+ groupedItems.push(/* @__PURE__ */ React.createElement("div", {
89
+ className: classes.separator,
90
+ key: groupName
91
+ }, /* @__PURE__ */ React.createElement(Divider, {
92
+ classNames: { label: classes.separatorLabel },
93
+ label: groupName
94
+ })));
82
95
  }
83
- groupedItems.push(constructItemComponent(item, index));
96
+ groupedItems.push(itemComponent);
84
97
  }
85
98
  });
86
99
  if (groupedItems.length > 0 && unGroupedItems.length > 0) {
87
- unGroupedItems.unshift(constructSeparator());
100
+ unGroupedItems.unshift(/* @__PURE__ */ React.createElement("div", {
101
+ className: classes.separator
102
+ }, /* @__PURE__ */ React.createElement(Divider, {
103
+ classNames: { label: classes.separatorLabel }
104
+ })));
88
105
  }
89
106
  const handleSearchKeydown = (event) => {
90
107
  switch (event.code) {
@@ -151,14 +168,14 @@ function RenderList({
151
168
  className: classes.transferListControl,
152
169
  disabled: selection.length === 0,
153
170
  onClick: onMove
154
- }, reversed ? /* @__PURE__ */ React.createElement(PrevIcon, null) : /* @__PURE__ */ React.createElement(NextIcon, null)), showTransferAll && /* @__PURE__ */ React.createElement(ActionIcon, {
171
+ }, reversed ? /* @__PURE__ */ React.createElement(Icons.Prev, null) : /* @__PURE__ */ React.createElement(Icons.Next, null)), showTransferAll && /* @__PURE__ */ React.createElement(ActionIcon, {
155
172
  variant: "default",
156
173
  size: 36,
157
174
  radius: 0,
158
175
  className: classes.transferListControl,
159
176
  disabled: data.length === 0,
160
177
  onClick: onMoveAll
161
- }, reversed ? /* @__PURE__ */ React.createElement(FirstIcon, null) : /* @__PURE__ */ React.createElement(LastIcon, null))), /* @__PURE__ */ React.createElement(ListComponent, {
178
+ }, reversed ? /* @__PURE__ */ React.createElement(Icons.First, null) : /* @__PURE__ */ React.createElement(Icons.Last, null))), /* @__PURE__ */ React.createElement(ListComponent, {
162
179
  ref: scrollableRef,
163
180
  onMouseLeave: () => setHovered(-1),
164
181
  className: classes.transferListItems,
@@ -1 +1 @@
1
- {"version":3,"file":"RenderList.js","sources":["../../../../src/components/TransferList/RenderList/RenderList.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { DefaultProps, ClassNames } from '@mantine/styles';\nimport { useScrollIntoView } from '@mantine/hooks';\nimport { SelectScrollArea } from '../../Select/SelectScrollArea/SelectScrollArea';\nimport { UnstyledButton } from '../../Button';\nimport { ActionIcon } from '../../ActionIcon';\nimport { TextInput } from '../../TextInput';\nimport { Text } from '../../Text';\nimport { Divider } from '../../Divider/Divider';\nimport { LastIcon, NextIcon, FirstIcon, PrevIcon } from '../../Pagination/icons';\nimport { TransferListItem, TransferListItemComponent } from '../types';\nimport useStyles from './RenderList.styles';\nimport { groupSortData } from '../../../utils/group-sort-data/group-sort-data';\n\nexport type RenderListStylesNames = ClassNames<typeof useStyles>;\n\ninterface RenderListProps extends DefaultProps<RenderListStylesNames> {\n data: TransferListItem[];\n onSelect(value: string): void;\n selection: string[];\n itemComponent: TransferListItemComponent;\n searchPlaceholder: string;\n filter(query: string, item: TransferListItem): boolean;\n nothingFound?: React.ReactNode;\n title?: React.ReactNode;\n reversed?: boolean;\n showTransferAll?: boolean;\n onMoveAll(): void;\n onMove(): void;\n height: number;\n listComponent?: React.FC<any>;\n}\n\nexport function RenderList({\n className,\n data,\n onSelect,\n selection,\n itemComponent: ItemComponent,\n listComponent,\n searchPlaceholder,\n filter,\n nothingFound,\n title,\n showTransferAll,\n reversed,\n onMoveAll,\n onMove,\n height,\n classNames,\n styles,\n}: RenderListProps) {\n const { classes, cx } = useStyles(\n { reversed, native: listComponent !== SelectScrollArea },\n { name: 'TransferList', classNames, styles }\n );\n const unGroupedItems: React.ReactElement<any>[] = [];\n const groupedItems: React.ReactElement<any>[] = [];\n const [query, setQuery] = useState('');\n const [hovered, setHovered] = useState(-1);\n const filteredData = data.filter((item) => filter(query, item));\n const ListComponent = listComponent || 'div';\n\n const itemsRefs = useRef<Record<string, HTMLButtonElement>>({});\n\n const sortedData: TransferListItem[] = groupSortData({ data: filteredData });\n\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n const constructItemComponent = (item: TransferListItem, index: number) => (\n <UnstyledButton\n tabIndex={-1}\n onClick={() => onSelect(item.value)}\n key={item.value}\n onMouseEnter={() => setHovered(index)}\n className={cx(classes.transferListItem, {\n [classes.transferListItemHovered]: index === hovered,\n })}\n ref={(node: HTMLButtonElement) => {\n if (itemsRefs && itemsRefs.current) {\n // eslint-disable-next-line no-param-reassign\n itemsRefs.current[item.value] = node;\n }\n }}\n >\n <ItemComponent data={item} selected={selection.includes(item.value)} />\n </UnstyledButton>\n );\n\n const constructSeparator = (label?: string) => (\n <div className={classes.separator} key={label}>\n <Divider classNames={{ label: classes.separatorLabel }} label={label} />\n </div>\n );\n\n let groupName = null;\n sortedData.forEach((item, index) => {\n if (!item.group) unGroupedItems.push(constructItemComponent(item, index));\n else {\n if (groupName !== item.group) {\n groupName = item.group;\n groupedItems.push(constructSeparator(groupName));\n }\n groupedItems.push(constructItemComponent(item, index));\n }\n });\n\n if (groupedItems.length > 0 && unGroupedItems.length > 0) {\n unGroupedItems.unshift(constructSeparator());\n }\n\n const handleSearchKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.code) {\n case 'Enter': {\n event.preventDefault();\n if (filteredData[hovered]) {\n onSelect(filteredData[hovered].value);\n }\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n setHovered((current) => {\n const nextIndex = current < filteredData.length - 1 ? current + 1 : current;\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: 'end',\n });\n\n return nextIndex;\n });\n break;\n }\n\n case 'ArrowUp': {\n event.preventDefault();\n setHovered((current) => {\n const nextIndex = current > 0 ? current - 1 : current;\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: 'start',\n });\n\n return nextIndex;\n });\n }\n }\n };\n\n return (\n <div className={cx(classes.transferList, className)}>\n {title && (\n <Text weight={500} className={classes.transferListTitle}>\n {title}\n </Text>\n )}\n\n <div className={classes.transferListBody}>\n <div className={classes.transferListHeader}>\n <TextInput\n value={query}\n onChange={(event) => {\n setQuery(event.currentTarget.value);\n setHovered(0);\n }}\n onFocus={() => setHovered(0)}\n onBlur={() => setHovered(-1)}\n placeholder={searchPlaceholder}\n radius={0}\n onKeyDown={handleSearchKeydown}\n sx={{ flex: 1 }}\n classNames={{ input: classes.transferListSearch }}\n />\n\n <ActionIcon\n variant=\"default\"\n size={36}\n radius={0}\n className={classes.transferListControl}\n disabled={selection.length === 0}\n onClick={onMove}\n >\n {reversed ? <PrevIcon /> : <NextIcon />}\n </ActionIcon>\n\n {showTransferAll && (\n <ActionIcon\n variant=\"default\"\n size={36}\n radius={0}\n className={classes.transferListControl}\n disabled={data.length === 0}\n onClick={onMoveAll}\n >\n {reversed ? <FirstIcon /> : <LastIcon />}\n </ActionIcon>\n )}\n </div>\n\n <ListComponent\n ref={scrollableRef}\n onMouseLeave={() => setHovered(-1)}\n className={classes.transferListItems}\n style={{ height, position: 'relative', overflowX: 'hidden' }}\n >\n {groupedItems.length > 0 || unGroupedItems.length > 0 ? (\n <>\n {groupedItems}\n {unGroupedItems}\n </>\n ) : (\n <Text color=\"dimmed\" size=\"sm\" align=\"center\" mt=\"sm\">\n {nothingFound}\n </Text>\n )}\n </ListComponent>\n </div>\n </div>\n );\n}\n\nRenderList.displayName = '@mantine/core/RenderList';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAWO,SAAS,UAAU,CAAC;AAC3B,EAAE,SAAS;AACX,EAAE,IAAI;AACN,EAAE,QAAQ;AACV,EAAE,SAAS;AACX,EAAE,aAAa,EAAE,aAAa;AAC9B,EAAE,aAAa;AACf,EAAE,iBAAiB;AACnB,EAAE,MAAM;AACR,EAAE,YAAY;AACd,EAAE,KAAK;AACP,EAAE,eAAe;AACjB,EAAE,QAAQ;AACV,EAAE,SAAS;AACX,EAAE,MAAM;AACR,EAAE,MAAM;AACR,EAAE,UAAU;AACZ,EAAE,MAAM;AACR,CAAC,EAAE;AACH,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,KAAK,gBAAgB,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AAC5I,EAAE,MAAM,cAAc,GAAG,EAAE,CAAC;AAC5B,EAAE,MAAM,YAAY,GAAG,EAAE,CAAC;AAC1B,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;AACzC,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7C,EAAE,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAClE,EAAE,MAAM,aAAa,GAAG,aAAa,IAAI,KAAK,CAAC;AAC/C,EAAE,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;AAC/B,EAAE,MAAM,UAAU,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;AAC3D,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,iBAAiB,CAAC;AACzE,IAAI,QAAQ,EAAE,CAAC;AACf,IAAI,MAAM,EAAE,CAAC;AACb,IAAI,UAAU,EAAE,KAAK;AACrB,IAAI,MAAM,EAAE,IAAI;AAChB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,sBAAsB,GAAG,CAAC,IAAI,EAAE,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE;AACtG,IAAI,QAAQ,EAAE,CAAC,CAAC;AAChB,IAAI,OAAO,EAAE,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AACvC,IAAI,GAAG,EAAE,IAAI,CAAC,KAAK;AACnB,IAAI,YAAY,EAAE,MAAM,UAAU,CAAC,KAAK,CAAC;AACzC,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE;AAC5C,MAAM,CAAC,OAAO,CAAC,uBAAuB,GAAG,KAAK,KAAK,OAAO;AAC1D,KAAK,CAAC;AACN,IAAI,GAAG,EAAE,CAAC,IAAI,KAAK;AACnB,MAAM,IAAI,SAAS,IAAI,SAAS,CAAC,OAAO,EAAE;AAC1C,QAAQ,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;AAC7C,OAAO;AACP,KAAK;AACL,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE;AACxD,IAAI,IAAI,EAAE,IAAI;AACd,IAAI,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5C,GAAG,CAAC,CAAC,CAAC;AACN,EAAE,MAAM,kBAAkB,GAAG,CAAC,KAAK,qBAAqB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACnF,IAAI,SAAS,EAAE,OAAO,CAAC,SAAS;AAChC,IAAI,GAAG,EAAE,KAAK;AACd,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE;AAClD,IAAI,UAAU,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,cAAc,EAAE;AACjD,IAAI,KAAK;AACT,GAAG,CAAC,CAAC,CAAC;AACN,EAAE,IAAI,SAAS,GAAG,IAAI,CAAC;AACvB,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK;AACtC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK;AACnB,MAAM,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AAC/D,SAAS;AACT,MAAM,IAAI,SAAS,KAAK,IAAI,CAAC,KAAK,EAAE;AACpC,QAAQ,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;AAC/B,QAAQ,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;AACzD,OAAO;AACP,MAAM,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AAC7D,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;AAC5D,IAAI,cAAc,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;AACjD,GAAG;AACH,EAAE,MAAM,mBAAmB,GAAG,CAAC,KAAK,KAAK;AACzC,IAAI,QAAQ,KAAK,CAAC,IAAI;AACtB,MAAM,KAAK,OAAO,EAAE;AACpB,QAAQ,KAAK,CAAC,cAAc,EAAE,CAAC;AAC/B,QAAQ,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE;AACnC,UAAU,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;AAChD,SAAS;AACT,QAAQ,MAAM;AACd,OAAO;AACP,MAAM,KAAK,WAAW,EAAE;AACxB,QAAQ,KAAK,CAAC,cAAc,EAAE,CAAC;AAC/B,QAAQ,UAAU,CAAC,CAAC,OAAO,KAAK;AAChC,UAAU,IAAI,EAAE,CAAC;AACjB,UAAU,MAAM,SAAS,GAAG,OAAO,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC;AACtF,UAAU,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AAC5G,UAAU,cAAc,CAAC;AACzB,YAAY,SAAS,EAAE,KAAK;AAC5B,WAAW,CAAC,CAAC;AACb,UAAU,OAAO,SAAS,CAAC;AAC3B,SAAS,CAAC,CAAC;AACX,QAAQ,MAAM;AACd,OAAO;AACP,MAAM,KAAK,SAAS,EAAE;AACtB,QAAQ,KAAK,CAAC,cAAc,EAAE,CAAC;AAC/B,QAAQ,UAAU,CAAC,CAAC,OAAO,KAAK;AAChC,UAAU,IAAI,EAAE,CAAC;AACjB,UAAU,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC;AAChE,UAAU,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AAC5G,UAAU,cAAc,CAAC;AACzB,YAAY,SAAS,EAAE,OAAO;AAC9B,WAAW,CAAC,CAAC;AACb,UAAU,OAAO,SAAS,CAAC;AAC3B,SAAS,CAAC,CAAC;AACX,OAAO;AACP,KAAK;AACL,GAAG,CAAC;AACJ,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACpD,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC;AAClD,GAAG,EAAE,KAAK,oBAAoB,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE;AACxD,IAAI,MAAM,EAAE,GAAG;AACf,IAAI,SAAS,EAAE,OAAO,CAAC,iBAAiB;AACxC,GAAG,EAAE,KAAK,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACxD,IAAI,SAAS,EAAE,OAAO,CAAC,gBAAgB;AACvC,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,OAAO,CAAC,kBAAkB;AACzC,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;AACpD,IAAI,KAAK,EAAE,KAAK;AAChB,IAAI,QAAQ,EAAE,CAAC,KAAK,KAAK;AACzB,MAAM,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC1C,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC;AACpB,KAAK;AACL,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC,CAAC,CAAC;AAChC,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC;AAChC,IAAI,WAAW,EAAE,iBAAiB;AAClC,IAAI,MAAM,EAAE,CAAC;AACb,IAAI,SAAS,EAAE,mBAAmB;AAClC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AACnB,IAAI,UAAU,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,kBAAkB,EAAE;AACrD,GAAG,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE;AACtD,IAAI,OAAO,EAAE,SAAS;AACtB,IAAI,IAAI,EAAE,EAAE;AACZ,IAAI,MAAM,EAAE,CAAC;AACb,IAAI,SAAS,EAAE,OAAO,CAAC,mBAAmB;AAC1C,IAAI,QAAQ,EAAE,SAAS,CAAC,MAAM,KAAK,CAAC;AACpC,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG,EAAE,QAAQ,mBAAmB,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,mBAAmB,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,eAAe,oBAAoB,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE;AAC/L,IAAI,OAAO,EAAE,SAAS;AACtB,IAAI,IAAI,EAAE,EAAE;AACZ,IAAI,MAAM,EAAE,CAAC;AACb,IAAI,SAAS,EAAE,OAAO,CAAC,mBAAmB;AAC1C,IAAI,QAAQ,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,SAAS;AACtB,GAAG,EAAE,QAAQ,mBAAmB,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,mBAAmB,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,aAAa,CAAC,aAAa,EAAE;AACjL,IAAI,GAAG,EAAE,aAAa;AACtB,IAAI,YAAY,EAAE,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC;AACtC,IAAI,SAAS,EAAE,OAAO,CAAC,iBAAiB;AACxC,IAAI,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE;AAChE,GAAG,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,mBAAmB,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,cAAc,CAAC,mBAAmB,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE;AAChM,IAAI,KAAK,EAAE,QAAQ;AACnB,IAAI,IAAI,EAAE,IAAI;AACd,IAAI,KAAK,EAAE,QAAQ;AACnB,IAAI,EAAE,EAAE,IAAI;AACZ,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACtB,CAAC;AACD,UAAU,CAAC,WAAW,GAAG,0BAA0B;;;;"}
1
+ {"version":3,"file":"RenderList.js","sources":["../../../../src/components/TransferList/RenderList/RenderList.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { DefaultProps, ClassNames } from '@mantine/styles';\nimport { useScrollIntoView } from '@mantine/hooks';\nimport { SelectScrollArea } from '../../Select/SelectScrollArea/SelectScrollArea';\nimport { UnstyledButton } from '../../Button';\nimport { ActionIcon } from '../../ActionIcon';\nimport { TextInput } from '../../TextInput';\nimport { Text } from '../../Text';\nimport { Divider } from '../../Divider/Divider';\nimport { LastIcon, NextIcon, FirstIcon, PrevIcon } from '../../Pagination/icons';\nimport { TransferListItem, TransferListItemComponent } from '../types';\nimport useStyles from './RenderList.styles';\nimport { groupOptions } from '../../../utils';\n\nexport type RenderListStylesNames = ClassNames<typeof useStyles>;\n\nexport interface RenderListProps extends DefaultProps<RenderListStylesNames> {\n data: TransferListItem[];\n onSelect(value: string): void;\n selection: string[];\n itemComponent: TransferListItemComponent;\n searchPlaceholder: string;\n filter(query: string, item: TransferListItem): boolean;\n nothingFound?: React.ReactNode;\n title?: React.ReactNode;\n reversed?: boolean;\n showTransferAll?: boolean;\n onMoveAll(): void;\n onMove(): void;\n height: number;\n listComponent?: React.FC<any>;\n limit?: number;\n}\n\nconst icons = {\n Prev: PrevIcon,\n Next: NextIcon,\n First: FirstIcon,\n Last: LastIcon,\n};\n\nconst rtlIons = {\n Next: PrevIcon,\n Prev: NextIcon,\n Last: FirstIcon,\n First: LastIcon,\n};\n\nexport function RenderList({\n className,\n data,\n onSelect,\n selection,\n itemComponent: ItemComponent,\n listComponent,\n searchPlaceholder,\n filter,\n nothingFound,\n title,\n showTransferAll,\n reversed,\n onMoveAll,\n onMove,\n height,\n classNames,\n styles,\n limit,\n}: RenderListProps) {\n const { classes, cx, theme } = useStyles(\n { reversed, native: listComponent !== SelectScrollArea },\n { name: 'TransferList', classNames, styles }\n );\n const unGroupedItems: React.ReactElement<any>[] = [];\n const groupedItems: React.ReactElement<any>[] = [];\n const [query, setQuery] = useState('');\n const [hovered, setHovered] = useState(-1);\n const filteredData = data.filter((item) => filter(query, item)).slice(0, limit);\n const ListComponent = listComponent || 'div';\n const Icons = theme.dir === 'rtl' ? rtlIons : icons;\n\n const itemsRefs = useRef<Record<string, HTMLButtonElement>>({});\n\n const sortedData: TransferListItem[] = groupOptions({ data: filteredData });\n\n const { scrollIntoView, targetRef, scrollableRef } = useScrollIntoView({\n duration: 0,\n offset: 5,\n cancelable: false,\n isList: true,\n });\n\n let groupName = null;\n\n sortedData.forEach((item, index) => {\n const itemComponent = (\n <UnstyledButton\n tabIndex={-1}\n onClick={() => onSelect(item.value)}\n key={item.value}\n onMouseEnter={() => setHovered(index)}\n className={cx(classes.transferListItem, {\n [classes.transferListItemHovered]: index === hovered,\n })}\n ref={(node: HTMLButtonElement) => {\n if (itemsRefs && itemsRefs.current) {\n itemsRefs.current[item.value] = node;\n }\n }}\n >\n <ItemComponent data={item} selected={selection.includes(item.value)} />\n </UnstyledButton>\n );\n\n if (!item.group) {\n unGroupedItems.push(itemComponent);\n } else {\n if (groupName !== item.group) {\n groupName = item.group;\n groupedItems.push(\n <div className={classes.separator} key={groupName}>\n <Divider classNames={{ label: classes.separatorLabel }} label={groupName} />\n </div>\n );\n }\n groupedItems.push(itemComponent);\n }\n });\n\n if (groupedItems.length > 0 && unGroupedItems.length > 0) {\n unGroupedItems.unshift(\n <div className={classes.separator}>\n <Divider classNames={{ label: classes.separatorLabel }} />\n </div>\n );\n }\n\n const handleSearchKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.code) {\n case 'Enter': {\n event.preventDefault();\n if (filteredData[hovered]) {\n onSelect(filteredData[hovered].value);\n }\n break;\n }\n\n case 'ArrowDown': {\n event.preventDefault();\n setHovered((current) => {\n const nextIndex = current < filteredData.length - 1 ? current + 1 : current;\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: 'end',\n });\n\n return nextIndex;\n });\n break;\n }\n\n case 'ArrowUp': {\n event.preventDefault();\n setHovered((current) => {\n const nextIndex = current > 0 ? current - 1 : current;\n\n targetRef.current = itemsRefs.current[filteredData[nextIndex]?.value];\n\n scrollIntoView({\n alignment: 'start',\n });\n\n return nextIndex;\n });\n }\n }\n };\n\n return (\n <div className={cx(classes.transferList, className)}>\n {title && (\n <Text weight={500} className={classes.transferListTitle}>\n {title}\n </Text>\n )}\n\n <div className={classes.transferListBody}>\n <div className={classes.transferListHeader}>\n <TextInput\n value={query}\n onChange={(event) => {\n setQuery(event.currentTarget.value);\n setHovered(0);\n }}\n onFocus={() => setHovered(0)}\n onBlur={() => setHovered(-1)}\n placeholder={searchPlaceholder}\n radius={0}\n onKeyDown={handleSearchKeydown}\n sx={{ flex: 1 }}\n classNames={{ input: classes.transferListSearch }}\n />\n\n <ActionIcon\n variant=\"default\"\n size={36}\n radius={0}\n className={classes.transferListControl}\n disabled={selection.length === 0}\n onClick={onMove}\n >\n {reversed ? <Icons.Prev /> : <Icons.Next />}\n </ActionIcon>\n\n {showTransferAll && (\n <ActionIcon\n variant=\"default\"\n size={36}\n radius={0}\n className={classes.transferListControl}\n disabled={data.length === 0}\n onClick={onMoveAll}\n >\n {reversed ? <Icons.First /> : <Icons.Last />}\n </ActionIcon>\n )}\n </div>\n\n <ListComponent\n ref={scrollableRef}\n onMouseLeave={() => setHovered(-1)}\n className={classes.transferListItems}\n style={{ height, position: 'relative', overflowX: 'hidden' }}\n >\n {groupedItems.length > 0 || unGroupedItems.length > 0 ? (\n <>\n {groupedItems}\n {unGroupedItems}\n </>\n ) : (\n <Text color=\"dimmed\" size=\"sm\" align=\"center\" mt=\"sm\">\n {nothingFound}\n </Text>\n )}\n </ListComponent>\n </div>\n </div>\n );\n}\n\nRenderList.displayName = '@mantine/core/RenderList';\n"],"names":[],"mappings":"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"}
@@ -44,6 +44,8 @@ var useStyles = createStyles((theme, { reversed, native }) => ({
44
44
  borderTopWidth: 0,
45
45
  borderRightWidth: 0,
46
46
  borderLeftWidth: 0,
47
+ borderTopLeftRadius: reversed ? 0 : theme.radius.sm - 1,
48
+ borderTopRightRadius: reversed ? theme.radius.sm - 1 : 0,
47
49
  display: "block",
48
50
  borderBottomColor: theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4]
49
51
  },
@@ -51,7 +53,13 @@ var useStyles = createStyles((theme, { reversed, native }) => ({
51
53
  borderTop: 0,
52
54
  borderRightWidth: reversed ? void 0 : 0,
53
55
  borderLeftWidth: reversed ? 0 : void 0,
56
+ borderTopLeftRadius: reversed ? theme.radius.sm : 0,
57
+ borderTopRightRadius: reversed ? 0 : theme.radius.sm,
54
58
  borderColor: theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4],
59
+ "&:last-of-type": {
60
+ borderTopLeftRadius: reversed ? theme.radius.sm - 1 : 0,
61
+ borderTopRightRadius: reversed ? 0 : theme.radius.sm - 1
62
+ },
55
63
  "&:disabled": {
56
64
  backgroundColor: theme.colorScheme === "dark" ? theme.colors.dark[5] : "transparent",
57
65
  borderColor: theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4]
@@ -61,7 +69,7 @@ var useStyles = createStyles((theme, { reversed, native }) => ({
61
69
  boxSizing: "border-box",
62
70
  textAlign: "left",
63
71
  width: "100%",
64
- padding: `${theme.spacing.sm / 1.5}px ${theme.spacing.sm}px`
72
+ padding: "7px 12px"
65
73
  },
66
74
  separatorLabel: {
67
75
  color: theme.colorScheme === "dark" ? theme.colors.dark[3] : theme.colors.gray[5]