@apipass/design-system 8.2.0 → 8.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/dist/lib/embedded-styles.js +2 -2
  2. package/dist/lib/lib.index.cjs +1 -1
  3. package/dist/lib/lib.index.js +798 -796
  4. package/dist/lib/lib.index.js.map +1 -1
  5. package/dist/lib/style.css +1 -1
  6. package/dist/lib/ui/components/ConfirmDialog/ConfirmDialog.cjs +1 -1
  7. package/dist/lib/ui/components/DataTable/DataTable.cjs +1 -1
  8. package/dist/lib/ui/components/Widget/Widget.cjs +1 -1
  9. package/dist/lib/ui/components/WidgetGrid/WidgetGrid.cjs +1 -1
  10. package/dist/lib/ui/components/charts/BarChart/BarChart.cjs +1 -1
  11. package/dist/lib/ui/components/charts/ChartColorPicker/ChartColorPicker.cjs +1 -1
  12. package/dist/lib/ui/components/charts/ChartLegend/use-chart-legend.cjs +1 -1
  13. package/dist/lib/ui/components/charts/PieChart/PieChart.cjs +1 -1
  14. package/dist/lib/ui/components/charts/TimeSeriesChart/TimeSeriesChart.cjs +1 -1
  15. package/dist/lib/ui/components/charts/TimeSeriesChart/TimeSeriesChart.cjs.map +1 -1
  16. package/dist/lib/ui/components/charts/TimeSeriesChart/TimeSeriesChart.js +55 -52
  17. package/dist/lib/ui/components/charts/TimeSeriesChart/TimeSeriesChart.js.map +1 -1
  18. package/dist/lib/ui/components/charts/TimeSeriesChart/time-series-option.cjs +1 -1
  19. package/dist/lib/ui/components/charts/TimeSeriesChart/time-series-option.cjs.map +1 -1
  20. package/dist/lib/ui/components/charts/TimeSeriesChart/time-series-option.js +37 -29
  21. package/dist/lib/ui/components/charts/TimeSeriesChart/time-series-option.js.map +1 -1
  22. package/dist/lib/ui/components/charts/TopList/TopList.cjs +1 -1
  23. package/dist/lib/ui/primitives/Avatar/Avatar.js +6 -6
  24. package/dist/lib/ui/primitives/BrandLoader/BrandLoader.cjs +1 -1
  25. package/dist/lib/ui/primitives/Button/Button.cjs.map +1 -1
  26. package/dist/lib/ui/primitives/Button/Button.js +6 -6
  27. package/dist/lib/ui/primitives/Button/Button.js.map +1 -1
  28. package/dist/lib/ui/primitives/CodeBlock/CodeBlock.cjs +1 -1
  29. package/dist/lib/ui/primitives/CodeEditor/CodeEditor.cjs +1 -1
  30. package/dist/lib/ui/primitives/ComboBox/ComboBox.cjs +1 -1
  31. package/dist/lib/ui/primitives/ComboBox/ComboBox.cjs.map +1 -1
  32. package/dist/lib/ui/primitives/ComboBox/ComboBox.js +40 -56
  33. package/dist/lib/ui/primitives/ComboBox/ComboBox.js.map +1 -1
  34. package/dist/lib/ui/primitives/ComboBox/MultiComboBox.cjs +2 -0
  35. package/dist/lib/ui/primitives/ComboBox/MultiComboBox.cjs.map +1 -0
  36. package/dist/lib/ui/primitives/ComboBox/MultiComboBox.js +179 -0
  37. package/dist/lib/ui/primitives/ComboBox/MultiComboBox.js.map +1 -0
  38. package/dist/lib/ui/primitives/ComboBox/comboBoxFocus.cjs +2 -0
  39. package/dist/lib/ui/primitives/ComboBox/comboBoxFocus.cjs.map +1 -0
  40. package/dist/lib/ui/primitives/ComboBox/comboBoxFocus.js +30 -0
  41. package/dist/lib/ui/primitives/ComboBox/comboBoxFocus.js.map +1 -0
  42. package/dist/lib/ui/primitives/DateRangePicker/DateRangePicker.cjs +1 -1
  43. package/dist/lib/ui/primitives/FileUpload/FileUpload.cjs +1 -1
  44. package/dist/lib/ui/primitives/FileUpload/FileUpload.js +24 -24
  45. package/dist/lib/ui/primitives/Image/Image.cjs +1 -1
  46. package/dist/lib/ui/primitives/Input/Input.cjs +1 -1
  47. package/dist/lib/ui/primitives/Input/Input.js +2 -2
  48. package/dist/lib/ui/primitives/JsonViewer/JsonEditor.cjs +1 -1
  49. package/dist/lib/ui/primitives/Link/Link.cjs +1 -1
  50. package/dist/lib/ui/primitives/Link/Link.js +3 -3
  51. package/dist/lib/ui/primitives/Menu/Menu.cjs +1 -1
  52. package/dist/lib/ui/primitives/Menu/Menu.js +28 -28
  53. package/dist/lib/ui/primitives/Search/Search.js +8 -8
  54. package/dist/lib/ui/primitives/Select/MultiSelect.cjs +1 -1
  55. package/dist/lib/ui/primitives/Select/MultiSelect.js +17 -17
  56. package/dist/lib/ui/primitives/Select/MultiSelect.js.map +1 -1
  57. package/dist/lib/ui/primitives/Tag/Tag.cjs +1 -1
  58. package/dist/lib/ui/primitives/Tag/Tag.cjs.map +1 -1
  59. package/dist/lib/ui/primitives/Tag/Tag.js +47 -38
  60. package/dist/lib/ui/primitives/Tag/Tag.js.map +1 -1
  61. package/dist/lib/ui/primitives/Textarea/Textarea.cjs +1 -1
  62. package/dist/lib/ui/primitives/Tooltip/Tooltip.cjs +1 -1
  63. package/dist/lib/ui/primitives/Tooltip/Tooltip.cjs.map +1 -1
  64. package/dist/lib/ui/primitives/Tooltip/Tooltip.js +29 -29
  65. package/dist/lib/ui/primitives/Tooltip/Tooltip.js.map +1 -1
  66. package/dist/lib/ui/utils/AnchorOrButton.cjs +1 -1
  67. package/dist/lib/ui/utils/AnchorOrButton.cjs.map +1 -1
  68. package/dist/lib/ui/utils/AnchorOrButton.js +10 -12
  69. package/dist/lib/ui/utils/AnchorOrButton.js.map +1 -1
  70. package/dist/lib/vendor/@monaco-editor/react/dist/index.cjs +1 -1
  71. package/dist/lib/vendor/@monaco-editor/react/dist/index.cjs.map +1 -1
  72. package/dist/lib/vendor/@monaco-editor/react/dist/index.js +41 -41
  73. package/dist/lib/vendor/react-aria/dist/private/interactions/createEventHandler.cjs +2 -0
  74. package/dist/lib/vendor/react-aria/dist/private/interactions/createEventHandler.cjs.map +1 -0
  75. package/dist/lib/vendor/react-aria/dist/private/interactions/createEventHandler.js +28 -0
  76. package/dist/lib/vendor/react-aria/dist/private/interactions/createEventHandler.js.map +1 -0
  77. package/dist/lib/vendor/react-aria/dist/private/interactions/createKeyboardShortcutHandler.cjs +2 -0
  78. package/dist/lib/vendor/react-aria/dist/private/interactions/createKeyboardShortcutHandler.cjs.map +1 -0
  79. package/dist/lib/vendor/react-aria/dist/private/interactions/createKeyboardShortcutHandler.js +93 -0
  80. package/dist/lib/vendor/react-aria/dist/private/interactions/createKeyboardShortcutHandler.js.map +1 -0
  81. package/dist/lib/vendor/react-aria/dist/private/interactions/focusSafely.cjs +2 -0
  82. package/dist/lib/vendor/react-aria/dist/private/interactions/focusSafely.cjs.map +1 -0
  83. package/dist/lib/vendor/react-aria/dist/private/interactions/focusSafely.js +20 -0
  84. package/dist/lib/vendor/react-aria/dist/private/interactions/focusSafely.js.map +1 -0
  85. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocus.cjs +2 -0
  86. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocus.cjs.map +1 -0
  87. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocus.js +32 -0
  88. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocus.js.map +1 -0
  89. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocusVisible.cjs +2 -0
  90. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocusVisible.cjs.map +1 -0
  91. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocusVisible.js +94 -0
  92. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocusVisible.js.map +1 -0
  93. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocusable.cjs +2 -0
  94. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocusable.cjs.map +1 -0
  95. package/dist/lib/vendor/{@react-aria/interactions/dist → react-aria/dist/private/interactions}/useFocusable.js +10 -10
  96. package/dist/lib/vendor/react-aria/dist/private/interactions/useFocusable.js.map +1 -0
  97. package/dist/lib/vendor/react-aria/dist/private/interactions/useHover.cjs +2 -0
  98. package/dist/lib/vendor/react-aria/dist/private/interactions/useHover.cjs.map +1 -0
  99. package/dist/lib/vendor/react-aria/dist/private/interactions/useHover.js +82 -0
  100. package/dist/lib/vendor/react-aria/dist/private/interactions/useHover.js.map +1 -0
  101. package/dist/lib/vendor/react-aria/dist/private/interactions/useKeyboard.cjs +2 -0
  102. package/dist/lib/vendor/react-aria/dist/private/interactions/useKeyboard.cjs.map +1 -0
  103. package/dist/lib/vendor/react-aria/dist/private/interactions/useKeyboard.js +44 -0
  104. package/dist/lib/vendor/react-aria/dist/private/interactions/useKeyboard.js.map +1 -0
  105. package/dist/lib/vendor/react-aria/dist/private/interactions/utils.cjs +2 -0
  106. package/dist/lib/vendor/react-aria/dist/private/interactions/utils.cjs.map +1 -0
  107. package/dist/lib/vendor/react-aria/dist/private/interactions/utils.js +59 -0
  108. package/dist/lib/vendor/react-aria/dist/private/interactions/utils.js.map +1 -0
  109. package/dist/lib/vendor/react-aria/dist/private/ssr/SSRProvider.cjs +2 -0
  110. package/dist/lib/vendor/react-aria/dist/private/ssr/SSRProvider.cjs.map +1 -0
  111. package/dist/lib/vendor/react-aria/dist/private/ssr/SSRProvider.js +52 -0
  112. package/dist/lib/vendor/react-aria/dist/private/ssr/SSRProvider.js.map +1 -0
  113. package/dist/lib/vendor/react-aria/dist/private/tooltip/useTooltipTrigger.cjs +2 -0
  114. package/dist/lib/vendor/react-aria/dist/private/tooltip/useTooltipTrigger.cjs.map +1 -0
  115. package/dist/lib/vendor/react-aria/dist/private/tooltip/useTooltipTrigger.js +62 -0
  116. package/dist/lib/vendor/react-aria/dist/private/tooltip/useTooltipTrigger.js.map +1 -0
  117. package/dist/lib/vendor/react-aria/dist/private/utils/chain.cjs +2 -0
  118. package/dist/lib/vendor/react-aria/dist/private/utils/chain.cjs.map +1 -0
  119. package/dist/lib/vendor/react-aria/dist/private/utils/chain.js +9 -0
  120. package/dist/lib/vendor/react-aria/dist/private/utils/chain.js.map +1 -0
  121. package/dist/lib/vendor/react-aria/dist/private/utils/domHelpers.cjs +2 -0
  122. package/dist/lib/vendor/react-aria/dist/private/utils/domHelpers.cjs.map +1 -0
  123. package/dist/lib/vendor/react-aria/dist/private/utils/domHelpers.js +36 -0
  124. package/dist/lib/vendor/react-aria/dist/private/utils/domHelpers.js.map +1 -0
  125. package/dist/lib/vendor/react-aria/dist/private/utils/focusWithoutScrolling.cjs +2 -0
  126. package/dist/lib/vendor/react-aria/dist/private/utils/focusWithoutScrolling.cjs.map +1 -0
  127. package/dist/lib/vendor/react-aria/dist/private/utils/focusWithoutScrolling.js +9 -0
  128. package/dist/lib/vendor/react-aria/dist/private/utils/focusWithoutScrolling.js.map +1 -0
  129. package/dist/lib/vendor/react-aria/dist/private/utils/isVirtualEvent.cjs.map +1 -0
  130. package/dist/lib/vendor/react-aria/dist/private/utils/isVirtualEvent.js.map +1 -0
  131. package/dist/lib/vendor/react-aria/dist/private/utils/mergeProps.cjs +2 -0
  132. package/dist/lib/vendor/react-aria/dist/private/utils/mergeProps.cjs.map +1 -0
  133. package/dist/lib/vendor/react-aria/dist/private/utils/mergeProps.js +24 -0
  134. package/dist/lib/vendor/react-aria/dist/private/utils/mergeProps.js.map +1 -0
  135. package/dist/lib/vendor/react-aria/dist/private/utils/mergeRefs.cjs +2 -0
  136. package/dist/lib/vendor/react-aria/dist/private/utils/mergeRefs.cjs.map +1 -0
  137. package/dist/lib/vendor/react-aria/dist/private/utils/mergeRefs.js +22 -0
  138. package/dist/lib/vendor/react-aria/dist/private/utils/mergeRefs.js.map +1 -0
  139. package/dist/lib/vendor/react-aria/dist/private/utils/openLink.cjs +2 -0
  140. package/dist/lib/vendor/react-aria/dist/private/utils/openLink.cjs.map +1 -0
  141. package/dist/lib/vendor/react-aria/dist/private/utils/openLink.js +26 -0
  142. package/dist/lib/vendor/react-aria/dist/private/utils/openLink.js.map +1 -0
  143. package/dist/lib/vendor/react-aria/dist/private/utils/platform.cjs +2 -0
  144. package/dist/lib/vendor/react-aria/dist/private/utils/platform.cjs.map +1 -0
  145. package/dist/lib/vendor/react-aria/dist/private/utils/platform.js +40 -0
  146. package/dist/lib/vendor/react-aria/dist/private/utils/platform.js.map +1 -0
  147. package/dist/lib/vendor/react-aria/dist/private/utils/runAfterTransition.cjs +2 -0
  148. package/dist/lib/vendor/react-aria/dist/private/utils/runAfterTransition.cjs.map +1 -0
  149. package/dist/lib/vendor/react-aria/dist/private/utils/runAfterTransition.js +43 -0
  150. package/dist/lib/vendor/react-aria/dist/private/utils/runAfterTransition.js.map +1 -0
  151. package/dist/lib/vendor/react-aria/dist/private/utils/shadowdom/DOMFunctions.cjs +2 -0
  152. package/dist/lib/vendor/react-aria/dist/private/utils/shadowdom/DOMFunctions.cjs.map +1 -0
  153. package/dist/lib/vendor/react-aria/dist/private/utils/shadowdom/DOMFunctions.js +33 -0
  154. package/dist/lib/vendor/react-aria/dist/private/utils/shadowdom/DOMFunctions.js.map +1 -0
  155. package/dist/lib/vendor/react-aria/dist/private/utils/useGlobalListeners.cjs +2 -0
  156. package/dist/lib/vendor/react-aria/dist/private/utils/useGlobalListeners.cjs.map +1 -0
  157. package/dist/lib/vendor/react-aria/dist/private/utils/useGlobalListeners.js +35 -0
  158. package/dist/lib/vendor/react-aria/dist/private/utils/useGlobalListeners.js.map +1 -0
  159. package/dist/lib/vendor/react-aria/dist/private/utils/useId.cjs +2 -0
  160. package/dist/lib/vendor/react-aria/dist/private/utils/useId.cjs.map +1 -0
  161. package/dist/lib/vendor/react-aria/dist/private/utils/useId.js +44 -0
  162. package/dist/lib/vendor/react-aria/dist/private/utils/useId.js.map +1 -0
  163. package/dist/lib/vendor/react-aria/dist/private/utils/useLayoutEffect.cjs.map +1 -0
  164. package/dist/lib/vendor/react-aria/dist/private/utils/useLayoutEffect.js.map +1 -0
  165. package/dist/lib/vendor/{@react-aria/utils/dist → react-aria/dist/private/utils}/useSyncRef.cjs +1 -1
  166. package/dist/lib/vendor/react-aria/dist/private/utils/useSyncRef.cjs.map +1 -0
  167. package/dist/lib/vendor/react-aria/dist/private/utils/useSyncRef.js +13 -0
  168. package/dist/lib/vendor/react-aria/dist/private/utils/useSyncRef.js.map +1 -0
  169. package/dist/lib/vendor/react-draggable/build/cjs/Draggable.cjs +1 -1
  170. package/dist/lib/vendor/react-draggable/build/cjs/Draggable.js +8 -8
  171. package/dist/lib/vendor/react-grid-layout/build/GridItem.cjs +1 -1
  172. package/dist/lib/vendor/react-grid-layout/build/GridItem.js +7 -7
  173. package/dist/lib/vendor/react-grid-layout/build/ReactGridLayout.cjs +1 -1
  174. package/dist/lib/vendor/react-grid-layout/build/ReactGridLayout.js +7 -7
  175. package/dist/lib/vendor/react-grid-layout/build/ReactGridLayout.js.map +1 -1
  176. package/dist/lib/vendor/react-grid-layout/build/ResponsiveReactGridLayout.cjs +1 -1
  177. package/dist/lib/vendor/react-grid-layout/build/ResponsiveReactGridLayout.js +10 -10
  178. package/dist/lib/vendor/react-grid-layout/build/ResponsiveReactGridLayout.js.map +1 -1
  179. package/dist/lib/vendor/react-grid-layout/build/components/WidthProvider.cjs +1 -1
  180. package/dist/lib/vendor/react-grid-layout/build/components/WidthProvider.js +8 -8
  181. package/dist/lib/vendor/react-grid-layout/build/components/WidthProvider.js.map +1 -1
  182. package/dist/lib/vendor/react-grid-layout/build/utils.cjs +1 -1
  183. package/dist/lib/vendor/react-grid-layout/build/utils.js +18 -18
  184. package/dist/lib/vendor/react-resizable/build/Resizable.cjs +1 -1
  185. package/dist/lib/vendor/react-resizable/build/Resizable.js +61 -61
  186. package/dist/lib/vendor/react-resizable/build/Resizable.js.map +1 -1
  187. package/dist/lib/vendor/react-resizable/build/ResizableBox.cjs +1 -1
  188. package/dist/lib/vendor/react-resizable/build/ResizableBox.js +7 -7
  189. package/dist/lib/vendor/react-resizable/build/ResizableBox.js.map +1 -1
  190. package/dist/lib/vendor/react-resizable/build/utils.cjs +1 -1
  191. package/dist/lib/vendor/react-resizable/build/utils.cjs.map +1 -1
  192. package/dist/lib/vendor/react-stately/dist/private/flags/flags.cjs +2 -0
  193. package/dist/lib/vendor/react-stately/dist/private/flags/flags.cjs.map +1 -0
  194. package/dist/lib/vendor/react-stately/dist/private/flags/flags.js +8 -0
  195. package/dist/lib/vendor/react-stately/dist/private/flags/flags.js.map +1 -0
  196. package/dist/lib/vendor/react-stately/dist/private/overlays/useOverlayTriggerState.cjs +2 -0
  197. package/dist/lib/vendor/react-stately/dist/private/overlays/useOverlayTriggerState.cjs.map +1 -0
  198. package/dist/lib/vendor/react-stately/dist/private/overlays/useOverlayTriggerState.js +32 -0
  199. package/dist/lib/vendor/react-stately/dist/private/overlays/useOverlayTriggerState.js.map +1 -0
  200. package/dist/lib/vendor/react-stately/dist/private/tooltip/useTooltipTriggerState.cjs +2 -0
  201. package/dist/lib/vendor/react-stately/dist/private/tooltip/useTooltipTriggerState.cjs.map +1 -0
  202. package/dist/lib/vendor/react-stately/dist/private/tooltip/useTooltipTriggerState.js +43 -0
  203. package/dist/lib/vendor/react-stately/dist/private/tooltip/useTooltipTriggerState.js.map +1 -0
  204. package/dist/lib/vendor/react-stately/dist/private/utils/useControlledState.cjs +2 -0
  205. package/dist/lib/vendor/react-stately/dist/private/utils/useControlledState.cjs.map +1 -0
  206. package/dist/lib/vendor/react-stately/dist/private/utils/useControlledState.js +29 -0
  207. package/dist/lib/vendor/react-stately/dist/private/utils/useControlledState.js.map +1 -0
  208. package/dist/lib/vendor/react-toastify/dist/index.cjs +1 -1
  209. package/dist/lib/vendor/react-toastify/dist/index.js +10 -10
  210. package/dist/types/ui/components/charts/TimeSeriesChart/TimeSeriesChart.d.ts +4 -3
  211. package/dist/types/ui/components/charts/TimeSeriesChart/time-series-option.d.ts +5 -0
  212. package/dist/types/ui/primitives/ComboBox/MultiComboBox.d.ts +28 -0
  213. package/dist/types/ui/primitives/ComboBox/comboBoxFocus.d.ts +3 -0
  214. package/dist/types/ui/primitives/Tag/Tag.d.ts +2 -1
  215. package/dist/types/ui/primitives/index.d.ts +1 -0
  216. package/dist/types/ui/utils/AnchorOrButton.d.ts +3 -1
  217. package/package.json +3 -3
  218. package/dist/lib/vendor/@react-aria/interactions/dist/createEventHandler.cjs +0 -2
  219. package/dist/lib/vendor/@react-aria/interactions/dist/createEventHandler.cjs.map +0 -1
  220. package/dist/lib/vendor/@react-aria/interactions/dist/createEventHandler.js +0 -29
  221. package/dist/lib/vendor/@react-aria/interactions/dist/createEventHandler.js.map +0 -1
  222. package/dist/lib/vendor/@react-aria/interactions/dist/focusSafely.cjs +0 -2
  223. package/dist/lib/vendor/@react-aria/interactions/dist/focusSafely.cjs.map +0 -1
  224. package/dist/lib/vendor/@react-aria/interactions/dist/focusSafely.js +0 -18
  225. package/dist/lib/vendor/@react-aria/interactions/dist/focusSafely.js.map +0 -1
  226. package/dist/lib/vendor/@react-aria/interactions/dist/useFocus.cjs +0 -2
  227. package/dist/lib/vendor/@react-aria/interactions/dist/useFocus.cjs.map +0 -1
  228. package/dist/lib/vendor/@react-aria/interactions/dist/useFocus.js +0 -31
  229. package/dist/lib/vendor/@react-aria/interactions/dist/useFocus.js.map +0 -1
  230. package/dist/lib/vendor/@react-aria/interactions/dist/useFocusVisible.cjs +0 -2
  231. package/dist/lib/vendor/@react-aria/interactions/dist/useFocusVisible.cjs.map +0 -1
  232. package/dist/lib/vendor/@react-aria/interactions/dist/useFocusVisible.js +0 -66
  233. package/dist/lib/vendor/@react-aria/interactions/dist/useFocusVisible.js.map +0 -1
  234. package/dist/lib/vendor/@react-aria/interactions/dist/useFocusable.cjs +0 -2
  235. package/dist/lib/vendor/@react-aria/interactions/dist/useFocusable.cjs.map +0 -1
  236. package/dist/lib/vendor/@react-aria/interactions/dist/useFocusable.js.map +0 -1
  237. package/dist/lib/vendor/@react-aria/interactions/dist/useHover.cjs +0 -2
  238. package/dist/lib/vendor/@react-aria/interactions/dist/useHover.cjs.map +0 -1
  239. package/dist/lib/vendor/@react-aria/interactions/dist/useHover.js +0 -81
  240. package/dist/lib/vendor/@react-aria/interactions/dist/useHover.js.map +0 -1
  241. package/dist/lib/vendor/@react-aria/interactions/dist/useKeyboard.cjs +0 -2
  242. package/dist/lib/vendor/@react-aria/interactions/dist/useKeyboard.cjs.map +0 -1
  243. package/dist/lib/vendor/@react-aria/interactions/dist/useKeyboard.js +0 -13
  244. package/dist/lib/vendor/@react-aria/interactions/dist/useKeyboard.js.map +0 -1
  245. package/dist/lib/vendor/@react-aria/interactions/dist/utils.cjs +0 -2
  246. package/dist/lib/vendor/@react-aria/interactions/dist/utils.cjs.map +0 -1
  247. package/dist/lib/vendor/@react-aria/interactions/dist/utils.js +0 -64
  248. package/dist/lib/vendor/@react-aria/interactions/dist/utils.js.map +0 -1
  249. package/dist/lib/vendor/@react-aria/ssr/dist/SSRProvider.cjs +0 -2
  250. package/dist/lib/vendor/@react-aria/ssr/dist/SSRProvider.cjs.map +0 -1
  251. package/dist/lib/vendor/@react-aria/ssr/dist/SSRProvider.js +0 -49
  252. package/dist/lib/vendor/@react-aria/ssr/dist/SSRProvider.js.map +0 -1
  253. package/dist/lib/vendor/@react-aria/tooltip/dist/useTooltipTrigger.cjs +0 -2
  254. package/dist/lib/vendor/@react-aria/tooltip/dist/useTooltipTrigger.cjs.map +0 -1
  255. package/dist/lib/vendor/@react-aria/tooltip/dist/useTooltipTrigger.js +0 -61
  256. package/dist/lib/vendor/@react-aria/tooltip/dist/useTooltipTrigger.js.map +0 -1
  257. package/dist/lib/vendor/@react-aria/utils/dist/DOMFunctions.cjs +0 -2
  258. package/dist/lib/vendor/@react-aria/utils/dist/DOMFunctions.cjs.map +0 -1
  259. package/dist/lib/vendor/@react-aria/utils/dist/DOMFunctions.js +0 -28
  260. package/dist/lib/vendor/@react-aria/utils/dist/DOMFunctions.js.map +0 -1
  261. package/dist/lib/vendor/@react-aria/utils/dist/chain.cjs +0 -2
  262. package/dist/lib/vendor/@react-aria/utils/dist/chain.cjs.map +0 -1
  263. package/dist/lib/vendor/@react-aria/utils/dist/chain.js +0 -9
  264. package/dist/lib/vendor/@react-aria/utils/dist/chain.js.map +0 -1
  265. package/dist/lib/vendor/@react-aria/utils/dist/domHelpers.cjs +0 -2
  266. package/dist/lib/vendor/@react-aria/utils/dist/domHelpers.cjs.map +0 -1
  267. package/dist/lib/vendor/@react-aria/utils/dist/domHelpers.js +0 -16
  268. package/dist/lib/vendor/@react-aria/utils/dist/domHelpers.js.map +0 -1
  269. package/dist/lib/vendor/@react-aria/utils/dist/focusWithoutScrolling.cjs +0 -2
  270. package/dist/lib/vendor/@react-aria/utils/dist/focusWithoutScrolling.cjs.map +0 -1
  271. package/dist/lib/vendor/@react-aria/utils/dist/focusWithoutScrolling.js +0 -46
  272. package/dist/lib/vendor/@react-aria/utils/dist/focusWithoutScrolling.js.map +0 -1
  273. package/dist/lib/vendor/@react-aria/utils/dist/isVirtualEvent.cjs.map +0 -1
  274. package/dist/lib/vendor/@react-aria/utils/dist/isVirtualEvent.js.map +0 -1
  275. package/dist/lib/vendor/@react-aria/utils/dist/mergeProps.cjs +0 -2
  276. package/dist/lib/vendor/@react-aria/utils/dist/mergeProps.cjs.map +0 -1
  277. package/dist/lib/vendor/@react-aria/utils/dist/mergeProps.js +0 -23
  278. package/dist/lib/vendor/@react-aria/utils/dist/mergeProps.js.map +0 -1
  279. package/dist/lib/vendor/@react-aria/utils/dist/platform.cjs +0 -2
  280. package/dist/lib/vendor/@react-aria/utils/dist/platform.cjs.map +0 -1
  281. package/dist/lib/vendor/@react-aria/utils/dist/platform.js +0 -24
  282. package/dist/lib/vendor/@react-aria/utils/dist/platform.js.map +0 -1
  283. package/dist/lib/vendor/@react-aria/utils/dist/runAfterTransition.cjs +0 -2
  284. package/dist/lib/vendor/@react-aria/utils/dist/runAfterTransition.cjs.map +0 -1
  285. package/dist/lib/vendor/@react-aria/utils/dist/runAfterTransition.js +0 -36
  286. package/dist/lib/vendor/@react-aria/utils/dist/runAfterTransition.js.map +0 -1
  287. package/dist/lib/vendor/@react-aria/utils/dist/useEffectEvent.cjs +0 -2
  288. package/dist/lib/vendor/@react-aria/utils/dist/useEffectEvent.cjs.map +0 -1
  289. package/dist/lib/vendor/@react-aria/utils/dist/useEffectEvent.js +0 -19
  290. package/dist/lib/vendor/@react-aria/utils/dist/useEffectEvent.js.map +0 -1
  291. package/dist/lib/vendor/@react-aria/utils/dist/useGlobalListeners.cjs +0 -2
  292. package/dist/lib/vendor/@react-aria/utils/dist/useGlobalListeners.cjs.map +0 -1
  293. package/dist/lib/vendor/@react-aria/utils/dist/useGlobalListeners.js +0 -35
  294. package/dist/lib/vendor/@react-aria/utils/dist/useGlobalListeners.js.map +0 -1
  295. package/dist/lib/vendor/@react-aria/utils/dist/useId.cjs +0 -2
  296. package/dist/lib/vendor/@react-aria/utils/dist/useId.cjs.map +0 -1
  297. package/dist/lib/vendor/@react-aria/utils/dist/useId.js +0 -43
  298. package/dist/lib/vendor/@react-aria/utils/dist/useId.js.map +0 -1
  299. package/dist/lib/vendor/@react-aria/utils/dist/useLayoutEffect.cjs.map +0 -1
  300. package/dist/lib/vendor/@react-aria/utils/dist/useLayoutEffect.js.map +0 -1
  301. package/dist/lib/vendor/@react-aria/utils/dist/useSyncRef.cjs.map +0 -1
  302. package/dist/lib/vendor/@react-aria/utils/dist/useSyncRef.js +0 -13
  303. package/dist/lib/vendor/@react-aria/utils/dist/useSyncRef.js.map +0 -1
  304. package/dist/lib/vendor/@react-stately/flags/dist/import.cjs +0 -2
  305. package/dist/lib/vendor/@react-stately/flags/dist/import.cjs.map +0 -1
  306. package/dist/lib/vendor/@react-stately/flags/dist/import.js +0 -8
  307. package/dist/lib/vendor/@react-stately/flags/dist/import.js.map +0 -1
  308. package/dist/lib/vendor/@react-stately/overlays/dist/useOverlayTriggerState.cjs +0 -2
  309. package/dist/lib/vendor/@react-stately/overlays/dist/useOverlayTriggerState.cjs.map +0 -1
  310. package/dist/lib/vendor/@react-stately/overlays/dist/useOverlayTriggerState.js +0 -30
  311. package/dist/lib/vendor/@react-stately/overlays/dist/useOverlayTriggerState.js.map +0 -1
  312. package/dist/lib/vendor/@react-stately/tooltip/dist/useTooltipTriggerState.cjs +0 -2
  313. package/dist/lib/vendor/@react-stately/tooltip/dist/useTooltipTriggerState.cjs.map +0 -1
  314. package/dist/lib/vendor/@react-stately/tooltip/dist/useTooltipTriggerState.js +0 -42
  315. package/dist/lib/vendor/@react-stately/tooltip/dist/useTooltipTriggerState.js.map +0 -1
  316. package/dist/lib/vendor/@react-stately/utils/dist/useControlledState.cjs +0 -2
  317. package/dist/lib/vendor/@react-stately/utils/dist/useControlledState.cjs.map +0 -1
  318. package/dist/lib/vendor/@react-stately/utils/dist/useControlledState.js +0 -30
  319. package/dist/lib/vendor/@react-stately/utils/dist/useControlledState.js.map +0 -1
  320. /package/dist/lib/vendor/{@react-aria/utils/dist → react-aria/dist/private/utils}/isVirtualEvent.cjs +0 -0
  321. /package/dist/lib/vendor/{@react-aria/utils/dist → react-aria/dist/private/utils}/isVirtualEvent.js +0 -0
  322. /package/dist/lib/vendor/{@react-aria/utils/dist → react-aria/dist/private/utils}/useLayoutEffect.cjs +0 -0
  323. /package/dist/lib/vendor/{@react-aria/utils/dist → react-aria/dist/private/utils}/useLayoutEffect.js +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),y=require("react");;/* empty css */const r=require("../../primitives/Dialog/Dialog.cjs"),C=require("../../primitives/Input/Input.cjs"),x=require("../../layout/Flex/Flex.cjs"),l=require("../../primitives/Button/Button.cjs");function P(t){return t.isOpen?e.jsx(v,{...t}):null}function v({title:t,message:u,confirmValue:o,confirmValueLabel:j,confirmLabel:c="Confirm",cancelLabel:m="Cancel",isDanger:p=!1,isLoading:i=!1,onConfirm:h,onClose:d}){const[g,D]=y.useState(""),s=o?g===o:!0;function a(){!s||i||h()}function f(){i||d()}return e.jsx(r.DialogModal,{isOpen:!0,onOpenChange:n=>!n&&f(),children:e.jsxs(r.Dialog,{children:[e.jsxs(x.Flex,{direction:"row",alignPrimary:"space-between",alignSecondary:"center",children:[e.jsx(r.DialogTitle,{children:t}),e.jsx(r.DialogClose,{onPress:f})]}),e.jsxs(r.DialogBody,{children:[u&&e.jsx("p",{className:"confirm-dialog-message",dangerouslySetInnerHTML:{__html:u}}),o&&e.jsx(C.InputField,{label:j,value:g,onChange:D,autoFocus:!0,onKeyDown:n=>{n.continuePropagation(),n.key==="Enter"&&!n.repeat&&!n.nativeEvent.isComposing&&a()},isRequired:!0,validationBehavior:"aria"})]}),e.jsxs(x.Flex,{direction:"row",gap:"200",alignPrimary:"end",className:"confirm-dialog-footer",children:[e.jsx(l.Button,{variant:"neutral",onPress:d,isDisabled:i,children:m}),p?e.jsx(l.ButtonDanger,{variant:"danger-primary",onPress:a,isDisabled:!s,isPending:i,children:c}):e.jsx(l.Button,{variant:"primary",onPress:a,isDisabled:!s,isPending:i,children:c})]})]})})}exports.ConfirmDialog=P;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),y=require("react");;/* empty css */const i=require("../../primitives/Dialog/Dialog.cjs"),C=require("../../primitives/Input/Input.cjs"),x=require("../../layout/Flex/Flex.cjs"),l=require("../../primitives/Button/Button.cjs");function P(t){return t.isOpen?e.jsx(v,{...t}):null}function v({title:t,message:u,confirmValue:o,confirmValueLabel:j,confirmLabel:c="Confirm",cancelLabel:m="Cancel",isDanger:p=!1,isLoading:r=!1,onConfirm:h,onClose:d}){const[g,D]=y.useState(""),s=o?g===o:!0;function a(){!s||r||h()}function f(){r||d()}return e.jsx(i.DialogModal,{isOpen:!0,onOpenChange:n=>!n&&f(),children:e.jsxs(i.Dialog,{children:[e.jsxs(x.Flex,{direction:"row",alignPrimary:"space-between",alignSecondary:"center",children:[e.jsx(i.DialogTitle,{children:t}),e.jsx(i.DialogClose,{onPress:f})]}),e.jsxs(i.DialogBody,{children:[u&&e.jsx("p",{className:"confirm-dialog-message",dangerouslySetInnerHTML:{__html:u}}),o&&e.jsx(C.InputField,{label:j,value:g,onChange:D,autoFocus:!0,onKeyDown:n=>{n.continuePropagation(),n.key==="Enter"&&!n.repeat&&!n.nativeEvent.isComposing&&a()},isRequired:!0,validationBehavior:"aria"})]}),e.jsxs(x.Flex,{direction:"row",gap:"200",alignPrimary:"end",className:"confirm-dialog-footer",children:[e.jsx(l.Button,{variant:"neutral",onPress:d,isDisabled:r,children:m}),p?e.jsx(l.ButtonDanger,{variant:"danger-primary",onPress:a,isDisabled:!s,isPending:r,children:c}):e.jsx(l.Button,{variant:"primary",onPress:a,isDisabled:!s,isPending:r,children:c})]})]})})}exports.ConfirmDialog=P;
