@plenustech/design-system 0.2.1 → 0.2.3

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 (802) hide show
  1. package/dist/components/actions/Button/Button.cjs +2 -0
  2. package/dist/components/actions/Button/Button.cjs.map +1 -0
  3. package/dist/components/actions/Button/Button.js +47 -0
  4. package/dist/components/actions/Button/Button.js.map +1 -0
  5. package/dist/components/actions/Button/Button.module.css.cjs +2 -0
  6. package/dist/components/actions/Button/Button.module.css.cjs.map +1 -0
  7. package/dist/components/actions/Button/Button.module.css.js +24 -0
  8. package/dist/components/actions/Button/Button.module.css.js.map +1 -0
  9. package/dist/components/actions/ButtonIcon/ButtonIcon.cjs +2 -0
  10. package/dist/components/actions/ButtonIcon/ButtonIcon.cjs.map +1 -0
  11. package/dist/components/actions/ButtonIcon/ButtonIcon.js +21 -0
  12. package/dist/components/actions/ButtonIcon/ButtonIcon.js.map +1 -0
  13. package/dist/components/actions/ButtonIcon/ButtonIcon.module.css.cjs +2 -0
  14. package/dist/components/actions/ButtonIcon/ButtonIcon.module.css.cjs.map +1 -0
  15. package/dist/components/actions/ButtonIcon/ButtonIcon.module.css.js +14 -0
  16. package/dist/components/actions/ButtonIcon/ButtonIcon.module.css.js.map +1 -0
  17. package/dist/components/actions/ButtonTile/ButtonTile.cjs +2 -0
  18. package/dist/components/actions/ButtonTile/ButtonTile.cjs.map +1 -0
  19. package/dist/components/actions/ButtonTile/ButtonTile.js +23 -0
  20. package/dist/components/actions/ButtonTile/ButtonTile.js.map +1 -0
  21. package/dist/components/actions/ButtonTile/ButtonTile.module.css.cjs +2 -0
  22. package/dist/components/actions/ButtonTile/ButtonTile.module.css.cjs.map +1 -0
  23. package/dist/components/actions/ButtonTile/ButtonTile.module.css.js +16 -0
  24. package/dist/components/actions/ButtonTile/ButtonTile.module.css.js.map +1 -0
  25. package/dist/components/actions/Toolbar/Toolbar.cjs +2 -0
  26. package/dist/components/actions/Toolbar/Toolbar.cjs.map +1 -0
  27. package/dist/components/actions/Toolbar/Toolbar.js +118 -0
  28. package/dist/components/actions/Toolbar/Toolbar.js.map +1 -0
  29. package/dist/components/actions/Toolbar/Toolbar.module.css.cjs +2 -0
  30. package/dist/components/actions/Toolbar/Toolbar.module.css.cjs.map +1 -0
  31. package/dist/components/actions/Toolbar/Toolbar.module.css.js +20 -0
  32. package/dist/components/actions/Toolbar/Toolbar.module.css.js.map +1 -0
  33. package/dist/components/charts/ChartArea/ChartArea.cjs +2 -0
  34. package/dist/components/charts/ChartArea/ChartArea.cjs.map +1 -0
  35. package/dist/components/charts/ChartArea/ChartArea.js +253 -0
  36. package/dist/components/charts/ChartArea/ChartArea.js.map +1 -0
  37. package/dist/components/charts/ChartArea/ChartArea.module.css.cjs +2 -0
  38. package/dist/components/charts/ChartArea/ChartArea.module.css.cjs.map +1 -0
  39. package/dist/components/charts/ChartArea/ChartArea.module.css.js +20 -0
  40. package/dist/components/charts/ChartArea/ChartArea.module.css.js.map +1 -0
  41. package/dist/components/charts/ChartBar/ChartBar.cjs +2 -0
  42. package/dist/components/charts/ChartBar/ChartBar.cjs.map +1 -0
  43. package/dist/components/charts/ChartBar/ChartBar.js +239 -0
  44. package/dist/components/charts/ChartBar/ChartBar.js.map +1 -0
  45. package/dist/components/charts/ChartBar/ChartBar.module.css.cjs +2 -0
  46. package/dist/components/charts/ChartBar/ChartBar.module.css.cjs.map +1 -0
  47. package/dist/components/charts/ChartBar/ChartBar.module.css.js +16 -0
  48. package/dist/components/charts/ChartBar/ChartBar.module.css.js.map +1 -0
  49. package/dist/components/charts/ChartCombo/ChartCombo.cjs +2 -0
  50. package/dist/components/charts/ChartCombo/ChartCombo.cjs.map +1 -0
  51. package/dist/components/charts/ChartCombo/ChartCombo.js +273 -0
  52. package/dist/components/charts/ChartCombo/ChartCombo.js.map +1 -0
  53. package/dist/components/charts/ChartCombo/ChartCombo.module.css.cjs +2 -0
  54. package/dist/components/charts/ChartCombo/ChartCombo.module.css.cjs.map +1 -0
  55. package/dist/components/charts/ChartCombo/ChartCombo.module.css.js +22 -0
  56. package/dist/components/charts/ChartCombo/ChartCombo.module.css.js.map +1 -0
  57. package/dist/components/charts/ChartDonut/ChartDonut.cjs +2 -0
  58. package/dist/components/charts/ChartDonut/ChartDonut.cjs.map +1 -0
  59. package/dist/components/charts/ChartDonut/ChartDonut.js +118 -0
  60. package/dist/components/charts/ChartDonut/ChartDonut.js.map +1 -0
  61. package/dist/components/charts/ChartDonut/ChartDonut.module.css.cjs +2 -0
  62. package/dist/components/charts/ChartDonut/ChartDonut.module.css.cjs.map +1 -0
  63. package/dist/components/charts/ChartDonut/ChartDonut.module.css.js +14 -0
  64. package/dist/components/charts/ChartDonut/ChartDonut.module.css.js.map +1 -0
  65. package/dist/components/charts/ChartLine/ChartLine.cjs +2 -0
  66. package/dist/components/charts/ChartLine/ChartLine.cjs.map +1 -0
  67. package/dist/components/charts/ChartLine/ChartLine.js +219 -0
  68. package/dist/components/charts/ChartLine/ChartLine.js.map +1 -0
  69. package/dist/components/charts/ChartLine/ChartLine.module.css.cjs +2 -0
  70. package/dist/components/charts/ChartLine/ChartLine.module.css.cjs.map +1 -0
  71. package/dist/components/charts/ChartLine/ChartLine.module.css.js +20 -0
  72. package/dist/components/charts/ChartLine/ChartLine.module.css.js.map +1 -0
  73. package/dist/components/charts/ChartPie/ChartPie.cjs +2 -0
  74. package/dist/components/charts/ChartPie/ChartPie.cjs.map +1 -0
  75. package/dist/components/charts/ChartPie/ChartPie.js +110 -0
  76. package/dist/components/charts/ChartPie/ChartPie.js.map +1 -0
  77. package/dist/components/charts/ChartPie/ChartPie.module.css.cjs +2 -0
  78. package/dist/components/charts/ChartPie/ChartPie.module.css.cjs.map +1 -0
  79. package/dist/components/charts/ChartPie/ChartPie.module.css.js +10 -0
  80. package/dist/components/charts/ChartPie/ChartPie.module.css.js.map +1 -0
  81. package/dist/components/charts/ChartRadial/ChartRadial.cjs +2 -0
  82. package/dist/components/charts/ChartRadial/ChartRadial.cjs.map +1 -0
  83. package/dist/components/charts/ChartRadial/ChartRadial.js +138 -0
  84. package/dist/components/charts/ChartRadial/ChartRadial.js.map +1 -0
  85. package/dist/components/charts/ChartRadial/ChartRadial.module.css.cjs +2 -0
  86. package/dist/components/charts/ChartRadial/ChartRadial.module.css.cjs.map +1 -0
  87. package/dist/components/charts/ChartRadial/ChartRadial.module.css.js +16 -0
  88. package/dist/components/charts/ChartRadial/ChartRadial.module.css.js.map +1 -0
  89. package/dist/components/charts/ChartSankey/ChartSankey.cjs +2 -0
  90. package/dist/components/charts/ChartSankey/ChartSankey.cjs.map +1 -0
  91. package/dist/components/charts/ChartSankey/ChartSankey.js +232 -0
  92. package/dist/components/charts/ChartSankey/ChartSankey.js.map +1 -0
  93. package/dist/components/charts/ChartSankey/ChartSankey.module.css.cjs +2 -0
  94. package/dist/components/charts/ChartSankey/ChartSankey.module.css.cjs.map +1 -0
  95. package/dist/components/charts/ChartSankey/ChartSankey.module.css.js +22 -0
  96. package/dist/components/charts/ChartSankey/ChartSankey.module.css.js.map +1 -0
  97. package/dist/components/charts/ChartScatter/ChartScatter.cjs +2 -0
  98. package/dist/components/charts/ChartScatter/ChartScatter.cjs.map +1 -0
  99. package/dist/components/charts/ChartScatter/ChartScatter.js +169 -0
  100. package/dist/components/charts/ChartScatter/ChartScatter.js.map +1 -0
  101. package/dist/components/charts/ChartScatter/ChartScatter.module.css.cjs +2 -0
  102. package/dist/components/charts/ChartScatter/ChartScatter.module.css.cjs.map +1 -0
  103. package/dist/components/charts/ChartScatter/ChartScatter.module.css.js +14 -0
  104. package/dist/components/charts/ChartScatter/ChartScatter.module.css.js.map +1 -0
  105. package/dist/components/charts/ChartSunburst/ChartSunburst.cjs +2 -0
  106. package/dist/components/charts/ChartSunburst/ChartSunburst.cjs.map +1 -0
  107. package/dist/components/charts/ChartSunburst/ChartSunburst.js +159 -0
  108. package/dist/components/charts/ChartSunburst/ChartSunburst.js.map +1 -0
  109. package/dist/components/charts/ChartSunburst/ChartSunburst.module.css.cjs +2 -0
  110. package/dist/components/charts/ChartSunburst/ChartSunburst.module.css.cjs.map +1 -0
  111. package/dist/components/charts/ChartSunburst/ChartSunburst.module.css.js +16 -0
  112. package/dist/components/charts/ChartSunburst/ChartSunburst.module.css.js.map +1 -0
  113. package/dist/components/charts/ChartTooltip/ChartTooltip.cjs +2 -0
  114. package/dist/components/charts/ChartTooltip/ChartTooltip.cjs.map +1 -0
  115. package/dist/components/charts/ChartTooltip/ChartTooltip.js +113 -0
  116. package/dist/components/charts/ChartTooltip/ChartTooltip.js.map +1 -0
  117. package/dist/components/charts/ChartTooltip/ChartTooltip.module.css.cjs +2 -0
  118. package/dist/components/charts/ChartTooltip/ChartTooltip.module.css.cjs.map +1 -0
  119. package/dist/components/charts/ChartTooltip/ChartTooltip.module.css.js +32 -0
  120. package/dist/components/charts/ChartTooltip/ChartTooltip.module.css.js.map +1 -0
  121. package/dist/components/charts/ChartTreemap/ChartTreemap.cjs +2 -0
  122. package/dist/components/charts/ChartTreemap/ChartTreemap.cjs.map +1 -0
  123. package/dist/components/charts/ChartTreemap/ChartTreemap.js +133 -0
  124. package/dist/components/charts/ChartTreemap/ChartTreemap.js.map +1 -0
  125. package/dist/components/charts/ChartTreemap/ChartTreemap.module.css.cjs +2 -0
  126. package/dist/components/charts/ChartTreemap/ChartTreemap.module.css.cjs.map +1 -0
  127. package/dist/components/charts/ChartTreemap/ChartTreemap.module.css.js +14 -0
  128. package/dist/components/charts/ChartTreemap/ChartTreemap.module.css.js.map +1 -0
  129. package/dist/components/charts/ChartWaterfall/ChartWaterfall.cjs +2 -0
  130. package/dist/components/charts/ChartWaterfall/ChartWaterfall.cjs.map +1 -0
  131. package/dist/components/charts/ChartWaterfall/ChartWaterfall.js +188 -0
  132. package/dist/components/charts/ChartWaterfall/ChartWaterfall.js.map +1 -0
  133. package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.cjs +2 -0
  134. package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.cjs.map +1 -0
  135. package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.js +14 -0
  136. package/dist/components/charts/ChartWaterfall/ChartWaterfall.module.css.js.map +1 -0
  137. package/dist/components/charts/core/Axis.cjs +2 -0
  138. package/dist/components/charts/core/Axis.cjs.map +1 -0
  139. package/dist/components/charts/core/Axis.js +40 -0
  140. package/dist/components/charts/core/Axis.js.map +1 -0
  141. package/dist/components/charts/core/BandCursor.cjs +2 -0
  142. package/dist/components/charts/core/BandCursor.cjs.map +1 -0
  143. package/dist/components/charts/core/BandCursor.js +19 -0
  144. package/dist/components/charts/core/BandCursor.js.map +1 -0
  145. package/dist/components/charts/core/CartesianFrame.cjs +2 -0
  146. package/dist/components/charts/core/CartesianFrame.cjs.map +1 -0
  147. package/dist/components/charts/core/CartesianFrame.js +85 -0
  148. package/dist/components/charts/core/CartesianFrame.js.map +1 -0
  149. package/dist/components/charts/core/Chart.module.css.cjs +2 -0
  150. package/dist/components/charts/core/Chart.module.css.cjs.map +1 -0
  151. package/dist/components/charts/core/Chart.module.css.js +66 -0
  152. package/dist/components/charts/core/Chart.module.css.js.map +1 -0
  153. package/dist/components/charts/core/ChartFrame.cjs +2 -0
  154. package/dist/components/charts/core/ChartFrame.cjs.map +1 -0
  155. package/dist/components/charts/core/ChartFrame.js +71 -0
  156. package/dist/components/charts/core/ChartFrame.js.map +1 -0
  157. package/dist/components/charts/core/ChartLegend.cjs +2 -0
  158. package/dist/components/charts/core/ChartLegend.cjs.map +1 -0
  159. package/dist/components/charts/core/ChartLegend.js +44 -0
  160. package/dist/components/charts/core/ChartLegend.js.map +1 -0
  161. package/dist/components/charts/core/Grid.cjs +2 -0
  162. package/dist/components/charts/core/Grid.cjs.map +1 -0
  163. package/dist/components/charts/core/Grid.js +20 -0
  164. package/dist/components/charts/core/Grid.js.map +1 -0
  165. package/dist/components/charts/core/PointBands.cjs +2 -0
  166. package/dist/components/charts/core/PointBands.cjs.map +1 -0
  167. package/dist/components/charts/core/PointBands.js +41 -0
  168. package/dist/components/charts/core/PointBands.js.map +1 -0
  169. package/dist/components/charts/core/arcs.cjs +2 -0
  170. package/dist/components/charts/core/arcs.cjs.map +1 -0
  171. package/dist/components/charts/core/arcs.js +26 -0
  172. package/dist/components/charts/core/arcs.js.map +1 -0
  173. package/dist/components/charts/core/cartesianLayout.cjs +2 -0
  174. package/dist/components/charts/core/cartesianLayout.cjs.map +1 -0
  175. package/dist/components/charts/core/cartesianLayout.js +67 -0
  176. package/dist/components/charts/core/cartesianLayout.js.map +1 -0
  177. package/dist/components/charts/core/centerText.cjs +2 -0
  178. package/dist/components/charts/core/centerText.cjs.map +1 -0
  179. package/dist/components/charts/core/centerText.js +31 -0
  180. package/dist/components/charts/core/centerText.js.map +1 -0
  181. package/dist/components/charts/core/hoverPath.cjs +2 -0
  182. package/dist/components/charts/core/hoverPath.cjs.map +1 -0
  183. package/dist/components/charts/core/hoverPath.js +7 -0
  184. package/dist/components/charts/core/hoverPath.js.map +1 -0
  185. package/dist/components/charts/core/measureText.cjs +2 -0
  186. package/dist/components/charts/core/measureText.cjs.map +1 -0
  187. package/dist/components/charts/core/measureText.js +55 -0
  188. package/dist/components/charts/core/measureText.js.map +1 -0
  189. package/dist/components/charts/core/pointLabels.cjs +2 -0
  190. package/dist/components/charts/core/pointLabels.cjs.map +1 -0
  191. package/dist/components/charts/core/pointLabels.js +12 -0
  192. package/dist/components/charts/core/pointLabels.js.map +1 -0
  193. package/dist/components/charts/core/shapes.cjs +2 -0
  194. package/dist/components/charts/core/shapes.cjs.map +1 -0
  195. package/dist/components/charts/core/shapes.js +31 -0
  196. package/dist/components/charts/core/shapes.js.map +1 -0
  197. package/dist/components/charts/core/slices.cjs +2 -0
  198. package/dist/components/charts/core/slices.cjs.map +1 -0
  199. package/dist/components/charts/core/slices.js +22 -0
  200. package/dist/components/charts/core/slices.js.map +1 -0
  201. package/dist/components/charts/core/spacing.cjs +2 -0
  202. package/dist/components/charts/core/spacing.cjs.map +1 -0
  203. package/dist/components/charts/core/spacing.js +26 -0
  204. package/dist/components/charts/core/spacing.js.map +1 -0
  205. package/dist/components/charts/core/tooltips.cjs +2 -0
  206. package/dist/components/charts/core/tooltips.cjs.map +1 -0
  207. package/dist/components/charts/core/tooltips.js +48 -0
  208. package/dist/components/charts/core/tooltips.js.map +1 -0
  209. package/dist/components/charts/core/useCartesianLayout.cjs +2 -0
  210. package/dist/components/charts/core/useCartesianLayout.cjs.map +1 -0
  211. package/dist/components/charts/core/useCartesianLayout.js +38 -0
  212. package/dist/components/charts/core/useCartesianLayout.js.map +1 -0
  213. package/dist/components/charts/core/useChartMetrics.cjs +2 -0
  214. package/dist/components/charts/core/useChartMetrics.cjs.map +1 -0
  215. package/dist/components/charts/core/useChartMetrics.js +39 -0
  216. package/dist/components/charts/core/useChartMetrics.js.map +1 -0
  217. package/dist/components/charts/core/useHoveredBand.cjs +2 -0
  218. package/dist/components/charts/core/useHoveredBand.cjs.map +1 -0
  219. package/dist/components/charts/core/useHoveredBand.js +14 -0
  220. package/dist/components/charts/core/useHoveredBand.js.map +1 -0
  221. package/dist/components/charts/core/useSeriesToggle.cjs +2 -0
  222. package/dist/components/charts/core/useSeriesToggle.cjs.map +1 -0
  223. package/dist/components/charts/core/useSeriesToggle.js +29 -0
  224. package/dist/components/charts/core/useSeriesToggle.js.map +1 -0
  225. package/dist/components/charts/core/useSliceRing.cjs +2 -0
  226. package/dist/components/charts/core/useSliceRing.cjs.map +1 -0
  227. package/dist/components/charts/core/useSliceRing.js +55 -0
  228. package/dist/components/charts/core/useSliceRing.js.map +1 -0
  229. package/dist/components/charts/core/useTweenedNumbers.cjs +2 -0
  230. package/dist/components/charts/core/useTweenedNumbers.cjs.map +1 -0
  231. package/dist/components/charts/core/useTweenedNumbers.js +31 -0
  232. package/dist/components/charts/core/useTweenedNumbers.js.map +1 -0
  233. package/dist/components/charts/palette/palette.cjs +2 -0
  234. package/dist/components/charts/palette/palette.cjs.map +1 -0
  235. package/dist/components/charts/palette/palette.js +26 -0
  236. package/dist/components/charts/palette/palette.js.map +1 -0
  237. package/dist/components/charts/palette/seriesColor.cjs +2 -0
  238. package/dist/components/charts/palette/seriesColor.cjs.map +1 -0
  239. package/dist/components/charts/palette/seriesColor.js +43 -0
  240. package/dist/components/charts/palette/seriesColor.js.map +1 -0
  241. package/dist/components/charts/scales/scales.cjs +2 -0
  242. package/dist/components/charts/scales/scales.cjs.map +1 -0
  243. package/dist/components/charts/scales/scales.js +74 -0
  244. package/dist/components/charts/scales/scales.js.map +1 -0
  245. package/dist/components/data-display/Accordion/Accordion.cjs +2 -0
  246. package/dist/components/data-display/Accordion/Accordion.cjs.map +1 -0
  247. package/dist/components/data-display/Accordion/Accordion.js +101 -0
  248. package/dist/components/data-display/Accordion/Accordion.js.map +1 -0
  249. package/dist/components/data-display/Accordion/Accordion.module.css.cjs +2 -0
  250. package/dist/components/data-display/Accordion/Accordion.module.css.cjs.map +1 -0
  251. package/dist/components/data-display/Accordion/Accordion.module.css.js +26 -0
  252. package/dist/components/data-display/Accordion/Accordion.module.css.js.map +1 -0
  253. package/dist/components/data-display/Avatar/Avatar.cjs +2 -0
  254. package/dist/components/data-display/Avatar/Avatar.cjs.map +1 -0
  255. package/dist/components/data-display/Avatar/Avatar.js +20 -0
  256. package/dist/components/data-display/Avatar/Avatar.js.map +1 -0
  257. package/dist/components/data-display/Avatar/Avatar.module.css.cjs +2 -0
  258. package/dist/components/data-display/Avatar/Avatar.module.css.cjs.map +1 -0
  259. package/dist/components/data-display/Avatar/Avatar.module.css.js +14 -0
  260. package/dist/components/data-display/Avatar/Avatar.module.css.js.map +1 -0
  261. package/dist/components/data-display/Badge/Badge.cjs +2 -0
  262. package/dist/components/data-display/Badge/Badge.cjs.map +1 -0
  263. package/dist/components/data-display/Badge/Badge.js +13 -0
  264. package/dist/components/data-display/Badge/Badge.js.map +1 -0
  265. package/dist/components/data-display/Badge/Badge.module.css.cjs +2 -0
  266. package/dist/components/data-display/Badge/Badge.module.css.cjs.map +1 -0
  267. package/dist/components/data-display/Badge/Badge.module.css.js +22 -0
  268. package/dist/components/data-display/Badge/Badge.module.css.js.map +1 -0
  269. package/dist/components/data-display/Card/Card.cjs +2 -0
  270. package/dist/components/data-display/Card/Card.cjs.map +1 -0
  271. package/dist/components/data-display/Card/Card.js +51 -0
  272. package/dist/components/data-display/Card/Card.js.map +1 -0
  273. package/dist/components/data-display/Card/Card.module.css.cjs +2 -0
  274. package/dist/components/data-display/Card/Card.module.css.cjs.map +1 -0
  275. package/dist/components/data-display/Card/Card.module.css.js +26 -0
  276. package/dist/components/data-display/Card/Card.module.css.js.map +1 -0
  277. package/dist/components/data-display/CodeBlock/CodeBlock.cjs +2 -0
  278. package/dist/components/data-display/CodeBlock/CodeBlock.cjs.map +1 -0
  279. package/dist/components/data-display/CodeBlock/CodeBlock.js +65 -0
  280. package/dist/components/data-display/CodeBlock/CodeBlock.js.map +1 -0
  281. package/dist/components/data-display/CodeBlock/CodeBlock.module.css.cjs +2 -0
  282. package/dist/components/data-display/CodeBlock/CodeBlock.module.css.cjs.map +1 -0
  283. package/dist/components/data-display/CodeBlock/CodeBlock.module.css.js +47 -0
  284. package/dist/components/data-display/CodeBlock/CodeBlock.module.css.js.map +1 -0
  285. package/dist/components/data-display/CodeBlock/syntax.cjs +24 -0
  286. package/dist/components/data-display/CodeBlock/syntax.cjs.map +1 -0
  287. package/dist/components/data-display/CodeBlock/syntax.js +124 -0
  288. package/dist/components/data-display/CodeBlock/syntax.js.map +1 -0
  289. package/dist/components/data-display/List/List.cjs +2 -0
  290. package/dist/components/data-display/List/List.cjs.map +1 -0
  291. package/dist/components/data-display/List/List.js +99 -0
  292. package/dist/components/data-display/List/List.js.map +1 -0
  293. package/dist/components/data-display/List/List.module.css.cjs +2 -0
  294. package/dist/components/data-display/List/List.module.css.cjs.map +1 -0
  295. package/dist/components/data-display/List/List.module.css.js +32 -0
  296. package/dist/components/data-display/List/List.module.css.js.map +1 -0
  297. package/dist/components/data-display/List/ListingOptions.cjs +2 -0
  298. package/dist/components/data-display/List/ListingOptions.cjs.map +1 -0
  299. package/dist/components/data-display/List/ListingOptions.js +115 -0
  300. package/dist/components/data-display/List/ListingOptions.js.map +1 -0
  301. package/dist/components/data-display/List/useListing.cjs +2 -0
  302. package/dist/components/data-display/List/useListing.cjs.map +1 -0
  303. package/dist/components/data-display/List/useListing.js +85 -0
  304. package/dist/components/data-display/List/useListing.js.map +1 -0
  305. package/dist/components/data-display/List/useVirtualWindow.cjs +2 -0
  306. package/dist/components/data-display/List/useVirtualWindow.cjs.map +1 -0
  307. package/dist/components/data-display/List/useVirtualWindow.js +58 -0
  308. package/dist/components/data-display/List/useVirtualWindow.js.map +1 -0
  309. package/dist/components/data-display/SortableList/SortableList.cjs +2 -0
  310. package/dist/components/data-display/SortableList/SortableList.cjs.map +1 -0
  311. package/dist/components/data-display/SortableList/SortableList.js +168 -0
  312. package/dist/components/data-display/SortableList/SortableList.js.map +1 -0
  313. package/dist/components/data-display/SortableList/SortableList.module.css.cjs +2 -0
  314. package/dist/components/data-display/SortableList/SortableList.module.css.cjs.map +1 -0
  315. package/dist/components/data-display/SortableList/SortableList.module.css.js +34 -0
  316. package/dist/components/data-display/SortableList/SortableList.module.css.js.map +1 -0
  317. package/dist/components/data-display/Table/Table.cjs +2 -0
  318. package/dist/components/data-display/Table/Table.cjs.map +1 -0
  319. package/dist/components/data-display/Table/Table.js +239 -0
  320. package/dist/components/data-display/Table/Table.js.map +1 -0
  321. package/dist/components/data-display/Table/Table.module.css.cjs +2 -0
  322. package/dist/components/data-display/Table/Table.module.css.cjs.map +1 -0
  323. package/dist/components/data-display/Table/Table.module.css.js +68 -0
  324. package/dist/components/data-display/Table/Table.module.css.js.map +1 -0
  325. package/dist/components/data-display/Tag/Tag.cjs +2 -0
  326. package/dist/components/data-display/Tag/Tag.cjs.map +1 -0
  327. package/dist/components/data-display/Tag/Tag.js +50 -0
  328. package/dist/components/data-display/Tag/Tag.js.map +1 -0
  329. package/dist/components/data-display/Tag/Tag.module.css.cjs +2 -0
  330. package/dist/components/data-display/Tag/Tag.module.css.cjs.map +1 -0
  331. package/dist/components/data-display/Tag/Tag.module.css.js +22 -0
  332. package/dist/components/data-display/Tag/Tag.module.css.js.map +1 -0
  333. package/dist/components/data-display/Timeline/Timeline.cjs +2 -0
  334. package/dist/components/data-display/Timeline/Timeline.cjs.map +1 -0
  335. package/dist/components/data-display/Timeline/Timeline.js +31 -0
  336. package/dist/components/data-display/Timeline/Timeline.js.map +1 -0
  337. package/dist/components/data-display/Timeline/Timeline.module.css.cjs +2 -0
  338. package/dist/components/data-display/Timeline/Timeline.module.css.cjs.map +1 -0
  339. package/dist/components/data-display/Timeline/Timeline.module.css.js +30 -0
  340. package/dist/components/data-display/Timeline/Timeline.module.css.js.map +1 -0
  341. package/dist/components/feedback/Alert/Alert.cjs +2 -0
  342. package/dist/components/feedback/Alert/Alert.cjs.map +1 -0
  343. package/dist/components/feedback/Alert/Alert.js +13 -0
  344. package/dist/components/feedback/Alert/Alert.js.map +1 -0
  345. package/dist/components/feedback/Alert/Alert.module.css.cjs +2 -0
  346. package/dist/components/feedback/Alert/Alert.module.css.cjs.map +1 -0
  347. package/dist/components/feedback/Alert/Alert.module.css.js +20 -0
  348. package/dist/components/feedback/Alert/Alert.module.css.js.map +1 -0
  349. package/dist/components/feedback/EmptyState/EmptyState.cjs +2 -0
  350. package/dist/components/feedback/EmptyState/EmptyState.cjs.map +1 -0
  351. package/dist/components/feedback/EmptyState/EmptyState.js +49 -0
  352. package/dist/components/feedback/EmptyState/EmptyState.js.map +1 -0
  353. package/dist/components/feedback/EmptyState/EmptyState.module.css.cjs +2 -0
  354. package/dist/components/feedback/EmptyState/EmptyState.module.css.cjs.map +1 -0
  355. package/dist/components/feedback/EmptyState/EmptyState.module.css.js +36 -0
  356. package/dist/components/feedback/EmptyState/EmptyState.module.css.js.map +1 -0
  357. package/dist/components/feedback/Progress/Progress.cjs +2 -0
  358. package/dist/components/feedback/Progress/Progress.cjs.map +1 -0
  359. package/dist/components/feedback/Progress/Progress.js +34 -0
  360. package/dist/components/feedback/Progress/Progress.js.map +1 -0
  361. package/dist/components/feedback/Progress/Progress.module.css.cjs +2 -0
  362. package/dist/components/feedback/Progress/Progress.module.css.cjs.map +1 -0
  363. package/dist/components/feedback/Progress/Progress.module.css.js +21 -0
  364. package/dist/components/feedback/Progress/Progress.module.css.js.map +1 -0
  365. package/dist/components/feedback/Skeleton/Skeleton.cjs +2 -0
  366. package/dist/components/feedback/Skeleton/Skeleton.cjs.map +1 -0
  367. package/dist/components/feedback/Skeleton/Skeleton.js +17 -0
  368. package/dist/components/feedback/Skeleton/Skeleton.js.map +1 -0
  369. package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs +2 -0
  370. package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs.map +1 -0
  371. package/dist/components/feedback/Skeleton/Skeleton.module.css.js +15 -0
  372. package/dist/components/feedback/Skeleton/Skeleton.module.css.js.map +1 -0
  373. package/dist/components/feedback/Spinner/Spinner.cjs +2 -0
  374. package/dist/components/feedback/Spinner/Spinner.cjs.map +1 -0
  375. package/dist/components/feedback/Spinner/Spinner.js +10 -0
  376. package/dist/components/feedback/Spinner/Spinner.js.map +1 -0
  377. package/dist/components/feedback/Spinner/Spinner.module.css.cjs +2 -0
  378. package/dist/components/feedback/Spinner/Spinner.module.css.cjs.map +1 -0
  379. package/dist/components/feedback/Spinner/Spinner.module.css.js +15 -0
  380. package/dist/components/feedback/Spinner/Spinner.module.css.js.map +1 -0
  381. package/dist/components/feedback/Toast/Toast.module.css.cjs +2 -0
  382. package/dist/components/feedback/Toast/Toast.module.css.cjs.map +1 -0
  383. package/dist/components/feedback/Toast/Toast.module.css.js +31 -0
  384. package/dist/components/feedback/Toast/Toast.module.css.js.map +1 -0
  385. package/dist/components/feedback/Toast/ToastRegion.cjs +2 -0
  386. package/dist/components/feedback/Toast/ToastRegion.cjs.map +1 -0
  387. package/dist/components/feedback/Toast/ToastRegion.js +62 -0
  388. package/dist/components/feedback/Toast/ToastRegion.js.map +1 -0
  389. package/dist/components/feedback/Toast/toastStore.cjs +2 -0
  390. package/dist/components/feedback/Toast/toastStore.cjs.map +1 -0
  391. package/dist/components/feedback/Toast/toastStore.js +33 -0
  392. package/dist/components/feedback/Toast/toastStore.js.map +1 -0
  393. package/dist/components/forms/Checkbox/Checkbox.cjs +2 -0
  394. package/dist/components/forms/Checkbox/Checkbox.cjs.map +1 -0
  395. package/dist/components/forms/Checkbox/Checkbox.js +57 -0
  396. package/dist/components/forms/Checkbox/Checkbox.js.map +1 -0
  397. package/dist/components/forms/Checkbox/Checkbox.module.css.cjs +2 -0
  398. package/dist/components/forms/Checkbox/Checkbox.module.css.cjs.map +1 -0
  399. package/dist/components/forms/Checkbox/Checkbox.module.css.js +20 -0
  400. package/dist/components/forms/Checkbox/Checkbox.module.css.js.map +1 -0
  401. package/dist/components/forms/CheckboxGroup/CheckboxGroup.cjs +2 -0
  402. package/dist/components/forms/CheckboxGroup/CheckboxGroup.cjs.map +1 -0
  403. package/dist/components/forms/CheckboxGroup/CheckboxGroup.js +54 -0
  404. package/dist/components/forms/CheckboxGroup/CheckboxGroup.js.map +1 -0
  405. package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.cjs +2 -0
  406. package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.cjs.map +1 -0
  407. package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.js +22 -0
  408. package/dist/components/forms/CheckboxGroup/CheckboxGroup.module.css.js.map +1 -0
  409. package/dist/components/forms/ColorPicker/ColorPicker.cjs +2 -0
  410. package/dist/components/forms/ColorPicker/ColorPicker.cjs.map +1 -0
  411. package/dist/components/forms/ColorPicker/ColorPicker.js +57 -0
  412. package/dist/components/forms/ColorPicker/ColorPicker.js.map +1 -0
  413. package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs +2 -0
  414. package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs.map +1 -0
  415. package/dist/components/forms/ColorPicker/ColorPicker.module.css.js +22 -0
  416. package/dist/components/forms/ColorPicker/ColorPicker.module.css.js.map +1 -0
  417. package/dist/components/forms/ComboBox/ComboBox.cjs +3 -0
  418. package/dist/components/forms/ComboBox/ComboBox.cjs.map +1 -0
  419. package/dist/components/forms/ComboBox/ComboBox.js +223 -0
  420. package/dist/components/forms/ComboBox/ComboBox.js.map +1 -0
  421. package/dist/components/forms/ComboBox/ComboBox.module.css.cjs +2 -0
  422. package/dist/components/forms/ComboBox/ComboBox.module.css.cjs.map +1 -0
  423. package/dist/components/forms/ComboBox/ComboBox.module.css.js +28 -0
  424. package/dist/components/forms/ComboBox/ComboBox.module.css.js.map +1 -0
  425. package/dist/components/forms/DatePicker/Calendar.cjs +2 -0
  426. package/dist/components/forms/DatePicker/Calendar.cjs.map +1 -0
  427. package/dist/components/forms/DatePicker/Calendar.js +86 -0
  428. package/dist/components/forms/DatePicker/Calendar.js.map +1 -0
  429. package/dist/components/forms/DatePicker/DatePicker.cjs +2 -0
  430. package/dist/components/forms/DatePicker/DatePicker.cjs.map +1 -0
  431. package/dist/components/forms/DatePicker/DatePicker.js +217 -0
  432. package/dist/components/forms/DatePicker/DatePicker.js.map +1 -0
  433. package/dist/components/forms/DatePicker/DatePicker.module.css.cjs +2 -0
  434. package/dist/components/forms/DatePicker/DatePicker.module.css.cjs.map +1 -0
  435. package/dist/components/forms/DatePicker/DatePicker.module.css.js +44 -0
  436. package/dist/components/forms/DatePicker/DatePicker.module.css.js.map +1 -0
  437. package/dist/components/forms/DatePicker/iso.cjs +2 -0
  438. package/dist/components/forms/DatePicker/iso.cjs.map +1 -0
  439. package/dist/components/forms/DatePicker/iso.js +18 -0
  440. package/dist/components/forms/DatePicker/iso.js.map +1 -0
  441. package/dist/components/forms/DateTimePicker/DateTimePicker.cjs +2 -0
  442. package/dist/components/forms/DateTimePicker/DateTimePicker.cjs.map +1 -0
  443. package/dist/components/forms/DateTimePicker/DateTimePicker.js +241 -0
  444. package/dist/components/forms/DateTimePicker/DateTimePicker.js.map +1 -0
  445. package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.cjs +2 -0
  446. package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.cjs.map +1 -0
  447. package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.js +26 -0
  448. package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.js.map +1 -0
  449. package/dist/components/forms/Field/Field.cjs +2 -0
  450. package/dist/components/forms/Field/Field.cjs.map +1 -0
  451. package/dist/components/forms/Field/Field.js +35 -0
  452. package/dist/components/forms/Field/Field.js.map +1 -0
  453. package/dist/components/forms/Field/Field.module.css.cjs +2 -0
  454. package/dist/components/forms/Field/Field.module.css.cjs.map +1 -0
  455. package/dist/components/forms/Field/Field.module.css.js +22 -0
  456. package/dist/components/forms/Field/Field.module.css.js.map +1 -0
  457. package/dist/components/forms/Field/FormValue.cjs +2 -0
  458. package/dist/components/forms/Field/FormValue.cjs.map +1 -0
  459. package/dist/components/forms/Field/FormValue.js +24 -0
  460. package/dist/components/forms/Field/FormValue.js.map +1 -0
  461. package/dist/components/forms/FileUpload/FileUpload.cjs +2 -0
  462. package/dist/components/forms/FileUpload/FileUpload.cjs.map +1 -0
  463. package/dist/components/forms/FileUpload/FileUpload.js +142 -0
  464. package/dist/components/forms/FileUpload/FileUpload.js.map +1 -0
  465. package/dist/components/forms/FileUpload/FileUpload.module.css.cjs +2 -0
  466. package/dist/components/forms/FileUpload/FileUpload.module.css.cjs.map +1 -0
  467. package/dist/components/forms/FileUpload/FileUpload.module.css.js +46 -0
  468. package/dist/components/forms/FileUpload/FileUpload.module.css.js.map +1 -0
  469. package/dist/components/forms/InputCurrency/InputCurrency.cjs +2 -0
  470. package/dist/components/forms/InputCurrency/InputCurrency.cjs.map +1 -0
  471. package/dist/components/forms/InputCurrency/InputCurrency.js +41 -0
  472. package/dist/components/forms/InputCurrency/InputCurrency.js.map +1 -0
  473. package/dist/components/forms/InputNumber/InputNumber.cjs +2 -0
  474. package/dist/components/forms/InputNumber/InputNumber.cjs.map +1 -0
  475. package/dist/components/forms/InputNumber/InputNumber.js +39 -0
  476. package/dist/components/forms/InputNumber/InputNumber.js.map +1 -0
  477. package/dist/components/forms/InputPassword/InputPassword.cjs +2 -0
  478. package/dist/components/forms/InputPassword/InputPassword.cjs.map +1 -0
  479. package/dist/components/forms/InputPassword/InputPassword.js +110 -0
  480. package/dist/components/forms/InputPassword/InputPassword.js.map +1 -0
  481. package/dist/components/forms/InputPassword/InputPassword.module.css.cjs +2 -0
  482. package/dist/components/forms/InputPassword/InputPassword.module.css.cjs.map +1 -0
  483. package/dist/components/forms/InputPassword/InputPassword.module.css.js +18 -0
  484. package/dist/components/forms/InputPassword/InputPassword.module.css.js.map +1 -0
  485. package/dist/components/forms/InputText/InputText.cjs +2 -0
  486. package/dist/components/forms/InputText/InputText.cjs.map +1 -0
  487. package/dist/components/forms/InputText/InputText.js +70 -0
  488. package/dist/components/forms/InputText/InputText.js.map +1 -0
  489. package/dist/components/forms/InputText/InputText.module.css.cjs +2 -0
  490. package/dist/components/forms/InputText/InputText.module.css.cjs.map +1 -0
  491. package/dist/components/forms/InputText/InputText.module.css.js +14 -0
  492. package/dist/components/forms/InputText/InputText.module.css.js.map +1 -0
  493. package/dist/components/forms/Label/Label.cjs +2 -0
  494. package/dist/components/forms/Label/Label.cjs.map +1 -0
  495. package/dist/components/forms/Label/Label.js +13 -0
  496. package/dist/components/forms/Label/Label.js.map +1 -0
  497. package/dist/components/forms/Label/Label.module.css.cjs +2 -0
  498. package/dist/components/forms/Label/Label.module.css.cjs.map +1 -0
  499. package/dist/components/forms/Label/Label.module.css.js +10 -0
  500. package/dist/components/forms/Label/Label.module.css.js.map +1 -0
  501. package/dist/components/forms/RadioGroup/Radio.cjs +2 -0
  502. package/dist/components/forms/RadioGroup/Radio.cjs.map +1 -0
  503. package/dist/components/forms/RadioGroup/Radio.js +43 -0
  504. package/dist/components/forms/RadioGroup/Radio.js.map +1 -0
  505. package/dist/components/forms/RadioGroup/RadioGroup.cjs +2 -0
  506. package/dist/components/forms/RadioGroup/RadioGroup.cjs.map +1 -0
  507. package/dist/components/forms/RadioGroup/RadioGroup.js +58 -0
  508. package/dist/components/forms/RadioGroup/RadioGroup.js.map +1 -0
  509. package/dist/components/forms/RadioGroup/RadioGroup.module.css.cjs +2 -0
  510. package/dist/components/forms/RadioGroup/RadioGroup.module.css.cjs.map +1 -0
  511. package/dist/components/forms/RadioGroup/RadioGroup.module.css.js +26 -0
  512. package/dist/components/forms/RadioGroup/RadioGroup.module.css.js.map +1 -0
  513. package/dist/components/forms/SegmentedControl/SegmentedControl.cjs +2 -0
  514. package/dist/components/forms/SegmentedControl/SegmentedControl.cjs.map +1 -0
  515. package/dist/components/forms/SegmentedControl/SegmentedControl.js +52 -0
  516. package/dist/components/forms/SegmentedControl/SegmentedControl.js.map +1 -0
  517. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs +2 -0
  518. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs.map +1 -0
  519. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.js +22 -0
  520. package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.js.map +1 -0
  521. package/dist/components/forms/Select/Select.cjs +2 -0
  522. package/dist/components/forms/Select/Select.cjs.map +1 -0
  523. package/dist/components/forms/Select/Select.js +191 -0
  524. package/dist/components/forms/Select/Select.js.map +1 -0
  525. package/dist/components/forms/Select/Select.module.css.cjs +2 -0
  526. package/dist/components/forms/Select/Select.module.css.cjs.map +1 -0
  527. package/dist/components/forms/Select/Select.module.css.js +22 -0
  528. package/dist/components/forms/Select/Select.module.css.js.map +1 -0
  529. package/dist/components/forms/Switch/Switch.cjs +2 -0
  530. package/dist/components/forms/Switch/Switch.cjs.map +1 -0
  531. package/dist/components/forms/Switch/Switch.js +39 -0
  532. package/dist/components/forms/Switch/Switch.js.map +1 -0
  533. package/dist/components/forms/Switch/Switch.module.css.cjs +2 -0
  534. package/dist/components/forms/Switch/Switch.module.css.cjs.map +1 -0
  535. package/dist/components/forms/Switch/Switch.module.css.js +20 -0
  536. package/dist/components/forms/Switch/Switch.module.css.js.map +1 -0
  537. package/dist/components/forms/Textarea/Textarea.cjs +2 -0
  538. package/dist/components/forms/Textarea/Textarea.cjs.map +1 -0
  539. package/dist/components/forms/Textarea/Textarea.js +64 -0
  540. package/dist/components/forms/Textarea/Textarea.js.map +1 -0
  541. package/dist/components/forms/Textarea/Textarea.module.css.cjs +2 -0
  542. package/dist/components/forms/Textarea/Textarea.module.css.cjs.map +1 -0
  543. package/dist/components/forms/Textarea/Textarea.module.css.js +14 -0
  544. package/dist/components/forms/Textarea/Textarea.module.css.js.map +1 -0
  545. package/dist/components/forms/TimePicker/TimePicker.cjs +2 -0
  546. package/dist/components/forms/TimePicker/TimePicker.cjs.map +1 -0
  547. package/dist/components/forms/TimePicker/TimePicker.js +176 -0
  548. package/dist/components/forms/TimePicker/TimePicker.js.map +1 -0
  549. package/dist/components/forms/TimePicker/TimePicker.module.css.cjs +2 -0
  550. package/dist/components/forms/TimePicker/TimePicker.module.css.cjs.map +1 -0
  551. package/dist/components/forms/TimePicker/TimePicker.module.css.js +26 -0
  552. package/dist/components/forms/TimePicker/TimePicker.module.css.js.map +1 -0
  553. package/dist/components/forms/TimePicker/TimeSlots.cjs +2 -0
  554. package/dist/components/forms/TimePicker/TimeSlots.cjs.map +1 -0
  555. package/dist/components/forms/TimePicker/TimeSlots.js +81 -0
  556. package/dist/components/forms/TimePicker/TimeSlots.js.map +1 -0
  557. package/dist/components/icons/Icon.cjs +2 -0
  558. package/dist/components/icons/Icon.cjs.map +1 -0
  559. package/dist/components/icons/Icon.js +24 -0
  560. package/dist/components/icons/Icon.js.map +1 -0
  561. package/dist/components/icons/icons.cjs +2 -0
  562. package/dist/components/icons/icons.cjs.map +1 -0
  563. package/dist/components/icons/icons.js +274 -0
  564. package/dist/components/icons/icons.js.map +1 -0
  565. package/dist/components/navigation/Breadcrumb/Breadcrumb.cjs +2 -0
  566. package/dist/components/navigation/Breadcrumb/Breadcrumb.cjs.map +1 -0
  567. package/dist/components/navigation/Breadcrumb/Breadcrumb.js +22 -0
  568. package/dist/components/navigation/Breadcrumb/Breadcrumb.js.map +1 -0
  569. package/dist/components/navigation/Breadcrumb/Breadcrumb.module.css.cjs +2 -0
  570. package/dist/components/navigation/Breadcrumb/Breadcrumb.module.css.cjs.map +1 -0
  571. package/dist/components/navigation/Breadcrumb/Breadcrumb.module.css.js +16 -0
  572. package/dist/components/navigation/Breadcrumb/Breadcrumb.module.css.js.map +1 -0
  573. package/dist/components/navigation/Pagination/Pagination.cjs +2 -0
  574. package/dist/components/navigation/Pagination/Pagination.cjs.map +1 -0
  575. package/dist/components/navigation/Pagination/Pagination.js +70 -0
  576. package/dist/components/navigation/Pagination/Pagination.js.map +1 -0
  577. package/dist/components/navigation/Pagination/Pagination.module.css.cjs +2 -0
  578. package/dist/components/navigation/Pagination/Pagination.module.css.cjs.map +1 -0
  579. package/dist/components/navigation/Pagination/Pagination.module.css.js +18 -0
  580. package/dist/components/navigation/Pagination/Pagination.module.css.js.map +1 -0
  581. package/dist/components/navigation/SkipLink/SkipLink.cjs +2 -0
  582. package/dist/components/navigation/SkipLink/SkipLink.cjs.map +1 -0
  583. package/dist/components/navigation/SkipLink/SkipLink.js +9 -0
  584. package/dist/components/navigation/SkipLink/SkipLink.js.map +1 -0
  585. package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs +2 -0
  586. package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs.map +1 -0
  587. package/dist/components/navigation/SkipLink/SkipLink.module.css.js +8 -0
  588. package/dist/components/navigation/SkipLink/SkipLink.module.css.js.map +1 -0
  589. package/dist/components/navigation/Steps/Steps.cjs +2 -0
  590. package/dist/components/navigation/Steps/Steps.cjs.map +1 -0
  591. package/dist/components/navigation/Steps/Steps.js +30 -0
  592. package/dist/components/navigation/Steps/Steps.js.map +1 -0
  593. package/dist/components/navigation/Steps/Steps.module.css.cjs +2 -0
  594. package/dist/components/navigation/Steps/Steps.module.css.cjs.map +1 -0
  595. package/dist/components/navigation/Steps/Steps.module.css.js +26 -0
  596. package/dist/components/navigation/Steps/Steps.module.css.js.map +1 -0
  597. package/dist/components/navigation/Tabs/Tabs.cjs +2 -0
  598. package/dist/components/navigation/Tabs/Tabs.cjs.map +1 -0
  599. package/dist/components/navigation/Tabs/Tabs.js +105 -0
  600. package/dist/components/navigation/Tabs/Tabs.js.map +1 -0
  601. package/dist/components/navigation/Tabs/Tabs.module.css.cjs +2 -0
  602. package/dist/components/navigation/Tabs/Tabs.module.css.cjs.map +1 -0
  603. package/dist/components/navigation/Tabs/Tabs.module.css.js +24 -0
  604. package/dist/components/navigation/Tabs/Tabs.module.css.js.map +1 -0
  605. package/dist/components/overlays/Dialog/Dialog.cjs +2 -0
  606. package/dist/components/overlays/Dialog/Dialog.cjs.map +1 -0
  607. package/dist/components/overlays/Dialog/Dialog.js +17 -0
  608. package/dist/components/overlays/Dialog/Dialog.js.map +1 -0
  609. package/dist/components/overlays/Dialog/Dialog.module.css.cjs +2 -0
  610. package/dist/components/overlays/Dialog/Dialog.module.css.cjs.map +1 -0
  611. package/dist/components/overlays/Dialog/Dialog.module.css.js +36 -0
  612. package/dist/components/overlays/Dialog/Dialog.module.css.js.map +1 -0
  613. package/dist/components/overlays/Dialog/DialogFrame.cjs +2 -0
  614. package/dist/components/overlays/Dialog/DialogFrame.cjs.map +1 -0
  615. package/dist/components/overlays/Dialog/DialogFrame.js +65 -0
  616. package/dist/components/overlays/Dialog/DialogFrame.js.map +1 -0
  617. package/dist/components/overlays/Drawer/Drawer.cjs +2 -0
  618. package/dist/components/overlays/Drawer/Drawer.cjs.map +1 -0
  619. package/dist/components/overlays/Drawer/Drawer.js +17 -0
  620. package/dist/components/overlays/Drawer/Drawer.js.map +1 -0
  621. package/dist/components/overlays/Drawer/Drawer.module.css.cjs +2 -0
  622. package/dist/components/overlays/Drawer/Drawer.module.css.cjs.map +1 -0
  623. package/dist/components/overlays/Drawer/Drawer.module.css.js +23 -0
  624. package/dist/components/overlays/Drawer/Drawer.module.css.js.map +1 -0
  625. package/dist/components/overlays/Menu/Menu.cjs +2 -0
  626. package/dist/components/overlays/Menu/Menu.cjs.map +1 -0
  627. package/dist/components/overlays/Menu/Menu.js +156 -0
  628. package/dist/components/overlays/Menu/Menu.js.map +1 -0
  629. package/dist/components/overlays/Menu/Menu.module.css.cjs +2 -0
  630. package/dist/components/overlays/Menu/Menu.module.css.cjs.map +1 -0
  631. package/dist/components/overlays/Menu/Menu.module.css.js +28 -0
  632. package/dist/components/overlays/Menu/Menu.module.css.js.map +1 -0
  633. package/dist/components/overlays/Popover/Popover.cjs +2 -0
  634. package/dist/components/overlays/Popover/Popover.cjs.map +1 -0
  635. package/dist/components/overlays/Popover/Popover.js +59 -0
  636. package/dist/components/overlays/Popover/Popover.js.map +1 -0
  637. package/dist/components/overlays/Popover/Popover.module.css.cjs +2 -0
  638. package/dist/components/overlays/Popover/Popover.module.css.cjs.map +1 -0
  639. package/dist/components/overlays/Popover/Popover.module.css.js +8 -0
  640. package/dist/components/overlays/Popover/Popover.module.css.js.map +1 -0
  641. package/dist/components/overlays/Tooltip/Tooltip.cjs +2 -0
  642. package/dist/components/overlays/Tooltip/Tooltip.cjs.map +1 -0
  643. package/dist/components/overlays/Tooltip/Tooltip.js +84 -0
  644. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -0
  645. package/dist/components/overlays/Tooltip/Tooltip.module.css.cjs +2 -0
  646. package/dist/components/overlays/Tooltip/Tooltip.module.css.cjs.map +1 -0
  647. package/dist/components/overlays/Tooltip/Tooltip.module.css.js +8 -0
  648. package/dist/components/overlays/Tooltip/Tooltip.module.css.js.map +1 -0
  649. package/dist/design-system.css +1 -1
  650. package/dist/hooks/useCalendar/calendar.cjs +2 -0
  651. package/dist/hooks/useCalendar/calendar.cjs.map +1 -0
  652. package/dist/hooks/useCalendar/calendar.js +56 -0
  653. package/dist/hooks/useCalendar/calendar.js.map +1 -0
  654. package/dist/hooks/useCalendar/useCalendar.cjs +2 -0
  655. package/dist/hooks/useCalendar/useCalendar.cjs.map +1 -0
  656. package/dist/hooks/useCalendar/useCalendar.js +48 -0
  657. package/dist/hooks/useCalendar/useCalendar.js.map +1 -0
  658. package/dist/hooks/useCharacterCount/useCharacterCount.cjs +2 -0
  659. package/dist/hooks/useCharacterCount/useCharacterCount.cjs.map +1 -0
  660. package/dist/hooks/useCharacterCount/useCharacterCount.js +27 -0
  661. package/dist/hooks/useCharacterCount/useCharacterCount.js.map +1 -0
  662. package/dist/hooks/useDecimalInput.cjs +2 -0
  663. package/dist/hooks/useDecimalInput.cjs.map +1 -0
  664. package/dist/hooks/useDecimalInput.js +17 -0
  665. package/dist/hooks/useDecimalInput.js.map +1 -0
  666. package/dist/hooks/useFormReset.cjs +2 -0
  667. package/dist/hooks/useFormReset.cjs.map +1 -0
  668. package/dist/hooks/useFormReset.js +16 -0
  669. package/dist/hooks/useFormReset.js.map +1 -0
  670. package/dist/hooks/useMergedRefs.cjs +2 -0
  671. package/dist/hooks/useMergedRefs.cjs.map +1 -0
  672. package/dist/hooks/useMergedRefs.js +24 -0
  673. package/dist/hooks/useMergedRefs.js.map +1 -0
  674. package/dist/hooks/useSelection/selection.cjs +2 -0
  675. package/dist/hooks/useSelection/selection.cjs.map +1 -0
  676. package/dist/hooks/useSelection/selection.js +78 -0
  677. package/dist/hooks/useSelection/selection.js.map +1 -0
  678. package/dist/hooks/useSelection/useSelection.cjs +2 -0
  679. package/dist/hooks/useSelection/useSelection.cjs.map +1 -0
  680. package/dist/hooks/useSelection/useSelection.js +68 -0
  681. package/dist/hooks/useSelection/useSelection.js.map +1 -0
  682. package/dist/index.cjs +2 -0
  683. package/dist/index.cjs.map +1 -0
  684. package/dist/index.js +193 -0
  685. package/dist/index.js.map +1 -0
  686. package/dist/types/components/actions/ButtonIcon/ButtonIcon.d.ts +12 -0
  687. package/dist/types/components/actions/ButtonIcon/index.d.ts +2 -0
  688. package/dist/types/components/actions/ButtonTile/ButtonTile.d.ts +14 -0
  689. package/dist/types/components/actions/ButtonTile/index.d.ts +2 -0
  690. package/dist/types/components/actions/Toolbar/Toolbar.d.ts +27 -0
  691. package/dist/types/components/actions/Toolbar/index.d.ts +2 -0
  692. package/dist/types/components/charts/ChartArea/ChartArea.d.ts +15 -4
  693. package/dist/types/components/charts/ChartBar/ChartBar.d.ts +11 -4
  694. package/dist/types/components/charts/ChartCombo/ChartCombo.d.ts +16 -4
  695. package/dist/types/components/charts/ChartDonut/ChartDonut.d.ts +5 -1
  696. package/dist/types/components/charts/ChartLine/ChartLine.d.ts +15 -4
  697. package/dist/types/components/charts/ChartPie/ChartPie.d.ts +5 -1
  698. package/dist/types/components/charts/ChartRadial/ChartRadial.d.ts +5 -1
  699. package/dist/types/components/charts/ChartSankey/ChartSankey.d.ts +5 -1
  700. package/dist/types/components/charts/ChartScatter/ChartScatter.d.ts +7 -1
  701. package/dist/types/components/charts/ChartSunburst/ChartSunburst.d.ts +11 -2
  702. package/dist/types/components/charts/ChartTooltip/ChartTooltip.d.ts +2 -0
  703. package/dist/types/components/charts/ChartTreemap/ChartTreemap.d.ts +11 -2
  704. package/dist/types/components/charts/ChartWaterfall/ChartWaterfall.d.ts +8 -3
  705. package/dist/types/components/charts/core/CartesianFrame.d.ts +6 -1
  706. package/dist/types/components/charts/core/ChartFrame.d.ts +7 -1
  707. package/dist/types/components/charts/core/PointBands.d.ts +22 -0
  708. package/dist/types/components/charts/core/cartesianLayout.d.ts +10 -4
  709. package/dist/types/components/charts/core/hoverPath.d.ts +10 -0
  710. package/dist/types/components/charts/core/index.d.ts +13 -3
  711. package/dist/types/components/charts/core/pointLabels.d.ts +13 -0
  712. package/dist/types/components/charts/core/tooltips.d.ts +49 -0
  713. package/dist/types/components/charts/core/useCartesianLayout.d.ts +20 -0
  714. package/dist/types/components/charts/core/useSeriesToggle.d.ts +15 -1
  715. package/dist/types/components/data-display/Accordion/Accordion.d.ts +6 -1
  716. package/dist/types/components/data-display/Accordion/index.d.ts +1 -1
  717. package/dist/types/components/data-display/CodeBlock/CodeBlock.d.ts +16 -0
  718. package/dist/types/components/data-display/CodeBlock/index.d.ts +3 -0
  719. package/dist/types/components/data-display/CodeBlock/syntax.d.ts +15 -0
  720. package/dist/types/components/data-display/SortableList/SortableList.d.ts +22 -0
  721. package/dist/types/components/data-display/SortableList/index.d.ts +2 -0
  722. package/dist/types/components/data-display/Table/Table.d.ts +4 -2
  723. package/dist/types/components/data-display/Tag/Tag.d.ts +13 -0
  724. package/dist/types/components/data-display/Tag/index.d.ts +2 -0
  725. package/dist/types/components/data-display/Timeline/Timeline.d.ts +15 -0
  726. package/dist/types/components/data-display/Timeline/index.d.ts +2 -0
  727. package/dist/types/components/feedback/EmptyState/EmptyState.d.ts +14 -0
  728. package/dist/types/components/feedback/EmptyState/index.d.ts +2 -0
  729. package/dist/types/components/feedback/Skeleton/Skeleton.d.ts +13 -0
  730. package/dist/types/components/feedback/Skeleton/index.d.ts +2 -0
  731. package/dist/types/components/feedback/Toast/ToastRegion.d.ts +2 -0
  732. package/dist/types/components/feedback/Toast/index.d.ts +3 -0
  733. package/dist/types/components/feedback/Toast/toastStore.d.ts +24 -0
  734. package/dist/types/components/forms/CheckboxGroup/CheckboxGroup.d.ts +28 -0
  735. package/dist/types/components/forms/CheckboxGroup/index.d.ts +2 -0
  736. package/dist/types/components/forms/ColorPicker/ColorPicker.d.ts +26 -0
  737. package/dist/types/components/forms/ColorPicker/index.d.ts +2 -0
  738. package/dist/types/components/forms/Field/Field.d.ts +6 -2
  739. package/dist/types/components/forms/Field/index.d.ts +1 -1
  740. package/dist/types/components/forms/FileUpload/FileUpload.d.ts +37 -0
  741. package/dist/types/components/forms/FileUpload/index.d.ts +2 -0
  742. package/dist/types/components/forms/InputText/InputText.d.ts +4 -2
  743. package/dist/types/components/forms/SegmentedControl/SegmentedControl.d.ts +23 -0
  744. package/dist/types/components/forms/SegmentedControl/index.d.ts +2 -0
  745. package/dist/types/components/icons/icons.d.ts +31 -0
  746. package/dist/types/components/icons/index.d.ts +1 -1
  747. package/dist/types/components/navigation/SkipLink/SkipLink.d.ts +7 -0
  748. package/dist/types/components/navigation/SkipLink/index.d.ts +2 -0
  749. package/dist/types/components/navigation/Steps/Steps.d.ts +16 -0
  750. package/dist/types/components/navigation/Steps/index.d.ts +2 -0
  751. package/dist/types/components/navigation/Tabs/Tabs.d.ts +5 -1
  752. package/dist/types/components/overlays/Dialog/Dialog.d.ts +4 -2
  753. package/dist/types/components/overlays/Dialog/DialogFrame.d.ts +7 -0
  754. package/dist/types/components/overlays/Drawer/Drawer.d.ts +9 -0
  755. package/dist/types/components/overlays/Drawer/index.d.ts +2 -0
  756. package/dist/types/components/overlays/Menu/Menu.d.ts +16 -2
  757. package/dist/types/components/overlays/Menu/index.d.ts +1 -1
  758. package/dist/types/index.d.ts +41 -7
  759. package/dist/types/utils/formatters/formatarNumero.d.ts +6 -1
  760. package/dist/types/utils/formatters/formatarTamanhoDeArquivo.d.ts +7 -0
  761. package/dist/types/utils/formatters/index.d.ts +3 -1
  762. package/dist/utils/formatters/formatarData.cjs +2 -0
  763. package/dist/utils/formatters/formatarData.cjs.map +1 -0
  764. package/dist/utils/formatters/formatarData.js +32 -0
  765. package/dist/utils/formatters/formatarData.js.map +1 -0
  766. package/dist/utils/formatters/formatarEntradaData.cjs +2 -0
  767. package/dist/utils/formatters/formatarEntradaData.cjs.map +1 -0
  768. package/dist/utils/formatters/formatarEntradaData.js +22 -0
  769. package/dist/utils/formatters/formatarEntradaData.js.map +1 -0
  770. package/dist/utils/formatters/formatarEntradaDecimal.cjs +2 -0
  771. package/dist/utils/formatters/formatarEntradaDecimal.cjs.map +1 -0
  772. package/dist/utils/formatters/formatarEntradaDecimal.js +35 -0
  773. package/dist/utils/formatters/formatarEntradaDecimal.js.map +1 -0
  774. package/dist/utils/formatters/formatarEntradaHora.cjs +2 -0
  775. package/dist/utils/formatters/formatarEntradaHora.cjs.map +1 -0
  776. package/dist/utils/formatters/formatarEntradaHora.js +32 -0
  777. package/dist/utils/formatters/formatarEntradaHora.js.map +1 -0
  778. package/dist/utils/formatters/formatarEntradaMonetaria.cjs +2 -0
  779. package/dist/utils/formatters/formatarEntradaMonetaria.cjs.map +1 -0
  780. package/dist/utils/formatters/formatarEntradaMonetaria.js +17 -0
  781. package/dist/utils/formatters/formatarEntradaMonetaria.js.map +1 -0
  782. package/dist/utils/formatters/formatarNumero.cjs +2 -0
  783. package/dist/utils/formatters/formatarNumero.cjs.map +1 -0
  784. package/dist/utils/formatters/formatarNumero.js +53 -0
  785. package/dist/utils/formatters/formatarNumero.js.map +1 -0
  786. package/dist/utils/formatters/formatarTamanhoDeArquivo.cjs +2 -0
  787. package/dist/utils/formatters/formatarTamanhoDeArquivo.cjs.map +1 -0
  788. package/dist/utils/formatters/formatarTamanhoDeArquivo.js +17 -0
  789. package/dist/utils/formatters/formatarTamanhoDeArquivo.js.map +1 -0
  790. package/dist/utils/formatters/mascararPartes.cjs +2 -0
  791. package/dist/utils/formatters/mascararPartes.cjs.map +1 -0
  792. package/dist/utils/formatters/mascararPartes.js +17 -0
  793. package/dist/utils/formatters/mascararPartes.js.map +1 -0
  794. package/dist/utils/textSearch/textSearch.cjs +2 -0
  795. package/dist/utils/textSearch/textSearch.cjs.map +1 -0
  796. package/dist/utils/textSearch/textSearch.js +22 -0
  797. package/dist/utils/textSearch/textSearch.js.map +1 -0
  798. package/package.json +5 -5
  799. package/dist/plenus-design-system.cjs +0 -3
  800. package/dist/plenus-design-system.cjs.map +0 -1
  801. package/dist/plenus-design-system.es.js +0 -6387
  802. package/dist/plenus-design-system.es.js.map +0 -1
