@economic/taco 14.0.0 → 14.1.0-EC-85807-code-report-fixes.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (364) hide show
  1. package/dist/charts/components/Area/AreaChart.cjs.map +1 -1
  2. package/dist/charts/components/Area/AreaChart.d.ts +1 -1
  3. package/dist/charts/components/Area/AreaChart.js.map +1 -1
  4. package/dist/charts/components/Bar/BarChart.cjs +2 -2
  5. package/dist/charts/components/Bar/BarChart.cjs.map +1 -1
  6. package/dist/charts/components/Bar/BarChart.d.ts +1 -1
  7. package/dist/charts/components/Bar/BarChart.js +2 -2
  8. package/dist/charts/components/Bar/BarChart.js.map +1 -1
  9. package/dist/charts/components/ChartWrapper.cjs.map +1 -1
  10. package/dist/charts/components/ChartWrapper.js.map +1 -1
  11. package/dist/charts/components/Composed/BarLineChart.cjs.map +1 -1
  12. package/dist/charts/components/Composed/BarLineChart.d.ts +2 -2
  13. package/dist/charts/components/Composed/BarLineChart.js.map +1 -1
  14. package/dist/charts/components/Donut/DonutChart.cjs.map +1 -1
  15. package/dist/charts/components/Donut/DonutChart.d.ts +1 -1
  16. package/dist/charts/components/Donut/DonutChart.js.map +1 -1
  17. package/dist/charts/components/LegacyDonut/ActiveShape.cjs +7 -5
  18. package/dist/charts/components/LegacyDonut/ActiveShape.cjs.map +1 -1
  19. package/dist/charts/components/LegacyDonut/ActiveShape.d.ts +6 -3
  20. package/dist/charts/components/LegacyDonut/ActiveShape.js +7 -5
  21. package/dist/charts/components/LegacyDonut/ActiveShape.js.map +1 -1
  22. package/dist/charts/components/LegacyDonut/CenteredLabel.cjs +1 -1
  23. package/dist/charts/components/LegacyDonut/CenteredLabel.cjs.map +1 -1
  24. package/dist/charts/components/LegacyDonut/CenteredLabel.js +1 -1
  25. package/dist/charts/components/LegacyDonut/CenteredLabel.js.map +1 -1
  26. package/dist/charts/components/LegacyDonut/LegacyDonutChart.cjs +119 -103
  27. package/dist/charts/components/LegacyDonut/LegacyDonutChart.cjs.map +1 -1
  28. package/dist/charts/components/LegacyDonut/LegacyDonutChart.d.ts +13 -2
  29. package/dist/charts/components/LegacyDonut/LegacyDonutChart.js +119 -103
  30. package/dist/charts/components/LegacyDonut/LegacyDonutChart.js.map +1 -1
  31. package/dist/charts/components/LegacyDonut/Legend.cjs +1 -1
  32. package/dist/charts/components/LegacyDonut/Legend.cjs.map +1 -1
  33. package/dist/charts/components/LegacyDonut/Legend.js +1 -1
  34. package/dist/charts/components/LegacyDonut/Legend.js.map +1 -1
  35. package/dist/charts/components/Legend.cjs +1 -1
  36. package/dist/charts/components/Legend.cjs.map +1 -1
  37. package/dist/charts/components/Legend.js +1 -1
  38. package/dist/charts/components/Legend.js.map +1 -1
  39. package/dist/charts/components/Line/LineChart.cjs.map +1 -1
  40. package/dist/charts/components/Line/LineChart.d.ts +3 -2
  41. package/dist/charts/components/Line/LineChart.js.map +1 -1
  42. package/dist/charts/components/Pie/PieChart.cjs +4 -4
  43. package/dist/charts/components/Pie/PieChart.cjs.map +1 -1
  44. package/dist/charts/components/Pie/PieChart.js +4 -4
  45. package/dist/charts/components/Pie/PieChart.js.map +1 -1
  46. package/dist/charts/components/Pie/util.cjs.map +1 -1
  47. package/dist/charts/components/Pie/util.d.ts +2 -1
  48. package/dist/charts/components/Pie/util.js.map +1 -1
  49. package/dist/charts/components/Tooltip.cjs.map +1 -1
  50. package/dist/charts/components/Tooltip.d.ts +2 -3
  51. package/dist/charts/components/Tooltip.js.map +1 -1
  52. package/dist/charts/components/types.d.ts +9 -5
  53. package/dist/charts/components/useChartData.cjs +5 -3
  54. package/dist/charts/components/useChartData.cjs.map +1 -1
  55. package/dist/charts/components/useChartData.d.ts +6 -2
  56. package/dist/charts/components/useChartData.js +5 -3
  57. package/dist/charts/components/useChartData.js.map +1 -1
  58. package/dist/charts/utils/color.cjs +6 -10
  59. package/dist/charts/utils/color.cjs.map +1 -1
  60. package/dist/charts/utils/color.js +6 -10
  61. package/dist/charts/utils/color.js.map +1 -1
  62. package/dist/charts/utils/common.cjs +10 -10
  63. package/dist/charts/utils/common.cjs.map +1 -1
  64. package/dist/charts/utils/common.d.ts +5 -6
  65. package/dist/charts/utils/common.js +10 -10
  66. package/dist/charts/utils/common.js.map +1 -1
  67. package/dist/components/AlertDialog/Context.cjs.map +1 -1
  68. package/dist/components/AlertDialog/Context.d.ts +1 -1
  69. package/dist/components/AlertDialog/Context.js.map +1 -1
  70. package/dist/components/Calendar/Calendar.cjs.map +1 -1
  71. package/dist/components/Calendar/Calendar.js.map +1 -1
  72. package/dist/components/Combobox/Combobox.cjs.map +1 -1
  73. package/dist/components/Combobox/Combobox.js.map +1 -1
  74. package/dist/components/Combobox/useCombobox.cjs +2 -4
  75. package/dist/components/Combobox/useCombobox.cjs.map +1 -1
  76. package/dist/components/Combobox/useCombobox.d.ts +1 -1
  77. package/dist/components/Combobox/useCombobox.js +2 -4
  78. package/dist/components/Combobox/useCombobox.js.map +1 -1
  79. package/dist/components/Datepicker/useDatepicker.cjs.map +1 -1
  80. package/dist/components/Datepicker/useDatepicker.js.map +1 -1
  81. package/dist/components/Dialog/Context.cjs.map +1 -1
  82. package/dist/components/Dialog/Context.d.ts +1 -1
  83. package/dist/components/Dialog/Context.js.map +1 -1
  84. package/dist/components/Dialog/components/Content.cjs.map +1 -1
  85. package/dist/components/Dialog/components/Content.js.map +1 -1
  86. package/dist/components/Drawer/components/Content.cjs +1 -1
  87. package/dist/components/Drawer/components/Content.cjs.map +1 -1
  88. package/dist/components/Drawer/components/Content.js +1 -1
  89. package/dist/components/Drawer/components/Content.js.map +1 -1
  90. package/dist/components/Drawer/useDrawerStack.cjs.map +1 -1
  91. package/dist/components/Drawer/useDrawerStack.js.map +1 -1
  92. package/dist/components/Hanger/Hanger.cjs.map +1 -1
  93. package/dist/components/Hanger/Hanger.js.map +1 -1
  94. package/dist/components/Header/Header.cjs +1 -1
  95. package/dist/components/Header/Header.cjs.map +1 -1
  96. package/dist/components/Header/Header.js +1 -1
  97. package/dist/components/Header/Header.js.map +1 -1
  98. package/dist/components/Header/components/PrimaryNavigation.cjs.map +1 -1
  99. package/dist/components/Header/components/PrimaryNavigation.js.map +1 -1
  100. package/dist/components/Icon/Icon.cjs.map +1 -1
  101. package/dist/components/Icon/Icon.js.map +1 -1
  102. package/dist/components/Layout/components/Sidebar.cjs +2 -1
  103. package/dist/components/Layout/components/Sidebar.cjs.map +1 -1
  104. package/dist/components/Layout/components/Sidebar.js +2 -1
  105. package/dist/components/Layout/components/Sidebar.js.map +1 -1
  106. package/dist/components/LegacyComponents/IconButton/IconButton.cjs.map +1 -1
  107. package/dist/components/LegacyComponents/IconButton/IconButton.js.map +1 -1
  108. package/dist/components/List/components/Toggle.cjs +0 -2
  109. package/dist/components/List/components/Toggle.cjs.map +1 -1
  110. package/dist/components/List/components/Toggle.js +0 -2
  111. package/dist/components/List/components/Toggle.js.map +1 -1
  112. package/dist/components/Listbox/Listbox.cjs +2 -5
  113. package/dist/components/Listbox/Listbox.cjs.map +1 -1
  114. package/dist/components/Listbox/Listbox.js +2 -5
  115. package/dist/components/Listbox/Listbox.js.map +1 -1
  116. package/dist/components/Listbox/useListbox.cjs +1 -1
  117. package/dist/components/Listbox/useListbox.cjs.map +1 -1
  118. package/dist/components/Listbox/useListbox.js +1 -1
  119. package/dist/components/Listbox/useListbox.js.map +1 -1
  120. package/dist/components/Listbox/useMultiListbox.cjs +1 -1
  121. package/dist/components/Listbox/useMultiListbox.cjs.map +1 -1
  122. package/dist/components/Listbox/useMultiListbox.js +1 -1
  123. package/dist/components/Listbox/useMultiListbox.js.map +1 -1
  124. package/dist/components/Listbox/util.cjs.map +1 -1
  125. package/dist/components/Listbox/util.js.map +1 -1
  126. package/dist/components/Menu/components/Content.cjs.map +1 -1
  127. package/dist/components/Menu/components/Content.js.map +1 -1
  128. package/dist/components/Menu/components/Item.cjs.map +1 -1
  129. package/dist/components/Menu/components/Item.d.ts +2 -2
  130. package/dist/components/Menu/components/Item.js.map +1 -1
  131. package/dist/components/Menu/components/Trigger.cjs +1 -5
  132. package/dist/components/Menu/components/Trigger.cjs.map +1 -1
  133. package/dist/components/Menu/components/Trigger.js +1 -5
  134. package/dist/components/Menu/components/Trigger.js.map +1 -1
  135. package/dist/components/Pagination/usePaginationShortcuts.cjs +0 -1
  136. package/dist/components/Pagination/usePaginationShortcuts.cjs.map +1 -1
  137. package/dist/components/Pagination/usePaginationShortcuts.js +0 -1
  138. package/dist/components/Pagination/usePaginationShortcuts.js.map +1 -1
  139. package/dist/components/Provider/Provider.cjs.map +1 -1
  140. package/dist/components/Provider/Provider.d.ts +1 -1
  141. package/dist/components/Provider/Provider.js.map +1 -1
  142. package/dist/components/SearchInput/SearchInput.cjs +0 -1
  143. package/dist/components/SearchInput/SearchInput.cjs.map +1 -1
  144. package/dist/components/SearchInput/SearchInput.js +0 -1
  145. package/dist/components/SearchInput/SearchInput.js.map +1 -1
  146. package/dist/components/SearchInput2/SearchInput2.cjs +0 -1
  147. package/dist/components/SearchInput2/SearchInput2.cjs.map +1 -1
  148. package/dist/components/SearchInput2/SearchInput2.js +0 -1
  149. package/dist/components/SearchInput2/SearchInput2.js.map +1 -1
  150. package/dist/components/Select2/Select2.cjs +6 -7
  151. package/dist/components/Select2/Select2.cjs.map +1 -1
  152. package/dist/components/Select2/Select2.js +6 -7
  153. package/dist/components/Select2/Select2.js.map +1 -1
  154. package/dist/components/Select2/components/Search.cjs +0 -1
  155. package/dist/components/Select2/components/Search.cjs.map +1 -1
  156. package/dist/components/Select2/components/Search.js +0 -1
  157. package/dist/components/Select2/components/Search.js.map +1 -1
  158. package/dist/components/Select2/components/Trigger.cjs +1 -1
  159. package/dist/components/Select2/components/Trigger.cjs.map +1 -1
  160. package/dist/components/Select2/components/Trigger.js +1 -1
  161. package/dist/components/Select2/components/Trigger.js.map +1 -1
  162. package/dist/components/Table3/components/Columns/Cell/EditingControlCell.cjs +1 -1
  163. package/dist/components/Table3/components/Columns/Cell/EditingControlCell.cjs.map +1 -1
  164. package/dist/components/Table3/components/Columns/Cell/EditingControlCell.js +1 -1
  165. package/dist/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
  166. package/dist/components/Table3/components/Columns/Cell/util.cjs.map +1 -1
  167. package/dist/components/Table3/components/Columns/Cell/util.js.map +1 -1
  168. package/dist/components/Table3/components/Editing/Alert.cjs +4 -4
  169. package/dist/components/Table3/components/Editing/Alert.cjs.map +1 -1
  170. package/dist/components/Table3/components/Editing/Alert.js +4 -4
  171. package/dist/components/Table3/components/Editing/Alert.js.map +1 -1
  172. package/dist/components/Table3/features/useEditingState.cjs +1 -1
  173. package/dist/components/Table3/features/useEditingState.cjs.map +1 -1
  174. package/dist/components/Table3/features/useEditingState.js +1 -1
  175. package/dist/components/Table3/features/useEditingState.js.map +1 -1
  176. package/dist/components/Table3/types.d.ts +2 -2
  177. package/dist/components/Table3/useTable3.cjs +8 -6
  178. package/dist/components/Table3/useTable3.cjs.map +1 -1
  179. package/dist/components/Table3/useTable3.js +8 -6
  180. package/dist/components/Table3/useTable3.js.map +1 -1
  181. package/dist/components/Table3/util/editing.cjs +1 -1
  182. package/dist/components/Table3/util/editing.cjs.map +1 -1
  183. package/dist/components/Table3/util/editing.d.ts +1 -1
  184. package/dist/components/Table3/util/editing.js +1 -1
  185. package/dist/components/Table3/util/editing.js.map +1 -1
  186. package/dist/hooks/useBoundaryOverflowDetection.cjs.map +1 -1
  187. package/dist/hooks/useBoundaryOverflowDetection.d.ts +1 -1
  188. package/dist/hooks/useBoundaryOverflowDetection.js.map +1 -1
  189. package/dist/hooks/useBoundingClientRectListener.cjs.map +1 -1
  190. package/dist/hooks/useBoundingClientRectListener.d.ts +1 -1
  191. package/dist/hooks/useBoundingClientRectListener.js.map +1 -1
  192. package/dist/hooks/useControlled.cjs +6 -10
  193. package/dist/hooks/useControlled.cjs.map +1 -1
  194. package/dist/hooks/useControlled.js +6 -10
  195. package/dist/hooks/useControlled.js.map +1 -1
  196. package/dist/hooks/useIsFormControl.cjs.map +1 -1
  197. package/dist/hooks/useIsFormControl.d.ts +1 -1
  198. package/dist/hooks/useIsFormControl.js.map +1 -1
  199. package/dist/hooks/useMergedRef.cjs.map +1 -1
  200. package/dist/hooks/useMergedRef.js.map +1 -1
  201. package/dist/hooks/usePrevious.cjs.map +1 -1
  202. package/dist/hooks/usePrevious.js.map +1 -1
  203. package/dist/primitives/Button.cjs.map +1 -1
  204. package/dist/primitives/Button.js.map +1 -1
  205. package/dist/primitives/Collection/components/Root.cjs +9 -16
  206. package/dist/primitives/Collection/components/Root.cjs.map +1 -1
  207. package/dist/primitives/Collection/components/Root.js +9 -16
  208. package/dist/primitives/Collection/components/Root.js.map +1 -1
  209. package/dist/primitives/Listbox2/components/Context.cjs.map +1 -1
  210. package/dist/primitives/Listbox2/components/Context.d.ts +1 -0
  211. package/dist/primitives/Listbox2/components/Context.js.map +1 -1
  212. package/dist/primitives/Listbox2/components/Option.cjs +8 -2
  213. package/dist/primitives/Listbox2/components/Option.cjs.map +1 -1
  214. package/dist/primitives/Listbox2/components/Option.js +8 -2
  215. package/dist/primitives/Listbox2/components/Option.js.map +1 -1
  216. package/dist/primitives/Listbox2/components/Root.cjs +3 -2
  217. package/dist/primitives/Listbox2/components/Root.cjs.map +1 -1
  218. package/dist/primitives/Listbox2/components/Root.js +3 -2
  219. package/dist/primitives/Listbox2/components/Root.js.map +1 -1
  220. package/dist/primitives/Sortable/components/Item.cjs +2 -4
  221. package/dist/primitives/Sortable/components/Item.cjs.map +1 -1
  222. package/dist/primitives/Sortable/components/Item.js +2 -4
  223. package/dist/primitives/Sortable/components/Item.js.map +1 -1
  224. package/dist/primitives/Table/Core/components/Body/Body.cjs +4 -4
  225. package/dist/primitives/Table/Core/components/Body/Body.cjs.map +1 -1
  226. package/dist/primitives/Table/Core/components/Body/Body.js +4 -4
  227. package/dist/primitives/Table/Core/components/Body/Body.js.map +1 -1
  228. package/dist/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.cjs.map +1 -1
  229. package/dist/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js.map +1 -1
  230. package/dist/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.cjs.map +1 -1
  231. package/dist/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js.map +1 -1
  232. package/dist/primitives/Table/Core/components/Columns/Cell/util.cjs +22 -16
  233. package/dist/primitives/Table/Core/components/Columns/Cell/util.cjs.map +1 -1
  234. package/dist/primitives/Table/Core/components/Columns/Cell/util.js +22 -16
  235. package/dist/primitives/Table/Core/components/Columns/Cell/util.js.map +1 -1
  236. package/dist/primitives/Table/Core/components/Footer/Summary.cjs.map +1 -1
  237. package/dist/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
  238. package/dist/primitives/Table/Core/components/Header/util.cjs +4 -3
  239. package/dist/primitives/Table/Core/components/Header/util.cjs.map +1 -1
  240. package/dist/primitives/Table/Core/components/Header/util.js +4 -3
  241. package/dist/primitives/Table/Core/components/Header/util.js.map +1 -1
  242. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/Filters.cjs +1 -1
  243. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/Filters.cjs.map +1 -1
  244. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js +1 -1
  245. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js.map +1 -1
  246. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.cjs +4 -2
  247. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.cjs.map +1 -1
  248. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js +4 -2
  249. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js.map +1 -1
  250. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.cjs.map +1 -1
  251. package/dist/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js.map +1 -1
  252. package/dist/primitives/Table/Core/components/Toolbar/components/Print/Print.cjs +1 -1
  253. package/dist/primitives/Table/Core/components/Toolbar/components/Print/Print.cjs.map +1 -1
  254. package/dist/primitives/Table/Core/components/Toolbar/components/Print/Print.js +1 -1
  255. package/dist/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
  256. package/dist/primitives/Table/Core/features/useTableRef.cjs +7 -0
  257. package/dist/primitives/Table/Core/features/useTableRef.cjs.map +1 -1
  258. package/dist/primitives/Table/Core/features/useTableRef.js +7 -0
  259. package/dist/primitives/Table/Core/features/useTableRef.js.map +1 -1
  260. package/dist/primitives/Table/Core/features/useTableRenderer.cjs +2 -2
  261. package/dist/primitives/Table/Core/features/useTableRenderer.cjs.map +1 -1
  262. package/dist/primitives/Table/Core/features/useTableRenderer.js +2 -2
  263. package/dist/primitives/Table/Core/features/useTableRenderer.js.map +1 -1
  264. package/dist/primitives/Table/Core/features/useTableStyleColumnFreezing.cjs +2 -2
  265. package/dist/primitives/Table/Core/features/useTableStyleColumnFreezing.cjs.map +1 -1
  266. package/dist/primitives/Table/Core/features/useTableStyleColumnFreezing.js +2 -2
  267. package/dist/primitives/Table/Core/features/useTableStyleColumnFreezing.js.map +1 -1
  268. package/dist/primitives/Table/Core/features/useTableStyleGrid.cjs.map +1 -1
  269. package/dist/primitives/Table/Core/features/useTableStyleGrid.js.map +1 -1
  270. package/dist/primitives/Table/Core/listeners/useTableRowActiveListener.cjs +2 -4
  271. package/dist/primitives/Table/Core/listeners/useTableRowActiveListener.cjs.map +1 -1
  272. package/dist/primitives/Table/Core/listeners/useTableRowActiveListener.d.ts +2 -2
  273. package/dist/primitives/Table/Core/listeners/useTableRowActiveListener.js +2 -4
  274. package/dist/primitives/Table/Core/listeners/useTableRowActiveListener.js.map +1 -1
  275. package/dist/primitives/Table/types.cjs.map +1 -1
  276. package/dist/primitives/Table/types.d.ts +6 -0
  277. package/dist/primitives/Table/types.js.map +1 -1
  278. package/dist/primitives/Table/useTableDataLoader2.cjs +36 -3
  279. package/dist/primitives/Table/useTableDataLoader2.cjs.map +1 -1
  280. package/dist/primitives/Table/useTableDataLoader2.d.ts +2 -1
  281. package/dist/primitives/Table/useTableDataLoader2.js +36 -3
  282. package/dist/primitives/Table/useTableDataLoader2.js.map +1 -1
  283. package/dist/primitives/Table/useTableManager/features/useTableRowActive.cjs +0 -1
  284. package/dist/primitives/Table/useTableManager/features/useTableRowActive.cjs.map +1 -1
  285. package/dist/primitives/Table/useTableManager/features/useTableRowActive.d.ts +1 -1
  286. package/dist/primitives/Table/useTableManager/features/useTableRowActive.js +0 -1
  287. package/dist/primitives/Table/useTableManager/features/useTableRowActive.js.map +1 -1
  288. package/dist/primitives/Table/useTableManager/features/useTableRowClick.cjs +0 -2
  289. package/dist/primitives/Table/useTableManager/features/useTableRowClick.cjs.map +1 -1
  290. package/dist/primitives/Table/useTableManager/features/useTableRowClick.js +0 -2
  291. package/dist/primitives/Table/useTableManager/features/useTableRowClick.js.map +1 -1
  292. package/dist/primitives/Table/useTableManager/features/useTableRowSelection.cjs +0 -1
  293. package/dist/primitives/Table/useTableManager/features/useTableRowSelection.cjs.map +1 -1
  294. package/dist/primitives/Table/useTableManager/features/useTableRowSelection.js +0 -1
  295. package/dist/primitives/Table/useTableManager/features/useTableRowSelection.js.map +1 -1
  296. package/dist/primitives/Table/useTableManager/features/useTableServerLoading.cjs +10 -1
  297. package/dist/primitives/Table/useTableManager/features/useTableServerLoading.cjs.map +1 -1
  298. package/dist/primitives/Table/useTableManager/features/useTableServerLoading.d.ts +3 -2
  299. package/dist/primitives/Table/useTableManager/features/useTableServerLoading.js +10 -1
  300. package/dist/primitives/Table/useTableManager/features/useTableServerLoading.js.map +1 -1
  301. package/dist/primitives/Table/useTableManager/useTableManager.cjs +1 -5
  302. package/dist/primitives/Table/useTableManager/useTableManager.cjs.map +1 -1
  303. package/dist/primitives/Table/useTableManager/useTableManager.js +1 -5
  304. package/dist/primitives/Table/useTableManager/useTableManager.js.map +1 -1
  305. package/dist/primitives/Table/useTableManager/util/dataTypes.cjs.map +1 -1
  306. package/dist/primitives/Table/useTableManager/util/dataTypes.d.ts +3 -3
  307. package/dist/primitives/Table/useTableManager/util/dataTypes.js.map +1 -1
  308. package/dist/primitives/Table/useTableManager/util/filtering.cjs.map +1 -1
  309. package/dist/primitives/Table/useTableManager/util/filtering.js.map +1 -1
  310. package/dist/primitives/Table/useTableManager/util/search.cjs +1 -1
  311. package/dist/primitives/Table/useTableManager/util/search.cjs.map +1 -1
  312. package/dist/primitives/Table/useTableManager/util/search.js +1 -1
  313. package/dist/primitives/Table/useTableManager/util/search.js.map +1 -1
  314. package/dist/primitives/Table/useTableManager/util/setup.cjs +3 -3
  315. package/dist/primitives/Table/useTableManager/util/setup.cjs.map +1 -1
  316. package/dist/primitives/Table/useTableManager/util/setup.js +3 -3
  317. package/dist/primitives/Table/useTableManager/util/setup.js.map +1 -1
  318. package/dist/types.cjs.map +1 -1
  319. package/dist/types.d.ts +1 -1
  320. package/dist/types.js.map +1 -1
  321. package/dist/utils/dataTypes.cjs +4 -4
  322. package/dist/utils/dataTypes.cjs.map +1 -1
  323. package/dist/utils/dataTypes.d.ts +1 -1
  324. package/dist/utils/dataTypes.js +4 -4
  325. package/dist/utils/dataTypes.js.map +1 -1
  326. package/dist/utils/date.cjs +14 -16
  327. package/dist/utils/date.cjs.map +1 -1
  328. package/dist/utils/date.js +14 -16
  329. package/dist/utils/date.js.map +1 -1
  330. package/dist/utils/debounce.cjs.map +1 -1
  331. package/dist/utils/debounce.d.ts +1 -1
  332. package/dist/utils/debounce.js.map +1 -1
  333. package/dist/utils/device.cjs +1 -1
  334. package/dist/utils/device.cjs.map +1 -1
  335. package/dist/utils/device.js +1 -1
  336. package/dist/utils/device.js.map +1 -1
  337. package/dist/utils/dom.cjs +1 -1
  338. package/dist/utils/dom.cjs.map +1 -1
  339. package/dist/utils/dom.d.ts +2 -2
  340. package/dist/utils/dom.js +1 -1
  341. package/dist/utils/dom.js.map +1 -1
  342. package/dist/utils/hooks/useDraggable.cjs.map +1 -1
  343. package/dist/utils/hooks/useDraggable.d.ts +9 -1
  344. package/dist/utils/hooks/useDraggable.js.map +1 -1
  345. package/dist/utils/hooks/useListKeyboardNavigation.cjs +1 -1
  346. package/dist/utils/hooks/useListKeyboardNavigation.cjs.map +1 -1
  347. package/dist/utils/hooks/useListKeyboardNavigation.js +1 -1
  348. package/dist/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  349. package/dist/utils/hooks/useListScrollTo.cjs.map +1 -1
  350. package/dist/utils/hooks/useListScrollTo.d.ts +4 -1
  351. package/dist/utils/hooks/useListScrollTo.js.map +1 -1
  352. package/dist/utils/hooks/useOnClickOutside.cjs.map +1 -1
  353. package/dist/utils/hooks/useOnClickOutside.d.ts +1 -1
  354. package/dist/utils/hooks/useOnClickOutside.js.map +1 -1
  355. package/dist/utils/hooks/useTruncated.cjs.map +1 -1
  356. package/dist/utils/hooks/useTruncated.d.ts +2 -1
  357. package/dist/utils/hooks/useTruncated.js.map +1 -1
  358. package/dist/utils/mergeRefs.cjs.map +1 -1
  359. package/dist/utils/mergeRefs.d.ts +1 -1
  360. package/dist/utils/mergeRefs.js.map +1 -1
  361. package/dist/utils/storyutils.d.ts +1 -3
  362. package/package.json +4 -5
  363. package/plugins/tailwindcss-group-peer.js +1 -1
  364. package/scripts/stylelint-plugin/radius.mjs +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.cjs","sources":["../../../../src/charts/components/LegacyDonut/Legend.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { getThemeColor } from '@/charts/utils/color';\n\nimport type { LegacyDonutChartProps, LegacyDonutChartSegmentProps, LegacyDonutSegmentIds } from './LegacyDonutChart';\n\ntype LegendProps = Pick<LegacyDonutChartProps, 'formatter' | 'label'> & {\n data: LegacyDonutChartSegmentProps[];\n hoveredItem: LegacyDonutSegmentIds;\n onClick: (entry: LegacyDonutChartSegmentProps | LegacyDonutChartSegmentProps[]) => void;\n selectedItem: LegacyDonutSegmentIds;\n setHoveredItem: React.Dispatch<React.SetStateAction<LegacyDonutSegmentIds>>;\n total: number;\n};\n\nexport const Legend = ({ hoveredItem, selectedItem, data, onClick, setHoveredItem, formatter, total, label }: LegendProps) => {\n const isTotalLegendSelected = selectedItem.length === data.length;\n const isTotalLegendHovered = hoveredItem.length === data.length;\n\n const handleMouseLeave = () => setHoveredItem([]);\n\n const renderLegendItem = (entry: LegacyDonutChartSegmentProps | null, index?: number) => {\n const isTotal = entry === null;\n // We can't use `isTotal` here because TypeScript is unable to infer the type when `entry` is not null.\n const itemData = entry === null ? { id: 'total', label, value: total, color: 'grey-300' } : entry;\n const isSelected = isTotal ? isTotalLegendSelected : selectedItem.includes(itemData.id);\n const isHovered = isTotal ? isTotalLegendHovered : hoveredItem.includes(itemData.id);\n\n return (\n <li\n key={isTotal ? 'total' : `${itemData.label}-${index}`}\n // oxlint-disable-next-line taco/no-component-margin -- grandfathered; removing this margin is a visual breaking change\n className={cn('mr-2 flex cursor-pointer gap-2 rounded pl-0 pr-1', {\n 'bg-gray-100': isHovered,\n 'bg-gray-200': isSelected,\n })}\n onClick={() => onClick(isTotal ? data : itemData)}\n onMouseEnter={() => setHoveredItem(isTotal ? data.map(item => item.id) : [itemData.id])}\n onMouseLeave={handleMouseLeave}>\n <span className=\"ml-1 mt-1 h-9 w-2 rounded-sm\" style={{ backgroundColor: getThemeColor(itemData.color) }} />\n <div>\n {itemData.label}\n <span className=\"-mt-1 flex w-full text-lg font-bold\">\n {formatter ? formatter(itemData.value) : itemData.value}\n </span>\n </div>\n </li>\n );\n };\n\n return (\n <div className=\"flex-grow pl-4\">\n <ul className=\"mb-0 ml-0 mt-4 flex flex-col justify-center gap-1 space-y-1\">\n {renderLegendItem(null)}\n {data.map(renderLegendItem)}\n </ul>\n </div>\n );\n};\n"],"names":["getThemeColor"],"mappings":";;;;;AAgBO,MAAM,SAAS,CAAC,EAAE,aAAa,cAAc,MAAM,SAAS,gBAAgB,WAAW,OAAO,YAAyB;AAC1H,QAAM,wBAAwB,aAAa,WAAW,KAAK;AAC3D,QAAM,uBAAuB,YAAY,WAAW,KAAK;AAEzD,QAAM,mBAAmB,MAAM,eAAe,EAAE;AAEhD,QAAM,mBAAmB,CAAC,OAA4C,UAAmB;AACrF,UAAM,UAAU,UAAU;AAE1B,UAAM,WAAW,UAAU,OAAO,EAAE,IAAI,SAAS,OAAO,OAAO,OAAO,OAAO,WAAA,IAAe;AAC5F,UAAM,aAAa,UAAU,wBAAwB,aAAa,SAAS,SAAS,EAAE;AACtF,UAAM,YAAY,UAAU,uBAAuB,YAAY,SAAS,SAAS,EAAE;AAEnF,WACI,sBAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,KAAK,UAAU,UAAU,GAAG,SAAS,KAAK,IAAI,KAAK;AAAA,QAEnD,WAAW,GAAG,oDAAoD;AAAA,UAC9D,eAAe;AAAA,UACf,eAAe;AAAA,QAAA,CAClB;AAAA,QACD,SAAS,MAAM,QAAQ,UAAU,OAAO,QAAQ;AAAA,QAChD,cAAc,MAAM,eAAe,UAAU,KAAK,IAAI,CAAA,SAAQ,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;AAAA,QACtF,cAAc;AAAA,MAAA;AAAA,MACd,sBAAA,cAAC,QAAA,EAAK,WAAU,gCAA+B,OAAO,EAAE,iBAAiBA,MAAAA,cAAc,SAAS,KAAK,EAAA,EAAE,CAAG;AAAA,MAC1G,sBAAA,cAAC,OAAA,MACI,SAAS,2CACT,QAAA,EAAK,WAAU,sCAAA,GACX,YAAY,UAAU,SAAS,KAAK,IAAI,SAAS,KACtD,CACJ;AAAA,IAAA;AAAA,EAGZ;AAEA,SACI,sBAAA,cAAC,OAAA,EAAI,WAAU,iBAAA,uCACV,MAAA,EAAG,WAAU,8DAAA,GACT,iBAAiB,IAAI,GACrB,KAAK,IAAI,gBAAgB,CAC9B,CACJ;AAER;;"}
1
+ {"version":3,"file":"Legend.cjs","sources":["../../../../src/charts/components/LegacyDonut/Legend.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { getThemeColor } from '@/charts/utils/color';\n\nimport type { LegacyDonutChartProps, LegacyDonutChartSegmentProps, LegacyDonutSegmentIds } from './LegacyDonutChart';\n\ntype LegendProps = Pick<LegacyDonutChartProps, 'formatter' | 'label'> & {\n data: LegacyDonutChartSegmentProps[];\n hoveredItem: LegacyDonutSegmentIds;\n onClick: (entry: LegacyDonutChartSegmentProps | LegacyDonutChartSegmentProps[]) => void;\n selectedItem: LegacyDonutSegmentIds;\n setHoveredItem: React.Dispatch<React.SetStateAction<LegacyDonutSegmentIds>>;\n total: number;\n};\n\nexport const Legend = ({ hoveredItem, selectedItem, data, onClick, setHoveredItem, formatter, total, label }: LegendProps) => {\n const isTotalLegendSelected = selectedItem.length === data.length;\n const isTotalLegendHovered = hoveredItem.length === data.length;\n\n const handleMouseLeave = () => setHoveredItem([]);\n\n const renderLegendItem = (entry: LegacyDonutChartSegmentProps | null, index?: number) => {\n const isTotal = entry === null;\n // We can't use `isTotal` here because TypeScript is unable to infer the type when `entry` is not null.\n const itemData = entry === null ? { id: 'total', label, value: total, color: 'grey-300' } : entry;\n const isSelected = isTotal ? isTotalLegendSelected : selectedItem.includes(itemData.id);\n const isHovered = isTotal ? isTotalLegendHovered : hoveredItem.includes(itemData.id);\n\n return (\n <li\n key={isTotal ? 'total' : `${itemData.label}-${index}`}\n // oxlint-disable-next-line taco/no-component-margin -- grandfathered; removing this margin is a visual breaking change\n className={cn('mr-2 flex cursor-pointer gap-2 rounded pl-0 pr-1', {\n 'bg-gray-100': isHovered,\n 'bg-gray-200': isSelected,\n })}\n onClick={() => onClick(isTotal ? data : itemData)}\n onMouseEnter={() => setHoveredItem(isTotal ? data.map(item => item.id) : [itemData.id])}\n onMouseLeave={handleMouseLeave}>\n <span className=\"ml-1 mt-1 h-9 w-2 rounded-sm\" style={{ backgroundColor: getThemeColor(itemData.color) }} />\n <div>\n {itemData.label}\n <span className=\"-mt-1 flex w-full text-lg font-bold\">\n {formatter ? formatter(itemData.value) : itemData.value}\n </span>\n </div>\n </li>\n );\n };\n\n return (\n <div className=\"flex-grow pl-4\">\n <ul className=\"mb-0 ml-0 mt-4 flex flex-col justify-center gap-1 space-y-1\">\n {renderLegendItem(null)}\n {data.map(item => renderLegendItem(item))}\n </ul>\n </div>\n );\n};\n"],"names":["getThemeColor"],"mappings":";;;;;AAgBO,MAAM,SAAS,CAAC,EAAE,aAAa,cAAc,MAAM,SAAS,gBAAgB,WAAW,OAAO,YAAyB;AAC1H,QAAM,wBAAwB,aAAa,WAAW,KAAK;AAC3D,QAAM,uBAAuB,YAAY,WAAW,KAAK;AAEzD,QAAM,mBAAmB,MAAM,eAAe,EAAE;AAEhD,QAAM,mBAAmB,CAAC,OAA4C,UAAmB;AACrF,UAAM,UAAU,UAAU;AAE1B,UAAM,WAAW,UAAU,OAAO,EAAE,IAAI,SAAS,OAAO,OAAO,OAAO,OAAO,WAAA,IAAe;AAC5F,UAAM,aAAa,UAAU,wBAAwB,aAAa,SAAS,SAAS,EAAE;AACtF,UAAM,YAAY,UAAU,uBAAuB,YAAY,SAAS,SAAS,EAAE;AAEnF,WACI,sBAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,KAAK,UAAU,UAAU,GAAG,SAAS,KAAK,IAAI,KAAK;AAAA,QAEnD,WAAW,GAAG,oDAAoD;AAAA,UAC9D,eAAe;AAAA,UACf,eAAe;AAAA,QAAA,CAClB;AAAA,QACD,SAAS,MAAM,QAAQ,UAAU,OAAO,QAAQ;AAAA,QAChD,cAAc,MAAM,eAAe,UAAU,KAAK,IAAI,CAAA,SAAQ,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;AAAA,QACtF,cAAc;AAAA,MAAA;AAAA,MACd,sBAAA,cAAC,QAAA,EAAK,WAAU,gCAA+B,OAAO,EAAE,iBAAiBA,MAAAA,cAAc,SAAS,KAAK,EAAA,EAAE,CAAG;AAAA,MAC1G,sBAAA,cAAC,OAAA,MACI,SAAS,2CACT,QAAA,EAAK,WAAU,sCAAA,GACX,YAAY,UAAU,SAAS,KAAK,IAAI,SAAS,KACtD,CACJ;AAAA,IAAA;AAAA,EAGZ;AAEA,6CACK,OAAA,EAAI,WAAU,oBACX,sBAAA,cAAC,MAAA,EAAG,WAAU,8DAAA,GACT,iBAAiB,IAAI,GACrB,KAAK,IAAI,CAAA,SAAQ,iBAAiB,IAAI,CAAC,CAC5C,CACJ;AAER;;"}
@@ -26,7 +26,7 @@ const Legend = ({ hoveredItem, selectedItem, data, onClick, setHoveredItem, form
26
26
  /* @__PURE__ */ React__default.createElement("div", null, itemData.label, /* @__PURE__ */ React__default.createElement("span", { className: "-mt-1 flex w-full text-lg font-bold" }, formatter ? formatter(itemData.value) : itemData.value))
27
27
  );
28
28
  };
29
- return /* @__PURE__ */ React__default.createElement("div", { className: "flex-grow pl-4" }, /* @__PURE__ */ React__default.createElement("ul", { className: "mb-0 ml-0 mt-4 flex flex-col justify-center gap-1 space-y-1" }, renderLegendItem(null), data.map(renderLegendItem)));
29
+ return /* @__PURE__ */ React__default.createElement("div", { className: "flex-grow pl-4" }, /* @__PURE__ */ React__default.createElement("ul", { className: "mb-0 ml-0 mt-4 flex flex-col justify-center gap-1 space-y-1" }, renderLegendItem(null), data.map((item) => renderLegendItem(item))));
30
30
  };
31
31
  export {
32
32
  Legend
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.js","sources":["../../../../src/charts/components/LegacyDonut/Legend.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { getThemeColor } from '@/charts/utils/color';\n\nimport type { LegacyDonutChartProps, LegacyDonutChartSegmentProps, LegacyDonutSegmentIds } from './LegacyDonutChart';\n\ntype LegendProps = Pick<LegacyDonutChartProps, 'formatter' | 'label'> & {\n data: LegacyDonutChartSegmentProps[];\n hoveredItem: LegacyDonutSegmentIds;\n onClick: (entry: LegacyDonutChartSegmentProps | LegacyDonutChartSegmentProps[]) => void;\n selectedItem: LegacyDonutSegmentIds;\n setHoveredItem: React.Dispatch<React.SetStateAction<LegacyDonutSegmentIds>>;\n total: number;\n};\n\nexport const Legend = ({ hoveredItem, selectedItem, data, onClick, setHoveredItem, formatter, total, label }: LegendProps) => {\n const isTotalLegendSelected = selectedItem.length === data.length;\n const isTotalLegendHovered = hoveredItem.length === data.length;\n\n const handleMouseLeave = () => setHoveredItem([]);\n\n const renderLegendItem = (entry: LegacyDonutChartSegmentProps | null, index?: number) => {\n const isTotal = entry === null;\n // We can't use `isTotal` here because TypeScript is unable to infer the type when `entry` is not null.\n const itemData = entry === null ? { id: 'total', label, value: total, color: 'grey-300' } : entry;\n const isSelected = isTotal ? isTotalLegendSelected : selectedItem.includes(itemData.id);\n const isHovered = isTotal ? isTotalLegendHovered : hoveredItem.includes(itemData.id);\n\n return (\n <li\n key={isTotal ? 'total' : `${itemData.label}-${index}`}\n // oxlint-disable-next-line taco/no-component-margin -- grandfathered; removing this margin is a visual breaking change\n className={cn('mr-2 flex cursor-pointer gap-2 rounded pl-0 pr-1', {\n 'bg-gray-100': isHovered,\n 'bg-gray-200': isSelected,\n })}\n onClick={() => onClick(isTotal ? data : itemData)}\n onMouseEnter={() => setHoveredItem(isTotal ? data.map(item => item.id) : [itemData.id])}\n onMouseLeave={handleMouseLeave}>\n <span className=\"ml-1 mt-1 h-9 w-2 rounded-sm\" style={{ backgroundColor: getThemeColor(itemData.color) }} />\n <div>\n {itemData.label}\n <span className=\"-mt-1 flex w-full text-lg font-bold\">\n {formatter ? formatter(itemData.value) : itemData.value}\n </span>\n </div>\n </li>\n );\n };\n\n return (\n <div className=\"flex-grow pl-4\">\n <ul className=\"mb-0 ml-0 mt-4 flex flex-col justify-center gap-1 space-y-1\">\n {renderLegendItem(null)}\n {data.map(renderLegendItem)}\n </ul>\n </div>\n );\n};\n"],"names":["React"],"mappings":";;;AAgBO,MAAM,SAAS,CAAC,EAAE,aAAa,cAAc,MAAM,SAAS,gBAAgB,WAAW,OAAO,YAAyB;AAC1H,QAAM,wBAAwB,aAAa,WAAW,KAAK;AAC3D,QAAM,uBAAuB,YAAY,WAAW,KAAK;AAEzD,QAAM,mBAAmB,MAAM,eAAe,EAAE;AAEhD,QAAM,mBAAmB,CAAC,OAA4C,UAAmB;AACrF,UAAM,UAAU,UAAU;AAE1B,UAAM,WAAW,UAAU,OAAO,EAAE,IAAI,SAAS,OAAO,OAAO,OAAO,OAAO,WAAA,IAAe;AAC5F,UAAM,aAAa,UAAU,wBAAwB,aAAa,SAAS,SAAS,EAAE;AACtF,UAAM,YAAY,UAAU,uBAAuB,YAAY,SAAS,SAAS,EAAE;AAEnF,WACIA,+BAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,KAAK,UAAU,UAAU,GAAG,SAAS,KAAK,IAAI,KAAK;AAAA,QAEnD,WAAW,GAAG,oDAAoD;AAAA,UAC9D,eAAe;AAAA,UACf,eAAe;AAAA,QAAA,CAClB;AAAA,QACD,SAAS,MAAM,QAAQ,UAAU,OAAO,QAAQ;AAAA,QAChD,cAAc,MAAM,eAAe,UAAU,KAAK,IAAI,CAAA,SAAQ,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;AAAA,QACtF,cAAc;AAAA,MAAA;AAAA,MACdA,+BAAA,cAAC,QAAA,EAAK,WAAU,gCAA+B,OAAO,EAAE,iBAAiB,cAAc,SAAS,KAAK,EAAA,EAAE,CAAG;AAAA,MAC1GA,+BAAA,cAAC,OAAA,MACI,SAAS,oDACT,QAAA,EAAK,WAAU,sCAAA,GACX,YAAY,UAAU,SAAS,KAAK,IAAI,SAAS,KACtD,CACJ;AAAA,IAAA;AAAA,EAGZ;AAEA,SACIA,+BAAA,cAAC,OAAA,EAAI,WAAU,iBAAA,gDACV,MAAA,EAAG,WAAU,8DAAA,GACT,iBAAiB,IAAI,GACrB,KAAK,IAAI,gBAAgB,CAC9B,CACJ;AAER;"}
1
+ {"version":3,"file":"Legend.js","sources":["../../../../src/charts/components/LegacyDonut/Legend.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\n\nimport { getThemeColor } from '@/charts/utils/color';\n\nimport type { LegacyDonutChartProps, LegacyDonutChartSegmentProps, LegacyDonutSegmentIds } from './LegacyDonutChart';\n\ntype LegendProps = Pick<LegacyDonutChartProps, 'formatter' | 'label'> & {\n data: LegacyDonutChartSegmentProps[];\n hoveredItem: LegacyDonutSegmentIds;\n onClick: (entry: LegacyDonutChartSegmentProps | LegacyDonutChartSegmentProps[]) => void;\n selectedItem: LegacyDonutSegmentIds;\n setHoveredItem: React.Dispatch<React.SetStateAction<LegacyDonutSegmentIds>>;\n total: number;\n};\n\nexport const Legend = ({ hoveredItem, selectedItem, data, onClick, setHoveredItem, formatter, total, label }: LegendProps) => {\n const isTotalLegendSelected = selectedItem.length === data.length;\n const isTotalLegendHovered = hoveredItem.length === data.length;\n\n const handleMouseLeave = () => setHoveredItem([]);\n\n const renderLegendItem = (entry: LegacyDonutChartSegmentProps | null, index?: number) => {\n const isTotal = entry === null;\n // We can't use `isTotal` here because TypeScript is unable to infer the type when `entry` is not null.\n const itemData = entry === null ? { id: 'total', label, value: total, color: 'grey-300' } : entry;\n const isSelected = isTotal ? isTotalLegendSelected : selectedItem.includes(itemData.id);\n const isHovered = isTotal ? isTotalLegendHovered : hoveredItem.includes(itemData.id);\n\n return (\n <li\n key={isTotal ? 'total' : `${itemData.label}-${index}`}\n // oxlint-disable-next-line taco/no-component-margin -- grandfathered; removing this margin is a visual breaking change\n className={cn('mr-2 flex cursor-pointer gap-2 rounded pl-0 pr-1', {\n 'bg-gray-100': isHovered,\n 'bg-gray-200': isSelected,\n })}\n onClick={() => onClick(isTotal ? data : itemData)}\n onMouseEnter={() => setHoveredItem(isTotal ? data.map(item => item.id) : [itemData.id])}\n onMouseLeave={handleMouseLeave}>\n <span className=\"ml-1 mt-1 h-9 w-2 rounded-sm\" style={{ backgroundColor: getThemeColor(itemData.color) }} />\n <div>\n {itemData.label}\n <span className=\"-mt-1 flex w-full text-lg font-bold\">\n {formatter ? formatter(itemData.value) : itemData.value}\n </span>\n </div>\n </li>\n );\n };\n\n return (\n <div className=\"flex-grow pl-4\">\n <ul className=\"mb-0 ml-0 mt-4 flex flex-col justify-center gap-1 space-y-1\">\n {renderLegendItem(null)}\n {data.map(item => renderLegendItem(item))}\n </ul>\n </div>\n );\n};\n"],"names":["React"],"mappings":";;;AAgBO,MAAM,SAAS,CAAC,EAAE,aAAa,cAAc,MAAM,SAAS,gBAAgB,WAAW,OAAO,YAAyB;AAC1H,QAAM,wBAAwB,aAAa,WAAW,KAAK;AAC3D,QAAM,uBAAuB,YAAY,WAAW,KAAK;AAEzD,QAAM,mBAAmB,MAAM,eAAe,EAAE;AAEhD,QAAM,mBAAmB,CAAC,OAA4C,UAAmB;AACrF,UAAM,UAAU,UAAU;AAE1B,UAAM,WAAW,UAAU,OAAO,EAAE,IAAI,SAAS,OAAO,OAAO,OAAO,OAAO,WAAA,IAAe;AAC5F,UAAM,aAAa,UAAU,wBAAwB,aAAa,SAAS,SAAS,EAAE;AACtF,UAAM,YAAY,UAAU,uBAAuB,YAAY,SAAS,SAAS,EAAE;AAEnF,WACIA,+BAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,KAAK,UAAU,UAAU,GAAG,SAAS,KAAK,IAAI,KAAK;AAAA,QAEnD,WAAW,GAAG,oDAAoD;AAAA,UAC9D,eAAe;AAAA,UACf,eAAe;AAAA,QAAA,CAClB;AAAA,QACD,SAAS,MAAM,QAAQ,UAAU,OAAO,QAAQ;AAAA,QAChD,cAAc,MAAM,eAAe,UAAU,KAAK,IAAI,CAAA,SAAQ,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;AAAA,QACtF,cAAc;AAAA,MAAA;AAAA,MACdA,+BAAA,cAAC,QAAA,EAAK,WAAU,gCAA+B,OAAO,EAAE,iBAAiB,cAAc,SAAS,KAAK,EAAA,EAAE,CAAG;AAAA,MAC1GA,+BAAA,cAAC,OAAA,MACI,SAAS,oDACT,QAAA,EAAK,WAAU,sCAAA,GACX,YAAY,UAAU,SAAS,KAAK,IAAI,SAAS,KACtD,CACJ;AAAA,IAAA;AAAA,EAGZ;AAEA,sDACK,OAAA,EAAI,WAAU,oBACXA,+BAAA,cAAC,MAAA,EAAG,WAAU,8DAAA,GACT,iBAAiB,IAAI,GACrB,KAAK,IAAI,CAAA,SAAQ,iBAAiB,IAAI,CAAC,CAC5C,CACJ;AAER;"}
@@ -10,7 +10,7 @@ function getDarkerThemeColor(color$1) {
10
10
  if (!colorName) {
11
11
  return void 0;
12
12
  }
13
- return color.getThemeColor(colorName.replace(/-\d+$/, "-300"));
13
+ return color.getThemeColor(colorName.replace(/-\d+$/u, "-300"));
14
14
  }
15
15
  function Legend(props) {
16
16
  const { items, onHover: handleHover, onToggle: handleToggle } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.cjs","sources":["../../../src/charts/components/Legend.tsx"],"sourcesContent":["import React from 'react';\n\nimport { colors, getThemeColor } from '@/charts/utils/color';\nimport { Icon, LegacyButton, OverflowGroup } from '@/components';\n\nimport type { ChartChildProps } from './types';\n\nexport type LegendProps<TData extends object> = {\n items: ChartChildProps<TData>[];\n hoverIndex: number | undefined;\n onHover: (index: number | undefined) => void;\n onToggle: (name: keyof TData) => void;\n};\n\nfunction getDarkerThemeColor(color: string | undefined) {\n const colorName = Object.keys(colors).find(name => colors[name] === color);\n\n if (!colorName) {\n return undefined;\n }\n\n return getThemeColor(colorName.replace(/-\\d+$/, '-300'));\n}\n\nexport function Legend<TData extends object>(props: LegendProps<TData>) {\n const { items, onHover: handleHover, onToggle: handleToggle } = props;\n\n const handleMouseEnter = (item: ChartChildProps<TData>, index: number) => {\n if (item.isHidden) {\n return;\n }\n\n handleHover(index);\n };\n const handleMouseLeave = () => handleHover(undefined);\n\n const handleClick = (item: ChartChildProps<TData>) => {\n // remove hover if hiding the item\n if (!item.isHidden) {\n handleHover(undefined);\n }\n\n handleToggle(item.dataKey);\n };\n\n const moreButton = (moreButtonText: string) => (\n <LegacyButton appearance=\"transparent\" className=\"!h-5 !min-h-[1.25rem] !px-1.5 text-xs text-gray-700\">\n {moreButtonText}\n </LegacyButton>\n );\n\n return (\n // oxlint-disable-next-line taco/no-component-margin -- grandfathered; removing this margin is a visual breaking change\n <OverflowGroup className=\"mt-3 w-full gap-x-1\" moreButton={moreButton}>\n {items.map((item, index) => {\n const className = 'mr-1 flex h-3.5 w-3.5 rounded-sm border';\n const style: React.CSSProperties = {};\n const darkerThemeColor = getDarkerThemeColor(item.color);\n\n if (!item.isHidden) {\n style.backgroundColor = item.color;\n style.borderColor = darkerThemeColor;\n }\n\n return (\n <button\n key={`${item.label}_${index}`}\n className=\"flex items-center rounded px-1 !text-xs hover:bg-gray-100 focus-visible:yt-focus\"\n onClick={event => {\n event?.preventDefault();\n handleClick(item);\n }}\n onMouseEnter={() => handleMouseEnter(item, index)}\n onMouseLeave={() => handleMouseLeave()}>\n <span className={className} style={style}>\n {item.isHidden ? null : <Icon name=\"tick-bold\" className=\"!h-full !w-full text-white\" />}\n </span>\n {item.label}\n </button>\n );\n })}\n </OverflowGroup>\n );\n}\n"],"names":["color","colors","getThemeColor","LegacyButton","OverflowGroup","Icon"],"mappings":";;;;;;;AAcA,SAAS,oBAAoBA,SAA2B;AACpD,QAAM,YAAY,OAAO,KAAKC,YAAM,EAAE,KAAK,CAAA,SAAQA,MAAAA,OAAO,IAAI,MAAMD,OAAK;AAEzE,MAAI,CAAC,WAAW;AACZ,WAAO;AAAA,EACX;AAEA,SAAOE,MAAAA,cAAc,UAAU,QAAQ,SAAS,MAAM,CAAC;AAC3D;AAEO,SAAS,OAA6B,OAA2B;AACpE,QAAM,EAAE,OAAO,SAAS,aAAa,UAAU,iBAAiB;AAEhE,QAAM,mBAAmB,CAAC,MAA8B,UAAkB;AACtE,QAAI,KAAK,UAAU;AACf;AAAA,IACJ;AAEA,gBAAY,KAAK;AAAA,EACrB;AACA,QAAM,mBAAmB,MAAM,YAAY,MAAS;AAEpD,QAAM,cAAc,CAAC,SAAiC;AAElD,QAAI,CAAC,KAAK,UAAU;AAChB,kBAAY,MAAS;AAAA,IACzB;AAEA,iBAAa,KAAK,OAAO;AAAA,EAC7B;AAEA,QAAM,aAAa,CAAC,mBAChB,sBAAA,cAACC,OAAAA,gBAAa,YAAW,eAAc,WAAU,sDAAA,GAC5C,cACL;AAGJ;AAAA;AAAA,IAEI,sBAAA,cAACC,+BAAc,WAAU,uBAAsB,cAC1C,MAAM,IAAI,CAAC,MAAM,UAAU;AACxB,YAAM,YAAY;AAClB,YAAM,QAA6B,CAAA;AACnC,YAAM,mBAAmB,oBAAoB,KAAK,KAAK;AAEvD,UAAI,CAAC,KAAK,UAAU;AAChB,cAAM,kBAAkB,KAAK;AAC7B,cAAM,cAAc;AAAA,MACxB;AAEA,aACI,sBAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,KAAK,GAAG,KAAK,KAAK,IAAI,KAAK;AAAA,UAC3B,WAAU;AAAA,UACV,SAAS,CAAA,UAAS;AACd,mBAAO,eAAA;AACP,wBAAY,IAAI;AAAA,UACpB;AAAA,UACA,cAAc,MAAM,iBAAiB,MAAM,KAAK;AAAA,UAChD,cAAc,MAAM,iBAAA;AAAA,QAAiB;AAAA,QACrC,sBAAA,cAAC,QAAA,EAAK,WAAsB,MAAA,GACvB,KAAK,WAAW,OAAO,sBAAA,cAACC,KAAAA,MAAA,EAAK,MAAK,aAAY,WAAU,8BAA6B,CAC1F;AAAA,QACC,KAAK;AAAA,MAAA;AAAA,IAGlB,CAAC,CACL;AAAA;AAER;;"}
1
+ {"version":3,"file":"Legend.cjs","sources":["../../../src/charts/components/Legend.tsx"],"sourcesContent":["import React from 'react';\n\nimport { colors, getThemeColor } from '@/charts/utils/color';\nimport { Icon, LegacyButton, OverflowGroup } from '@/components';\n\nimport type { ChartChildProps } from './types';\n\nexport type LegendProps<TData extends object> = {\n items: ChartChildProps<TData>[];\n hoverIndex: number | undefined;\n onHover: (index: number | undefined) => void;\n onToggle: (name: keyof TData) => void;\n};\n\nfunction getDarkerThemeColor(color: string | undefined) {\n const colorName = Object.keys(colors).find(name => colors[name] === color);\n\n if (!colorName) {\n return undefined;\n }\n\n return getThemeColor(colorName.replace(/-\\d+$/u, '-300'));\n}\n\nexport function Legend<TData extends object>(props: LegendProps<TData>) {\n const { items, onHover: handleHover, onToggle: handleToggle } = props;\n\n const handleMouseEnter = (item: ChartChildProps<TData>, index: number) => {\n if (item.isHidden) {\n return;\n }\n\n handleHover(index);\n };\n const handleMouseLeave = () => handleHover(undefined);\n\n const handleClick = (item: ChartChildProps<TData>) => {\n // remove hover if hiding the item\n if (!item.isHidden) {\n handleHover(undefined);\n }\n\n handleToggle(item.dataKey);\n };\n\n const moreButton = (moreButtonText: string) => (\n <LegacyButton appearance=\"transparent\" className=\"!h-5 !min-h-[1.25rem] !px-1.5 text-xs text-gray-700\">\n {moreButtonText}\n </LegacyButton>\n );\n\n return (\n // oxlint-disable-next-line taco/no-component-margin -- grandfathered; removing this margin is a visual breaking change\n <OverflowGroup className=\"mt-3 w-full gap-x-1\" moreButton={moreButton}>\n {items.map((item, index) => {\n const className = 'mr-1 flex h-3.5 w-3.5 rounded-sm border';\n const style: React.CSSProperties = {};\n const darkerThemeColor = getDarkerThemeColor(item.color);\n\n if (!item.isHidden) {\n style.backgroundColor = item.color;\n style.borderColor = darkerThemeColor;\n }\n\n return (\n <button\n key={`${item.label}_${index}`}\n className=\"flex items-center rounded px-1 !text-xs hover:bg-gray-100 focus-visible:yt-focus\"\n onClick={event => {\n event?.preventDefault();\n handleClick(item);\n }}\n onMouseEnter={() => handleMouseEnter(item, index)}\n onMouseLeave={() => handleMouseLeave()}>\n <span className={className} style={style}>\n {item.isHidden ? null : <Icon name=\"tick-bold\" className=\"!h-full !w-full text-white\" />}\n </span>\n {item.label}\n </button>\n );\n })}\n </OverflowGroup>\n );\n}\n"],"names":["color","colors","getThemeColor","LegacyButton","OverflowGroup","Icon"],"mappings":";;;;;;;AAcA,SAAS,oBAAoBA,SAA2B;AACpD,QAAM,YAAY,OAAO,KAAKC,YAAM,EAAE,KAAK,CAAA,SAAQA,MAAAA,OAAO,IAAI,MAAMD,OAAK;AAEzE,MAAI,CAAC,WAAW;AACZ,WAAO;AAAA,EACX;AAEA,SAAOE,MAAAA,cAAc,UAAU,QAAQ,UAAU,MAAM,CAAC;AAC5D;AAEO,SAAS,OAA6B,OAA2B;AACpE,QAAM,EAAE,OAAO,SAAS,aAAa,UAAU,iBAAiB;AAEhE,QAAM,mBAAmB,CAAC,MAA8B,UAAkB;AACtE,QAAI,KAAK,UAAU;AACf;AAAA,IACJ;AAEA,gBAAY,KAAK;AAAA,EACrB;AACA,QAAM,mBAAmB,MAAM,YAAY,MAAS;AAEpD,QAAM,cAAc,CAAC,SAAiC;AAElD,QAAI,CAAC,KAAK,UAAU;AAChB,kBAAY,MAAS;AAAA,IACzB;AAEA,iBAAa,KAAK,OAAO;AAAA,EAC7B;AAEA,QAAM,aAAa,CAAC,mBAChB,sBAAA,cAACC,OAAAA,gBAAa,YAAW,eAAc,WAAU,sDAAA,GAC5C,cACL;AAGJ;AAAA;AAAA,IAEI,sBAAA,cAACC,+BAAc,WAAU,uBAAsB,cAC1C,MAAM,IAAI,CAAC,MAAM,UAAU;AACxB,YAAM,YAAY;AAClB,YAAM,QAA6B,CAAA;AACnC,YAAM,mBAAmB,oBAAoB,KAAK,KAAK;AAEvD,UAAI,CAAC,KAAK,UAAU;AAChB,cAAM,kBAAkB,KAAK;AAC7B,cAAM,cAAc;AAAA,MACxB;AAEA,aACI,sBAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,KAAK,GAAG,KAAK,KAAK,IAAI,KAAK;AAAA,UAC3B,WAAU;AAAA,UACV,SAAS,CAAA,UAAS;AACd,mBAAO,eAAA;AACP,wBAAY,IAAI;AAAA,UACpB;AAAA,UACA,cAAc,MAAM,iBAAiB,MAAM,KAAK;AAAA,UAChD,cAAc,MAAM,iBAAA;AAAA,QAAiB;AAAA,QACrC,sBAAA,cAAC,QAAA,EAAK,WAAsB,MAAA,GACvB,KAAK,WAAW,OAAO,sBAAA,cAACC,KAAAA,MAAA,EAAK,MAAK,aAAY,WAAU,8BAA6B,CAC1F;AAAA,QACC,KAAK;AAAA,MAAA;AAAA,IAGlB,CAAC,CACL;AAAA;AAER;;"}
@@ -8,7 +8,7 @@ function getDarkerThemeColor(color) {
8
8
  if (!colorName) {
9
9
  return void 0;
10
10
  }
11
- return getThemeColor(colorName.replace(/-\d+$/, "-300"));
11
+ return getThemeColor(colorName.replace(/-\d+$/u, "-300"));
12
12
  }
13
13
  function Legend(props) {
14
14
  const { items, onHover: handleHover, onToggle: handleToggle } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.js","sources":["../../../src/charts/components/Legend.tsx"],"sourcesContent":["import React from 'react';\n\nimport { colors, getThemeColor } from '@/charts/utils/color';\nimport { Icon, LegacyButton, OverflowGroup } from '@/components';\n\nimport type { ChartChildProps } from './types';\n\nexport type LegendProps<TData extends object> = {\n items: ChartChildProps<TData>[];\n hoverIndex: number | undefined;\n onHover: (index: number | undefined) => void;\n onToggle: (name: keyof TData) => void;\n};\n\nfunction getDarkerThemeColor(color: string | undefined) {\n const colorName = Object.keys(colors).find(name => colors[name] === color);\n\n if (!colorName) {\n return undefined;\n }\n\n return getThemeColor(colorName.replace(/-\\d+$/, '-300'));\n}\n\nexport function Legend<TData extends object>(props: LegendProps<TData>) {\n const { items, onHover: handleHover, onToggle: handleToggle } = props;\n\n const handleMouseEnter = (item: ChartChildProps<TData>, index: number) => {\n if (item.isHidden) {\n return;\n }\n\n handleHover(index);\n };\n const handleMouseLeave = () => handleHover(undefined);\n\n const handleClick = (item: ChartChildProps<TData>) => {\n // remove hover if hiding the item\n if (!item.isHidden) {\n handleHover(undefined);\n }\n\n handleToggle(item.dataKey);\n };\n\n const moreButton = (moreButtonText: string) => (\n <LegacyButton appearance=\"transparent\" className=\"!h-5 !min-h-[1.25rem] !px-1.5 text-xs text-gray-700\">\n {moreButtonText}\n </LegacyButton>\n );\n\n return (\n // oxlint-disable-next-line taco/no-component-margin -- grandfathered; removing this margin is a visual breaking change\n <OverflowGroup className=\"mt-3 w-full gap-x-1\" moreButton={moreButton}>\n {items.map((item, index) => {\n const className = 'mr-1 flex h-3.5 w-3.5 rounded-sm border';\n const style: React.CSSProperties = {};\n const darkerThemeColor = getDarkerThemeColor(item.color);\n\n if (!item.isHidden) {\n style.backgroundColor = item.color;\n style.borderColor = darkerThemeColor;\n }\n\n return (\n <button\n key={`${item.label}_${index}`}\n className=\"flex items-center rounded px-1 !text-xs hover:bg-gray-100 focus-visible:yt-focus\"\n onClick={event => {\n event?.preventDefault();\n handleClick(item);\n }}\n onMouseEnter={() => handleMouseEnter(item, index)}\n onMouseLeave={() => handleMouseLeave()}>\n <span className={className} style={style}>\n {item.isHidden ? null : <Icon name=\"tick-bold\" className=\"!h-full !w-full text-white\" />}\n </span>\n {item.label}\n </button>\n );\n })}\n </OverflowGroup>\n );\n}\n"],"names":["React"],"mappings":";;;;;AAcA,SAAS,oBAAoB,OAA2B;AACpD,QAAM,YAAY,OAAO,KAAK,MAAM,EAAE,KAAK,CAAA,SAAQ,OAAO,IAAI,MAAM,KAAK;AAEzE,MAAI,CAAC,WAAW;AACZ,WAAO;AAAA,EACX;AAEA,SAAO,cAAc,UAAU,QAAQ,SAAS,MAAM,CAAC;AAC3D;AAEO,SAAS,OAA6B,OAA2B;AACpE,QAAM,EAAE,OAAO,SAAS,aAAa,UAAU,iBAAiB;AAEhE,QAAM,mBAAmB,CAAC,MAA8B,UAAkB;AACtE,QAAI,KAAK,UAAU;AACf;AAAA,IACJ;AAEA,gBAAY,KAAK;AAAA,EACrB;AACA,QAAM,mBAAmB,MAAM,YAAY,MAAS;AAEpD,QAAM,cAAc,CAAC,SAAiC;AAElD,QAAI,CAAC,KAAK,UAAU;AAChB,kBAAY,MAAS;AAAA,IACzB;AAEA,iBAAa,KAAK,OAAO;AAAA,EAC7B;AAEA,QAAM,aAAa,CAAC,mBAChBA,+BAAA,cAAC,gBAAa,YAAW,eAAc,WAAU,sDAAA,GAC5C,cACL;AAGJ;AAAA;AAAA,IAEIA,+BAAA,cAAC,iBAAc,WAAU,uBAAsB,cAC1C,MAAM,IAAI,CAAC,MAAM,UAAU;AACxB,YAAM,YAAY;AAClB,YAAM,QAA6B,CAAA;AACnC,YAAM,mBAAmB,oBAAoB,KAAK,KAAK;AAEvD,UAAI,CAAC,KAAK,UAAU;AAChB,cAAM,kBAAkB,KAAK;AAC7B,cAAM,cAAc;AAAA,MACxB;AAEA,aACIA,+BAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,KAAK,GAAG,KAAK,KAAK,IAAI,KAAK;AAAA,UAC3B,WAAU;AAAA,UACV,SAAS,CAAA,UAAS;AACd,mBAAO,eAAA;AACP,wBAAY,IAAI;AAAA,UACpB;AAAA,UACA,cAAc,MAAM,iBAAiB,MAAM,KAAK;AAAA,UAChD,cAAc,MAAM,iBAAA;AAAA,QAAiB;AAAA,QACrCA,+BAAA,cAAC,QAAA,EAAK,WAAsB,MAAA,GACvB,KAAK,WAAW,OAAOA,+BAAA,cAAC,MAAA,EAAK,MAAK,aAAY,WAAU,8BAA6B,CAC1F;AAAA,QACC,KAAK;AAAA,MAAA;AAAA,IAGlB,CAAC,CACL;AAAA;AAER;"}
1
+ {"version":3,"file":"Legend.js","sources":["../../../src/charts/components/Legend.tsx"],"sourcesContent":["import React from 'react';\n\nimport { colors, getThemeColor } from '@/charts/utils/color';\nimport { Icon, LegacyButton, OverflowGroup } from '@/components';\n\nimport type { ChartChildProps } from './types';\n\nexport type LegendProps<TData extends object> = {\n items: ChartChildProps<TData>[];\n hoverIndex: number | undefined;\n onHover: (index: number | undefined) => void;\n onToggle: (name: keyof TData) => void;\n};\n\nfunction getDarkerThemeColor(color: string | undefined) {\n const colorName = Object.keys(colors).find(name => colors[name] === color);\n\n if (!colorName) {\n return undefined;\n }\n\n return getThemeColor(colorName.replace(/-\\d+$/u, '-300'));\n}\n\nexport function Legend<TData extends object>(props: LegendProps<TData>) {\n const { items, onHover: handleHover, onToggle: handleToggle } = props;\n\n const handleMouseEnter = (item: ChartChildProps<TData>, index: number) => {\n if (item.isHidden) {\n return;\n }\n\n handleHover(index);\n };\n const handleMouseLeave = () => handleHover(undefined);\n\n const handleClick = (item: ChartChildProps<TData>) => {\n // remove hover if hiding the item\n if (!item.isHidden) {\n handleHover(undefined);\n }\n\n handleToggle(item.dataKey);\n };\n\n const moreButton = (moreButtonText: string) => (\n <LegacyButton appearance=\"transparent\" className=\"!h-5 !min-h-[1.25rem] !px-1.5 text-xs text-gray-700\">\n {moreButtonText}\n </LegacyButton>\n );\n\n return (\n // oxlint-disable-next-line taco/no-component-margin -- grandfathered; removing this margin is a visual breaking change\n <OverflowGroup className=\"mt-3 w-full gap-x-1\" moreButton={moreButton}>\n {items.map((item, index) => {\n const className = 'mr-1 flex h-3.5 w-3.5 rounded-sm border';\n const style: React.CSSProperties = {};\n const darkerThemeColor = getDarkerThemeColor(item.color);\n\n if (!item.isHidden) {\n style.backgroundColor = item.color;\n style.borderColor = darkerThemeColor;\n }\n\n return (\n <button\n key={`${item.label}_${index}`}\n className=\"flex items-center rounded px-1 !text-xs hover:bg-gray-100 focus-visible:yt-focus\"\n onClick={event => {\n event?.preventDefault();\n handleClick(item);\n }}\n onMouseEnter={() => handleMouseEnter(item, index)}\n onMouseLeave={() => handleMouseLeave()}>\n <span className={className} style={style}>\n {item.isHidden ? null : <Icon name=\"tick-bold\" className=\"!h-full !w-full text-white\" />}\n </span>\n {item.label}\n </button>\n );\n })}\n </OverflowGroup>\n );\n}\n"],"names":["React"],"mappings":";;;;;AAcA,SAAS,oBAAoB,OAA2B;AACpD,QAAM,YAAY,OAAO,KAAK,MAAM,EAAE,KAAK,CAAA,SAAQ,OAAO,IAAI,MAAM,KAAK;AAEzE,MAAI,CAAC,WAAW;AACZ,WAAO;AAAA,EACX;AAEA,SAAO,cAAc,UAAU,QAAQ,UAAU,MAAM,CAAC;AAC5D;AAEO,SAAS,OAA6B,OAA2B;AACpE,QAAM,EAAE,OAAO,SAAS,aAAa,UAAU,iBAAiB;AAEhE,QAAM,mBAAmB,CAAC,MAA8B,UAAkB;AACtE,QAAI,KAAK,UAAU;AACf;AAAA,IACJ;AAEA,gBAAY,KAAK;AAAA,EACrB;AACA,QAAM,mBAAmB,MAAM,YAAY,MAAS;AAEpD,QAAM,cAAc,CAAC,SAAiC;AAElD,QAAI,CAAC,KAAK,UAAU;AAChB,kBAAY,MAAS;AAAA,IACzB;AAEA,iBAAa,KAAK,OAAO;AAAA,EAC7B;AAEA,QAAM,aAAa,CAAC,mBAChBA,+BAAA,cAAC,gBAAa,YAAW,eAAc,WAAU,sDAAA,GAC5C,cACL;AAGJ;AAAA;AAAA,IAEIA,+BAAA,cAAC,iBAAc,WAAU,uBAAsB,cAC1C,MAAM,IAAI,CAAC,MAAM,UAAU;AACxB,YAAM,YAAY;AAClB,YAAM,QAA6B,CAAA;AACnC,YAAM,mBAAmB,oBAAoB,KAAK,KAAK;AAEvD,UAAI,CAAC,KAAK,UAAU;AAChB,cAAM,kBAAkB,KAAK;AAC7B,cAAM,cAAc;AAAA,MACxB;AAEA,aACIA,+BAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,KAAK,GAAG,KAAK,KAAK,IAAI,KAAK;AAAA,UAC3B,WAAU;AAAA,UACV,SAAS,CAAA,UAAS;AACd,mBAAO,eAAA;AACP,wBAAY,IAAI;AAAA,UACpB;AAAA,UACA,cAAc,MAAM,iBAAiB,MAAM,KAAK;AAAA,UAChD,cAAc,MAAM,iBAAA;AAAA,QAAiB;AAAA,QACrCA,+BAAA,cAAC,QAAA,EAAK,WAAsB,MAAA,GACvB,KAAK,WAAW,OAAOA,+BAAA,cAAC,MAAA,EAAK,MAAK,aAAY,WAAU,8BAA6B,CAC1F;AAAA,QACC,KAAK;AAAA,MAAA;AAAA,IAGlB,CAAC,CACL;AAAA;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"LineChart.cjs","sources":["../../../../src/charts/components/Line/LineChart.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { getAxisProps, stripCartesianProps } from '@/charts/utils/common';\n\nimport { ChartWrapper } from '../ChartWrapper';\nimport { Legend } from '../Legend';\nimport { Tooltip } from '../Tooltip';\nimport type { ChartChildProps, CartesianChartProps, CurveType } from '../types';\nimport { useChart } from '../useChartData';\n\nexport type LineChartProps<TData extends object> = {\n /** Show dots for each data point\n * @default false\n */\n showDots?: boolean;\n /** Interpolation type of the line\n * @default natural\n */\n type?: CurveType;\n} & CartesianChartProps<TData>;\n\nexport function LineChart<TData extends object>(props: LineChartProps<TData>) {\n const {\n children,\n className: customClassName,\n data,\n showLegend = false,\n showDots = false,\n tooltipTitle,\n type = 'natural',\n ...attributes\n } = stripCartesianProps<LineChartProps<TData>>(props);\n\n const className = cn('relative aspect-video', { 'pb-8': showLegend }, customClassName);\n const { items, shapes, activeIndex, setActiveIndex, toggleItem } = useChart<TData>(children);\n\n return (\n <div className={className} data-taco=\"chart-wrapper\">\n <ChartWrapper {...attributes} className=\"h-full w-full\" data-taco=\"chart-line\">\n <RechartsPrimitive.LineChart\n data={data}\n margin={{\n bottom: 0,\n // ensures dots on the edges of the chart don't get cropped\n left: 4,\n right: 4,\n top: 4,\n }}>\n <RechartsPrimitive.CartesianGrid vertical={false} />\n <RechartsPrimitive.Tooltip content={<Tooltip title={tooltipTitle} />} />\n <RechartsPrimitive.XAxis {...getAxisProps('x', props)} />\n <RechartsPrimitive.YAxis {...getAxisProps('y', props)} />\n {renderLines(shapes, showDots, type)}\n </RechartsPrimitive.LineChart>\n </ChartWrapper>\n {showLegend ? (\n <Legend<TData> items={items} hoverIndex={activeIndex} onHover={setActiveIndex} onToggle={toggleItem} />\n ) : null}\n </div>\n );\n}\n\n/**\n * Helper function to render line shapes as Recharts Line primitives. Extracted to be reusable across LineChart and ComposedChart.\n */\nexport const renderLines = (shapes: any[], showDots: boolean = false, type: CurveType = 'natural') => {\n return shapes.map(shape => (\n <RechartsPrimitive.Line key={shape.dataKey} {...shape} dot={showDots ? shape.dot : false} type={type} />\n ));\n};\n\n// oxlint-disable-next-line no-empty-object-type\nexport type LineChartAreaProps<TData extends object> = {} & ChartChildProps<TData>;\n\nfunction Line<TData extends object>(_: LineChartAreaProps<TData>): React.JSX.Element | null {\n return null;\n}\nLineChart.Line = Line;\n"],"names":["stripCartesianProps","useChart","ChartWrapper","RechartsPrimitive","Tooltip","getAxisProps","Legend"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBO,SAAS,UAAgC,OAA8B;AAC1E,QAAM;AAAA,IACF;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA,aAAa;AAAA,IACb,WAAW;AAAA,IACX;AAAA,IACA,OAAO;AAAA,IACP,GAAG;AAAA,EAAA,IACHA,OAAAA,oBAA2C,KAAK;AAEpD,QAAM,YAAY,GAAG,yBAAyB,EAAE,QAAQ,WAAA,GAAc,eAAe;AACrF,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,WAAA,IAAeC,aAAAA,SAAgB,QAAQ;AAE3F,SACI,sBAAA,cAAC,OAAA,EAAI,WAAsB,aAAU,gBAAA,GACjC,sBAAA,cAACC,aAAAA,cAAA,EAAc,GAAG,YAAY,WAAU,iBAAgB,aAAU,aAAA,GAC9D,sBAAA;AAAA,IAACC,6BAAkB;AAAA,IAAlB;AAAA,MACG;AAAA,MACA,QAAQ;AAAA,QACJ,QAAQ;AAAA;AAAA,QAER,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MAAA;AAAA,IACT;AAAA,IACA,sBAAA,cAACA,6BAAkB,eAAlB,EAAgC,UAAU,OAAO;AAAA,IAClD,sBAAA,cAACA,6BAAkB,SAAlB,EAA0B,SAAS,sBAAA,cAACC,QAAAA,SAAA,EAAQ,OAAO,aAAA,CAAc,EAAA,CAAI;AAAA,IACtE,sBAAA,cAACD,6BAAkB,OAAlB,EAAyB,GAAGE,oBAAa,KAAK,KAAK,GAAG;AAAA,IACvD,sBAAA,cAACF,6BAAkB,OAAlB,EAAyB,GAAGE,oBAAa,KAAK,KAAK,GAAG;AAAA,IACtD,YAAY,QAAQ,UAAU,IAAI;AAAA,EAAA,CAE3C,GACC,aACG,sBAAA,cAACC,OAAAA,QAAA,EAAc,OAAc,YAAY,aAAa,SAAS,gBAAgB,UAAU,WAAA,CAAY,IACrG,IACR;AAER;AAKO,MAAM,cAAc,CAAC,QAAe,WAAoB,OAAO,OAAkB,cAAc;AAClG,SAAO,OAAO,IAAI,CAAA,8CACbH,6BAAkB,MAAlB,EAAuB,KAAK,MAAM,SAAU,GAAG,OAAO,KAAK,WAAW,MAAM,MAAM,OAAO,MAAY,CACzG;AACL;AAKA,SAAS,KAA2B,GAAwD;AACxF,SAAO;AACX;AACA,UAAU,OAAO;;;"}
1
+ {"version":3,"file":"LineChart.cjs","sources":["../../../../src/charts/components/Line/LineChart.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { getAxisProps, stripCartesianProps } from '@/charts/utils/common';\n\nimport { ChartWrapper } from '../ChartWrapper';\nimport { Legend } from '../Legend';\nimport { Tooltip } from '../Tooltip';\nimport type { ChartChildProps, CartesianChartProps, CurveType } from '../types';\nimport { type ChartShape, useChart } from '../useChartData';\n\nexport type LineChartProps<TData extends object> = {\n /** Show dots for each data point\n * @default false\n */\n showDots?: boolean;\n /** Interpolation type of the line\n * @default natural\n */\n type?: CurveType;\n} & CartesianChartProps<TData>;\n\nexport function LineChart<TData extends object>(props: LineChartProps<TData>) {\n const {\n children,\n className: customClassName,\n data,\n showLegend = false,\n showDots = false,\n tooltipTitle,\n type = 'natural',\n ...attributes\n } = stripCartesianProps<TData, LineChartProps<TData>>(props);\n\n const className = cn('relative aspect-video', { 'pb-8': showLegend }, customClassName);\n const { items, shapes, activeIndex, setActiveIndex, toggleItem } = useChart<TData>(children);\n\n return (\n <div className={className} data-taco=\"chart-wrapper\">\n <ChartWrapper {...attributes} className=\"h-full w-full\" data-taco=\"chart-line\">\n <RechartsPrimitive.LineChart\n data={data}\n margin={{\n bottom: 0,\n // ensures dots on the edges of the chart don't get cropped\n left: 4,\n right: 4,\n top: 4,\n }}>\n <RechartsPrimitive.CartesianGrid vertical={false} />\n <RechartsPrimitive.Tooltip content={<Tooltip title={tooltipTitle} />} />\n <RechartsPrimitive.XAxis {...getAxisProps('x', props)} />\n <RechartsPrimitive.YAxis {...getAxisProps('y', props)} />\n {renderLines(shapes, showDots, type)}\n </RechartsPrimitive.LineChart>\n </ChartWrapper>\n {showLegend ? (\n <Legend<TData> items={items} hoverIndex={activeIndex} onHover={setActiveIndex} onToggle={toggleItem} />\n ) : null}\n </div>\n );\n}\n\n/**\n * Helper function to render line shapes as Recharts Line primitives. Extracted to be reusable across LineChart and ComposedChart.\n */\nexport const renderLines = (shapes: ChartShape[], showDots: boolean = false, type: CurveType = 'natural') => {\n return shapes.map(shape => (\n <RechartsPrimitive.Line key={shape.dataKey} {...shape} dot={showDots ? shape.dot : false} type={type} />\n ));\n};\n\n// oxlint-disable-next-line no-empty-object-type\nexport type LineChartAreaProps<TData extends object> = ChartChildProps<TData>;\n\nfunction Line<TData extends object>(_: LineChartAreaProps<TData>): React.JSX.Element | null {\n return null;\n}\nLineChart.Line = Line;\n"],"names":["stripCartesianProps","useChart","ChartWrapper","RechartsPrimitive","Tooltip","getAxisProps","Legend"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBO,SAAS,UAAgC,OAA8B;AAC1E,QAAM;AAAA,IACF;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA,aAAa;AAAA,IACb,WAAW;AAAA,IACX;AAAA,IACA,OAAO;AAAA,IACP,GAAG;AAAA,EAAA,IACHA,OAAAA,oBAAkD,KAAK;AAE3D,QAAM,YAAY,GAAG,yBAAyB,EAAE,QAAQ,WAAA,GAAc,eAAe;AACrF,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,WAAA,IAAeC,aAAAA,SAAgB,QAAQ;AAE3F,SACI,sBAAA,cAAC,OAAA,EAAI,WAAsB,aAAU,gBAAA,GACjC,sBAAA,cAACC,aAAAA,cAAA,EAAc,GAAG,YAAY,WAAU,iBAAgB,aAAU,aAAA,GAC9D,sBAAA;AAAA,IAACC,6BAAkB;AAAA,IAAlB;AAAA,MACG;AAAA,MACA,QAAQ;AAAA,QACJ,QAAQ;AAAA;AAAA,QAER,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MAAA;AAAA,IACT;AAAA,IACA,sBAAA,cAACA,6BAAkB,eAAlB,EAAgC,UAAU,OAAO;AAAA,IAClD,sBAAA,cAACA,6BAAkB,SAAlB,EAA0B,SAAS,sBAAA,cAACC,QAAAA,SAAA,EAAQ,OAAO,aAAA,CAAc,EAAA,CAAI;AAAA,IACtE,sBAAA,cAACD,6BAAkB,OAAlB,EAAyB,GAAGE,oBAAa,KAAK,KAAK,GAAG;AAAA,IACvD,sBAAA,cAACF,6BAAkB,OAAlB,EAAyB,GAAGE,oBAAa,KAAK,KAAK,GAAG;AAAA,IACtD,YAAY,QAAQ,UAAU,IAAI;AAAA,EAAA,CAE3C,GACC,aACG,sBAAA,cAACC,OAAAA,QAAA,EAAc,OAAc,YAAY,aAAa,SAAS,gBAAgB,UAAU,WAAA,CAAY,IACrG,IACR;AAER;AAKO,MAAM,cAAc,CAAC,QAAsB,WAAoB,OAAO,OAAkB,cAAc;AACzG,SAAO,OAAO,IAAI,CAAA,8CACbH,6BAAkB,MAAlB,EAAuB,KAAK,MAAM,SAAU,GAAG,OAAO,KAAK,WAAW,MAAM,MAAM,OAAO,MAAY,CACzG;AACL;AAKA,SAAS,KAA2B,GAAwD;AACxF,SAAO;AACX;AACA,UAAU,OAAO;;;"}
@@ -1,5 +1,6 @@
1
1
  import { default as React } from 'react';
2
2
  import { ChartChildProps, CartesianChartProps, CurveType } from '../types';
3
+ import { ChartShape } from '../useChartData';
3
4
  export type LineChartProps<TData extends object> = {
4
5
  /** Show dots for each data point
5
6
  * @default false
@@ -17,5 +18,5 @@ export declare namespace LineChart {
17
18
  /**
18
19
  * Helper function to render line shapes as Recharts Line primitives. Extracted to be reusable across LineChart and ComposedChart.
19
20
  */
20
- export declare const renderLines: (shapes: any[], showDots?: boolean, type?: CurveType) => React.JSX.Element[];
21
- export type LineChartAreaProps<TData extends object> = {} & ChartChildProps<TData>;
21
+ export declare const renderLines: (shapes: ChartShape[], showDots?: boolean, type?: CurveType) => React.JSX.Element[];
22
+ export type LineChartAreaProps<TData extends object> = ChartChildProps<TData>;
@@ -1 +1 @@
1
- {"version":3,"file":"LineChart.js","sources":["../../../../src/charts/components/Line/LineChart.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { getAxisProps, stripCartesianProps } from '@/charts/utils/common';\n\nimport { ChartWrapper } from '../ChartWrapper';\nimport { Legend } from '../Legend';\nimport { Tooltip } from '../Tooltip';\nimport type { ChartChildProps, CartesianChartProps, CurveType } from '../types';\nimport { useChart } from '../useChartData';\n\nexport type LineChartProps<TData extends object> = {\n /** Show dots for each data point\n * @default false\n */\n showDots?: boolean;\n /** Interpolation type of the line\n * @default natural\n */\n type?: CurveType;\n} & CartesianChartProps<TData>;\n\nexport function LineChart<TData extends object>(props: LineChartProps<TData>) {\n const {\n children,\n className: customClassName,\n data,\n showLegend = false,\n showDots = false,\n tooltipTitle,\n type = 'natural',\n ...attributes\n } = stripCartesianProps<LineChartProps<TData>>(props);\n\n const className = cn('relative aspect-video', { 'pb-8': showLegend }, customClassName);\n const { items, shapes, activeIndex, setActiveIndex, toggleItem } = useChart<TData>(children);\n\n return (\n <div className={className} data-taco=\"chart-wrapper\">\n <ChartWrapper {...attributes} className=\"h-full w-full\" data-taco=\"chart-line\">\n <RechartsPrimitive.LineChart\n data={data}\n margin={{\n bottom: 0,\n // ensures dots on the edges of the chart don't get cropped\n left: 4,\n right: 4,\n top: 4,\n }}>\n <RechartsPrimitive.CartesianGrid vertical={false} />\n <RechartsPrimitive.Tooltip content={<Tooltip title={tooltipTitle} />} />\n <RechartsPrimitive.XAxis {...getAxisProps('x', props)} />\n <RechartsPrimitive.YAxis {...getAxisProps('y', props)} />\n {renderLines(shapes, showDots, type)}\n </RechartsPrimitive.LineChart>\n </ChartWrapper>\n {showLegend ? (\n <Legend<TData> items={items} hoverIndex={activeIndex} onHover={setActiveIndex} onToggle={toggleItem} />\n ) : null}\n </div>\n );\n}\n\n/**\n * Helper function to render line shapes as Recharts Line primitives. Extracted to be reusable across LineChart and ComposedChart.\n */\nexport const renderLines = (shapes: any[], showDots: boolean = false, type: CurveType = 'natural') => {\n return shapes.map(shape => (\n <RechartsPrimitive.Line key={shape.dataKey} {...shape} dot={showDots ? shape.dot : false} type={type} />\n ));\n};\n\n// oxlint-disable-next-line no-empty-object-type\nexport type LineChartAreaProps<TData extends object> = {} & ChartChildProps<TData>;\n\nfunction Line<TData extends object>(_: LineChartAreaProps<TData>): React.JSX.Element | null {\n return null;\n}\nLineChart.Line = Line;\n"],"names":["React"],"mappings":";;;;;;;;AAuBO,SAAS,UAAgC,OAA8B;AAC1E,QAAM;AAAA,IACF;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA,aAAa;AAAA,IACb,WAAW;AAAA,IACX;AAAA,IACA,OAAO;AAAA,IACP,GAAG;AAAA,EAAA,IACH,oBAA2C,KAAK;AAEpD,QAAM,YAAY,GAAG,yBAAyB,EAAE,QAAQ,WAAA,GAAc,eAAe;AACrF,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,WAAA,IAAe,SAAgB,QAAQ;AAE3F,SACIA,+BAAA,cAAC,OAAA,EAAI,WAAsB,aAAU,gBAAA,GACjCA,+BAAA,cAAC,cAAA,EAAc,GAAG,YAAY,WAAU,iBAAgB,aAAU,aAAA,GAC9DA,+BAAA;AAAA,IAAC,kBAAkB;AAAA,IAAlB;AAAA,MACG;AAAA,MACA,QAAQ;AAAA,QACJ,QAAQ;AAAA;AAAA,QAER,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MAAA;AAAA,IACT;AAAA,IACAA,+BAAA,cAAC,kBAAkB,eAAlB,EAAgC,UAAU,OAAO;AAAA,IAClDA,+BAAA,cAAC,kBAAkB,SAAlB,EAA0B,SAASA,+BAAA,cAAC,SAAA,EAAQ,OAAO,aAAA,CAAc,EAAA,CAAI;AAAA,IACtEA,+BAAA,cAAC,kBAAkB,OAAlB,EAAyB,GAAG,aAAa,KAAK,KAAK,GAAG;AAAA,IACvDA,+BAAA,cAAC,kBAAkB,OAAlB,EAAyB,GAAG,aAAa,KAAK,KAAK,GAAG;AAAA,IACtD,YAAY,QAAQ,UAAU,IAAI;AAAA,EAAA,CAE3C,GACC,aACGA,+BAAA,cAAC,QAAA,EAAc,OAAc,YAAY,aAAa,SAAS,gBAAgB,UAAU,WAAA,CAAY,IACrG,IACR;AAER;AAKO,MAAM,cAAc,CAAC,QAAe,WAAoB,OAAO,OAAkB,cAAc;AAClG,SAAO,OAAO,IAAI,CAAA,uDACb,kBAAkB,MAAlB,EAAuB,KAAK,MAAM,SAAU,GAAG,OAAO,KAAK,WAAW,MAAM,MAAM,OAAO,MAAY,CACzG;AACL;AAKA,SAAS,KAA2B,GAAwD;AACxF,SAAO;AACX;AACA,UAAU,OAAO;"}
1
+ {"version":3,"file":"LineChart.js","sources":["../../../../src/charts/components/Line/LineChart.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { getAxisProps, stripCartesianProps } from '@/charts/utils/common';\n\nimport { ChartWrapper } from '../ChartWrapper';\nimport { Legend } from '../Legend';\nimport { Tooltip } from '../Tooltip';\nimport type { ChartChildProps, CartesianChartProps, CurveType } from '../types';\nimport { type ChartShape, useChart } from '../useChartData';\n\nexport type LineChartProps<TData extends object> = {\n /** Show dots for each data point\n * @default false\n */\n showDots?: boolean;\n /** Interpolation type of the line\n * @default natural\n */\n type?: CurveType;\n} & CartesianChartProps<TData>;\n\nexport function LineChart<TData extends object>(props: LineChartProps<TData>) {\n const {\n children,\n className: customClassName,\n data,\n showLegend = false,\n showDots = false,\n tooltipTitle,\n type = 'natural',\n ...attributes\n } = stripCartesianProps<TData, LineChartProps<TData>>(props);\n\n const className = cn('relative aspect-video', { 'pb-8': showLegend }, customClassName);\n const { items, shapes, activeIndex, setActiveIndex, toggleItem } = useChart<TData>(children);\n\n return (\n <div className={className} data-taco=\"chart-wrapper\">\n <ChartWrapper {...attributes} className=\"h-full w-full\" data-taco=\"chart-line\">\n <RechartsPrimitive.LineChart\n data={data}\n margin={{\n bottom: 0,\n // ensures dots on the edges of the chart don't get cropped\n left: 4,\n right: 4,\n top: 4,\n }}>\n <RechartsPrimitive.CartesianGrid vertical={false} />\n <RechartsPrimitive.Tooltip content={<Tooltip title={tooltipTitle} />} />\n <RechartsPrimitive.XAxis {...getAxisProps('x', props)} />\n <RechartsPrimitive.YAxis {...getAxisProps('y', props)} />\n {renderLines(shapes, showDots, type)}\n </RechartsPrimitive.LineChart>\n </ChartWrapper>\n {showLegend ? (\n <Legend<TData> items={items} hoverIndex={activeIndex} onHover={setActiveIndex} onToggle={toggleItem} />\n ) : null}\n </div>\n );\n}\n\n/**\n * Helper function to render line shapes as Recharts Line primitives. Extracted to be reusable across LineChart and ComposedChart.\n */\nexport const renderLines = (shapes: ChartShape[], showDots: boolean = false, type: CurveType = 'natural') => {\n return shapes.map(shape => (\n <RechartsPrimitive.Line key={shape.dataKey} {...shape} dot={showDots ? shape.dot : false} type={type} />\n ));\n};\n\n// oxlint-disable-next-line no-empty-object-type\nexport type LineChartAreaProps<TData extends object> = ChartChildProps<TData>;\n\nfunction Line<TData extends object>(_: LineChartAreaProps<TData>): React.JSX.Element | null {\n return null;\n}\nLineChart.Line = Line;\n"],"names":["React"],"mappings":";;;;;;;;AAuBO,SAAS,UAAgC,OAA8B;AAC1E,QAAM;AAAA,IACF;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA,aAAa;AAAA,IACb,WAAW;AAAA,IACX;AAAA,IACA,OAAO;AAAA,IACP,GAAG;AAAA,EAAA,IACH,oBAAkD,KAAK;AAE3D,QAAM,YAAY,GAAG,yBAAyB,EAAE,QAAQ,WAAA,GAAc,eAAe;AACrF,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,WAAA,IAAe,SAAgB,QAAQ;AAE3F,SACIA,+BAAA,cAAC,OAAA,EAAI,WAAsB,aAAU,gBAAA,GACjCA,+BAAA,cAAC,cAAA,EAAc,GAAG,YAAY,WAAU,iBAAgB,aAAU,aAAA,GAC9DA,+BAAA;AAAA,IAAC,kBAAkB;AAAA,IAAlB;AAAA,MACG;AAAA,MACA,QAAQ;AAAA,QACJ,QAAQ;AAAA;AAAA,QAER,MAAM;AAAA,QACN,OAAO;AAAA,QACP,KAAK;AAAA,MAAA;AAAA,IACT;AAAA,IACAA,+BAAA,cAAC,kBAAkB,eAAlB,EAAgC,UAAU,OAAO;AAAA,IAClDA,+BAAA,cAAC,kBAAkB,SAAlB,EAA0B,SAASA,+BAAA,cAAC,SAAA,EAAQ,OAAO,aAAA,CAAc,EAAA,CAAI;AAAA,IACtEA,+BAAA,cAAC,kBAAkB,OAAlB,EAAyB,GAAG,aAAa,KAAK,KAAK,GAAG;AAAA,IACvDA,+BAAA,cAAC,kBAAkB,OAAlB,EAAyB,GAAG,aAAa,KAAK,KAAK,GAAG;AAAA,IACtD,YAAY,QAAQ,UAAU,IAAI;AAAA,EAAA,CAE3C,GACC,aACGA,+BAAA,cAAC,QAAA,EAAc,OAAc,YAAY,aAAa,SAAS,gBAAgB,UAAU,WAAA,CAAY,IACrG,IACR;AAER;AAKO,MAAM,cAAc,CAAC,QAAsB,WAAoB,OAAO,OAAkB,cAAc;AACzG,SAAO,OAAO,IAAI,CAAA,uDACb,kBAAkB,MAAlB,EAAuB,KAAK,MAAM,SAAU,GAAG,OAAO,KAAK,WAAW,MAAM,MAAM,OAAO,MAAY,CACzG;AACL;AAKA,SAAS,KAA2B,GAAwD;AACxF,SAAO;AACX;AACA,UAAU,OAAO;"}
@@ -40,10 +40,10 @@ function Segment(_) {
40
40
  PieChart.Segment = Segment;
41
41
  const RADIAN = Math.PI / 180;
42
42
  function Label(props) {
43
- const { cx, cy, midAngle, name, innerRadius, outerRadius } = props;
44
- const radius = innerRadius + (outerRadius - innerRadius) * 0.7;
45
- const x = cx + radius * Math.cos(-midAngle * RADIAN);
46
- const y = cy + radius * Math.sin(-midAngle * RADIAN);
43
+ const { cx = 0, cy = 0, midAngle = 0, name, innerRadius = 0, outerRadius = 0 } = props;
44
+ const radius = Number(innerRadius) + (Number(outerRadius) - Number(innerRadius)) * 0.7;
45
+ const x = Number(cx) + radius * Math.cos(-midAngle * RADIAN);
46
+ const y = Number(cy) + radius * Math.sin(-midAngle * RADIAN);
47
47
  return /* @__PURE__ */ React.createElement(
48
48
  "text",
49
49
  {
@@ -1 +1 @@
1
- {"version":3,"file":"PieChart.cjs","sources":["../../../../src/charts/components/Pie/PieChart.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { getInverseThemeColor } from '@/charts/utils/color';\n\nimport { ChartWrapper } from '../ChartWrapper';\nimport { Legend } from '../Legend';\nimport { Tooltip } from '../Tooltip';\nimport type { ChartChildProps, PolarChartProps } from '../types';\n\nimport { usePieChart } from './util';\n\nexport type PieChartProps = {\n /** Show labels inside each segment\n * @default false\n */\n showLabels?: boolean;\n} & PolarChartProps;\n\nexport function PieChart<TData extends object>(props: PieChartProps) {\n const { children, formatter, showLabels = false, showLegend = false, tooltipTitle, unit, ...attributes } = props;\n const { pieProps, setRadius, items, activeIndex, setActiveIndex, toggleItem } = usePieChart<TData>(children, {\n formatter,\n unit,\n });\n const className = cn('aspect-square', attributes.className);\n\n return (\n <div className=\"relative\" data-taco=\"chart-wrapper\">\n <ChartWrapper {...attributes} className={className} data-taco=\"chart-pie\" onSetWidth={setRadius}>\n <RechartsPrimitive.PieChart>\n <RechartsPrimitive.Tooltip content={<Tooltip title={tooltipTitle} />} />\n <RechartsPrimitive.Pie {...pieProps} label={showLabels ? <Label /> : undefined} />\n </RechartsPrimitive.PieChart>\n </ChartWrapper>\n {showLegend ? (\n <Legend<TData> items={items} hoverIndex={activeIndex} onHover={setActiveIndex} onToggle={toggleItem} />\n ) : null}\n </div>\n );\n}\n\nexport type PieChartSegmentProps<TData extends object> = {\n value: number;\n} & Omit<ChartChildProps<TData>, 'dataKey' | 'formatter' | 'unit'>;\n\nfunction Segment<TData extends object>(_: PieChartSegmentProps<TData>): React.JSX.Element | null {\n return null;\n}\nPieChart.Segment = Segment;\n\nconst RADIAN = Math.PI / 180;\n\nfunction Label(props: any) {\n const { cx, cy, midAngle, name, innerRadius, outerRadius } = props;\n const radius = innerRadius + (outerRadius - innerRadius) * 0.7;\n const x = cx + radius * Math.cos(-midAngle * RADIAN);\n const y = cy + radius * Math.sin(-midAngle * RADIAN);\n\n return (\n <text\n x={x}\n y={y}\n fontSize={12}\n fill={getInverseThemeColor(props.payload?.payload?.color ?? '')}\n textAnchor=\"middle\"\n dominantBaseline=\"middle\">\n {name}\n </text>\n );\n}\n"],"names":["usePieChart","ChartWrapper","RechartsPrimitive","Tooltip","Legend","getInverseThemeColor"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAoBO,SAAS,SAA+B,OAAsB;AACjE,QAAM,EAAE,UAAU,WAAW,aAAa,OAAO,aAAa,OAAO,cAAc,MAAM,GAAG,WAAA,IAAe;AAC3G,QAAM,EAAE,UAAU,WAAW,OAAO,aAAa,gBAAgB,WAAA,IAAeA,KAAAA,YAAmB,UAAU;AAAA,IACzG;AAAA,IACA;AAAA,EAAA,CACH;AACD,QAAM,YAAY,GAAG,iBAAiB,WAAW,SAAS;AAE1D,SACI,sBAAA,cAAC,OAAA,EAAI,WAAU,YAAW,aAAU,gBAAA,GAChC,sBAAA,cAACC,aAAAA,cAAA,EAAc,GAAG,YAAY,WAAsB,aAAU,aAAY,YAAY,UAAA,GAClF,sBAAA,cAACC,6BAAkB,UAAlB,MACG,sBAAA,cAACA,6BAAkB,SAAlB,EAA0B,SAAS,sBAAA,cAACC,QAAAA,SAAA,EAAQ,OAAO,aAAA,CAAc,GAAI,GACtE,sBAAA,cAACD,6BAAkB,KAAlB,EAAuB,GAAG,UAAU,OAAO,aAAa,sBAAA,cAAC,OAAA,IAAM,IAAK,OAAA,CAAW,CACpF,CACJ,GACC,aACG,sBAAA,cAACE,OAAAA,QAAA,EAAc,OAAc,YAAY,aAAa,SAAS,gBAAgB,UAAU,WAAA,CAAY,IACrG,IACR;AAER;AAMA,SAAS,QAA8B,GAA0D;AAC7F,SAAO;AACX;AACA,SAAS,UAAU;AAEnB,MAAM,SAAS,KAAK,KAAK;AAEzB,SAAS,MAAM,OAAY;AACvB,QAAM,EAAE,IAAI,IAAI,UAAU,MAAM,aAAa,gBAAgB;AAC7D,QAAM,SAAS,eAAe,cAAc,eAAe;AAC3D,QAAM,IAAI,KAAK,SAAS,KAAK,IAAI,CAAC,WAAW,MAAM;AACnD,QAAM,IAAI,KAAK,SAAS,KAAK,IAAI,CAAC,WAAW,MAAM;AAEnD,SACI,sBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV,MAAMC,MAAAA,qBAAqB,MAAM,SAAS,SAAS,SAAS,EAAE;AAAA,MAC9D,YAAW;AAAA,MACX,kBAAiB;AAAA,IAAA;AAAA,IAChB;AAAA,EAAA;AAGb;;"}
1
+ {"version":3,"file":"PieChart.cjs","sources":["../../../../src/charts/components/Pie/PieChart.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieLabelRenderProps } from 'recharts/types/polar/Pie';\n\nimport { getInverseThemeColor } from '@/charts/utils/color';\n\nimport { ChartWrapper } from '../ChartWrapper';\nimport { Legend } from '../Legend';\nimport { Tooltip } from '../Tooltip';\nimport type { ChartChildProps, PolarChartProps } from '../types';\n\nimport { usePieChart } from './util';\n\nexport type PieChartProps = {\n /** Show labels inside each segment\n * @default false\n */\n showLabels?: boolean;\n} & PolarChartProps;\n\nexport function PieChart<TData extends object>(props: PieChartProps) {\n const { children, formatter, showLabels = false, showLegend = false, tooltipTitle, unit, ...attributes } = props;\n const { pieProps, setRadius, items, activeIndex, setActiveIndex, toggleItem } = usePieChart<TData>(children, {\n formatter,\n unit,\n });\n const className = cn('aspect-square', attributes.className);\n\n return (\n <div className=\"relative\" data-taco=\"chart-wrapper\">\n <ChartWrapper {...attributes} className={className} data-taco=\"chart-pie\" onSetWidth={setRadius}>\n <RechartsPrimitive.PieChart>\n <RechartsPrimitive.Tooltip content={<Tooltip title={tooltipTitle} />} />\n <RechartsPrimitive.Pie {...pieProps} label={showLabels ? <Label /> : undefined} />\n </RechartsPrimitive.PieChart>\n </ChartWrapper>\n {showLegend ? (\n <Legend<TData> items={items} hoverIndex={activeIndex} onHover={setActiveIndex} onToggle={toggleItem} />\n ) : null}\n </div>\n );\n}\n\nexport type PieChartSegmentProps<TData extends object> = {\n value: number;\n} & Omit<ChartChildProps<TData>, 'dataKey' | 'formatter' | 'unit'>;\n\nfunction Segment<TData extends object>(_: PieChartSegmentProps<TData>): React.JSX.Element | null {\n return null;\n}\nPieChart.Segment = Segment;\n\nconst RADIAN = Math.PI / 180;\n\n// Recharts injects the render props when it clones this element, so they're all optional here.\nfunction Label(props: Partial<PieLabelRenderProps>) {\n const { cx = 0, cy = 0, midAngle = 0, name, innerRadius = 0, outerRadius = 0 } = props;\n const radius = Number(innerRadius) + (Number(outerRadius) - Number(innerRadius)) * 0.7;\n const x = Number(cx) + radius * Math.cos(-midAngle * RADIAN);\n const y = Number(cy) + radius * Math.sin(-midAngle * RADIAN);\n\n return (\n <text\n x={x}\n y={y}\n fontSize={12}\n fill={getInverseThemeColor(props.payload?.payload?.color ?? '')}\n textAnchor=\"middle\"\n dominantBaseline=\"middle\">\n {name}\n </text>\n );\n}\n"],"names":["usePieChart","ChartWrapper","RechartsPrimitive","Tooltip","Legend","getInverseThemeColor"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBO,SAAS,SAA+B,OAAsB;AACjE,QAAM,EAAE,UAAU,WAAW,aAAa,OAAO,aAAa,OAAO,cAAc,MAAM,GAAG,WAAA,IAAe;AAC3G,QAAM,EAAE,UAAU,WAAW,OAAO,aAAa,gBAAgB,WAAA,IAAeA,KAAAA,YAAmB,UAAU;AAAA,IACzG;AAAA,IACA;AAAA,EAAA,CACH;AACD,QAAM,YAAY,GAAG,iBAAiB,WAAW,SAAS;AAE1D,SACI,sBAAA,cAAC,OAAA,EAAI,WAAU,YAAW,aAAU,gBAAA,GAChC,sBAAA,cAACC,aAAAA,cAAA,EAAc,GAAG,YAAY,WAAsB,aAAU,aAAY,YAAY,UAAA,GAClF,sBAAA,cAACC,6BAAkB,UAAlB,MACG,sBAAA,cAACA,6BAAkB,SAAlB,EAA0B,SAAS,sBAAA,cAACC,QAAAA,SAAA,EAAQ,OAAO,aAAA,CAAc,GAAI,GACtE,sBAAA,cAACD,6BAAkB,KAAlB,EAAuB,GAAG,UAAU,OAAO,aAAa,sBAAA,cAAC,OAAA,IAAM,IAAK,OAAA,CAAW,CACpF,CACJ,GACC,aACG,sBAAA,cAACE,OAAAA,QAAA,EAAc,OAAc,YAAY,aAAa,SAAS,gBAAgB,UAAU,WAAA,CAAY,IACrG,IACR;AAER;AAMA,SAAS,QAA8B,GAA0D;AAC7F,SAAO;AACX;AACA,SAAS,UAAU;AAEnB,MAAM,SAAS,KAAK,KAAK;AAGzB,SAAS,MAAM,OAAqC;AAChD,QAAM,EAAE,KAAK,GAAG,KAAK,GAAG,WAAW,GAAG,MAAM,cAAc,GAAG,cAAc,EAAA,IAAM;AACjF,QAAM,SAAS,OAAO,WAAW,KAAK,OAAO,WAAW,IAAI,OAAO,WAAW,KAAK;AACnF,QAAM,IAAI,OAAO,EAAE,IAAI,SAAS,KAAK,IAAI,CAAC,WAAW,MAAM;AAC3D,QAAM,IAAI,OAAO,EAAE,IAAI,SAAS,KAAK,IAAI,CAAC,WAAW,MAAM;AAE3D,SACI,sBAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV,MAAMC,MAAAA,qBAAqB,MAAM,SAAS,SAAS,SAAS,EAAE;AAAA,MAC9D,YAAW;AAAA,MACX,kBAAiB;AAAA,IAAA;AAAA,IAChB;AAAA,EAAA;AAGb;;"}
@@ -21,10 +21,10 @@ function Segment(_) {
21
21
  PieChart.Segment = Segment;
22
22
  const RADIAN = Math.PI / 180;
23
23
  function Label(props) {
24
- const { cx, cy, midAngle, name, innerRadius, outerRadius } = props;
25
- const radius = innerRadius + (outerRadius - innerRadius) * 0.7;
26
- const x = cx + radius * Math.cos(-midAngle * RADIAN);
27
- const y = cy + radius * Math.sin(-midAngle * RADIAN);
24
+ const { cx = 0, cy = 0, midAngle = 0, name, innerRadius = 0, outerRadius = 0 } = props;
25
+ const radius = Number(innerRadius) + (Number(outerRadius) - Number(innerRadius)) * 0.7;
26
+ const x = Number(cx) + radius * Math.cos(-midAngle * RADIAN);
27
+ const y = Number(cy) + radius * Math.sin(-midAngle * RADIAN);
28
28
  return /* @__PURE__ */ React__default.createElement(
29
29
  "text",
30
30
  {
@@ -1 +1 @@
1
- {"version":3,"file":"PieChart.js","sources":["../../../../src/charts/components/Pie/PieChart.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\nimport * as RechartsPrimitive from 'recharts';\n\nimport { getInverseThemeColor } from '@/charts/utils/color';\n\nimport { ChartWrapper } from '../ChartWrapper';\nimport { Legend } from '../Legend';\nimport { Tooltip } from '../Tooltip';\nimport type { ChartChildProps, PolarChartProps } from '../types';\n\nimport { usePieChart } from './util';\n\nexport type PieChartProps = {\n /** Show labels inside each segment\n * @default false\n */\n showLabels?: boolean;\n} & PolarChartProps;\n\nexport function PieChart<TData extends object>(props: PieChartProps) {\n const { children, formatter, showLabels = false, showLegend = false, tooltipTitle, unit, ...attributes } = props;\n const { pieProps, setRadius, items, activeIndex, setActiveIndex, toggleItem } = usePieChart<TData>(children, {\n formatter,\n unit,\n });\n const className = cn('aspect-square', attributes.className);\n\n return (\n <div className=\"relative\" data-taco=\"chart-wrapper\">\n <ChartWrapper {...attributes} className={className} data-taco=\"chart-pie\" onSetWidth={setRadius}>\n <RechartsPrimitive.PieChart>\n <RechartsPrimitive.Tooltip content={<Tooltip title={tooltipTitle} />} />\n <RechartsPrimitive.Pie {...pieProps} label={showLabels ? <Label /> : undefined} />\n </RechartsPrimitive.PieChart>\n </ChartWrapper>\n {showLegend ? (\n <Legend<TData> items={items} hoverIndex={activeIndex} onHover={setActiveIndex} onToggle={toggleItem} />\n ) : null}\n </div>\n );\n}\n\nexport type PieChartSegmentProps<TData extends object> = {\n value: number;\n} & Omit<ChartChildProps<TData>, 'dataKey' | 'formatter' | 'unit'>;\n\nfunction Segment<TData extends object>(_: PieChartSegmentProps<TData>): React.JSX.Element | null {\n return null;\n}\nPieChart.Segment = Segment;\n\nconst RADIAN = Math.PI / 180;\n\nfunction Label(props: any) {\n const { cx, cy, midAngle, name, innerRadius, outerRadius } = props;\n const radius = innerRadius + (outerRadius - innerRadius) * 0.7;\n const x = cx + radius * Math.cos(-midAngle * RADIAN);\n const y = cy + radius * Math.sin(-midAngle * RADIAN);\n\n return (\n <text\n x={x}\n y={y}\n fontSize={12}\n fill={getInverseThemeColor(props.payload?.payload?.color ?? '')}\n textAnchor=\"middle\"\n dominantBaseline=\"middle\">\n {name}\n </text>\n );\n}\n"],"names":["React"],"mappings":";;;;;;;;AAoBO,SAAS,SAA+B,OAAsB;AACjE,QAAM,EAAE,UAAU,WAAW,aAAa,OAAO,aAAa,OAAO,cAAc,MAAM,GAAG,WAAA,IAAe;AAC3G,QAAM,EAAE,UAAU,WAAW,OAAO,aAAa,gBAAgB,WAAA,IAAe,YAAmB,UAAU;AAAA,IACzG;AAAA,IACA;AAAA,EAAA,CACH;AACD,QAAM,YAAY,GAAG,iBAAiB,WAAW,SAAS;AAE1D,SACIA,+BAAA,cAAC,OAAA,EAAI,WAAU,YAAW,aAAU,gBAAA,GAChCA,+BAAA,cAAC,cAAA,EAAc,GAAG,YAAY,WAAsB,aAAU,aAAY,YAAY,UAAA,GAClFA,+BAAA,cAAC,kBAAkB,UAAlB,MACGA,+BAAA,cAAC,kBAAkB,SAAlB,EAA0B,SAASA,+BAAA,cAAC,SAAA,EAAQ,OAAO,aAAA,CAAc,GAAI,GACtEA,+BAAA,cAAC,kBAAkB,KAAlB,EAAuB,GAAG,UAAU,OAAO,aAAaA,+BAAA,cAAC,OAAA,IAAM,IAAK,OAAA,CAAW,CACpF,CACJ,GACC,aACGA,+BAAA,cAAC,QAAA,EAAc,OAAc,YAAY,aAAa,SAAS,gBAAgB,UAAU,WAAA,CAAY,IACrG,IACR;AAER;AAMA,SAAS,QAA8B,GAA0D;AAC7F,SAAO;AACX;AACA,SAAS,UAAU;AAEnB,MAAM,SAAS,KAAK,KAAK;AAEzB,SAAS,MAAM,OAAY;AACvB,QAAM,EAAE,IAAI,IAAI,UAAU,MAAM,aAAa,gBAAgB;AAC7D,QAAM,SAAS,eAAe,cAAc,eAAe;AAC3D,QAAM,IAAI,KAAK,SAAS,KAAK,IAAI,CAAC,WAAW,MAAM;AACnD,QAAM,IAAI,KAAK,SAAS,KAAK,IAAI,CAAC,WAAW,MAAM;AAEnD,SACIA,+BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV,MAAM,qBAAqB,MAAM,SAAS,SAAS,SAAS,EAAE;AAAA,MAC9D,YAAW;AAAA,MACX,kBAAiB;AAAA,IAAA;AAAA,IAChB;AAAA,EAAA;AAGb;"}
1
+ {"version":3,"file":"PieChart.js","sources":["../../../../src/charts/components/Pie/PieChart.tsx"],"sourcesContent":["import cn from 'clsx';\nimport React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieLabelRenderProps } from 'recharts/types/polar/Pie';\n\nimport { getInverseThemeColor } from '@/charts/utils/color';\n\nimport { ChartWrapper } from '../ChartWrapper';\nimport { Legend } from '../Legend';\nimport { Tooltip } from '../Tooltip';\nimport type { ChartChildProps, PolarChartProps } from '../types';\n\nimport { usePieChart } from './util';\n\nexport type PieChartProps = {\n /** Show labels inside each segment\n * @default false\n */\n showLabels?: boolean;\n} & PolarChartProps;\n\nexport function PieChart<TData extends object>(props: PieChartProps) {\n const { children, formatter, showLabels = false, showLegend = false, tooltipTitle, unit, ...attributes } = props;\n const { pieProps, setRadius, items, activeIndex, setActiveIndex, toggleItem } = usePieChart<TData>(children, {\n formatter,\n unit,\n });\n const className = cn('aspect-square', attributes.className);\n\n return (\n <div className=\"relative\" data-taco=\"chart-wrapper\">\n <ChartWrapper {...attributes} className={className} data-taco=\"chart-pie\" onSetWidth={setRadius}>\n <RechartsPrimitive.PieChart>\n <RechartsPrimitive.Tooltip content={<Tooltip title={tooltipTitle} />} />\n <RechartsPrimitive.Pie {...pieProps} label={showLabels ? <Label /> : undefined} />\n </RechartsPrimitive.PieChart>\n </ChartWrapper>\n {showLegend ? (\n <Legend<TData> items={items} hoverIndex={activeIndex} onHover={setActiveIndex} onToggle={toggleItem} />\n ) : null}\n </div>\n );\n}\n\nexport type PieChartSegmentProps<TData extends object> = {\n value: number;\n} & Omit<ChartChildProps<TData>, 'dataKey' | 'formatter' | 'unit'>;\n\nfunction Segment<TData extends object>(_: PieChartSegmentProps<TData>): React.JSX.Element | null {\n return null;\n}\nPieChart.Segment = Segment;\n\nconst RADIAN = Math.PI / 180;\n\n// Recharts injects the render props when it clones this element, so they're all optional here.\nfunction Label(props: Partial<PieLabelRenderProps>) {\n const { cx = 0, cy = 0, midAngle = 0, name, innerRadius = 0, outerRadius = 0 } = props;\n const radius = Number(innerRadius) + (Number(outerRadius) - Number(innerRadius)) * 0.7;\n const x = Number(cx) + radius * Math.cos(-midAngle * RADIAN);\n const y = Number(cy) + radius * Math.sin(-midAngle * RADIAN);\n\n return (\n <text\n x={x}\n y={y}\n fontSize={12}\n fill={getInverseThemeColor(props.payload?.payload?.color ?? '')}\n textAnchor=\"middle\"\n dominantBaseline=\"middle\">\n {name}\n </text>\n );\n}\n"],"names":["React"],"mappings":";;;;;;;;AAqBO,SAAS,SAA+B,OAAsB;AACjE,QAAM,EAAE,UAAU,WAAW,aAAa,OAAO,aAAa,OAAO,cAAc,MAAM,GAAG,WAAA,IAAe;AAC3G,QAAM,EAAE,UAAU,WAAW,OAAO,aAAa,gBAAgB,WAAA,IAAe,YAAmB,UAAU;AAAA,IACzG;AAAA,IACA;AAAA,EAAA,CACH;AACD,QAAM,YAAY,GAAG,iBAAiB,WAAW,SAAS;AAE1D,SACIA,+BAAA,cAAC,OAAA,EAAI,WAAU,YAAW,aAAU,gBAAA,GAChCA,+BAAA,cAAC,cAAA,EAAc,GAAG,YAAY,WAAsB,aAAU,aAAY,YAAY,UAAA,GAClFA,+BAAA,cAAC,kBAAkB,UAAlB,MACGA,+BAAA,cAAC,kBAAkB,SAAlB,EAA0B,SAASA,+BAAA,cAAC,SAAA,EAAQ,OAAO,aAAA,CAAc,GAAI,GACtEA,+BAAA,cAAC,kBAAkB,KAAlB,EAAuB,GAAG,UAAU,OAAO,aAAaA,+BAAA,cAAC,OAAA,IAAM,IAAK,OAAA,CAAW,CACpF,CACJ,GACC,aACGA,+BAAA,cAAC,QAAA,EAAc,OAAc,YAAY,aAAa,SAAS,gBAAgB,UAAU,WAAA,CAAY,IACrG,IACR;AAER;AAMA,SAAS,QAA8B,GAA0D;AAC7F,SAAO;AACX;AACA,SAAS,UAAU;AAEnB,MAAM,SAAS,KAAK,KAAK;AAGzB,SAAS,MAAM,OAAqC;AAChD,QAAM,EAAE,KAAK,GAAG,KAAK,GAAG,WAAW,GAAG,MAAM,cAAc,GAAG,cAAc,EAAA,IAAM;AACjF,QAAM,SAAS,OAAO,WAAW,KAAK,OAAO,WAAW,IAAI,OAAO,WAAW,KAAK;AACnF,QAAM,IAAI,OAAO,EAAE,IAAI,SAAS,KAAK,IAAI,CAAC,WAAW,MAAM;AAC3D,QAAM,IAAI,OAAO,EAAE,IAAI,SAAS,KAAK,IAAI,CAAC,WAAW,MAAM;AAE3D,SACIA,+BAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACG;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV,MAAM,qBAAqB,MAAM,SAAS,SAAS,SAAS,EAAE;AAAA,MAC9D,YAAW;AAAA,MACX,kBAAiB;AAAA,IAAA;AAAA,IAChB;AAAA,EAAA;AAGb;"}
@@ -1 +1 @@
1
- {"version":3,"file":"util.cjs","sources":["../../../../src/charts/components/Pie/util.tsx"],"sourcesContent":["import React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieSectorDataItem } from 'recharts/types/polar/Pie';\n\nimport type { useChartOptions } from '../useChartData';\nimport { useChart } from '../useChartData';\n\nconst PIE_ACTIVE_WIDTH = 10;\nconst PIE_ACTIVE_WIDTH_OFFSET = 2;\n\nexport function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem } = useChart<TData>(children, options);\n const [radius, _setRadius] = React.useState<number>(0);\n\n function setRadius(width: number) {\n _setRadius((width - 2 * (PIE_ACTIVE_WIDTH + PIE_ACTIVE_WIDTH_OFFSET)) / 2);\n }\n\n const pieProps = {\n activeIndex,\n activeShape: (props: any) => <ActiveShape {...props} />,\n children: shapes.map(shape => <RechartsPrimitive.Cell key={shape.dataKey} color={shape.color} fill={shape.fill} />),\n // data props\n data: items.filter(item => !item.isHidden),\n dataKey: 'value',\n nameKey: 'label',\n // style props\n isAnimationActive: false,\n startAngle: 90,\n endAngle: -270,\n stroke: '0',\n labelLine: false,\n outerRadius: radius,\n };\n\n return { pieProps, radius, setRadius, items, activeIndex, setActiveIndex, globalFormatter, toggleItem, shapes };\n}\n\nconst PIE_CHART_HOVER = 10;\nconst PIE_CHART_HOVER_OFFSET = 2;\n\ntype ActiveShapeProps = {\n pieColors: Record<string, string>;\n} & PieSectorDataItem;\n\nfunction ActiveShape(props: ActiveShapeProps) {\n const { outerRadius = 0, ...attributes } = props;\n\n return (\n <>\n <RechartsPrimitive.Sector {...attributes} outerRadius={outerRadius} />\n <RechartsPrimitive.Sector\n {...attributes}\n innerRadius={outerRadius + PIE_CHART_HOVER_OFFSET}\n outerRadius={outerRadius + PIE_CHART_HOVER}\n opacity={0.4}\n />\n </>\n );\n}\n"],"names":["useChart","RechartsPrimitive"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAEzB,SAAS,YAAkC,UAA2B,SAA2B;AACpG,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,eAAeA,aAAAA,SAAgB,UAAU,OAAO;AACrH,QAAM,CAAC,QAAQ,UAAU,IAAI,MAAM,SAAiB,CAAC;AAErD,WAAS,UAAU,OAAe;AAC9B,gBAAY,QAAQ,KAAK,mBAAmB,4BAA4B,CAAC;AAAA,EAC7E;AAEA,QAAM,WAAW;AAAA,IACb;AAAA,IACA,aAAa,CAAC,UAAe,sBAAA,cAAC,aAAA,EAAa,GAAG,OAAO;AAAA,IACrD,UAAU,OAAO,IAAI,CAAA,UAAS,sBAAA,cAACC,6BAAkB,MAAlB,EAAuB,KAAK,MAAM,SAAS,OAAO,MAAM,OAAO,MAAM,MAAM,MAAM,CAAE;AAAA;AAAA,IAElH,MAAM,MAAM,OAAO,CAAA,SAAQ,CAAC,KAAK,QAAQ;AAAA,IACzC,SAAS;AAAA,IACT,SAAS;AAAA;AAAA,IAET,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,aAAa;AAAA,EAAA;AAGjB,SAAO,EAAE,UAAU,QAAQ,WAAW,OAAO,aAAa,gBAAgB,iBAAiB,YAAY,OAAA;AAC3G;AAEA,MAAM,kBAAkB;AACxB,MAAM,yBAAyB;AAM/B,SAAS,YAAY,OAAyB;AAC1C,QAAM,EAAE,cAAc,GAAG,GAAG,eAAe;AAE3C,SACI,sBAAA,cAAA,MAAA,UAAA,0CACKA,6BAAkB,QAAlB,EAA0B,GAAG,YAAY,aAA0B,GACpE,sBAAA;AAAA,IAACA,6BAAkB;AAAA,IAAlB;AAAA,MACI,GAAG;AAAA,MACJ,aAAa,cAAc;AAAA,MAC3B,aAAa,cAAc;AAAA,MAC3B,SAAS;AAAA,IAAA;AAAA,EAAA,CAEjB;AAER;;"}
1
+ {"version":3,"file":"util.cjs","sources":["../../../../src/charts/components/Pie/util.tsx"],"sourcesContent":["import React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieSectorDataItem } from 'recharts/types/polar/Pie';\n\nimport type { useChartOptions } from '../useChartData';\nimport { useChart } from '../useChartData';\n\nconst PIE_ACTIVE_WIDTH = 10;\nconst PIE_ACTIVE_WIDTH_OFFSET = 2;\n\nexport function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem } = useChart<TData>(children, options);\n const [radius, _setRadius] = React.useState<number>(0);\n\n function setRadius(width: number) {\n _setRadius((width - 2 * (PIE_ACTIVE_WIDTH + PIE_ACTIVE_WIDTH_OFFSET)) / 2);\n }\n\n const pieProps = {\n activeIndex,\n activeShape: (props: PieSectorDataItem) => <ActiveShape {...props} />,\n children: shapes.map(shape => <RechartsPrimitive.Cell key={shape.dataKey} color={shape.color} fill={shape.fill} />),\n // data props\n data: items.filter(item => !item.isHidden),\n dataKey: 'value',\n nameKey: 'label',\n // style props\n isAnimationActive: false,\n startAngle: 90,\n endAngle: -270,\n stroke: '0',\n labelLine: false,\n outerRadius: radius,\n };\n\n return { pieProps, radius, setRadius, items, activeIndex, setActiveIndex, globalFormatter, toggleItem, shapes };\n}\n\nconst PIE_CHART_HOVER = 10;\nconst PIE_CHART_HOVER_OFFSET = 2;\n\nfunction ActiveShape(props: PieSectorDataItem) {\n const { outerRadius = 0, ...attributes } = props;\n\n return (\n <>\n <RechartsPrimitive.Sector {...attributes} outerRadius={outerRadius} />\n <RechartsPrimitive.Sector\n {...attributes}\n innerRadius={outerRadius + PIE_CHART_HOVER_OFFSET}\n outerRadius={outerRadius + PIE_CHART_HOVER}\n opacity={0.4}\n />\n </>\n );\n}\n"],"names":["useChart","RechartsPrimitive"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAEzB,SAAS,YAAkC,UAA2B,SAA2B;AACpG,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,eAAeA,aAAAA,SAAgB,UAAU,OAAO;AACrH,QAAM,CAAC,QAAQ,UAAU,IAAI,MAAM,SAAiB,CAAC;AAErD,WAAS,UAAU,OAAe;AAC9B,gBAAY,QAAQ,KAAK,mBAAmB,4BAA4B,CAAC;AAAA,EAC7E;AAEA,QAAM,WAAW;AAAA,IACb;AAAA,IACA,aAAa,CAAC,UAA6B,sBAAA,cAAC,aAAA,EAAa,GAAG,OAAO;AAAA,IACnE,UAAU,OAAO,IAAI,CAAA,UAAS,sBAAA,cAACC,6BAAkB,MAAlB,EAAuB,KAAK,MAAM,SAAS,OAAO,MAAM,OAAO,MAAM,MAAM,MAAM,CAAE;AAAA;AAAA,IAElH,MAAM,MAAM,OAAO,CAAA,SAAQ,CAAC,KAAK,QAAQ;AAAA,IACzC,SAAS;AAAA,IACT,SAAS;AAAA;AAAA,IAET,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,aAAa;AAAA,EAAA;AAGjB,SAAO,EAAE,UAAU,QAAQ,WAAW,OAAO,aAAa,gBAAgB,iBAAiB,YAAY,OAAA;AAC3G;AAEA,MAAM,kBAAkB;AACxB,MAAM,yBAAyB;AAE/B,SAAS,YAAY,OAA0B;AAC3C,QAAM,EAAE,cAAc,GAAG,GAAG,eAAe;AAE3C,SACI,sBAAA,cAAA,MAAA,UAAA,0CACKA,6BAAkB,QAAlB,EAA0B,GAAG,YAAY,aAA0B,GACpE,sBAAA;AAAA,IAACA,6BAAkB;AAAA,IAAlB;AAAA,MACI,GAAG;AAAA,MACJ,aAAa,cAAc;AAAA,MAC3B,aAAa,cAAc;AAAA,MAC3B,SAAS;AAAA,IAAA;AAAA,EAAA,CAEjB;AAER;;"}
@@ -1,9 +1,10 @@
1
1
  import { default as React } from 'react';
2
+ import { PieSectorDataItem } from 'recharts/types/polar/Pie';
2
3
  import { useChartOptions } from '../useChartData';
3
4
  export declare function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions): {
4
5
  pieProps: {
5
6
  activeIndex: number | undefined;
6
- activeShape: (props: any) => React.JSX.Element;
7
+ activeShape: (props: PieSectorDataItem) => React.JSX.Element;
7
8
  children: React.JSX.Element[];
8
9
  data: import('../types').ChartChildProps<TData>[];
9
10
  dataKey: string;
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sources":["../../../../src/charts/components/Pie/util.tsx"],"sourcesContent":["import React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieSectorDataItem } from 'recharts/types/polar/Pie';\n\nimport type { useChartOptions } from '../useChartData';\nimport { useChart } from '../useChartData';\n\nconst PIE_ACTIVE_WIDTH = 10;\nconst PIE_ACTIVE_WIDTH_OFFSET = 2;\n\nexport function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem } = useChart<TData>(children, options);\n const [radius, _setRadius] = React.useState<number>(0);\n\n function setRadius(width: number) {\n _setRadius((width - 2 * (PIE_ACTIVE_WIDTH + PIE_ACTIVE_WIDTH_OFFSET)) / 2);\n }\n\n const pieProps = {\n activeIndex,\n activeShape: (props: any) => <ActiveShape {...props} />,\n children: shapes.map(shape => <RechartsPrimitive.Cell key={shape.dataKey} color={shape.color} fill={shape.fill} />),\n // data props\n data: items.filter(item => !item.isHidden),\n dataKey: 'value',\n nameKey: 'label',\n // style props\n isAnimationActive: false,\n startAngle: 90,\n endAngle: -270,\n stroke: '0',\n labelLine: false,\n outerRadius: radius,\n };\n\n return { pieProps, radius, setRadius, items, activeIndex, setActiveIndex, globalFormatter, toggleItem, shapes };\n}\n\nconst PIE_CHART_HOVER = 10;\nconst PIE_CHART_HOVER_OFFSET = 2;\n\ntype ActiveShapeProps = {\n pieColors: Record<string, string>;\n} & PieSectorDataItem;\n\nfunction ActiveShape(props: ActiveShapeProps) {\n const { outerRadius = 0, ...attributes } = props;\n\n return (\n <>\n <RechartsPrimitive.Sector {...attributes} outerRadius={outerRadius} />\n <RechartsPrimitive.Sector\n {...attributes}\n innerRadius={outerRadius + PIE_CHART_HOVER_OFFSET}\n outerRadius={outerRadius + PIE_CHART_HOVER}\n opacity={0.4}\n />\n </>\n );\n}\n"],"names":["React"],"mappings":";;;AAOA,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAEzB,SAAS,YAAkC,UAA2B,SAA2B;AACpG,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,eAAe,SAAgB,UAAU,OAAO;AACrH,QAAM,CAAC,QAAQ,UAAU,IAAIA,eAAM,SAAiB,CAAC;AAErD,WAAS,UAAU,OAAe;AAC9B,gBAAY,QAAQ,KAAK,mBAAmB,4BAA4B,CAAC;AAAA,EAC7E;AAEA,QAAM,WAAW;AAAA,IACb;AAAA,IACA,aAAa,CAAC,UAAeA,+BAAA,cAAC,aAAA,EAAa,GAAG,OAAO;AAAA,IACrD,UAAU,OAAO,IAAI,CAAA,UAASA,+BAAA,cAAC,kBAAkB,MAAlB,EAAuB,KAAK,MAAM,SAAS,OAAO,MAAM,OAAO,MAAM,MAAM,MAAM,CAAE;AAAA;AAAA,IAElH,MAAM,MAAM,OAAO,CAAA,SAAQ,CAAC,KAAK,QAAQ;AAAA,IACzC,SAAS;AAAA,IACT,SAAS;AAAA;AAAA,IAET,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,aAAa;AAAA,EAAA;AAGjB,SAAO,EAAE,UAAU,QAAQ,WAAW,OAAO,aAAa,gBAAgB,iBAAiB,YAAY,OAAA;AAC3G;AAEA,MAAM,kBAAkB;AACxB,MAAM,yBAAyB;AAM/B,SAAS,YAAY,OAAyB;AAC1C,QAAM,EAAE,cAAc,GAAG,GAAG,eAAe;AAE3C,SACIA,+BAAA,cAAAA,eAAA,UAAA,mDACK,kBAAkB,QAAlB,EAA0B,GAAG,YAAY,aAA0B,GACpEA,+BAAA;AAAA,IAAC,kBAAkB;AAAA,IAAlB;AAAA,MACI,GAAG;AAAA,MACJ,aAAa,cAAc;AAAA,MAC3B,aAAa,cAAc;AAAA,MAC3B,SAAS;AAAA,IAAA;AAAA,EAAA,CAEjB;AAER;"}
1
+ {"version":3,"file":"util.js","sources":["../../../../src/charts/components/Pie/util.tsx"],"sourcesContent":["import React from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport type { PieSectorDataItem } from 'recharts/types/polar/Pie';\n\nimport type { useChartOptions } from '../useChartData';\nimport { useChart } from '../useChartData';\n\nconst PIE_ACTIVE_WIDTH = 10;\nconst PIE_ACTIVE_WIDTH_OFFSET = 2;\n\nexport function usePieChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem } = useChart<TData>(children, options);\n const [radius, _setRadius] = React.useState<number>(0);\n\n function setRadius(width: number) {\n _setRadius((width - 2 * (PIE_ACTIVE_WIDTH + PIE_ACTIVE_WIDTH_OFFSET)) / 2);\n }\n\n const pieProps = {\n activeIndex,\n activeShape: (props: PieSectorDataItem) => <ActiveShape {...props} />,\n children: shapes.map(shape => <RechartsPrimitive.Cell key={shape.dataKey} color={shape.color} fill={shape.fill} />),\n // data props\n data: items.filter(item => !item.isHidden),\n dataKey: 'value',\n nameKey: 'label',\n // style props\n isAnimationActive: false,\n startAngle: 90,\n endAngle: -270,\n stroke: '0',\n labelLine: false,\n outerRadius: radius,\n };\n\n return { pieProps, radius, setRadius, items, activeIndex, setActiveIndex, globalFormatter, toggleItem, shapes };\n}\n\nconst PIE_CHART_HOVER = 10;\nconst PIE_CHART_HOVER_OFFSET = 2;\n\nfunction ActiveShape(props: PieSectorDataItem) {\n const { outerRadius = 0, ...attributes } = props;\n\n return (\n <>\n <RechartsPrimitive.Sector {...attributes} outerRadius={outerRadius} />\n <RechartsPrimitive.Sector\n {...attributes}\n innerRadius={outerRadius + PIE_CHART_HOVER_OFFSET}\n outerRadius={outerRadius + PIE_CHART_HOVER}\n opacity={0.4}\n />\n </>\n );\n}\n"],"names":["React"],"mappings":";;;AAOA,MAAM,mBAAmB;AACzB,MAAM,0BAA0B;AAEzB,SAAS,YAAkC,UAA2B,SAA2B;AACpG,QAAM,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,eAAe,SAAgB,UAAU,OAAO;AACrH,QAAM,CAAC,QAAQ,UAAU,IAAIA,eAAM,SAAiB,CAAC;AAErD,WAAS,UAAU,OAAe;AAC9B,gBAAY,QAAQ,KAAK,mBAAmB,4BAA4B,CAAC;AAAA,EAC7E;AAEA,QAAM,WAAW;AAAA,IACb;AAAA,IACA,aAAa,CAAC,UAA6BA,+BAAA,cAAC,aAAA,EAAa,GAAG,OAAO;AAAA,IACnE,UAAU,OAAO,IAAI,CAAA,UAASA,+BAAA,cAAC,kBAAkB,MAAlB,EAAuB,KAAK,MAAM,SAAS,OAAO,MAAM,OAAO,MAAM,MAAM,MAAM,CAAE;AAAA;AAAA,IAElH,MAAM,MAAM,OAAO,CAAA,SAAQ,CAAC,KAAK,QAAQ;AAAA,IACzC,SAAS;AAAA,IACT,SAAS;AAAA;AAAA,IAET,mBAAmB;AAAA,IACnB,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,aAAa;AAAA,EAAA;AAGjB,SAAO,EAAE,UAAU,QAAQ,WAAW,OAAO,aAAa,gBAAgB,iBAAiB,YAAY,OAAA;AAC3G;AAEA,MAAM,kBAAkB;AACxB,MAAM,yBAAyB;AAE/B,SAAS,YAAY,OAA0B;AAC3C,QAAM,EAAE,cAAc,GAAG,GAAG,eAAe;AAE3C,SACIA,+BAAA,cAAAA,eAAA,UAAA,mDACK,kBAAkB,QAAlB,EAA0B,GAAG,YAAY,aAA0B,GACpEA,+BAAA;AAAA,IAAC,kBAAkB;AAAA,IAAlB;AAAA,MACI,GAAG;AAAA,MACJ,aAAa,cAAc;AAAA,MAC3B,aAAa,cAAc;AAAA,MAC3B,SAAS;AAAA,IAAA;AAAA,EAAA,CAEjB;AAER;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.cjs","sources":["../../../src/charts/components/Tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport type * as RechartsPrimitive from 'recharts';\n\nexport type TooltipProps = Omit<React.ComponentProps<typeof RechartsPrimitive.Tooltip>, 'formatter'> & {\n active?: boolean;\n style?: React.CSSProperties;\n title?: React.JSX.Element | string | null | false;\n};\n\nexport function Tooltip(props: TooltipProps) {\n const { active, payload = [], style, title } = props;\n\n if (active && payload.length) {\n return (\n <div className=\"z-20 z-[999] flex flex-col gap-y-1 rounded border border-gray-300 bg-white px-2 py-1.5 text-xs shadow-sm\">\n {title ? <span className=\"font-bold\">{title}</span> : null}\n <dl className=\"m-0 grid grid-cols-[max-content_max-content] gap-x-4 gap-y-0.5\" style={style}>\n {payload.map((entry, index) => {\n // some components like pie chart double nest\n const color = entry.color ?? entry.payload.color;\n const formatter = entry.formatter ?? entry.payload.formatter;\n const unit = entry.unit ?? entry.payload.unit;\n\n return (\n <React.Fragment key={`${entry.name}-${index}`}>\n <dt className=\"mb-0 flex items-center gap-1 font-normal text-gray-700\" data-taco=\"chart-tooltip\">\n <span className=\"-mt-px h-2.5 w-2.5 rounded-sm\" style={{ background: color }} />\n {entry.name}\n </dt>\n <dd className=\"mb-0 text-right font-bold tabular-nums text-black\">\n {formatter?.(entry.value ?? '', entry.name ?? '', entry, index, entry.payload) ?? entry.value}\n {unit ? <span className=\"pl-0.5 text-gray-700\">{unit}</span> : null}\n </dd>\n </React.Fragment>\n );\n })}\n </dl>\n </div>\n );\n }\n\n return null;\n}\n"],"names":[],"mappings":";;;AASO,SAAS,QAAQ,OAAqB;AACzC,QAAM,EAAE,QAAQ,UAAU,CAAA,GAAI,OAAO,UAAU;AAE/C,MAAI,UAAU,QAAQ,QAAQ;AAC1B,WACI,sBAAA,cAAC,SAAI,WAAU,2GAAA,GACV,QAAQ,sBAAA,cAAC,QAAA,EAAK,WAAU,YAAA,GAAa,KAAM,IAAU,MACtD,sBAAA,cAAC,QAAG,WAAU,kEAAiE,SAC1E,QAAQ,IAAI,CAAC,OAAO,UAAU;AAE3B,YAAM,QAAQ,MAAM,SAAS,MAAM,QAAQ;AAC3C,YAAM,YAAY,MAAM,aAAa,MAAM,QAAQ;AACnD,YAAM,OAAO,MAAM,QAAQ,MAAM,QAAQ;AAEzC,aACI,sBAAA,cAAC,MAAM,UAAN,EAAe,KAAK,GAAG,MAAM,IAAI,IAAI,KAAK,GAAA,GACvC,sBAAA,cAAC,MAAA,EAAG,WAAU,0DAAyD,aAAU,gBAAA,GAC7E,sBAAA,cAAC,QAAA,EAAK,WAAU,iCAAgC,OAAO,EAAE,YAAY,MAAA,EAAM,CAAG,GAC7E,MAAM,IACX,GACA,sBAAA,cAAC,MAAA,EAAG,WAAU,oDAAA,GACT,YAAY,MAAM,SAAS,IAAI,MAAM,QAAQ,IAAI,OAAO,OAAO,MAAM,OAAO,KAAK,MAAM,OACvF,OAAO,sBAAA,cAAC,QAAA,EAAK,WAAU,uBAAA,GAAwB,IAAK,IAAU,IACnE,CACJ;AAAA,IAER,CAAC,CACL,CACJ;AAAA,EAER;AAEA,SAAO;AACX;;"}
1
+ {"version":3,"file":"Tooltip.cjs","sources":["../../../src/charts/components/Tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport type { TooltipContentProps } from 'recharts';\n\nexport type TooltipProps = Partial<Omit<TooltipContentProps, 'formatter'>> & {\n style?: React.CSSProperties;\n title?: React.JSX.Element | string | null | false;\n};\n\nexport function Tooltip(props: TooltipProps) {\n const { active, payload = [], style, title } = props;\n\n if (active && payload.length) {\n return (\n <div className=\"z-20 z-[999] flex flex-col gap-y-1 rounded border border-gray-300 bg-white px-2 py-1.5 text-xs shadow-sm\">\n {title ? <span className=\"font-bold\">{title}</span> : null}\n <dl className=\"m-0 grid grid-cols-[max-content_max-content] gap-x-4 gap-y-0.5\" style={style}>\n {payload.map((entry, index) => {\n // some components like pie chart double nest\n const color = entry.color ?? entry.payload.color;\n const formatter = entry.formatter ?? entry.payload.formatter;\n const unit = entry.unit ?? entry.payload.unit;\n\n return (\n <React.Fragment key={`${entry.name}-${index}`}>\n <dt className=\"mb-0 flex items-center gap-1 font-normal text-gray-700\" data-taco=\"chart-tooltip\">\n <span className=\"-mt-px h-2.5 w-2.5 rounded-sm\" style={{ background: color }} />\n {entry.name}\n </dt>\n <dd className=\"mb-0 text-right font-bold tabular-nums text-black\">\n {formatter?.(entry.value ?? '', entry.name ?? '', entry, index, entry.payload) ?? entry.value}\n {unit ? <span className=\"pl-0.5 text-gray-700\">{unit}</span> : null}\n </dd>\n </React.Fragment>\n );\n })}\n </dl>\n </div>\n );\n }\n\n return null;\n}\n"],"names":[],"mappings":";;;AAQO,SAAS,QAAQ,OAAqB;AACzC,QAAM,EAAE,QAAQ,UAAU,CAAA,GAAI,OAAO,UAAU;AAE/C,MAAI,UAAU,QAAQ,QAAQ;AAC1B,WACI,sBAAA,cAAC,SAAI,WAAU,2GAAA,GACV,QAAQ,sBAAA,cAAC,QAAA,EAAK,WAAU,YAAA,GAAa,KAAM,IAAU,MACtD,sBAAA,cAAC,QAAG,WAAU,kEAAiE,SAC1E,QAAQ,IAAI,CAAC,OAAO,UAAU;AAE3B,YAAM,QAAQ,MAAM,SAAS,MAAM,QAAQ;AAC3C,YAAM,YAAY,MAAM,aAAa,MAAM,QAAQ;AACnD,YAAM,OAAO,MAAM,QAAQ,MAAM,QAAQ;AAEzC,aACI,sBAAA,cAAC,MAAM,UAAN,EAAe,KAAK,GAAG,MAAM,IAAI,IAAI,KAAK,GAAA,GACvC,sBAAA,cAAC,MAAA,EAAG,WAAU,0DAAyD,aAAU,gBAAA,GAC7E,sBAAA,cAAC,QAAA,EAAK,WAAU,iCAAgC,OAAO,EAAE,YAAY,MAAA,EAAM,CAAG,GAC7E,MAAM,IACX,GACA,sBAAA,cAAC,MAAA,EAAG,WAAU,oDAAA,GACT,YAAY,MAAM,SAAS,IAAI,MAAM,QAAQ,IAAI,OAAO,OAAO,MAAM,OAAO,KAAK,MAAM,OACvF,OAAO,sBAAA,cAAC,QAAA,EAAK,WAAU,uBAAA,GAAwB,IAAK,IAAU,IACnE,CACJ;AAAA,IAER,CAAC,CACL,CACJ;AAAA,EAER;AAEA,SAAO;AACX;;"}
@@ -1,7 +1,6 @@
1
1
  import { default as React } from 'react';
2
- import type * as RechartsPrimitive from 'recharts';
3
- export type TooltipProps = Omit<React.ComponentProps<typeof RechartsPrimitive.Tooltip>, 'formatter'> & {
4
- active?: boolean;
2
+ import { TooltipContentProps } from 'recharts';
3
+ export type TooltipProps = Partial<Omit<TooltipContentProps, 'formatter'>> & {
5
4
  style?: React.CSSProperties;
6
5
  title?: React.JSX.Element | string | null | false;
7
6
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","sources":["../../../src/charts/components/Tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport type * as RechartsPrimitive from 'recharts';\n\nexport type TooltipProps = Omit<React.ComponentProps<typeof RechartsPrimitive.Tooltip>, 'formatter'> & {\n active?: boolean;\n style?: React.CSSProperties;\n title?: React.JSX.Element | string | null | false;\n};\n\nexport function Tooltip(props: TooltipProps) {\n const { active, payload = [], style, title } = props;\n\n if (active && payload.length) {\n return (\n <div className=\"z-20 z-[999] flex flex-col gap-y-1 rounded border border-gray-300 bg-white px-2 py-1.5 text-xs shadow-sm\">\n {title ? <span className=\"font-bold\">{title}</span> : null}\n <dl className=\"m-0 grid grid-cols-[max-content_max-content] gap-x-4 gap-y-0.5\" style={style}>\n {payload.map((entry, index) => {\n // some components like pie chart double nest\n const color = entry.color ?? entry.payload.color;\n const formatter = entry.formatter ?? entry.payload.formatter;\n const unit = entry.unit ?? entry.payload.unit;\n\n return (\n <React.Fragment key={`${entry.name}-${index}`}>\n <dt className=\"mb-0 flex items-center gap-1 font-normal text-gray-700\" data-taco=\"chart-tooltip\">\n <span className=\"-mt-px h-2.5 w-2.5 rounded-sm\" style={{ background: color }} />\n {entry.name}\n </dt>\n <dd className=\"mb-0 text-right font-bold tabular-nums text-black\">\n {formatter?.(entry.value ?? '', entry.name ?? '', entry, index, entry.payload) ?? entry.value}\n {unit ? <span className=\"pl-0.5 text-gray-700\">{unit}</span> : null}\n </dd>\n </React.Fragment>\n );\n })}\n </dl>\n </div>\n );\n }\n\n return null;\n}\n"],"names":["React"],"mappings":";AASO,SAAS,QAAQ,OAAqB;AACzC,QAAM,EAAE,QAAQ,UAAU,CAAA,GAAI,OAAO,UAAU;AAE/C,MAAI,UAAU,QAAQ,QAAQ;AAC1B,WACIA,+BAAA,cAAC,SAAI,WAAU,2GAAA,GACV,QAAQA,+BAAA,cAAC,QAAA,EAAK,WAAU,YAAA,GAAa,KAAM,IAAU,MACtDA,+BAAA,cAAC,QAAG,WAAU,kEAAiE,SAC1E,QAAQ,IAAI,CAAC,OAAO,UAAU;AAE3B,YAAM,QAAQ,MAAM,SAAS,MAAM,QAAQ;AAC3C,YAAM,YAAY,MAAM,aAAa,MAAM,QAAQ;AACnD,YAAM,OAAO,MAAM,QAAQ,MAAM,QAAQ;AAEzC,aACIA,+BAAA,cAACA,eAAM,UAAN,EAAe,KAAK,GAAG,MAAM,IAAI,IAAI,KAAK,GAAA,GACvCA,+BAAA,cAAC,MAAA,EAAG,WAAU,0DAAyD,aAAU,gBAAA,GAC7EA,+BAAA,cAAC,QAAA,EAAK,WAAU,iCAAgC,OAAO,EAAE,YAAY,MAAA,EAAM,CAAG,GAC7E,MAAM,IACX,GACAA,+BAAA,cAAC,MAAA,EAAG,WAAU,oDAAA,GACT,YAAY,MAAM,SAAS,IAAI,MAAM,QAAQ,IAAI,OAAO,OAAO,MAAM,OAAO,KAAK,MAAM,OACvF,OAAOA,+BAAA,cAAC,QAAA,EAAK,WAAU,uBAAA,GAAwB,IAAK,IAAU,IACnE,CACJ;AAAA,IAER,CAAC,CACL,CACJ;AAAA,EAER;AAEA,SAAO;AACX;"}
1
+ {"version":3,"file":"Tooltip.js","sources":["../../../src/charts/components/Tooltip.tsx"],"sourcesContent":["import React from 'react';\nimport type { TooltipContentProps } from 'recharts';\n\nexport type TooltipProps = Partial<Omit<TooltipContentProps, 'formatter'>> & {\n style?: React.CSSProperties;\n title?: React.JSX.Element | string | null | false;\n};\n\nexport function Tooltip(props: TooltipProps) {\n const { active, payload = [], style, title } = props;\n\n if (active && payload.length) {\n return (\n <div className=\"z-20 z-[999] flex flex-col gap-y-1 rounded border border-gray-300 bg-white px-2 py-1.5 text-xs shadow-sm\">\n {title ? <span className=\"font-bold\">{title}</span> : null}\n <dl className=\"m-0 grid grid-cols-[max-content_max-content] gap-x-4 gap-y-0.5\" style={style}>\n {payload.map((entry, index) => {\n // some components like pie chart double nest\n const color = entry.color ?? entry.payload.color;\n const formatter = entry.formatter ?? entry.payload.formatter;\n const unit = entry.unit ?? entry.payload.unit;\n\n return (\n <React.Fragment key={`${entry.name}-${index}`}>\n <dt className=\"mb-0 flex items-center gap-1 font-normal text-gray-700\" data-taco=\"chart-tooltip\">\n <span className=\"-mt-px h-2.5 w-2.5 rounded-sm\" style={{ background: color }} />\n {entry.name}\n </dt>\n <dd className=\"mb-0 text-right font-bold tabular-nums text-black\">\n {formatter?.(entry.value ?? '', entry.name ?? '', entry, index, entry.payload) ?? entry.value}\n {unit ? <span className=\"pl-0.5 text-gray-700\">{unit}</span> : null}\n </dd>\n </React.Fragment>\n );\n })}\n </dl>\n </div>\n );\n }\n\n return null;\n}\n"],"names":["React"],"mappings":";AAQO,SAAS,QAAQ,OAAqB;AACzC,QAAM,EAAE,QAAQ,UAAU,CAAA,GAAI,OAAO,UAAU;AAE/C,MAAI,UAAU,QAAQ,QAAQ;AAC1B,WACIA,+BAAA,cAAC,SAAI,WAAU,2GAAA,GACV,QAAQA,+BAAA,cAAC,QAAA,EAAK,WAAU,YAAA,GAAa,KAAM,IAAU,MACtDA,+BAAA,cAAC,QAAG,WAAU,kEAAiE,SAC1E,QAAQ,IAAI,CAAC,OAAO,UAAU;AAE3B,YAAM,QAAQ,MAAM,SAAS,MAAM,QAAQ;AAC3C,YAAM,YAAY,MAAM,aAAa,MAAM,QAAQ;AACnD,YAAM,OAAO,MAAM,QAAQ,MAAM,QAAQ;AAEzC,aACIA,+BAAA,cAACA,eAAM,UAAN,EAAe,KAAK,GAAG,MAAM,IAAI,IAAI,KAAK,GAAA,GACvCA,+BAAA,cAAC,MAAA,EAAG,WAAU,0DAAyD,aAAU,gBAAA,GAC7EA,+BAAA,cAAC,QAAA,EAAK,WAAU,iCAAgC,OAAO,EAAE,YAAY,MAAA,EAAM,CAAG,GAC7E,MAAM,IACX,GACAA,+BAAA,cAAC,MAAA,EAAG,WAAU,oDAAA,GACT,YAAY,MAAM,SAAS,IAAI,MAAM,QAAQ,IAAI,OAAO,OAAO,MAAM,OAAO,KAAK,MAAM,OACvF,OAAOA,+BAAA,cAAC,QAAA,EAAK,WAAU,uBAAA,GAAwB,IAAK,IAAU,IACnE,CACJ;AAAA,IAER,CAAC,CACL,CACJ;AAAA,EAER;AAEA,SAAO;AACX;"}
@@ -1,8 +1,10 @@
1
- import { Payload } from 'recharts/types/component/DefaultLegendContent';
1
+ import { LegendPayload } from 'recharts';
2
+ import { CustomScaleDefinition } from 'recharts/types/util/scale/CustomScaleDefinition';
2
3
  import { ScaleType } from 'recharts/types/util/types';
3
4
  import { Color } from '../utils/color';
5
+ export type { ChartShape } from './useChartData';
4
6
  export type ActiveChartItems<TType> = Record<keyof TType & string, boolean>;
5
- export type PayloadType<TType> = Payload & {
7
+ export type PayloadType<TType> = LegendPayload & {
6
8
  dataKey: keyof TType & string;
7
9
  };
8
10
  export type LegacyChartChildProps = {
@@ -10,8 +12,10 @@ export type LegacyChartChildProps = {
10
12
  color: Color;
11
13
  label: string;
12
14
  };
15
+ /** A string scale shortcut, or a custom d3-compatible scale, matching Recharts' axis `scale` prop. */
16
+ export type ChartAxisScale = ScaleType | CustomScaleDefinition | CustomScaleDefinition<string> | CustomScaleDefinition<number> | CustomScaleDefinition<Date>;
13
17
  export type ChartValueFormatter = (value: number) => string | React.JSX.Element;
14
- export type TickFormatter = (value: any) => string;
18
+ export type TickFormatter<TValue = any> = (value: TValue) => string;
15
19
  export type CurveType = 'natural' | 'linear' | 'step';
16
20
  export type ChartProps = {
17
21
  /** Show a legend below the chart, hidden by default
@@ -37,13 +41,13 @@ export type CartesianChartProps<TData extends object> = {
37
41
  /**
38
42
  * @default auto
39
43
  */
40
- xAxisScale?: ScaleType | Function;
44
+ xAxisScale?: ChartAxisScale;
41
45
  /** Format the value shown for each tick on the X Axis */
42
46
  xAxisTickFormatter?: TickFormatter;
43
47
  /**
44
48
  * @default auto
45
49
  */
46
- yAxisScale?: ScaleType | Function;
50
+ yAxisScale?: ChartAxisScale;
47
51
  /** Format the value shown for each tick on the Y Axis */
48
52
  yAxisTickFormatter?: TickFormatter;
49
53
  /** Adjust the width of the Y Axis to reduce whitespace
@@ -22,19 +22,21 @@ function useChart(children, options) {
22
22
  };
23
23
  });
24
24
  const shapes2 = items2.filter((item) => !hiddenItems[item.dataKey]).map((item) => {
25
+ const format = item.formatter;
25
26
  return {
26
27
  activeDot: {
27
28
  strokeWidth: 1
28
29
  },
29
30
  color: item.color,
30
- dataKey: item.dataKey,
31
+ dataKey: item.dataKey.toString(),
31
32
  dot: {
32
33
  fillOpacity: 1
33
34
  },
34
35
  isAnimationActive: false,
35
36
  fill: item.color,
36
37
  fillOpacity: 1,
37
- formatter: item.formatter,
38
+ // recharts' series Formatter passes the raw datum value; our chart formatters are numeric
39
+ formatter: format ? (value) => format(Number(value)) : void 0,
38
40
  name: item.label,
39
41
  stroke: item.color,
40
42
  strokeWidth: 1.5,
@@ -42,7 +44,7 @@ function useChart(children, options) {
42
44
  };
43
45
  });
44
46
  return { items: items2, shapes: shapes2 };
45
- }, [children, hiddenItems]);
47
+ }, [children, hiddenItems, globalFormatter, options?.unit]);
46
48
  return { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem };
47
49
  }
48
50
  function useChartDataHiddenState() {
@@ -1 +1 @@
1
- {"version":3,"file":"useChartData.cjs","sources":["../../../src/charts/components/useChartData.tsx"],"sourcesContent":["import React from 'react';\n\nimport { getThemeColor } from '@/charts/utils/color';\nimport { useLocalization } from '@/components/Provider/Localization';\n\nimport type { ChartChildProps, ChartValueFormatter } from './types';\n\nexport type useChartOptions = {\n formatter?: ChartValueFormatter;\n unit?: string;\n};\n\nexport type ChartShape = {\n activeDot: {\n strokeWidth: number;\n };\n color: string | undefined;\n dataKey: string;\n dot: {\n fillOpacity: number;\n };\n isAnimationActive: boolean;\n fill: string | undefined;\n fillOpacity: number;\n formatter: ChartValueFormatter | undefined;\n name: string;\n stroke: string | undefined;\n strokeWidth: number;\n unit?: string;\n};\n\nexport function useChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const [activeIndex, setActiveIndex] = React.useState<number | undefined>();\n const [hiddenItems, toggleItem] = useChartDataHiddenState<TData>();\n const localization = useLocalization();\n\n const defaultFormatter = (value: number) =>\n new Intl.NumberFormat(localization.locale, { minimumFractionDigits: 2 }).format(value);\n\n const globalFormatter = options?.formatter ?? defaultFormatter;\n\n const { items, shapes } = React.useMemo(() => {\n const items = React.Children.toArray(children)\n .filter(child => React.isValidElement<ChartChildProps<TData>>(child))\n .map(child => {\n const dataKey = child.props.dataKey ?? child.props.label;\n return {\n ...child.props,\n dataKey,\n color: getThemeColor(child.props.color, 'blue-300'),\n formatter: child.props.formatter ?? globalFormatter,\n isHidden: !!hiddenItems[dataKey],\n unit: child.props.unit ?? options?.unit,\n } as ChartChildProps<TData>;\n });\n\n const shapes: ChartShape[] = items\n .filter(item => !hiddenItems[item.dataKey])\n .map((item: ChartChildProps<TData>) => {\n return {\n activeDot: {\n strokeWidth: 1,\n },\n color: item.color,\n dataKey: item.dataKey as string,\n dot: {\n fillOpacity: 1,\n },\n isAnimationActive: false,\n fill: item.color,\n fillOpacity: 1,\n formatter: item.formatter,\n name: item.label,\n stroke: item.color,\n strokeWidth: 1.5,\n unit: item.unit,\n };\n });\n\n return { items, shapes };\n }, [children, hiddenItems]);\n\n return { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem };\n}\n\nexport function useChartDataHiddenState<TData extends object>(): [Record<keyof TData, boolean>, (name: keyof TData) => void] {\n const [state, setState] = React.useState<Record<keyof TData, boolean>>({} as Record<keyof TData, boolean>);\n\n function toggle(name: keyof TData) {\n setState(currentState => {\n const nextState = { ...currentState };\n\n if (currentState[name]) {\n delete nextState[name];\n } else {\n nextState[name] = true;\n }\n\n return nextState;\n });\n }\n\n return [state, toggle];\n}\n"],"names":["useLocalization","items","getThemeColor","shapes"],"mappings":";;;;;AA+BO,SAAS,SAA+B,UAA2B,SAA2B;AACjG,QAAM,CAAC,aAAa,cAAc,IAAI,MAAM,SAAA;AAC5C,QAAM,CAAC,aAAa,UAAU,IAAI,wBAAA;AAClC,QAAM,eAAeA,aAAAA,gBAAA;AAErB,QAAM,mBAAmB,CAAC,UACtB,IAAI,KAAK,aAAa,aAAa,QAAQ,EAAE,uBAAuB,EAAA,CAAG,EAAE,OAAO,KAAK;AAEzF,QAAM,kBAAkB,SAAS,aAAa;AAE9C,QAAM,EAAE,OAAO,OAAA,IAAW,MAAM,QAAQ,MAAM;AAC1C,UAAMC,SAAQ,MAAM,SAAS,QAAQ,QAAQ,EACxC,OAAO,CAAA,UAAS,MAAM,eAAuC,KAAK,CAAC,EACnE,IAAI,CAAA,UAAS;AACV,YAAM,UAAU,MAAM,MAAM,WAAW,MAAM,MAAM;AACnD,aAAO;AAAA,QACH,GAAG,MAAM;AAAA,QACT;AAAA,QACA,OAAOC,MAAAA,cAAc,MAAM,MAAM,OAAO,UAAU;AAAA,QAClD,WAAW,MAAM,MAAM,aAAa;AAAA,QACpC,UAAU,CAAC,CAAC,YAAY,OAAO;AAAA,QAC/B,MAAM,MAAM,MAAM,QAAQ,SAAS;AAAA,MAAA;AAAA,IAE3C,CAAC;AAEL,UAAMC,UAAuBF,OACxB,OAAO,CAAA,SAAQ,CAAC,YAAY,KAAK,OAAO,CAAC,EACzC,IAAI,CAAC,SAAiC;AACnC,aAAO;AAAA,QACH,WAAW;AAAA,UACP,aAAa;AAAA,QAAA;AAAA,QAEjB,OAAO,KAAK;AAAA,QACZ,SAAS,KAAK;AAAA,QACd,KAAK;AAAA,UACD,aAAa;AAAA,QAAA;AAAA,QAEjB,mBAAmB;AAAA,QACnB,MAAM,KAAK;AAAA,QACX,aAAa;AAAA,QACb,WAAW,KAAK;AAAA,QAChB,MAAM,KAAK;AAAA,QACX,QAAQ,KAAK;AAAA,QACb,aAAa;AAAA,QACb,MAAM,KAAK;AAAA,MAAA;AAAA,IAEnB,CAAC;AAEL,WAAO,EAAE,OAAAA,QAAO,QAAAE,QAAAA;AAAAA,EACpB,GAAG,CAAC,UAAU,WAAW,CAAC;AAE1B,SAAO,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,WAAA;AAC1E;AAEO,SAAS,0BAA6G;AACzH,QAAM,CAAC,OAAO,QAAQ,IAAI,MAAM,SAAuC,CAAA,CAAkC;AAEzG,WAAS,OAAO,MAAmB;AAC/B,aAAS,CAAA,iBAAgB;AACrB,YAAM,YAAY,EAAE,GAAG,aAAA;AAEvB,UAAI,aAAa,IAAI,GAAG;AACpB,eAAO,UAAU,IAAI;AAAA,MACzB,OAAO;AACH,kBAAU,IAAI,IAAI;AAAA,MACtB;AAEA,aAAO;AAAA,IACX,CAAC;AAAA,EACL;AAEA,SAAO,CAAC,OAAO,MAAM;AACzB;;;"}
1
+ {"version":3,"file":"useChartData.cjs","sources":["../../../src/charts/components/useChartData.tsx"],"sourcesContent":["import React from 'react';\nimport type { Formatter } from 'recharts/types/component/DefaultTooltipContent';\n\nimport { getThemeColor } from '@/charts/utils/color';\nimport { useLocalization } from '@/components/Provider/Localization';\n\nimport type { ChartChildProps, ChartValueFormatter } from './types';\n\nexport type useChartOptions = {\n formatter?: ChartValueFormatter;\n unit?: string;\n};\n\nexport type ChartShape = {\n activeDot: {\n strokeWidth: number;\n };\n color: string | undefined;\n dataKey: string;\n dot: {\n fillOpacity: number;\n };\n isAnimationActive: boolean;\n fill: string | undefined;\n fillOpacity: number;\n formatter: Formatter | undefined;\n name: string;\n stroke: string | undefined;\n strokeWidth: number;\n unit?: string;\n};\n\nexport function useChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const [activeIndex, setActiveIndex] = React.useState<number | undefined>();\n const [hiddenItems, toggleItem] = useChartDataHiddenState<TData>();\n const localization = useLocalization();\n\n const defaultFormatter = (value: number) =>\n new Intl.NumberFormat(localization.locale, { minimumFractionDigits: 2 }).format(value);\n\n const globalFormatter = options?.formatter ?? defaultFormatter;\n\n const { items, shapes } = React.useMemo(() => {\n const items = React.Children.toArray(children)\n .filter(child => React.isValidElement<ChartChildProps<TData>>(child))\n .map(child => {\n const dataKey = child.props.dataKey ?? child.props.label;\n return {\n ...child.props,\n dataKey,\n color: getThemeColor(child.props.color, 'blue-300'),\n formatter: child.props.formatter ?? globalFormatter,\n isHidden: !!hiddenItems[dataKey],\n unit: child.props.unit ?? options?.unit,\n } as ChartChildProps<TData>;\n });\n\n const shapes: ChartShape[] = items\n .filter(item => !hiddenItems[item.dataKey])\n .map((item: ChartChildProps<TData>) => {\n const format = item.formatter;\n return {\n activeDot: {\n strokeWidth: 1,\n },\n color: item.color,\n dataKey: item.dataKey.toString(),\n dot: {\n fillOpacity: 1,\n },\n isAnimationActive: false,\n fill: item.color,\n fillOpacity: 1,\n // recharts' series Formatter passes the raw datum value; our chart formatters are numeric\n formatter: format ? value => format(Number(value)) : undefined,\n name: item.label,\n stroke: item.color,\n strokeWidth: 1.5,\n unit: item.unit,\n };\n });\n\n return { items, shapes };\n }, [children, hiddenItems, globalFormatter, options?.unit]);\n\n return { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem };\n}\n\nexport function useChartDataHiddenState<TData extends object>(): [\n Partial<Record<keyof TData, boolean>>,\n (name: keyof TData) => void,\n] {\n const [state, setState] = React.useState<Partial<Record<keyof TData, boolean>>>({});\n\n function toggle(name: keyof TData) {\n setState(currentState => {\n const nextState = { ...currentState };\n\n if (currentState[name]) {\n delete nextState[name];\n } else {\n nextState[name] = true;\n }\n\n return nextState;\n });\n }\n\n return [state, toggle];\n}\n"],"names":["useLocalization","items","getThemeColor","shapes"],"mappings":";;;;;AAgCO,SAAS,SAA+B,UAA2B,SAA2B;AACjG,QAAM,CAAC,aAAa,cAAc,IAAI,MAAM,SAAA;AAC5C,QAAM,CAAC,aAAa,UAAU,IAAI,wBAAA;AAClC,QAAM,eAAeA,aAAAA,gBAAA;AAErB,QAAM,mBAAmB,CAAC,UACtB,IAAI,KAAK,aAAa,aAAa,QAAQ,EAAE,uBAAuB,EAAA,CAAG,EAAE,OAAO,KAAK;AAEzF,QAAM,kBAAkB,SAAS,aAAa;AAE9C,QAAM,EAAE,OAAO,OAAA,IAAW,MAAM,QAAQ,MAAM;AAC1C,UAAMC,SAAQ,MAAM,SAAS,QAAQ,QAAQ,EACxC,OAAO,CAAA,UAAS,MAAM,eAAuC,KAAK,CAAC,EACnE,IAAI,CAAA,UAAS;AACV,YAAM,UAAU,MAAM,MAAM,WAAW,MAAM,MAAM;AACnD,aAAO;AAAA,QACH,GAAG,MAAM;AAAA,QACT;AAAA,QACA,OAAOC,MAAAA,cAAc,MAAM,MAAM,OAAO,UAAU;AAAA,QAClD,WAAW,MAAM,MAAM,aAAa;AAAA,QACpC,UAAU,CAAC,CAAC,YAAY,OAAO;AAAA,QAC/B,MAAM,MAAM,MAAM,QAAQ,SAAS;AAAA,MAAA;AAAA,IAE3C,CAAC;AAEL,UAAMC,UAAuBF,OACxB,OAAO,CAAA,SAAQ,CAAC,YAAY,KAAK,OAAO,CAAC,EACzC,IAAI,CAAC,SAAiC;AACnC,YAAM,SAAS,KAAK;AACpB,aAAO;AAAA,QACH,WAAW;AAAA,UACP,aAAa;AAAA,QAAA;AAAA,QAEjB,OAAO,KAAK;AAAA,QACZ,SAAS,KAAK,QAAQ,SAAA;AAAA,QACtB,KAAK;AAAA,UACD,aAAa;AAAA,QAAA;AAAA,QAEjB,mBAAmB;AAAA,QACnB,MAAM,KAAK;AAAA,QACX,aAAa;AAAA;AAAA,QAEb,WAAW,SAAS,CAAA,UAAS,OAAO,OAAO,KAAK,CAAC,IAAI;AAAA,QACrD,MAAM,KAAK;AAAA,QACX,QAAQ,KAAK;AAAA,QACb,aAAa;AAAA,QACb,MAAM,KAAK;AAAA,MAAA;AAAA,IAEnB,CAAC;AAEL,WAAO,EAAE,OAAAA,QAAO,QAAAE,QAAAA;AAAAA,EACpB,GAAG,CAAC,UAAU,aAAa,iBAAiB,SAAS,IAAI,CAAC;AAE1D,SAAO,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,WAAA;AAC1E;AAEO,SAAS,0BAGd;AACE,QAAM,CAAC,OAAO,QAAQ,IAAI,MAAM,SAAgD,CAAA,CAAE;AAElF,WAAS,OAAO,MAAmB;AAC/B,aAAS,CAAA,iBAAgB;AACrB,YAAM,YAAY,EAAE,GAAG,aAAA;AAEvB,UAAI,aAAa,IAAI,GAAG;AACpB,eAAO,UAAU,IAAI;AAAA,MACzB,OAAO;AACH,kBAAU,IAAI,IAAI;AAAA,MACtB;AAEA,aAAO;AAAA,IACX,CAAC;AAAA,EACL;AAEA,SAAO,CAAC,OAAO,MAAM;AACzB;;;"}
@@ -1,4 +1,5 @@
1
1
  import { default as React } from 'react';
2
+ import { Formatter } from 'recharts/types/component/DefaultTooltipContent';
2
3
  import { ChartChildProps, ChartValueFormatter } from './types';
3
4
  export type useChartOptions = {
4
5
  formatter?: ChartValueFormatter;
@@ -16,7 +17,7 @@ export type ChartShape = {
16
17
  isAnimationActive: boolean;
17
18
  fill: string | undefined;
18
19
  fillOpacity: number;
19
- formatter: ChartValueFormatter | undefined;
20
+ formatter: Formatter | undefined;
20
21
  name: string;
21
22
  stroke: string | undefined;
22
23
  strokeWidth: number;
@@ -30,4 +31,7 @@ export declare function useChart<TData extends object>(children: React.ReactNode
30
31
  globalFormatter: ChartValueFormatter;
31
32
  toggleItem: (name: keyof TData) => void;
32
33
  };
33
- export declare function useChartDataHiddenState<TData extends object>(): [Record<keyof TData, boolean>, (name: keyof TData) => void];
34
+ export declare function useChartDataHiddenState<TData extends object>(): [
35
+ Partial<Record<keyof TData, boolean>>,
36
+ (name: keyof TData) => void
37
+ ];
@@ -20,19 +20,21 @@ function useChart(children, options) {
20
20
  };
21
21
  });
22
22
  const shapes2 = items2.filter((item) => !hiddenItems[item.dataKey]).map((item) => {
23
+ const format = item.formatter;
23
24
  return {
24
25
  activeDot: {
25
26
  strokeWidth: 1
26
27
  },
27
28
  color: item.color,
28
- dataKey: item.dataKey,
29
+ dataKey: item.dataKey.toString(),
29
30
  dot: {
30
31
  fillOpacity: 1
31
32
  },
32
33
  isAnimationActive: false,
33
34
  fill: item.color,
34
35
  fillOpacity: 1,
35
- formatter: item.formatter,
36
+ // recharts' series Formatter passes the raw datum value; our chart formatters are numeric
37
+ formatter: format ? (value) => format(Number(value)) : void 0,
36
38
  name: item.label,
37
39
  stroke: item.color,
38
40
  strokeWidth: 1.5,
@@ -40,7 +42,7 @@ function useChart(children, options) {
40
42
  };
41
43
  });
42
44
  return { items: items2, shapes: shapes2 };
43
- }, [children, hiddenItems]);
45
+ }, [children, hiddenItems, globalFormatter, options?.unit]);
44
46
  return { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem };
45
47
  }
46
48
  function useChartDataHiddenState() {
@@ -1 +1 @@
1
- {"version":3,"file":"useChartData.js","sources":["../../../src/charts/components/useChartData.tsx"],"sourcesContent":["import React from 'react';\n\nimport { getThemeColor } from '@/charts/utils/color';\nimport { useLocalization } from '@/components/Provider/Localization';\n\nimport type { ChartChildProps, ChartValueFormatter } from './types';\n\nexport type useChartOptions = {\n formatter?: ChartValueFormatter;\n unit?: string;\n};\n\nexport type ChartShape = {\n activeDot: {\n strokeWidth: number;\n };\n color: string | undefined;\n dataKey: string;\n dot: {\n fillOpacity: number;\n };\n isAnimationActive: boolean;\n fill: string | undefined;\n fillOpacity: number;\n formatter: ChartValueFormatter | undefined;\n name: string;\n stroke: string | undefined;\n strokeWidth: number;\n unit?: string;\n};\n\nexport function useChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const [activeIndex, setActiveIndex] = React.useState<number | undefined>();\n const [hiddenItems, toggleItem] = useChartDataHiddenState<TData>();\n const localization = useLocalization();\n\n const defaultFormatter = (value: number) =>\n new Intl.NumberFormat(localization.locale, { minimumFractionDigits: 2 }).format(value);\n\n const globalFormatter = options?.formatter ?? defaultFormatter;\n\n const { items, shapes } = React.useMemo(() => {\n const items = React.Children.toArray(children)\n .filter(child => React.isValidElement<ChartChildProps<TData>>(child))\n .map(child => {\n const dataKey = child.props.dataKey ?? child.props.label;\n return {\n ...child.props,\n dataKey,\n color: getThemeColor(child.props.color, 'blue-300'),\n formatter: child.props.formatter ?? globalFormatter,\n isHidden: !!hiddenItems[dataKey],\n unit: child.props.unit ?? options?.unit,\n } as ChartChildProps<TData>;\n });\n\n const shapes: ChartShape[] = items\n .filter(item => !hiddenItems[item.dataKey])\n .map((item: ChartChildProps<TData>) => {\n return {\n activeDot: {\n strokeWidth: 1,\n },\n color: item.color,\n dataKey: item.dataKey as string,\n dot: {\n fillOpacity: 1,\n },\n isAnimationActive: false,\n fill: item.color,\n fillOpacity: 1,\n formatter: item.formatter,\n name: item.label,\n stroke: item.color,\n strokeWidth: 1.5,\n unit: item.unit,\n };\n });\n\n return { items, shapes };\n }, [children, hiddenItems]);\n\n return { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem };\n}\n\nexport function useChartDataHiddenState<TData extends object>(): [Record<keyof TData, boolean>, (name: keyof TData) => void] {\n const [state, setState] = React.useState<Record<keyof TData, boolean>>({} as Record<keyof TData, boolean>);\n\n function toggle(name: keyof TData) {\n setState(currentState => {\n const nextState = { ...currentState };\n\n if (currentState[name]) {\n delete nextState[name];\n } else {\n nextState[name] = true;\n }\n\n return nextState;\n });\n }\n\n return [state, toggle];\n}\n"],"names":["React","items","shapes"],"mappings":";;;AA+BO,SAAS,SAA+B,UAA2B,SAA2B;AACjG,QAAM,CAAC,aAAa,cAAc,IAAIA,eAAM,SAAA;AAC5C,QAAM,CAAC,aAAa,UAAU,IAAI,wBAAA;AAClC,QAAM,eAAe,gBAAA;AAErB,QAAM,mBAAmB,CAAC,UACtB,IAAI,KAAK,aAAa,aAAa,QAAQ,EAAE,uBAAuB,EAAA,CAAG,EAAE,OAAO,KAAK;AAEzF,QAAM,kBAAkB,SAAS,aAAa;AAE9C,QAAM,EAAE,OAAO,OAAA,IAAWA,eAAM,QAAQ,MAAM;AAC1C,UAAMC,SAAQD,eAAM,SAAS,QAAQ,QAAQ,EACxC,OAAO,CAAA,UAASA,eAAM,eAAuC,KAAK,CAAC,EACnE,IAAI,CAAA,UAAS;AACV,YAAM,UAAU,MAAM,MAAM,WAAW,MAAM,MAAM;AACnD,aAAO;AAAA,QACH,GAAG,MAAM;AAAA,QACT;AAAA,QACA,OAAO,cAAc,MAAM,MAAM,OAAO,UAAU;AAAA,QAClD,WAAW,MAAM,MAAM,aAAa;AAAA,QACpC,UAAU,CAAC,CAAC,YAAY,OAAO;AAAA,QAC/B,MAAM,MAAM,MAAM,QAAQ,SAAS;AAAA,MAAA;AAAA,IAE3C,CAAC;AAEL,UAAME,UAAuBD,OACxB,OAAO,CAAA,SAAQ,CAAC,YAAY,KAAK,OAAO,CAAC,EACzC,IAAI,CAAC,SAAiC;AACnC,aAAO;AAAA,QACH,WAAW;AAAA,UACP,aAAa;AAAA,QAAA;AAAA,QAEjB,OAAO,KAAK;AAAA,QACZ,SAAS,KAAK;AAAA,QACd,KAAK;AAAA,UACD,aAAa;AAAA,QAAA;AAAA,QAEjB,mBAAmB;AAAA,QACnB,MAAM,KAAK;AAAA,QACX,aAAa;AAAA,QACb,WAAW,KAAK;AAAA,QAChB,MAAM,KAAK;AAAA,QACX,QAAQ,KAAK;AAAA,QACb,aAAa;AAAA,QACb,MAAM,KAAK;AAAA,MAAA;AAAA,IAEnB,CAAC;AAEL,WAAO,EAAE,OAAAA,QAAO,QAAAC,QAAAA;AAAAA,EACpB,GAAG,CAAC,UAAU,WAAW,CAAC;AAE1B,SAAO,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,WAAA;AAC1E;AAEO,SAAS,0BAA6G;AACzH,QAAM,CAAC,OAAO,QAAQ,IAAIF,eAAM,SAAuC,CAAA,CAAkC;AAEzG,WAAS,OAAO,MAAmB;AAC/B,aAAS,CAAA,iBAAgB;AACrB,YAAM,YAAY,EAAE,GAAG,aAAA;AAEvB,UAAI,aAAa,IAAI,GAAG;AACpB,eAAO,UAAU,IAAI;AAAA,MACzB,OAAO;AACH,kBAAU,IAAI,IAAI;AAAA,MACtB;AAEA,aAAO;AAAA,IACX,CAAC;AAAA,EACL;AAEA,SAAO,CAAC,OAAO,MAAM;AACzB;"}
1
+ {"version":3,"file":"useChartData.js","sources":["../../../src/charts/components/useChartData.tsx"],"sourcesContent":["import React from 'react';\nimport type { Formatter } from 'recharts/types/component/DefaultTooltipContent';\n\nimport { getThemeColor } from '@/charts/utils/color';\nimport { useLocalization } from '@/components/Provider/Localization';\n\nimport type { ChartChildProps, ChartValueFormatter } from './types';\n\nexport type useChartOptions = {\n formatter?: ChartValueFormatter;\n unit?: string;\n};\n\nexport type ChartShape = {\n activeDot: {\n strokeWidth: number;\n };\n color: string | undefined;\n dataKey: string;\n dot: {\n fillOpacity: number;\n };\n isAnimationActive: boolean;\n fill: string | undefined;\n fillOpacity: number;\n formatter: Formatter | undefined;\n name: string;\n stroke: string | undefined;\n strokeWidth: number;\n unit?: string;\n};\n\nexport function useChart<TData extends object>(children: React.ReactNode, options?: useChartOptions) {\n const [activeIndex, setActiveIndex] = React.useState<number | undefined>();\n const [hiddenItems, toggleItem] = useChartDataHiddenState<TData>();\n const localization = useLocalization();\n\n const defaultFormatter = (value: number) =>\n new Intl.NumberFormat(localization.locale, { minimumFractionDigits: 2 }).format(value);\n\n const globalFormatter = options?.formatter ?? defaultFormatter;\n\n const { items, shapes } = React.useMemo(() => {\n const items = React.Children.toArray(children)\n .filter(child => React.isValidElement<ChartChildProps<TData>>(child))\n .map(child => {\n const dataKey = child.props.dataKey ?? child.props.label;\n return {\n ...child.props,\n dataKey,\n color: getThemeColor(child.props.color, 'blue-300'),\n formatter: child.props.formatter ?? globalFormatter,\n isHidden: !!hiddenItems[dataKey],\n unit: child.props.unit ?? options?.unit,\n } as ChartChildProps<TData>;\n });\n\n const shapes: ChartShape[] = items\n .filter(item => !hiddenItems[item.dataKey])\n .map((item: ChartChildProps<TData>) => {\n const format = item.formatter;\n return {\n activeDot: {\n strokeWidth: 1,\n },\n color: item.color,\n dataKey: item.dataKey.toString(),\n dot: {\n fillOpacity: 1,\n },\n isAnimationActive: false,\n fill: item.color,\n fillOpacity: 1,\n // recharts' series Formatter passes the raw datum value; our chart formatters are numeric\n formatter: format ? value => format(Number(value)) : undefined,\n name: item.label,\n stroke: item.color,\n strokeWidth: 1.5,\n unit: item.unit,\n };\n });\n\n return { items, shapes };\n }, [children, hiddenItems, globalFormatter, options?.unit]);\n\n return { items, shapes, activeIndex, setActiveIndex, globalFormatter, toggleItem };\n}\n\nexport function useChartDataHiddenState<TData extends object>(): [\n Partial<Record<keyof TData, boolean>>,\n (name: keyof TData) => void,\n] {\n const [state, setState] = React.useState<Partial<Record<keyof TData, boolean>>>({});\n\n function toggle(name: keyof TData) {\n setState(currentState => {\n const nextState = { ...currentState };\n\n if (currentState[name]) {\n delete nextState[name];\n } else {\n nextState[name] = true;\n }\n\n return nextState;\n });\n }\n\n return [state, toggle];\n}\n"],"names":["React","items","shapes"],"mappings":";;;AAgCO,SAAS,SAA+B,UAA2B,SAA2B;AACjG,QAAM,CAAC,aAAa,cAAc,IAAIA,eAAM,SAAA;AAC5C,QAAM,CAAC,aAAa,UAAU,IAAI,wBAAA;AAClC,QAAM,eAAe,gBAAA;AAErB,QAAM,mBAAmB,CAAC,UACtB,IAAI,KAAK,aAAa,aAAa,QAAQ,EAAE,uBAAuB,EAAA,CAAG,EAAE,OAAO,KAAK;AAEzF,QAAM,kBAAkB,SAAS,aAAa;AAE9C,QAAM,EAAE,OAAO,OAAA,IAAWA,eAAM,QAAQ,MAAM;AAC1C,UAAMC,SAAQD,eAAM,SAAS,QAAQ,QAAQ,EACxC,OAAO,CAAA,UAASA,eAAM,eAAuC,KAAK,CAAC,EACnE,IAAI,CAAA,UAAS;AACV,YAAM,UAAU,MAAM,MAAM,WAAW,MAAM,MAAM;AACnD,aAAO;AAAA,QACH,GAAG,MAAM;AAAA,QACT;AAAA,QACA,OAAO,cAAc,MAAM,MAAM,OAAO,UAAU;AAAA,QAClD,WAAW,MAAM,MAAM,aAAa;AAAA,QACpC,UAAU,CAAC,CAAC,YAAY,OAAO;AAAA,QAC/B,MAAM,MAAM,MAAM,QAAQ,SAAS;AAAA,MAAA;AAAA,IAE3C,CAAC;AAEL,UAAME,UAAuBD,OACxB,OAAO,CAAA,SAAQ,CAAC,YAAY,KAAK,OAAO,CAAC,EACzC,IAAI,CAAC,SAAiC;AACnC,YAAM,SAAS,KAAK;AACpB,aAAO;AAAA,QACH,WAAW;AAAA,UACP,aAAa;AAAA,QAAA;AAAA,QAEjB,OAAO,KAAK;AAAA,QACZ,SAAS,KAAK,QAAQ,SAAA;AAAA,QACtB,KAAK;AAAA,UACD,aAAa;AAAA,QAAA;AAAA,QAEjB,mBAAmB;AAAA,QACnB,MAAM,KAAK;AAAA,QACX,aAAa;AAAA;AAAA,QAEb,WAAW,SAAS,CAAA,UAAS,OAAO,OAAO,KAAK,CAAC,IAAI;AAAA,QACrD,MAAM,KAAK;AAAA,QACX,QAAQ,KAAK;AAAA,QACb,aAAa;AAAA,QACb,MAAM,KAAK;AAAA,MAAA;AAAA,IAEnB,CAAC;AAEL,WAAO,EAAE,OAAAA,QAAO,QAAAC,QAAAA;AAAAA,EACpB,GAAG,CAAC,UAAU,aAAa,iBAAiB,SAAS,IAAI,CAAC;AAE1D,SAAO,EAAE,OAAO,QAAQ,aAAa,gBAAgB,iBAAiB,WAAA;AAC1E;AAEO,SAAS,0BAGd;AACE,QAAM,CAAC,OAAO,QAAQ,IAAIF,eAAM,SAAgD,CAAA,CAAE;AAElF,WAAS,OAAO,MAAmB;AAC/B,aAAS,CAAA,iBAAgB;AACrB,YAAM,YAAY,EAAE,GAAG,aAAA;AAEvB,UAAI,aAAa,IAAI,GAAG;AACpB,eAAO,UAAU,IAAI;AAAA,MACzB,OAAO;AACH,kBAAU,IAAI,IAAI;AAAA,MACtB;AAEA,aAAO;AAAA,IACX,CAAC;AAAA,EACL;AAEA,SAAO,CAAC,OAAO,MAAM;AACzB;"}