2
2
  //# sourceMappingURL=ConfirmDialog.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),D=require("../../../vendor/clsx/dist/clsx.cjs"),b=require("react");;/* empty css */const we=require("../../primitives/Search/Search.cjs"),i=require("../../primitives/Table/Table.cjs"),me=require("../../icons/IconChevronDown.cjs"),ye=require("../../icons/IconChevronRight.cjs"),Se=require("../../primitives/Pagination/Pagination.cjs"),ve=require("../../primitives/PermissionGate/PermissionGate.cjs"),Q=require("../../hooks/useLoadingVisibility.cjs"),Ne=require("../../layout/Flex/Flex.cjs"),Ce=require("../../primitives/BrandLoader/BrandLoader.cjs"),Te=require("../../primitives/IconButton/IconButton.cjs"),Pe=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});function qe(t,n){return t==null||n==null?t==null?n==null?0:1:-1:t instanceof Date&&n instanceof Date?t.getTime()-n.getTime():typeof t=="number"&&typeof n=="number"?t-n:Pe.compare(String(t),String(n))}function Re(t,n,d){const o=n.sortValue??(x=>x[n.key]),h=d==="descending"?-1:1;return[...t].sort((x,g)=>qe(o(x),o(g))*h)}function Me({action:t,item:n}){const d=t.isPending===!0,o=t.isAllowed!==!1&&!d,h=a.jsx(Te.IconButton,{variant:"text",size:"small","aria-label":t.label,isDisabled:!o&&!d,isPending:d,onPress:o?()=>t.onPress(n):void 0,children:t.icon});return o?h:a.jsx(ve.PermissionGate,{isAllowed:!1,noAccessLabel:t.noAccessLabel??"",isPending:d,pendingLabel:t.pendingLabel??"",children:h})}function J({columns:t,data:n,actions:d,rowActions:o,rowActionsLabel:h="",selectable:x=!1,selectionType:g="checkbox",selectedKeys:U,onSelectionChange:W,defaultSortDescriptor:X,sortDescriptor:Y,onSortChange:y,ariaLabel:Z,dense:_,striped:A,maxHeight:I,searchPlaceholder:K="Search...",searchKeys:S=[],isLoading:v=!1,isRefreshing:V=!1,loadingMessage:N,emptyMessage:ee="No records found",previousLabel:ae="Previous",nextLabel:te="Next",pageSize:f=10,nestedColumns:B,getNestedData:E,nestedLoadingMessage:se,nestedEmptyMessage:ne="No records found",nestedSearchKeys:le,nestedSearchPlaceholder:re,nestedActions:C,nestedPageSize:ie}){const T=Q.useLoadingVisibility(v),F=Q.useLoadingVisibility(V&&!v),[P,oe]=b.useState(""),[de,q]=b.useState(1),[ce,ue]=b.useState(X),u=Y??ce,[H,be]=b.useState(new Set),[z,p]=b.useState(new Map),R=!!E&&!!B,M=!!o;function G(e,s){be(r=>{const c=new Set(r);return s?c.add(e):c.delete(e),c})}function he(e){const s=e.id,r=!H.has(s);if(G(s,r),!r||z.has(s))return;const c=E(e);c instanceof Promise?(p(l=>new Map(l).set(s,{status:"loading",data:[]})),c.then(l=>{p(m=>new Map(m).set(s,{status:"loaded",data:l}))},()=>{p(l=>{const m=new Map(l);return m.delete(s),m}),G(s,!1)})):p(l=>new Map(l).set(s,{status:"loaded",data:c}))}const j=S.length>0,xe=t.some(e=>e.isRowHeader),ge=j||!!d,w=b.useMemo(()=>{if(!P.trim()||!j)return n;const e=P.toLowerCase();return n.filter(s=>S.some(r=>String(s[r]??"").toLowerCase().includes(e)))},[n,P,S,j]),L=t.find(e=>e.sortable&&String(e.key)===String(u==null?void 0:u.column)),O=b.useMemo(()=>L&&u?Re(w,L,u.direction):w,[w,L,u]);function fe(e){ue(e),q(1),y==null||y(e)}const $=Math.max(1,Math.ceil(O.length/f)),k=Math.min(de,$),pe=O.slice((k-1)*f,k*f);function je(e,s){return s.render?s.render(e):String(e[s.key]??"")}return a.jsxs(Ne.Flex,{direction:"column",gap:"300",className:D.clsx("data-table",I!==void 0&&"data-table--fill"),children:[ge&&a.jsxs("div",{className:"data-table-toolbar",children:[j&&a.jsx(we.Search,{placeholder:K,onSearch:e=>{oe(e),q(1)},className:"data-table-search"}),d&&a.jsx("div",{className:"data-table-actions",children:d})]}),v||T?a.jsx("div",{role:"status","aria-live":"polite","aria-label":N,className:D.clsx("data-table-status",T?"data-table-loading":"data-table-loading-delay"),children:T&&a.jsxs(a.Fragment,{children:[a.jsx(Ce.BrandLoader,{"aria-hidden":!0,variant:"trace",size:"32",tone:"brand"}),a.jsx("span",{children:N})]})}):a.jsxs("div",{className:D.clsx("data-table-body",F&&"data-table-body--refreshing"),"aria-busy":V||void 0,children:[F&&a.jsx("div",{role:"progressbar","aria-label":N,className:"data-table-refresh-indicator"}),w.length===0?a.jsx("div",{role:"status",className:"data-table-status data-table-empty",children:ee}):a.jsxs(i.Table,{"aria-label":Z,dense:_,striped:A,maxHeight:I,selectionMode:x?g==="radio"?"single":"multiple":"none",selectionType:g,selectedKeys:U,onSelectionChange:W,sortDescriptor:u,onSortChange:fe,children:[a.jsxs(i.TableHead,{children:[R&&a.jsx(i.TableColumn,{className:"data-table-expand-col"}),t.map((e,s)=>a.jsx(i.TableColumn,{id:String(e.key),align:e.align,allowsSorting:e.sortable,isRowHeader:xe?e.isRowHeader:s===0,children:e.label},String(e.key))),M&&a.jsx(i.TableColumn,{align:"right",className:"data-table-row-actions-col",children:h})]}),a.jsx(i.TableBody,{children:pe.flatMap(e=>{const s=H.has(e.id),r=z.get(e.id),c=[a.jsxs(i.TableRow,{id:e.id,children:[R&&a.jsx(i.TableCell,{className:"data-table-expand-cell",children:a.jsx("button",{type:"button",className:"data-table-expand-btn","aria-label":s?"Collapse row":"Expand row","aria-expanded":s,onClick:()=>he(e),children:s?a.jsx(me.IconChevronDown,{size:"16"}):a.jsx(ye.IconChevronRight,{size:"16"})})}),t.map(l=>a.jsx(i.TableCell,{align:l.align,children:je(e,l)},String(l.key))),M&&a.jsx(i.TableCell,{align:"right",className:"data-table-row-actions-cell",children:a.jsx("div",{className:"data-table-row-actions",children:(typeof o=="function"?o(e):o).map(l=>a.jsx(Me,{action:l,item:e},l.key))})})]},e.id)];return s&&c.push(a.jsx(i.TableRow,{id:`${e.id}-nested`,className:"data-table-nested-row",children:a.jsx(i.TableCell,{colSpan:t.length+(R?1:0)+(x?1:0)+(M?1:0),className:"data-table-nested-cell",children:a.jsx(J,{columns:B,data:(r==null?void 0:r.data)??[],isLoading:!r||r.status==="loading",loadingMessage:se??"",emptyMessage:ne,searchKeys:le,searchPlaceholder:re,actions:C==null?void 0:C(e),pageSize:ie??f})})},`${e.id}-nested`)),c})})]})]}),a.jsx(Se.Pagination,{page:k,totalPages:$,onPageChange:q,previousLabel:ae,nextLabel:te})]})}exports.DataTable=J;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),D=require("../../../vendor/clsx/dist/clsx.cjs"),b=require("react");;/* empty css */const we=require("../../primitives/Search/Search.cjs"),i=require("../../primitives/Table/Table.cjs"),me=require("../../icons/IconChevronDown.cjs"),ye=require("../../icons/IconChevronRight.cjs"),Se=require("../../primitives/Pagination/Pagination.cjs"),ve=require("../../primitives/PermissionGate/PermissionGate.cjs"),Q=require("../../hooks/useLoadingVisibility.cjs"),Ne=require("../../layout/Flex/Flex.cjs"),Ce=require("../../primitives/BrandLoader/BrandLoader.cjs"),Te=require("../../primitives/IconButton/IconButton.cjs"),Pe=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});function qe(t,n){return t==null||n==null?t==null?n==null?0:1:-1:t instanceof Date&&n instanceof Date?t.getTime()-n.getTime():typeof t=="number"&&typeof n=="number"?t-n:Pe.compare(String(t),String(n))}function Re(t,n,d){const o=n.sortValue??(x=>x[n.key]),h=d==="descending"?-1:1;return[...t].sort((x,g)=>qe(o(x),o(g))*h)}function Me({action:t,item:n}){const d=t.isPending===!0,o=t.isAllowed!==!1&&!d,h=a.jsx(Te.IconButton,{variant:"text",size:"small","aria-label":t.label,isDisabled:!o&&!d,isPending:d,onPress:o?()=>t.onPress(n):void 0,children:t.icon});return o?h:a.jsx(ve.PermissionGate,{isAllowed:!1,noAccessLabel:t.noAccessLabel??"",isPending:d,pendingLabel:t.pendingLabel??"",children:h})}function U({columns:t,data:n,actions:d,rowActions:o,rowActionsLabel:h="",selectable:x=!1,selectionType:g="checkbox",selectedKeys:J,onSelectionChange:W,defaultSortDescriptor:X,sortDescriptor:Y,onSortChange:y,ariaLabel:Z,dense:_,striped:A,maxHeight:I,searchPlaceholder:K="Search...",searchKeys:S=[],isLoading:v=!1,isRefreshing:V=!1,loadingMessage:N,emptyMessage:ee="No records found",previousLabel:ae="Previous",nextLabel:te="Next",pageSize:f=10,nestedColumns:B,getNestedData:E,nestedLoadingMessage:se,nestedEmptyMessage:ne="No records found",nestedSearchKeys:le,nestedSearchPlaceholder:re,nestedActions:C,nestedPageSize:ie}){const T=Q.useLoadingVisibility(v),F=Q.useLoadingVisibility(V&&!v),[P,oe]=b.useState(""),[de,q]=b.useState(1),[ce,ue]=b.useState(X),u=Y??ce,[H,be]=b.useState(new Set),[$,p]=b.useState(new Map),R=!!E&&!!B,M=!!o;function z(e,s){be(r=>{const c=new Set(r);return s?c.add(e):c.delete(e),c})}function he(e){const s=e.id,r=!H.has(s);if(z(s,r),!r||$.has(s))return;const c=E(e);c instanceof Promise?(p(l=>new Map(l).set(s,{status:"loading",data:[]})),c.then(l=>{p(m=>new Map(m).set(s,{status:"loaded",data:l}))},()=>{p(l=>{const m=new Map(l);return m.delete(s),m}),z(s,!1)})):p(l=>new Map(l).set(s,{status:"loaded",data:c}))}const j=S.length>0,xe=t.some(e=>e.isRowHeader),ge=j||!!d,w=b.useMemo(()=>{if(!P.trim()||!j)return n;const e=P.toLowerCase();return n.filter(s=>S.some(r=>String(s[r]??"").toLowerCase().includes(e)))},[n,P,S,j]),L=t.find(e=>e.sortable&&String(e.key)===String(u==null?void 0:u.column)),G=b.useMemo(()=>L&&u?Re(w,L,u.direction):w,[w,L,u]);function fe(e){ue(e),q(1),y==null||y(e)}const O=Math.max(1,Math.ceil(G.length/f)),k=Math.min(de,O),pe=G.slice((k-1)*f,k*f);function je(e,s){return s.render?s.render(e):String(e[s.key]??"")}return a.jsxs(Ne.Flex,{direction:"column",gap:"300",className:D.clsx("data-table",I!==void 0&&"data-table--fill"),children:[ge&&a.jsxs("div",{className:"data-table-toolbar",children:[j&&a.jsx(we.Search,{placeholder:K,onSearch:e=>{oe(e),q(1)},className:"data-table-search"}),d&&a.jsx("div",{className:"data-table-actions",children:d})]}),v||T?a.jsx("div",{role:"status","aria-live":"polite","aria-label":N,className:D.clsx("data-table-status",T?"data-table-loading":"data-table-loading-delay"),children:T&&a.jsxs(a.Fragment,{children:[a.jsx(Ce.BrandLoader,{"aria-hidden":!0,variant:"trace",size:"32",tone:"brand"}),a.jsx("span",{children:N})]})}):a.jsxs("div",{className:D.clsx("data-table-body",F&&"data-table-body--refreshing"),"aria-busy":V||void 0,children:[F&&a.jsx("div",{role:"progressbar","aria-label":N,className:"data-table-refresh-indicator"}),w.length===0?a.jsx("div",{role:"status",className:"data-table-status data-table-empty",children:ee}):a.jsxs(i.Table,{"aria-label":Z,dense:_,striped:A,maxHeight:I,selectionMode:x?g==="radio"?"single":"multiple":"none",selectionType:g,selectedKeys:J,onSelectionChange:W,sortDescriptor:u,onSortChange:fe,children:[a.jsxs(i.TableHead,{children:[R&&a.jsx(i.TableColumn,{className:"data-table-expand-col"}),t.map((e,s)=>a.jsx(i.TableColumn,{id:String(e.key),align:e.align,allowsSorting:e.sortable,isRowHeader:xe?e.isRowHeader:s===0,children:e.label},String(e.key))),M&&a.jsx(i.TableColumn,{align:"right",className:"data-table-row-actions-col",children:h})]}),a.jsx(i.TableBody,{children:pe.flatMap(e=>{const s=H.has(e.id),r=$.get(e.id),c=[a.jsxs(i.TableRow,{id:e.id,children:[R&&a.jsx(i.TableCell,{className:"data-table-expand-cell",children:a.jsx("button",{type:"button",className:"data-table-expand-btn","aria-label":s?"Collapse row":"Expand row","aria-expanded":s,onClick:()=>he(e),children:s?a.jsx(me.IconChevronDown,{size:"16"}):a.jsx(ye.IconChevronRight,{size:"16"})})}),t.map(l=>a.jsx(i.TableCell,{align:l.align,children:je(e,l)},String(l.key))),M&&a.jsx(i.TableCell,{align:"right",className:"data-table-row-actions-cell",children:a.jsx("div",{className:"data-table-row-actions",children:(typeof o=="function"?o(e):o).map(l=>a.jsx(Me,{action:l,item:e},l.key))})})]},e.id)];return s&&c.push(a.jsx(i.TableRow,{id:`${e.id}-nested`,className:"data-table-nested-row",children:a.jsx(i.TableCell,{colSpan:t.length+(R?1:0)+(x?1:0)+(M?1:0),className:"data-table-nested-cell",children:a.jsx(U,{columns:B,data:(r==null?void 0:r.data)??[],isLoading:!r||r.status==="loading",loadingMessage:se??"",emptyMessage:ne,searchKeys:le,searchPlaceholder:re,actions:C==null?void 0:C(e),pageSize:ie??f})})},`${e.id}-nested`)),c})})]})]}),a.jsx(Se.Pagination,{page:k,totalPages:O,onPageChange:q,previousLabel:ae,nextLabel:te})]})}exports.DataTable=U;