@@ -0,0 +1,133 @@
1
+ import { jsx as s, jsxs as Y } from "react/jsx-runtime";
2
+ import { useMemo as y, useState as Z } from "react";
3
+ import { hierarchy as H, treemap as ee } from "d3-hierarchy";
4
+ import g from "./ChartTreemap.module.css.js";
5
+ import { useChartMetrics as te } from "../core/useChartMetrics.js";
6
+ import { useSeriesToggle as re } from "../core/useSeriesToggle.js";
7
+ import { resolveSeriesColors as ie, INTENT_TOKENS as S, textColorOn as $ } from "../palette/seriesColor.js";
8
+ import { ChartFrame as oe } from "../core/ChartFrame.js";
9
+ import { CHART_LABEL_OFFSET as l } from "../core/spacing.js";
10
+ import { formatarNumero as ne } from "../../../utils/formatters/formatarNumero.js";
11
+ import { truncateToWidth as N } from "../core/measureText.js";
12
+ import { pathTooltip as le } from "../core/tooltips.js";
13
+ import { hoverPath as j } from "../core/hoverPath.js";
14
+ import { chartHeight as ae } from "../core/cartesianLayout.js";
15
+ function I(c) {
16
+ return Number.isFinite(c.value) ? Math.max(c.value ?? 0, 0) : 0;
17
+ }
18
+ function Te({
19
+ accent: c,
20
+ defaultHiddenGroups: R,
21
+ emptyMessage: _ = "Sem dados no período",
22
+ formatTooltipValue: A,
23
+ formatValue: h = ne,
24
+ gap: T = 5,
25
+ height: L = 280,
26
+ hiddenGroups: P,
27
+ intentLabels: b,
28
+ legend: w = "bottom",
29
+ legendAlign: z,
30
+ nodes: i,
31
+ onHiddenGroupsChange: B,
32
+ onHoverNode: m,
33
+ showDataLabels: G = !0,
34
+ showTooltip: C = !0,
35
+ title: K
36
+ }) {
37
+ const { font: a, height: W, ref: k, width: u } = te(), { fillHeight: q, value: d } = ae(L, W), { isHidden: x, toggle: J } = re({
38
+ defaultHiddenSeries: R,
39
+ hiddenSeries: P,
40
+ onHiddenSeriesChange: B
41
+ }), E = y(() => ie(i, { accent: c }), [c, i]), Q = y(
42
+ () => !((H({ children: i, label: "" }).sum(I).value ?? 0) > 0),
43
+ [i]
44
+ ), F = y(() => {
45
+ const e = i.filter((r) => !x(r.label));
46
+ if (u === 0 || d === 0 || e.length === 0)
47
+ return [];
48
+ const t = H({ children: e, label: "" }).sum(I).sort((r, n) => (n.value ?? 0) - (r.value ?? 0));
49
+ return ee().size([u, d]).paddingInner(T).round(!0)(t).leaves();
50
+ }, [d, T, x, i, u]), [v, U] = Z(null), p = v && F.includes(v) ? v : null;
51
+ function M(e) {
52
+ U(e), m == null || m(e && j(e));
53
+ }
54
+ function O(e) {
55
+ var r;
56
+ const t = e.data;
57
+ if (t.color)
58
+ return t.color;
59
+ if (t.intent)
60
+ return S[t.intent];
61
+ const o = (r = e.ancestors().find((n) => n.depth === 1)) == null ? void 0 : r.data;
62
+ return E[i.findIndex((n) => n.label === (o == null ? void 0 : o.label))] ?? S.neutral;
63
+ }
64
+ const V = b ? Object.entries(b).map(([e, t]) => ({
65
+ color: S[e],
66
+ label: t
67
+ })) : i.map((e, t) => ({
68
+ color: E[t],
69
+ hidden: x(e.label),
70
+ label: e.label
71
+ }));
72
+ return /* @__PURE__ */ s(
73
+ oe,
74
+ {
75
+ containerRef: k,
76
+ empty: i.length === 0 || Q,
77
+ emptyMessage: _,
78
+ fillHeight: q,
79
+ height: d,
80
+ legend: V,
81
+ legendAlign: z,
82
+ legendPosition: w,
83
+ onToggleSeries: b ? void 0 : J,
84
+ title: K,
85
+ tooltip: C ? le({ color: p ? O(p) : void 0, format: A ?? h, path: p && j(p) }) : void 0,
86
+ width: u,
87
+ children: F.map((e) => {
88
+ const t = e.x1 - e.x0, o = e.y1 - e.y0, r = t - l * 2, n = G && r > 0 && o >= a.lineHeight + l, X = n && o >= a.lineHeight * 2 + l, D = `${e.data.label}: ${h(e.value ?? 0)}`, f = O(e);
89
+ return /* @__PURE__ */ Y("g", { className: g.cell, children: [
90
+ /* @__PURE__ */ s(
91
+ "rect",
92
+ {
93
+ "aria-label": D,
94
+ className: g.tile,
95
+ fill: f,
96
+ height: o,
97
+ width: t,
98
+ onMouseEnter: () => M(e),
99
+ onMouseLeave: () => M(null),
100
+ x: e.x0,
101
+ y: e.y0,
102
+ children: !C && !m && /* @__PURE__ */ s("title", { children: D })
103
+ }
104
+ ),
105
+ n && /* @__PURE__ */ s(
106
+ "text",
107
+ {
108
+ className: g.label,
109
+ fill: $(f),
110
+ x: e.x0 + l,
111
+ y: e.y0 + l + a.lineHeight * 0.6,
112
+ children: N(e.data.label, a, r)
113
+ }
114
+ ),
115
+ X && /* @__PURE__ */ s(
116
+ "text",
117
+ {
118
+ className: g.value,
119
+ fill: $(f),
120
+ x: e.x0 + l,
121
+ y: e.y0 + l + a.lineHeight * 1.6,
122
+ children: N(h(e.value ?? 0), a, r)
123
+ }
124
+ )
125
+ ] }, `${e.data.label}-${e.x0}-${e.y0}`);
126
+ })
127
+ }
128
+ );
129
+ }
130
+ export {
131
+ Te as ChartTreemap
132
+ };
133
+ //# sourceMappingURL=ChartTreemap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartTreemap.js","sources":["../../../../src/components/charts/ChartTreemap/ChartTreemap.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\nimport { hierarchy, treemap } from 'd3-hierarchy';\nimport {\n CHART_LABEL_OFFSET,\n ChartFrame,\n chartHeight,\n hoverPath,\n pathTooltip,\n truncateToWidth,\n useChartMetrics,\n useSeriesToggle,\n type ChartHeight,\n type ChartHoveredNode,\n type ChartLegendAlign,\n type ChartLegendPosition,\n} from '../core';\nimport {\n INTENT_TOKENS,\n resolveSeriesColors,\n textColorOn,\n type SeriesAppearance,\n type SeriesIntent,\n} from '../palette';\nimport { formatarNumero } from '../../../utils/formatters';\nimport styles from './ChartTreemap.module.css';\n\nexport interface ChartTreemapNode extends SeriesAppearance {\n children?: readonly ChartTreemapNode[];\n label: string;\n value?: number;\n}\n\nexport interface ChartTreemapProps {\n accent?: string;\n defaultHiddenGroups?: readonly string[];\n emptyMessage?: string;\n /** Formato dos valores no balao. Sem ele, vale o `formatValue`: o eixo pode sair compacto e o balao, exato. */\n formatTooltipValue?: (value: number) => string;\n formatValue?: (value: number) => string;\n /** Folga entre dois retangulos vizinhos. */\n gap?: number;\n height?: ChartHeight;\n hiddenGroups?: readonly string[];\n /**\n * Nome de cada intencao na legenda. Informado, a legenda deixa de listar os\n * grupos e passa a nomear as cores: e o caso do mapa colorido por status,\n * onde o que a legenda explica e o significado da cor, nao a categoria.\n */\n intentLabels?: Partial<Record<SeriesIntent, string>>;\n legend?: ChartLegendPosition;\n legendAlign?: ChartLegendAlign;\n nodes: readonly ChartTreemapNode[];\n onHiddenGroupsChange?: (hidden: readonly string[]) => void;\n /** Caminho ate o no sob o ponteiro, do grupo ao no, cada nivel com o valor somado, ou `null` ao sair. */\n onHoverNode?: (path: readonly ChartHoveredNode[] | null) => void;\n showDataLabels?: boolean;\n /**\n * Balao com o caminho ate o no sob o ponteiro. Desligue para montar o proprio `ChartTooltip`\n * pela costura; sem balao nem costura, o no volta a ter o `<title>`.\n */\n showTooltip?: boolean;\n title: string;\n}\n\n\n/** Area que o no ocupa. Invalido ou negativo nao ocupa nada. */\nfunction ocupacao(no: ChartTreemapNode) {\n return Number.isFinite(no.value) ? Math.max(no.value ?? 0, 0) : 0;\n}\n\nexport function ChartTreemap({\n accent,\n defaultHiddenGroups,\n emptyMessage = 'Sem dados no período',\n formatTooltipValue,\n formatValue = formatarNumero,\n gap = 5,\n height = 280,\n hiddenGroups,\n intentLabels,\n legend = 'bottom',\n legendAlign,\n nodes,\n onHiddenGroupsChange,\n onHoverNode,\n showDataLabels = true,\n showTooltip = true,\n title,\n}: ChartTreemapProps) {\n const { font, height: alturaMedida, ref, width } = useChartMetrics();\n const { fillHeight, value: alturaDoDesenho } = chartHeight(height, alturaMedida);\n const { isHidden, toggle } = useSeriesToggle({\n defaultHiddenSeries: defaultHiddenGroups,\n hiddenSeries: hiddenGroups,\n onHiddenSeriesChange: onHiddenGroupsChange,\n });\n\n // A cor sai da lista inteira, e nao das visiveis: desligar um grupo nao pode\n // repintar os demais.\n const coresDeGrupo = useMemo(() => resolveSeriesColors(nodes, { accent }), [accent, nodes]);\n\n // Sem valor positivo nao ha area a repartir: anuncia vazio. Desligar todos os grupos, nao: a legenda e a volta.\n const semValor = useMemo(\n () => !((hierarchy<ChartTreemapNode>({ children: nodes, label: '' }).sum(ocupacao).value ?? 0) > 0),\n [nodes],\n );\n\n const retangulos = useMemo(() => {\n const visiveis = nodes.filter((grupo) => !isHidden(grupo.label));\n\n if (width === 0 || alturaDoDesenho === 0 || visiveis.length === 0) {\n return [];\n }\n\n const arvore = hierarchy<ChartTreemapNode>({ children: visiveis, label: '' })\n .sum(ocupacao)\n .sort((a, b) => (b.value ?? 0) - (a.value ?? 0));\n\n const posicionar = treemap<ChartTreemapNode>()\n .size([width, alturaDoDesenho])\n .paddingInner(gap)\n .round(true);\n\n return posicionar(arvore).leaves();\n }, [alturaDoDesenho, gap, isHidden, nodes, width]);\n\n const [emFoco, setEmFoco] = useState<(typeof retangulos)[number] | null>(null);\n // A folha guardada deixa de existir quando o mapa e remontado; sem conferir, o balao falaria de um no que saiu.\n const foco = emFoco && retangulos.includes(emFoco) ? emFoco : null;\n\n function focar(folha: (typeof retangulos)[number] | null) {\n setEmFoco(folha);\n onHoverNode?.(folha && hoverPath(folha));\n }\n\n /** A folha herda a cor do grupo, e a intencao propria vence a herdada. */\n function corDa(folha: (typeof retangulos)[number]) {\n const proprio = folha.data;\n\n if (proprio.color) {\n return proprio.color;\n }\n\n if (proprio.intent) {\n return INTENT_TOKENS[proprio.intent];\n }\n\n const grupo = folha.ancestors().find((ancestral) => ancestral.depth === 1)?.data;\n\n return coresDeGrupo[nodes.findIndex((no) => no.label === grupo?.label)] ?? INTENT_TOKENS.neutral;\n }\n\n const entradasDaLegenda = intentLabels\n ? (Object.entries(intentLabels) as [SeriesIntent, string][]).map(([intencao, rotulo]) => ({\n color: INTENT_TOKENS[intencao],\n label: rotulo,\n }))\n : nodes.map((grupo, indice) => ({\n color: coresDeGrupo[indice],\n hidden: isHidden(grupo.label),\n label: grupo.label,\n }));\n\n return (\n <ChartFrame\n containerRef={ref}\n empty={nodes.length === 0 || semValor}\n emptyMessage={emptyMessage}\n fillHeight={fillHeight}\n height={alturaDoDesenho}\n legend={entradasDaLegenda}\n legendAlign={legendAlign}\n legendPosition={legend}\n onToggleSeries={intentLabels ? undefined : toggle}\n title={title}\n tooltip={\n showTooltip\n ? pathTooltip({ color: foco ? corDa(foco) : undefined, format: formatTooltipValue ?? formatValue, path: foco && hoverPath(foco) })\n : undefined\n }\n width={width}\n >\n {retangulos.map((folha) => {\n const largura = folha.x1 - folha.x0;\n const altura = folha.y1 - folha.y0;\n const disponivel = largura - CHART_LABEL_OFFSET * 2;\n const cabeORotulo = showDataLabels && disponivel > 0 && altura >= font.lineHeight + CHART_LABEL_OFFSET;\n const cabeOValor = cabeORotulo && altura >= font.lineHeight * 2 + CHART_LABEL_OFFSET;\n const descricao = `${folha.data.label}: ${formatValue(folha.value ?? 0)}`;\n const cor = corDa(folha);\n\n return (\n <g className={styles.cell} key={`${folha.data.label}-${folha.x0}-${folha.y0}`}>\n <rect\n aria-label={descricao}\n className={styles.tile}\n fill={cor}\n height={altura}\n width={largura}\n onMouseEnter={() => focar(folha)}\n onMouseLeave={() => focar(null)}\n x={folha.x0}\n y={folha.y0}\n >\n {!showTooltip && !onHoverNode && <title>{descricao}</title>}\n </rect>\n\n {cabeORotulo && (\n <text\n className={styles.label}\n fill={textColorOn(cor)}\n x={folha.x0 + CHART_LABEL_OFFSET}\n y={folha.y0 + CHART_LABEL_OFFSET + font.lineHeight * 0.6}\n >\n {truncateToWidth(folha.data.label, font, disponivel)}\n </text>\n )}\n\n {cabeOValor && (\n <text\n className={styles.value}\n fill={textColorOn(cor)}\n x={folha.x0 + CHART_LABEL_OFFSET}\n y={folha.y0 + CHART_LABEL_OFFSET + font.lineHeight * 1.6}\n >\n {truncateToWidth(formatValue(folha.value ?? 0), font, disponivel)}\n </text>\n )}\n </g>\n );\n })}\n </ChartFrame>\n );\n}\n"],"names":["ocupacao","no","ChartTreemap","accent","defaultHiddenGroups","emptyMessage","formatTooltipValue","formatValue","formatarNumero","gap","height","hiddenGroups","intentLabels","legend","legendAlign","nodes","onHiddenGroupsChange","onHoverNode","showDataLabels","showTooltip","title","font","alturaMedida","ref","width","useChartMetrics","fillHeight","alturaDoDesenho","chartHeight","isHidden","toggle","useSeriesToggle","coresDeGrupo","useMemo","resolveSeriesColors","semValor","hierarchy","retangulos","visiveis","grupo","arvore","a","b","treemap","emFoco","setEmFoco","useState","foco","focar","folha","hoverPath","corDa","proprio","INTENT_TOKENS","_a","ancestral","entradasDaLegenda","intencao","rotulo","indice","jsx","ChartFrame","pathTooltip","largura","altura","disponivel","CHART_LABEL_OFFSET","cabeORotulo","cabeOValor","descricao","cor","jsxs","styles","textColorOn","truncateToWidth"],"mappings":";;;;;;;;;;;;;;AAkEA,SAASA,EAASC,GAAsB;AACtC,SAAO,OAAO,SAASA,EAAG,KAAK,IAAI,KAAK,IAAIA,EAAG,SAAS,GAAG,CAAC,IAAI;AAClE;AAEO,SAASC,GAAa;AAAA,EAC3B,QAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,oBAAAC;AAAA,EACA,aAAAC,IAAcC;AAAA,EACd,KAAAC,IAAM;AAAA,EACN,QAAAC,IAAS;AAAA,EACT,cAAAC;AAAA,EACA,cAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,aAAAC;AAAA,EACA,OAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,gBAAAC,IAAiB;AAAA,EACjB,aAAAC,IAAc;AAAA,EACd,OAAAC;AACF,GAAsB;AACpB,QAAM,EAAE,MAAAC,GAAM,QAAQC,GAAc,KAAAC,GAAK,OAAAC,EAAA,IAAUC,GAAA,GAC7C,EAAE,YAAAC,GAAY,OAAOC,MAAoBC,GAAYlB,GAAQY,CAAY,GACzE,EAAE,UAAAO,GAAU,QAAAC,EAAA,IAAWC,GAAgB;AAAA,IAC3C,qBAAqB3B;AAAA,IACrB,cAAcO;AAAA,IACd,sBAAsBK;AAAA,EAAA,CACvB,GAIKgB,IAAeC,EAAQ,MAAMC,GAAoBnB,GAAO,EAAE,QAAAZ,EAAA,CAAQ,GAAG,CAACA,GAAQY,CAAK,CAAC,GAGpFoB,IAAWF;AAAA,IACf,MAAM,GAAGG,EAA4B,EAAE,UAAUrB,GAAO,OAAO,IAAI,EAAE,IAAIf,CAAQ,EAAE,SAAS,KAAK;AAAA,IACjG,CAACe,CAAK;AAAA,EAAA,GAGFsB,IAAaJ,EAAQ,MAAM;AAC/B,UAAMK,IAAWvB,EAAM,OAAO,CAACwB,MAAU,CAACV,EAASU,EAAM,KAAK,CAAC;AAE/D,QAAIf,MAAU,KAAKG,MAAoB,KAAKW,EAAS,WAAW;AAC9D,aAAO,CAAA;AAGT,UAAME,IAASJ,EAA4B,EAAE,UAAUE,GAAU,OAAO,GAAA,CAAI,EACzE,IAAItC,CAAQ,EACZ,KAAK,CAACyC,GAAGC,OAAOA,EAAE,SAAS,MAAMD,EAAE,SAAS,EAAE;AAOjD,WALmBE,KAChB,KAAK,CAACnB,GAAOG,CAAe,CAAC,EAC7B,aAAalB,CAAG,EAChB,MAAM,EAAI,EAEK+B,CAAM,EAAE,OAAA;AAAA,EAC5B,GAAG,CAACb,GAAiBlB,GAAKoB,GAAUd,GAAOS,CAAK,CAAC,GAE3C,CAACoB,GAAQC,CAAS,IAAIC,EAA6C,IAAI,GAEvEC,IAAOH,KAAUP,EAAW,SAASO,CAAM,IAAIA,IAAS;AAE9D,WAASI,EAAMC,GAA2C;AACxD,IAAAJ,EAAUI,CAAK,GACfhC,KAAA,QAAAA,EAAcgC,KAASC,EAAUD,CAAK;AAAA,EACxC;AAGA,WAASE,EAAMF,GAAoC;;AACjD,UAAMG,IAAUH,EAAM;AAEtB,QAAIG,EAAQ;AACV,aAAOA,EAAQ;AAGjB,QAAIA,EAAQ;AACV,aAAOC,EAAcD,EAAQ,MAAM;AAGrC,UAAMb,KAAQe,IAAAL,EAAM,UAAA,EAAY,KAAK,CAACM,MAAcA,EAAU,UAAU,CAAC,MAA3D,gBAAAD,EAA8D;AAE5E,WAAOtB,EAAajB,EAAM,UAAU,CAACd,MAAOA,EAAG,WAAUsC,KAAA,gBAAAA,EAAO,MAAK,CAAC,KAAKc,EAAc;AAAA,EAC3F;AAEA,QAAMG,IAAoB5C,IACrB,OAAO,QAAQA,CAAY,EAA+B,IAAI,CAAC,CAAC6C,GAAUC,CAAM,OAAO;AAAA,IACtF,OAAOL,EAAcI,CAAQ;AAAA,IAC7B,OAAOC;AAAA,EAAA,EACP,IACF3C,EAAM,IAAI,CAACwB,GAAOoB,OAAY;AAAA,IAC5B,OAAO3B,EAAa2B,CAAM;AAAA,IAC1B,QAAQ9B,EAASU,EAAM,KAAK;AAAA,IAC5B,OAAOA,EAAM;AAAA,EAAA,EACb;AAEN,SACE,gBAAAqB;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,cAActC;AAAA,MACd,OAAOR,EAAM,WAAW,KAAKoB;AAAA,MAC7B,cAAA9B;AAAA,MACA,YAAAqB;AAAA,MACA,QAAQC;AAAA,MACR,QAAQ6B;AAAA,MACR,aAAA1C;AAAA,MACA,gBAAgBD;AAAA,MAChB,gBAAgBD,IAAe,SAAYkB;AAAA,MAC3C,OAAAV;AAAA,MACA,SACED,IACI2C,GAAY,EAAE,OAAOf,IAAOI,EAAMJ,CAAI,IAAI,QAAW,QAAQzC,KAAsBC,GAAa,MAAMwC,KAAQG,EAAUH,CAAI,EAAA,CAAG,IAC/H;AAAA,MAEN,OAAAvB;AAAA,MAEC,UAAAa,EAAW,IAAI,CAACY,MAAU;AACzB,cAAMc,IAAUd,EAAM,KAAKA,EAAM,IAC3Be,IAASf,EAAM,KAAKA,EAAM,IAC1BgB,IAAaF,IAAUG,IAAqB,GAC5CC,IAAcjD,KAAkB+C,IAAa,KAAKD,KAAU3C,EAAK,aAAa6C,GAC9EE,IAAaD,KAAeH,KAAU3C,EAAK,aAAa,IAAI6C,GAC5DG,IAAY,GAAGpB,EAAM,KAAK,KAAK,KAAK1C,EAAY0C,EAAM,SAAS,CAAC,CAAC,IACjEqB,IAAMnB,EAAMF,CAAK;AAEvB,eACE,gBAAAsB,EAAC,KAAA,EAAE,WAAWC,EAAO,MACnB,UAAA;AAAA,UAAA,gBAAAZ;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,cAAYS;AAAA,cACZ,WAAWG,EAAO;AAAA,cAClB,MAAMF;AAAA,cACN,QAAQN;AAAA,cACR,OAAOD;AAAA,cACP,cAAc,MAAMf,EAAMC,CAAK;AAAA,cAC/B,cAAc,MAAMD,EAAM,IAAI;AAAA,cAC9B,GAAGC,EAAM;AAAA,cACT,GAAGA,EAAM;AAAA,cAER,WAAC9B,KAAe,CAACF,KAAe,gBAAA2C,EAAC,WAAO,UAAAS,EAAA,CAAU;AAAA,YAAA;AAAA,UAAA;AAAA,UAGpDF,KACC,gBAAAP;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAWY,EAAO;AAAA,cAClB,MAAMC,EAAYH,CAAG;AAAA,cACrB,GAAGrB,EAAM,KAAKiB;AAAA,cACd,GAAGjB,EAAM,KAAKiB,IAAqB7C,EAAK,aAAa;AAAA,cAEpD,UAAAqD,EAAgBzB,EAAM,KAAK,OAAO5B,GAAM4C,CAAU;AAAA,YAAA;AAAA,UAAA;AAAA,UAItDG,KACC,gBAAAR;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAWY,EAAO;AAAA,cAClB,MAAMC,EAAYH,CAAG;AAAA,cACrB,GAAGrB,EAAM,KAAKiB;AAAA,cACd,GAAGjB,EAAM,KAAKiB,IAAqB7C,EAAK,aAAa;AAAA,cAEpD,YAAgBd,EAAY0C,EAAM,SAAS,CAAC,GAAG5B,GAAM4C,CAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QAClE,EAAA,GAlC4B,GAAGhB,EAAM,KAAK,KAAK,IAAIA,EAAM,EAAE,IAAIA,EAAM,EAAE,EAoC3E;AAAA,MAEJ,CAAC;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l="_cell_5uvni_1",e="_tile_5uvni_5",t="_label_5uvni_14",u="_value_5uvni_21",_={cell:l,tile:e,label:t,value:u};exports.cell=l;exports.default=_;exports.label=t;exports.tile=e;exports.value=u;
2
+ //# sourceMappingURL=ChartTreemap.module.css.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartTreemap.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ const l = "_cell_5uvni_1", e = "_tile_5uvni_5", _ = "_label_5uvni_14", t = "_value_5uvni_21", n = {
2
+ cell: l,
3
+ tile: e,
4
+ label: _,
5
+ value: t
6
+ };
7
+ export {
8
+ l as cell,
9
+ n as default,
10
+ _ as label,
11
+ e as tile,
12
+ t as value
13
+ };
14
+ //# sourceMappingURL=ChartTreemap.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartTreemap.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react/jsx-runtime"),f=require("react"),x=require("./ChartWaterfall.module.css.cjs"),V=require("../core/useChartMetrics.cjs"),ee=require("../core/useHoveredBand.cjs"),te=require("../palette/seriesColor.cjs"),b=require("../scales/scales.cjs"),w=require("../core/cartesianLayout.cjs"),oe=require("../core/useCartesianLayout.cjs"),ae=require("../core/spacing.cjs"),ne=require("../core/useTweenedNumbers.cjs"),re=require("../../../utils/formatters/formatarNumero.cjs"),ie=require("../core/CartesianFrame.cjs"),le=require("../core/BandCursor.cjs"),se=require("../core/shapes.cjs");function ue(n){let s=0;return n.map(r=>{if(!Number.isFinite(r.value))return null;const v=r.total?0:s,g=v+r.value;return s=g,{inicio:v,fim:g}})}function ce(n){return n.intent?n.intent:n.total?"neutral":n.value<0?"negative":"positive"}function z(n,s){return n===0?s(0):`${n<0?"-":"+"}${s(Math.abs(n))}`}function me({emptyMessage:n="Sem dados no período",formatTooltipValue:s,formatValue:r=re.formatarNumero,height:v=280,labelAngle:g="auto",onHoverStep:E,showDataLabels:q="visible",showTooltip:O=!0,steps:a,title:_,xAxis:j="visible",yAxis:D="visible",yAxisRight:N="hidden"}){var W;const{font:p,height:G,radius:M,ref:I,width:B}=V.useChartMetrics(),{fillHeight:J,value:C}=w.chartHeight(v,G),{hover:F,hovered:c}=ee.useHoveredBand(E),u=f.useMemo(()=>ue(a),[a]),y=f.useMemo(()=>te.resolveSeriesColors(a.map(e=>({color:e.color,intent:ce(e)}))),[a]),L=f.useMemo(()=>b.domainOf(u.flatMap(e=>e?[e.inicio,e.fim]:[])),[u]),P=w.valueLabelsFor(L,C,r),{axisReveal:K,margins:Q,plot:l,rotation:U}=oe.useCartesianLayout({bottomLabels:a.map(e=>e.label),font:p,height:C,labelAngle:g,leftLabels:P,rightLabels:P,topRoom:q==="hidden"?0:ae.valueLabelRoom(p),width:B,xAxis:j,yAxis:D,yAxisRight:N}),m=f.useMemo(()=>b.bandScale({domain:a.map((e,t)=>String(t)),range:[0,l.width]}),[l.width,a]),h=e=>m(String(e))??0,R=f.useMemo(()=>b.linearScale({domain:L,range:[l.height,0]}),[L,l.height]),[$,k]=ne.useTweenedNumbers(R.domain()),i=f.useMemo(()=>b.linearScale({domain:{min:$,max:k},nice:!1,range:[l.height,0]}),[k,$,l.height]),H=b.ticksFor(R,l.height),X=a.map((e,t)=>({label:e.label,position:h(t)+m.bandwidth()/2})),A=H.map(e=>({label:r(e),position:i(e)}));function T(e){return e.total?r(e.value):z(e.value,r)}function Y(e){if(e===null||!u[e])return[];const t=a[e];return t.total?[{color:y[e],label:"Total",values:[t.value]}]:[{color:y[e],format:o=>z(o,s??r),label:"Variação",values:[t.value]},{label:"Acumulado",values:[u[e].fim]}]}return d.jsxs(ie.CartesianFrame,{axisReveal:K,containerRef:I,empty:a.length===0,emptyMessage:n,grid:[{baseline:i(0),lines:H.map(e=>i(e)),orientation:"horizontal"}],fillHeight:J,height:C,legendPosition:"none",margins:Q,plot:l,title:_,tooltip:O?{columns:[{format:s??r}],computed:"none",rows:Y(c),title:c===null||(W=a[c])==null?void 0:W.label}:void 0,width:B,xAxis:{labelRotation:U,ticks:X,visibility:j},yAxis:{hideLine:!0,ticks:A,visibility:D},yAxisRight:{hideLine:!0,ticks:A,visibility:N},children:[c!==null&&d.jsx(le.BandCursor,{offset:h(c),plot:l,size:m.bandwidth()}),d.jsx("g",{"aria-hidden":"true",children:u.slice(0,-1).map((e,t)=>{if(!e||!u[t+1])return null;const o=i(e.fim);return d.jsx("line",{className:x.default.connector,x1:h(t)+m.bandwidth(),x2:h(t+1),y1:o,y2:o},t)})}),a.map((e,t)=>{const o=u[t];if(!o)return null;const S=Math.min(i(o.inicio),i(o.fim)),Z=Math.abs(i(o.fim)-i(o.inicio));return d.jsx("path",{"aria-label":`${e.label}: ${T(e)}`,className:x.default.bar,d:se.roundedBarPath(h(t),S,m.bandwidth(),Z,[M,M,M,M]),fill:y[t],onMouseEnter:()=>F(t),onMouseLeave:()=>F(null)},t)}),q!=="hidden"&&a.map((e,t)=>{const o=u[t];if(!o)return null;const S=Math.min(i(o.inicio),i(o.fim));return d.jsx("text",{className:`${x.default.valueLabel} ${w.markShown(q,t===c)?"":x.default.valueLabelHidden}`,textAnchor:"middle",x:h(t)+m.bandwidth()/2,y:S-6,children:T(e)},t)})]})}exports.ChartWaterfall=me;
2
+ //# sourceMappingURL=ChartWaterfall.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartWaterfall.cjs","sources":["../../../../src/components/charts/ChartWaterfall/ChartWaterfall.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport {\n BandCursor,\n markShown,\n CartesianFrame,\n useCartesianLayout,\n chartHeight,\n roundedBarPath,\n useChartMetrics,\n useHoveredBand,\n useTweenedNumbers,\n valueLabelRoom,\n valueLabelsFor,\n type AxisLabelAngle,\n type AxisTick,\n type AxisVisibility,\n type MarkVisibility,\n type ChartHeight,\n} from '../core';\nimport { resolveSeriesColors, type SeriesIntent } from '../palette';\nimport { bandScale, domainOf, linearScale, ticksFor } from '../scales';\nimport { formatarNumero } from '../../../utils/formatters';\nimport styles from './ChartWaterfall.module.css';\n\nexport interface ChartWaterfallStep {\n color?: string;\n intent?: SeriesIntent;\n label: string;\n total?: boolean;\n value: number;\n}\n\nexport interface ChartWaterfallProps {\n emptyMessage?: string;\n /** Formato dos valores no balao. Sem ele, vale o `formatValue`: o eixo pode sair compacto e o balao, exato. */\n formatTooltipValue?: (value: number) => string;\n formatValue?: (value: number) => string;\n height?: ChartHeight;\n labelAngle?: AxisLabelAngle;\n /** Indice do passo sob o ponteiro, ou `null` ao sair dele. */\n onHoverStep?: (index: number | null) => void;\n /** Variacao acima de cada passo. Em `onHover`, so a do passo sob o ponteiro. */\n showDataLabels?: MarkVisibility;\n /** Balao com a variacao do passo sob o ponteiro e o acumulado ate ele. Desligue para montar o proprio `ChartTooltip`. */\n showTooltip?: boolean;\n steps: readonly ChartWaterfallStep[];\n title: string;\n xAxis?: AxisVisibility;\n yAxis?: AxisVisibility;\n yAxisRight?: AxisVisibility;\n}\n\ninterface Trecho {\n fim: number;\n inicio: number;\n}\n\n/**\n * Cada passo ocupa a faixa entre o acumulado anterior e o novo acumulado; o total parte do zero, porque\n * fecha a conta. Passo invalido e ausente: nao se desenha nem move o acumulado.\n */\nfunction trechosDe(steps: readonly ChartWaterfallStep[]): (Trecho | null)[] {\n let acumulado = 0;\n\n return steps.map((passo) => {\n if (!Number.isFinite(passo.value)) {\n return null;\n }\n\n const inicio = passo.total ? 0 : acumulado;\n const fim = inicio + passo.value;\n acumulado = fim;\n\n return { inicio, fim };\n });\n}\n\n/** Passo sem intencao declarada recebe a do seu sinal. Total e fechamento, nao aporte. */\nfunction intencaoDe(step: ChartWaterfallStep): SeriesIntent {\n if (step.intent) {\n return step.intent;\n }\n\n if (step.total) {\n return 'neutral';\n }\n\n return step.value < 0 ? 'negative' : 'positive';\n}\n\n/**\n * O sinal e do grafico, nao do formatador: ele formata a magnitude. Delegar o\n * sinal perderia a variacao com qualquer formatador que exiba apenas o valor.\n */\nfunction comSinal(value: number, formatValue: (value: number) => string) {\n if (value === 0) {\n return formatValue(0);\n }\n\n return `${value < 0 ? '-' : '+'}${formatValue(Math.abs(value))}`;\n}\n\nexport function ChartWaterfall({\n emptyMessage = 'Sem dados no período',\n formatTooltipValue,\n formatValue = formatarNumero,\n height = 280,\n labelAngle = 'auto',\n onHoverStep,\n showDataLabels = 'visible',\n showTooltip = true,\n steps,\n title,\n xAxis = 'visible',\n yAxis = 'visible',\n yAxisRight = 'hidden',\n}: ChartWaterfallProps) {\n const { font, height: alturaMedida, radius: raioDoCanto, ref, width } = useChartMetrics();\n const { fillHeight, value: alturaDoDesenho } = chartHeight(height, alturaMedida);\n const { hover: focarPasso, hovered: passoEmFoco } = useHoveredBand(onHoverStep);\n\n const trechos = useMemo(() => trechosDe(steps), [steps]);\n\n const cores = useMemo(\n () => resolveSeriesColors(steps.map((passo) => ({ color: passo.color, intent: intencaoDe(passo) }))),\n [steps],\n );\n\n const dominio = useMemo(\n () => domainOf(trechos.flatMap((trecho) => (trecho ? [trecho.inicio, trecho.fim] : []))),\n [trechos],\n );\n\n const rotulosDeValor = valueLabelsFor(dominio, alturaDoDesenho, formatValue);\n\n const { axisReveal, margins, plot, rotation } = useCartesianLayout({\n bottomLabels: steps.map((passo) => passo.label),\n font,\n height: alturaDoDesenho,\n labelAngle,\n leftLabels: rotulosDeValor,\n rightLabels: rotulosDeValor,\n topRoom: showDataLabels === 'hidden' ? 0 : valueLabelRoom(font),\n width,\n xAxis,\n yAxis,\n yAxisRight,\n });\n\n // A faixa e indexada pela posicao, nao pelo rotulo: numa sequencia de passos o\n // mesmo rotulo pode repetir, e a escala categorica funde dominios iguais.\n const escalaPassos = useMemo(\n () => bandScale({ domain: steps.map((_, indice) => String(indice)), range: [0, plot.width] }),\n [plot.width, steps],\n );\n\n const faixaDe = (indice: number) => escalaPassos(String(indice)) ?? 0;\n\n // A escala alvo fixa as marcas; a animada posiciona o desenho. Sem separar as\n // duas, as marcas exibiriam valores quebrados durante a transicao.\n const escalaAlvo = useMemo(\n () => linearScale({ domain: dominio, range: [plot.height, 0] }),\n [dominio, plot.height],\n );\n\n const [minimo, maximo] = useTweenedNumbers(escalaAlvo.domain());\n\n const escalaValores = useMemo(\n () => linearScale({ domain: { min: minimo, max: maximo }, nice: false, range: [plot.height, 0] }),\n [maximo, minimo, plot.height],\n );\n\n const marcasDeValor = ticksFor(escalaAlvo, plot.height);\n\n const marcasPassos: AxisTick[] = steps.map((passo, indice) => ({\n label: passo.label,\n position: faixaDe(indice) + escalaPassos.bandwidth() / 2,\n }));\n\n const marcasValor: AxisTick[] = marcasDeValor.map((valor) => ({\n label: formatValue(valor),\n position: escalaValores(valor),\n }));\n\n function rotuloDe(passo: ChartWaterfallStep) {\n return passo.total ? formatValue(passo.value) : comSinal(passo.value, formatValue);\n }\n\n /** O passo diz quanto mudou; o acumulado, onde a conta ficou. O total ja e o proprio acumulado. */\n function linhasDoBalao(indice: number | null) {\n if (indice === null || !trechos[indice]) {\n return [];\n }\n\n const passo = steps[indice];\n\n if (passo.total) {\n return [{ color: cores[indice], label: 'Total', values: [passo.value] }];\n }\n\n return [\n { color: cores[indice], format: (valor: number) => comSinal(valor, formatTooltipValue ?? formatValue), label: 'Variação', values: [passo.value] },\n { label: 'Acumulado', values: [trechos[indice].fim] },\n ];\n }\n\n return (\n <CartesianFrame\n axisReveal={axisReveal}\n containerRef={ref}\n empty={steps.length === 0}\n emptyMessage={emptyMessage}\n grid={[\n {\n baseline: escalaValores(0),\n lines: marcasDeValor.map((valor) => escalaValores(valor)),\n orientation: 'horizontal',\n },\n ]}\n fillHeight={fillHeight}\n height={alturaDoDesenho}\n legendPosition=\"none\"\n margins={margins}\n plot={plot}\n title={title}\n tooltip={\n showTooltip\n ? {\n columns: [{ format: formatTooltipValue ?? formatValue }],\n computed: 'none',\n rows: linhasDoBalao(passoEmFoco),\n title: passoEmFoco === null ? undefined : steps[passoEmFoco]?.label,\n }\n : undefined\n }\n width={width}\n xAxis={{ labelRotation: rotation, ticks: marcasPassos, visibility: xAxis }}\n yAxis={{ hideLine: true, ticks: marcasValor, visibility: yAxis }}\n yAxisRight={{ hideLine: true, ticks: marcasValor, visibility: yAxisRight }}\n >\n {passoEmFoco !== null && (\n <BandCursor offset={faixaDe(passoEmFoco)} plot={plot} size={escalaPassos.bandwidth()} />\n )}\n\n <g aria-hidden=\"true\">\n {trechos.slice(0, -1).map((trecho, indice) => {\n if (!trecho || !trechos[indice + 1]) {\n return null;\n }\n\n const nivel = escalaValores(trecho.fim);\n\n return (\n <line\n className={styles.connector}\n key={indice}\n x1={faixaDe(indice) + escalaPassos.bandwidth()}\n x2={faixaDe(indice + 1)}\n y1={nivel}\n y2={nivel}\n />\n );\n })}\n </g>\n\n {steps.map((passo, indice) => {\n const trecho = trechos[indice];\n\n if (!trecho) {\n return null;\n }\n\n const topo = Math.min(escalaValores(trecho.inicio), escalaValores(trecho.fim));\n const altura = Math.abs(escalaValores(trecho.fim) - escalaValores(trecho.inicio));\n\n return (\n <path\n aria-label={`${passo.label}: ${rotuloDe(passo)}`}\n className={styles.bar}\n d={roundedBarPath(faixaDe(indice), topo, escalaPassos.bandwidth(), altura, [\n raioDoCanto,\n raioDoCanto,\n raioDoCanto,\n raioDoCanto,\n ])}\n fill={cores[indice]}\n key={indice}\n onMouseEnter={() => focarPasso(indice)}\n onMouseLeave={() => focarPasso(null)}\n />\n );\n })}\n\n {showDataLabels !== 'hidden' &&\n steps.map((passo, indice) => {\n const trecho = trechos[indice];\n\n if (!trecho) {\n return null;\n }\n\n const topo = Math.min(escalaValores(trecho.inicio), escalaValores(trecho.fim));\n\n return (\n <text\n className={`${styles.valueLabel} ${markShown(showDataLabels, indice === passoEmFoco) ? '' : styles.valueLabelHidden}`}\n key={indice}\n textAnchor=\"middle\"\n x={faixaDe(indice) + escalaPassos.bandwidth() / 2}\n y={topo - 6}\n >\n {rotuloDe(passo)}\n </text>\n );\n })}\n </CartesianFrame>\n );\n}\n"],"names":["trechosDe","steps","acumulado","passo","inicio","fim","intencaoDe","step","comSinal","value","formatValue","ChartWaterfall","emptyMessage","formatTooltipValue","formatarNumero","height","labelAngle","onHoverStep","showDataLabels","showTooltip","title","xAxis","yAxis","yAxisRight","font","alturaMedida","raioDoCanto","ref","width","useChartMetrics","fillHeight","alturaDoDesenho","chartHeight","focarPasso","passoEmFoco","useHoveredBand","trechos","useMemo","cores","resolveSeriesColors","dominio","domainOf","trecho","rotulosDeValor","valueLabelsFor","axisReveal","margins","plot","rotation","useCartesianLayout","valueLabelRoom","escalaPassos","bandScale","_","indice","faixaDe","escalaAlvo","linearScale","minimo","maximo","useTweenedNumbers","escalaValores","marcasDeValor","ticksFor","marcasPassos","marcasValor","valor","rotuloDe","linhasDoBalao","jsxs","CartesianFrame","_a","jsx","BandCursor","nivel","styles","topo","altura","roundedBarPath","markShown"],"mappings":"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"}
@@ -0,0 +1,188 @@
1
+ import { jsxs as Z, jsx as d } from "react/jsx-runtime";
2
+ import { useMemo as f } from "react";
3
+ import p from "./ChartWaterfall.module.css.js";
4
+ import { useChartMetrics as V } from "../core/useChartMetrics.js";
5
+ import { useHoveredBand as oo } from "../core/useHoveredBand.js";
6
+ import { resolveSeriesColors as to } from "../palette/seriesColor.js";
7
+ import { domainOf as io, bandScale as ro, linearScale as E, ticksFor as eo } from "../scales/scales.js";
8
+ import { valueLabelsFor as no, markShown as ao, chartHeight as lo } from "../core/cartesianLayout.js";
9
+ import { useCartesianLayout as mo } from "../core/useCartesianLayout.js";
10
+ import { valueLabelRoom as uo } from "../core/spacing.js";
11
+ import { useTweenedNumbers as so } from "../core/useTweenedNumbers.js";
12
+ import { formatarNumero as co } from "../../../utils/formatters/formatarNumero.js";
13
+ import { CartesianFrame as ho } from "../core/CartesianFrame.js";
14
+ import { BandCursor as fo } from "../core/BandCursor.js";
15
+ import { roundedBarPath as bo } from "../core/shapes.js";
16
+ function vo(e) {
17
+ let m = 0;
18
+ return e.map((n) => {
19
+ if (!Number.isFinite(n.value))
20
+ return null;
21
+ const b = n.total ? 0 : m, v = b + n.value;
22
+ return m = v, { inicio: b, fim: v };
23
+ });
24
+ }
25
+ function go(e) {
26
+ return e.intent ? e.intent : e.total ? "neutral" : e.value < 0 ? "negative" : "positive";
27
+ }
28
+ function O(e, m) {
29
+ return e === 0 ? m(0) : `${e < 0 ? "-" : "+"}${m(Math.abs(e))}`;
30
+ }
31
+ function Bo({
32
+ emptyMessage: e = "Sem dados no período",
33
+ formatTooltipValue: m,
34
+ formatValue: n = co,
35
+ height: b = 280,
36
+ labelAngle: v = "auto",
37
+ onHoverStep: T,
38
+ showDataLabels: x = "visible",
39
+ showTooltip: W = !0,
40
+ steps: r,
41
+ title: _,
42
+ xAxis: D = "visible",
43
+ yAxis: S = "visible",
44
+ yAxisRight: C = "hidden"
45
+ }) {
46
+ var z;
47
+ const { font: N, height: q, radius: g, ref: G, width: $ } = V(), { fillHeight: I, value: M } = lo(b, q), { hover: k, hovered: s } = oo(T), u = f(() => vo(r), [r]), w = f(
48
+ () => to(r.map((o) => ({ color: o.color, intent: go(o) }))),
49
+ [r]
50
+ ), y = f(
51
+ () => io(u.flatMap((o) => o ? [o.inicio, o.fim] : [])),
52
+ [u]
53
+ ), F = no(y, M, n), { axisReveal: J, margins: K, plot: l, rotation: Q } = mo({
54
+ bottomLabels: r.map((o) => o.label),
55
+ font: N,
56
+ height: M,
57
+ labelAngle: v,
58
+ leftLabels: F,
59
+ rightLabels: F,
60
+ topRoom: x === "hidden" ? 0 : uo(N),
61
+ width: $,
62
+ xAxis: D,
63
+ yAxis: S,
64
+ yAxisRight: C
65
+ }), c = f(
66
+ () => ro({ domain: r.map((o, t) => String(t)), range: [0, l.width] }),
67
+ [l.width, r]
68
+ ), h = (o) => c(String(o)) ?? 0, P = f(
69
+ () => E({ domain: y, range: [l.height, 0] }),
70
+ [y, l.height]
71
+ ), [R, B] = so(P.domain()), a = f(
72
+ () => E({ domain: { min: R, max: B }, nice: !1, range: [l.height, 0] }),
73
+ [B, R, l.height]
74
+ ), H = eo(P, l.height), U = r.map((o, t) => ({
75
+ label: o.label,
76
+ position: h(t) + c.bandwidth() / 2
77
+ })), A = H.map((o) => ({
78
+ label: n(o),
79
+ position: a(o)
80
+ }));
81
+ function j(o) {
82
+ return o.total ? n(o.value) : O(o.value, n);
83
+ }
84
+ function X(o) {
85
+ if (o === null || !u[o])
86
+ return [];
87
+ const t = r[o];
88
+ return t.total ? [{ color: w[o], label: "Total", values: [t.value] }] : [
89
+ { color: w[o], format: (i) => O(i, m ?? n), label: "Variação", values: [t.value] },
90
+ { label: "Acumulado", values: [u[o].fim] }
91
+ ];
92
+ }
93
+ return /* @__PURE__ */ Z(
94
+ ho,
95
+ {
96
+ axisReveal: J,
97
+ containerRef: G,
98
+ empty: r.length === 0,
99
+ emptyMessage: e,
100
+ grid: [
101
+ {
102
+ baseline: a(0),
103
+ lines: H.map((o) => a(o)),
104
+ orientation: "horizontal"
105
+ }
106
+ ],
107
+ fillHeight: I,
108
+ height: M,
109
+ legendPosition: "none",
110
+ margins: K,
111
+ plot: l,
112
+ title: _,
113
+ tooltip: W ? {
114
+ columns: [{ format: m ?? n }],
115
+ computed: "none",
116
+ rows: X(s),
117
+ title: s === null || (z = r[s]) == null ? void 0 : z.label
118
+ } : void 0,
119
+ width: $,
120
+ xAxis: { labelRotation: Q, ticks: U, visibility: D },
121
+ yAxis: { hideLine: !0, ticks: A, visibility: S },
122
+ yAxisRight: { hideLine: !0, ticks: A, visibility: C },
123
+ children: [
124
+ s !== null && /* @__PURE__ */ d(fo, { offset: h(s), plot: l, size: c.bandwidth() }),
125
+ /* @__PURE__ */ d("g", { "aria-hidden": "true", children: u.slice(0, -1).map((o, t) => {
126
+ if (!o || !u[t + 1])
127
+ return null;
128
+ const i = a(o.fim);
129
+ return /* @__PURE__ */ d(
130
+ "line",
131
+ {
132
+ className: p.connector,
133
+ x1: h(t) + c.bandwidth(),
134
+ x2: h(t + 1),
135
+ y1: i,
136
+ y2: i
137
+ },
138
+ t
139
+ );
140
+ }) }),
141
+ r.map((o, t) => {
142
+ const i = u[t];
143
+ if (!i)
144
+ return null;
145
+ const L = Math.min(a(i.inicio), a(i.fim)), Y = Math.abs(a(i.fim) - a(i.inicio));
146
+ return /* @__PURE__ */ d(
147
+ "path",
148
+ {
149
+ "aria-label": `${o.label}: ${j(o)}`,
150
+ className: p.bar,
151
+ d: bo(h(t), L, c.bandwidth(), Y, [
152
+ g,
153
+ g,
154
+ g,
155
+ g
156
+ ]),
157
+ fill: w[t],
158
+ onMouseEnter: () => k(t),
159
+ onMouseLeave: () => k(null)
160
+ },
161
+ t
162
+ );
163
+ }),
164
+ x !== "hidden" && r.map((o, t) => {
165
+ const i = u[t];
166
+ if (!i)
167
+ return null;
168
+ const L = Math.min(a(i.inicio), a(i.fim));
169
+ return /* @__PURE__ */ d(
170
+ "text",
171
+ {
172
+ className: `${p.valueLabel} ${ao(x, t === s) ? "" : p.valueLabelHidden}`,
173
+ textAnchor: "middle",
174
+ x: h(t) + c.bandwidth() / 2,
175
+ y: L - 6,
176
+ children: j(o)
177
+ },
178
+ t
179
+ );
180
+ })
181
+ ]
182
+ }
183
+ );
184
+ }
185
+ export {
186
+ Bo as ChartWaterfall
187
+ };
188
+ //# sourceMappingURL=ChartWaterfall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartWaterfall.js","sources":["../../../../src/components/charts/ChartWaterfall/ChartWaterfall.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport {\n BandCursor,\n markShown,\n CartesianFrame,\n useCartesianLayout,\n chartHeight,\n roundedBarPath,\n useChartMetrics,\n useHoveredBand,\n useTweenedNumbers,\n valueLabelRoom,\n valueLabelsFor,\n type AxisLabelAngle,\n type AxisTick,\n type AxisVisibility,\n type MarkVisibility,\n type ChartHeight,\n} from '../core';\nimport { resolveSeriesColors, type SeriesIntent } from '../palette';\nimport { bandScale, domainOf, linearScale, ticksFor } from '../scales';\nimport { formatarNumero } from '../../../utils/formatters';\nimport styles from './ChartWaterfall.module.css';\n\nexport interface ChartWaterfallStep {\n color?: string;\n intent?: SeriesIntent;\n label: string;\n total?: boolean;\n value: number;\n}\n\nexport interface ChartWaterfallProps {\n emptyMessage?: string;\n /** Formato dos valores no balao. Sem ele, vale o `formatValue`: o eixo pode sair compacto e o balao, exato. */\n formatTooltipValue?: (value: number) => string;\n formatValue?: (value: number) => string;\n height?: ChartHeight;\n labelAngle?: AxisLabelAngle;\n /** Indice do passo sob o ponteiro, ou `null` ao sair dele. */\n onHoverStep?: (index: number | null) => void;\n /** Variacao acima de cada passo. Em `onHover`, so a do passo sob o ponteiro. */\n showDataLabels?: MarkVisibility;\n /** Balao com a variacao do passo sob o ponteiro e o acumulado ate ele. Desligue para montar o proprio `ChartTooltip`. */\n showTooltip?: boolean;\n steps: readonly ChartWaterfallStep[];\n title: string;\n xAxis?: AxisVisibility;\n yAxis?: AxisVisibility;\n yAxisRight?: AxisVisibility;\n}\n\ninterface Trecho {\n fim: number;\n inicio: number;\n}\n\n/**\n * Cada passo ocupa a faixa entre o acumulado anterior e o novo acumulado; o total parte do zero, porque\n * fecha a conta. Passo invalido e ausente: nao se desenha nem move o acumulado.\n */\nfunction trechosDe(steps: readonly ChartWaterfallStep[]): (Trecho | null)[] {\n let acumulado = 0;\n\n return steps.map((passo) => {\n if (!Number.isFinite(passo.value)) {\n return null;\n }\n\n const inicio = passo.total ? 0 : acumulado;\n const fim = inicio + passo.value;\n acumulado = fim;\n\n return { inicio, fim };\n });\n}\n\n/** Passo sem intencao declarada recebe a do seu sinal. Total e fechamento, nao aporte. */\nfunction intencaoDe(step: ChartWaterfallStep): SeriesIntent {\n if (step.intent) {\n return step.intent;\n }\n\n if (step.total) {\n return 'neutral';\n }\n\n return step.value < 0 ? 'negative' : 'positive';\n}\n\n/**\n * O sinal e do grafico, nao do formatador: ele formata a magnitude. Delegar o\n * sinal perderia a variacao com qualquer formatador que exiba apenas o valor.\n */\nfunction comSinal(value: number, formatValue: (value: number) => string) {\n if (value === 0) {\n return formatValue(0);\n }\n\n return `${value < 0 ? '-' : '+'}${formatValue(Math.abs(value))}`;\n}\n\nexport function ChartWaterfall({\n emptyMessage = 'Sem dados no período',\n formatTooltipValue,\n formatValue = formatarNumero,\n height = 280,\n labelAngle = 'auto',\n onHoverStep,\n showDataLabels = 'visible',\n showTooltip = true,\n steps,\n title,\n xAxis = 'visible',\n yAxis = 'visible',\n yAxisRight = 'hidden',\n}: ChartWaterfallProps) {\n const { font, height: alturaMedida, radius: raioDoCanto, ref, width } = useChartMetrics();\n const { fillHeight, value: alturaDoDesenho } = chartHeight(height, alturaMedida);\n const { hover: focarPasso, hovered: passoEmFoco } = useHoveredBand(onHoverStep);\n\n const trechos = useMemo(() => trechosDe(steps), [steps]);\n\n const cores = useMemo(\n () => resolveSeriesColors(steps.map((passo) => ({ color: passo.color, intent: intencaoDe(passo) }))),\n [steps],\n );\n\n const dominio = useMemo(\n () => domainOf(trechos.flatMap((trecho) => (trecho ? [trecho.inicio, trecho.fim] : []))),\n [trechos],\n );\n\n const rotulosDeValor = valueLabelsFor(dominio, alturaDoDesenho, formatValue);\n\n const { axisReveal, margins, plot, rotation } = useCartesianLayout({\n bottomLabels: steps.map((passo) => passo.label),\n font,\n height: alturaDoDesenho,\n labelAngle,\n leftLabels: rotulosDeValor,\n rightLabels: rotulosDeValor,\n topRoom: showDataLabels === 'hidden' ? 0 : valueLabelRoom(font),\n width,\n xAxis,\n yAxis,\n yAxisRight,\n });\n\n // A faixa e indexada pela posicao, nao pelo rotulo: numa sequencia de passos o\n // mesmo rotulo pode repetir, e a escala categorica funde dominios iguais.\n const escalaPassos = useMemo(\n () => bandScale({ domain: steps.map((_, indice) => String(indice)), range: [0, plot.width] }),\n [plot.width, steps],\n );\n\n const faixaDe = (indice: number) => escalaPassos(String(indice)) ?? 0;\n\n // A escala alvo fixa as marcas; a animada posiciona o desenho. Sem separar as\n // duas, as marcas exibiriam valores quebrados durante a transicao.\n const escalaAlvo = useMemo(\n () => linearScale({ domain: dominio, range: [plot.height, 0] }),\n [dominio, plot.height],\n );\n\n const [minimo, maximo] = useTweenedNumbers(escalaAlvo.domain());\n\n const escalaValores = useMemo(\n () => linearScale({ domain: { min: minimo, max: maximo }, nice: false, range: [plot.height, 0] }),\n [maximo, minimo, plot.height],\n );\n\n const marcasDeValor = ticksFor(escalaAlvo, plot.height);\n\n const marcasPassos: AxisTick[] = steps.map((passo, indice) => ({\n label: passo.label,\n position: faixaDe(indice) + escalaPassos.bandwidth() / 2,\n }));\n\n const marcasValor: AxisTick[] = marcasDeValor.map((valor) => ({\n label: formatValue(valor),\n position: escalaValores(valor),\n }));\n\n function rotuloDe(passo: ChartWaterfallStep) {\n return passo.total ? formatValue(passo.value) : comSinal(passo.value, formatValue);\n }\n\n /** O passo diz quanto mudou; o acumulado, onde a conta ficou. O total ja e o proprio acumulado. */\n function linhasDoBalao(indice: number | null) {\n if (indice === null || !trechos[indice]) {\n return [];\n }\n\n const passo = steps[indice];\n\n if (passo.total) {\n return [{ color: cores[indice], label: 'Total', values: [passo.value] }];\n }\n\n return [\n { color: cores[indice], format: (valor: number) => comSinal(valor, formatTooltipValue ?? formatValue), label: 'Variação', values: [passo.value] },\n { label: 'Acumulado', values: [trechos[indice].fim] },\n ];\n }\n\n return (\n <CartesianFrame\n axisReveal={axisReveal}\n containerRef={ref}\n empty={steps.length === 0}\n emptyMessage={emptyMessage}\n grid={[\n {\n baseline: escalaValores(0),\n lines: marcasDeValor.map((valor) => escalaValores(valor)),\n orientation: 'horizontal',\n },\n ]}\n fillHeight={fillHeight}\n height={alturaDoDesenho}\n legendPosition=\"none\"\n margins={margins}\n plot={plot}\n title={title}\n tooltip={\n showTooltip\n ? {\n columns: [{ format: formatTooltipValue ?? formatValue }],\n computed: 'none',\n rows: linhasDoBalao(passoEmFoco),\n title: passoEmFoco === null ? undefined : steps[passoEmFoco]?.label,\n }\n : undefined\n }\n width={width}\n xAxis={{ labelRotation: rotation, ticks: marcasPassos, visibility: xAxis }}\n yAxis={{ hideLine: true, ticks: marcasValor, visibility: yAxis }}\n yAxisRight={{ hideLine: true, ticks: marcasValor, visibility: yAxisRight }}\n >\n {passoEmFoco !== null && (\n <BandCursor offset={faixaDe(passoEmFoco)} plot={plot} size={escalaPassos.bandwidth()} />\n )}\n\n <g aria-hidden=\"true\">\n {trechos.slice(0, -1).map((trecho, indice) => {\n if (!trecho || !trechos[indice + 1]) {\n return null;\n }\n\n const nivel = escalaValores(trecho.fim);\n\n return (\n <line\n className={styles.connector}\n key={indice}\n x1={faixaDe(indice) + escalaPassos.bandwidth()}\n x2={faixaDe(indice + 1)}\n y1={nivel}\n y2={nivel}\n />\n );\n })}\n </g>\n\n {steps.map((passo, indice) => {\n const trecho = trechos[indice];\n\n if (!trecho) {\n return null;\n }\n\n const topo = Math.min(escalaValores(trecho.inicio), escalaValores(trecho.fim));\n const altura = Math.abs(escalaValores(trecho.fim) - escalaValores(trecho.inicio));\n\n return (\n <path\n aria-label={`${passo.label}: ${rotuloDe(passo)}`}\n className={styles.bar}\n d={roundedBarPath(faixaDe(indice), topo, escalaPassos.bandwidth(), altura, [\n raioDoCanto,\n raioDoCanto,\n raioDoCanto,\n raioDoCanto,\n ])}\n fill={cores[indice]}\n key={indice}\n onMouseEnter={() => focarPasso(indice)}\n onMouseLeave={() => focarPasso(null)}\n />\n );\n })}\n\n {showDataLabels !== 'hidden' &&\n steps.map((passo, indice) => {\n const trecho = trechos[indice];\n\n if (!trecho) {\n return null;\n }\n\n const topo = Math.min(escalaValores(trecho.inicio), escalaValores(trecho.fim));\n\n return (\n <text\n className={`${styles.valueLabel} ${markShown(showDataLabels, indice === passoEmFoco) ? '' : styles.valueLabelHidden}`}\n key={indice}\n textAnchor=\"middle\"\n x={faixaDe(indice) + escalaPassos.bandwidth() / 2}\n y={topo - 6}\n >\n {rotuloDe(passo)}\n </text>\n );\n })}\n </CartesianFrame>\n );\n}\n"],"names":["trechosDe","steps","acumulado","passo","inicio","fim","intencaoDe","step","comSinal","value","formatValue","ChartWaterfall","emptyMessage","formatTooltipValue","formatarNumero","height","labelAngle","onHoverStep","showDataLabels","showTooltip","title","xAxis","yAxis","yAxisRight","font","alturaMedida","raioDoCanto","ref","width","useChartMetrics","fillHeight","alturaDoDesenho","chartHeight","focarPasso","passoEmFoco","useHoveredBand","trechos","useMemo","cores","resolveSeriesColors","dominio","domainOf","trecho","rotulosDeValor","valueLabelsFor","axisReveal","margins","plot","rotation","useCartesianLayout","valueLabelRoom","escalaPassos","bandScale","_","indice","faixaDe","escalaAlvo","linearScale","minimo","maximo","useTweenedNumbers","escalaValores","marcasDeValor","ticksFor","marcasPassos","marcasValor","valor","rotuloDe","linhasDoBalao","jsxs","CartesianFrame","_a","jsx","BandCursor","nivel","styles","topo","altura","roundedBarPath","markShown"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="_bar_29l4p_1",l="_connector_29l4p_6",a="_valueLabel_29l4p_12 _valueLabel_yf6oe_103",n="_valueLabelHidden_29l4p_16 _valueLabelHidden_yf6oe_116",o={bar:e,connector:l,valueLabel:a,valueLabelHidden:n};exports.bar=e;exports.connector=l;exports.default=o;exports.valueLabel=a;exports.valueLabelHidden=n;
2
+ //# sourceMappingURL=ChartWaterfall.module.css.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartWaterfall.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ const e = "_bar_29l4p_1", l = "_connector_29l4p_6", a = "_valueLabel_29l4p_12 _valueLabel_yf6oe_103", _ = "_valueLabelHidden_29l4p_16 _valueLabelHidden_yf6oe_116", n = {
2
+ bar: e,
3
+ connector: l,
4
+ valueLabel: a,
5
+ valueLabelHidden: _
6
+ };
7
+ export {
8
+ e as bar,
9
+ l as connector,
10
+ n as default,
11
+ a as valueLabel,
12
+ _ as valueLabelHidden
13
+ };
14
+ //# sourceMappingURL=ChartWaterfall.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartWaterfall.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),t=require("./spacing.cjs"),a=require("./Chart.module.css.cjs"),c={bottom:"middle",left:"end",right:"start"};function A({hideLine:r=!1,labelRotation:i=0,length:d,orientation:n,ticks:l}){const e=n==="bottom",x=n==="left"?-t.CHART_LABEL_OFFSET:t.CHART_LABEL_OFFSET;return o.jsxs("g",{"aria-hidden":"true",className:a.default.axis,children:[!r&&o.jsx("line",{className:a.default.axisLine,x1:0,x2:e?d:0,y1:0,y2:e?0:d}),l.map((s,u)=>o.jsx("text",{className:a.default.axisLabel,dominantBaseline:e?"hanging":"middle",textAnchor:e&&i!==0?"end":c[n],transform:e&&i!==0?`rotate(${-i} ${s.position} ${t.CHART_LABEL_OFFSET})`:void 0,x:e?s.position:x,y:e?t.CHART_LABEL_OFFSET:s.position,children:s.label},u))]})}exports.Axis=A;
2
+ //# sourceMappingURL=Axis.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Axis.cjs","sources":["../../../../src/components/charts/core/Axis.tsx"],"sourcesContent":["import type { AxisLabelRotation } from './cartesianLayout';\nimport { CHART_LABEL_OFFSET } from './spacing';\nimport styles from './Chart.module.css';\n\nexport type AxisOrientation = 'bottom' | 'left' | 'right';\n\nexport interface AxisTick {\n label: string;\n position: number;\n}\n\nexport interface AxisProps {\n hideLine?: boolean;\n labelRotation?: AxisLabelRotation;\n length: number;\n orientation: AxisOrientation;\n ticks: readonly AxisTick[];\n}\n\nconst ANCORA: Record<AxisOrientation, 'start' | 'end' | 'middle'> = {\n bottom: 'middle',\n left: 'end',\n right: 'start',\n};\n\n/**\n * Eixo de um grafico cartesiano. Recebe as marcas ja posicionadas: a conversao\n * de valor em pixel pertence a escala, nao ao desenho.\n */\nexport function Axis({ hideLine = false, labelRotation = 0, length, orientation, ticks }: AxisProps) {\n const deBaixo = orientation === 'bottom';\n const afastamento = orientation === 'left' ? -CHART_LABEL_OFFSET : CHART_LABEL_OFFSET;\n\n return (\n <g aria-hidden=\"true\" className={styles.axis}>\n {!hideLine && (\n <line\n className={styles.axisLine}\n x1={0}\n x2={deBaixo ? length : 0}\n y1={0}\n y2={deBaixo ? 0 : length}\n />\n )}\n {ticks.map((marca, indice) => (\n <text\n className={styles.axisLabel}\n dominantBaseline={deBaixo ? 'hanging' : 'middle'}\n key={indice}\n textAnchor={deBaixo && labelRotation !== 0 ? 'end' : ANCORA[orientation]}\n transform={\n deBaixo && labelRotation !== 0\n ? `rotate(${-labelRotation} ${marca.position} ${CHART_LABEL_OFFSET})`\n : undefined\n }\n x={deBaixo ? marca.position : afastamento}\n y={deBaixo ? CHART_LABEL_OFFSET : marca.position}\n >\n {marca.label}\n </text>\n ))}\n </g>\n );\n}\n"],"names":["ANCORA","Axis","hideLine","labelRotation","length","orientation","ticks","deBaixo","afastamento","CHART_LABEL_OFFSET","styles","jsx","marca","indice"],"mappings":"oLAmBMA,EAA8D,CAClE,OAAQ,SACR,KAAM,MACN,MAAO,OACT,EAMO,SAASC,EAAK,CAAE,SAAAC,EAAW,GAAO,cAAAC,EAAgB,EAAG,OAAAC,EAAQ,YAAAC,EAAa,MAAAC,GAAoB,CACnG,MAAMC,EAAUF,IAAgB,SAC1BG,EAAcH,IAAgB,OAAS,CAACI,EAAAA,mBAAqBA,EAAAA,mBAEnE,cACG,IAAA,CAAE,cAAY,OAAO,UAAWC,EAAAA,QAAO,KACrC,SAAA,CAAA,CAACR,GACAS,EAAAA,IAAC,OAAA,CACC,UAAWD,EAAAA,QAAO,SAClB,GAAI,EACJ,GAAIH,EAAUH,EAAS,EACvB,GAAI,EACJ,GAAIG,EAAU,EAAIH,CAAA,CAAA,EAGrBE,EAAM,IAAI,CAACM,EAAOC,IACjBF,EAAAA,IAAC,OAAA,CACC,UAAWD,EAAAA,QAAO,UAClB,iBAAkBH,EAAU,UAAY,SAExC,WAAYA,GAAWJ,IAAkB,EAAI,MAAQH,EAAOK,CAAW,EACvE,UACEE,GAAWJ,IAAkB,EACzB,UAAU,CAACA,CAAa,IAAIS,EAAM,QAAQ,IAAIH,EAAAA,kBAAkB,IAChE,OAEN,EAAGF,EAAUK,EAAM,SAAWJ,EAC9B,EAAGD,EAAUE,qBAAqBG,EAAM,SAEvC,SAAAA,EAAM,KAAA,EAVFC,CAAA,CAYR,CAAA,EACH,CAEJ"}
@@ -0,0 +1,40 @@
1
+ import { jsxs as f, jsx as r } from "react/jsx-runtime";
2
+ import { CHART_LABEL_OFFSET as e } from "./spacing.js";
3
+ import n from "./Chart.module.css.js";
4
+ const p = {
5
+ bottom: "middle",
6
+ left: "end",
7
+ right: "start"
8
+ };
9
+ function y({ hideLine: a = !1, labelRotation: i = 0, length: m, orientation: o, ticks: d }) {
10
+ const s = o === "bottom", x = o === "left" ? -e : e;
11
+ return /* @__PURE__ */ f("g", { "aria-hidden": "true", className: n.axis, children: [
12
+ !a && /* @__PURE__ */ r(
13
+ "line",
14
+ {
15
+ className: n.axisLine,
16
+ x1: 0,
17
+ x2: s ? m : 0,
18
+ y1: 0,
19
+ y2: s ? 0 : m
20
+ }
21
+ ),
22
+ d.map((t, l) => /* @__PURE__ */ r(
23
+ "text",
24
+ {
25
+ className: n.axisLabel,
26
+ dominantBaseline: s ? "hanging" : "middle",
27
+ textAnchor: s && i !== 0 ? "end" : p[o],
28
+ transform: s && i !== 0 ? `rotate(${-i} ${t.position} ${e})` : void 0,
29
+ x: s ? t.position : x,
30
+ y: s ? e : t.position,
31
+ children: t.label
32
+ },
33
+ l
34
+ ))
35
+ ] });
36
+ }
37
+ export {
38
+ y as Axis
39
+ };
40
+ //# sourceMappingURL=Axis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Axis.js","sources":["../../../../src/components/charts/core/Axis.tsx"],"sourcesContent":["import type { AxisLabelRotation } from './cartesianLayout';\nimport { CHART_LABEL_OFFSET } from './spacing';\nimport styles from './Chart.module.css';\n\nexport type AxisOrientation = 'bottom' | 'left' | 'right';\n\nexport interface AxisTick {\n label: string;\n position: number;\n}\n\nexport interface AxisProps {\n hideLine?: boolean;\n labelRotation?: AxisLabelRotation;\n length: number;\n orientation: AxisOrientation;\n ticks: readonly AxisTick[];\n}\n\nconst ANCORA: Record<AxisOrientation, 'start' | 'end' | 'middle'> = {\n bottom: 'middle',\n left: 'end',\n right: 'start',\n};\n\n/**\n * Eixo de um grafico cartesiano. Recebe as marcas ja posicionadas: a conversao\n * de valor em pixel pertence a escala, nao ao desenho.\n */\nexport function Axis({ hideLine = false, labelRotation = 0, length, orientation, ticks }: AxisProps) {\n const deBaixo = orientation === 'bottom';\n const afastamento = orientation === 'left' ? -CHART_LABEL_OFFSET : CHART_LABEL_OFFSET;\n\n return (\n <g aria-hidden=\"true\" className={styles.axis}>\n {!hideLine && (\n <line\n className={styles.axisLine}\n x1={0}\n x2={deBaixo ? length : 0}\n y1={0}\n y2={deBaixo ? 0 : length}\n />\n )}\n {ticks.map((marca, indice) => (\n <text\n className={styles.axisLabel}\n dominantBaseline={deBaixo ? 'hanging' : 'middle'}\n key={indice}\n textAnchor={deBaixo && labelRotation !== 0 ? 'end' : ANCORA[orientation]}\n transform={\n deBaixo && labelRotation !== 0\n ? `rotate(${-labelRotation} ${marca.position} ${CHART_LABEL_OFFSET})`\n : undefined\n }\n x={deBaixo ? marca.position : afastamento}\n y={deBaixo ? CHART_LABEL_OFFSET : marca.position}\n >\n {marca.label}\n </text>\n ))}\n </g>\n );\n}\n"],"names":["ANCORA","Axis","hideLine","labelRotation","length","orientation","ticks","deBaixo","afastamento","CHART_LABEL_OFFSET","styles","jsx","marca","indice"],"mappings":";;;AAmBA,MAAMA,IAA8D;AAAA,EAClE,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,OAAO;AACT;AAMO,SAASC,EAAK,EAAE,UAAAC,IAAW,IAAO,eAAAC,IAAgB,GAAG,QAAAC,GAAQ,aAAAC,GAAa,OAAAC,KAAoB;AACnG,QAAMC,IAAUF,MAAgB,UAC1BG,IAAcH,MAAgB,SAAS,CAACI,IAAqBA;AAEnE,2BACG,KAAA,EAAE,eAAY,QAAO,WAAWC,EAAO,MACrC,UAAA;AAAA,IAAA,CAACR,KACA,gBAAAS;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWD,EAAO;AAAA,QAClB,IAAI;AAAA,QACJ,IAAIH,IAAUH,IAAS;AAAA,QACvB,IAAI;AAAA,QACJ,IAAIG,IAAU,IAAIH;AAAA,MAAA;AAAA,IAAA;AAAA,IAGrBE,EAAM,IAAI,CAACM,GAAOC,MACjB,gBAAAF;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWD,EAAO;AAAA,QAClB,kBAAkBH,IAAU,YAAY;AAAA,QAExC,YAAYA,KAAWJ,MAAkB,IAAI,QAAQH,EAAOK,CAAW;AAAA,QACvE,WACEE,KAAWJ,MAAkB,IACzB,UAAU,CAACA,CAAa,IAAIS,EAAM,QAAQ,IAAIH,CAAkB,MAChE;AAAA,QAEN,GAAGF,IAAUK,EAAM,WAAWJ;AAAA,QAC9B,GAAGD,IAAUE,IAAqBG,EAAM;AAAA,QAEvC,UAAAA,EAAM;AAAA,MAAA;AAAA,MAVFC;AAAA,IAAA,CAYR;AAAA,EAAA,GACH;AAEJ;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react/jsx-runtime"),a=require("./Chart.module.css.cjs");function n({offset:e,orientation:u="vertical",plot:t,size:i}){const r=u==="vertical";return c.jsx("rect",{className:a.default.cursor,height:r?t.height:i,width:r?i:t.width,x:r?e:0,y:r?0:e})}exports.BandCursor=n;
2
+ //# sourceMappingURL=BandCursor.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BandCursor.cjs","sources":["../../../../src/components/charts/core/BandCursor.tsx"],"sourcesContent":["import type { ChartPlot } from './cartesianLayout';\nimport styles from './Chart.module.css';\n\nexport type BandOrientation = 'vertical' | 'horizontal';\n\nexport interface BandCursorProps {\n /** Comeco da faixa no eixo de categorias. */\n offset: number;\n orientation?: BandOrientation;\n plot: ChartPlot;\n /** Largura da faixa, que e a banda da escala de categorias. */\n size: number;\n}\n\n/**\n * Realce da faixa sob o ponteiro, atras das marcas. Na vertical ele e uma\n * coluna e na horizontal uma linha: so o eixo troca.\n */\nexport function BandCursor({ offset, orientation = 'vertical', plot, size }: BandCursorProps) {\n const vertical = orientation === 'vertical';\n\n return (\n <rect\n className={styles.cursor}\n height={vertical ? plot.height : size}\n width={vertical ? size : plot.width}\n x={vertical ? offset : 0}\n y={vertical ? 0 : offset}\n />\n );\n}\n"],"names":["BandCursor","offset","orientation","plot","size","vertical","jsx","styles"],"mappings":"yJAkBO,SAASA,EAAW,CAAE,OAAAC,EAAQ,YAAAC,EAAc,WAAY,KAAAC,EAAM,KAAAC,GAAyB,CAC5F,MAAMC,EAAWH,IAAgB,WAEjC,OACEI,EAAAA,IAAC,OAAA,CACC,UAAWC,EAAAA,QAAO,OAClB,OAAQF,EAAWF,EAAK,OAASC,EACjC,MAAOC,EAAWD,EAAOD,EAAK,MAC9B,EAAGE,EAAWJ,EAAS,EACvB,EAAGI,EAAW,EAAIJ,CAAA,CAAA,CAGxB"}
@@ -0,0 +1,19 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import a from "./Chart.module.css.js";
3
+ function m({ offset: t, orientation: e = "vertical", plot: i, size: c }) {
4
+ const r = e === "vertical";
5
+ return /* @__PURE__ */ o(
6
+ "rect",
7
+ {
8
+ className: a.cursor,
9
+ height: r ? i.height : c,
10
+ width: r ? c : i.width,
11
+ x: r ? t : 0,
12
+ y: r ? 0 : t
13
+ }
14
+ );
15
+ }
16
+ export {
17
+ m as BandCursor
18
+ };
19
+ //# sourceMappingURL=BandCursor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BandCursor.js","sources":["../../../../src/components/charts/core/BandCursor.tsx"],"sourcesContent":["import type { ChartPlot } from './cartesianLayout';\nimport styles from './Chart.module.css';\n\nexport type BandOrientation = 'vertical' | 'horizontal';\n\nexport interface BandCursorProps {\n /** Comeco da faixa no eixo de categorias. */\n offset: number;\n orientation?: BandOrientation;\n plot: ChartPlot;\n /** Largura da faixa, que e a banda da escala de categorias. */\n size: number;\n}\n\n/**\n * Realce da faixa sob o ponteiro, atras das marcas. Na vertical ele e uma\n * coluna e na horizontal uma linha: so o eixo troca.\n */\nexport function BandCursor({ offset, orientation = 'vertical', plot, size }: BandCursorProps) {\n const vertical = orientation === 'vertical';\n\n return (\n <rect\n className={styles.cursor}\n height={vertical ? plot.height : size}\n width={vertical ? size : plot.width}\n x={vertical ? offset : 0}\n y={vertical ? 0 : offset}\n />\n );\n}\n"],"names":["BandCursor","offset","orientation","plot","size","vertical","jsx","styles"],"mappings":";;AAkBO,SAASA,EAAW,EAAE,QAAAC,GAAQ,aAAAC,IAAc,YAAY,MAAAC,GAAM,MAAAC,KAAyB;AAC5F,QAAMC,IAAWH,MAAgB;AAEjC,SACE,gBAAAI;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAO;AAAA,MAClB,QAAQF,IAAWF,EAAK,SAASC;AAAA,MACjC,OAAOC,IAAWD,IAAOD,EAAK;AAAA,MAC9B,GAAGE,IAAWJ,IAAS;AAAA,MACvB,GAAGI,IAAW,IAAIJ;AAAA,IAAA;AAAA,EAAA;AAGxB;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),F=require("./Axis.cjs"),w=require("./ChartFrame.cjs"),A=require("./Grid.cjs"),f=require("./Chart.module.css.cjs");function a({axis:t,length:s,orientation:c,revealed:h}){const o=t.visibility??"visible";if(o==="hidden")return null;const d=o==="onHover",i=n.jsx(F.Axis,{hideLine:t.hideLine,labelRotation:t.labelRotation,length:s,orientation:c,ticks:t.ticks});return d?n.jsx("g",{className:`${f.default.dynamicAxis} ${h?f.default.dynamicAxisRevealed:""}`,children:i}):i}function k({axisReveal:t,children:s,containerRef:c,empty:h,emptyMessage:o,fillHeight:d,grid:i,height:j,legend:b,legendAlign:g,legendPosition:$,margins:m,onToggleSeries:q,plot:e,title:y,tooltip:C,width:L,xAxis:P,yAxis:E,yAxisRight:l}){const u=(t==null?void 0:t.revealed)??!1;return n.jsx(w.ChartFrame,{containerRef:c,empty:h,emptyMessage:o,fillHeight:d,height:j,legend:b,legendAlign:g,legendPosition:$,minLegendEntries:2,onPointerEnter:t==null?void 0:t.onPointerEnter,onPointerLeave:t==null?void 0:t.onPointerLeave,onToggleSeries:q,title:y,tooltip:C,width:L,children:n.jsxs("g",{transform:`translate(${m.left} ${m.top})`,children:[i==null?void 0:i.map(r=>n.jsx(A.Grid,{baseline:r.baseline,length:r.orientation==="horizontal"?e.width:e.height,lines:r.lines,orientation:r.orientation},r.orientation)),s,n.jsx("g",{transform:`translate(0 ${e.height})`,children:n.jsx(a,{axis:P,length:e.width,orientation:"bottom",revealed:u})}),n.jsx(a,{axis:E,length:e.height,orientation:"left",revealed:u}),l&&n.jsx("g",{transform:`translate(${e.width} 0)`,children:n.jsx(a,{axis:l,length:e.height,orientation:"right",revealed:u})})]})})}exports.CartesianFrame=k;
2
+ //# sourceMappingURL=CartesianFrame.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CartesianFrame.cjs","sources":["../../../../src/components/charts/core/CartesianFrame.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { Axis, type AxisOrientation, type AxisTick } from './Axis';\nimport { ChartFrame } from './ChartFrame';\nimport type { ChartLegendAlign, ChartLegendEntry, ChartLegendPosition } from './ChartLegend';\nimport type { ChartFrameProps } from './ChartFrame';\nimport { Grid, type GridOrientation } from './Grid';\nimport type { AxisLabelRotation, AxisVisibility, ChartMargins, ChartPlot } from './cartesianLayout';\nimport type { AxisReveal } from './useCartesianLayout';\nimport styles from './Chart.module.css';\n\nexport interface CartesianAxis {\n hideLine?: boolean;\n labelRotation?: AxisLabelRotation;\n ticks: readonly AxisTick[];\n visibility?: AxisVisibility;\n}\n\nexport interface CartesianGrid {\n baseline?: number;\n lines: readonly number[];\n orientation: GridOrientation;\n}\n\nexport interface CartesianFrameProps {\n /** Estado e gatilhos dos eixos `onHover`, vindos de `useCartesianLayout`. */\n axisReveal?: AxisReveal;\n children: ReactNode;\n containerRef: (node: HTMLElement | null) => void;\n empty: boolean;\n emptyMessage: string;\n fillHeight: boolean;\n grid?: readonly CartesianGrid[];\n height: number;\n legend?: readonly ChartLegendEntry[];\n legendAlign?: ChartLegendAlign;\n legendPosition: ChartLegendPosition;\n margins: ChartMargins;\n onToggleSeries?: (label: string) => void;\n plot: ChartPlot;\n title: string;\n tooltip?: ChartFrameProps['tooltip'];\n width: number;\n xAxis: CartesianAxis;\n yAxis: CartesianAxis;\n yAxisRight?: CartesianAxis;\n}\n\ninterface EixoProps {\n axis: CartesianAxis;\n length: number;\n orientation: AxisOrientation;\n revealed: boolean;\n}\n\n/** No modo `onHover` o eixo aparece enquanto o desenho encolhe para abrir a calha dele, e some na hora de sair. */\nfunction EixoDinamico({ axis, length, orientation, revealed }: EixoProps) {\n const visibility = axis.visibility ?? 'visible';\n\n if (visibility === 'hidden') {\n return null;\n }\n\n const dinamico = visibility === 'onHover';\n const eixo = (\n <Axis\n hideLine={axis.hideLine}\n labelRotation={axis.labelRotation}\n length={length}\n orientation={orientation}\n ticks={axis.ticks}\n />\n );\n\n if (!dinamico) {\n return eixo;\n }\n\n return <g className={`${styles.dynamicAxis} ${revealed ? styles.dynamicAxisRevealed : ''}`}>{eixo}</g>;\n}\n\n/**\n * Camada cartesiana sobre a moldura comum: grade, os dois eixos e as marcas,\n * todos dentro das margens ja calculadas a partir dos rotulos.\n */\nexport function CartesianFrame({\n axisReveal,\n children,\n containerRef,\n empty,\n emptyMessage,\n fillHeight,\n grid,\n height,\n legend,\n legendAlign,\n legendPosition,\n margins,\n onToggleSeries,\n plot,\n title,\n tooltip,\n width,\n xAxis,\n yAxis,\n yAxisRight,\n}: CartesianFrameProps) {\n const revealed = axisReveal?.revealed ?? false;\n\n return (\n <ChartFrame\n containerRef={containerRef}\n empty={empty}\n emptyMessage={emptyMessage}\n fillHeight={fillHeight}\n height={height}\n legend={legend}\n legendAlign={legendAlign}\n legendPosition={legendPosition}\n minLegendEntries={2}\n onPointerEnter={axisReveal?.onPointerEnter}\n onPointerLeave={axisReveal?.onPointerLeave}\n onToggleSeries={onToggleSeries}\n title={title}\n tooltip={tooltip}\n width={width}\n >\n <g transform={`translate(${margins.left} ${margins.top})`}>\n {grid?.map((linhas) => (\n <Grid\n baseline={linhas.baseline}\n key={linhas.orientation}\n length={linhas.orientation === 'horizontal' ? plot.width : plot.height}\n lines={linhas.lines}\n orientation={linhas.orientation}\n />\n ))}\n\n {children}\n\n <g transform={`translate(0 ${plot.height})`}>\n <EixoDinamico axis={xAxis} length={plot.width} orientation=\"bottom\" revealed={revealed} />\n </g>\n\n <EixoDinamico axis={yAxis} length={plot.height} orientation=\"left\" revealed={revealed} />\n\n {yAxisRight && (\n <g transform={`translate(${plot.width} 0)`}>\n <EixoDinamico axis={yAxisRight} length={plot.height} orientation=\"right\" revealed={revealed} />\n </g>\n )}\n </g>\n </ChartFrame>\n );\n}\n"],"names":["EixoDinamico","axis","length","orientation","revealed","visibility","dinamico","eixo","jsx","Axis","styles","CartesianFrame","axisReveal","children","containerRef","empty","emptyMessage","fillHeight","grid","height","legend","legendAlign","legendPosition","margins","onToggleSeries","plot","title","tooltip","width","xAxis","yAxis","yAxisRight","ChartFrame","jsxs","linhas","Grid"],"mappings":"uOAuDA,SAASA,EAAa,CAAE,KAAAC,EAAM,OAAAC,EAAQ,YAAAC,EAAa,SAAAC,GAAuB,CACxE,MAAMC,EAAaJ,EAAK,YAAc,UAEtC,GAAII,IAAe,SACjB,OAAO,KAGT,MAAMC,EAAWD,IAAe,UAC1BE,EACJC,EAAAA,IAACC,EAAAA,KAAA,CACC,SAAUR,EAAK,SACf,cAAeA,EAAK,cACpB,OAAAC,EACA,YAAAC,EACA,MAAOF,EAAK,KAAA,CAAA,EAIhB,OAAKK,EAIEE,EAAAA,IAAC,IAAA,CAAE,UAAW,GAAGE,EAAAA,QAAO,WAAW,IAAIN,EAAWM,EAAAA,QAAO,oBAAsB,EAAE,GAAK,SAAAH,EAAK,EAHzFA,CAIX,CAMO,SAASI,EAAe,CAC7B,WAAAC,EACA,SAAAC,EACA,aAAAC,EACA,MAAAC,EACA,aAAAC,EACA,WAAAC,EACA,KAAAC,EACA,OAAAC,EACA,OAAAC,EACA,YAAAC,EACA,eAAAC,EACA,QAAAC,EACA,eAAAC,EACA,KAAAC,EACA,MAAAC,EACA,QAAAC,EACA,MAAAC,EACA,MAAAC,EACA,MAAAC,EACA,WAAAC,CACF,EAAwB,CACtB,MAAM3B,GAAWQ,GAAA,YAAAA,EAAY,WAAY,GAEzC,OACEJ,EAAAA,IAACwB,EAAAA,WAAA,CACC,aAAAlB,EACA,MAAAC,EACA,aAAAC,EACA,WAAAC,EACA,OAAAE,EACA,OAAAC,EACA,YAAAC,EACA,eAAAC,EACA,iBAAkB,EAClB,eAAgBV,GAAA,YAAAA,EAAY,eAC5B,eAAgBA,GAAA,YAAAA,EAAY,eAC5B,eAAAY,EACA,MAAAE,EACA,QAAAC,EACA,MAAAC,EAEA,SAAAK,EAAAA,KAAC,KAAE,UAAW,aAAaV,EAAQ,IAAI,IAAIA,EAAQ,GAAG,IACnD,SAAA,CAAAL,GAAA,YAAAA,EAAM,IAAKgB,GACV1B,EAAAA,IAAC2B,EAAAA,KAAA,CACC,SAAUD,EAAO,SAEjB,OAAQA,EAAO,cAAgB,aAAeT,EAAK,MAAQA,EAAK,OAChE,MAAOS,EAAO,MACd,YAAaA,EAAO,WAAA,EAHfA,EAAO,WAAA,GAOfrB,QAEA,IAAA,CAAE,UAAW,eAAeY,EAAK,MAAM,IACtC,SAAAjB,EAAAA,IAACR,EAAA,CAAa,KAAM6B,EAAO,OAAQJ,EAAK,MAAO,YAAY,SAAS,SAAArB,EAAoB,EAC1F,EAEAI,EAAAA,IAACR,GAAa,KAAM8B,EAAO,OAAQL,EAAK,OAAQ,YAAY,OAAO,SAAArB,CAAA,CAAoB,EAEtF2B,GACCvB,EAAAA,IAAC,IAAA,CAAE,UAAW,aAAaiB,EAAK,KAAK,MACnC,SAAAjB,MAACR,EAAA,CAAa,KAAM+B,EAAY,OAAQN,EAAK,OAAQ,YAAY,QAAQ,SAAArB,EAAoB,CAAA,CAC/F,CAAA,CAAA,CAEJ,CAAA,CAAA,CAGN"}