@economic/taco 2.49.0-server.4 → 2.49.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (645) hide show
  1. package/dist/components/Table3/components/Row/Editing/CreateNewRow.d.ts +0 -1
  2. package/dist/components/Table3/features/useTableEditing.d.ts +2 -2
  3. package/dist/components/Table3/types.d.ts +1 -1
  4. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js +17 -17
  5. package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js.map +1 -1
  6. package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js +24 -32
  7. package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js.map +1 -1
  8. package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js +61 -84
  9. package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js.map +1 -1
  10. package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js +15 -16
  11. package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js.map +1 -1
  12. package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js +13 -12
  13. package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js.map +1 -1
  14. package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js +68 -104
  15. package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js.map +1 -1
  16. package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js +29 -38
  17. package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js.map +1 -1
  18. package/dist/esm/packages/taco/src/charts/components/Donut/util.js +2 -2
  19. package/dist/esm/packages/taco/src/charts/components/Donut/util.js.map +1 -1
  20. package/dist/esm/packages/taco/src/charts/components/Legend.js +37 -45
  21. package/dist/esm/packages/taco/src/charts/components/Legend.js.map +1 -1
  22. package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js +24 -32
  23. package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js.map +1 -1
  24. package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js +3 -5
  25. package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js.map +1 -1
  26. package/dist/esm/packages/taco/src/charts/components/Tooltip.js +25 -26
  27. package/dist/esm/packages/taco/src/charts/components/Tooltip.js.map +1 -1
  28. package/dist/esm/packages/taco/src/charts/utils/color.js +12 -13
  29. package/dist/esm/packages/taco/src/charts/utils/color.js.map +1 -1
  30. package/dist/esm/packages/taco/src/charts/utils/common.js +26 -39
  31. package/dist/esm/packages/taco/src/charts/utils/common.js.map +1 -1
  32. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js +31 -30
  33. package/dist/esm/packages/taco/src/components/Accordion/Accordion.js.map +1 -1
  34. package/dist/esm/packages/taco/src/components/Alert/Alert.js +9 -7
  35. package/dist/esm/packages/taco/src/components/Alert/Alert.js.map +1 -1
  36. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js +13 -14
  37. package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js.map +1 -1
  38. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js +2 -2
  39. package/dist/esm/packages/taco/src/components/AlertDialog/Context.js.map +1 -1
  40. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js +9 -10
  41. package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js.map +1 -1
  42. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js +4 -4
  43. package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js.map +1 -1
  44. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js +6 -5
  45. package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js.map +1 -1
  46. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js +2 -2
  47. package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js.map +1 -1
  48. package/dist/esm/packages/taco/src/components/Badge/Badge.js +25 -21
  49. package/dist/esm/packages/taco/src/components/Badge/Badge.js.map +1 -1
  50. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js +14 -12
  51. package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js.map +1 -1
  52. package/dist/esm/packages/taco/src/components/Banner/Banner.js +10 -7
  53. package/dist/esm/packages/taco/src/components/Banner/Banner.js.map +1 -1
  54. package/dist/esm/packages/taco/src/components/Banner/util.js +3 -3
  55. package/dist/esm/packages/taco/src/components/Banner/util.js.map +1 -1
  56. package/dist/esm/packages/taco/src/components/Button/Button.js +28 -26
  57. package/dist/esm/packages/taco/src/components/Button/Button.js.map +1 -1
  58. package/dist/esm/packages/taco/src/components/Button/util.js +24 -25
  59. package/dist/esm/packages/taco/src/components/Button/util.js.map +1 -1
  60. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js +71 -75
  61. package/dist/esm/packages/taco/src/components/Calendar/Calendar.js.map +1 -1
  62. package/dist/esm/packages/taco/src/components/Card/Card.js +15 -14
  63. package/dist/esm/packages/taco/src/components/Card/Card.js.map +1 -1
  64. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js +22 -24
  65. package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
  66. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js +23 -21
  67. package/dist/esm/packages/taco/src/components/Combobox/Combobox.js.map +1 -1
  68. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js +64 -76
  69. package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js.map +1 -1
  70. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js +57 -60
  71. package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js.map +1 -1
  72. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js +28 -27
  73. package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
  74. package/dist/esm/packages/taco/src/components/Dialog/Context.js +4 -4
  75. package/dist/esm/packages/taco/src/components/Dialog/Context.js.map +1 -1
  76. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js +39 -54
  77. package/dist/esm/packages/taco/src/components/Dialog/Dialog.js.map +1 -1
  78. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js +38 -36
  79. package/dist/esm/packages/taco/src/components/Dialog/components/Content.js.map +1 -1
  80. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js +3 -3
  81. package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js.map +1 -1
  82. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js +2 -2
  83. package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js.map +1 -1
  84. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js +6 -5
  85. package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js.map +1 -1
  86. package/dist/esm/packages/taco/src/components/Dialog/util.js +3 -7
  87. package/dist/esm/packages/taco/src/components/Dialog/util.js.map +1 -1
  88. package/dist/esm/packages/taco/src/components/Drawer/Context.js +5 -5
  89. package/dist/esm/packages/taco/src/components/Drawer/Context.js.map +1 -1
  90. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js +51 -61
  91. package/dist/esm/packages/taco/src/components/Drawer/Drawer.js.map +1 -1
  92. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js +145 -134
  93. package/dist/esm/packages/taco/src/components/Drawer/components/Content.js.map +1 -1
  94. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js +1 -1
  95. package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js.map +1 -1
  96. package/dist/esm/packages/taco/src/components/Drawer/util.js +5 -5
  97. package/dist/esm/packages/taco/src/components/Drawer/util.js.map +1 -1
  98. package/dist/esm/packages/taco/src/components/Field/Field.js +12 -14
  99. package/dist/esm/packages/taco/src/components/Field/Field.js.map +1 -1
  100. package/dist/esm/packages/taco/src/components/Form/Form.js +6 -7
  101. package/dist/esm/packages/taco/src/components/Form/Form.js.map +1 -1
  102. package/dist/esm/packages/taco/src/components/Group/Group.js +7 -9
  103. package/dist/esm/packages/taco/src/components/Group/Group.js.map +1 -1
  104. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js +36 -37
  105. package/dist/esm/packages/taco/src/components/Hanger/Hanger.js.map +1 -1
  106. package/dist/esm/packages/taco/src/components/Header/Header.js +2 -2
  107. package/dist/esm/packages/taco/src/components/Header/Header.js.map +1 -1
  108. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js +10 -14
  109. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js.map +1 -1
  110. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js +4 -5
  111. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js.map +1 -1
  112. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js +9 -7
  113. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js.map +1 -1
  114. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js +9 -9
  115. package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js.map +1 -1
  116. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js +46 -66
  117. package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js.map +1 -1
  118. package/dist/esm/packages/taco/src/components/Header/components/Button.js +8 -12
  119. package/dist/esm/packages/taco/src/components/Header/components/Button.js.map +1 -1
  120. package/dist/esm/packages/taco/src/components/Header/components/Link.js +18 -22
  121. package/dist/esm/packages/taco/src/components/Header/components/Link.js.map +1 -1
  122. package/dist/esm/packages/taco/src/components/Header/components/Logo.js +4 -4
  123. package/dist/esm/packages/taco/src/components/Header/components/Logo.js.map +1 -1
  124. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js +2 -2
  125. package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js.map +1 -1
  126. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js +9 -10
  127. package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js.map +1 -1
  128. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js +2 -2
  129. package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js.map +1 -1
  130. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js +7 -5
  131. package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js.map +1 -1
  132. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js +1 -1
  133. package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js.map +1 -1
  134. package/dist/esm/packages/taco/src/components/Icon/Icon.js +7 -7
  135. package/dist/esm/packages/taco/src/components/Icon/Icon.js.map +1 -1
  136. package/dist/esm/packages/taco/src/components/Icon/components/index.js +4 -4
  137. package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
  138. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js +23 -22
  139. package/dist/esm/packages/taco/src/components/IconButton/IconButton.js.map +1 -1
  140. package/dist/esm/packages/taco/src/components/Input/Input.js +44 -45
  141. package/dist/esm/packages/taco/src/components/Input/Input.js.map +1 -1
  142. package/dist/esm/packages/taco/src/components/Input/util.js +5 -8
  143. package/dist/esm/packages/taco/src/components/Input/util.js.map +1 -1
  144. package/dist/esm/packages/taco/src/components/Layout/Layout.js +5 -7
  145. package/dist/esm/packages/taco/src/components/Layout/Layout.js.map +1 -1
  146. package/dist/esm/packages/taco/src/components/Layout/components/Content.js +2 -2
  147. package/dist/esm/packages/taco/src/components/Layout/components/Content.js.map +1 -1
  148. package/dist/esm/packages/taco/src/components/Layout/components/Context.js +2 -4
  149. package/dist/esm/packages/taco/src/components/Layout/components/Context.js.map +1 -1
  150. package/dist/esm/packages/taco/src/components/Layout/components/Page.js +2 -2
  151. package/dist/esm/packages/taco/src/components/Layout/components/Page.js.map +1 -1
  152. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js +27 -34
  153. package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js.map +1 -1
  154. package/dist/esm/packages/taco/src/components/Layout/components/Top.js +6 -9
  155. package/dist/esm/packages/taco/src/components/Layout/components/Top.js.map +1 -1
  156. package/dist/esm/packages/taco/src/components/List/components/Button.js +1 -1
  157. package/dist/esm/packages/taco/src/components/List/components/Button.js.map +1 -1
  158. package/dist/esm/packages/taco/src/components/List/components/Collapsible.js +7 -10
  159. package/dist/esm/packages/taco/src/components/List/components/Collapsible.js.map +1 -1
  160. package/dist/esm/packages/taco/src/components/List/components/Group.js +1 -1
  161. package/dist/esm/packages/taco/src/components/List/components/Group.js.map +1 -1
  162. package/dist/esm/packages/taco/src/components/List/components/Item.js +13 -15
  163. package/dist/esm/packages/taco/src/components/List/components/Item.js.map +1 -1
  164. package/dist/esm/packages/taco/src/components/List/components/Link.js +3 -3
  165. package/dist/esm/packages/taco/src/components/List/components/Link.js.map +1 -1
  166. package/dist/esm/packages/taco/src/components/List/components/Toggle.js +27 -29
  167. package/dist/esm/packages/taco/src/components/List/components/Toggle.js.map +1 -1
  168. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js +26 -21
  169. package/dist/esm/packages/taco/src/components/Listbox/Listbox.js.map +1 -1
  170. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js +70 -82
  171. package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js.map +1 -1
  172. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js +51 -56
  173. package/dist/esm/packages/taco/src/components/Listbox/useListbox.js.map +1 -1
  174. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js +65 -83
  175. package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js.map +1 -1
  176. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js +10 -9
  177. package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js.map +1 -1
  178. package/dist/esm/packages/taco/src/components/Listbox/util.js +48 -78
  179. package/dist/esm/packages/taco/src/components/Listbox/util.js.map +1 -1
  180. package/dist/esm/packages/taco/src/components/Menu/Context.js +2 -2
  181. package/dist/esm/packages/taco/src/components/Menu/Context.js.map +1 -1
  182. package/dist/esm/packages/taco/src/components/Menu/Menu.js +26 -42
  183. package/dist/esm/packages/taco/src/components/Menu/Menu.js.map +1 -1
  184. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js +8 -8
  185. package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js.map +1 -1
  186. package/dist/esm/packages/taco/src/components/Menu/components/Content.js +22 -28
  187. package/dist/esm/packages/taco/src/components/Menu/components/Content.js.map +1 -1
  188. package/dist/esm/packages/taco/src/components/Menu/components/Header.js +3 -3
  189. package/dist/esm/packages/taco/src/components/Menu/components/Header.js.map +1 -1
  190. package/dist/esm/packages/taco/src/components/Menu/components/Item.js +32 -32
  191. package/dist/esm/packages/taco/src/components/Menu/components/Item.js.map +1 -1
  192. package/dist/esm/packages/taco/src/components/Menu/components/Link.js +10 -10
  193. package/dist/esm/packages/taco/src/components/Menu/components/Link.js.map +1 -1
  194. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js +16 -15
  195. package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js.map +1 -1
  196. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js +1 -1
  197. package/dist/esm/packages/taco/src/components/Menu/components/Separator.js.map +1 -1
  198. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js +7 -7
  199. package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js.map +1 -1
  200. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js +5 -5
  201. package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js.map +1 -1
  202. package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js +6 -6
  203. package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js.map +1 -1
  204. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js +36 -41
  205. package/dist/esm/packages/taco/src/components/Navigation/Navigation.js.map +1 -1
  206. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js +6 -6
  207. package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js.map +1 -1
  208. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js +6 -6
  209. package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js.map +1 -1
  210. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js +11 -14
  211. package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js.map +1 -1
  212. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js +24 -31
  213. package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js.map +1 -1
  214. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js +7 -7
  215. package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js.map +1 -1
  216. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js +7 -9
  217. package/dist/esm/packages/taco/src/components/Navigation2/components/util.js.map +1 -1
  218. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js +51 -48
  219. package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js.map +1 -1
  220. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js +23 -26
  221. package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js.map +1 -1
  222. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js +39 -53
  223. package/dist/esm/packages/taco/src/components/Pagination/Pagination.js.map +1 -1
  224. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js +7 -17
  225. package/dist/esm/packages/taco/src/components/Pagination/usePagination.js.map +1 -1
  226. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js +9 -8
  227. package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js.map +1 -1
  228. package/dist/esm/packages/taco/src/components/Popover/Popover.js +43 -45
  229. package/dist/esm/packages/taco/src/components/Popover/Popover.js.map +1 -1
  230. package/dist/esm/packages/taco/src/components/Popover/Primitives.js +1 -1
  231. package/dist/esm/packages/taco/src/components/Popover/Primitives.js.map +1 -1
  232. package/dist/esm/packages/taco/src/components/Popover/util.js +1 -3
  233. package/dist/esm/packages/taco/src/components/Popover/util.js.map +1 -1
  234. package/dist/esm/packages/taco/src/components/Progress/Progress.js +11 -13
  235. package/dist/esm/packages/taco/src/components/Progress/Progress.js.map +1 -1
  236. package/dist/esm/packages/taco/src/components/Provider/Localization.js +12 -13
  237. package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
  238. package/dist/esm/packages/taco/src/components/Provider/Provider.js +8 -8
  239. package/dist/esm/packages/taco/src/components/Provider/Provider.js.map +1 -1
  240. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js +47 -54
  241. package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js.map +1 -1
  242. package/dist/esm/packages/taco/src/components/RadioGroup/util.js +1 -7
  243. package/dist/esm/packages/taco/src/components/RadioGroup/util.js.map +1 -1
  244. package/dist/esm/packages/taco/src/components/Report/Report.js +5 -7
  245. package/dist/esm/packages/taco/src/components/Report/Report.js.map +1 -1
  246. package/dist/esm/packages/taco/src/components/Report/useReport.js +1 -1
  247. package/dist/esm/packages/taco/src/components/Report/useReport.js.map +1 -1
  248. package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js +13 -17
  249. package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js.map +1 -1
  250. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js +11 -11
  251. package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js.map +1 -1
  252. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js +39 -44
  253. package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js.map +1 -1
  254. package/dist/esm/packages/taco/src/components/Select/Select.js +31 -28
  255. package/dist/esm/packages/taco/src/components/Select/Select.js.map +1 -1
  256. package/dist/esm/packages/taco/src/components/Select/useSelect.js +70 -79
  257. package/dist/esm/packages/taco/src/components/Select/useSelect.js.map +1 -1
  258. package/dist/esm/packages/taco/src/components/Select2/Select2.js +121 -154
  259. package/dist/esm/packages/taco/src/components/Select2/Select2.js.map +1 -1
  260. package/dist/esm/packages/taco/src/components/Select2/components/Collection.js +4 -2
  261. package/dist/esm/packages/taco/src/components/Select2/components/Collection.js.map +1 -1
  262. package/dist/esm/packages/taco/src/components/Select2/components/Context.js +2 -4
  263. package/dist/esm/packages/taco/src/components/Select2/components/Context.js.map +1 -1
  264. package/dist/esm/packages/taco/src/components/Select2/components/Create.js +41 -45
  265. package/dist/esm/packages/taco/src/components/Select2/components/Create.js.map +1 -1
  266. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js +129 -145
  267. package/dist/esm/packages/taco/src/components/Select2/components/Edit.js.map +1 -1
  268. package/dist/esm/packages/taco/src/components/Select2/components/Group.js +8 -8
  269. package/dist/esm/packages/taco/src/components/Select2/components/Group.js.map +1 -1
  270. package/dist/esm/packages/taco/src/components/Select2/components/Option.js +30 -29
  271. package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
  272. package/dist/esm/packages/taco/src/components/Select2/components/Search.js +10 -9
  273. package/dist/esm/packages/taco/src/components/Select2/components/Search.js.map +1 -1
  274. package/dist/esm/packages/taco/src/components/Select2/components/Title.js +2 -2
  275. package/dist/esm/packages/taco/src/components/Select2/components/Title.js.map +1 -1
  276. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js +128 -136
  277. package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
  278. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js +23 -32
  279. package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js.map +1 -1
  280. package/dist/esm/packages/taco/src/components/Select2/utilities.js +6 -13
  281. package/dist/esm/packages/taco/src/components/Select2/utilities.js.map +1 -1
  282. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js +13 -16
  283. package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
  284. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js +12 -17
  285. package/dist/esm/packages/taco/src/components/Spinner/Spinner.js.map +1 -1
  286. package/dist/esm/packages/taco/src/components/Switch/Switch.js +14 -14
  287. package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
  288. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js +23 -28
  289. package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js.map +1 -1
  290. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js +3 -7
  291. package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js.map +1 -1
  292. package/dist/esm/packages/taco/src/components/Table/components/Table.js +18 -22
  293. package/dist/esm/packages/taco/src/components/Table/components/Table.js.map +1 -1
  294. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js +92 -100
  295. package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js.map +1 -1
  296. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js +118 -136
  297. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js.map +1 -1
  298. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js +55 -55
  299. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
  300. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js +41 -35
  301. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
  302. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js +71 -77
  303. package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
  304. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js +30 -56
  305. package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js.map +1 -1
  306. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js +142 -151
  307. package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js.map +1 -1
  308. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js +20 -22
  309. package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  310. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js +12 -9
  311. package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js.map +1 -1
  312. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js +41 -41
  313. package/dist/esm/packages/taco/src/components/Table/util/renderRow.js.map +1 -1
  314. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js +14 -16
  315. package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js.map +1 -1
  316. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js +26 -32
  317. package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js.map +1 -1
  318. package/dist/esm/packages/taco/src/components/Table/util.js +30 -37
  319. package/dist/esm/packages/taco/src/components/Table/util.js.map +1 -1
  320. package/dist/esm/packages/taco/src/components/Table3/Table3.js +10 -13
  321. package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
  322. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js +14 -13
  323. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js.map +1 -1
  324. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js +23 -21
  325. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js.map +1 -1
  326. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js +17 -20
  327. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js.map +1 -1
  328. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js +75 -71
  329. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
  330. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js +2 -2
  331. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js.map +1 -1
  332. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js +20 -19
  333. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js.map +1 -1
  334. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js +25 -26
  335. package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js.map +1 -1
  336. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js +41 -48
  337. package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js.map +1 -1
  338. package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js +8 -7
  339. package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js.map +1 -1
  340. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js +18 -18
  341. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js.map +1 -1
  342. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js +10 -7
  343. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js.map +1 -1
  344. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js +36 -38
  345. package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js.map +1 -1
  346. package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js +15 -15
  347. package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js.map +1 -1
  348. package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js +11 -8
  349. package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js.map +1 -1
  350. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js +208 -167
  351. package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js.map +1 -1
  352. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js +50 -63
  353. package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js.map +1 -1
  354. package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js +16 -18
  355. package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js.map +1 -1
  356. package/dist/esm/packages/taco/src/components/Table3/useTable3.js +19 -25
  357. package/dist/esm/packages/taco/src/components/Table3/useTable3.js.map +1 -1
  358. package/dist/esm/packages/taco/src/components/Table3/util/editing.js +35 -29
  359. package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -1
  360. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js +35 -34
  361. package/dist/esm/packages/taco/src/components/Tabs/Tabs.js.map +1 -1
  362. package/dist/esm/packages/taco/src/components/Tag/Tag.js +12 -12
  363. package/dist/esm/packages/taco/src/components/Tag/Tag.js.map +1 -1
  364. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js +11 -8
  365. package/dist/esm/packages/taco/src/components/Textarea/Textarea.js.map +1 -1
  366. package/dist/esm/packages/taco/src/components/Toast/Toast.js +20 -19
  367. package/dist/esm/packages/taco/src/components/Toast/Toast.js.map +1 -1
  368. package/dist/esm/packages/taco/src/components/Toast/Toaster.js +96 -117
  369. package/dist/esm/packages/taco/src/components/Toast/Toaster.js.map +1 -1
  370. package/dist/esm/packages/taco/src/components/Toast/util.js +4 -6
  371. package/dist/esm/packages/taco/src/components/Toast/util.js.map +1 -1
  372. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js +9 -10
  373. package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js.map +1 -1
  374. package/dist/esm/packages/taco/src/components/Tour/Tour.js +46 -49
  375. package/dist/esm/packages/taco/src/components/Tour/Tour.js.map +1 -1
  376. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js +27 -33
  377. package/dist/esm/packages/taco/src/components/Treeview/Treeview.js.map +1 -1
  378. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js +13 -15
  379. package/dist/esm/packages/taco/src/components/Truncate/Truncate.js.map +1 -1
  380. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js +1 -1
  381. package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  382. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js +6 -11
  383. package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js.map +1 -1
  384. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js +13 -19
  385. package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js.map +1 -1
  386. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +4 -4
  387. package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
  388. package/dist/esm/packages/taco/src/hooks/useId.js +2 -4
  389. package/dist/esm/packages/taco/src/hooks/useId.js.map +1 -1
  390. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js +18 -20
  391. package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js.map +1 -1
  392. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js +5 -7
  393. package/dist/esm/packages/taco/src/hooks/useIsFormControl.js.map +1 -1
  394. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js +5 -9
  395. package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js.map +1 -1
  396. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js +1 -3
  397. package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js.map +1 -1
  398. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js +2 -2
  399. package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -1
  400. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js +22 -24
  401. package/dist/esm/packages/taco/src/hooks/useLocalStorage.js.map +1 -1
  402. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js +6 -13
  403. package/dist/esm/packages/taco/src/hooks/useMatchMedia.js.map +1 -1
  404. package/dist/esm/packages/taco/src/hooks/useMergedRef.js +3 -3
  405. package/dist/esm/packages/taco/src/hooks/useMergedRef.js.map +1 -1
  406. package/dist/esm/packages/taco/src/hooks/usePrevious.js +2 -2
  407. package/dist/esm/packages/taco/src/hooks/usePrevious.js.map +1 -1
  408. package/dist/esm/packages/taco/src/primitives/BubbleSelect.js +14 -14
  409. package/dist/esm/packages/taco/src/primitives/BubbleSelect.js.map +1 -1
  410. package/dist/esm/packages/taco/src/primitives/Button.js +13 -16
  411. package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
  412. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js +49 -53
  413. package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js.map +1 -1
  414. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js +2 -4
  415. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js.map +1 -1
  416. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js +5 -9
  417. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js.map +1 -1
  418. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js +18 -16
  419. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js.map +1 -1
  420. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js +40 -47
  421. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js.map +1 -1
  422. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js +10 -9
  423. package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js.map +1 -1
  424. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js +20 -22
  425. package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js.map +1 -1
  426. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js +27 -24
  427. package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js.map +1 -1
  428. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js +10 -11
  429. package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js.map +1 -1
  430. package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js +19 -22
  431. package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js.map +1 -1
  432. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js +22 -25
  433. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js.map +1 -1
  434. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js +7 -7
  435. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js.map +1 -1
  436. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js +14 -30
  437. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js.map +1 -1
  438. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js +19 -18
  439. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js.map +1 -1
  440. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js +34 -34
  441. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js.map +1 -1
  442. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js +12 -10
  443. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js.map +1 -1
  444. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js +18 -19
  445. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js.map +1 -1
  446. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js +40 -42
  447. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js.map +1 -1
  448. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js +7 -5
  449. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js.map +1 -1
  450. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js +24 -19
  451. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js.map +1 -1
  452. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js +55 -56
  453. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js.map +1 -1
  454. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js +23 -27
  455. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js.map +1 -1
  456. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js +16 -13
  457. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
  458. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js +87 -86
  459. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js.map +1 -1
  460. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js +11 -14
  461. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js.map +1 -1
  462. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js +58 -85
  463. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js.map +1 -1
  464. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js +20 -18
  465. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js.map +1 -1
  466. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js +3 -3
  467. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js.map +1 -1
  468. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js +6 -11
  469. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js.map +1 -1
  470. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js +49 -58
  471. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js.map +1 -1
  472. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js +32 -28
  473. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js.map +1 -1
  474. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js +30 -35
  475. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js.map +1 -1
  476. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js +1 -1
  477. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js.map +1 -1
  478. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js +11 -11
  479. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js.map +1 -1
  480. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js +1 -1
  481. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js.map +1 -1
  482. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js +22 -23
  483. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js.map +1 -1
  484. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js +39 -54
  485. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js.map +1 -1
  486. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js +37 -39
  487. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js.map +1 -1
  488. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js +16 -20
  489. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js.map +1 -1
  490. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js +15 -16
  491. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js.map +1 -1
  492. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js +41 -50
  493. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js.map +1 -1
  494. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js +9 -13
  495. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js.map +1 -1
  496. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js +51 -57
  497. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
  498. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js +67 -71
  499. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js.map +1 -1
  500. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js +37 -40
  501. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js.map +1 -1
  502. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js +44 -64
  503. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js.map +1 -1
  504. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js +51 -62
  505. package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js.map +1 -1
  506. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js +6 -6
  507. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js.map +1 -1
  508. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js +5 -13
  509. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js.map +1 -1
  510. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js +74 -90
  511. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js.map +1 -1
  512. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js +15 -15
  513. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js.map +1 -1
  514. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js +41 -31
  515. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js.map +1 -1
  516. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js +30 -31
  517. package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js.map +1 -1
  518. package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js +3 -3
  519. package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js.map +1 -1
  520. package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js +15 -14
  521. package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js.map +1 -1
  522. package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js +2 -2
  523. package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js.map +1 -1
  524. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js +38 -44
  525. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js.map +1 -1
  526. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js +56 -64
  527. package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js.map +1 -1
  528. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js +6 -11
  529. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js.map +1 -1
  530. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js +2 -5
  531. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js.map +1 -1
  532. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js +5 -15
  533. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js.map +1 -1
  534. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js +2 -5
  535. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js.map +1 -1
  536. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js +16 -26
  537. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js.map +1 -1
  538. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js +3 -9
  539. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js.map +1 -1
  540. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js +23 -42
  541. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js.map +1 -1
  542. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js +6 -9
  543. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js.map +1 -1
  544. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js +4 -9
  545. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js.map +1 -1
  546. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js +2 -5
  547. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js.map +1 -1
  548. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js +3 -9
  549. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js.map +1 -1
  550. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js +2 -5
  551. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js.map +1 -1
  552. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js +1 -1
  553. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js.map +1 -1
  554. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js +5 -15
  555. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js.map +1 -1
  556. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js +9 -14
  557. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js.map +1 -1
  558. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js +13 -25
  559. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js.map +1 -1
  560. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js +26 -47
  561. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js.map +1 -1
  562. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js +24 -34
  563. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js.map +1 -1
  564. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js +6 -7
  565. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js.map +1 -1
  566. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js +3 -3
  567. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js.map +1 -1
  568. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js +16 -20
  569. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js.map +1 -1
  570. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js +2 -2
  571. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js.map +1 -1
  572. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js +4 -6
  573. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js.map +1 -1
  574. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js +8 -8
  575. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js.map +1 -1
  576. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js +6 -6
  577. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js.map +1 -1
  578. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js +6 -8
  579. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js.map +1 -1
  580. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js +17 -17
  581. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js.map +1 -1
  582. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js +2 -2
  583. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js.map +1 -1
  584. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js +56 -56
  585. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js.map +1 -1
  586. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js +30 -59
  587. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js.map +1 -1
  588. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js +8 -8
  589. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js.map +1 -1
  590. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js +19 -33
  591. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js.map +1 -1
  592. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js +11 -11
  593. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js.map +1 -1
  594. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js +20 -24
  595. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js.map +1 -1
  596. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js +7 -6
  597. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js.map +1 -1
  598. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js +107 -139
  599. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js.map +1 -1
  600. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js +1 -3
  601. package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js.map +1 -1
  602. package/dist/esm/packages/taco/src/types.js +1 -1
  603. package/dist/esm/packages/taco/src/types.js.map +1 -1
  604. package/dist/esm/packages/taco/src/utils/aria.js +2 -2
  605. package/dist/esm/packages/taco/src/utils/aria.js.map +1 -1
  606. package/dist/esm/packages/taco/src/utils/date.js +23 -47
  607. package/dist/esm/packages/taco/src/utils/date.js.map +1 -1
  608. package/dist/esm/packages/taco/src/utils/debounce.js +4 -10
  609. package/dist/esm/packages/taco/src/utils/debounce.js.map +1 -1
  610. package/dist/esm/packages/taco/src/utils/device.js +2 -4
  611. package/dist/esm/packages/taco/src/utils/device.js.map +1 -1
  612. package/dist/esm/packages/taco/src/utils/dom.js +23 -29
  613. package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
  614. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js +38 -40
  615. package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js.map +1 -1
  616. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js +7 -9
  617. package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js.map +1 -1
  618. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js +9 -20
  619. package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  620. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js +9 -9
  621. package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js.map +1 -1
  622. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js +6 -8
  623. package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js.map +1 -1
  624. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js +11 -16
  625. package/dist/esm/packages/taco/src/utils/hooks/useTimer.js.map +1 -1
  626. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js +6 -11
  627. package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js.map +1 -1
  628. package/dist/esm/packages/taco/src/utils/input.js +7 -10
  629. package/dist/esm/packages/taco/src/utils/input.js.map +1 -1
  630. package/dist/esm/packages/taco/src/utils/keyboard.js +5 -8
  631. package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
  632. package/dist/esm/packages/taco/src/utils/mergeRefs.js +2 -2
  633. package/dist/esm/packages/taco/src/utils/mergeRefs.js.map +1 -1
  634. package/dist/esm/packages/taco/src/utils/tailwind.js +5 -5
  635. package/dist/esm/packages/taco/src/utils/tailwind.js.map +1 -1
  636. package/dist/esm/packages/taco/tailwind.colors.js +1 -1
  637. package/dist/esm/packages/taco/tailwind.colors.js.map +1 -1
  638. package/dist/primitives/Table/useTableManager/listeners/useTableDataListener.d.ts +1 -1
  639. package/dist/taco.cjs.development.js +6928 -7878
  640. package/dist/taco.cjs.development.js.map +1 -1
  641. package/dist/taco.cjs.production.min.js +1 -1
  642. package/dist/taco.cjs.production.min.js.map +1 -1
  643. package/package.json +3 -2
  644. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +0 -63
  645. package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.js","sources":["../../../../../../../../src/charts/components/Bar/BarChart.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport * as Recharts from 'recharts';\n\nimport { Color, getThemeColor } from '../../utils/color';\nimport {\n CommonChartProps,\n getCartesianGridProps,\n getXAxisProps,\n getYAxisProps,\n getLegendProps,\n getTooltipProps,\n} from '../../utils/common';\nimport { ResponsiveContainer } from '../ResponsiveContainer';\nimport { ActiveChartItems, PayloadType } from '../types';\n\ntype StacksType<TType> = Record<string, Array<keyof TType & string>>;\n\ntype BarChartBarProps<TType> = {\n accessor: keyof TType & string;\n color?: Color;\n label?: string;\n stackId?: string;\n};\n\nconst Bar = (_: BarChartBarProps<any>) => null;\n\ntype BarChartProps<TType> = CommonChartProps<TType> & {\n children: React.ReactElement<BarChartBarProps<TType>> | React.ReactElement<BarChartBarProps<TType>>[];\n data: TType[];\n formatter?: (value: any) => string;\n layout?: 'horizontal' | 'vertical';\n};\n\nconst getXAxisVerticalProps = <TType,>(props: CommonChartProps<TType>) => ({\n ...getXAxisProps<TType>(props),\n ...{ type: 'number' as const, dataKey: undefined },\n});\n\nconst getYAxisVerticalProps = <TType,>(props: CommonChartProps<TType>) => ({\n ...getYAxisProps<TType>(props),\n ...{ dataKey: props.accessor, type: 'category' as const },\n});\n\nexport const BarChart = function BarChart<TType = unknown>(externalProps: BarChartProps<TType>) {\n const { children, data, formatter, layout = 'horizontal', ...props } = externalProps;\n const [activeIndex, setActiveIndex] = React.useState<number | undefined>(undefined);\n const [hoveredBar, setHoveredBar] = useState<(keyof TType & string) | null>(null);\n const [activeBars, setActiveBars] = useState<ActiveChartItems<TType>>(() => {\n const keys = {} as ActiveChartItems<TType>;\n\n React.Children.forEach(children, child => {\n keys[child.props.accessor] = true;\n });\n\n return keys;\n });\n\n // Recharts doesn't provide a way for us to know if a stacked bar is at the top or the bottom,\n // so we can't set proper radiuses without some \"magic\"\n const stacks = {} as StacksType<TType>;\n\n React.Children.forEach(children, child => {\n if (child.props.stackId) {\n if (!stacks[child.props.stackId]) {\n stacks[child.props.stackId] = [child.props.accessor];\n } else {\n stacks[child.props.stackId].push(child.props.accessor);\n }\n }\n });\n\n const handleLegendClick = (entry: PayloadType<TType>): void => {\n setHoveredBar(null);\n setActiveBars({ ...activeBars, [entry.dataKey]: !activeBars[entry.dataKey] });\n };\n\n const handleLegendHover = (entry: PayloadType<TType>, index: number): void => {\n setHoveredBar(entry.dataKey);\n setActiveIndex(index);\n };\n\n return (\n <ResponsiveContainer>\n <Recharts.BarChart\n layout={layout}\n data={data}\n margin={{ top: 10, right: 0, left: layout === 'vertical' ? 0 : -25, bottom: 0 }}\n onMouseMove={chartState => setActiveIndex(chartState.activeTooltipIndex)}\n onMouseLeave={() => setActiveIndex(undefined)}>\n <Recharts.CartesianGrid {...getCartesianGridProps()} />\n <Recharts.XAxis\n {...(layout === 'vertical' ? getXAxisVerticalProps<TType>(props) : getXAxisProps<TType>(props))}\n />\n <Recharts.YAxis\n {...(layout === 'vertical' ? getYAxisVerticalProps<TType>(props) : getYAxisProps<TType>(props))}\n />\n <Recharts.Legend\n {...getLegendProps({\n onClick: handleLegendClick,\n onMouseEnter: handleLegendHover,\n onMouseLeave: () => setHoveredBar(null),\n activeItems: activeBars,\n })}\n />\n <Recharts.Tooltip {...getTooltipProps()} formatter={formatter} />\n {React.Children.map(children, child => (\n <Recharts.Bar\n isAnimationActive={false}\n barSize={16}\n dataKey={child.props.accessor}\n name={child.props.label}\n onMouseEnter={(_, index) => setActiveIndex(index)}\n onMouseLeave={() => setActiveIndex(undefined)}\n fill={getThemeColor(child.props.color ? `${child.props.color}` : `blue-300`)}\n radius={getBarRadius<TType>(stacks, child.props.accessor, child.props.stackId, activeBars)}\n stackId={child.props.stackId}\n style={child.props.stackId ? { stroke: '#fff', strokeWidth: '2px' } : undefined}\n hide={!activeBars[child.props.accessor]}>\n {data.map((_, index) => (\n <Recharts.Cell\n key={`cell-${index}`}\n opacity={\n (hoveredBar && child.props.accessor !== hoveredBar) ||\n (activeIndex !== undefined && activeIndex !== index)\n ? 0.3\n : 1\n }\n />\n ))}\n </Recharts.Bar>\n ))}\n </Recharts.BarChart>\n </ResponsiveContainer>\n );\n};\nBarChart.Bar = Bar;\n\nconst getBarRadius = <TType,>(\n stacks: StacksType<TType>,\n accessor: keyof TType & string,\n stackId: string | undefined,\n activeBars: ActiveChartItems<TType>\n): number | [number, number, number, number] => {\n if (stackId && Array.isArray(stacks[stackId])) {\n const length = stacks[stackId].length - 1;\n const index: number = stacks[stackId].indexOf(accessor);\n\n if (\n Object.entries(activeBars)\n .filter(item => item[0] !== accessor)\n .every(item => !item[1])\n ) {\n return [3, 3, 0, 0];\n }\n\n if (activeBars[stacks[stackId][index + 1]] === false) {\n return [index === 0 ? 0 : 3, index === 0 ? 0 : 3, index === length - 1 ? 0 : 3, index === length - 1 ? 0 : 3];\n }\n\n if (index !== 0 && index !== length) {\n return 0;\n }\n\n return [index === 0 ? 0 : 3, index === 0 ? 0 : 3, index === length ? 0 : 3, index === length ? 0 : 3];\n }\n\n return 3;\n};\n"],"names":["Bar","_","getXAxisVerticalProps","props","_extends","getXAxisProps","type","dataKey","undefined","getYAxisVerticalProps","getYAxisProps","accessor","BarChart","externalProps","children","data","formatter","_externalProps$layout","layout","_objectWithoutPropertiesLoose","_excluded","_React$useState","React","useState","activeIndex","setActiveIndex","_useState","hoveredBar","setHoveredBar","_useState2","keys","Children","forEach","child","activeBars","setActiveBars","stacks","stackId","push","handleLegendClick","entry","_extends2","handleLegendHover","index","ResponsiveContainer","Recharts","margin","top","right","left","bottom","onMouseMove","chartState","activeTooltipIndex","onMouseLeave","getCartesianGridProps","getLegendProps","onClick","onMouseEnter","activeItems","getTooltipProps","map","isAnimationActive","barSize","name","label","fill","getThemeColor","color","radius","getBarRadius","style","stroke","strokeWidth","hide","key","opacity","Array","isArray","length","indexOf","Object","entries","filter","item","every"],"mappings":"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"}
1
+ {"version":3,"file":"BarChart.js","sources":["../../../../../../../../src/charts/components/Bar/BarChart.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport * as Recharts from 'recharts';\n\nimport { Color, getThemeColor } from '../../utils/color';\nimport {\n CommonChartProps,\n getCartesianGridProps,\n getXAxisProps,\n getYAxisProps,\n getLegendProps,\n getTooltipProps,\n} from '../../utils/common';\nimport { ResponsiveContainer } from '../ResponsiveContainer';\nimport { ActiveChartItems, PayloadType } from '../types';\n\ntype StacksType<TType> = Record<string, Array<keyof TType & string>>;\n\ntype BarChartBarProps<TType> = {\n accessor: keyof TType & string;\n color?: Color;\n label?: string;\n stackId?: string;\n};\n\nconst Bar = (_: BarChartBarProps<any>) => null;\n\ntype BarChartProps<TType> = CommonChartProps<TType> & {\n children: React.ReactElement<BarChartBarProps<TType>> | React.ReactElement<BarChartBarProps<TType>>[];\n data: TType[];\n formatter?: (value: any) => string;\n layout?: 'horizontal' | 'vertical';\n};\n\nconst getXAxisVerticalProps = <TType,>(props: CommonChartProps<TType>) => ({\n ...getXAxisProps<TType>(props),\n ...{ type: 'number' as const, dataKey: undefined },\n});\n\nconst getYAxisVerticalProps = <TType,>(props: CommonChartProps<TType>) => ({\n ...getYAxisProps<TType>(props),\n ...{ dataKey: props.accessor, type: 'category' as const },\n});\n\nexport const BarChart = function BarChart<TType = unknown>(externalProps: BarChartProps<TType>) {\n const { children, data, formatter, layout = 'horizontal', ...props } = externalProps;\n const [activeIndex, setActiveIndex] = React.useState<number | undefined>(undefined);\n const [hoveredBar, setHoveredBar] = useState<(keyof TType & string) | null>(null);\n const [activeBars, setActiveBars] = useState<ActiveChartItems<TType>>(() => {\n const keys = {} as ActiveChartItems<TType>;\n\n React.Children.forEach(children, child => {\n keys[child.props.accessor] = true;\n });\n\n return keys;\n });\n\n // Recharts doesn't provide a way for us to know if a stacked bar is at the top or the bottom,\n // so we can't set proper radiuses without some \"magic\"\n const stacks = {} as StacksType<TType>;\n\n React.Children.forEach(children, child => {\n if (child.props.stackId) {\n if (!stacks[child.props.stackId]) {\n stacks[child.props.stackId] = [child.props.accessor];\n } else {\n stacks[child.props.stackId].push(child.props.accessor);\n }\n }\n });\n\n const handleLegendClick = (entry: PayloadType<TType>): void => {\n setHoveredBar(null);\n setActiveBars({ ...activeBars, [entry.dataKey]: !activeBars[entry.dataKey] });\n };\n\n const handleLegendHover = (entry: PayloadType<TType>, index: number): void => {\n setHoveredBar(entry.dataKey);\n setActiveIndex(index);\n };\n\n return (\n <ResponsiveContainer>\n <Recharts.BarChart\n layout={layout}\n data={data}\n margin={{ top: 10, right: 0, left: layout === 'vertical' ? 0 : -25, bottom: 0 }}\n onMouseMove={chartState => setActiveIndex(chartState.activeTooltipIndex)}\n onMouseLeave={() => setActiveIndex(undefined)}>\n <Recharts.CartesianGrid {...getCartesianGridProps()} />\n <Recharts.XAxis\n {...(layout === 'vertical' ? getXAxisVerticalProps<TType>(props) : getXAxisProps<TType>(props))}\n />\n <Recharts.YAxis\n {...(layout === 'vertical' ? getYAxisVerticalProps<TType>(props) : getYAxisProps<TType>(props))}\n />\n <Recharts.Legend\n {...getLegendProps({\n onClick: handleLegendClick,\n onMouseEnter: handleLegendHover,\n onMouseLeave: () => setHoveredBar(null),\n activeItems: activeBars,\n })}\n />\n <Recharts.Tooltip {...getTooltipProps()} formatter={formatter} />\n {React.Children.map(children, child => (\n <Recharts.Bar\n isAnimationActive={false}\n barSize={16}\n dataKey={child.props.accessor}\n name={child.props.label}\n onMouseEnter={(_, index) => setActiveIndex(index)}\n onMouseLeave={() => setActiveIndex(undefined)}\n fill={getThemeColor(child.props.color ? `${child.props.color}` : `blue-300`)}\n radius={getBarRadius<TType>(stacks, child.props.accessor, child.props.stackId, activeBars)}\n stackId={child.props.stackId}\n style={child.props.stackId ? { stroke: '#fff', strokeWidth: '2px' } : undefined}\n hide={!activeBars[child.props.accessor]}>\n {data.map((_, index) => (\n <Recharts.Cell\n key={`cell-${index}`}\n opacity={\n (hoveredBar && child.props.accessor !== hoveredBar) ||\n (activeIndex !== undefined && activeIndex !== index)\n ? 0.3\n : 1\n }\n />\n ))}\n </Recharts.Bar>\n ))}\n </Recharts.BarChart>\n </ResponsiveContainer>\n );\n};\nBarChart.Bar = Bar;\n\nconst getBarRadius = <TType,>(\n stacks: StacksType<TType>,\n accessor: keyof TType & string,\n stackId: string | undefined,\n activeBars: ActiveChartItems<TType>\n): number | [number, number, number, number] => {\n if (stackId && Array.isArray(stacks[stackId])) {\n const length = stacks[stackId].length - 1;\n const index: number = stacks[stackId].indexOf(accessor);\n\n if (\n Object.entries(activeBars)\n .filter(item => item[0] !== accessor)\n .every(item => !item[1])\n ) {\n return [3, 3, 0, 0];\n }\n\n if (activeBars[stacks[stackId][index + 1]] === false) {\n return [index === 0 ? 0 : 3, index === 0 ? 0 : 3, index === length - 1 ? 0 : 3, index === length - 1 ? 0 : 3];\n }\n\n if (index !== 0 && index !== length) {\n return 0;\n }\n\n return [index === 0 ? 0 : 3, index === 0 ? 0 : 3, index === length ? 0 : 3, index === length ? 0 : 3];\n }\n\n return 3;\n};\n"],"names":["Bar","_","getXAxisVerticalProps","props","getXAxisProps","type","dataKey","undefined","getYAxisVerticalProps","getYAxisProps","accessor","BarChart","externalProps","children","data","formatter","layout","activeIndex","setActiveIndex","React","useState","hoveredBar","setHoveredBar","activeBars","setActiveBars","keys","Children","forEach","child","stacks","stackId","push","handleLegendClick","entry","handleLegendHover","index","ResponsiveContainer","Recharts","margin","top","right","left","bottom","onMouseMove","chartState","activeTooltipIndex","onMouseLeave","getCartesianGridProps","getLegendProps","onClick","onMouseEnter","activeItems","getTooltipProps","map","isAnimationActive","barSize","name","label","fill","getThemeColor","color","radius","getBarRadius","style","stroke","strokeWidth","hide","key","opacity","Array","isArray","length","indexOf","Object","entries","filter","item","every"],"mappings":"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"}
@@ -4,25 +4,24 @@ import { Sector } from 'recharts';
4
4
  import { getThemeColor } from '../../utils/color.js';
5
5
  import { HOVER_DONUT_WIDTH } from './util.js';
6
6
 
7
- var ActiveShape = function ActiveShape(props) {
7
+ const ActiveShape = props => {
8
8
  var _getThemeColor;
9
- var cx = props.cx,
10
- cy = props.cy,
11
- id = props.id,
12
- innerRadius = props.innerRadius,
13
- _onClick = props.onClick,
14
- _props$outerRadius = props.outerRadius,
15
- outerRadius = _props$outerRadius === void 0 ? 0 : _props$outerRadius,
16
- pieColors = props.pieColors,
17
- startAngle = props.startAngle,
18
- endAngle = props.endAngle,
19
- fill = props.fill;
9
+ const {
10
+ cx,
11
+ cy,
12
+ id,
13
+ innerRadius,
14
+ onClick,
15
+ outerRadius = 0,
16
+ pieColors,
17
+ startAngle,
18
+ endAngle,
19
+ fill
20
+ } = props;
20
21
  return /*#__PURE__*/React__default.createElement("g", {
21
- onClick: function onClick() {
22
- return _onClick(id);
23
- },
22
+ onClick: () => onClick(id),
24
23
  className: cn({
25
- 'cursor-pointer': !!_onClick
24
+ 'cursor-pointer': !!onClick
26
25
  })
27
26
  }, /*#__PURE__*/React__default.createElement(Sector, {
28
27
  cx: cx,
@@ -1 +1 @@
1
- {"version":3,"file":"ActiveShape.js","sources":["../../../../../../../../src/charts/components/Donut/ActiveShape.tsx"],"sourcesContent":["import React from 'react';\nimport * as Recharts from 'recharts';\nimport cn from 'clsx';\n\nimport { getThemeColor } from '../../utils/color';\nimport { PieSectorDataItem } from 'recharts/types/polar/Pie';\nimport { HOVER_DONUT_WIDTH } from './util';\n\ntype ActiveShapeProps = Omit<PieSectorDataItem, 'onClick'> & {\n onClick: (id: string | undefined) => void;\n pieColors: Record<string, string>;\n};\n\nexport const ActiveShape = (props: ActiveShapeProps) => {\n const { cx, cy, id, innerRadius, onClick, outerRadius = 0, pieColors, startAngle, endAngle, fill } = props;\n\n return (\n <g onClick={() => onClick(id)} className={cn({ 'cursor-pointer': !!onClick })}>\n <Recharts.Sector\n cx={cx}\n cy={cy}\n innerRadius={innerRadius}\n outerRadius={outerRadius}\n startAngle={startAngle}\n endAngle={endAngle}\n fill={fill}\n />\n <Recharts.Sector\n cx={cx}\n cy={cy}\n startAngle={startAngle}\n endAngle={endAngle}\n innerRadius={outerRadius + 2}\n outerRadius={outerRadius + HOVER_DONUT_WIDTH}\n fill={id !== undefined ? getThemeColor(pieColors[id]) ?? getThemeColor('blue-500') : getThemeColor('blue-500')}\n opacity={0.3}\n />\n </g>\n );\n};\n"],"names":["ActiveShape","props","cx","cy","id","innerRadius","onClick","_props$outerRadius","outerRadius","pieColors","startAngle","endAngle","fill","React","className","cn","Recharts","HOVER_DONUT_WIDTH","undefined","_getThemeColor","getThemeColor","opacity"],"mappings":";;;;;;IAaaA,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAuB;;EAC/C,IAAQC,EAAE,GAA2FD,KAAK,CAAlGC,EAAE;IAAEC,EAAE,GAAuFF,KAAK,CAA9FE,EAAE;IAAEC,EAAE,GAAmFH,KAAK,CAA1FG,EAAE;IAAEC,WAAW,GAAsEJ,KAAK,CAAtFI,WAAW;IAAEC,QAAO,GAA6DL,KAAK,CAAzEK,OAAO;IAAAC,kBAAA,GAA6DN,KAAK,CAAhEO,WAAW;IAAXA,WAAW,GAAAD,kBAAA,cAAG,CAAC,GAAAA,kBAAA;IAAEE,SAAS,GAAiCR,KAAK,CAA/CQ,SAAS;IAAEC,UAAU,GAAqBT,KAAK,CAApCS,UAAU;IAAEC,QAAQ,GAAWV,KAAK,CAAxBU,QAAQ;IAAEC,IAAI,GAAKX,KAAK,CAAdW,IAAI;EAEhG,oBACIC;IAAGP,OAAO,EAAE,SAAAA;MAAA,OAAMA,QAAO,CAACF,EAAE,CAAC;;IAAEU,SAAS,EAAEC,EAAE,CAAC;MAAE,gBAAgB,EAAE,CAAC,CAACT;KAAS;kBACxEO,6BAACG,MAAe;IACZd,EAAE,EAAEA,EAAE;IACNC,EAAE,EAAEA,EAAE;IACNE,WAAW,EAAEA,WAAW;IACxBG,WAAW,EAAEA,WAAW;IACxBE,UAAU,EAAEA,UAAU;IACtBC,QAAQ,EAAEA,QAAQ;IAClBC,IAAI,EAAEA;IACR,eACFC,6BAACG,MAAe;IACZd,EAAE,EAAEA,EAAE;IACNC,EAAE,EAAEA,EAAE;IACNO,UAAU,EAAEA,UAAU;IACtBC,QAAQ,EAAEA,QAAQ;IAClBN,WAAW,EAAEG,WAAW,GAAG,CAAC;IAC5BA,WAAW,EAAEA,WAAW,GAAGS,iBAAiB;IAC5CL,IAAI,EAAER,EAAE,KAAKc,SAAS,IAAAC,cAAA,GAAGC,aAAa,CAACX,SAAS,CAACL,EAAE,CAAC,CAAC,cAAAe,cAAA,cAAAA,cAAA,GAAIC,aAAa,CAAC,UAAU,CAAC,GAAGA,aAAa,CAAC,UAAU,CAAC;IAC9GC,OAAO,EAAE;IACX,CACF;AAEZ;;;;"}
1
+ {"version":3,"file":"ActiveShape.js","sources":["../../../../../../../../src/charts/components/Donut/ActiveShape.tsx"],"sourcesContent":["import React from 'react';\nimport * as Recharts from 'recharts';\nimport cn from 'clsx';\n\nimport { getThemeColor } from '../../utils/color';\nimport { PieSectorDataItem } from 'recharts/types/polar/Pie';\nimport { HOVER_DONUT_WIDTH } from './util';\n\ntype ActiveShapeProps = Omit<PieSectorDataItem, 'onClick'> & {\n onClick: (id: string | undefined) => void;\n pieColors: Record<string, string>;\n};\n\nexport const ActiveShape = (props: ActiveShapeProps) => {\n const { cx, cy, id, innerRadius, onClick, outerRadius = 0, pieColors, startAngle, endAngle, fill } = props;\n\n return (\n <g onClick={() => onClick(id)} className={cn({ 'cursor-pointer': !!onClick })}>\n <Recharts.Sector\n cx={cx}\n cy={cy}\n innerRadius={innerRadius}\n outerRadius={outerRadius}\n startAngle={startAngle}\n endAngle={endAngle}\n fill={fill}\n />\n <Recharts.Sector\n cx={cx}\n cy={cy}\n startAngle={startAngle}\n endAngle={endAngle}\n innerRadius={outerRadius + 2}\n outerRadius={outerRadius + HOVER_DONUT_WIDTH}\n fill={id !== undefined ? getThemeColor(pieColors[id]) ?? getThemeColor('blue-500') : getThemeColor('blue-500')}\n opacity={0.3}\n />\n </g>\n );\n};\n"],"names":["ActiveShape","props","cx","cy","id","innerRadius","onClick","outerRadius","pieColors","startAngle","endAngle","fill","React","className","cn","Recharts","HOVER_DONUT_WIDTH","undefined","_getThemeColor","getThemeColor","opacity"],"mappings":";;;;;;MAaaA,WAAW,GAAIC,KAAuB;;EAC/C,MAAM;IAAEC,EAAE;IAAEC,EAAE;IAAEC,EAAE;IAAEC,WAAW;IAAEC,OAAO;IAAEC,WAAW,GAAG,CAAC;IAAEC,SAAS;IAAEC,UAAU;IAAEC,QAAQ;IAAEC;GAAM,GAAGV,KAAK;EAE1G,oBACIW;IAAGN,OAAO,EAAEA,MAAMA,OAAO,CAACF,EAAE,CAAC;IAAES,SAAS,EAAEC,EAAE,CAAC;MAAE,gBAAgB,EAAE,CAAC,CAACR;KAAS;kBACxEM,6BAACG,MAAe;IACZb,EAAE,EAAEA,EAAE;IACNC,EAAE,EAAEA,EAAE;IACNE,WAAW,EAAEA,WAAW;IACxBE,WAAW,EAAEA,WAAW;IACxBE,UAAU,EAAEA,UAAU;IACtBC,QAAQ,EAAEA,QAAQ;IAClBC,IAAI,EAAEA;IACR,eACFC,6BAACG,MAAe;IACZb,EAAE,EAAEA,EAAE;IACNC,EAAE,EAAEA,EAAE;IACNM,UAAU,EAAEA,UAAU;IACtBC,QAAQ,EAAEA,QAAQ;IAClBL,WAAW,EAAEE,WAAW,GAAG,CAAC;IAC5BA,WAAW,EAAEA,WAAW,GAAGS,iBAAiB;IAC5CL,IAAI,EAAEP,EAAE,KAAKa,SAAS,IAAAC,cAAA,GAAGC,aAAa,CAACX,SAAS,CAACJ,EAAE,CAAC,CAAC,cAAAc,cAAA,cAAAA,cAAA,GAAIC,aAAa,CAAC,UAAU,CAAC,GAAGA,aAAa,CAAC,UAAU,CAAC;IAC9GC,OAAO,EAAE;IACX,CACF;AAEZ;;;;"}
@@ -1,21 +1,22 @@
1
1
  import React__default from 'react';
2
2
  import { HOVER_DONUT_WIDTH, DONUT_WIDTH } from './util.js';
3
3
 
4
- var CenteredLabel = function CenteredLabel(_ref) {
5
- var radius = _ref.radius,
6
- legendPosition = _ref.legendPosition,
7
- label = _ref.label,
8
- total = _ref.total,
9
- formatter = _ref.formatter,
10
- showLegend = _ref.showLegend;
11
- var totalInset = HOVER_DONUT_WIDTH + DONUT_WIDTH + DONUT_WIDTH;
12
- var diameter = radius * 2;
4
+ const CenteredLabel = ({
5
+ radius,
6
+ legendPosition,
7
+ label,
8
+ total,
9
+ formatter,
10
+ showLegend
11
+ }) => {
12
+ const totalInset = HOVER_DONUT_WIDTH + DONUT_WIDTH + DONUT_WIDTH;
13
+ const diameter = radius * 2;
13
14
  return /*#__PURE__*/React__default.createElement("div", {
14
15
  className: "absolute mt-1 flex h-12 flex-col text-center",
15
16
  style: {
16
- top: "calc(" + radius + "px - (3rem / 2))",
17
- left: legendPosition === 'right' ? totalInset + "px" : "calc(50%-" + (diameter - 2 * totalInset) + ")",
18
- width: showLegend ? diameter - 2 * totalInset + "px" : diameter + "px"
17
+ top: `calc(${radius}px - (3rem / 2))`,
18
+ left: legendPosition === 'right' ? `${totalInset}px` : `calc(50%-${diameter - 2 * totalInset})`,
19
+ width: showLegend ? `${diameter - 2 * totalInset}px` : `${diameter}px`
19
20
  }
20
21
  }, /*#__PURE__*/React__default.createElement("span", {
21
22
  className: "w-full truncate text-lg font-bold"
@@ -1 +1 @@
1
- {"version":3,"file":"CenteredLabel.js","sources":["../../../../../../../../src/charts/components/Donut/CenteredLabel.tsx"],"sourcesContent":["import React from 'react';\nimport { HOVER_DONUT_WIDTH, DONUT_WIDTH } from './util';\n\ntype CenteredLabelProps = {\n radius: number;\n legendPosition: string;\n label: string;\n total: number;\n formatter: ((value: number) => string) | undefined;\n showLegend: boolean;\n};\n\nexport const CenteredLabel = ({ radius, legendPosition, label, total, formatter, showLegend }: CenteredLabelProps) => {\n const totalInset = HOVER_DONUT_WIDTH + DONUT_WIDTH + DONUT_WIDTH;\n const diameter = radius * 2;\n\n return (\n <div\n className=\"absolute mt-1 flex h-12 flex-col text-center\"\n style={{\n top: `calc(${radius}px - (3rem / 2))`, // h-12 is 3rem\n left: legendPosition === 'right' ? `${totalInset}px` : `calc(50%-${diameter - 2 * totalInset})`,\n width: showLegend ? `${diameter - 2 * totalInset}px` : `${diameter}px`,\n }}>\n <span className=\"w-full truncate text-lg font-bold\">{formatter ? formatter(total) : total}</span>\n {label}\n </div>\n );\n};\n"],"names":["CenteredLabel","_ref","radius","legendPosition","label","total","formatter","showLegend","totalInset","HOVER_DONUT_WIDTH","DONUT_WIDTH","diameter","React","className","style","top","left","width"],"mappings":";;;IAYaA,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA;MAAMC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,cAAc,GAAAF,IAAA,CAAdE,cAAc;IAAEC,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAEC,KAAK,GAAAJ,IAAA,CAALI,KAAK;IAAEC,SAAS,GAAAL,IAAA,CAATK,SAAS;IAAEC,UAAU,GAAAN,IAAA,CAAVM,UAAU;EACvF,IAAMC,UAAU,GAAGC,iBAAiB,GAAGC,WAAW,GAAGA,WAAW;EAChE,IAAMC,QAAQ,GAAGT,MAAM,GAAG,CAAC;EAE3B,oBACIU;IACIC,SAAS,EAAC,8CAA8C;IACxDC,KAAK,EAAE;MACHC,GAAG,YAAUb,MAAM,qBAAkB;MACrCc,IAAI,EAAEb,cAAc,KAAK,OAAO,GAAMK,UAAU,yBAAmBG,QAAQ,GAAG,CAAC,GAAGH,UAAU,OAAG;MAC/FS,KAAK,EAAEV,UAAU,GAAMI,QAAQ,GAAG,CAAC,GAAGH,UAAU,UAAUG,QAAQ;;kBAEtEC;IAAMC,SAAS,EAAC;KAAqCP,SAAS,GAAGA,SAAS,CAACD,KAAK,CAAC,GAAGA,KAAK,CAAQ,EAChGD,KAAK,CACJ;AAEd;;;;"}
1
+ {"version":3,"file":"CenteredLabel.js","sources":["../../../../../../../../src/charts/components/Donut/CenteredLabel.tsx"],"sourcesContent":["import React from 'react';\nimport { HOVER_DONUT_WIDTH, DONUT_WIDTH } from './util';\n\ntype CenteredLabelProps = {\n radius: number;\n legendPosition: string;\n label: string;\n total: number;\n formatter: ((value: number) => string) | undefined;\n showLegend: boolean;\n};\n\nexport const CenteredLabel = ({ radius, legendPosition, label, total, formatter, showLegend }: CenteredLabelProps) => {\n const totalInset = HOVER_DONUT_WIDTH + DONUT_WIDTH + DONUT_WIDTH;\n const diameter = radius * 2;\n\n return (\n <div\n className=\"absolute mt-1 flex h-12 flex-col text-center\"\n style={{\n top: `calc(${radius}px - (3rem / 2))`, // h-12 is 3rem\n left: legendPosition === 'right' ? `${totalInset}px` : `calc(50%-${diameter - 2 * totalInset})`,\n width: showLegend ? `${diameter - 2 * totalInset}px` : `${diameter}px`,\n }}>\n <span className=\"w-full truncate text-lg font-bold\">{formatter ? formatter(total) : total}</span>\n {label}\n </div>\n );\n};\n"],"names":["CenteredLabel","radius","legendPosition","label","total","formatter","showLegend","totalInset","HOVER_DONUT_WIDTH","DONUT_WIDTH","diameter","React","className","style","top","left","width"],"mappings":";;;MAYaA,aAAa,GAAGA,CAAC;EAAEC,MAAM;EAAEC,cAAc;EAAEC,KAAK;EAAEC,KAAK;EAAEC,SAAS;EAAEC;CAAgC;EAC7G,MAAMC,UAAU,GAAGC,iBAAiB,GAAGC,WAAW,GAAGA,WAAW;EAChE,MAAMC,QAAQ,GAAGT,MAAM,GAAG,CAAC;EAE3B,oBACIU;IACIC,SAAS,EAAC,8CAA8C;IACxDC,KAAK,EAAE;MACHC,GAAG,EAAE,QAAQb,MAAM,kBAAkB;MACrCc,IAAI,EAAEb,cAAc,KAAK,OAAO,GAAG,GAAGK,UAAU,IAAI,GAAG,YAAYG,QAAQ,GAAG,CAAC,GAAGH,UAAU,GAAG;MAC/FS,KAAK,EAAEV,UAAU,GAAG,GAAGI,QAAQ,GAAG,CAAC,GAAGH,UAAU,IAAI,GAAG,GAAGG,QAAQ;;kBAEtEC;IAAMC,SAAS,EAAC;KAAqCP,SAAS,GAAGA,SAAS,CAACD,KAAK,CAAC,GAAGA,KAAK,CAAQ,EAChGD,KAAK,CACJ;AAEd;;;;"}
@@ -1,6 +1,5 @@
1
1
  import React__default from 'react';
2
2
  import cn from 'clsx';
3
- import { extends as _extends } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
4
3
  import { PieChart, Tooltip, Pie, Cell } from 'recharts';
5
4
  import { getThemeColor } from '../../utils/color.js';
6
5
  import { getTooltipProps } from '../../utils/common.js';
@@ -9,133 +8,99 @@ import { HOVER_DONUT_WIDTH, DONUT_WIDTH } from './util.js';
9
8
  import { CenteredLabel } from './CenteredLabel.js';
10
9
  import { ActiveShape } from './ActiveShape.js';
11
10
 
12
- var Segment = function Segment(_) {
13
- return null;
14
- };
15
- var DonutChart = function DonutChart(_ref) {
16
- var _cn;
17
- var children = _ref.children,
18
- formatter = _ref.formatter,
19
- onClick = _ref.onClick,
20
- _ref$showLegend = _ref.showLegend,
21
- showLegend = _ref$showLegend === void 0 ? false : _ref$showLegend,
22
- _ref$legendPosition = _ref.legendPosition,
23
- legendPosition = _ref$legendPosition === void 0 ? 'bottom' : _ref$legendPosition,
24
- label = _ref.label;
25
- var ref = React__default.useRef(null);
26
- var _React$useState = React__default.useState(0),
27
- radius = _React$useState[0],
28
- setRadius = _React$useState[1];
29
- var _React$useState2 = React__default.useState([]),
30
- hoveredItem = _React$useState2[0],
31
- setHoveredItem = _React$useState2[1];
11
+ const Segment = _ => null;
12
+ const DonutChart = function DonutChart({
13
+ children,
14
+ formatter,
15
+ onClick,
16
+ showLegend = false,
17
+ legendPosition = 'bottom',
18
+ label
19
+ }) {
20
+ const ref = React__default.useRef(null);
21
+ const [radius, setRadius] = React__default.useState(0);
22
+ const [hoveredItem, setHoveredItem] = React__default.useState([]);
32
23
  // used for right legends
33
- var _React$useState3 = React__default.useState([]),
34
- selectedItem = _React$useState3[0],
35
- setSelectedItem = _React$useState3[1];
24
+ const [selectedItem, setSelectedItem] = React__default.useState([]);
36
25
  // used for bottom legends
37
- var _React$useState4 = React__default.useState(function () {
38
- var keys = {};
39
- React__default.Children.forEach(children, function (child) {
40
- keys[child.props.id] = true;
41
- });
42
- return keys;
43
- }),
44
- visibleItems = _React$useState4[0],
45
- setVisibleItems = _React$useState4[1];
46
- React__default.useEffect(function () {
26
+ const [visibleItems, setVisibleItems] = React__default.useState(() => {
27
+ const keys = {};
28
+ React__default.Children.forEach(children, child => {
29
+ keys[child.props.id] = true;
30
+ });
31
+ return keys;
32
+ });
33
+ React__default.useEffect(() => {
47
34
  if (ref.current) {
48
35
  var _ref$current$parentEl;
49
- var rect = (_ref$current$parentEl = ref.current.parentElement) === null || _ref$current$parentEl === void 0 ? void 0 : _ref$current$parentEl.getBoundingClientRect();
36
+ const rect = (_ref$current$parentEl = ref.current.parentElement) === null || _ref$current$parentEl === void 0 ? void 0 : _ref$current$parentEl.getBoundingClientRect();
50
37
  if (rect) {
51
- var width = showLegend ? rect.width / 2 : rect.width;
52
- var max = rect.height < width ? rect.height : width;
38
+ const width = showLegend ? rect.width / 2 : rect.width;
39
+ const max = rect.height < width ? rect.height : width;
53
40
  setRadius(max / 2);
54
41
  }
55
42
  }
56
43
  }, [showLegend]);
57
- var diameter = radius * 2; // get dimensions of the parent container to find the max radius, so we can fill the container AND always have a 16px wide donut
58
- var data = React__default.Children.map(children, function (child) {
59
- return {
60
- id: child.props.id,
61
- color: child.props.color,
62
- label: child.props.label,
63
- value: child.props.value
64
- };
65
- });
66
- var displayedData = data.filter(function (child) {
67
- return visibleItems[child.id];
68
- });
69
- var total = displayedData.reduce(function (accum, entry) {
70
- return accum + entry.value;
71
- }, 0);
72
- var showTooltip = (!showLegend || legendPosition === 'bottom') && displayedData.length > 0;
73
- var handleLegendClick = function handleLegendClick(entry) {
44
+ const diameter = radius * 2; // get dimensions of the parent container to find the max radius, so we can fill the container AND always have a 16px wide donut
45
+ const data = React__default.Children.map(children, child => ({
46
+ id: child.props.id,
47
+ color: child.props.color,
48
+ label: child.props.label,
49
+ value: child.props.value
50
+ }));
51
+ const displayedData = data.filter(child => visibleItems[child.id]);
52
+ const total = displayedData.reduce((accum, entry) => accum + entry.value, 0);
53
+ const showTooltip = (!showLegend || legendPosition === 'bottom') && displayedData.length > 0;
54
+ const handleLegendClick = entry => {
74
55
  if (legendPosition === 'bottom' && !Array.isArray(entry)) {
75
- var _extends2;
76
- setVisibleItems(_extends({}, visibleItems, (_extends2 = {}, _extends2[entry.id] = !visibleItems[entry.id], _extends2)));
56
+ setVisibleItems({
57
+ ...visibleItems,
58
+ [entry.id]: !visibleItems[entry.id]
59
+ });
77
60
  } else {
78
- var nextSelectedItem = Array.isArray(entry) ? entry.map(function (entryItem) {
79
- return entryItem.id;
80
- }) : [entry.id];
61
+ const nextSelectedItem = Array.isArray(entry) ? entry.map(entryItem => entryItem.id) : [entry.id];
81
62
  // Using slice to avoid mutation of the react state 'selectedItem'
82
- var isCurrentSegmentActive = selectedItem.slice().sort().join(',') === nextSelectedItem.sort().join(',');
63
+ const isCurrentSegmentActive = selectedItem.slice().sort().join(',') === nextSelectedItem.sort().join(',');
83
64
  if (onClick && !isCurrentSegmentActive) {
84
65
  onClick(entry);
85
66
  }
86
67
  setSelectedItem(isCurrentSegmentActive ? [] : nextSelectedItem);
87
68
  }
88
69
  };
89
- var handlePieClick = React__default.useCallback(function (pieId) {
70
+ const handlePieClick = React__default.useCallback(pieId => {
90
71
  if (onClick && pieId !== undefined) {
91
- var pieProps = displayedData.find(function (item) {
92
- return item.id === pieId;
93
- });
72
+ const pieProps = displayedData.find(item => item.id === pieId);
94
73
  onClick(pieProps);
95
74
  }
96
75
  }, [onClick, displayedData]);
97
- var singlePieDonutChart = displayedData.length === 1;
98
- var activeShapeColor = React__default.useMemo(function () {
99
- var getSegmentColor = function getSegmentColor(item) {
100
- return item.reduce(function (colors, itemId) {
101
- var visibleHoveredItem = displayedData.find(function (dataItem) {
102
- return dataItem.id === itemId;
103
- });
104
- if (visibleHoveredItem) {
105
- colors[visibleHoveredItem.id] = visibleHoveredItem.color;
106
- }
107
- return colors;
108
- }, {});
109
- };
110
- var hoveredSegmentColor = getSegmentColor(hoveredItem);
111
- var selectedSegmentColor = getSegmentColor(selectedItem);
76
+ const singlePieDonutChart = displayedData.length === 1;
77
+ const activeShapeColor = React__default.useMemo(() => {
78
+ const getSegmentColor = item => item.reduce((colors, itemId) => {
79
+ const visibleHoveredItem = displayedData.find(dataItem => dataItem.id === itemId);
80
+ if (visibleHoveredItem) {
81
+ colors[visibleHoveredItem.id] = visibleHoveredItem.color;
82
+ }
83
+ return colors;
84
+ }, {});
85
+ const hoveredSegmentColor = getSegmentColor(hoveredItem);
86
+ const selectedSegmentColor = getSegmentColor(selectedItem);
112
87
  return legendPosition === 'bottom' || hoveredItem.length !== 0 ? hoveredSegmentColor : selectedSegmentColor;
113
88
  }, [hoveredItem, selectedItem, legendPosition]);
114
89
  if (ref.current && !radius) {
115
90
  return null;
116
91
  }
117
- var getActiveIndex = function getActiveIndex() {
92
+ const getActiveIndex = () => {
118
93
  if (hoveredItem.length > 0) {
119
- return hoveredItem.map(function (itemId) {
120
- return displayedData.findIndex(function (element) {
121
- return element.id === itemId;
122
- });
123
- });
94
+ return hoveredItem.map(itemId => displayedData.findIndex(element => element.id === itemId));
124
95
  }
125
- return selectedItem.map(function (selectedItemId) {
126
- return displayedData.findIndex(function (element) {
127
- return element.id === selectedItemId;
128
- });
129
- });
96
+ return selectedItem.map(selectedItemId => displayedData.findIndex(element => element.id === selectedItemId));
130
97
  };
131
- var content = function content() {
132
- var elements = React__default.Children.toArray(children).filter(function (child) {
133
- return /*#__PURE__*/React__default.isValidElement(child) && visibleItems[child.props.id];
134
- });
135
- return elements.length > 0 ? elements.map(function (child, index) {
98
+ const content = () => {
99
+ const elements = React__default.Children.toArray(children).filter(child => /*#__PURE__*/React__default.isValidElement(child) && visibleItems[child.props.id]);
100
+ return elements.length > 0 ? elements.map((child, index) => {
136
101
  var _getThemeColor;
137
102
  return /*#__PURE__*/React__default.createElement(Cell, {
138
- key: "cell-" + index,
103
+ key: `cell-${index}`,
139
104
  name: child.props.label,
140
105
  fill: (_getThemeColor = getThemeColor(child.props.color)) !== null && _getThemeColor !== void 0 ? _getThemeColor : getThemeColor('blue-300')
141
106
  });
@@ -146,7 +111,10 @@ var DonutChart = function DonutChart(_ref) {
146
111
  }));
147
112
  };
148
113
  return /*#__PURE__*/React__default.createElement("div", {
149
- className: cn('relative h-full w-full', (_cn = {}, _cn["flex "] = showLegend, _cn['flex-col items-center'] = legendPosition === 'bottom', _cn)),
114
+ className: cn('relative h-full w-full', {
115
+ [`flex `]: showLegend,
116
+ 'flex-col items-center': legendPosition === 'bottom'
117
+ }),
150
118
  ref: ref
151
119
  }, /*#__PURE__*/React__default.createElement(CenteredLabel, {
152
120
  radius: radius,
@@ -166,7 +134,7 @@ var DonutChart = function DonutChart(_ref) {
166
134
  style: {
167
135
  transform: 'rotate(90deg) scale(-1,1)'
168
136
  },
169
- singlePieDonutChart: singlePieDonutChart
137
+ singlePieDonutChart
170
138
  })))) : null, /*#__PURE__*/React__default.createElement(Pie, {
171
139
  isAnimationActive: false,
172
140
  activeIndex: getActiveIndex(),
@@ -177,12 +145,8 @@ var DonutChart = function DonutChart(_ref) {
177
145
  data: displayedData.length > 0 ? displayedData : [],
178
146
  dataKey: "value",
179
147
  innerRadius: radius - HOVER_DONUT_WIDTH - DONUT_WIDTH,
180
- onMouseEnter: function onMouseEnter(segment) {
181
- return displayedData.length > 0 && setHoveredItem([segment.id]);
182
- },
183
- onMouseLeave: function onMouseLeave() {
184
- return setHoveredItem([]);
185
- },
148
+ onMouseEnter: segment => displayedData.length > 0 && setHoveredItem([segment.id]),
149
+ onMouseLeave: () => setHoveredItem([]),
186
150
  outerRadius: radius - HOVER_DONUT_WIDTH,
187
151
  paddingAngle: 2,
188
152
  // Prevents the pie group element from being focusable
@@ -1 +1 @@
1
- {"version":3,"file":"DonutChart.js","sources":["../../../../../../../../src/charts/components/Donut/DonutChart.tsx"],"sourcesContent":["import React from 'react';\nimport * as Recharts from 'recharts';\nimport cn from 'clsx';\n\nimport { Color, getThemeColor } from '../../utils/color';\nimport { getTooltipProps } from '../../utils/common';\nimport { Legend } from './Legend';\nimport { CenteredLabel } from './CenteredLabel';\nimport { ActiveShape } from './ActiveShape';\nimport { DONUT_WIDTH, HOVER_DONUT_WIDTH } from './util';\n\nconst Segment = (_: DonutChartSegmentProps) => null;\n\nexport type DonutChartSegmentProps = {\n color: Color;\n id: string;\n label: string;\n value: number;\n};\n\nexport type SegmentIds = string[];\n\nexport type DonutChartProps = {\n children: React.ReactElement<DonutChartSegmentProps> | React.ReactElement<DonutChartSegmentProps>[];\n formatter?: (value: number) => string;\n onClick?: (segment: DonutChartSegmentProps | DonutChartSegmentProps[]) => void;\n showLegend?: boolean;\n legendPosition?: string;\n label: string;\n};\n\nexport const DonutChart = function DonutChart({\n children,\n formatter,\n onClick,\n showLegend = false,\n legendPosition = 'bottom',\n label,\n}: DonutChartProps) {\n const ref = React.useRef<HTMLDivElement>(null);\n const [radius, setRadius] = React.useState<number>(0);\n\n const [hoveredItem, setHoveredItem] = React.useState<SegmentIds>([]);\n // used for right legends\n const [selectedItem, setSelectedItem] = React.useState<SegmentIds>([]);\n // used for bottom legends\n const [visibleItems, setVisibleItems] = React.useState<Record<string, boolean>>(() => {\n const keys = {};\n\n React.Children.forEach(children, child => {\n keys[child.props.id] = true;\n });\n\n return keys;\n });\n\n React.useEffect(() => {\n if (ref.current) {\n const rect = ref.current.parentElement?.getBoundingClientRect();\n\n if (rect) {\n const width = showLegend ? rect.width / 2 : rect.width;\n const max: number = rect.height < width ? rect.height : width;\n setRadius(max / 2);\n }\n }\n }, [showLegend]);\n\n const diameter = radius * 2; // get dimensions of the parent container to find the max radius, so we can fill the container AND always have a 16px wide donut\n const data: DonutChartSegmentProps[] = React.Children.map(children, child => ({\n id: child.props.id,\n color: child.props.color,\n label: child.props.label,\n value: child.props.value,\n }));\n const displayedData = data.filter(child => visibleItems[child.id]);\n\n const total = displayedData.reduce((accum, entry) => accum + entry.value, 0);\n const showTooltip = (!showLegend || legendPosition === 'bottom') && displayedData.length > 0;\n\n const handleLegendClick = (entry: DonutChartSegmentProps | DonutChartSegmentProps[]): void => {\n if (legendPosition === 'bottom' && !Array.isArray(entry)) {\n setVisibleItems({ ...visibleItems, [entry.id]: !visibleItems[entry.id] });\n } else {\n const nextSelectedItem = Array.isArray(entry) ? entry.map(entryItem => entryItem.id) : [entry.id];\n\n // Using slice to avoid mutation of the react state 'selectedItem'\n const isCurrentSegmentActive = selectedItem.slice().sort().join(',') === nextSelectedItem.sort().join(',');\n\n if (onClick && !isCurrentSegmentActive) {\n onClick(entry);\n }\n\n setSelectedItem(isCurrentSegmentActive ? [] : nextSelectedItem);\n }\n };\n const handlePieClick = React.useCallback(\n (pieId: string | undefined) => {\n if (onClick && pieId !== undefined) {\n const pieProps = displayedData.find(item => item.id === pieId);\n\n onClick(pieProps as DonutChartSegmentProps);\n }\n },\n [onClick, displayedData]\n );\n\n const singlePieDonutChart = displayedData.length === 1;\n const activeShapeColor = React.useMemo(() => {\n const getSegmentColor = (item: SegmentIds) =>\n item.reduce((colors, itemId) => {\n const visibleHoveredItem = displayedData.find(dataItem => dataItem.id === itemId);\n\n if (visibleHoveredItem) {\n colors[visibleHoveredItem.id] = visibleHoveredItem.color;\n }\n\n return colors;\n }, {});\n\n const hoveredSegmentColor = getSegmentColor(hoveredItem);\n const selectedSegmentColor = getSegmentColor(selectedItem);\n\n return legendPosition === 'bottom' || hoveredItem.length !== 0 ? hoveredSegmentColor : selectedSegmentColor;\n }, [hoveredItem, selectedItem, legendPosition]);\n\n if (ref.current && !radius) {\n return null;\n }\n\n const getActiveIndex = () => {\n if (hoveredItem.length > 0) {\n return hoveredItem.map(itemId => displayedData.findIndex(element => element.id === itemId));\n }\n\n return selectedItem.map(selectedItemId => displayedData.findIndex(element => element.id === selectedItemId));\n };\n\n const content = () => {\n const elements = React.Children.toArray(children).filter(\n (child): child is React.ReactElement<DonutChartSegmentProps> =>\n React.isValidElement<DonutChartSegmentProps>(child) && visibleItems[child.props.id]\n );\n\n return elements.length > 0 ? (\n elements.map((child, index) => {\n return (\n <Recharts.Cell\n key={`cell-${index}`}\n name={child.props.label}\n fill={getThemeColor(child.props.color) ?? getThemeColor('blue-300')}\n />\n );\n })\n ) : (\n <Recharts.Cell key=\"empty-chart\" name={''} fill={getThemeColor('grey-200')} />\n );\n };\n\n return (\n <div\n className={cn('relative h-full w-full', {\n [`flex `]: showLegend,\n 'flex-col items-center': legendPosition === 'bottom',\n })}\n ref={ref}>\n <CenteredLabel\n radius={radius}\n legendPosition={legendPosition}\n label={label}\n total={total}\n formatter={formatter}\n showLegend={showLegend}\n />\n\n <Recharts.PieChart data={data} height={diameter} width={diameter} style={{ transform: 'rotate(90deg) scale(-1,1)' }}>\n {showTooltip ? (\n <Recharts.Tooltip\n {...getTooltipProps({\n style: { transform: 'rotate(90deg) scale(-1,1)' },\n singlePieDonutChart,\n })}\n />\n ) : null}\n <Recharts.Pie\n isAnimationActive={false}\n activeIndex={getActiveIndex()}\n activeShape={<ActiveShape pieColors={activeShapeColor} onClick={handlePieClick} />}\n data={displayedData.length > 0 ? displayedData : []}\n dataKey=\"value\"\n innerRadius={radius - HOVER_DONUT_WIDTH - DONUT_WIDTH} // offset the 12px wider hover state, and then make the donut 16px wide\n onMouseEnter={segment => displayedData.length > 0 && setHoveredItem([segment.id])}\n onMouseLeave={() => setHoveredItem([])}\n outerRadius={radius - HOVER_DONUT_WIDTH} // offset the 12px wide hover state\n paddingAngle={2}\n // Prevents the pie group element from being focusable\n rootTabIndex={-1}>\n {content()}\n </Recharts.Pie>\n </Recharts.PieChart>\n {showLegend && (\n <Legend\n data={data}\n visibleItems={visibleItems}\n onClick={handleLegendClick}\n total={total}\n setHoveredItem={setHoveredItem}\n label={label}\n legendPosition={legendPosition}\n hoveredItem={hoveredItem}\n selectedItem={selectedItem}\n formatter={formatter}\n />\n )}\n </div>\n );\n};\n\nDonutChart.Segment = Segment;\n"],"names":["Segment","_","DonutChart","_ref","children","formatter","onClick","_ref$showLegend","showLegend","_ref$legendPosition","legendPosition","label","ref","React","useRef","_React$useState","useState","radius","setRadius","_React$useState2","hoveredItem","setHoveredItem","_React$useState3","selectedItem","setSelectedItem","_React$useState4","keys","Children","forEach","child","props","id","visibleItems","setVisibleItems","useEffect","current","_ref$current$parentEl","rect","parentElement","getBoundingClientRect","width","max","height","diameter","data","map","color","value","displayedData","filter","total","reduce","accum","entry","showTooltip","length","handleLegendClick","Array","isArray","_extends2","_extends","nextSelectedItem","entryItem","isCurrentSegmentActive","slice","sort","join","handlePieClick","useCallback","pieId","undefined","pieProps","find","item","singlePieDonutChart","activeShapeColor","useMemo","getSegmentColor","colors","itemId","visibleHoveredItem","dataItem","hoveredSegmentColor","selectedSegmentColor","getActiveIndex","findIndex","element","selectedItemId","content","elements","toArray","isValidElement","index","Recharts","key","name","fill","_getThemeColor","getThemeColor","className","cn","_cn","CenteredLabel","style","transform","getTooltipProps","isAnimationActive","activeIndex","activeShape","ActiveShape","pieColors","dataKey","innerRadius","HOVER_DONUT_WIDTH","DONUT_WIDTH","onMouseEnter","segment","onMouseLeave","outerRadius","paddingAngle","rootTabIndex","Legend"],"mappings":";;;;;;;;;;;AAWA,IAAMA,OAAO,GAAG,SAAVA,OAAOA,CAAIC,CAAyB;EAAA,OAAK,IAAI;AAAA;IAoBtCC,UAAU,GAAG,SAASA,UAAUA,CAAAC,IAAA;;MACzCC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IAAAC,eAAA,GAAAJ,IAAA,CACPK,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAG,KAAK,GAAAA,eAAA;IAAAE,mBAAA,GAAAN,IAAA,CAClBO,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAG,QAAQ,GAAAA,mBAAA;IACzBE,KAAK,GAAAR,IAAA,CAALQ,KAAK;EAEL,IAAMC,GAAG,GAAGC,cAAK,CAACC,MAAM,CAAiB,IAAI,CAAC;EAC9C,IAAAC,eAAA,GAA4BF,cAAK,CAACG,QAAQ,CAAS,CAAC,CAAC;IAA9CC,MAAM,GAAAF,eAAA;IAAEG,SAAS,GAAAH,eAAA;EAExB,IAAAI,gBAAA,GAAsCN,cAAK,CAACG,QAAQ,CAAa,EAAE,CAAC;IAA7DI,WAAW,GAAAD,gBAAA;IAAEE,cAAc,GAAAF,gBAAA;;EAElC,IAAAG,gBAAA,GAAwCT,cAAK,CAACG,QAAQ,CAAa,EAAE,CAAC;IAA/DO,YAAY,GAAAD,gBAAA;IAAEE,eAAe,GAAAF,gBAAA;;EAEpC,IAAAG,gBAAA,GAAwCZ,cAAK,CAACG,QAAQ,CAA0B;MAC5E,IAAMU,IAAI,GAAG,EAAE;MAEfb,cAAK,CAACc,QAAQ,CAACC,OAAO,CAACxB,QAAQ,EAAE,UAAAyB,KAAK;QAClCH,IAAI,CAACG,KAAK,CAACC,KAAK,CAACC,EAAE,CAAC,GAAG,IAAI;OAC9B,CAAC;MAEF,OAAOL,IAAI;KACd,CAAC;IARKM,YAAY,GAAAP,gBAAA;IAAEQ,eAAe,GAAAR,gBAAA;EAUpCZ,cAAK,CAACqB,SAAS,CAAC;IACZ,IAAItB,GAAG,CAACuB,OAAO,EAAE;MAAA,IAAAC,qBAAA;MACb,IAAMC,IAAI,IAAAD,qBAAA,GAAGxB,GAAG,CAACuB,OAAO,CAACG,aAAa,cAAAF,qBAAA,uBAAzBA,qBAAA,CAA2BG,qBAAqB,EAAE;MAE/D,IAAIF,IAAI,EAAE;QACN,IAAMG,KAAK,GAAGhC,UAAU,GAAG6B,IAAI,CAACG,KAAK,GAAG,CAAC,GAAGH,IAAI,CAACG,KAAK;QACtD,IAAMC,GAAG,GAAWJ,IAAI,CAACK,MAAM,GAAGF,KAAK,GAAGH,IAAI,CAACK,MAAM,GAAGF,KAAK;QAC7DtB,SAAS,CAACuB,GAAG,GAAG,CAAC,CAAC;;;GAG7B,EAAE,CAACjC,UAAU,CAAC,CAAC;EAEhB,IAAMmC,QAAQ,GAAG1B,MAAM,GAAG,CAAC,CAAC;EAC5B,IAAM2B,IAAI,GAA6B/B,cAAK,CAACc,QAAQ,CAACkB,GAAG,CAACzC,QAAQ,EAAE,UAAAyB,KAAK;IAAA,OAAK;MAC1EE,EAAE,EAAEF,KAAK,CAACC,KAAK,CAACC,EAAE;MAClBe,KAAK,EAAEjB,KAAK,CAACC,KAAK,CAACgB,KAAK;MACxBnC,KAAK,EAAEkB,KAAK,CAACC,KAAK,CAACnB,KAAK;MACxBoC,KAAK,EAAElB,KAAK,CAACC,KAAK,CAACiB;KACtB;GAAC,CAAC;EACH,IAAMC,aAAa,GAAGJ,IAAI,CAACK,MAAM,CAAC,UAAApB,KAAK;IAAA,OAAIG,YAAY,CAACH,KAAK,CAACE,EAAE,CAAC;IAAC;EAElE,IAAMmB,KAAK,GAAGF,aAAa,CAACG,MAAM,CAAC,UAACC,KAAK,EAAEC,KAAK;IAAA,OAAKD,KAAK,GAAGC,KAAK,CAACN,KAAK;KAAE,CAAC,CAAC;EAC5E,IAAMO,WAAW,GAAG,CAAC,CAAC9C,UAAU,IAAIE,cAAc,KAAK,QAAQ,KAAKsC,aAAa,CAACO,MAAM,GAAG,CAAC;EAE5F,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIH,KAAwD;IAC/E,IAAI3C,cAAc,KAAK,QAAQ,IAAI,CAAC+C,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC,EAAE;MAAA,IAAAM,SAAA;MACtD1B,eAAe,CAAA2B,QAAA,KAAM5B,YAAY,GAAA2B,SAAA,OAAAA,SAAA,CAAGN,KAAK,CAACtB,EAAE,IAAG,CAACC,YAAY,CAACqB,KAAK,CAACtB,EAAE,CAAC,EAAA4B,SAAA,EAAE,CAAC;KAC5E,MAAM;MACH,IAAME,gBAAgB,GAAGJ,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC,GAAGA,KAAK,CAACR,GAAG,CAAC,UAAAiB,SAAS;QAAA,OAAIA,SAAS,CAAC/B,EAAE;QAAC,GAAG,CAACsB,KAAK,CAACtB,EAAE,CAAC;;MAGjG,IAAMgC,sBAAsB,GAAGxC,YAAY,CAACyC,KAAK,EAAE,CAACC,IAAI,EAAE,CAACC,IAAI,CAAC,GAAG,CAAC,KAAKL,gBAAgB,CAACI,IAAI,EAAE,CAACC,IAAI,CAAC,GAAG,CAAC;MAE1G,IAAI5D,OAAO,IAAI,CAACyD,sBAAsB,EAAE;QACpCzD,OAAO,CAAC+C,KAAK,CAAC;;MAGlB7B,eAAe,CAACuC,sBAAsB,GAAG,EAAE,GAAGF,gBAAgB,CAAC;;GAEtE;EACD,IAAMM,cAAc,GAAGtD,cAAK,CAACuD,WAAW,CACpC,UAACC,KAAyB;IACtB,IAAI/D,OAAO,IAAI+D,KAAK,KAAKC,SAAS,EAAE;MAChC,IAAMC,QAAQ,GAAGvB,aAAa,CAACwB,IAAI,CAAC,UAAAC,IAAI;QAAA,OAAIA,IAAI,CAAC1C,EAAE,KAAKsC,KAAK;QAAC;MAE9D/D,OAAO,CAACiE,QAAkC,CAAC;;GAElD,EACD,CAACjE,OAAO,EAAE0C,aAAa,CAAC,CAC3B;EAED,IAAM0B,mBAAmB,GAAG1B,aAAa,CAACO,MAAM,KAAK,CAAC;EACtD,IAAMoB,gBAAgB,GAAG9D,cAAK,CAAC+D,OAAO,CAAC;IACnC,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAIJ,IAAgB;MAAA,OACrCA,IAAI,CAACtB,MAAM,CAAC,UAAC2B,MAAM,EAAEC,MAAM;QACvB,IAAMC,kBAAkB,GAAGhC,aAAa,CAACwB,IAAI,CAAC,UAAAS,QAAQ;UAAA,OAAIA,QAAQ,CAAClD,EAAE,KAAKgD,MAAM;UAAC;QAEjF,IAAIC,kBAAkB,EAAE;UACpBF,MAAM,CAACE,kBAAkB,CAACjD,EAAE,CAAC,GAAGiD,kBAAkB,CAAClC,KAAK;;QAG5D,OAAOgC,MAAM;OAChB,EAAE,EAAE,CAAC;;IAEV,IAAMI,mBAAmB,GAAGL,eAAe,CAACzD,WAAW,CAAC;IACxD,IAAM+D,oBAAoB,GAAGN,eAAe,CAACtD,YAAY,CAAC;IAE1D,OAAOb,cAAc,KAAK,QAAQ,IAAIU,WAAW,CAACmC,MAAM,KAAK,CAAC,GAAG2B,mBAAmB,GAAGC,oBAAoB;GAC9G,EAAE,CAAC/D,WAAW,EAAEG,YAAY,EAAEb,cAAc,CAAC,CAAC;EAE/C,IAAIE,GAAG,CAACuB,OAAO,IAAI,CAAClB,MAAM,EAAE;IACxB,OAAO,IAAI;;EAGf,IAAMmE,cAAc,GAAG,SAAjBA,cAAcA;IAChB,IAAIhE,WAAW,CAACmC,MAAM,GAAG,CAAC,EAAE;MACxB,OAAOnC,WAAW,CAACyB,GAAG,CAAC,UAAAkC,MAAM;QAAA,OAAI/B,aAAa,CAACqC,SAAS,CAAC,UAAAC,OAAO;UAAA,OAAIA,OAAO,CAACvD,EAAE,KAAKgD,MAAM;UAAC;QAAC;;IAG/F,OAAOxD,YAAY,CAACsB,GAAG,CAAC,UAAA0C,cAAc;MAAA,OAAIvC,aAAa,CAACqC,SAAS,CAAC,UAAAC,OAAO;QAAA,OAAIA,OAAO,CAACvD,EAAE,KAAKwD,cAAc;QAAC;MAAC;GAC/G;EAED,IAAMC,OAAO,GAAG,SAAVA,OAAOA;IACT,IAAMC,QAAQ,GAAG5E,cAAK,CAACc,QAAQ,CAAC+D,OAAO,CAACtF,QAAQ,CAAC,CAAC6C,MAAM,CACpD,UAACpB,KAAK;MAAA,oBACFhB,cAAK,CAAC8E,cAAc,CAAyB9D,KAAK,CAAC,IAAIG,YAAY,CAACH,KAAK,CAACC,KAAK,CAACC,EAAE,CAAC;MAC1F;IAED,OAAO0D,QAAQ,CAAClC,MAAM,GAAG,CAAC,GACtBkC,QAAQ,CAAC5C,GAAG,CAAC,UAAChB,KAAK,EAAE+D,KAAK;;MACtB,oBACI/E,6BAACgF,IAAa;QACVC,GAAG,YAAUF,KAAO;QACpBG,IAAI,EAAElE,KAAK,CAACC,KAAK,CAACnB,KAAK;QACvBqF,IAAI,GAAAC,cAAA,GAAEC,aAAa,CAACrE,KAAK,CAACC,KAAK,CAACgB,KAAK,CAAC,cAAAmD,cAAA,cAAAA,cAAA,GAAIC,aAAa,CAAC,UAAU;QACpE;KAET,CAAC,iBAEFrF,6BAACgF,IAAa;MAACC,GAAG,EAAC,aAAa;MAACC,IAAI,EAAE,EAAE;MAAEC,IAAI,EAAEE,aAAa,CAAC,UAAU;MAAK,CACjF;GACJ;EAED,oBACIrF;IACIsF,SAAS,EAAEC,EAAE,CAAC,wBAAwB,GAAAC,GAAA,OAAAA,GAAA,YACvB7F,UAAU,EAAA6F,GAAA,CACrB,uBAAuB,IAAE3F,cAAc,KAAK,QAAQ,EAAA2F,GAAA,EACtD;IACFzF,GAAG,EAAEA;kBACLC,6BAACyF,aAAa;IACVrF,MAAM,EAAEA,MAAM;IACdP,cAAc,EAAEA,cAAc;IAC9BC,KAAK,EAAEA,KAAK;IACZuC,KAAK,EAAEA,KAAK;IACZ7C,SAAS,EAAEA,SAAS;IACpBG,UAAU,EAAEA;IACd,eAEFK,6BAACgF,QAAiB;IAACjD,IAAI,EAAEA,IAAI;IAAEF,MAAM,EAAEC,QAAQ;IAAEH,KAAK,EAAEG,QAAQ;IAAE4D,KAAK,EAAE;MAAEC,SAAS,EAAE;;KACjFlD,WAAW,iBACRzC,6BAACgF,OAAgB,oBACTY,eAAe,CAAC;IAChBF,KAAK,EAAE;MAAEC,SAAS,EAAE;KAA6B;IACjD9B,mBAAmB,EAAnBA;GACH,CAAC,EACJ,IACF,IAAI,eACR7D,6BAACgF,GAAY;IACTa,iBAAiB,EAAE,KAAK;IACxBC,WAAW,EAAEvB,cAAc,EAAE;IAC7BwB,WAAW,eAAE/F,6BAACgG,WAAW;MAACC,SAAS,EAAEnC,gBAAgB;MAAErE,OAAO,EAAE6D;MAAkB;IAClFvB,IAAI,EAAEI,aAAa,CAACO,MAAM,GAAG,CAAC,GAAGP,aAAa,GAAG,EAAE;IACnD+D,OAAO,EAAC,OAAO;IACfC,WAAW,EAAE/F,MAAM,GAAGgG,iBAAiB,GAAGC,WAAW;IACrDC,YAAY,EAAE,SAAAA,aAAAC,OAAO;MAAA,OAAIpE,aAAa,CAACO,MAAM,GAAG,CAAC,IAAIlC,cAAc,CAAC,CAAC+F,OAAO,CAACrF,EAAE,CAAC,CAAC;;IACjFsF,YAAY,EAAE,SAAAA;MAAA,OAAMhG,cAAc,CAAC,EAAE,CAAC;;IACtCiG,WAAW,EAAErG,MAAM,GAAGgG,iBAAiB;IACvCM,YAAY,EAAE,CAAC;;IAEfC,YAAY,EAAE,CAAC;KACdhC,OAAO,EAAE,CACC,CACC,EACnBhF,UAAU,kBACPK,6BAAC4G,MAAM;IACH7E,IAAI,EAAEA,IAAI;IACVZ,YAAY,EAAEA,YAAY;IAC1B1B,OAAO,EAAEkD,iBAAiB;IAC1BN,KAAK,EAAEA,KAAK;IACZ7B,cAAc,EAAEA,cAAc;IAC9BV,KAAK,EAAEA,KAAK;IACZD,cAAc,EAAEA,cAAc;IAC9BU,WAAW,EAAEA,WAAW;IACxBG,YAAY,EAAEA,YAAY;IAC1BlB,SAAS,EAAEA;IACb,CACL,CACC;AAEd;AAEAH,UAAU,CAACF,OAAO,GAAGA,OAAO;;;;"}
1
+ {"version":3,"file":"DonutChart.js","sources":["../../../../../../../../src/charts/components/Donut/DonutChart.tsx"],"sourcesContent":["import React from 'react';\nimport * as Recharts from 'recharts';\nimport cn from 'clsx';\n\nimport { Color, getThemeColor } from '../../utils/color';\nimport { getTooltipProps } from '../../utils/common';\nimport { Legend } from './Legend';\nimport { CenteredLabel } from './CenteredLabel';\nimport { ActiveShape } from './ActiveShape';\nimport { DONUT_WIDTH, HOVER_DONUT_WIDTH } from './util';\n\nconst Segment = (_: DonutChartSegmentProps) => null;\n\nexport type DonutChartSegmentProps = {\n color: Color;\n id: string;\n label: string;\n value: number;\n};\n\nexport type SegmentIds = string[];\n\nexport type DonutChartProps = {\n children: React.ReactElement<DonutChartSegmentProps> | React.ReactElement<DonutChartSegmentProps>[];\n formatter?: (value: number) => string;\n onClick?: (segment: DonutChartSegmentProps | DonutChartSegmentProps[]) => void;\n showLegend?: boolean;\n legendPosition?: string;\n label: string;\n};\n\nexport const DonutChart = function DonutChart({\n children,\n formatter,\n onClick,\n showLegend = false,\n legendPosition = 'bottom',\n label,\n}: DonutChartProps) {\n const ref = React.useRef<HTMLDivElement>(null);\n const [radius, setRadius] = React.useState<number>(0);\n\n const [hoveredItem, setHoveredItem] = React.useState<SegmentIds>([]);\n // used for right legends\n const [selectedItem, setSelectedItem] = React.useState<SegmentIds>([]);\n // used for bottom legends\n const [visibleItems, setVisibleItems] = React.useState<Record<string, boolean>>(() => {\n const keys = {};\n\n React.Children.forEach(children, child => {\n keys[child.props.id] = true;\n });\n\n return keys;\n });\n\n React.useEffect(() => {\n if (ref.current) {\n const rect = ref.current.parentElement?.getBoundingClientRect();\n\n if (rect) {\n const width = showLegend ? rect.width / 2 : rect.width;\n const max: number = rect.height < width ? rect.height : width;\n setRadius(max / 2);\n }\n }\n }, [showLegend]);\n\n const diameter = radius * 2; // get dimensions of the parent container to find the max radius, so we can fill the container AND always have a 16px wide donut\n const data: DonutChartSegmentProps[] = React.Children.map(children, child => ({\n id: child.props.id,\n color: child.props.color,\n label: child.props.label,\n value: child.props.value,\n }));\n const displayedData = data.filter(child => visibleItems[child.id]);\n\n const total = displayedData.reduce((accum, entry) => accum + entry.value, 0);\n const showTooltip = (!showLegend || legendPosition === 'bottom') && displayedData.length > 0;\n\n const handleLegendClick = (entry: DonutChartSegmentProps | DonutChartSegmentProps[]): void => {\n if (legendPosition === 'bottom' && !Array.isArray(entry)) {\n setVisibleItems({ ...visibleItems, [entry.id]: !visibleItems[entry.id] });\n } else {\n const nextSelectedItem = Array.isArray(entry) ? entry.map(entryItem => entryItem.id) : [entry.id];\n\n // Using slice to avoid mutation of the react state 'selectedItem'\n const isCurrentSegmentActive = selectedItem.slice().sort().join(',') === nextSelectedItem.sort().join(',');\n\n if (onClick && !isCurrentSegmentActive) {\n onClick(entry);\n }\n\n setSelectedItem(isCurrentSegmentActive ? [] : nextSelectedItem);\n }\n };\n const handlePieClick = React.useCallback(\n (pieId: string | undefined) => {\n if (onClick && pieId !== undefined) {\n const pieProps = displayedData.find(item => item.id === pieId);\n\n onClick(pieProps as DonutChartSegmentProps);\n }\n },\n [onClick, displayedData]\n );\n\n const singlePieDonutChart = displayedData.length === 1;\n const activeShapeColor = React.useMemo(() => {\n const getSegmentColor = (item: SegmentIds) =>\n item.reduce((colors, itemId) => {\n const visibleHoveredItem = displayedData.find(dataItem => dataItem.id === itemId);\n\n if (visibleHoveredItem) {\n colors[visibleHoveredItem.id] = visibleHoveredItem.color;\n }\n\n return colors;\n }, {});\n\n const hoveredSegmentColor = getSegmentColor(hoveredItem);\n const selectedSegmentColor = getSegmentColor(selectedItem);\n\n return legendPosition === 'bottom' || hoveredItem.length !== 0 ? hoveredSegmentColor : selectedSegmentColor;\n }, [hoveredItem, selectedItem, legendPosition]);\n\n if (ref.current && !radius) {\n return null;\n }\n\n const getActiveIndex = () => {\n if (hoveredItem.length > 0) {\n return hoveredItem.map(itemId => displayedData.findIndex(element => element.id === itemId));\n }\n\n return selectedItem.map(selectedItemId => displayedData.findIndex(element => element.id === selectedItemId));\n };\n\n const content = () => {\n const elements = React.Children.toArray(children).filter(\n (child): child is React.ReactElement<DonutChartSegmentProps> =>\n React.isValidElement<DonutChartSegmentProps>(child) && visibleItems[child.props.id]\n );\n\n return elements.length > 0 ? (\n elements.map((child, index) => {\n return (\n <Recharts.Cell\n key={`cell-${index}`}\n name={child.props.label}\n fill={getThemeColor(child.props.color) ?? getThemeColor('blue-300')}\n />\n );\n })\n ) : (\n <Recharts.Cell key=\"empty-chart\" name={''} fill={getThemeColor('grey-200')} />\n );\n };\n\n return (\n <div\n className={cn('relative h-full w-full', {\n [`flex `]: showLegend,\n 'flex-col items-center': legendPosition === 'bottom',\n })}\n ref={ref}>\n <CenteredLabel\n radius={radius}\n legendPosition={legendPosition}\n label={label}\n total={total}\n formatter={formatter}\n showLegend={showLegend}\n />\n\n <Recharts.PieChart data={data} height={diameter} width={diameter} style={{ transform: 'rotate(90deg) scale(-1,1)' }}>\n {showTooltip ? (\n <Recharts.Tooltip\n {...getTooltipProps({\n style: { transform: 'rotate(90deg) scale(-1,1)' },\n singlePieDonutChart,\n })}\n />\n ) : null}\n <Recharts.Pie\n isAnimationActive={false}\n activeIndex={getActiveIndex()}\n activeShape={<ActiveShape pieColors={activeShapeColor} onClick={handlePieClick} />}\n data={displayedData.length > 0 ? displayedData : []}\n dataKey=\"value\"\n innerRadius={radius - HOVER_DONUT_WIDTH - DONUT_WIDTH} // offset the 12px wider hover state, and then make the donut 16px wide\n onMouseEnter={segment => displayedData.length > 0 && setHoveredItem([segment.id])}\n onMouseLeave={() => setHoveredItem([])}\n outerRadius={radius - HOVER_DONUT_WIDTH} // offset the 12px wide hover state\n paddingAngle={2}\n // Prevents the pie group element from being focusable\n rootTabIndex={-1}>\n {content()}\n </Recharts.Pie>\n </Recharts.PieChart>\n {showLegend && (\n <Legend\n data={data}\n visibleItems={visibleItems}\n onClick={handleLegendClick}\n total={total}\n setHoveredItem={setHoveredItem}\n label={label}\n legendPosition={legendPosition}\n hoveredItem={hoveredItem}\n selectedItem={selectedItem}\n formatter={formatter}\n />\n )}\n </div>\n );\n};\n\nDonutChart.Segment = Segment;\n"],"names":["Segment","_","DonutChart","children","formatter","onClick","showLegend","legendPosition","label","ref","React","useRef","radius","setRadius","useState","hoveredItem","setHoveredItem","selectedItem","setSelectedItem","visibleItems","setVisibleItems","keys","Children","forEach","child","props","id","useEffect","current","_ref$current$parentEl","rect","parentElement","getBoundingClientRect","width","max","height","diameter","data","map","color","value","displayedData","filter","total","reduce","accum","entry","showTooltip","length","handleLegendClick","Array","isArray","nextSelectedItem","entryItem","isCurrentSegmentActive","slice","sort","join","handlePieClick","useCallback","pieId","undefined","pieProps","find","item","singlePieDonutChart","activeShapeColor","useMemo","getSegmentColor","colors","itemId","visibleHoveredItem","dataItem","hoveredSegmentColor","selectedSegmentColor","getActiveIndex","findIndex","element","selectedItemId","content","elements","toArray","isValidElement","index","Recharts","key","name","fill","_getThemeColor","getThemeColor","className","cn","CenteredLabel","style","transform","getTooltipProps","isAnimationActive","activeIndex","activeShape","ActiveShape","pieColors","dataKey","innerRadius","HOVER_DONUT_WIDTH","DONUT_WIDTH","onMouseEnter","segment","onMouseLeave","outerRadius","paddingAngle","rootTabIndex","Legend"],"mappings":"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"}
@@ -88,47 +88,40 @@ import '../../../primitives/Table/useTableDataLoader2.js';
88
88
  import '../../../hooks/useBoundaryOverflowDetection.js';
89
89
  import '../../../utils/hooks/useOnClickOutside.js';
90
90
 
91
- var Legend = function Legend(_ref) {
92
- var legendPosition = _ref.legendPosition,
93
- hoveredItem = _ref.hoveredItem,
94
- selectedItem = _ref.selectedItem,
95
- data = _ref.data,
96
- _onClick = _ref.onClick,
97
- setHoveredItem = _ref.setHoveredItem,
98
- formatter = _ref.formatter,
99
- total = _ref.total,
100
- visibleItems = _ref.visibleItems,
101
- label = _ref.label;
102
- var isTotalLegendSelected = selectedItem.length === data.length;
103
- var isTotalLegendHovered = hoveredItem.length === data.length;
104
- var handleMouseLeave = function handleMouseLeave() {
105
- return setHoveredItem([]);
106
- };
107
- var renderLegendItem = function renderLegendItem(entry, index) {
108
- var isTotal = entry === null;
91
+ const Legend = ({
92
+ legendPosition,
93
+ hoveredItem,
94
+ selectedItem,
95
+ data,
96
+ onClick,
97
+ setHoveredItem,
98
+ formatter,
99
+ total,
100
+ visibleItems,
101
+ label
102
+ }) => {
103
+ const isTotalLegendSelected = selectedItem.length === data.length;
104
+ const isTotalLegendHovered = hoveredItem.length === data.length;
105
+ const handleMouseLeave = () => setHoveredItem([]);
106
+ const renderLegendItem = (entry, index) => {
107
+ const isTotal = entry === null;
109
108
  // We can't use `isTotal` here because TypeScript is unable to infer the type when `entry` is not null.
110
- var itemData = entry === null ? {
109
+ const itemData = entry === null ? {
111
110
  id: 'total',
112
- label: label,
111
+ label,
113
112
  value: total,
114
113
  color: 'grey-300'
115
114
  } : entry;
116
- var isSelected = isTotal ? isTotalLegendSelected : selectedItem.includes(itemData.id);
117
- var isHovered = isTotal ? isTotalLegendHovered : hoveredItem.includes(itemData.id);
115
+ const isSelected = isTotal ? isTotalLegendSelected : selectedItem.includes(itemData.id);
116
+ const isHovered = isTotal ? isTotalLegendHovered : hoveredItem.includes(itemData.id);
118
117
  return /*#__PURE__*/React__default.createElement("li", {
119
- key: isTotal ? 'total' : itemData.label + "-" + index,
118
+ key: isTotal ? 'total' : `${itemData.label}-${index}`,
120
119
  className: cn('mr-2 flex cursor-pointer gap-2 rounded pl-0 pr-1', {
121
120
  'bg-grey-100': isHovered && (!isTotal || legendPosition === 'right'),
122
121
  'bg-grey-200': isSelected && (!isTotal || legendPosition === 'right')
123
122
  }),
124
- onClick: function onClick() {
125
- return _onClick(isTotal ? data : itemData);
126
- },
127
- onMouseEnter: function onMouseEnter() {
128
- return setHoveredItem(isTotal ? data.map(function (item) {
129
- return item.id;
130
- }) : [itemData.id]);
131
- },
123
+ onClick: () => onClick(isTotal ? data : itemData),
124
+ onMouseEnter: () => setHoveredItem(isTotal ? data.map(item => item.id) : [itemData.id]),
132
125
  onMouseLeave: handleMouseLeave
133
126
  }, legendPosition === 'bottom' ? (/*#__PURE__*/React__default.createElement("div", {
134
127
  className: "flex items-center gap-1"
@@ -151,13 +144,11 @@ var Legend = function Legend(_ref) {
151
144
  className: "-mt-1 flex w-full text-lg font-bold"
152
145
  }, formatter ? formatter(itemData.value) : itemData.value)))));
153
146
  };
154
- var moreButton = function moreButton(moreButtonText) {
155
- return /*#__PURE__*/React__default.createElement(Button, {
156
- appearance: "transparent",
157
- className: "text-grey-700"
158
- }, moreButtonText);
159
- };
160
- var className = cn('flex-grow pl-4', {
147
+ const moreButton = moreButtonText => (/*#__PURE__*/React__default.createElement(Button, {
148
+ appearance: "transparent",
149
+ className: "text-grey-700"
150
+ }, moreButtonText));
151
+ const className = cn('flex-grow pl-4', {
161
152
  'w-full': legendPosition === 'bottom'
162
153
  });
163
154
  return /*#__PURE__*/React__default.createElement("div", {