2
2
  //# sourceMappingURL=DataTable.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),b=require("../../../vendor/clsx/dist/clsx.cjs"),r=require("react");;/* empty css */const y=require("../../primitives/Tooltip/Tooltip.cjs"),z=require("../../icons/IconInfo.cjs"),B=require("../../icons/IconChevronDown.cjs"),u=require("../../primitives/IconButton/IconButton.cjs"),R=r.forwardRef(function({title:g,description:o,descriptionButtonLabel:x,headerActions:n,isCollapsible:s,collapseButtonLabel:m,expandButtonLabel:h,collapsed:a,defaultCollapsed:j,onCollapsedChange:i,children:w,className:f,...v},I){const d=r.useId(),c=a!==void 0,[p,N]=r.useState(j??!1),t=s===!0&&(c?a===!0:p);function q(){const l=!t;c||N(l),i==null||i(l)}return e.jsxs("div",{ref:I,className:b.clsx("widget",f),...v,"data-collapsed":t||void 0,children:[e.jsxs("div",{className:"widget-header widget-drag-handle",children:[e.jsxs("span",{className:"widget-header-title-group",children:[e.jsx("span",{className:"widget-header-title",children:g}),o&&e.jsx(y.Tooltip,{content:o,placement:"bottom",offset:4,children:e.jsx(u.IconButton,{"aria-label":x,variant:"subtle",size:"small",className:"widget-header-description-trigger",children:e.jsx(z.IconInfo,{size:"14"})})})]}),(n||s)&&e.jsxs("div",{className:"widget-header-actions",children:[n,s&&e.jsx(u.IconButton,{"aria-label":t?h:m,"aria-expanded":!t,"aria-controls":d,variant:"subtle",size:"small",className:"widget-header-collapse-trigger",onPress:q,children:e.jsx(B.IconChevronDown,{size:"16",className:"widget-header-collapse-indicator"})})]})]}),e.jsx("div",{id:d,className:"widget-body",hidden:t,children:w})]})});exports.Widget=R;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),b=require("../../../vendor/clsx/dist/clsx.cjs"),i=require("react");;/* empty css */const y=require("../../primitives/Tooltip/Tooltip.cjs"),z=require("../../icons/IconInfo.cjs"),T=require("../../icons/IconChevronDown.cjs"),u=require("../../primitives/IconButton/IconButton.cjs"),B=i.forwardRef(function({title:g,description:o,descriptionButtonLabel:x,headerActions:n,isCollapsible:s,collapseButtonLabel:m,expandButtonLabel:h,collapsed:a,defaultCollapsed:j,onCollapsedChange:r,children:w,className:f,...v},I){const d=i.useId(),c=a!==void 0,[p,N]=i.useState(j??!1),t=s===!0&&(c?a===!0:p);function q(){const l=!t;c||N(l),r==null||r(l)}return e.jsxs("div",{ref:I,className:b.clsx("widget",f),...v,"data-collapsed":t||void 0,children:[e.jsxs("div",{className:"widget-header widget-drag-handle",children:[e.jsxs("span",{className:"widget-header-title-group",children:[e.jsx("span",{className:"widget-header-title",children:g}),o&&e.jsx(y.Tooltip,{content:o,placement:"bottom",offset:4,children:e.jsx(u.IconButton,{"aria-label":x,variant:"subtle",size:"small",className:"widget-header-description-trigger",children:e.jsx(z.IconInfo,{size:"14"})})})]}),(n||s)&&e.jsxs("div",{className:"widget-header-actions",children:[n,s&&e.jsx(u.IconButton,{"aria-label":t?h:m,"aria-expanded":!t,"aria-controls":d,variant:"subtle",size:"small",className:"widget-header-collapse-trigger",onPress:q,children:e.jsx(T.IconChevronDown,{size:"16",className:"widget-header-collapse-indicator"})})]})]}),e.jsx("div",{id:d,className:"widget-body",hidden:t,children:w})]})});exports.Widget=B;
