@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
@@ -7,7 +7,7 @@ var hooks = require('@mantine/hooks');
7
7
  var SelectScrollArea = require('../../Select/SelectScrollArea/SelectScrollArea.js');
8
8
  var Divider = require('../../Divider/Divider.js');
9
9
  var RenderList_styles = require('./RenderList.styles.js');
10
- var groupSortData = require('../../../utils/group-sort-data/group-sort-data.js');
10
+ var groupOptions = require('../../../utils/group-options/group-options.js');
11
11
  var UnstyledButton = require('../../Button/UnstyledButton/UnstyledButton.js');
12
12
  var Text = require('../../Text/Text.js');
13
13
  var TextInput = require('../../TextInput/TextInput.js');
@@ -21,6 +21,18 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
21
21
 
22
22
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
23
23
 
24
+ const icons = {
25
+ Prev: PrevIcon.PrevIcon,
26
+ Next: NextIcon.NextIcon,
27
+ First: FirstIcon.FirstIcon,
28
+ Last: LastIcon.LastIcon
29
+ };
30
+ const rtlIons = {
31
+ Next: PrevIcon.PrevIcon,
32
+ Prev: NextIcon.NextIcon,
33
+ Last: FirstIcon.FirstIcon,
34
+ First: LastIcon.LastIcon
35
+ };
24
36
  function RenderList({
25
37
  className,
26
38
  data,
@@ -38,61 +50,66 @@ function RenderList({
38
50
  onMove,
39
51
  height,
40
52
  classNames,
41
- styles
53
+ styles,
54
+ limit
42
55
  }) {
43
- const { classes, cx } = RenderList_styles['default']({ reversed, native: listComponent !== SelectScrollArea.SelectScrollArea }, { name: "TransferList", classNames, styles });
56
+ const { classes, cx, theme } = RenderList_styles['default']({ reversed, native: listComponent !== SelectScrollArea.SelectScrollArea }, { name: "TransferList", classNames, styles });
44
57
  const unGroupedItems = [];
45
58
  const groupedItems = [];
46
59
  const [query, setQuery] = React.useState("");
47
60
  const [hovered, setHovered] = React.useState(-1);
48
- const filteredData = data.filter((item) => filter(query, item));
61
+ const filteredData = data.filter((item) => filter(query, item)).slice(0, limit);
49
62
  const ListComponent = listComponent || "div";
63
+ const Icons = theme.dir === "rtl" ? rtlIons : icons;
50
64
  const itemsRefs = React.useRef({});
51
- const sortedData = groupSortData.groupSortData({ data: filteredData });
65
+ const sortedData = groupOptions.groupOptions({ data: filteredData });
52
66
  const { scrollIntoView, targetRef, scrollableRef } = hooks.useScrollIntoView({
53
67
  duration: 0,
54
68
  offset: 5,
55
69
  cancelable: false,
56
70
  isList: true
57
71
  });
58
- const constructItemComponent = (item, index) => /* @__PURE__ */ React__default.createElement(UnstyledButton.UnstyledButton, {
59
- tabIndex: -1,
60
- onClick: () => onSelect(item.value),
61
- key: item.value,
62
- onMouseEnter: () => setHovered(index),
63
- className: cx(classes.transferListItem, {
64
- [classes.transferListItemHovered]: index === hovered
65
- }),
66
- ref: (node) => {
67
- if (itemsRefs && itemsRefs.current) {
68
- itemsRefs.current[item.value] = node;
69
- }
70
- }
71
- }, /* @__PURE__ */ React__default.createElement(ItemComponent, {
72
- data: item,
73
- selected: selection.includes(item.value)
74
- }));
75
- const constructSeparator = (label) => /* @__PURE__ */ React__default.createElement("div", {
76
- className: classes.separator,
77
- key: label
78
- }, /* @__PURE__ */ React__default.createElement(Divider.Divider, {
79
- classNames: { label: classes.separatorLabel },
80
- label
81
- }));
82
72
  let groupName = null;
83
73
  sortedData.forEach((item, index) => {
84
- if (!item.group)
85
- unGroupedItems.push(constructItemComponent(item, index));
86
- else {
74
+ const itemComponent = /* @__PURE__ */ React__default.createElement(UnstyledButton.UnstyledButton, {
75
+ tabIndex: -1,
76
+ onClick: () => onSelect(item.value),
77
+ key: item.value,
78
+ onMouseEnter: () => setHovered(index),
79
+ className: cx(classes.transferListItem, {
80
+ [classes.transferListItemHovered]: index === hovered
81
+ }),
82
+ ref: (node) => {
83
+ if (itemsRefs && itemsRefs.current) {
84
+ itemsRefs.current[item.value] = node;
85
+ }
86
+ }
87
+ }, /* @__PURE__ */ React__default.createElement(ItemComponent, {
88
+ data: item,
89
+ selected: selection.includes(item.value)
90
+ }));
91
+ if (!item.group) {
92
+ unGroupedItems.push(itemComponent);
93
+ } else {
87
94
  if (groupName !== item.group) {
88
95
  groupName = item.group;
89
- groupedItems.push(constructSeparator(groupName));
96
+ groupedItems.push(/* @__PURE__ */ React__default.createElement("div", {
97
+ className: classes.separator,
98
+ key: groupName
99
+ }, /* @__PURE__ */ React__default.createElement(Divider.Divider, {
100
+ classNames: { label: classes.separatorLabel },
101
+ label: groupName
102
+ })));
90
103
  }
91
- groupedItems.push(constructItemComponent(item, index));
104
+ groupedItems.push(itemComponent);
92
105
  }
93
106
  });
94
107
  if (groupedItems.length > 0 && unGroupedItems.length > 0) {
95
- unGroupedItems.unshift(constructSeparator());
108
+ unGroupedItems.unshift(/* @__PURE__ */ React__default.createElement("div", {
109
+ className: classes.separator
110
+ }, /* @__PURE__ */ React__default.createElement(Divider.Divider, {
111
+ classNames: { label: classes.separatorLabel }
112
+ })));
96
113
  }
97
114
  const handleSearchKeydown = (event) => {
98
115
  switch (event.code) {
@@ -159,14 +176,14 @@ function RenderList({
159
176
  className: classes.transferListControl,
160
177
  disabled: selection.length === 0,
161
178
  onClick: onMove
162
- }, reversed ? /* @__PURE__ */ React__default.createElement(PrevIcon.PrevIcon, null) : /* @__PURE__ */ React__default.createElement(NextIcon.NextIcon, null)), showTransferAll && /* @__PURE__ */ React__default.createElement(ActionIcon.ActionIcon, {
179
+ }, reversed ? /* @__PURE__ */ React__default.createElement(Icons.Prev, null) : /* @__PURE__ */ React__default.createElement(Icons.Next, null)), showTransferAll && /* @__PURE__ */ React__default.createElement(ActionIcon.ActionIcon, {
163
180
  variant: "default",
164
181
  size: 36,
165
182
  radius: 0,
166
183
  className: classes.transferListControl,
167
184
  disabled: data.length === 0,
168
185
  onClick: onMoveAll
169
- }, reversed ? /* @__PURE__ */ React__default.createElement(FirstIcon.FirstIcon, null) : /* @__PURE__ */ React__default.createElement(LastIcon.LastIcon, null))), /* @__PURE__ */ React__default.createElement(ListComponent, {
186
+ }, reversed ? /* @__PURE__ */ React__default.createElement(Icons.First, null) : /* @__PURE__ */ React__default.createElement(Icons.Last, null))), /* @__PURE__ */ React__default.createElement(ListComponent, {
170
187
  ref: scrollableRef,
171
188
  onMouseLeave: () => setHovered(-1),
172
189
  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":["useStyles","SelectScrollArea","useState","useRef","groupSortData","useScrollIntoView","React","UnstyledButton","Divider","Text","TextInput","ActionIcon","PrevIcon","NextIcon","FirstIcon","LastIcon"],"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,GAAGA,4BAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,KAAKC,iCAAgB,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,GAAGC,cAAQ,CAAC,EAAE,CAAC,CAAC;AACzC,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAGA,cAAQ,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,GAAGC,YAAM,CAAC,EAAE,CAAC,CAAC;AAC/B,EAAE,MAAM,UAAU,GAAGC,2BAAa,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;AAC3D,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,GAAGC,uBAAiB,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,qBAAqBC,cAAK,CAAC,aAAa,CAACC,6BAAc,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,kBAAkBD,cAAK,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,qBAAqBA,cAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACnF,IAAI,SAAS,EAAE,OAAO,CAAC,SAAS;AAChC,IAAI,GAAG,EAAE,KAAK;AACd,GAAG,kBAAkBA,cAAK,CAAC,aAAa,CAACE,eAAO,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,uBAAuBF,cAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACpD,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC;AAClD,GAAG,EAAE,KAAK,oBAAoBA,cAAK,CAAC,aAAa,CAACG,SAAI,EAAE;AACxD,IAAI,MAAM,EAAE,GAAG;AACf,IAAI,SAAS,EAAE,OAAO,CAAC,iBAAiB;AACxC,GAAG,EAAE,KAAK,CAAC,kBAAkBH,cAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AACxD,IAAI,SAAS,EAAE,OAAO,CAAC,gBAAgB;AACvC,GAAG,kBAAkBA,cAAK,CAAC,aAAa,CAAC,KAAK,EAAE;AAChD,IAAI,SAAS,EAAE,OAAO,CAAC,kBAAkB;AACzC,GAAG,kBAAkBA,cAAK,CAAC,aAAa,CAACI,mBAAS,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,kBAAkBJ,cAAK,CAAC,aAAa,CAACK,qBAAU,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,mBAAmBL,cAAK,CAAC,aAAa,CAACM,iBAAQ,EAAE,IAAI,CAAC,mBAAmBN,cAAK,CAAC,aAAa,CAACO,iBAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,eAAe,oBAAoBP,cAAK,CAAC,aAAa,CAACK,qBAAU,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,mBAAmBL,cAAK,CAAC,aAAa,CAACQ,mBAAS,EAAE,IAAI,CAAC,mBAAmBR,cAAK,CAAC,aAAa,CAACS,iBAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkBT,cAAK,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,mBAAmBA,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,cAAc,CAAC,mBAAmBA,cAAK,CAAC,aAAa,CAACG,SAAI,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":["PrevIcon","NextIcon","FirstIcon","LastIcon","useStyles","SelectScrollArea","useState","useRef","groupOptions","useScrollIntoView","React","UnstyledButton","Divider","Text","TextInput","ActionIcon"],"mappings":"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"}
@@ -48,6 +48,8 @@ var useStyles = styles.createStyles((theme, { reversed, native }) => ({
48
48
  borderTopWidth: 0,
49
49
  borderRightWidth: 0,
50
50
  borderLeftWidth: 0,
51
+ borderTopLeftRadius: reversed ? 0 : theme.radius.sm - 1,
52
+ borderTopRightRadius: reversed ? theme.radius.sm - 1 : 0,
51
53
  display: "block",
52
54
  borderBottomColor: theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4]
53
55
  },
@@ -55,7 +57,13 @@ var useStyles = styles.createStyles((theme, { reversed, native }) => ({
55
57
  borderTop: 0,
56
58
  borderRightWidth: reversed ? void 0 : 0,
57
59
  borderLeftWidth: reversed ? 0 : void 0,
60
+ borderTopLeftRadius: reversed ? theme.radius.sm : 0,
61
+ borderTopRightRadius: reversed ? 0 : theme.radius.sm,
58
62
  borderColor: theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4],
63
+ "&:last-of-type": {
64
+ borderTopLeftRadius: reversed ? theme.radius.sm - 1 : 0,
65
+ borderTopRightRadius: reversed ? 0 : theme.radius.sm - 1
66
+ },
59
67
  "&:disabled": {
60
68
  backgroundColor: theme.colorScheme === "dark" ? theme.colors.dark[5] : "transparent",
61
69
  borderColor: theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4]
@@ -65,7 +73,7 @@ var useStyles = styles.createStyles((theme, { reversed, native }) => ({
65
73
  boxSizing: "border-box",
66
74
  textAlign: "left",
67
75
  width: "100%",
68
- padding: `${theme.spacing.sm / 1.5}px ${theme.spacing.sm}px`
76
+ padding: "7px 12px"
69
77
  },
70
78
  separatorLabel: {
71
79
  color: theme.colorScheme === "dark" ? theme.colors.dark[3] : theme.colors.gray[5]
@@ -1 +1 @@
1
- {"version":3,"file":"RenderList.styles.js","sources":["../../../../src/components/TransferList/RenderList/RenderList.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\ninterface RenderListStyles {\n reversed: boolean;\n native: boolean;\n}\n\nconst ITEM_PADDING = 7;\n\nexport default createStyles((theme, { reversed, native }: RenderListStyles) => ({\n transferList: {\n flex: 1,\n display: 'flex',\n flexDirection: 'column',\n },\n\n transferListItem: {\n display: 'block',\n width: `calc(100% - ${ITEM_PADDING * 2}px)`,\n padding: ITEM_PADDING,\n marginLeft: theme.spacing.sm - ITEM_PADDING,\n marginRight: theme.spacing.sm - ITEM_PADDING,\n borderRadius: theme.radius.sm,\n\n '&:first-of-type': {\n marginTop: theme.spacing.sm - ITEM_PADDING,\n },\n\n '&:last-of-type': {\n marginBottom: theme.spacing.sm - ITEM_PADDING,\n },\n },\n\n transferListItemHovered: {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.colors.gray[0],\n },\n\n transferListItems: {\n overflow: native ? 'auto' : 'hidden',\n },\n\n transferListHeader: {\n display: 'flex',\n flexDirection: reversed ? 'row-reverse' : 'row',\n },\n\n transferListBody: {\n flex: 1,\n borderRadius: theme.radius.sm,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n },\n\n transferListTitle: {\n marginBottom: 5,\n },\n\n transferListSearch: {\n borderTopWidth: 0,\n borderRightWidth: 0,\n borderLeftWidth: 0,\n display: 'block',\n borderBottomColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4],\n },\n\n transferListControl: {\n borderTop: 0,\n borderRightWidth: reversed ? undefined : 0,\n borderLeftWidth: reversed ? 0 : undefined,\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4],\n\n '&:disabled': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[5] : 'transparent',\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4],\n },\n },\n\n separator: {\n boxSizing: 'border-box',\n textAlign: 'left',\n width: '100%',\n padding: `${theme.spacing.sm / 1.5}px ${theme.spacing.sm}px`,\n },\n\n separatorLabel: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[5],\n },\n}));\n"],"names":["createStyles"],"mappings":"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"}
1
+ {"version":3,"file":"RenderList.styles.js","sources":["../../../../src/components/TransferList/RenderList/RenderList.styles.ts"],"sourcesContent":["import { createStyles } from '@mantine/styles';\n\ninterface RenderListStyles {\n reversed: boolean;\n native: boolean;\n}\n\nconst ITEM_PADDING = 7;\n\nexport default createStyles((theme, { reversed, native }: RenderListStyles) => ({\n transferList: {\n flex: 1,\n display: 'flex',\n flexDirection: 'column',\n },\n\n transferListItem: {\n display: 'block',\n width: `calc(100% - ${ITEM_PADDING * 2}px)`,\n padding: ITEM_PADDING,\n marginLeft: theme.spacing.sm - ITEM_PADDING,\n marginRight: theme.spacing.sm - ITEM_PADDING,\n borderRadius: theme.radius.sm,\n\n '&:first-of-type': {\n marginTop: theme.spacing.sm - ITEM_PADDING,\n },\n\n '&:last-of-type': {\n marginBottom: theme.spacing.sm - ITEM_PADDING,\n },\n },\n\n transferListItemHovered: {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.colors.gray[0],\n },\n\n transferListItems: {\n overflow: native ? 'auto' : 'hidden',\n },\n\n transferListHeader: {\n display: 'flex',\n flexDirection: reversed ? 'row-reverse' : 'row',\n },\n\n transferListBody: {\n flex: 1,\n borderRadius: theme.radius.sm,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n border: `1px solid ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n },\n\n transferListTitle: {\n marginBottom: 5,\n },\n\n transferListSearch: {\n borderTopWidth: 0,\n borderRightWidth: 0,\n borderLeftWidth: 0,\n borderTopLeftRadius: reversed ? 0 : theme.radius.sm - 1,\n borderTopRightRadius: reversed ? theme.radius.sm - 1 : 0,\n display: 'block',\n borderBottomColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4],\n },\n\n transferListControl: {\n borderTop: 0,\n borderRightWidth: reversed ? undefined : 0,\n borderLeftWidth: reversed ? 0 : undefined,\n borderTopLeftRadius: reversed ? theme.radius.sm : 0,\n borderTopRightRadius: reversed ? 0 : theme.radius.sm,\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4],\n\n '&:last-of-type': {\n borderTopLeftRadius: reversed ? theme.radius.sm - 1 : 0,\n borderTopRightRadius: reversed ? 0 : theme.radius.sm - 1,\n },\n\n '&:disabled': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[5] : 'transparent',\n borderColor: theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4],\n },\n },\n\n separator: {\n boxSizing: 'border-box',\n textAlign: 'left',\n width: '100%',\n padding: '7px 12px',\n },\n\n separatorLabel: {\n color: theme.colorScheme === 'dark' ? theme.colors.dark[3] : theme.colors.gray[5],\n },\n}));\n"],"names":["createStyles"],"mappings":"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"}
@@ -14,6 +14,8 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
14
14
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
15
 
16
16
  var __defProp = Object.defineProperty;
17
+ var __defProps = Object.defineProperties;
18
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
17
19
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
18
20
  var __hasOwnProp = Object.prototype.hasOwnProperty;
19
21
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -29,6 +31,7 @@ var __spreadValues = (a, b) => {
29
31
  }
30
32
  return a;
31
33
  };
34
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
32
35
  var __objRest = (source, exclude) => {
33
36
  var target = {};
34
37
  for (var prop in source)
@@ -59,7 +62,8 @@ const TransferList = React.forwardRef((_a, ref) => {
59
62
  showTransferAll = true,
60
63
  breakpoint,
61
64
  classNames,
62
- styles
65
+ styles,
66
+ limit = Infinity
63
67
  } = _b, others = __objRest(_b, [
64
68
  "value",
65
69
  "onChange",
@@ -74,7 +78,8 @@ const TransferList = React.forwardRef((_a, ref) => {
74
78
  "showTransferAll",
75
79
  "breakpoint",
76
80
  "classNames",
77
- "styles"
81
+ "styles",
82
+ "limit"
78
83
  ]);
79
84
  const [selection, handlers] = useSelectionState.useSelectionState(initialSelection);
80
85
  const handleMoveAll = (listIndex) => {
@@ -102,45 +107,39 @@ const TransferList = React.forwardRef((_a, ref) => {
102
107
  handlers.deselectAll(listIndex);
103
108
  };
104
109
  const breakpoints = breakpoint ? [{ maxWidth: breakpoint, cols: 1 }] : void 0;
110
+ const sharedListProps = {
111
+ itemComponent,
112
+ listComponent,
113
+ searchPlaceholder,
114
+ filter,
115
+ nothingFound,
116
+ height: listHeight,
117
+ showTransferAll,
118
+ classNames,
119
+ styles,
120
+ limit
121
+ };
105
122
  return /* @__PURE__ */ React__default.createElement(SimpleGrid.SimpleGrid, __spreadValues({
106
123
  cols: 2,
107
124
  spacing: "xl",
108
125
  breakpoints,
109
126
  ref
110
- }, others), /* @__PURE__ */ React__default.createElement(RenderList.RenderList, {
127
+ }, others), /* @__PURE__ */ React__default.createElement(RenderList.RenderList, __spreadProps(__spreadValues({}, sharedListProps), {
111
128
  data: value[0],
112
129
  selection: selection[0],
113
130
  onSelect: (val) => handlers.select(0, val),
114
131
  onMoveAll: () => handleMoveAll(0),
115
132
  onMove: () => handleMove(0),
116
- itemComponent,
117
- searchPlaceholder,
118
- filter,
119
- nothingFound,
120
- title: titles[0],
121
- height: listHeight,
122
- listComponent,
123
- showTransferAll,
124
- classNames,
125
- styles
126
- }), /* @__PURE__ */ React__default.createElement(RenderList.RenderList, {
133
+ title: titles[0]
134
+ })), /* @__PURE__ */ React__default.createElement(RenderList.RenderList, __spreadProps(__spreadValues({}, sharedListProps), {
127
135
  data: value[1],
128
136
  selection: selection[1],
129
137
  onSelect: (val) => handlers.select(1, val),
130
138
  onMoveAll: () => handleMoveAll(1),
131
139
  onMove: () => handleMove(1),
132
- itemComponent,
133
- searchPlaceholder,
134
- filter,
135
- nothingFound,
136
140
  title: titles[1],
137
- height: listHeight,
138
- listComponent,
139
- showTransferAll,
140
- classNames,
141
- styles,
142
141
  reversed: true
143
- }));
142
+ })));
144
143
  });
145
144
  TransferList.displayName = "@mantine/core/TransferList";
146
145
 
@@ -1 +1 @@
1
- {"version":3,"file":"TransferList.js","sources":["../../../src/components/TransferList/TransferList.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, MantineNumberSize } from '@mantine/styles';\nimport { RenderList, RenderListStylesNames } from './RenderList/RenderList';\nimport { SelectScrollArea } from '../Select/SelectScrollArea/SelectScrollArea';\nimport { DefaultItem } from './DefaultItem/DefaultItem';\nimport { SimpleGrid } from '../SimpleGrid';\nimport { useSelectionState, Selection } from './use-selection-state/use-selection-state';\nimport { TransferListData, TransferListItemComponent, TransferListItem } from './types';\n\nexport type TransferListStylesNames = RenderListStylesNames;\n\nexport interface TransferListProps\n extends DefaultProps<TransferListStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'value' | 'onChange'> {\n /** Current value */\n value: TransferListData;\n\n /** Called when value changes */\n onChange(value: TransferListData): void;\n\n /** Initial items selection */\n initialSelection?: Selection;\n\n /** Custom item component */\n itemComponent?: TransferListItemComponent;\n\n /** Search fields placeholder */\n searchPlaceholder?: string;\n\n /** Nothing found message */\n nothingFound?: React.ReactNode;\n\n /** Function to filter search results */\n filter?(query: string, item: TransferListItem): boolean;\n\n /** Lists titles */\n titles?: [string, string];\n\n /** List items height */\n listHeight?: number;\n\n /** Change list component, can be used to add custom scrollbars */\n listComponent?: any;\n\n /** Breakpoint at which list will collapse to single column layout */\n breakpoint?: MantineNumberSize;\n\n /** Whether to hide the transfer all button */\n showTransferAll?: boolean;\n}\n\nexport function defaultFilter(query: string, item: TransferListItem) {\n return item.label.toLowerCase().trim().includes(query.toLowerCase().trim());\n}\n\nexport const TransferList = forwardRef<HTMLDivElement, TransferListProps>(\n (\n {\n value,\n onChange,\n itemComponent = DefaultItem,\n searchPlaceholder,\n filter = defaultFilter,\n nothingFound,\n titles = [null, null],\n initialSelection,\n listHeight = 150,\n listComponent = SelectScrollArea,\n showTransferAll = true,\n breakpoint,\n classNames,\n styles,\n ...others\n }: TransferListProps,\n ref\n ) => {\n const [selection, handlers] = useSelectionState(initialSelection);\n\n const handleMoveAll = (listIndex: 0 | 1) => {\n const items: TransferListData = Array(2) as any;\n const moveToIndex = listIndex === 0 ? 1 : 0;\n items[listIndex] = [];\n items[moveToIndex] = [...value[moveToIndex], ...value[listIndex]];\n onChange(items);\n handlers.deselectAll(listIndex);\n };\n\n const handleMove = (listIndex: 0 | 1) => {\n const moveToIndex = listIndex === 0 ? 1 : 0;\n const items: TransferListData = Array(2) as any;\n const transferData = value[listIndex].reduce(\n (acc, item) => {\n if (!selection[listIndex].includes(item.value)) {\n acc.filtered.push(item);\n } else {\n acc.current.push(item);\n }\n return acc;\n },\n { filtered: [], current: [] }\n );\n items[listIndex] = transferData.filtered;\n items[moveToIndex] = [...transferData.current, ...value[moveToIndex]];\n onChange(items);\n handlers.deselectAll(listIndex);\n };\n\n const breakpoints = breakpoint ? [{ maxWidth: breakpoint, cols: 1 }] : undefined;\n\n return (\n <SimpleGrid cols={2} spacing=\"xl\" breakpoints={breakpoints} ref={ref} {...others}>\n <RenderList\n data={value[0]}\n selection={selection[0]}\n onSelect={(val) => handlers.select(0, val)}\n onMoveAll={() => handleMoveAll(0)}\n onMove={() => handleMove(0)}\n itemComponent={itemComponent}\n searchPlaceholder={searchPlaceholder}\n filter={filter}\n nothingFound={nothingFound}\n title={titles[0]}\n height={listHeight}\n listComponent={listComponent}\n showTransferAll={showTransferAll}\n classNames={classNames}\n styles={styles}\n />\n\n <RenderList\n data={value[1]}\n selection={selection[1]}\n onSelect={(val) => handlers.select(1, val)}\n onMoveAll={() => handleMoveAll(1)}\n onMove={() => handleMove(1)}\n itemComponent={itemComponent}\n searchPlaceholder={searchPlaceholder}\n filter={filter}\n nothingFound={nothingFound}\n title={titles[1]}\n height={listHeight}\n listComponent={listComponent}\n showTransferAll={showTransferAll}\n classNames={classNames}\n styles={styles}\n reversed\n />\n </SimpleGrid>\n );\n }\n);\n\nTransferList.displayName = '@mantine/core/TransferList';\n"],"names":["forwardRef","DefaultItem","SelectScrollArea","useSelectionState","React","SimpleGrid","RenderList"],"mappings":"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"}
1
+ {"version":3,"file":"TransferList.js","sources":["../../../src/components/TransferList/TransferList.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { DefaultProps, MantineNumberSize } from '@mantine/styles';\nimport { RenderList, RenderListStylesNames } from './RenderList/RenderList';\nimport { SelectScrollArea } from '../Select/SelectScrollArea/SelectScrollArea';\nimport { DefaultItem } from './DefaultItem/DefaultItem';\nimport { SimpleGrid } from '../SimpleGrid';\nimport { useSelectionState, Selection } from './use-selection-state/use-selection-state';\nimport { TransferListData, TransferListItemComponent, TransferListItem } from './types';\n\nexport type TransferListStylesNames = RenderListStylesNames;\n\nexport interface TransferListProps\n extends DefaultProps<TransferListStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'value' | 'onChange'> {\n /** Current value */\n value: TransferListData;\n\n /** Called when value changes */\n onChange(value: TransferListData): void;\n\n /** Initial items selection */\n initialSelection?: Selection;\n\n /** Custom item component */\n itemComponent?: TransferListItemComponent;\n\n /** Search fields placeholder */\n searchPlaceholder?: string;\n\n /** Nothing found message */\n nothingFound?: React.ReactNode;\n\n /** Function to filter search results */\n filter?(query: string, item: TransferListItem): boolean;\n\n /** Lists titles */\n titles?: [string, string];\n\n /** List items height */\n listHeight?: number;\n\n /** Change list component, can be used to add custom scrollbars */\n listComponent?: any;\n\n /** Breakpoint at which list will collapse to single column layout */\n breakpoint?: MantineNumberSize;\n\n /** Whether to hide the transfer all button */\n showTransferAll?: boolean;\n\n /** Limit amount of items showed at a time */\n limit?: number;\n}\n\nexport function defaultFilter(query: string, item: TransferListItem) {\n return item.label.toLowerCase().trim().includes(query.toLowerCase().trim());\n}\n\nexport const TransferList = forwardRef<HTMLDivElement, TransferListProps>(\n (\n {\n value,\n onChange,\n itemComponent = DefaultItem,\n searchPlaceholder,\n filter = defaultFilter,\n nothingFound,\n titles = [null, null],\n initialSelection,\n listHeight = 150,\n listComponent = SelectScrollArea,\n showTransferAll = true,\n breakpoint,\n classNames,\n styles,\n limit = Infinity,\n ...others\n }: TransferListProps,\n ref\n ) => {\n const [selection, handlers] = useSelectionState(initialSelection);\n\n const handleMoveAll = (listIndex: 0 | 1) => {\n const items: TransferListData = Array(2) as any;\n const moveToIndex = listIndex === 0 ? 1 : 0;\n items[listIndex] = [];\n items[moveToIndex] = [...value[moveToIndex], ...value[listIndex]];\n onChange(items);\n handlers.deselectAll(listIndex);\n };\n\n const handleMove = (listIndex: 0 | 1) => {\n const moveToIndex = listIndex === 0 ? 1 : 0;\n const items: TransferListData = Array(2) as any;\n const transferData = value[listIndex].reduce(\n (acc, item) => {\n if (!selection[listIndex].includes(item.value)) {\n acc.filtered.push(item);\n } else {\n acc.current.push(item);\n }\n return acc;\n },\n { filtered: [], current: [] }\n );\n items[listIndex] = transferData.filtered;\n items[moveToIndex] = [...transferData.current, ...value[moveToIndex]];\n onChange(items);\n handlers.deselectAll(listIndex);\n };\n\n const breakpoints = breakpoint ? [{ maxWidth: breakpoint, cols: 1 }] : undefined;\n const sharedListProps = {\n itemComponent,\n listComponent,\n searchPlaceholder,\n filter,\n nothingFound,\n height: listHeight,\n showTransferAll,\n classNames,\n styles,\n limit,\n };\n\n return (\n <SimpleGrid cols={2} spacing=\"xl\" breakpoints={breakpoints} ref={ref} {...others}>\n <RenderList\n {...sharedListProps}\n data={value[0]}\n selection={selection[0]}\n onSelect={(val) => handlers.select(0, val)}\n onMoveAll={() => handleMoveAll(0)}\n onMove={() => handleMove(0)}\n title={titles[0]}\n />\n\n <RenderList\n {...sharedListProps}\n data={value[1]}\n selection={selection[1]}\n onSelect={(val) => handlers.select(1, val)}\n onMoveAll={() => handleMoveAll(1)}\n onMove={() => handleMove(1)}\n title={titles[1]}\n reversed\n />\n </SimpleGrid>\n );\n }\n);\n\nTransferList.displayName = '@mantine/core/TransferList';\n"],"names":["forwardRef","DefaultItem","SelectScrollArea","useSelectionState","React","SimpleGrid","RenderList"],"mappings":"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"}
@@ -13,6 +13,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
13
  function GroupedTransition({
14
14
  transitions,
15
15
  duration = 250,
16
+ exitDuration = duration,
16
17
  mounted,
17
18
  children,
18
19
  timingFunction,
@@ -24,6 +25,7 @@ function GroupedTransition({
24
25
  const { transitionDuration, transitionStatus, transitionTimingFunction } = useTransition.useTransition({
25
26
  mounted,
26
27
  duration,
28
+ exitDuration,
27
29
  timingFunction,
28
30
  onExit,
29
31
  onEntered,
@@ -1 +1 @@
1
- {"version":3,"file":"GroupedTransition.js","sources":["../../../src/components/Transition/GroupedTransition.tsx"],"sourcesContent":["import React from 'react';\nimport { getTransitionStyles } from './get-transition-styles/get-transition-styles';\nimport { useTransition } from './use-transition';\nimport { MantineTransition } from './transitions';\n\ninterface GroupedTransitionItem {\n duration: number;\n timingFunction?: React.CSSProperties['transitionTimingFunction'];\n transition: MantineTransition;\n}\n\nexport interface GroupedTransitionProps {\n /** Transitions group */\n transitions: Record<string, GroupedTransitionItem>;\n\n /** Render function with transition group styles argument */\n children(styles: Record<string, React.CSSProperties>): React.ReactElement<any, any>;\n\n /** Transition duration in ms */\n duration?: number;\n\n /** Transition timing function, defaults to theme.transitionTimingFunction */\n timingFunction?: string;\n\n /** When true, component will be mounted */\n mounted: boolean;\n\n /** Calls when exit transition ends */\n onExited?: () => void;\n\n /** Calls when exit transition starts */\n onExit?: () => void;\n\n /** Calls when enter transition starts */\n onEnter?: () => void;\n\n /** Calls when enter transition ends */\n onEntered?: () => void;\n}\n\nexport function GroupedTransition({\n transitions,\n duration = 250,\n mounted,\n children,\n timingFunction,\n onExit,\n onEntered,\n onEnter,\n onExited,\n}: GroupedTransitionProps) {\n const { transitionDuration, transitionStatus, transitionTimingFunction } = useTransition({\n mounted,\n duration,\n timingFunction,\n onExit,\n onEntered,\n onEnter,\n onExited,\n });\n\n if (transitionDuration === 0) {\n return mounted ? <>{children({})}</> : null;\n }\n\n if (transitionStatus === 'exited') {\n return null;\n }\n\n const transitionsStyles = Object.keys(transitions).reduce((acc, transition) => {\n acc[transition] = getTransitionStyles({\n duration: transitions[transition].duration,\n transition: transitions[transition].transition,\n timingFunction: transitions[transition].timingFunction || transitionTimingFunction,\n state: transitionStatus,\n });\n\n return acc;\n }, {});\n\n return <>{children(transitionsStyles)}</>;\n}\n\nGroupedTransition.displayName = '@mantine/core/GroupedTransition';\n"],"names":["useTransition","React","getTransitionStyles"],"mappings":";;;;;;;;;;;;AAGO,SAAS,iBAAiB,CAAC;AAClC,EAAE,WAAW;AACb,EAAE,QAAQ,GAAG,GAAG;AAChB,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,EAAE,cAAc;AAChB,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,CAAC,EAAE;AACH,EAAE,MAAM,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,GAAGA,2BAAa,CAAC;AAC3F,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,cAAc;AAClB,IAAI,MAAM;AACV,IAAI,SAAS;AACb,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,IAAI,kBAAkB,KAAK,CAAC,EAAE;AAChC,IAAI,OAAO,OAAO,mBAAmBC,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;AACpG,GAAG;AACH,EAAE,IAAI,gBAAgB,KAAK,QAAQ,EAAE;AACrC,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH,EAAE,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,UAAU,KAAK;AACjF,IAAI,GAAG,CAAC,UAAU,CAAC,GAAGC,uCAAmB,CAAC;AAC1C,MAAM,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,QAAQ;AAChD,MAAM,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,UAAU;AACpD,MAAM,cAAc,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,cAAc,IAAI,wBAAwB;AACxF,MAAM,KAAK,EAAE,gBAAgB;AAC7B,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,GAAG,CAAC;AACf,GAAG,EAAE,EAAE,CAAC,CAAC;AACT,EAAE,uBAAuBD,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAChG,CAAC;AACD,iBAAiB,CAAC,WAAW,GAAG,iCAAiC;;;;"}
1
+ {"version":3,"file":"GroupedTransition.js","sources":["../../../src/components/Transition/GroupedTransition.tsx"],"sourcesContent":["import React from 'react';\nimport { getTransitionStyles } from './get-transition-styles/get-transition-styles';\nimport { useTransition } from './use-transition';\nimport { MantineTransition } from './transitions';\n\ninterface GroupedTransitionItem {\n duration: number;\n timingFunction?: React.CSSProperties['transitionTimingFunction'];\n transition: MantineTransition;\n}\n\nexport interface GroupedTransitionProps {\n /** Transitions group */\n transitions: Record<string, GroupedTransitionItem>;\n\n /** Render function with transition group styles argument */\n children(styles: Record<string, React.CSSProperties>): React.ReactElement<any, any>;\n\n /** Enter transition duration in ms */\n duration?: number;\n\n /** Exit transition duration in ms */\n exitDuration?: number;\n\n /** Transition timing function, defaults to theme.transitionTimingFunction */\n timingFunction?: string;\n\n /** When true, component will be mounted */\n mounted: boolean;\n\n /** Calls when exit transition ends */\n onExited?: () => void;\n\n /** Calls when exit transition starts */\n onExit?: () => void;\n\n /** Calls when enter transition starts */\n onEnter?: () => void;\n\n /** Calls when enter transition ends */\n onEntered?: () => void;\n}\n\nexport function GroupedTransition({\n transitions,\n duration = 250,\n exitDuration = duration,\n mounted,\n children,\n timingFunction,\n onExit,\n onEntered,\n onEnter,\n onExited,\n}: GroupedTransitionProps) {\n const { transitionDuration, transitionStatus, transitionTimingFunction } = useTransition({\n mounted,\n duration,\n exitDuration,\n timingFunction,\n onExit,\n onEntered,\n onEnter,\n onExited,\n });\n\n if (transitionDuration === 0) {\n return mounted ? <>{children({})}</> : null;\n }\n\n if (transitionStatus === 'exited') {\n return null;\n }\n\n const transitionsStyles = Object.keys(transitions).reduce((acc, transition) => {\n acc[transition] = getTransitionStyles({\n duration: transitions[transition].duration,\n transition: transitions[transition].transition,\n timingFunction: transitions[transition].timingFunction || transitionTimingFunction,\n state: transitionStatus,\n });\n\n return acc;\n }, {});\n\n return <>{children(transitionsStyles)}</>;\n}\n\nGroupedTransition.displayName = '@mantine/core/GroupedTransition';\n"],"names":["useTransition","React","getTransitionStyles"],"mappings":";;;;;;;;;;;;AAGO,SAAS,iBAAiB,CAAC;AAClC,EAAE,WAAW;AACb,EAAE,QAAQ,GAAG,GAAG;AAChB,EAAE,YAAY,GAAG,QAAQ;AACzB,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,EAAE,cAAc;AAChB,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,CAAC,EAAE;AACH,EAAE,MAAM,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,GAAGA,2BAAa,CAAC;AAC3F,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,YAAY;AAChB,IAAI,cAAc;AAClB,IAAI,MAAM;AACV,IAAI,SAAS;AACb,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,IAAI,kBAAkB,KAAK,CAAC,EAAE;AAChC,IAAI,OAAO,OAAO,mBAAmBC,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;AACpG,GAAG;AACH,EAAE,IAAI,gBAAgB,KAAK,QAAQ,EAAE;AACrC,IAAI,OAAO,IAAI,CAAC;AAChB,GAAG;AACH,EAAE,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,UAAU,KAAK;AACjF,IAAI,GAAG,CAAC,UAAU,CAAC,GAAGC,uCAAmB,CAAC;AAC1C,MAAM,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,QAAQ;AAChD,MAAM,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,UAAU;AACpD,MAAM,cAAc,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,cAAc,IAAI,wBAAwB;AACxF,MAAM,KAAK,EAAE,gBAAgB;AAC7B,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,GAAG,CAAC;AACf,GAAG,EAAE,EAAE,CAAC,CAAC;AACT,EAAE,uBAAuBD,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAChG,CAAC;AACD,iBAAiB,CAAC,WAAW,GAAG,iCAAiC;;;;"}
@@ -13,6 +13,7 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
13
  function Transition({
14
14
  transition,
15
15
  duration = 250,
16
+ exitDuration = duration,
16
17
  mounted,
17
18
  children,
18
19
  timingFunction,
@@ -23,6 +24,7 @@ function Transition({
23
24
  }) {
24
25
  const { transitionDuration, transitionStatus, transitionTimingFunction } = useTransition.useTransition({
25
26
  mounted,
27
+ exitDuration,
26
28
  duration,
27
29
  timingFunction,
28
30
  onExit,
@@ -1 +1 @@
1
- {"version":3,"file":"Transition.js","sources":["../../../src/components/Transition/Transition.tsx"],"sourcesContent":["import React from 'react';\nimport { getTransitionStyles } from './get-transition-styles/get-transition-styles';\nimport { useTransition } from './use-transition';\nimport { MantineTransition } from './transitions';\n\nexport interface TransitionProps {\n /** Predefined transition name or transition styles */\n transition: MantineTransition;\n\n /** Transition duration in ms */\n duration?: number;\n\n /** Transition timing function, defaults to theme.transitionTimingFunction */\n timingFunction?: string;\n\n /** When true, component will be mounted */\n mounted: boolean;\n\n /** Render function with transition styles argument */\n children(styles: React.CSSProperties): React.ReactElement<any, any>;\n\n /** Calls when exit transition ends */\n onExited?: () => void;\n\n /** Calls when exit transition starts */\n onExit?: () => void;\n\n /** Calls when enter transition starts */\n onEnter?: () => void;\n\n /** Calls when enter transition ends */\n onEntered?: () => void;\n}\n\nexport function Transition({\n transition,\n duration = 250,\n mounted,\n children,\n timingFunction,\n onExit,\n onEntered,\n onEnter,\n onExited,\n}: TransitionProps) {\n const { transitionDuration, transitionStatus, transitionTimingFunction } = useTransition({\n mounted,\n duration,\n timingFunction,\n onExit,\n onEntered,\n onEnter,\n onExited,\n });\n\n if (transitionDuration === 0) {\n return mounted ? <>{children({})}</> : null;\n }\n\n return transitionStatus === 'exited' ? null : (\n <>\n {children(\n getTransitionStyles({\n transition,\n duration: transitionDuration,\n state: transitionStatus,\n timingFunction: transitionTimingFunction,\n })\n )}\n </>\n );\n}\n\nTransition.displayName = '@mantine/core/Transition';\n"],"names":["useTransition","React","getTransitionStyles"],"mappings":";;;;;;;;;;;;AAGO,SAAS,UAAU,CAAC;AAC3B,EAAE,UAAU;AACZ,EAAE,QAAQ,GAAG,GAAG;AAChB,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,EAAE,cAAc;AAChB,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,CAAC,EAAE;AACH,EAAE,MAAM,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,GAAGA,2BAAa,CAAC;AAC3F,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,IAAI,cAAc;AAClB,IAAI,MAAM;AACV,IAAI,SAAS;AACb,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,IAAI,kBAAkB,KAAK,CAAC,EAAE;AAChC,IAAI,OAAO,OAAO,mBAAmBC,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;AACpG,GAAG;AACH,EAAE,OAAO,gBAAgB,KAAK,QAAQ,GAAG,IAAI,mBAAmBA,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAACC,uCAAmB,CAAC;AACvI,IAAI,UAAU;AACd,IAAI,QAAQ,EAAE,kBAAkB;AAChC,IAAI,KAAK,EAAE,gBAAgB;AAC3B,IAAI,cAAc,EAAE,wBAAwB;AAC5C,GAAG,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AACD,UAAU,CAAC,WAAW,GAAG,0BAA0B;;;;"}
1
+ {"version":3,"file":"Transition.js","sources":["../../../src/components/Transition/Transition.tsx"],"sourcesContent":["import React from 'react';\nimport { getTransitionStyles } from './get-transition-styles/get-transition-styles';\nimport { useTransition } from './use-transition';\nimport { MantineTransition } from './transitions';\n\nexport interface TransitionProps {\n /** Predefined transition name or transition styles */\n transition: MantineTransition;\n\n /** Transition duration in ms */\n duration?: number;\n\n /** Exit transition duration in ms */\n exitDuration?: number;\n\n /** Transition timing function, defaults to theme.transitionTimingFunction */\n timingFunction?: string;\n\n /** When true, component will be mounted */\n mounted: boolean;\n\n /** Render function with transition styles argument */\n children(styles: React.CSSProperties): React.ReactElement<any, any>;\n\n /** Calls when exit transition ends */\n onExited?: () => void;\n\n /** Calls when exit transition starts */\n onExit?: () => void;\n\n /** Calls when enter transition starts */\n onEnter?: () => void;\n\n /** Calls when enter transition ends */\n onEntered?: () => void;\n}\n\nexport function Transition({\n transition,\n duration = 250,\n exitDuration = duration,\n mounted,\n children,\n timingFunction,\n onExit,\n onEntered,\n onEnter,\n onExited,\n}: TransitionProps) {\n const { transitionDuration, transitionStatus, transitionTimingFunction } = useTransition({\n mounted,\n exitDuration,\n duration,\n timingFunction,\n onExit,\n onEntered,\n onEnter,\n onExited,\n });\n\n if (transitionDuration === 0) {\n return mounted ? <>{children({})}</> : null;\n }\n\n return transitionStatus === 'exited' ? null : (\n <>\n {children(\n getTransitionStyles({\n transition,\n duration: transitionDuration,\n state: transitionStatus,\n timingFunction: transitionTimingFunction,\n })\n )}\n </>\n );\n}\n\nTransition.displayName = '@mantine/core/Transition';\n"],"names":["useTransition","React","getTransitionStyles"],"mappings":";;;;;;;;;;;;AAGO,SAAS,UAAU,CAAC;AAC3B,EAAE,UAAU;AACZ,EAAE,QAAQ,GAAG,GAAG;AAChB,EAAE,YAAY,GAAG,QAAQ;AACzB,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,EAAE,cAAc;AAChB,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,OAAO;AACT,EAAE,QAAQ;AACV,CAAC,EAAE;AACH,EAAE,MAAM,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,GAAGA,2BAAa,CAAC;AAC3F,IAAI,OAAO;AACX,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,IAAI,cAAc;AAClB,IAAI,MAAM;AACV,IAAI,SAAS;AACb,IAAI,OAAO;AACX,IAAI,QAAQ;AACZ,GAAG,CAAC,CAAC;AACL,EAAE,IAAI,kBAAkB,KAAK,CAAC,EAAE;AAChC,IAAI,OAAO,OAAO,mBAAmBC,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;AACpG,GAAG;AACH,EAAE,OAAO,gBAAgB,KAAK,QAAQ,GAAG,IAAI,mBAAmBA,cAAK,CAAC,aAAa,CAACA,cAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAACC,uCAAmB,CAAC;AACvI,IAAI,UAAU;AACd,IAAI,QAAQ,EAAE,kBAAkB;AAChC,IAAI,KAAK,EAAE,gBAAgB;AAC3B,IAAI,cAAc,EAAE,wBAAwB;AAC5C,GAAG,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AACD,UAAU,CAAC,WAAW,GAAG,0BAA0B;;;;"}
@@ -8,6 +8,7 @@ var styles = require('@mantine/styles');
8
8
 
9
9
  function useTransition({
10
10
  duration,
11
+ exitDuration,
11
12
  timingFunction,
12
13
  mounted,
13
14
  onEnter,
@@ -17,15 +18,17 @@ function useTransition({
17
18
  }) {
18
19
  const theme = styles.useMantineTheme();
19
20
  const reduceMotion = hooks.useReducedMotion();
20
- const transitionDuration = reduceMotion ? 0 : duration;
21
21
  const [transitionStatus, setStatus] = React.useState(mounted ? "entered" : "exited");
22
+ const [transitionDuration, setTransitionDuration] = React.useState(reduceMotion ? 0 : duration);
22
23
  const timeoutRef = React.useRef(-1);
23
24
  const handleStateChange = (shouldMount) => {
24
25
  const preHandler = shouldMount ? onEnter : onExit;
25
26
  const handler = shouldMount ? onEntered : onExited;
26
27
  setStatus(shouldMount ? "pre-entering" : "pre-exiting");
27
28
  window.clearTimeout(timeoutRef.current);
28
- if (duration === 0) {
29
+ const _duration = reduceMotion ? 0 : shouldMount ? duration : exitDuration;
30
+ setTransitionDuration(_duration);
31
+ if (_duration === 0) {
29
32
  typeof preHandler === "function" && preHandler();
30
33
  typeof handler === "function" && handler();
31
34
  setStatus(shouldMount ? "entered" : "exited");
@@ -38,7 +41,7 @@ function useTransition({
38
41
  window.clearTimeout(preStateTimeout);
39
42
  typeof handler === "function" && handler();
40
43
  setStatus(shouldMount ? "entered" : "exited");
41
- }, transitionDuration);
44
+ }, _duration);
42
45
  }
43
46
  };
44
47
  hooks.useDidUpdate(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"use-transition.js","sources":["../../../src/components/Transition/use-transition.ts"],"sourcesContent":["import { useState, useEffect, useRef } from 'react';\nimport { useReducedMotion, useDidUpdate } from '@mantine/hooks';\nimport { useMantineTheme } from '@mantine/styles';\n\nexport type TransitionStatus =\n | 'entered'\n | 'exited'\n | 'entering'\n | 'exiting'\n | 'pre-exiting'\n | 'pre-entering';\n\ninterface UseTransition {\n duration: number;\n timingFunction: string;\n mounted: boolean;\n onEnter?(): void;\n onExit?(): void;\n onEntered?(): void;\n onExited?(): void;\n}\n\nexport function useTransition({\n duration,\n timingFunction,\n mounted,\n onEnter,\n onExit,\n onEntered,\n onExited,\n}: UseTransition) {\n const theme = useMantineTheme();\n const reduceMotion = useReducedMotion();\n const transitionDuration = reduceMotion ? 0 : duration;\n const [transitionStatus, setStatus] = useState<TransitionStatus>(mounted ? 'entered' : 'exited');\n const timeoutRef = useRef<number>(-1);\n\n const handleStateChange = (shouldMount: boolean) => {\n const preHandler = shouldMount ? onEnter : onExit;\n const handler = shouldMount ? onEntered : onExited;\n\n setStatus(shouldMount ? 'pre-entering' : 'pre-exiting');\n window.clearTimeout(timeoutRef.current);\n\n if (duration === 0) {\n typeof preHandler === 'function' && preHandler();\n typeof handler === 'function' && handler();\n setStatus(shouldMount ? 'entered' : 'exited');\n } else {\n const preStateTimeout = window.setTimeout(() => {\n typeof preHandler === 'function' && preHandler();\n setStatus(shouldMount ? 'entering' : 'exiting');\n }, 10);\n\n timeoutRef.current = window.setTimeout(() => {\n window.clearTimeout(preStateTimeout);\n typeof handler === 'function' && handler();\n setStatus(shouldMount ? 'entered' : 'exited');\n }, transitionDuration);\n }\n };\n\n useDidUpdate(() => {\n handleStateChange(mounted);\n }, [mounted]);\n\n useEffect(() => () => window.clearTimeout(timeoutRef.current), []);\n\n return {\n transitionDuration,\n transitionStatus,\n transitionTimingFunction: timingFunction || theme.transitionTimingFunction,\n };\n}\n"],"names":["useMantineTheme","useReducedMotion","useState","useRef","useDidUpdate","useEffect"],"mappings":";;;;;;;;AAGO,SAAS,aAAa,CAAC;AAC9B,EAAE,QAAQ;AACV,EAAE,cAAc;AAChB,EAAE,OAAO;AACT,EAAE,OAAO;AACT,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,QAAQ;AACV,CAAC,EAAE;AACH,EAAE,MAAM,KAAK,GAAGA,sBAAe,EAAE,CAAC;AAClC,EAAE,MAAM,YAAY,GAAGC,sBAAgB,EAAE,CAAC;AAC1C,EAAE,MAAM,kBAAkB,GAAG,YAAY,GAAG,CAAC,GAAG,QAAQ,CAAC;AACzD,EAAE,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC,GAAGC,cAAQ,CAAC,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;AACjF,EAAE,MAAM,UAAU,GAAGC,YAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAChC,EAAE,MAAM,iBAAiB,GAAG,CAAC,WAAW,KAAK;AAC7C,IAAI,MAAM,UAAU,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AACtD,IAAI,MAAM,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AACvD,IAAI,SAAS,CAAC,WAAW,GAAG,cAAc,GAAG,aAAa,CAAC,CAAC;AAC5D,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5C,IAAI,IAAI,QAAQ,KAAK,CAAC,EAAE;AACxB,MAAM,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,EAAE,CAAC;AACvD,MAAM,OAAO,OAAO,KAAK,UAAU,IAAI,OAAO,EAAE,CAAC;AACjD,MAAM,SAAS,CAAC,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;AACpD,KAAK,MAAM;AACX,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACtD,QAAQ,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,EAAE,CAAC;AACzD,QAAQ,SAAS,CAAC,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;AACxD,OAAO,EAAE,EAAE,CAAC,CAAC;AACb,MAAM,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACnD,QAAQ,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;AAC7C,QAAQ,OAAO,OAAO,KAAK,UAAU,IAAI,OAAO,EAAE,CAAC;AACnD,QAAQ,SAAS,CAAC,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;AACtD,OAAO,EAAE,kBAAkB,CAAC,CAAC;AAC7B,KAAK;AACL,GAAG,CAAC;AACJ,EAAEC,kBAAY,CAAC,MAAM;AACrB,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAC/B,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AAChB,EAAEC,eAAS,CAAC,MAAM,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;AACrE,EAAE,OAAO;AACT,IAAI,kBAAkB;AACtB,IAAI,gBAAgB;AACpB,IAAI,wBAAwB,EAAE,cAAc,IAAI,KAAK,CAAC,wBAAwB;AAC9E,GAAG,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"use-transition.js","sources":["../../../src/components/Transition/use-transition.ts"],"sourcesContent":["import { useState, useEffect, useRef } from 'react';\nimport { useReducedMotion, useDidUpdate } from '@mantine/hooks';\nimport { useMantineTheme } from '@mantine/styles';\n\nexport type TransitionStatus =\n | 'entered'\n | 'exited'\n | 'entering'\n | 'exiting'\n | 'pre-exiting'\n | 'pre-entering';\n\ninterface UseTransition {\n duration: number;\n exitDuration: number;\n timingFunction: string;\n mounted: boolean;\n onEnter?(): void;\n onExit?(): void;\n onEntered?(): void;\n onExited?(): void;\n}\n\nexport function useTransition({\n duration,\n exitDuration,\n timingFunction,\n mounted,\n onEnter,\n onExit,\n onEntered,\n onExited,\n}: UseTransition) {\n const theme = useMantineTheme();\n const reduceMotion = useReducedMotion();\n const [transitionStatus, setStatus] = useState<TransitionStatus>(mounted ? 'entered' : 'exited');\n const [transitionDuration, setTransitionDuration] = useState(reduceMotion ? 0 : duration);\n const timeoutRef = useRef<number>(-1);\n\n const handleStateChange = (shouldMount: boolean) => {\n const preHandler = shouldMount ? onEnter : onExit;\n const handler = shouldMount ? onEntered : onExited;\n\n setStatus(shouldMount ? 'pre-entering' : 'pre-exiting');\n window.clearTimeout(timeoutRef.current);\n const _duration = reduceMotion ? 0 : shouldMount ? duration : exitDuration;\n setTransitionDuration(_duration);\n\n if (_duration === 0) {\n typeof preHandler === 'function' && preHandler();\n typeof handler === 'function' && handler();\n setStatus(shouldMount ? 'entered' : 'exited');\n } else {\n const preStateTimeout = window.setTimeout(() => {\n typeof preHandler === 'function' && preHandler();\n setStatus(shouldMount ? 'entering' : 'exiting');\n }, 10);\n\n timeoutRef.current = window.setTimeout(() => {\n window.clearTimeout(preStateTimeout);\n typeof handler === 'function' && handler();\n setStatus(shouldMount ? 'entered' : 'exited');\n }, _duration);\n }\n };\n\n useDidUpdate(() => {\n handleStateChange(mounted);\n }, [mounted]);\n\n useEffect(() => () => window.clearTimeout(timeoutRef.current), []);\n\n return {\n transitionDuration,\n transitionStatus,\n transitionTimingFunction: timingFunction || theme.transitionTimingFunction,\n };\n}\n"],"names":["useMantineTheme","useReducedMotion","useState","useRef","useDidUpdate","useEffect"],"mappings":";;;;;;;;AAGO,SAAS,aAAa,CAAC;AAC9B,EAAE,QAAQ;AACV,EAAE,YAAY;AACd,EAAE,cAAc;AAChB,EAAE,OAAO;AACT,EAAE,OAAO;AACT,EAAE,MAAM;AACR,EAAE,SAAS;AACX,EAAE,QAAQ;AACV,CAAC,EAAE;AACH,EAAE,MAAM,KAAK,GAAGA,sBAAe,EAAE,CAAC;AAClC,EAAE,MAAM,YAAY,GAAGC,sBAAgB,EAAE,CAAC;AAC1C,EAAE,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC,GAAGC,cAAQ,CAAC,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;AACjF,EAAE,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAGA,cAAQ,CAAC,YAAY,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;AAC5F,EAAE,MAAM,UAAU,GAAGC,YAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAChC,EAAE,MAAM,iBAAiB,GAAG,CAAC,WAAW,KAAK;AAC7C,IAAI,MAAM,UAAU,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AACtD,IAAI,MAAM,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AACvD,IAAI,SAAS,CAAC,WAAW,GAAG,cAAc,GAAG,aAAa,CAAC,CAAC;AAC5D,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5C,IAAI,MAAM,SAAS,GAAG,YAAY,GAAG,CAAC,GAAG,WAAW,GAAG,QAAQ,GAAG,YAAY,CAAC;AAC/E,IAAI,qBAAqB,CAAC,SAAS,CAAC,CAAC;AACrC,IAAI,IAAI,SAAS,KAAK,CAAC,EAAE;AACzB,MAAM,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,EAAE,CAAC;AACvD,MAAM,OAAO,OAAO,KAAK,UAAU,IAAI,OAAO,EAAE,CAAC;AACjD,MAAM,SAAS,CAAC,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;AACpD,KAAK,MAAM;AACX,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACtD,QAAQ,OAAO,UAAU,KAAK,UAAU,IAAI,UAAU,EAAE,CAAC;AACzD,QAAQ,SAAS,CAAC,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;AACxD,OAAO,EAAE,EAAE,CAAC,CAAC;AACb,MAAM,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;AACnD,QAAQ,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;AAC7C,QAAQ,OAAO,OAAO,KAAK,UAAU,IAAI,OAAO,EAAE,CAAC;AACnD,QAAQ,SAAS,CAAC,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;AACtD,OAAO,EAAE,SAAS,CAAC,CAAC;AACpB,KAAK;AACL,GAAG,CAAC;AACJ,EAAEC,kBAAY,CAAC,MAAM;AACrB,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAC/B,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AAChB,EAAEC,eAAS,CAAC,MAAM,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;AACrE,EAAE,OAAO;AACT,IAAI,kBAAkB;AACtB,IAAI,gBAAgB;AACpB,IAAI,wBAAwB,EAAE,cAAc,IAAI,KAAK,CAAC,wBAAwB;AAC9E,GAAG,CAAC;AACJ;;;;"}
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- function groupSortData({ data }) {
5
+ function groupOptions({ data }) {
6
6
  const sortedData = [];
7
- const ungroupedData = [];
7
+ const unGroupedData = [];
8
8
  const groupedData = data.reduce((acc, item, index) => {
9
9
  if (item.group) {
10
10
  if (acc[item.group])
@@ -12,16 +12,16 @@ function groupSortData({ data }) {
12
12
  else
13
13
  acc[item.group] = [index];
14
14
  } else {
15
- ungroupedData.push(index);
15
+ unGroupedData.push(index);
16
16
  }
17
17
  return acc;
18
18
  }, {});
19
19
  Object.keys(groupedData).forEach((groupName) => {
20
20
  sortedData.push(...groupedData[groupName].map((index) => data[index]));
21
21
  });
22
- sortedData.push(...ungroupedData.map((itemIndex) => data[itemIndex]));
22
+ sortedData.push(...unGroupedData.map((itemIndex) => data[itemIndex]));
23
23
  return sortedData;
24
24
  }
25
25
 
26
- exports.groupSortData = groupSortData;
27
- //# sourceMappingURL=group-sort-data.js.map
26
+ exports.groupOptions = groupOptions;
27
+ //# sourceMappingURL=group-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group-options.js","sources":["../../../src/utils/group-options/group-options.ts"],"sourcesContent":["interface GroupData {\n data: { group?: string }[];\n}\n\nexport function groupOptions({ data }: GroupData) {\n const sortedData = [];\n const unGroupedData = [];\n const groupedData = data.reduce((acc, item, index) => {\n if (item.group) {\n if (acc[item.group]) acc[item.group].push(index);\n else acc[item.group] = [index];\n } else {\n unGroupedData.push(index);\n }\n return acc;\n }, {});\n\n Object.keys(groupedData).forEach((groupName) => {\n sortedData.push(...groupedData[groupName].map((index) => data[index]));\n });\n\n sortedData.push(...unGroupedData.map((itemIndex) => data[itemIndex]));\n\n return sortedData;\n}\n"],"names":[],"mappings":";;;;AAAO,SAAS,YAAY,CAAC,EAAE,IAAI,EAAE,EAAE;AACvC,EAAE,MAAM,UAAU,GAAG,EAAE,CAAC;AACxB,EAAE,MAAM,aAAa,GAAG,EAAE,CAAC;AAC3B,EAAE,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,KAAK;AACxD,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;AACpB,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;AACzB,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACpC;AACA,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAClC,KAAK,MAAM;AACX,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,KAAK;AACL,IAAI,OAAO,GAAG,CAAC;AACf,GAAG,EAAE,EAAE,CAAC,CAAC;AACT,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK;AAClD,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC3E,GAAG,CAAC,CAAC;AACL,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACxE,EAAE,OAAO,UAAU,CAAC;AACpB;;;;"}
@@ -50,6 +50,7 @@ const Accordion = forwardRef((_a, ref) => {
50
50
  iconPosition = "left",
51
51
  offsetIcon = true,
52
52
  iconSize = 24,
53
+ order = 3,
53
54
  icon,
54
55
  classNames,
55
56
  styles,
@@ -66,6 +67,7 @@ const Accordion = forwardRef((_a, ref) => {
66
67
  "iconPosition",
67
68
  "offsetIcon",
68
69
  "iconSize",
70
+ "order",
69
71
  "icon",
70
72
  "classNames",
71
73
  "styles",
@@ -98,7 +100,8 @@ const Accordion = forwardRef((_a, ref) => {
98
100
  onControlKeyDown: handleItemKeydown(index),
99
101
  controlRef: mergeRefs(assignControlRef(index), (_c = item.props) == null ? void 0 : _c.controlRef),
100
102
  offsetIcon,
101
- iconSize
103
+ iconSize,
104
+ order
102
105
  }));
103
106
  });
104
107
  return /* @__PURE__ */ React.createElement(Box, __spreadValues({