2
2
  //# sourceMappingURL=Widget.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),A=require("../../../vendor/clsx/dist/clsx.cjs"),G=require("react"),c=require("../../../_virtual/index.cjs");;/* empty css */;/* empty css */;/* empty css */const T=c.WidthProvider(c),_=".widget-drag-handle",w=".widget-header-actions";function S({layout:o,onLayoutChange:r,cols:u=12,rowHeight:E=80,isEditable:g=!1,isDraggable:m,isResizable:b,className:R,style:q,children:i}){const D=o.map(({id:e,x:a,y:t,w:s,h:d})=>({i:e,x:a,y:t,w:s,h:d})),n=m??g;function x(e){r==null||r(e.map(({i:a,x:t,y:s,w:d,h:y})=>({id:a,x:t,y:s,w:d,h:y})))}return l.jsx(T,{className:A.clsx("widget-grid",n&&"widget-grid-draggable",R),style:q,layout:D,cols:u,rowHeight:E,isDraggable:n,isResizable:b??g,draggableHandle:_,draggableCancel:w,onLayoutChange:x,children:(Array.isArray(i)?i:[i]).map(e=>G.isValidElement(e)?l.jsx("div",{className:"widget-grid-item",children:e},e.key):e)})}exports.WidgetGrid=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),y=require("../../../vendor/clsx/dist/clsx.cjs"),A=require("react"),c=require("../../../_virtual/index.cjs");;/* empty css */;/* empty css */;/* empty css */const G=c.WidthProvider(c),_=".widget-drag-handle",w=".widget-header-actions";function S({layout:o,onLayoutChange:r,cols:u=12,rowHeight:E=80,isEditable:g=!1,isDraggable:m,isResizable:b,className:q,style:D,children:i}){const R=o.map(({id:e,x:a,y:t,w:s,h:d})=>({i:e,x:a,y:t,w:s,h:d})),n=m??g;function T(e){r==null||r(e.map(({i:a,x:t,y:s,w:d,h:x})=>({id:a,x:t,y:s,w:d,h:x})))}return l.jsx(G,{className:y.clsx("widget-grid",n&&"widget-grid-draggable",q),style:D,layout:R,cols:u,rowHeight:E,isDraggable:n,isResizable:b??g,draggableHandle:_,draggableCancel:w,onLayoutChange:T,children:(Array.isArray(i)?i:[i]).map(e=>A.isValidElement(e)?l.jsx("div",{className:"widget-grid-item",children:e},e.key):e)})}exports.WidgetGrid=S;
2
2
  //# sourceMappingURL=WidgetGrid.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),T=require("../../../../vendor/clsx/dist/clsx.cjs"),C=require("react"),_=require("../useChartInstance.cjs"),m=require("../ChartLegend/ChartLegend.cjs"),p=require("../ChartLegend/use-chart-legend.cjs"),y=require("./bar-chart-option.cjs");;/* empty css */const M={};function E({categories:n,series:r,orientation:o="vertical",stacking:i="off",valueLabel:c="auto",legend:g="inline",valueAxis:a=M,valueFormatter:l,onSeriesColorChange:f,legendLabels:S,className:b,...q}){const{containerRef:I,chart:s,theme:e,resolveSeriesColor:O}=_.useChartInstance(),{items:j,colorsBySeriesId:u,colorTokensBySeriesId:v,hiddenSeriesIds:d,toggleSeries:x}=p.useChartLegend(r,(e==null?void 0:e.seriesColors)??[],O),h=C.useMemo(()=>r.filter(L=>!d.has(L.id)),[r,d]);C.useEffect(()=>{!s||!e||s.setOption(y.buildBarChartOption({categories:n,series:h,orientation:o,stacking:i,valueLabel:c,valueAxis:a,theme:e,seriesColorOverrides:u,valueFormatter:l}),{notMerge:!0})},[s,e,n,h,o,i,c,a,u,l]);const B=g!=="none"&&r.length>0;return t.jsxs("div",{className:T.clsx("bar-chart",b),...q,children:[B&&t.jsx(m.ChartLegend,{items:j,onToggle:x,onColorChange:f,colorTokensBySeriesId:v,labels:S}),t.jsx("div",{ref:I,className:"bar-chart__canvas"})]})}exports.BarChart=E;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),L=require("../../../../vendor/clsx/dist/clsx.cjs"),C=require("react"),_=require("../useChartInstance.cjs"),m=require("../ChartLegend/ChartLegend.cjs"),p=require("../ChartLegend/use-chart-legend.cjs"),y=require("./bar-chart-option.cjs");;/* empty css */const M={};function E({categories:n,series:r,orientation:o="vertical",stacking:i="off",valueLabel:c="auto",legend:g="inline",valueAxis:a=M,valueFormatter:l,onSeriesColorChange:f,legendLabels:S,className:b,...q}){const{containerRef:I,chart:s,theme:e,resolveSeriesColor:O}=_.useChartInstance(),{items:T,colorsBySeriesId:u,colorTokensBySeriesId:j,hiddenSeriesIds:d,toggleSeries:v}=p.useChartLegend(r,(e==null?void 0:e.seriesColors)??[],O),h=C.useMemo(()=>r.filter(B=>!d.has(B.id)),[r,d]);C.useEffect(()=>{!s||!e||s.setOption(y.buildBarChartOption({categories:n,series:h,orientation:o,stacking:i,valueLabel:c,valueAxis:a,theme:e,seriesColorOverrides:u,valueFormatter:l}),{notMerge:!0})},[s,e,n,h,o,i,c,a,u,l]);const x=g!=="none"&&r.length>0;return t.jsxs("div",{className:L.clsx("bar-chart",b),...q,children:[x&&t.jsx(m.ChartLegend,{items:T,onToggle:v,onColorChange:f,colorTokensBySeriesId:j,labels:S}),t.jsx("div",{ref:I,className:"bar-chart__canvas"})]})}exports.BarChart=E;
2
2
  //# sourceMappingURL=BarChart.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),S=require("react"),l=require("react-aria-components"),C=require("../chart-palette.cjs");;/* empty css */const _=require("../../../hooks/useOverlayPortal.cjs"),m={palette:"Color palette",colorOption:e=>`Color ${e}`,automaticColor:"Automatic color"};function d(e){try{return l.parseColor(e).toString("hex")}catch{return e}}function E(e,c){const o=c.toString("hex"),n=e.findIndex(r=>d(r)===o);return n<0?void 0:C.CHART_SERIES_COLOR_TOKENS[n]}function R(e){const c=window.getComputedStyle(e);return C.CHART_SERIES_COLOR_TOKENS.map(o=>c.getPropertyValue(o).trim())}const f=[];function P({colorToken:e,isResettable:c,labels:o,onChoose:n}){const[r,h]=S.useState(f),i=S.useRef(null);S.useLayoutEffect(()=>{const a=i.current;a&&r.length===0&&h(R(a))},[r]);const u=e?C.CHART_SERIES_COLOR_TOKENS.indexOf(e):-1,p=u<0?void 0:r[u];return t.jsxs("div",{ref:i,className:"chart-color-picker",children:[t.jsx(l.ColorSwatchPicker,{className:"chart-color-picker__colors","aria-label":o.palette,value:p,onChange:a=>{const s=E(r,a);s&&n(s)},children:r.map((a,s)=>t.jsx(l.ColorSwatchPickerItem,{color:a,className:"chart-color-picker__color",children:t.jsx(l.ColorSwatch,{"aria-label":o.colorOption(s+1)})},C.CHART_SERIES_COLOR_TOKENS[s]))}),c&&t.jsx(l.Button,{className:"chart-color-picker__reset",onPress:()=>n(null),children:o.automaticColor})]})}function x({colorToken:e,onChange:c,isResettable:o=!0,labels:n,triggerLabel:r,triggerClassName:h,triggerStyle:i,children:u}){const p=_.useOverlayPortalContainer(),a={...m,...n};return t.jsxs(l.DialogTrigger,{children:[t.jsx(l.Button,{className:h,style:i,"aria-label":r,children:u}),t.jsx(l.Popover,{className:"chart-color-picker-popover",placement:"bottom start",UNSTABLE_portalContainer:p,children:t.jsx(l.Dialog,{className:"chart-color-picker-dialog","aria-label":a.palette,children:({close:s})=>t.jsx(P,{colorToken:e,isResettable:o,labels:a,onChoose:O=>{s(),c(O)}})})})]})}exports.ChartColorPicker=x;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),S=require("react"),l=require("react-aria-components"),C=require("../chart-palette.cjs");;/* empty css */const _=require("../../../hooks/useOverlayPortal.cjs"),m={palette:"Color palette",colorOption:e=>`Color ${e}`,automaticColor:"Automatic color"};function d(e){try{return l.parseColor(e).toString("hex")}catch{return e}}function E(e,c){const o=c.toString("hex"),n=e.findIndex(r=>d(r)===o);return n<0?void 0:C.CHART_SERIES_COLOR_TOKENS[n]}function f(e){const c=window.getComputedStyle(e);return C.CHART_SERIES_COLOR_TOKENS.map(o=>c.getPropertyValue(o).trim())}const P=[];function R({colorToken:e,isResettable:c,labels:o,onChoose:n}){const[r,h]=S.useState(P),i=S.useRef(null);S.useLayoutEffect(()=>{const a=i.current;a&&r.length===0&&h(f(a))},[r]);const u=e?C.CHART_SERIES_COLOR_TOKENS.indexOf(e):-1,p=u<0?void 0:r[u];return t.jsxs("div",{ref:i,className:"chart-color-picker",children:[t.jsx(l.ColorSwatchPicker,{className:"chart-color-picker__colors","aria-label":o.palette,value:p,onChange:a=>{const s=E(r,a);s&&n(s)},children:r.map((a,s)=>t.jsx(l.ColorSwatchPickerItem,{color:a,className:"chart-color-picker__color",children:t.jsx(l.ColorSwatch,{"aria-label":o.colorOption(s+1)})},C.CHART_SERIES_COLOR_TOKENS[s]))}),c&&t.jsx(l.Button,{className:"chart-color-picker__reset",onPress:()=>n(null),children:o.automaticColor})]})}function x({colorToken:e,onChange:c,isResettable:o=!0,labels:n,triggerLabel:r,triggerClassName:h,triggerStyle:i,children:u}){const p=_.useOverlayPortalContainer(),a={...m,...n};return t.jsxs(l.DialogTrigger,{children:[t.jsx(l.Button,{className:h,style:i,"aria-label":r,children:u}),t.jsx(l.Popover,{className:"chart-color-picker-popover",placement:"bottom start",UNSTABLE_portalContainer:p,children:t.jsx(l.Dialog,{className:"chart-color-picker-dialog","aria-label":a.palette,children:({close:s})=>t.jsx(R,{colorToken:e,isResettable:o,labels:a,onChoose:O=>{s(),c(O)}})})})]})}exports.ChartColorPicker=x;
2
2
  //# sourceMappingURL=ChartColorPicker.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),d=require("../chart-palette.cjs");function T(t,r,u){const[s,S]=c.useState(()=>new Set),l=c.useCallback(e=>{S(n=>{const o=new Set(n);return o.has(e)?o.delete(e):o.add(e),o})},[]),h=c.useMemo(()=>{const e={};return t.forEach((n,o)=>{e[n.id]=n.colorToken??d.CHART_SERIES_COLOR_TOKENS[o%d.CHART_SERIES_COLOR_TOKENS.length]}),e},[t]),i=c.useMemo(()=>{const e={};return t.forEach((n,o)=>{const m=n.colorToken?u(n.colorToken):void 0;e[n.id]=m??r[o%r.length]}),e},[t,r,u]);return{items:c.useMemo(()=>t.map(e=>({id:e.id,name:e.name,color:i[e.id],isHidden:s.has(e.id)})),[t,i,s]),colorsBySeriesId:i,colorTokensBySeriesId:h,hiddenSeriesIds:s,toggleSeries:l}}exports.useChartLegend=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react"),d=require("../chart-palette.cjs");function m(t,r,u){const[s,S]=c.useState(()=>new Set),l=c.useCallback(e=>{S(n=>{const o=new Set(n);return o.has(e)?o.delete(e):o.add(e),o})},[]),h=c.useMemo(()=>{const e={};return t.forEach((n,o)=>{e[n.id]=n.colorToken??d.CHART_SERIES_COLOR_TOKENS[o%d.CHART_SERIES_COLOR_TOKENS.length]}),e},[t]),i=c.useMemo(()=>{const e={};return t.forEach((n,o)=>{const T=n.colorToken?u(n.colorToken):void 0;e[n.id]=T??r[o%r.length]}),e},[t,r,u]);return{items:c.useMemo(()=>t.map(e=>({id:e.id,name:e.name,color:i[e.id],isHidden:s.has(e.id)})),[t,i,s]),colorsBySeriesId:i,colorTokensBySeriesId:h,hiddenSeriesIds:s,toggleSeries:l}}exports.useChartLegend=m;
2
2
  //# sourceMappingURL=use-chart-legend.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),ee=require("../../../../vendor/clsx/dist/clsx.cjs"),i=require("react"),te=require("../ChartLegend/ChartLegend.cjs"),re=require("../ChartLegend/use-chart-legend.cjs"),ne=require("../chart-palette.cjs"),I=require("../chart-share.cjs"),ie=require("../useChartInstance.cjs"),se=require("./pie-chart-option.cjs"),h=require("./pie-chart-slices.cjs");;/* empty css */const ce={others:"Others",total:"Total",backToPrevious:e=>`Back from ${e}`},oe=200,ae=["percent"],le=[];function ue(e,s,a){if(!e||s.length===0)return;const l=s.includes("percent"),S=s.includes("value");return l&&S?`${a(e.value)} (${I.formatShare(e.share)})`:S?a(e.value):I.formatShare(e.share)}function de(e){const[s,a]=i.useState(0);return i.useLayoutEffect(()=>{if(!e)return;const l=new ResizeObserver(()=>a(Math.min(e.clientWidth,e.clientHeight)));return l.observe(e),()=>l.disconnect()},[e]),s}function he({data:e,shape:s="donut",labelContent:a=ae,showTotal:l="auto",total:S,valueFormatter:p,legend:q="inline",legendPosition:y="bottom",legendValues:M=le,onSeriesColorChange:A,onFocusChange:b,legendLabels:R,labels:B,className:$,...D}){const{containerRef:U,chart:u,theme:c,resolveSeriesColor:H}=ie.useChartInstance(),o={...ce,...B},[f,V]=i.useState(null),[w,z]=i.useState(null),G=de(w),K=i.useMemo(()=>e.map(t=>({id:t.id,name:h.displayNameOf(t,o.others),colorToken:t.colorToken??(t.isOthers?ne.CHART_NEUTRAL_COLOR_TOKEN:void 0)})),[e,o.others]),{items:W,colorsBySeriesId:L,colorTokensBySeriesId:X,hiddenSeriesIds:O,toggleSeries:Z}=re.useChartLegend(K,(c==null?void 0:c.seriesColors)??[],H),d=i.useMemo(()=>h.buildPieSlices({nodes:e.filter(t=>!O.has(t.id)),colorsByRootId:L,fallbackColor:(c==null?void 0:c.neutralColor)??"#9ca3af",othersName:o.others}),[e,O,L,c,o.others]),r=i.useMemo(()=>f===null?void 0:h.findSlice(d,f),[d,f]),m=r?r.children:d,_=i.useCallback(t=>{V(t),b==null||b(t)},[b]);i.useEffect(()=>{f!==null&&!r&&_(null)},[f,r,_]),i.useEffect(()=>{!u||!c||u.setOption(se.buildPieChartOption({slices:m,shape:s,labelContent:a,theme:c,valueFormatter:p}),{notMerge:!0})},[u,c,m,s,a,p]),i.useEffect(()=>{if(!u)return;function t(C){var P;const x=(P=C.data)==null?void 0:P.id;if(typeof x!="string")return;const T=h.findSlice(m,x);T&&T.children.length>0&&_(T.id)}return u.on("click",t),()=>{u.off("click",t)}},[u,m,_]);function v(t){return p?p(t):String(t)}const J=W.map(t=>({...t,detail:ue(d.find(C=>C.id===t.id),M,v)})),g=l==="on"||l==="auto"&&G>=oe,N=r?r.value:S??h.totalOf(d),k=r?h.findParentSlice(d,r.id):void 0,Q=q!=="none"&&e.length>0,E=n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"pie-chart__total-value",children:v(N)}),n.jsx("span",{className:"pie-chart__total-caption",children:r?r.name:o.total})]});function j(){_(k?k.id:null)}function Y(){return r?n.jsx("button",{type:"button",className:"pie-chart__center pie-chart__center--button","aria-label":o.backToPrevious(r.name),onClick:j,children:g&&E}):g&&n.jsx("div",{className:"pie-chart__center",children:E})}function F(){return r?n.jsxs("button",{type:"button",className:"pie-chart__footer pie-chart__footer--button","aria-label":o.backToPrevious(r.name),onClick:j,children:[r.name,g&&`: ${v(N)}`]}):g&&n.jsx("div",{className:"pie-chart__footer",children:`${o.total}: ${v(N)}`})}return n.jsxs("div",{className:ee.clsx("pie-chart",`pie-chart--legend-${y}`,$),...D,children:[Q&&n.jsx(te.ChartLegend,{className:"pie-chart__legend",items:J,onToggle:Z,onColorChange:A,colorTokensBySeriesId:X,labels:R}),n.jsxs("div",{className:"pie-chart__body",children:[n.jsxs("div",{ref:z,className:"pie-chart__stage",children:[n.jsx("div",{ref:U,className:"pie-chart__canvas"}),s==="donut"&&Y()]}),s==="pie"&&F()]})]})}exports.PieChart=he;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),ee=require("../../../../vendor/clsx/dist/clsx.cjs"),i=require("react"),te=require("../ChartLegend/ChartLegend.cjs"),re=require("../ChartLegend/use-chart-legend.cjs"),ne=require("../chart-palette.cjs"),I=require("../chart-share.cjs"),ie=require("../useChartInstance.cjs"),se=require("./pie-chart-option.cjs"),h=require("./pie-chart-slices.cjs");;/* empty css */const ce={others:"Others",total:"Total",backToPrevious:e=>`Back from ${e}`},oe=200,ae=["percent"],le=[];function ue(e,s,a){if(!e||s.length===0)return;const l=s.includes("percent"),S=s.includes("value");return l&&S?`${a(e.value)} (${I.formatShare(e.share)})`:S?a(e.value):I.formatShare(e.share)}function de(e){const[s,a]=i.useState(0);return i.useLayoutEffect(()=>{if(!e)return;const l=new ResizeObserver(()=>a(Math.min(e.clientWidth,e.clientHeight)));return l.observe(e),()=>l.disconnect()},[e]),s}function he({data:e,shape:s="donut",labelContent:a=ae,showTotal:l="auto",total:S,valueFormatter:p,legend:q="inline",legendPosition:y="bottom",legendValues:M=le,onSeriesColorChange:A,onFocusChange:b,legendLabels:$,labels:R,className:B,...U}){const{containerRef:D,chart:u,theme:c,resolveSeriesColor:H}=ie.useChartInstance(),o={...ce,...R},[f,V]=i.useState(null),[w,z]=i.useState(null),G=de(w),K=i.useMemo(()=>e.map(t=>({id:t.id,name:h.displayNameOf(t,o.others),colorToken:t.colorToken??(t.isOthers?ne.CHART_NEUTRAL_COLOR_TOKEN:void 0)})),[e,o.others]),{items:W,colorsBySeriesId:k,colorTokensBySeriesId:X,hiddenSeriesIds:L,toggleSeries:Z}=re.useChartLegend(K,(c==null?void 0:c.seriesColors)??[],H),d=i.useMemo(()=>h.buildPieSlices({nodes:e.filter(t=>!L.has(t.id)),colorsByRootId:k,fallbackColor:(c==null?void 0:c.neutralColor)??"#9ca3af",othersName:o.others}),[e,L,k,c,o.others]),r=i.useMemo(()=>f===null?void 0:h.findSlice(d,f),[d,f]),m=r?r.children:d,_=i.useCallback(t=>{V(t),b==null||b(t)},[b]);i.useEffect(()=>{f!==null&&!r&&_(null)},[f,r,_]),i.useEffect(()=>{!u||!c||u.setOption(se.buildPieChartOption({slices:m,shape:s,labelContent:a,theme:c,valueFormatter:p}),{notMerge:!0})},[u,c,m,s,a,p]),i.useEffect(()=>{if(!u)return;function t(T){var P;const x=(P=T.data)==null?void 0:P.id;if(typeof x!="string")return;const C=h.findSlice(m,x);C&&C.children.length>0&&_(C.id)}return u.on("click",t),()=>{u.off("click",t)}},[u,m,_]);function v(t){return p?p(t):String(t)}const J=W.map(t=>({...t,detail:ue(d.find(T=>T.id===t.id),M,v)})),g=l==="on"||l==="auto"&&G>=oe,N=r?r.value:S??h.totalOf(d),O=r?h.findParentSlice(d,r.id):void 0,Q=q!=="none"&&e.length>0,E=n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"pie-chart__total-value",children:v(N)}),n.jsx("span",{className:"pie-chart__total-caption",children:r?r.name:o.total})]});function j(){_(O?O.id:null)}function Y(){return r?n.jsx("button",{type:"button",className:"pie-chart__center pie-chart__center--button","aria-label":o.backToPrevious(r.name),onClick:j,children:g&&E}):g&&n.jsx("div",{className:"pie-chart__center",children:E})}function F(){return r?n.jsxs("button",{type:"button",className:"pie-chart__footer pie-chart__footer--button","aria-label":o.backToPrevious(r.name),onClick:j,children:[r.name,g&&`: ${v(N)}`]}):g&&n.jsx("div",{className:"pie-chart__footer",children:`${o.total}: ${v(N)}`})}return n.jsxs("div",{className:ee.clsx("pie-chart",`pie-chart--legend-${y}`,B),...U,children:[Q&&n.jsx(te.ChartLegend,{className:"pie-chart__legend",items:J,onToggle:Z,onColorChange:A,colorTokensBySeriesId:X,labels:$}),n.jsxs("div",{className:"pie-chart__body",children:[n.jsxs("div",{ref:z,className:"pie-chart__stage",children:[n.jsx("div",{ref:D,className:"pie-chart__canvas"}),s==="donut"&&Y()]}),s==="pie"&&F()]})]})}exports.PieChart=he;
2
2
  //# sourceMappingURL=PieChart.cjs.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),L=require("../../../../vendor/clsx/dist/clsx.cjs"),S=require("react"),M=require("../useChartInstance.cjs"),N=require("../ChartLegend/ChartLegend.cjs"),P=require("../ChartLegend/use-chart-legend.cjs"),b=require("./time-series-option.cjs");;/* empty css */const E={},R={};function Y({series:r,displayType:t="line",legend:h="inline",line:n=R,yAxis:o=E,showSymbols:c=!1,showValueLabels:a=!1,valueFormatter:l,onSeriesColorChange:C,legendLabels:f,className:m,...I}){const{containerRef:O,chart:s,theme:e,resolveSeriesColor:T}=M.useChartInstance(),{items:q,colorsBySeriesId:u,colorTokensBySeriesId:_,hiddenSeriesIds:d,toggleSeries:v}=P.useChartLegend(r,(e==null?void 0:e.seriesColors)??[],T),g=S.useMemo(()=>r.filter(x=>!d.has(x.id)),[r,d]);S.useEffect(()=>{!s||!e||s.setOption(b.buildTimeSeriesOption({series:g,displayType:t,line:n,yAxis:o,theme:e,showSymbols:c,showValueLabels:a,seriesColorOverrides:u,valueFormatter:l}),{notMerge:!0})},[s,e,g,t,n,o,c,a,u,l]);const j=h!=="none"&&r.length>0;return i.jsxs("div",{className:L.clsx("time-series-chart",m),...I,children:[j&&i.jsx(N.ChartLegend,{items:q,onToggle:v,onColorChange:C,colorTokensBySeriesId:_,labels:f}),i.jsx("div",{ref:O,className:"time-series-chart__canvas"})]})}exports.TimeSeriesChart=Y;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),j=require("../../../../vendor/clsx/dist/clsx.cjs"),h=require("react"),E=require("../useChartInstance.cjs"),L=require("../ChartLegend/ChartLegend.cjs"),b=require("../ChartLegend/use-chart-legend.cjs"),Y=require("./time-series-option.cjs");;/* empty css */const x={},X={},k={};function p({series:r,displayType:i="line",legend:C="inline",line:n=k,xAxis:o=x,yAxis:c=X,showSymbols:a=!1,showValueLabels:l=!1,valueFormatter:u,onSeriesColorChange:T,legendLabels:I,className:O,...f}){const{containerRef:_,chart:s,theme:e,resolveSeriesColor:m}=E.useChartInstance(),{items:q,colorsBySeriesId:d,colorTokensBySeriesId:P,hiddenSeriesIds:S,toggleSeries:v}=b.useChartLegend(r,(e==null?void 0:e.seriesColors)??[],m),g=h.useMemo(()=>r.filter(N=>!S.has(N.id)),[r,S]);h.useEffect(()=>{!s||!e||s.setOption(Y.buildTimeSeriesOption({series:g,displayType:i,line:n,xAxis:o,yAxis:c,theme:e,showSymbols:a,showValueLabels:l,seriesColorOverrides:d,valueFormatter:u}),{notMerge:!0})},[s,e,g,i,n,o,c,a,l,d,u]);const M=C!=="none"&&r.length>0;return t.jsxs("div",{className:j.clsx("time-series-chart",O),...f,children:[M&&t.jsx(L.ChartLegend,{items:q,onToggle:v,onColorChange:T,colorTokensBySeriesId:P,labels:I}),t.jsx("div",{ref:_,className:"time-series-chart__canvas"})]})}exports.TimeSeriesChart=p;
2
2
  //# sourceMappingURL=TimeSeriesChart.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"TimeSeriesChart.cjs","sources":["../../../../../../src/ui/components/charts/TimeSeriesChart/TimeSeriesChart.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { type ComponentPropsWithoutRef, useEffect, useMemo } from \"react\";\nimport { useChartInstance, type ChartInstance } from \"../useChartInstance\";\nimport { ChartLegend, type ChartLegendLabels } from \"../ChartLegend/ChartLegend\";\nimport { useChartLegend, type ChartLegendState } from \"../ChartLegend/use-chart-legend\";\nimport {\n buildTimeSeriesOption,\n type TimeSeriesData,\n type TimeSeriesDisplayType,\n type TimeSeriesLegendMode,\n type TimeSeriesLineOptions,\n type TimeSeriesYAxisOptions,\n} from \"./time-series-option\";\nimport \"./time-series-chart.css\";\n\nexport type {\n TimeSeriesData,\n TimeSeriesDisplayType,\n TimeSeriesLegendMode,\n TimeSeriesLineOptions,\n TimeSeriesLineStyle,\n TimeSeriesLineWidth,\n TimeSeriesPoint,\n TimeSeriesYAxisOptions,\n} from \"./time-series-option\";\n\nexport type TimeSeriesChartProps = Omit<ComponentPropsWithoutRef<\"div\">, \"children\"> & {\n series: TimeSeriesData[];\n displayType?: TimeSeriesDisplayType;\n legend?: TimeSeriesLegendMode;\n line?: TimeSeriesLineOptions;\n yAxis?: TimeSeriesYAxisOptions;\n showSymbols?: boolean;\n showValueLabels?: boolean;\n valueFormatter?: (value: number) => string;\n // Habilita o seletor de cor no marcador da legenda. Sem ele o marcador é só desenho — o gráfico\n // que não tem onde guardar a escolha não pode oferecê-la.\n onSeriesColorChange?: (seriesId: string, colorToken: string | null) => void;\n legendLabels?: Partial<ChartLegendLabels>;\n};\n\nconst EMPTY_Y_AXIS_OPTIONS: TimeSeriesYAxisOptions = {};\n\nconst EMPTY_LINE_OPTIONS: TimeSeriesLineOptions = {};\n\nexport function TimeSeriesChart({\n series,\n displayType = \"line\",\n legend = \"inline\",\n line = EMPTY_LINE_OPTIONS,\n yAxis = EMPTY_Y_AXIS_OPTIONS,\n showSymbols = false,\n showValueLabels = false,\n valueFormatter,\n onSeriesColorChange,\n legendLabels,\n className,\n ...props\n}: TimeSeriesChartProps) {\n const { containerRef, chart, theme, resolveSeriesColor }: ChartInstance = useChartInstance();\n\n const {\n items,\n colorsBySeriesId,\n colorTokensBySeriesId,\n hiddenSeriesIds,\n toggleSeries,\n }: ChartLegendState =\n useChartLegend(series, theme?.seriesColors ?? [], resolveSeriesColor);\n\n // A série escondida sai da opção inteira, em vez de ficar com a seleção desligada do ECharts: é\n // o que faz o eixo reescalar sobre o que restou.\n const visibleSeries: TimeSeriesData[] = useMemo(\n () => series.filter((data: TimeSeriesData) => !hiddenSeriesIds.has(data.id)),\n [series, hiddenSeriesIds],\n );\n\n useEffect(() => {\n if (!chart || !theme) return;\n\n // `notMerge` evita que uma série removida da configuração continue desenhada: o ECharts\n // casa séries por id e mantém as que não aparecem na opção nova.\n chart.setOption(\n buildTimeSeriesOption({\n series: visibleSeries,\n displayType,\n line,\n yAxis,\n theme,\n showSymbols,\n showValueLabels,\n seriesColorOverrides: colorsBySeriesId,\n valueFormatter,\n }),\n { notMerge: true },\n );\n }, [\n chart,\n theme,\n visibleSeries,\n displayType,\n line,\n yAxis,\n showSymbols,\n showValueLabels,\n colorsBySeriesId,\n valueFormatter,\n ]);\n\n const isLegendVisible: boolean = legend !== \"none\" && series.length > 0;\n\n return (\n <div className={clsx(\"time-series-chart\", className)} {...props}>\n {isLegendVisible && (\n <ChartLegend\n items={items}\n onToggle={toggleSeries}\n onColorChange={onSeriesColorChange}\n colorTokensBySeriesId={colorTokensBySeriesId}\n labels={legendLabels}\n />\n )}\n <div ref={containerRef} className=\"time-series-chart__canvas\" />\n </div>\n );\n}\n"],"names":["EMPTY_Y_AXIS_OPTIONS","EMPTY_LINE_OPTIONS","TimeSeriesChart","series","displayType","legend","line","yAxis","showSymbols","showValueLabels","valueFormatter","onSeriesColorChange","legendLabels","className","props","containerRef","chart","theme","resolveSeriesColor","useChartInstance","items","colorsBySeriesId","colorTokensBySeriesId","hiddenSeriesIds","toggleSeries","useChartLegend","visibleSeries","useMemo","data","useEffect","buildTimeSeriesOption","isLegendVisible","jsxs","clsx","jsx","ChartLegend"],"mappings":"0YAyCA,MAAMA,EAA+C,CAAA,EAE/CC,EAA4C,CAAA,EAE3C,SAASC,EAAgB,CAC9B,OAAAC,EACA,YAAAC,EAAc,OACd,OAAAC,EAAS,SACT,KAAAC,EAAOL,EACP,MAAAM,EAAQP,EACR,YAAAQ,EAAc,GACd,gBAAAC,EAAkB,GAClB,eAAAC,EACA,oBAAAC,EACA,aAAAC,EACA,UAAAC,EACA,GAAGC,CACL,EAAyB,CACvB,KAAM,CAAE,aAAAC,EAAc,MAAAC,EAAO,MAAAC,EAAO,mBAAAC,CAAA,EAAsCC,EAAAA,iBAAA,EAEpE,CACJ,MAAAC,EACA,iBAAAC,EACA,sBAAAC,EACA,gBAAAC,EACA,aAAAC,CAAA,EAEAC,EAAAA,eAAetB,GAAQc,GAAA,YAAAA,EAAO,eAAgB,CAAA,EAAIC,CAAkB,EAIhEQ,EAAkCC,EAAAA,QACtC,IAAMxB,EAAO,OAAQyB,GAAyB,CAACL,EAAgB,IAAIK,EAAK,EAAE,CAAC,EAC3E,CAACzB,EAAQoB,CAAe,CAAA,EAG1BM,EAAAA,UAAU,IAAM,CACV,CAACb,GAAS,CAACC,GAIfD,EAAM,UACJc,wBAAsB,CACpB,OAAQJ,EACR,YAAAtB,EACA,KAAAE,EACA,MAAAC,EACA,MAAAU,EACA,YAAAT,EACA,gBAAAC,EACA,qBAAsBY,EACtB,eAAAX,CAAA,CACD,EACD,CAAE,SAAU,EAAA,CAAK,CAErB,EAAG,CACDM,EACAC,EACAS,EACAtB,EACAE,EACAC,EACAC,EACAC,EACAY,EACAX,CAAA,CACD,EAED,MAAMqB,EAA2B1B,IAAW,QAAUF,EAAO,OAAS,EAEtE,OACE6B,EAAAA,KAAC,OAAI,UAAWC,EAAAA,KAAK,oBAAqBpB,CAAS,EAAI,GAAGC,EACvD,SAAA,CAAAiB,GACCG,EAAAA,IAACC,EAAAA,YAAA,CACC,MAAAf,EACA,SAAUI,EACV,cAAeb,EACf,sBAAAW,EACA,OAAQV,CAAA,CAAA,EAGZsB,EAAAA,IAAC,MAAA,CAAI,IAAKnB,EAAc,UAAU,2BAAA,CAA4B,CAAA,EAChE,CAEJ"}
1
+ {"version":3,"file":"TimeSeriesChart.cjs","sources":["../../../../../../src/ui/components/charts/TimeSeriesChart/TimeSeriesChart.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { type ComponentPropsWithoutRef, useEffect, useMemo } from \"react\";\nimport { useChartInstance, type ChartInstance } from \"../useChartInstance\";\nimport { ChartLegend, type ChartLegendLabels } from \"../ChartLegend/ChartLegend\";\nimport { useChartLegend, type ChartLegendState } from \"../ChartLegend/use-chart-legend\";\nimport {\n buildTimeSeriesOption,\n type TimeSeriesData,\n type TimeSeriesDisplayType,\n type TimeSeriesLegendMode,\n type TimeSeriesLineOptions,\n type TimeSeriesXAxisOptions,\n type TimeSeriesYAxisOptions,\n} from \"./time-series-option\";\nimport \"./time-series-chart.css\";\n\nexport type {\n TimeSeriesData,\n TimeSeriesDisplayType,\n TimeSeriesLegendMode,\n TimeSeriesLineOptions,\n TimeSeriesLineStyle,\n TimeSeriesLineWidth,\n TimeSeriesPoint,\n TimeSeriesXAxisOptions,\n TimeSeriesYAxisOptions,\n} from \"./time-series-option\";\n\nexport type TimeSeriesChartProps = Omit<ComponentPropsWithoutRef<\"div\">, \"children\"> & {\n series: TimeSeriesData[];\n displayType?: TimeSeriesDisplayType;\n legend?: TimeSeriesLegendMode;\n line?: TimeSeriesLineOptions;\n xAxis?: TimeSeriesXAxisOptions;\n yAxis?: TimeSeriesYAxisOptions;\n showSymbols?: boolean;\n showValueLabels?: boolean;\n valueFormatter?: (value: number) => string;\n // Habilita o seletor de cor no marcador da legenda. Sem ele o marcador é só desenho — o gráfico\n // que não tem onde guardar a escolha não pode oferecê-la.\n onSeriesColorChange?: (seriesId: string, colorToken: string | null) => void;\n legendLabels?: Partial<ChartLegendLabels>;\n};\n\nconst EMPTY_X_AXIS_OPTIONS: TimeSeriesXAxisOptions = {};\n\nconst EMPTY_Y_AXIS_OPTIONS: TimeSeriesYAxisOptions = {};\n\nconst EMPTY_LINE_OPTIONS: TimeSeriesLineOptions = {};\n\nexport function TimeSeriesChart({\n series,\n displayType = \"line\",\n legend = \"inline\",\n line = EMPTY_LINE_OPTIONS,\n xAxis = EMPTY_X_AXIS_OPTIONS,\n yAxis = EMPTY_Y_AXIS_OPTIONS,\n showSymbols = false,\n showValueLabels = false,\n valueFormatter,\n onSeriesColorChange,\n legendLabels,\n className,\n ...props\n}: TimeSeriesChartProps) {\n const { containerRef, chart, theme, resolveSeriesColor }: ChartInstance = useChartInstance();\n\n const {\n items,\n colorsBySeriesId,\n colorTokensBySeriesId,\n hiddenSeriesIds,\n toggleSeries,\n }: ChartLegendState =\n useChartLegend(series, theme?.seriesColors ?? [], resolveSeriesColor);\n\n // A série escondida sai da opção inteira, em vez de ficar com a seleção desligada do ECharts: é\n // o que faz o eixo reescalar sobre o que restou.\n const visibleSeries: TimeSeriesData[] = useMemo(\n () => series.filter((data: TimeSeriesData) => !hiddenSeriesIds.has(data.id)),\n [series, hiddenSeriesIds],\n );\n\n useEffect(() => {\n if (!chart || !theme) return;\n\n // `notMerge` evita que uma série removida da configuração continue desenhada: o ECharts\n // casa séries por id e mantém as que não aparecem na opção nova.\n chart.setOption(\n buildTimeSeriesOption({\n series: visibleSeries,\n displayType,\n line,\n xAxis,\n yAxis,\n theme,\n showSymbols,\n showValueLabels,\n seriesColorOverrides: colorsBySeriesId,\n valueFormatter,\n }),\n { notMerge: true },\n );\n }, [\n chart,\n theme,\n visibleSeries,\n displayType,\n line,\n xAxis,\n yAxis,\n showSymbols,\n showValueLabels,\n colorsBySeriesId,\n valueFormatter,\n ]);\n\n const isLegendVisible: boolean = legend !== \"none\" && series.length > 0;\n\n return (\n <div className={clsx(\"time-series-chart\", className)} {...props}>\n {isLegendVisible && (\n <ChartLegend\n items={items}\n onToggle={toggleSeries}\n onColorChange={onSeriesColorChange}\n colorTokensBySeriesId={colorTokensBySeriesId}\n labels={legendLabels}\n />\n )}\n <div ref={containerRef} className=\"time-series-chart__canvas\" />\n </div>\n );\n}\n"],"names":["EMPTY_X_AXIS_OPTIONS","EMPTY_Y_AXIS_OPTIONS","EMPTY_LINE_OPTIONS","TimeSeriesChart","series","displayType","legend","line","xAxis","yAxis","showSymbols","showValueLabels","valueFormatter","onSeriesColorChange","legendLabels","className","props","containerRef","chart","theme","resolveSeriesColor","useChartInstance","items","colorsBySeriesId","colorTokensBySeriesId","hiddenSeriesIds","toggleSeries","useChartLegend","visibleSeries","useMemo","data","useEffect","buildTimeSeriesOption","isLegendVisible","jsxs","clsx","jsx","ChartLegend"],"mappings":"0YA4CA,MAAMA,EAA+C,CAAA,EAE/CC,EAA+C,CAAA,EAE/CC,EAA4C,CAAA,EAE3C,SAASC,EAAgB,CAC9B,OAAAC,EACA,YAAAC,EAAc,OACd,OAAAC,EAAS,SACT,KAAAC,EAAOL,EACP,MAAAM,EAAQR,EACR,MAAAS,EAAQR,EACR,YAAAS,EAAc,GACd,gBAAAC,EAAkB,GAClB,eAAAC,EACA,oBAAAC,EACA,aAAAC,EACA,UAAAC,EACA,GAAGC,CACL,EAAyB,CACvB,KAAM,CAAE,aAAAC,EAAc,MAAAC,EAAO,MAAAC,EAAO,mBAAAC,CAAA,EAAsCC,EAAAA,iBAAA,EAEpE,CACJ,MAAAC,EACA,iBAAAC,EACA,sBAAAC,EACA,gBAAAC,EACA,aAAAC,CAAA,EAEAC,EAAAA,eAAevB,GAAQe,GAAA,YAAAA,EAAO,eAAgB,CAAA,EAAIC,CAAkB,EAIhEQ,EAAkCC,EAAAA,QACtC,IAAMzB,EAAO,OAAQ0B,GAAyB,CAACL,EAAgB,IAAIK,EAAK,EAAE,CAAC,EAC3E,CAAC1B,EAAQqB,CAAe,CAAA,EAG1BM,EAAAA,UAAU,IAAM,CACV,CAACb,GAAS,CAACC,GAIfD,EAAM,UACJc,wBAAsB,CACpB,OAAQJ,EACR,YAAAvB,EACA,KAAAE,EACA,MAAAC,EACA,MAAAC,EACA,MAAAU,EACA,YAAAT,EACA,gBAAAC,EACA,qBAAsBY,EACtB,eAAAX,CAAA,CACD,EACD,CAAE,SAAU,EAAA,CAAK,CAErB,EAAG,CACDM,EACAC,EACAS,EACAvB,EACAE,EACAC,EACAC,EACAC,EACAC,EACAY,EACAX,CAAA,CACD,EAED,MAAMqB,EAA2B3B,IAAW,QAAUF,EAAO,OAAS,EAEtE,OACE8B,EAAAA,KAAC,OAAI,UAAWC,EAAAA,KAAK,oBAAqBpB,CAAS,EAAI,GAAGC,EACvD,SAAA,CAAAiB,GACCG,EAAAA,IAACC,EAAAA,YAAA,CACC,MAAAf,EACA,SAAUI,EACV,cAAeb,EACf,sBAAAW,EACA,OAAQV,CAAA,CAAA,EAGZsB,EAAAA,IAAC,MAAA,CAAI,IAAKnB,EAAc,UAAU,2BAAA,CAA4B,CAAA,EAChE,CAEJ"}
@@ -1,79 +1,82 @@
1
- import { jsxs as E, jsx as d } from "react/jsx-runtime";
1
+ import { jsxs as E, jsx as S } from "react/jsx-runtime";
2
2
  import { clsx as M } from "../../../../vendor/clsx/dist/clsx.js";
3
- import { useMemo as P, useEffect as x } from "react";
4
- import { useChartInstance as L } from "../useChartInstance.js";
5
- import { ChartLegend as Y } from "../ChartLegend/ChartLegend.js";
6
- import { useChartLegend as b } from "../ChartLegend/use-chart-legend.js";
7
- import { buildTimeSeriesOption as j } from "./time-series-option.js";
3
+ import { useMemo as Y, useEffect as L } from "react";
4
+ import { useChartInstance as X } from "../useChartInstance.js";
5
+ import { ChartLegend as b } from "../ChartLegend/ChartLegend.js";
6
+ import { useChartLegend as j } from "../ChartLegend/use-chart-legend.js";
7
+ import { buildTimeSeriesOption as B } from "./time-series-option.js";
8
8
  /* empty css */
9
- const B = {}, k = {};
10
- function J({
9
+ const k = {}, x = {}, R = {};
10
+ function Q({
11
11
  series: r,
12
- displayType: i = "line",
12
+ displayType: s = "line",
13
13
  legend: g = "inline",
14
- line: s = k,
15
- yAxis: t = B,
16
- showSymbols: n = !1,
17
- showValueLabels: c = !1,
18
- valueFormatter: m,
19
- onSeriesColorChange: S,
20
- legendLabels: h,
21
- className: p,
22
- ...C
14
+ line: i = R,
15
+ xAxis: t = k,
16
+ yAxis: n = x,
17
+ showSymbols: c = !1,
18
+ showValueLabels: m = !1,
19
+ valueFormatter: l,
20
+ onSeriesColorChange: I,
21
+ legendLabels: _,
22
+ className: h,
23
+ ...p
23
24
  }) {
24
- const { containerRef: I, chart: o, theme: e, resolveSeriesColor: u } = L(), {
25
- items: O,
26
- colorsBySeriesId: l,
27
- colorTokensBySeriesId: T,
28
- hiddenSeriesIds: f,
29
- toggleSeries: _
30
- } = b(r, (e == null ? void 0 : e.seriesColors) ?? [], u), a = P(
31
- () => r.filter((N) => !f.has(N.id)),
32
- [r, f]
25
+ const { containerRef: C, chart: o, theme: e, resolveSeriesColor: O } = X(), {
26
+ items: T,
27
+ colorsBySeriesId: f,
28
+ colorTokensBySeriesId: u,
29
+ hiddenSeriesIds: a,
30
+ toggleSeries: N
31
+ } = j(r, (e == null ? void 0 : e.seriesColors) ?? [], O), d = Y(
32
+ () => r.filter((v) => !a.has(v.id)),
33
+ [r, a]
33
34
  );
34
- x(() => {
35
+ L(() => {
35
36
  !o || !e || o.setOption(
36
- j({
37
- series: a,
38
- displayType: i,
39
- line: s,
40
- yAxis: t,
37
+ B({
38
+ series: d,
39
+ displayType: s,
40
+ line: i,
41
+ xAxis: t,
42
+ yAxis: n,
41
43
  theme: e,
42
- showSymbols: n,
43
- showValueLabels: c,
44
- seriesColorOverrides: l,
45
- valueFormatter: m
44
+ showSymbols: c,
45
+ showValueLabels: m,
46
+ seriesColorOverrides: f,
47
+ valueFormatter: l
46
48
  }),
47
49
  { notMerge: !0 }
48
50
  );
49
51
  }, [
50
52
  o,
51
53
  e,
52
- a,
53
- i,
54
+ d,
54
55
  s,
56
+ i,
55
57
  t,
56
58
  n,
57
59
  c,
58
- l,
59
- m
60
+ m,
61
+ f,
62
+ l
60
63
  ]);
61
- const v = g !== "none" && r.length > 0;
62
- return /* @__PURE__ */ E("div", { className: M("time-series-chart", p), ...C, children: [
63
- v && /* @__PURE__ */ d(
64
- Y,
64
+ const P = g !== "none" && r.length > 0;
65
+ return /* @__PURE__ */ E("div", { className: M("time-series-chart", h), ...p, children: [
66
+ P && /* @__PURE__ */ S(
67
+ b,
65
68
  {
66
- items: O,
67
- onToggle: _,
68
- onColorChange: S,
69
- colorTokensBySeriesId: T,
70
- labels: h
69
+ items: T,
70
+ onToggle: N,
71
+ onColorChange: I,
72
+ colorTokensBySeriesId: u,
73
+ labels: _
71
74
  }
72
75
  ),
73
- /* @__PURE__ */ d("div", { ref: I, className: "time-series-chart__canvas" })
76
+ /* @__PURE__ */ S("div", { ref: C, className: "time-series-chart__canvas" })
74
77
  ] });
75
78
  }
76
79
  export {
77
- J as TimeSeriesChart
80
+ Q as TimeSeriesChart
78
81
  };
79
82
  //# sourceMappingURL=TimeSeriesChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TimeSeriesChart.js","sources":["../../../../../../src/ui/components/charts/TimeSeriesChart/TimeSeriesChart.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { type ComponentPropsWithoutRef, useEffect, useMemo } from \"react\";\nimport { useChartInstance, type ChartInstance } from \"../useChartInstance\";\nimport { ChartLegend, type ChartLegendLabels } from \"../ChartLegend/ChartLegend\";\nimport { useChartLegend, type ChartLegendState } from \"../ChartLegend/use-chart-legend\";\nimport {\n buildTimeSeriesOption,\n type TimeSeriesData,\n type TimeSeriesDisplayType,\n type TimeSeriesLegendMode,\n type TimeSeriesLineOptions,\n type TimeSeriesYAxisOptions,\n} from \"./time-series-option\";\nimport \"./time-series-chart.css\";\n\nexport type {\n TimeSeriesData,\n TimeSeriesDisplayType,\n TimeSeriesLegendMode,\n TimeSeriesLineOptions,\n TimeSeriesLineStyle,\n TimeSeriesLineWidth,\n TimeSeriesPoint,\n TimeSeriesYAxisOptions,\n} from \"./time-series-option\";\n\nexport type TimeSeriesChartProps = Omit<ComponentPropsWithoutRef<\"div\">, \"children\"> & {\n series: TimeSeriesData[];\n displayType?: TimeSeriesDisplayType;\n legend?: TimeSeriesLegendMode;\n line?: TimeSeriesLineOptions;\n yAxis?: TimeSeriesYAxisOptions;\n showSymbols?: boolean;\n showValueLabels?: boolean;\n valueFormatter?: (value: number) => string;\n // Habilita o seletor de cor no marcador da legenda. Sem ele o marcador é só desenho — o gráfico\n // que não tem onde guardar a escolha não pode oferecê-la.\n onSeriesColorChange?: (seriesId: string, colorToken: string | null) => void;\n legendLabels?: Partial<ChartLegendLabels>;\n};\n\nconst EMPTY_Y_AXIS_OPTIONS: TimeSeriesYAxisOptions = {};\n\nconst EMPTY_LINE_OPTIONS: TimeSeriesLineOptions = {};\n\nexport function TimeSeriesChart({\n series,\n displayType = \"line\",\n legend = \"inline\",\n line = EMPTY_LINE_OPTIONS,\n yAxis = EMPTY_Y_AXIS_OPTIONS,\n showSymbols = false,\n showValueLabels = false,\n valueFormatter,\n onSeriesColorChange,\n legendLabels,\n className,\n ...props\n}: TimeSeriesChartProps) {\n const { containerRef, chart, theme, resolveSeriesColor }: ChartInstance = useChartInstance();\n\n const {\n items,\n colorsBySeriesId,\n colorTokensBySeriesId,\n hiddenSeriesIds,\n toggleSeries,\n }: ChartLegendState =\n useChartLegend(series, theme?.seriesColors ?? [], resolveSeriesColor);\n\n // A série escondida sai da opção inteira, em vez de ficar com a seleção desligada do ECharts: é\n // o que faz o eixo reescalar sobre o que restou.\n const visibleSeries: TimeSeriesData[] = useMemo(\n () => series.filter((data: TimeSeriesData) => !hiddenSeriesIds.has(data.id)),\n [series, hiddenSeriesIds],\n );\n\n useEffect(() => {\n if (!chart || !theme) return;\n\n // `notMerge` evita que uma série removida da configuração continue desenhada: o ECharts\n // casa séries por id e mantém as que não aparecem na opção nova.\n chart.setOption(\n buildTimeSeriesOption({\n series: visibleSeries,\n displayType,\n line,\n yAxis,\n theme,\n showSymbols,\n showValueLabels,\n seriesColorOverrides: colorsBySeriesId,\n valueFormatter,\n }),\n { notMerge: true },\n );\n }, [\n chart,\n theme,\n visibleSeries,\n displayType,\n line,\n yAxis,\n showSymbols,\n showValueLabels,\n colorsBySeriesId,\n valueFormatter,\n ]);\n\n const isLegendVisible: boolean = legend !== \"none\" && series.length > 0;\n\n return (\n <div className={clsx(\"time-series-chart\", className)} {...props}>\n {isLegendVisible && (\n <ChartLegend\n items={items}\n onToggle={toggleSeries}\n onColorChange={onSeriesColorChange}\n colorTokensBySeriesId={colorTokensBySeriesId}\n labels={legendLabels}\n />\n )}\n <div ref={containerRef} className=\"time-series-chart__canvas\" />\n </div>\n );\n}\n"],"names":["EMPTY_Y_AXIS_OPTIONS","EMPTY_LINE_OPTIONS","TimeSeriesChart","series","displayType","legend","line","yAxis","showSymbols","showValueLabels","valueFormatter","onSeriesColorChange","legendLabels","className","props","containerRef","chart","theme","resolveSeriesColor","useChartInstance","items","colorsBySeriesId","colorTokensBySeriesId","hiddenSeriesIds","toggleSeries","useChartLegend","visibleSeries","useMemo","data","useEffect","buildTimeSeriesOption","isLegendVisible","jsxs","clsx","jsx","ChartLegend"],"mappings":";;;;;;;;AAyCA,MAAMA,IAA+C,CAAA,GAE/CC,IAA4C,CAAA;AAE3C,SAASC,EAAgB;AAAA,EAC9B,QAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,QAAAC,IAAS;AAAA,EACT,MAAAC,IAAOL;AAAA,EACP,OAAAM,IAAQP;AAAA,EACR,aAAAQ,IAAc;AAAA,EACd,iBAAAC,IAAkB;AAAA,EAClB,gBAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,GAAGC;AACL,GAAyB;AACvB,QAAM,EAAE,cAAAC,GAAc,OAAAC,GAAO,OAAAC,GAAO,oBAAAC,EAAA,IAAsCC,EAAA,GAEpE;AAAA,IACJ,OAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,IAEAC,EAAetB,IAAQc,KAAA,gBAAAA,EAAO,iBAAgB,CAAA,GAAIC,CAAkB,GAIhEQ,IAAkCC;AAAA,IACtC,MAAMxB,EAAO,OAAO,CAACyB,MAAyB,CAACL,EAAgB,IAAIK,EAAK,EAAE,CAAC;AAAA,IAC3E,CAACzB,GAAQoB,CAAe;AAAA,EAAA;AAG1B,EAAAM,EAAU,MAAM;AACd,IAAI,CAACb,KAAS,CAACC,KAIfD,EAAM;AAAA,MACJc,EAAsB;AAAA,QACpB,QAAQJ;AAAA,QACR,aAAAtB;AAAA,QACA,MAAAE;AAAA,QACA,OAAAC;AAAA,QACA,OAAAU;AAAA,QACA,aAAAT;AAAA,QACA,iBAAAC;AAAA,QACA,sBAAsBY;AAAA,QACtB,gBAAAX;AAAA,MAAA,CACD;AAAA,MACD,EAAE,UAAU,GAAA;AAAA,IAAK;AAAA,EAErB,GAAG;AAAA,IACDM;AAAA,IACAC;AAAA,IACAS;AAAA,IACAtB;AAAA,IACAE;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAY;AAAA,IACAX;AAAA,EAAA,CACD;AAED,QAAMqB,IAA2B1B,MAAW,UAAUF,EAAO,SAAS;AAEtE,SACE,gBAAA6B,EAAC,SAAI,WAAWC,EAAK,qBAAqBpB,CAAS,GAAI,GAAGC,GACvD,UAAA;AAAA,IAAAiB,KACC,gBAAAG;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,OAAAf;AAAA,QACA,UAAUI;AAAA,QACV,eAAeb;AAAA,QACf,uBAAAW;AAAA,QACA,QAAQV;AAAA,MAAA;AAAA,IAAA;AAAA,IAGZ,gBAAAsB,EAAC,OAAA,EAAI,KAAKnB,GAAc,WAAU,4BAAA,CAA4B;AAAA,EAAA,GAChE;AAEJ;"}
1
+ {"version":3,"file":"TimeSeriesChart.js","sources":["../../../../../../src/ui/components/charts/TimeSeriesChart/TimeSeriesChart.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { type ComponentPropsWithoutRef, useEffect, useMemo } from \"react\";\nimport { useChartInstance, type ChartInstance } from \"../useChartInstance\";\nimport { ChartLegend, type ChartLegendLabels } from \"../ChartLegend/ChartLegend\";\nimport { useChartLegend, type ChartLegendState } from \"../ChartLegend/use-chart-legend\";\nimport {\n buildTimeSeriesOption,\n type TimeSeriesData,\n type TimeSeriesDisplayType,\n type TimeSeriesLegendMode,\n type TimeSeriesLineOptions,\n type TimeSeriesXAxisOptions,\n type TimeSeriesYAxisOptions,\n} from \"./time-series-option\";\nimport \"./time-series-chart.css\";\n\nexport type {\n TimeSeriesData,\n TimeSeriesDisplayType,\n TimeSeriesLegendMode,\n TimeSeriesLineOptions,\n TimeSeriesLineStyle,\n TimeSeriesLineWidth,\n TimeSeriesPoint,\n TimeSeriesXAxisOptions,\n TimeSeriesYAxisOptions,\n} from \"./time-series-option\";\n\nexport type TimeSeriesChartProps = Omit<ComponentPropsWithoutRef<\"div\">, \"children\"> & {\n series: TimeSeriesData[];\n displayType?: TimeSeriesDisplayType;\n legend?: TimeSeriesLegendMode;\n line?: TimeSeriesLineOptions;\n xAxis?: TimeSeriesXAxisOptions;\n yAxis?: TimeSeriesYAxisOptions;\n showSymbols?: boolean;\n showValueLabels?: boolean;\n valueFormatter?: (value: number) => string;\n // Habilita o seletor de cor no marcador da legenda. Sem ele o marcador é só desenho — o gráfico\n // que não tem onde guardar a escolha não pode oferecê-la.\n onSeriesColorChange?: (seriesId: string, colorToken: string | null) => void;\n legendLabels?: Partial<ChartLegendLabels>;\n};\n\nconst EMPTY_X_AXIS_OPTIONS: TimeSeriesXAxisOptions = {};\n\nconst EMPTY_Y_AXIS_OPTIONS: TimeSeriesYAxisOptions = {};\n\nconst EMPTY_LINE_OPTIONS: TimeSeriesLineOptions = {};\n\nexport function TimeSeriesChart({\n series,\n displayType = \"line\",\n legend = \"inline\",\n line = EMPTY_LINE_OPTIONS,\n xAxis = EMPTY_X_AXIS_OPTIONS,\n yAxis = EMPTY_Y_AXIS_OPTIONS,\n showSymbols = false,\n showValueLabels = false,\n valueFormatter,\n onSeriesColorChange,\n legendLabels,\n className,\n ...props\n}: TimeSeriesChartProps) {\n const { containerRef, chart, theme, resolveSeriesColor }: ChartInstance = useChartInstance();\n\n const {\n items,\n colorsBySeriesId,\n colorTokensBySeriesId,\n hiddenSeriesIds,\n toggleSeries,\n }: ChartLegendState =\n useChartLegend(series, theme?.seriesColors ?? [], resolveSeriesColor);\n\n // A série escondida sai da opção inteira, em vez de ficar com a seleção desligada do ECharts: é\n // o que faz o eixo reescalar sobre o que restou.\n const visibleSeries: TimeSeriesData[] = useMemo(\n () => series.filter((data: TimeSeriesData) => !hiddenSeriesIds.has(data.id)),\n [series, hiddenSeriesIds],\n );\n\n useEffect(() => {\n if (!chart || !theme) return;\n\n // `notMerge` evita que uma série removida da configuração continue desenhada: o ECharts\n // casa séries por id e mantém as que não aparecem na opção nova.\n chart.setOption(\n buildTimeSeriesOption({\n series: visibleSeries,\n displayType,\n line,\n xAxis,\n yAxis,\n theme,\n showSymbols,\n showValueLabels,\n seriesColorOverrides: colorsBySeriesId,\n valueFormatter,\n }),\n { notMerge: true },\n );\n }, [\n chart,\n theme,\n visibleSeries,\n displayType,\n line,\n xAxis,\n yAxis,\n showSymbols,\n showValueLabels,\n colorsBySeriesId,\n valueFormatter,\n ]);\n\n const isLegendVisible: boolean = legend !== \"none\" && series.length > 0;\n\n return (\n <div className={clsx(\"time-series-chart\", className)} {...props}>\n {isLegendVisible && (\n <ChartLegend\n items={items}\n onToggle={toggleSeries}\n onColorChange={onSeriesColorChange}\n colorTokensBySeriesId={colorTokensBySeriesId}\n labels={legendLabels}\n />\n )}\n <div ref={containerRef} className=\"time-series-chart__canvas\" />\n </div>\n );\n}\n"],"names":["EMPTY_X_AXIS_OPTIONS","EMPTY_Y_AXIS_OPTIONS","EMPTY_LINE_OPTIONS","TimeSeriesChart","series","displayType","legend","line","xAxis","yAxis","showSymbols","showValueLabels","valueFormatter","onSeriesColorChange","legendLabels","className","props","containerRef","chart","theme","resolveSeriesColor","useChartInstance","items","colorsBySeriesId","colorTokensBySeriesId","hiddenSeriesIds","toggleSeries","useChartLegend","visibleSeries","useMemo","data","useEffect","buildTimeSeriesOption","isLegendVisible","jsxs","clsx","jsx","ChartLegend"],"mappings":";;;;;;;;AA4CA,MAAMA,IAA+C,CAAA,GAE/CC,IAA+C,CAAA,GAE/CC,IAA4C,CAAA;AAE3C,SAASC,EAAgB;AAAA,EAC9B,QAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,QAAAC,IAAS;AAAA,EACT,MAAAC,IAAOL;AAAA,EACP,OAAAM,IAAQR;AAAA,EACR,OAAAS,IAAQR;AAAA,EACR,aAAAS,IAAc;AAAA,EACd,iBAAAC,IAAkB;AAAA,EAClB,gBAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,GAAGC;AACL,GAAyB;AACvB,QAAM,EAAE,cAAAC,GAAc,OAAAC,GAAO,OAAAC,GAAO,oBAAAC,EAAA,IAAsCC,EAAA,GAEpE;AAAA,IACJ,OAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,IAEAC,EAAevB,IAAQe,KAAA,gBAAAA,EAAO,iBAAgB,CAAA,GAAIC,CAAkB,GAIhEQ,IAAkCC;AAAA,IACtC,MAAMzB,EAAO,OAAO,CAAC0B,MAAyB,CAACL,EAAgB,IAAIK,EAAK,EAAE,CAAC;AAAA,IAC3E,CAAC1B,GAAQqB,CAAe;AAAA,EAAA;AAG1B,EAAAM,EAAU,MAAM;AACd,IAAI,CAACb,KAAS,CAACC,KAIfD,EAAM;AAAA,MACJc,EAAsB;AAAA,QACpB,QAAQJ;AAAA,QACR,aAAAvB;AAAA,QACA,MAAAE;AAAA,QACA,OAAAC;AAAA,QACA,OAAAC;AAAA,QACA,OAAAU;AAAA,QACA,aAAAT;AAAA,QACA,iBAAAC;AAAA,QACA,sBAAsBY;AAAA,QACtB,gBAAAX;AAAA,MAAA,CACD;AAAA,MACD,EAAE,UAAU,GAAA;AAAA,IAAK;AAAA,EAErB,GAAG;AAAA,IACDM;AAAA,IACAC;AAAA,IACAS;AAAA,IACAvB;AAAA,IACAE;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAC;AAAA,IACAY;AAAA,IACAX;AAAA,EAAA,CACD;AAED,QAAMqB,IAA2B3B,MAAW,UAAUF,EAAO,SAAS;AAEtE,SACE,gBAAA8B,EAAC,SAAI,WAAWC,EAAK,qBAAqBpB,CAAS,GAAI,GAAGC,GACvD,UAAA;AAAA,IAAAiB,KACC,gBAAAG;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,OAAAf;AAAA,QACA,UAAUI;AAAA,QACV,eAAeb;AAAA,QACf,uBAAAW;AAAA,QACA,QAAQV;AAAA,MAAA;AAAA,IAAA;AAAA,IAGZ,gBAAAsB,EAAC,OAAA,EAAI,KAAKnB,GAAc,WAAU,4BAAA,CAA4B;AAAA,EAAA,GAChE;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m={top:16,right:16,bottom:24,left:56},c=6,d=.15,u={thin:1,normal:2,thick:4},f="solid",y="normal",L=new Intl.DateTimeFormat(void 0,{year:"numeric"}),b=new Intl.DateTimeFormat(void 0,{day:"2-digit",month:"2-digit"}),g=new Intl.DateTimeFormat(void 0,{hour:"2-digit",minute:"2-digit",hour12:!1}),h=new Intl.DateTimeFormat(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1});function S(t){const e=new Date(t);return e.getSeconds()!==0||e.getMilliseconds()!==0?h.format(e):e.getHours()!==0||e.getMinutes()!==0?g.format(e):e.getMonth()===0&&e.getDate()===1?L.format(e):b.format(e)}function n(t){const{valueFormatter:e}=t;if(e)return i=>i==null?"":e(i)}function p(t){const{showValueLabels:e,theme:i}=t,o=n(t);return{show:e,position:"top",color:i.labelColor,formatter:o?l=>o(l.value[1]):void 0}}function C(t,e,i){const o=t.points.map(r=>[r.timestamp,r.value]),l=p(e);return e.displayType==="bar"?{id:t.id,name:t.name,type:"bar",data:o,itemStyle:{color:i},label:l}:{id:t.id,name:t.name,type:"line",data:o,showSymbol:e.showSymbols,symbolSize:c,lineStyle:{color:i,type:e.line.style??f,width:u[e.line.width??y]},itemStyle:{color:i},areaStyle:e.displayType==="area"?{color:i,opacity:d}:void 0,label:l}}function T(t){const{series:e,yAxis:i,theme:o,seriesColorOverrides:l}=t,r=n(t);return{animation:!1,color:o.seriesColors,textStyle:{fontFamily:o.fontFamily,color:o.labelColor},grid:{...m,containLabel:!1},tooltip:{trigger:"axis",backgroundColor:o.tooltipBackgroundColor,borderColor:o.tooltipBorderColor,textStyle:{color:o.labelColor},valueFormatter:r},xAxis:{type:"time",axisLine:{lineStyle:{color:o.axisLineColor}},axisTick:{show:!1},axisLabel:{color:o.labelColor,hideOverlap:!0,formatter:S},splitLine:{show:!1}},yAxis:{type:i.scale==="log"?"log":"value",scale:i.includeZero!==!0,min:i.min,max:i.max,axisLine:{show:!1},axisLabel:{color:o.labelColor,formatter:r},splitLine:{lineStyle:{color:o.splitLineColor}}},series:e.map((s,a)=>C(s,t,l[s.id]??o.seriesColors[a%o.seriesColors.length]))}}exports.buildTimeSeriesOption=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c={top:16,right:16,bottom:8,left:8},u=6,d=.15,f={thin:1,normal:2,thick:4},y="solid",L="normal",b=new Intl.DateTimeFormat(void 0,{year:"numeric"}),g=new Intl.DateTimeFormat(void 0,{day:"2-digit",month:"2-digit"}),h=new Intl.DateTimeFormat(void 0,{hour:"2-digit",minute:"2-digit",hour12:!1}),S=new Intl.DateTimeFormat(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1});function x(t){const e=new Date(t);return e.getSeconds()!==0||e.getMilliseconds()!==0?S.format(e):e.getHours()!==0||e.getMinutes()!==0?h.format(e):e.getMonth()===0&&e.getDate()===1?b.format(e):g.format(e)}function a(t){const{valueFormatter:e}=t;if(e)return i=>i==null?"":e(i)}function p(t){const{showValueLabels:e,theme:i}=t,r=a(t);return{show:e,position:"top",color:i.labelColor,formatter:r?o=>r(o.value[1]):void 0}}function A(t,e,i){const r=t.points.map(l=>[l.timestamp,l.value]),o=p(e);return e.displayType==="bar"?{id:t.id,name:t.name,type:"bar",data:r,itemStyle:{color:i},label:o}:{id:t.id,name:t.name,type:"line",data:r,showSymbol:e.showSymbols,symbolSize:u,lineStyle:{color:i,type:e.line.style??y,width:f[e.line.width??L]},itemStyle:{color:i},areaStyle:e.displayType==="area"?{color:i,opacity:d}:void 0,label:o}}function C(t){const{series:e,xAxis:i,yAxis:r,theme:o,seriesColorOverrides:l}=t,n=a(t);return{animation:!1,color:o.seriesColors,textStyle:{fontFamily:o.fontFamily,color:o.labelColor},grid:{...c,containLabel:!0},tooltip:{trigger:"axis",confine:!0,backgroundColor:o.tooltipBackgroundColor,borderColor:o.tooltipBorderColor,textStyle:{color:o.labelColor},valueFormatter:n},xAxis:{type:"time",min:i.min,max:i.max,axisLine:{lineStyle:{color:o.axisLineColor}},axisTick:{show:!1},axisLabel:{color:o.labelColor,hideOverlap:!0,formatter:x},splitLine:{show:!1}},yAxis:{type:r.scale==="log"?"log":"value",scale:r.includeZero!==!0,min:r.min,max:r.max,axisLine:{show:!1},axisLabel:{color:o.labelColor,formatter:n},splitLine:{lineStyle:{color:o.splitLineColor}}},series:e.map((s,m)=>A(s,t,l[s.id]??o.seriesColors[m%o.seriesColors.length]))}}exports.buildTimeSeriesOption=C;
2
2
  //# sourceMappingURL=time-series-option.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-series-option.cjs","sources":["../../../../../../src/ui/components/charts/TimeSeriesChart/time-series-option.ts"],"sourcesContent":["import type { ChartTheme } from \"../chart-theme\";\n\nexport interface TimeSeriesPoint {\n timestamp: number;\n value: number | null;\n}\n\nexport interface TimeSeriesData {\n id: string;\n name: string;\n points: TimeSeriesPoint[];\n // Nome de token, nunca hex: é o que mantém a cor válida nos dois temas. Sem ele a série\n // recebe a próxima cor da paleta.\n colorToken?: string;\n}\n\nexport type TimeSeriesDisplayType = \"line\" | \"bar\" | \"area\";\n\nexport type TimeSeriesLineStyle = \"solid\" | \"dashed\" | \"dotted\";\n\nexport type TimeSeriesLineWidth = \"thin\" | \"normal\" | \"thick\";\n\nexport interface TimeSeriesLineOptions {\n style?: TimeSeriesLineStyle;\n width?: TimeSeriesLineWidth;\n}\n\nexport type TimeSeriesLegendMode = \"inline\" | \"none\";\n\nexport type TimeSeriesAxisScale = \"linear\" | \"log\";\n\nexport interface TimeSeriesYAxisOptions {\n scale?: TimeSeriesAxisScale;\n min?: number;\n max?: number;\n includeZero?: boolean;\n}\n\nexport interface TimeSeriesOptionInput {\n series: TimeSeriesData[];\n displayType: TimeSeriesDisplayType;\n line: TimeSeriesLineOptions;\n yAxis: TimeSeriesYAxisOptions;\n theme: ChartTheme;\n showSymbols: boolean;\n showValueLabels: boolean;\n seriesColorOverrides: Record<string, string>;\n valueFormatter?: (value: number) => string;\n}\n\n// A legenda saiu do canvas e virou HTML (`ChartLegend`), entao a grade nao reserva mais faixa\n// para ela: quem divide a altura agora e o flex do componente.\nconst GRID_PADDING = { top: 16, right: 16, bottom: 24, left: 56 } as const;\n\nconst SYMBOL_SIZE_PX: number = 6;\n\nconst AREA_OPACITY: number = 0.15;\n\nconst LINE_WIDTH_PX: Record<TimeSeriesLineWidth, number> = { thin: 1, normal: 2, thick: 4 };\n\nconst DEFAULT_LINE_STYLE: TimeSeriesLineStyle = \"solid\";\n\nconst DEFAULT_LINE_WIDTH: TimeSeriesLineWidth = \"normal\";\n\n// O eixo de tempo do ECharts rotula a marca de dia so com o numero do dia -- \"2\", \"3\", \"4\" --, que\n// sozinho nao diz nem o mes. Aqui a marca de dia vira data e a marca dentro do dia vira hora, que e\n// o que se espera de uma serie temporal.\n//\n// A precisao sai do proprio instante, e nao de um nivel pedido ao ECharts: ele alinha as marcas ao\n// nivel que cabe no eixo, entao meia-noite e marca de dia, minuto cheio e marca de hora, e assim por\n// diante. Ler o instante e o que permite usar `Intl` e escrever a data na convencao de quem le -- o\n// objeto de niveis do ECharts so aceita template, e um `{dd}/{MM}` fixo seria lido como mes/dia por\n// metade dos usuarios.\nconst YEAR_LABEL: Intl.DateTimeFormat = new Intl.DateTimeFormat(undefined, { year: \"numeric\" });\n\nconst DAY_LABEL: Intl.DateTimeFormat = new Intl.DateTimeFormat(undefined, {\n day: \"2-digit\",\n month: \"2-digit\",\n});\n\nconst MINUTE_LABEL: Intl.DateTimeFormat = new Intl.DateTimeFormat(undefined, {\n hour: \"2-digit\",\n minute: \"2-digit\",\n hour12: false,\n});\n\nconst SECOND_LABEL: Intl.DateTimeFormat = new Intl.DateTimeFormat(undefined, {\n hour: \"2-digit\",\n minute: \"2-digit\",\n second: \"2-digit\",\n hour12: false,\n});\n\nfunction timeAxisLabel(timestamp: number): string {\n const instant: Date = new Date(timestamp);\n if (instant.getSeconds() !== 0 || instant.getMilliseconds() !== 0) return SECOND_LABEL.format(instant);\n if (instant.getHours() !== 0 || instant.getMinutes() !== 0) return MINUTE_LABEL.format(instant);\n // Primeiro de janeiro e a marca de ano do ECharts, e ali a data sem o ano nao situa ninguem.\n if (instant.getMonth() === 0 && instant.getDate() === 1) return YEAR_LABEL.format(instant);\n return DAY_LABEL.format(instant);\n}\n\n// O ponto de gap chega ao formatter como `null` — o ECharts monta o bloco do tooltip sem marcar\n// `noValue`, então formata o vazio junto com o resto. O tipo público promete `number` ao\n// consumidor, e é esta guarda que mantém a promessa em vez de transformá-la em aviso.\nfunction nullSafeValueFormatter(\n input: TimeSeriesOptionInput,\n): ((value: number | null | undefined) => string) | undefined {\n const { valueFormatter } = input;\n if (!valueFormatter) return undefined;\n return (value: number | null | undefined) => (value == null ? \"\" : valueFormatter(value));\n}\n\nfunction seriesLabel(input: TimeSeriesOptionInput): Record<string, unknown> {\n const { showValueLabels, theme } = input;\n const formatValue: ((value: number | null | undefined) => string) | undefined =\n nullSafeValueFormatter(input);\n return {\n show: showValueLabels,\n position: \"top\",\n color: theme.labelColor,\n formatter: formatValue\n ? (params: { value: [number, number | null] }) => formatValue(params.value[1])\n : undefined,\n };\n}\n\nfunction seriesEntry(\n data: TimeSeriesData,\n input: TimeSeriesOptionInput,\n color: string,\n): Record<string, unknown> {\n const values: Array<[number, number | null]> = data.points.map((point: TimeSeriesPoint) => [\n point.timestamp,\n point.value,\n ]);\n const label: Record<string, unknown> = seriesLabel(input);\n\n if (input.displayType === \"bar\") {\n return { id: data.id, name: data.name, type: \"bar\", data: values, itemStyle: { color }, label };\n }\n\n return {\n id: data.id,\n name: data.name,\n type: \"line\",\n data: values,\n showSymbol: input.showSymbols,\n symbolSize: SYMBOL_SIZE_PX,\n lineStyle: {\n color,\n type: input.line.style ?? DEFAULT_LINE_STYLE,\n width: LINE_WIDTH_PX[input.line.width ?? DEFAULT_LINE_WIDTH],\n },\n itemStyle: { color },\n areaStyle: input.displayType === \"area\" ? { color, opacity: AREA_OPACITY } : undefined,\n label,\n };\n}\n\n// O retorno é `Record<string, unknown>` de propósito, e não `EChartsOption`: é o que impede\n// um tipo da biblioteca de vazar para o resto do design system.\nexport function buildTimeSeriesOption(input: TimeSeriesOptionInput): Record<string, unknown> {\n const { series, yAxis, theme, seriesColorOverrides } = input;\n const formatValue: ((value: number | null | undefined) => string) | undefined =\n nullSafeValueFormatter(input);\n\n return {\n animation: false,\n color: theme.seriesColors,\n textStyle: { fontFamily: theme.fontFamily, color: theme.labelColor },\n grid: {\n ...GRID_PADDING,\n containLabel: false,\n },\n tooltip: {\n trigger: \"axis\",\n backgroundColor: theme.tooltipBackgroundColor,\n borderColor: theme.tooltipBorderColor,\n textStyle: { color: theme.labelColor },\n valueFormatter: formatValue,\n },\n xAxis: {\n type: \"time\",\n axisLine: { lineStyle: { color: theme.axisLineColor } },\n axisTick: { show: false },\n axisLabel: { color: theme.labelColor, hideOverlap: true, formatter: timeAxisLabel },\n splitLine: { show: false },\n },\n yAxis: {\n type: yAxis.scale === \"log\" ? \"log\" : \"value\",\n scale: yAxis.includeZero !== true,\n min: yAxis.min,\n max: yAxis.max,\n axisLine: { show: false },\n axisLabel: { color: theme.labelColor, formatter: formatValue },\n splitLine: { lineStyle: { color: theme.splitLineColor } },\n },\n series: series.map((data: TimeSeriesData, index: number) =>\n seriesEntry(\n data,\n input,\n seriesColorOverrides[data.id] ?? theme.seriesColors[index % theme.seriesColors.length],\n ),\n ),\n };\n}\n"],"names":["GRID_PADDING","SYMBOL_SIZE_PX","AREA_OPACITY","LINE_WIDTH_PX","DEFAULT_LINE_STYLE","DEFAULT_LINE_WIDTH","YEAR_LABEL","DAY_LABEL","MINUTE_LABEL","SECOND_LABEL","timeAxisLabel","timestamp","instant","nullSafeValueFormatter","input","valueFormatter","value","seriesLabel","showValueLabels","theme","formatValue","params","seriesEntry","data","color","values","point","label","buildTimeSeriesOption","series","yAxis","seriesColorOverrides","index"],"mappings":"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"}
1
+ {"version":3,"file":"time-series-option.cjs","sources":["../../../../../../src/ui/components/charts/TimeSeriesChart/time-series-option.ts"],"sourcesContent":["import type { ChartTheme } from \"../chart-theme\";\n\nexport interface TimeSeriesPoint {\n timestamp: number;\n value: number | null;\n}\n\nexport interface TimeSeriesData {\n id: string;\n name: string;\n points: TimeSeriesPoint[];\n // Nome de token, nunca hex: é o que mantém a cor válida nos dois temas. Sem ele a série\n // recebe a próxima cor da paleta.\n colorToken?: string;\n}\n\nexport type TimeSeriesDisplayType = \"line\" | \"bar\" | \"area\";\n\nexport type TimeSeriesLineStyle = \"solid\" | \"dashed\" | \"dotted\";\n\nexport type TimeSeriesLineWidth = \"thin\" | \"normal\" | \"thick\";\n\nexport interface TimeSeriesLineOptions {\n style?: TimeSeriesLineStyle;\n width?: TimeSeriesLineWidth;\n}\n\nexport type TimeSeriesLegendMode = \"inline\" | \"none\";\n\nexport type TimeSeriesAxisScale = \"linear\" | \"log\";\n\nexport interface TimeSeriesYAxisOptions {\n scale?: TimeSeriesAxisScale;\n min?: number;\n max?: number;\n includeZero?: boolean;\n}\n\nexport interface TimeSeriesXAxisOptions {\n min?: number;\n max?: number;\n}\n\nexport interface TimeSeriesOptionInput {\n series: TimeSeriesData[];\n displayType: TimeSeriesDisplayType;\n line: TimeSeriesLineOptions;\n xAxis: TimeSeriesXAxisOptions;\n yAxis: TimeSeriesYAxisOptions;\n theme: ChartTheme;\n showSymbols: boolean;\n showValueLabels: boolean;\n seriesColorOverrides: Record<string, string>;\n valueFormatter?: (value: number) => string;\n}\n\n// A legenda saiu do canvas e virou HTML (`ChartLegend`), entao a grade nao reserva mais faixa\n// para ela: quem divide a altura agora e o flex do componente.\nconst GRID_PADDING_PX: { top: number; right: number; bottom: number; left: number } = {\n top: 16,\n right: 16,\n bottom: 8,\n left: 8,\n};\n\nconst SYMBOL_SIZE_PX: number = 6;\n\nconst AREA_OPACITY: number = 0.15;\n\nconst LINE_WIDTH_PX: Record<TimeSeriesLineWidth, number> = { thin: 1, normal: 2, thick: 4 };\n\nconst DEFAULT_LINE_STYLE: TimeSeriesLineStyle = \"solid\";\n\nconst DEFAULT_LINE_WIDTH: TimeSeriesLineWidth = \"normal\";\n\n// O eixo de tempo do ECharts rotula a marca de dia so com o numero do dia -- \"2\", \"3\", \"4\" --, que\n// sozinho nao diz nem o mes. Aqui a marca de dia vira data e a marca dentro do dia vira hora, que e\n// o que se espera de uma serie temporal.\n//\n// A precisao sai do proprio instante, e nao de um nivel pedido ao ECharts: ele alinha as marcas ao\n// nivel que cabe no eixo, entao meia-noite e marca de dia, minuto cheio e marca de hora, e assim por\n// diante. Ler o instante e o que permite usar `Intl` e escrever a data na convencao de quem le -- o\n// objeto de niveis do ECharts so aceita template, e um `{dd}/{MM}` fixo seria lido como mes/dia por\n// metade dos usuarios.\nconst YEAR_LABEL: Intl.DateTimeFormat = new Intl.DateTimeFormat(undefined, { year: \"numeric\" });\n\nconst DAY_LABEL: Intl.DateTimeFormat = new Intl.DateTimeFormat(undefined, {\n day: \"2-digit\",\n month: \"2-digit\",\n});\n\nconst MINUTE_LABEL: Intl.DateTimeFormat = new Intl.DateTimeFormat(undefined, {\n hour: \"2-digit\",\n minute: \"2-digit\",\n hour12: false,\n});\n\nconst SECOND_LABEL: Intl.DateTimeFormat = new Intl.DateTimeFormat(undefined, {\n hour: \"2-digit\",\n minute: \"2-digit\",\n second: \"2-digit\",\n hour12: false,\n});\n\nfunction timeAxisLabel(timestamp: number): string {\n const instant: Date = new Date(timestamp);\n if (instant.getSeconds() !== 0 || instant.getMilliseconds() !== 0) return SECOND_LABEL.format(instant);\n if (instant.getHours() !== 0 || instant.getMinutes() !== 0) return MINUTE_LABEL.format(instant);\n // Primeiro de janeiro e a marca de ano do ECharts, e ali a data sem o ano nao situa ninguem.\n if (instant.getMonth() === 0 && instant.getDate() === 1) return YEAR_LABEL.format(instant);\n return DAY_LABEL.format(instant);\n}\n\n// O ponto de gap chega ao formatter como `null` — o ECharts monta o bloco do tooltip sem marcar\n// `noValue`, então formata o vazio junto com o resto. O tipo público promete `number` ao\n// consumidor, e é esta guarda que mantém a promessa em vez de transformá-la em aviso.\nfunction nullSafeValueFormatter(\n input: TimeSeriesOptionInput,\n): ((value: number | null | undefined) => string) | undefined {\n const { valueFormatter } = input;\n if (!valueFormatter) return undefined;\n return (value: number | null | undefined) => (value == null ? \"\" : valueFormatter(value));\n}\n\nfunction seriesLabel(input: TimeSeriesOptionInput): Record<string, unknown> {\n const { showValueLabels, theme } = input;\n const formatValue: ((value: number | null | undefined) => string) | undefined =\n nullSafeValueFormatter(input);\n return {\n show: showValueLabels,\n position: \"top\",\n color: theme.labelColor,\n formatter: formatValue\n ? (params: { value: [number, number | null] }) => formatValue(params.value[1])\n : undefined,\n };\n}\n\nfunction seriesEntry(\n data: TimeSeriesData,\n input: TimeSeriesOptionInput,\n color: string,\n): Record<string, unknown> {\n const values: Array<[number, number | null]> = data.points.map((point: TimeSeriesPoint) => [\n point.timestamp,\n point.value,\n ]);\n const label: Record<string, unknown> = seriesLabel(input);\n\n if (input.displayType === \"bar\") {\n return { id: data.id, name: data.name, type: \"bar\", data: values, itemStyle: { color }, label };\n }\n\n return {\n id: data.id,\n name: data.name,\n type: \"line\",\n data: values,\n showSymbol: input.showSymbols,\n symbolSize: SYMBOL_SIZE_PX,\n lineStyle: {\n color,\n type: input.line.style ?? DEFAULT_LINE_STYLE,\n width: LINE_WIDTH_PX[input.line.width ?? DEFAULT_LINE_WIDTH],\n },\n itemStyle: { color },\n areaStyle: input.displayType === \"area\" ? { color, opacity: AREA_OPACITY } : undefined,\n label,\n };\n}\n\n// O retorno é `Record<string, unknown>` de propósito, e não `EChartsOption`: é o que impede\n// um tipo da biblioteca de vazar para o resto do design system.\nexport function buildTimeSeriesOption(input: TimeSeriesOptionInput): Record<string, unknown> {\n const { series, xAxis, yAxis, theme, seriesColorOverrides } = input;\n const formatValue: ((value: number | null | undefined) => string) | undefined =\n nullSafeValueFormatter(input);\n\n return {\n animation: false,\n color: theme.seriesColors,\n textStyle: { fontFamily: theme.fontFamily, color: theme.labelColor },\n grid: {\n ...GRID_PADDING_PX,\n containLabel: true,\n },\n tooltip: {\n trigger: \"axis\",\n confine: true,\n backgroundColor: theme.tooltipBackgroundColor,\n borderColor: theme.tooltipBorderColor,\n textStyle: { color: theme.labelColor },\n valueFormatter: formatValue,\n },\n xAxis: {\n type: \"time\",\n min: xAxis.min,\n max: xAxis.max,\n axisLine: { lineStyle: { color: theme.axisLineColor } },\n axisTick: { show: false },\n axisLabel: { color: theme.labelColor, hideOverlap: true, formatter: timeAxisLabel },\n splitLine: { show: false },\n },\n yAxis: {\n type: yAxis.scale === \"log\" ? \"log\" : \"value\",\n scale: yAxis.includeZero !== true,\n min: yAxis.min,\n max: yAxis.max,\n axisLine: { show: false },\n axisLabel: { color: theme.labelColor, formatter: formatValue },\n splitLine: { lineStyle: { color: theme.splitLineColor } },\n },\n series: series.map((data: TimeSeriesData, index: number) =>\n seriesEntry(\n data,\n input,\n seriesColorOverrides[data.id] ?? theme.seriesColors[index % theme.seriesColors.length],\n ),\n ),\n };\n}\n"],"names":["GRID_PADDING_PX","SYMBOL_SIZE_PX","AREA_OPACITY","LINE_WIDTH_PX","DEFAULT_LINE_STYLE","DEFAULT_LINE_WIDTH","YEAR_LABEL","DAY_LABEL","MINUTE_LABEL","SECOND_LABEL","timeAxisLabel","timestamp","instant","nullSafeValueFormatter","input","valueFormatter","value","seriesLabel","showValueLabels","theme","formatValue","params","seriesEntry","data","color","values","point","label","buildTimeSeriesOption","series","xAxis","yAxis","seriesColorOverrides","index"],"mappings":"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"}
@@ -1,11 +1,16 @@
1
- const m = { top: 16, right: 16, bottom: 24, left: 56 }, c = 6, d = 0.15, u = { thin: 1, normal: 2, thick: 4 }, f = "solid", y = "normal", L = new Intl.DateTimeFormat(void 0, { year: "numeric" }), g = new Intl.DateTimeFormat(void 0, {
1
+ const c = {
2
+ top: 16,
3
+ right: 16,
4
+ bottom: 8,
5
+ left: 8
6
+ }, u = 6, d = 0.15, f = { thin: 1, normal: 2, thick: 4 }, y = "solid", L = "normal", g = new Intl.DateTimeFormat(void 0, { year: "numeric" }), h = new Intl.DateTimeFormat(void 0, {
2
7
  day: "2-digit",
3
8
  month: "2-digit"
4
- }), h = new Intl.DateTimeFormat(void 0, {
9
+ }), b = new Intl.DateTimeFormat(void 0, {
5
10
  hour: "2-digit",
6
11
  minute: "2-digit",
7
12
  hour12: !1
8
- }), b = new Intl.DateTimeFormat(void 0, {
13
+ }), x = new Intl.DateTimeFormat(void 0, {
9
14
  hour: "2-digit",
10
15
  minute: "2-digit",
11
16
  second: "2-digit",
@@ -13,82 +18,85 @@ const m = { top: 16, right: 16, bottom: 24, left: 56 }, c = 6, d = 0.15, u = { t
13
18
  });
14
19
  function S(t) {
15
20
  const e = new Date(t);
16
- return e.getSeconds() !== 0 || e.getMilliseconds() !== 0 ? b.format(e) : e.getHours() !== 0 || e.getMinutes() !== 0 ? h.format(e) : e.getMonth() === 0 && e.getDate() === 1 ? L.format(e) : g.format(e);
21
+ return e.getSeconds() !== 0 || e.getMilliseconds() !== 0 ? x.format(e) : e.getHours() !== 0 || e.getMinutes() !== 0 ? b.format(e) : e.getMonth() === 0 && e.getDate() === 1 ? g.format(e) : h.format(e);
17
22
  }
18
- function n(t) {
23
+ function a(t) {
19
24
  const { valueFormatter: e } = t;
20
25
  if (e)
21
26
  return (i) => i == null ? "" : e(i);
22
27
  }
23
28
  function p(t) {
24
- const { showValueLabels: e, theme: i } = t, o = n(t);
29
+ const { showValueLabels: e, theme: i } = t, r = a(t);
25
30
  return {
26
31
  show: e,
27
32
  position: "top",
28
33
  color: i.labelColor,
29
- formatter: o ? (l) => o(l.value[1]) : void 0
34
+ formatter: r ? (o) => r(o.value[1]) : void 0
30
35
  };
31
36
  }
32
- function x(t, e, i) {
33
- const o = t.points.map((r) => [
34
- r.timestamp,
35
- r.value
36
- ]), l = p(e);
37
- return e.displayType === "bar" ? { id: t.id, name: t.name, type: "bar", data: o, itemStyle: { color: i }, label: l } : {
37
+ function A(t, e, i) {
38
+ const r = t.points.map((l) => [
39
+ l.timestamp,
40
+ l.value
41
+ ]), o = p(e);
42
+ return e.displayType === "bar" ? { id: t.id, name: t.name, type: "bar", data: r, itemStyle: { color: i }, label: o } : {
38
43
  id: t.id,
39
44
  name: t.name,
40
45
  type: "line",
41
- data: o,
46
+ data: r,
42
47
  showSymbol: e.showSymbols,
43
- symbolSize: c,
48
+ symbolSize: u,
44
49
  lineStyle: {
45
50
  color: i,
46
- type: e.line.style ?? f,
47
- width: u[e.line.width ?? y]
51
+ type: e.line.style ?? y,
52
+ width: f[e.line.width ?? L]
48
53
  },
49
54
  itemStyle: { color: i },
50
55
  areaStyle: e.displayType === "area" ? { color: i, opacity: d } : void 0,
51
- label: l
56
+ label: o
52
57
  };
53
58
  }
54
59
  function C(t) {
55
- const { series: e, yAxis: i, theme: o, seriesColorOverrides: l } = t, r = n(t);
60
+ const { series: e, xAxis: i, yAxis: r, theme: o, seriesColorOverrides: l } = t, n = a(t);
56
61
  return {
57
62
  animation: !1,
58
63
  color: o.seriesColors,
59
64
  textStyle: { fontFamily: o.fontFamily, color: o.labelColor },
60
65
  grid: {
61
- ...m,
62
- containLabel: !1
66
+ ...c,
67
+ containLabel: !0
63
68
  },
64
69
  tooltip: {
65
70
  trigger: "axis",
71
+ confine: !0,
66
72
  backgroundColor: o.tooltipBackgroundColor,
67
73
  borderColor: o.tooltipBorderColor,
68
74
  textStyle: { color: o.labelColor },
69
- valueFormatter: r
75
+ valueFormatter: n
70
76
  },
71
77
  xAxis: {
72
78
  type: "time",
79
+ min: i.min,
80
+ max: i.max,
73
81
  axisLine: { lineStyle: { color: o.axisLineColor } },
74
82
  axisTick: { show: !1 },
75
83
  axisLabel: { color: o.labelColor, hideOverlap: !0, formatter: S },
76
84
  splitLine: { show: !1 }
77
85
  },
78
86
  yAxis: {
79
- type: i.scale === "log" ? "log" : "value",
80
- scale: i.includeZero !== !0,
81
- min: i.min,
82
- max: i.max,
87
+ type: r.scale === "log" ? "log" : "value",
88
+ scale: r.includeZero !== !0,
89
+ min: r.min,
90
+ max: r.max,
83
91
  axisLine: { show: !1 },
84
- axisLabel: { color: o.labelColor, formatter: r },
92
+ axisLabel: { color: o.labelColor, formatter: n },
85
93
  splitLine: { lineStyle: { color: o.splitLineColor } }
86
94
  },
87
95
  series: e.map(
88
- (s, a) => x(
96
+ (s, m) => A(
89
97
  s,
90
98
  t,
91
- l[s.id] ?? o.seriesColors[a % o.seriesColors.length]
99
+ l[s.id] ?? o.seriesColors[m % o.seriesColors.length]
92
100
  )
93
101
  )
94
102
  };