@perses-dev/components 0.0.0-snapshot-panel-extra-content-3-17f9c42 → 0.0.0-snapshot-scatterplot-fix-imports-95e1b59

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 (505) hide show
  1. package/dist/BarChart/BarChart.d.ts +3 -4
  2. package/dist/BarChart/BarChart.d.ts.map +1 -1
  3. package/dist/BarChart/BarChart.js +17 -11
  4. package/dist/BarChart/BarChart.js.map +1 -1
  5. package/dist/BarChart/index.js.map +1 -1
  6. package/dist/ColorPicker/ColorPicker.d.ts +1 -2
  7. package/dist/ColorPicker/ColorPicker.d.ts.map +1 -1
  8. package/dist/ColorPicker/ColorPicker.js +1 -1
  9. package/dist/ColorPicker/ColorPicker.js.map +1 -1
  10. package/dist/ColorPicker/index.js.map +1 -1
  11. package/dist/ContentWithLegend/ContentWithLegend.d.ts +1 -2
  12. package/dist/ContentWithLegend/ContentWithLegend.d.ts.map +1 -1
  13. package/dist/ContentWithLegend/ContentWithLegend.js +2 -2
  14. package/dist/ContentWithLegend/ContentWithLegend.js.map +1 -1
  15. package/dist/ContentWithLegend/index.js.map +1 -1
  16. package/dist/ContentWithLegend/model/content-with-legend-model.d.ts +3 -3
  17. package/dist/ContentWithLegend/model/content-with-legend-model.d.ts.map +1 -1
  18. package/dist/ContentWithLegend/model/content-with-legend-model.js +21 -21
  19. package/dist/ContentWithLegend/model/content-with-legend-model.js.map +1 -1
  20. package/dist/DateTimeRangePicker/AbsoluteTimePicker.d.ts +1 -2
  21. package/dist/DateTimeRangePicker/AbsoluteTimePicker.d.ts.map +1 -1
  22. package/dist/DateTimeRangePicker/AbsoluteTimePicker.js +8 -24
  23. package/dist/DateTimeRangePicker/AbsoluteTimePicker.js.map +1 -1
  24. package/dist/DateTimeRangePicker/DateTimeRangePicker.d.ts +1 -2
  25. package/dist/DateTimeRangePicker/DateTimeRangePicker.d.ts.map +1 -1
  26. package/dist/DateTimeRangePicker/DateTimeRangePicker.js +1 -1
  27. package/dist/DateTimeRangePicker/DateTimeRangePicker.js.map +1 -1
  28. package/dist/DateTimeRangePicker/TimeRangeSelector.d.ts +1 -2
  29. package/dist/DateTimeRangePicker/TimeRangeSelector.d.ts.map +1 -1
  30. package/dist/DateTimeRangePicker/TimeRangeSelector.js +2 -2
  31. package/dist/DateTimeRangePicker/TimeRangeSelector.js.map +1 -1
  32. package/dist/DateTimeRangePicker/index.js.map +1 -1
  33. package/dist/DateTimeRangePicker/utils.js.map +1 -1
  34. package/dist/Dialog/Dialog.d.ts +6 -6
  35. package/dist/Dialog/Dialog.d.ts.map +1 -1
  36. package/dist/Dialog/Dialog.js +5 -5
  37. package/dist/Dialog/Dialog.js.map +1 -1
  38. package/dist/Dialog/DiscardChangesConfirmationDialog.d.ts +1 -2
  39. package/dist/Dialog/DiscardChangesConfirmationDialog.d.ts.map +1 -1
  40. package/dist/Dialog/DiscardChangesConfirmationDialog.js +1 -1
  41. package/dist/Dialog/DiscardChangesConfirmationDialog.js.map +1 -1
  42. package/dist/Dialog/index.js.map +1 -1
  43. package/dist/Drawer/Drawer.d.ts +1 -2
  44. package/dist/Drawer/Drawer.d.ts.map +1 -1
  45. package/dist/Drawer/Drawer.js +4 -3
  46. package/dist/Drawer/Drawer.js.map +1 -1
  47. package/dist/Drawer/index.js.map +1 -1
  48. package/dist/EChart/EChart.d.ts +7 -7
  49. package/dist/EChart/EChart.d.ts.map +1 -1
  50. package/dist/EChart/EChart.js +3 -3
  51. package/dist/EChart/EChart.js.map +1 -1
  52. package/dist/EChart/index.js.map +1 -1
  53. package/dist/ErrorAlert.d.ts +1 -2
  54. package/dist/ErrorAlert.d.ts.map +1 -1
  55. package/dist/ErrorAlert.js +1 -1
  56. package/dist/ErrorAlert.js.map +1 -1
  57. package/dist/ErrorBoundary.js.map +1 -1
  58. package/dist/FontSizeSelector/FontSizeSelector.d.ts +2 -3
  59. package/dist/FontSizeSelector/FontSizeSelector.d.ts.map +1 -1
  60. package/dist/FontSizeSelector/FontSizeSelector.js +2 -2
  61. package/dist/FontSizeSelector/FontSizeSelector.js.map +1 -1
  62. package/dist/FontSizeSelector/index.js.map +1 -1
  63. package/dist/FormatControls/FormatControls.d.ts +8 -0
  64. package/dist/FormatControls/FormatControls.d.ts.map +1 -0
  65. package/dist/{UnitSelector/UnitSelector.js → FormatControls/FormatControls.js} +26 -26
  66. package/dist/FormatControls/FormatControls.js.map +1 -0
  67. package/dist/FormatControls/index.d.ts +2 -0
  68. package/dist/FormatControls/index.d.ts.map +1 -0
  69. package/dist/{UnitSelector → FormatControls}/index.js +1 -1
  70. package/dist/FormatControls/index.js.map +1 -0
  71. package/dist/GaugeChart/GaugeChart.d.ts +6 -7
  72. package/dist/GaugeChart/GaugeChart.d.ts.map +1 -1
  73. package/dist/GaugeChart/GaugeChart.js +12 -12
  74. package/dist/GaugeChart/GaugeChart.js.map +1 -1
  75. package/dist/GaugeChart/index.js.map +1 -1
  76. package/dist/InfoTooltip/InfoTooltip.d.ts +2 -2
  77. package/dist/InfoTooltip/InfoTooltip.d.ts.map +1 -1
  78. package/dist/InfoTooltip/InfoTooltip.js +4 -4
  79. package/dist/InfoTooltip/InfoTooltip.js.map +1 -1
  80. package/dist/InfoTooltip/index.js.map +1 -1
  81. package/dist/JSONEditor.d.ts +4 -4
  82. package/dist/JSONEditor.d.ts.map +1 -1
  83. package/dist/JSONEditor.js +9 -8
  84. package/dist/JSONEditor.js.map +1 -1
  85. package/dist/Legend/CompactLegend.d.ts +1 -2
  86. package/dist/Legend/CompactLegend.d.ts.map +1 -1
  87. package/dist/Legend/CompactLegend.js +1 -1
  88. package/dist/Legend/CompactLegend.js.map +1 -1
  89. package/dist/Legend/Legend.d.ts +1 -2
  90. package/dist/Legend/Legend.d.ts.map +1 -1
  91. package/dist/Legend/Legend.js +4 -4
  92. package/dist/Legend/Legend.js.map +1 -1
  93. package/dist/Legend/LegendColorBadge.js +1 -1
  94. package/dist/Legend/LegendColorBadge.js.map +1 -1
  95. package/dist/Legend/ListLegend.d.ts +1 -2
  96. package/dist/Legend/ListLegend.d.ts.map +1 -1
  97. package/dist/Legend/ListLegend.js +1 -1
  98. package/dist/Legend/ListLegend.js.map +1 -1
  99. package/dist/Legend/ListLegendItem.d.ts +2 -2
  100. package/dist/Legend/ListLegendItem.d.ts.map +1 -1
  101. package/dist/Legend/ListLegendItem.js +7 -11
  102. package/dist/Legend/ListLegendItem.js.map +1 -1
  103. package/dist/Legend/TableLegend.d.ts +1 -2
  104. package/dist/Legend/TableLegend.d.ts.map +1 -1
  105. package/dist/Legend/TableLegend.js +2 -2
  106. package/dist/Legend/TableLegend.js.map +1 -1
  107. package/dist/Legend/index.js.map +1 -1
  108. package/dist/Legend/legend-model.d.ts +2 -2
  109. package/dist/Legend/legend-model.d.ts.map +1 -1
  110. package/dist/Legend/legend-model.js.map +1 -1
  111. package/dist/LineChart/LineChart.d.ts +2 -2
  112. package/dist/LineChart/LineChart.d.ts.map +1 -1
  113. package/dist/LineChart/LineChart.js +22 -24
  114. package/dist/LineChart/LineChart.js.map +1 -1
  115. package/dist/LineChart/index.js.map +1 -1
  116. package/dist/ModeSelector/ModeSelector.d.ts +2 -3
  117. package/dist/ModeSelector/ModeSelector.d.ts.map +1 -1
  118. package/dist/ModeSelector/ModeSelector.js +2 -2
  119. package/dist/ModeSelector/ModeSelector.js.map +1 -1
  120. package/dist/ModeSelector/index.js.map +1 -1
  121. package/dist/OptionsEditorLayout/OptionsEditorColumn.d.ts +2 -2
  122. package/dist/OptionsEditorLayout/OptionsEditorColumn.d.ts.map +1 -1
  123. package/dist/OptionsEditorLayout/OptionsEditorColumn.js +1 -1
  124. package/dist/OptionsEditorLayout/OptionsEditorColumn.js.map +1 -1
  125. package/dist/OptionsEditorLayout/OptionsEditorControl.d.ts +2 -3
  126. package/dist/OptionsEditorLayout/OptionsEditorControl.d.ts.map +1 -1
  127. package/dist/OptionsEditorLayout/OptionsEditorControl.js +1 -1
  128. package/dist/OptionsEditorLayout/OptionsEditorControl.js.map +1 -1
  129. package/dist/OptionsEditorLayout/OptionsEditorGrid.d.ts +2 -2
  130. package/dist/OptionsEditorLayout/OptionsEditorGrid.d.ts.map +1 -1
  131. package/dist/OptionsEditorLayout/OptionsEditorGrid.js +1 -1
  132. package/dist/OptionsEditorLayout/OptionsEditorGrid.js.map +1 -1
  133. package/dist/OptionsEditorLayout/OptionsEditorGroup.d.ts +2 -2
  134. package/dist/OptionsEditorLayout/OptionsEditorGroup.d.ts.map +1 -1
  135. package/dist/OptionsEditorLayout/OptionsEditorGroup.js +1 -1
  136. package/dist/OptionsEditorLayout/OptionsEditorGroup.js.map +1 -1
  137. package/dist/OptionsEditorLayout/index.js.map +1 -1
  138. package/dist/RefreshIntervalPicker/RefreshIntervalPicker.d.ts +1 -2
  139. package/dist/RefreshIntervalPicker/RefreshIntervalPicker.d.ts.map +1 -1
  140. package/dist/RefreshIntervalPicker/RefreshIntervalPicker.js +23 -7
  141. package/dist/RefreshIntervalPicker/RefreshIntervalPicker.js.map +1 -1
  142. package/dist/RefreshIntervalPicker/index.js.map +1 -1
  143. package/dist/SettingsAutocomplete/SettingsAutocomplete.d.ts +1 -1
  144. package/dist/SettingsAutocomplete/SettingsAutocomplete.d.ts.map +1 -1
  145. package/dist/SettingsAutocomplete/SettingsAutocomplete.js +4 -4
  146. package/dist/SettingsAutocomplete/SettingsAutocomplete.js.map +1 -1
  147. package/dist/SettingsAutocomplete/index.js.map +1 -1
  148. package/dist/SortSelector/SortSelector.d.ts +2 -3
  149. package/dist/SortSelector/SortSelector.d.ts.map +1 -1
  150. package/dist/SortSelector/SortSelector.js +2 -2
  151. package/dist/SortSelector/SortSelector.js.map +1 -1
  152. package/dist/SortSelector/index.js.map +1 -1
  153. package/dist/StatChart/StatChart.d.ts +3 -4
  154. package/dist/StatChart/StatChart.d.ts.map +1 -1
  155. package/dist/StatChart/StatChart.js +10 -10
  156. package/dist/StatChart/StatChart.js.map +1 -1
  157. package/dist/StatChart/calculateFontSize.js +8 -8
  158. package/dist/StatChart/calculateFontSize.js.map +1 -1
  159. package/dist/StatChart/index.js.map +1 -1
  160. package/dist/Table/InnerTable.d.ts +2 -2
  161. package/dist/Table/InnerTable.d.ts.map +1 -1
  162. package/dist/Table/InnerTable.js +2 -2
  163. package/dist/Table/InnerTable.js.map +1 -1
  164. package/dist/Table/Table.d.ts +1 -2
  165. package/dist/Table/Table.d.ts.map +1 -1
  166. package/dist/Table/Table.js +3 -3
  167. package/dist/Table/Table.js.map +1 -1
  168. package/dist/Table/TableBody.d.ts +2 -2
  169. package/dist/Table/TableBody.d.ts.map +1 -1
  170. package/dist/Table/TableBody.js.map +1 -1
  171. package/dist/Table/TableCell.d.ts +1 -1
  172. package/dist/Table/TableCell.d.ts.map +1 -1
  173. package/dist/Table/TableCell.js +4 -4
  174. package/dist/Table/TableCell.js.map +1 -1
  175. package/dist/Table/TableCheckbox.d.ts +1 -2
  176. package/dist/Table/TableCheckbox.d.ts.map +1 -1
  177. package/dist/Table/TableCheckbox.js +1 -1
  178. package/dist/Table/TableCheckbox.js.map +1 -1
  179. package/dist/Table/TableHead.d.ts +2 -2
  180. package/dist/Table/TableHead.d.ts.map +1 -1
  181. package/dist/Table/TableHead.js.map +1 -1
  182. package/dist/Table/TableHeaderCell.d.ts +1 -2
  183. package/dist/Table/TableHeaderCell.d.ts.map +1 -1
  184. package/dist/Table/TableHeaderCell.js +1 -1
  185. package/dist/Table/TableHeaderCell.js.map +1 -1
  186. package/dist/Table/TableRow.d.ts +1 -1
  187. package/dist/Table/TableRow.d.ts.map +1 -1
  188. package/dist/Table/TableRow.js.map +1 -1
  189. package/dist/Table/VirtualizedTable.d.ts +2 -2
  190. package/dist/Table/VirtualizedTable.d.ts.map +1 -1
  191. package/dist/Table/VirtualizedTable.js +8 -8
  192. package/dist/Table/VirtualizedTable.js.map +1 -1
  193. package/dist/Table/VirtualizedTableContainer.d.ts +2 -2
  194. package/dist/Table/VirtualizedTableContainer.d.ts.map +1 -1
  195. package/dist/Table/VirtualizedTableContainer.js.map +1 -1
  196. package/dist/Table/hooks/useTableKeyboardNav.d.ts +1 -1
  197. package/dist/Table/hooks/useTableKeyboardNav.d.ts.map +1 -1
  198. package/dist/Table/hooks/useTableKeyboardNav.js +1 -1
  199. package/dist/Table/hooks/useTableKeyboardNav.js.map +1 -1
  200. package/dist/Table/hooks/useVirtualizedTableKeyboardNav.js +21 -21
  201. package/dist/Table/hooks/useVirtualizedTableKeyboardNav.js.map +1 -1
  202. package/dist/Table/index.js.map +1 -1
  203. package/dist/Table/model/table-model.d.ts +6 -6
  204. package/dist/Table/model/table-model.d.ts.map +1 -1
  205. package/dist/Table/model/table-model.js +11 -11
  206. package/dist/Table/model/table-model.js.map +1 -1
  207. package/dist/ThresholdsEditor/ThresholdColorPicker.d.ts +1 -2
  208. package/dist/ThresholdsEditor/ThresholdColorPicker.d.ts.map +1 -1
  209. package/dist/ThresholdsEditor/ThresholdColorPicker.js +4 -4
  210. package/dist/ThresholdsEditor/ThresholdColorPicker.js.map +1 -1
  211. package/dist/ThresholdsEditor/ThresholdInput.d.ts +1 -1
  212. package/dist/ThresholdsEditor/ThresholdInput.d.ts.map +1 -1
  213. package/dist/ThresholdsEditor/ThresholdInput.js +2 -2
  214. package/dist/ThresholdsEditor/ThresholdInput.js.map +1 -1
  215. package/dist/ThresholdsEditor/ThresholdsEditor.d.ts +1 -2
  216. package/dist/ThresholdsEditor/ThresholdsEditor.d.ts.map +1 -1
  217. package/dist/ThresholdsEditor/ThresholdsEditor.js +23 -21
  218. package/dist/ThresholdsEditor/ThresholdsEditor.js.map +1 -1
  219. package/dist/ThresholdsEditor/index.js.map +1 -1
  220. package/dist/TimeChart/TimeChart.d.ts +3 -3
  221. package/dist/TimeChart/TimeChart.d.ts.map +1 -1
  222. package/dist/TimeChart/TimeChart.js +110 -67
  223. package/dist/TimeChart/TimeChart.js.map +1 -1
  224. package/dist/TimeChart/index.js.map +1 -1
  225. package/dist/TimeSeriesTooltip/LineChartTooltip.d.ts +2 -2
  226. package/dist/TimeSeriesTooltip/LineChartTooltip.d.ts.map +1 -1
  227. package/dist/TimeSeriesTooltip/LineChartTooltip.js +11 -10
  228. package/dist/TimeSeriesTooltip/LineChartTooltip.js.map +1 -1
  229. package/dist/TimeSeriesTooltip/SeriesInfo.d.ts +1 -2
  230. package/dist/TimeSeriesTooltip/SeriesInfo.d.ts.map +1 -1
  231. package/dist/TimeSeriesTooltip/SeriesInfo.js +3 -3
  232. package/dist/TimeSeriesTooltip/SeriesInfo.js.map +1 -1
  233. package/dist/TimeSeriesTooltip/SeriesLabelsStack.d.ts +1 -2
  234. package/dist/TimeSeriesTooltip/SeriesLabelsStack.d.ts.map +1 -1
  235. package/dist/TimeSeriesTooltip/SeriesLabelsStack.js +1 -1
  236. package/dist/TimeSeriesTooltip/SeriesLabelsStack.js.map +1 -1
  237. package/dist/TimeSeriesTooltip/SeriesMarker.d.ts +1 -2
  238. package/dist/TimeSeriesTooltip/SeriesMarker.d.ts.map +1 -1
  239. package/dist/TimeSeriesTooltip/SeriesMarker.js +1 -1
  240. package/dist/TimeSeriesTooltip/SeriesMarker.js.map +1 -1
  241. package/dist/TimeSeriesTooltip/TimeChartTooltip.d.ts +2 -2
  242. package/dist/TimeSeriesTooltip/TimeChartTooltip.d.ts.map +1 -1
  243. package/dist/TimeSeriesTooltip/TimeChartTooltip.js +6 -6
  244. package/dist/TimeSeriesTooltip/TimeChartTooltip.js.map +1 -1
  245. package/dist/TimeSeriesTooltip/TooltipContent.d.ts +1 -2
  246. package/dist/TimeSeriesTooltip/TooltipContent.d.ts.map +1 -1
  247. package/dist/TimeSeriesTooltip/TooltipContent.js +2 -2
  248. package/dist/TimeSeriesTooltip/TooltipContent.js.map +1 -1
  249. package/dist/TimeSeriesTooltip/TooltipHeader.js +7 -7
  250. package/dist/TimeSeriesTooltip/TooltipHeader.js.map +1 -1
  251. package/dist/TimeSeriesTooltip/index.js.map +1 -1
  252. package/dist/TimeSeriesTooltip/nearby-series.d.ts +8 -8
  253. package/dist/TimeSeriesTooltip/nearby-series.d.ts.map +1 -1
  254. package/dist/TimeSeriesTooltip/nearby-series.js +44 -45
  255. package/dist/TimeSeriesTooltip/nearby-series.js.map +1 -1
  256. package/dist/TimeSeriesTooltip/tooltip-model.d.ts +13 -26
  257. package/dist/TimeSeriesTooltip/tooltip-model.d.ts.map +1 -1
  258. package/dist/TimeSeriesTooltip/tooltip-model.js +5 -11
  259. package/dist/TimeSeriesTooltip/tooltip-model.js.map +1 -1
  260. package/dist/TimeSeriesTooltip/utils.d.ts +1 -1
  261. package/dist/TimeSeriesTooltip/utils.d.ts.map +1 -1
  262. package/dist/TimeSeriesTooltip/utils.js +5 -4
  263. package/dist/TimeSeriesTooltip/utils.js.map +1 -1
  264. package/dist/ToolbarIconButton/ToolbarIconButton.d.ts +6 -0
  265. package/dist/ToolbarIconButton/ToolbarIconButton.d.ts.map +1 -0
  266. package/dist/ToolbarIconButton/ToolbarIconButton.js +32 -0
  267. package/dist/ToolbarIconButton/ToolbarIconButton.js.map +1 -0
  268. package/dist/ToolbarIconButton/index.d.ts +2 -0
  269. package/dist/ToolbarIconButton/index.d.ts.map +1 -0
  270. package/dist/ToolbarIconButton/index.js +15 -0
  271. package/dist/ToolbarIconButton/index.js.map +1 -0
  272. package/dist/YAxisLabel.d.ts +1 -2
  273. package/dist/YAxisLabel.d.ts.map +1 -1
  274. package/dist/YAxisLabel.js +1 -1
  275. package/dist/YAxisLabel.js.map +1 -1
  276. package/dist/cjs/BarChart/BarChart.js +25 -17
  277. package/dist/cjs/BarChart/index.js +10 -8
  278. package/dist/cjs/ColorPicker/ColorPicker.js +19 -15
  279. package/dist/cjs/ColorPicker/index.js +10 -8
  280. package/dist/cjs/ContentWithLegend/ContentWithLegend.js +13 -11
  281. package/dist/cjs/ContentWithLegend/index.js +10 -8
  282. package/dist/cjs/ContentWithLegend/model/content-with-legend-model.js +29 -25
  283. package/dist/cjs/DateTimeRangePicker/AbsoluteTimePicker.js +30 -44
  284. package/dist/cjs/DateTimeRangePicker/DateTimeRangePicker.js +13 -11
  285. package/dist/cjs/DateTimeRangePicker/TimeRangeSelector.js +14 -12
  286. package/dist/cjs/DateTimeRangePicker/index.js +12 -10
  287. package/dist/cjs/DateTimeRangePicker/utils.js +9 -5
  288. package/dist/cjs/Dialog/Dialog.js +16 -14
  289. package/dist/cjs/Dialog/DiscardChangesConfirmationDialog.js +12 -10
  290. package/dist/cjs/Dialog/index.js +11 -9
  291. package/dist/cjs/Drawer/Drawer.js +8 -5
  292. package/dist/cjs/Drawer/index.js +10 -8
  293. package/dist/cjs/EChart/EChart.js +16 -12
  294. package/dist/cjs/EChart/index.js +10 -8
  295. package/dist/cjs/ErrorAlert.js +6 -4
  296. package/dist/cjs/ErrorBoundary.js +4 -2
  297. package/dist/cjs/FontSizeSelector/FontSizeSelector.js +10 -8
  298. package/dist/cjs/FontSizeSelector/index.js +10 -8
  299. package/dist/cjs/{UnitSelector/UnitSelector.js → FormatControls/FormatControls.js} +38 -36
  300. package/dist/cjs/{UnitSelector → FormatControls}/index.js +10 -8
  301. package/dist/cjs/GaugeChart/GaugeChart.js +22 -18
  302. package/dist/cjs/GaugeChart/index.js +10 -8
  303. package/dist/cjs/InfoTooltip/InfoTooltip.js +16 -14
  304. package/dist/cjs/InfoTooltip/index.js +10 -8
  305. package/dist/cjs/JSONEditor.js +19 -16
  306. package/dist/cjs/Legend/CompactLegend.js +10 -8
  307. package/dist/cjs/Legend/Legend.js +16 -14
  308. package/dist/cjs/Legend/LegendColorBadge.js +8 -6
  309. package/dist/cjs/Legend/ListLegend.js +11 -9
  310. package/dist/cjs/Legend/ListLegendItem.js +20 -20
  311. package/dist/cjs/Legend/TableLegend.js +8 -6
  312. package/dist/cjs/Legend/index.js +11 -9
  313. package/dist/cjs/Legend/legend-model.js +3 -1
  314. package/dist/cjs/LineChart/LineChart.js +31 -31
  315. package/dist/cjs/LineChart/index.js +10 -8
  316. package/dist/cjs/ModeSelector/ModeSelector.js +10 -8
  317. package/dist/cjs/ModeSelector/index.js +10 -8
  318. package/dist/cjs/OptionsEditorLayout/OptionsEditorColumn.js +7 -5
  319. package/dist/cjs/OptionsEditorLayout/OptionsEditorControl.js +17 -15
  320. package/dist/cjs/OptionsEditorLayout/OptionsEditorGrid.js +6 -4
  321. package/dist/cjs/OptionsEditorLayout/OptionsEditorGroup.js +12 -10
  322. package/dist/cjs/OptionsEditorLayout/index.js +13 -11
  323. package/dist/cjs/RefreshIntervalPicker/RefreshIntervalPicker.js +28 -10
  324. package/dist/cjs/RefreshIntervalPicker/index.js +10 -8
  325. package/dist/cjs/SettingsAutocomplete/SettingsAutocomplete.js +13 -11
  326. package/dist/cjs/SettingsAutocomplete/index.js +10 -8
  327. package/dist/cjs/SortSelector/SortSelector.js +10 -8
  328. package/dist/cjs/SortSelector/index.js +10 -8
  329. package/dist/cjs/StatChart/StatChart.js +22 -20
  330. package/dist/cjs/StatChart/calculateFontSize.js +11 -9
  331. package/dist/cjs/StatChart/index.js +10 -8
  332. package/dist/cjs/Table/InnerTable.js +7 -5
  333. package/dist/cjs/Table/Table.js +18 -16
  334. package/dist/cjs/Table/TableBody.js +5 -3
  335. package/dist/cjs/Table/TableCell.js +12 -10
  336. package/dist/cjs/Table/TableCheckbox.js +6 -4
  337. package/dist/cjs/Table/TableHead.js +5 -3
  338. package/dist/cjs/Table/TableHeaderCell.js +9 -7
  339. package/dist/cjs/Table/TableRow.js +5 -3
  340. package/dist/cjs/Table/VirtualizedTable.js +34 -32
  341. package/dist/cjs/Table/VirtualizedTableContainer.js +5 -3
  342. package/dist/cjs/Table/hooks/useTableKeyboardNav.js +4 -2
  343. package/dist/cjs/Table/hooks/useVirtualizedTableKeyboardNav.js +24 -22
  344. package/dist/cjs/Table/index.js +14 -10
  345. package/dist/cjs/Table/model/table-model.js +17 -13
  346. package/dist/cjs/ThresholdsEditor/ThresholdColorPicker.js +17 -15
  347. package/dist/cjs/ThresholdsEditor/ThresholdInput.js +15 -13
  348. package/dist/cjs/ThresholdsEditor/ThresholdsEditor.js +50 -44
  349. package/dist/cjs/ThresholdsEditor/index.js +10 -8
  350. package/dist/cjs/TimeChart/TimeChart.js +123 -78
  351. package/dist/cjs/TimeChart/index.js +10 -8
  352. package/dist/cjs/TimeSeriesTooltip/LineChartTooltip.js +31 -28
  353. package/dist/cjs/TimeSeriesTooltip/SeriesInfo.js +18 -16
  354. package/dist/cjs/TimeSeriesTooltip/SeriesLabelsStack.js +16 -14
  355. package/dist/cjs/TimeSeriesTooltip/SeriesMarker.js +6 -4
  356. package/dist/cjs/TimeSeriesTooltip/TimeChartTooltip.js +23 -21
  357. package/dist/cjs/TimeSeriesTooltip/TooltipContent.js +9 -7
  358. package/dist/cjs/TimeSeriesTooltip/TooltipHeader.js +35 -33
  359. package/dist/cjs/TimeSeriesTooltip/index.js +19 -17
  360. package/dist/cjs/TimeSeriesTooltip/nearby-series.js +70 -53
  361. package/dist/cjs/TimeSeriesTooltip/tooltip-model.js +56 -28
  362. package/dist/cjs/TimeSeriesTooltip/utils.js +19 -14
  363. package/dist/cjs/ToolbarIconButton/ToolbarIconButton.js +40 -0
  364. package/dist/cjs/ToolbarIconButton/index.js +30 -0
  365. package/dist/cjs/YAxisLabel.js +7 -5
  366. package/dist/cjs/context/{ChartsThemeProvider.js → ChartsProvider.js} +41 -12
  367. package/dist/cjs/context/SnackbarProvider.js +7 -3
  368. package/dist/cjs/context/TimeZoneProvider.js +17 -9
  369. package/dist/cjs/context/index.js +32 -0
  370. package/dist/cjs/index.js +42 -41
  371. package/dist/cjs/model/graph.js +9 -3
  372. package/dist/cjs/model/index.js +12 -10
  373. package/dist/cjs/test/index.js +10 -8
  374. package/dist/cjs/test/render.js +7 -5
  375. package/dist/cjs/test-utils/index.js +10 -8
  376. package/dist/cjs/test-utils/theme.js +38 -19
  377. package/dist/cjs/theme/component-overrides/alert.js +7 -5
  378. package/dist/cjs/theme/component-overrides/paper.js +4 -2
  379. package/dist/cjs/theme/index.js +10 -8
  380. package/dist/cjs/theme/palette/background.js +6 -2
  381. package/dist/cjs/theme/palette/colors/blue.js +3 -1
  382. package/dist/cjs/theme/palette/colors/common.js +6 -2
  383. package/dist/cjs/theme/palette/colors/green.js +3 -1
  384. package/dist/cjs/theme/palette/colors/grey.js +3 -1
  385. package/dist/cjs/theme/palette/colors/index.js +17 -15
  386. package/dist/cjs/theme/palette/colors/orange.js +3 -1
  387. package/dist/cjs/theme/palette/colors/purple.js +3 -1
  388. package/dist/cjs/theme/palette/colors/red.js +3 -1
  389. package/dist/cjs/theme/palette/error.js +3 -1
  390. package/dist/cjs/theme/palette/grey.js +3 -1
  391. package/dist/cjs/theme/palette/index.js +10 -8
  392. package/dist/cjs/theme/palette/palette-options.js +3 -1
  393. package/dist/cjs/theme/palette/primary.js +3 -1
  394. package/dist/cjs/theme/palette/secondary.js +3 -1
  395. package/dist/cjs/theme/palette/success.js +3 -1
  396. package/dist/cjs/theme/palette/text.js +3 -1
  397. package/dist/cjs/theme/palette/warning.js +3 -1
  398. package/dist/cjs/theme/theme.js +6 -4
  399. package/dist/cjs/theme/typography.js +3 -1
  400. package/dist/cjs/utils/axis.js +11 -7
  401. package/dist/cjs/utils/chart-actions.js +68 -12
  402. package/dist/cjs/utils/combine-sx.js +3 -1
  403. package/dist/cjs/utils/component-ids.js +3 -1
  404. package/dist/cjs/utils/format.js +16 -8
  405. package/dist/cjs/utils/index.js +15 -13
  406. package/dist/cjs/utils/mathjs.js +4 -2
  407. package/dist/cjs/utils/theme-gen.js +16 -18
  408. package/dist/context/ChartsProvider.d.ts +19 -0
  409. package/dist/context/ChartsProvider.d.ts.map +1 -0
  410. package/dist/context/{ChartsThemeProvider.js → ChartsProvider.js} +24 -6
  411. package/dist/context/ChartsProvider.js.map +1 -0
  412. package/dist/context/SnackbarProvider.d.ts +2 -2
  413. package/dist/context/SnackbarProvider.d.ts.map +1 -1
  414. package/dist/context/SnackbarProvider.js +1 -1
  415. package/dist/context/SnackbarProvider.js.map +1 -1
  416. package/dist/context/TimeZoneProvider.d.ts +1 -1
  417. package/dist/context/TimeZoneProvider.d.ts.map +1 -1
  418. package/dist/context/TimeZoneProvider.js +1 -1
  419. package/dist/context/TimeZoneProvider.js.map +1 -1
  420. package/dist/context/index.d.ts +4 -0
  421. package/dist/context/index.d.ts.map +1 -0
  422. package/dist/context/index.js +17 -0
  423. package/dist/context/index.js.map +1 -0
  424. package/dist/index.d.ts +3 -4
  425. package/dist/index.d.ts.map +1 -1
  426. package/dist/index.js +3 -4
  427. package/dist/index.js.map +1 -1
  428. package/dist/model/graph.d.ts +8 -8
  429. package/dist/model/graph.d.ts.map +1 -1
  430. package/dist/model/graph.js.map +1 -1
  431. package/dist/model/index.js.map +1 -1
  432. package/dist/model/theme.d.ts +1 -1
  433. package/dist/model/theme.d.ts.map +1 -1
  434. package/dist/model/theme.js.map +1 -1
  435. package/dist/model/timeOption.js.map +1 -1
  436. package/dist/test/index.js.map +1 -1
  437. package/dist/test/render.js.map +1 -1
  438. package/dist/test/setup-tests.js.map +1 -1
  439. package/dist/test-utils/index.js.map +1 -1
  440. package/dist/test-utils/theme.d.ts +2 -0
  441. package/dist/test-utils/theme.d.ts.map +1 -1
  442. package/dist/test-utils/theme.js +25 -16
  443. package/dist/test-utils/theme.js.map +1 -1
  444. package/dist/theme/component-overrides/alert.js +4 -4
  445. package/dist/theme/component-overrides/alert.js.map +1 -1
  446. package/dist/theme/component-overrides/paper.js +1 -1
  447. package/dist/theme/component-overrides/paper.js.map +1 -1
  448. package/dist/theme/index.d.ts +1 -0
  449. package/dist/theme/index.d.ts.map +1 -1
  450. package/dist/theme/index.js.map +1 -1
  451. package/dist/theme/palette/background.d.ts.map +1 -1
  452. package/dist/theme/palette/background.js +3 -1
  453. package/dist/theme/palette/background.js.map +1 -1
  454. package/dist/theme/palette/colors/blue.js.map +1 -1
  455. package/dist/theme/palette/colors/common.js.map +1 -1
  456. package/dist/theme/palette/colors/green.js.map +1 -1
  457. package/dist/theme/palette/colors/grey.js.map +1 -1
  458. package/dist/theme/palette/colors/index.js.map +1 -1
  459. package/dist/theme/palette/colors/orange.js.map +1 -1
  460. package/dist/theme/palette/colors/purple.js.map +1 -1
  461. package/dist/theme/palette/colors/red.js.map +1 -1
  462. package/dist/theme/palette/colors/types.d.ts +1 -1
  463. package/dist/theme/palette/colors/types.d.ts.map +1 -1
  464. package/dist/theme/palette/colors/types.js.map +1 -1
  465. package/dist/theme/palette/error.js.map +1 -1
  466. package/dist/theme/palette/grey.js.map +1 -1
  467. package/dist/theme/palette/index.js.map +1 -1
  468. package/dist/theme/palette/palette-options.js.map +1 -1
  469. package/dist/theme/palette/primary.js.map +1 -1
  470. package/dist/theme/palette/secondary.js.map +1 -1
  471. package/dist/theme/palette/success.js.map +1 -1
  472. package/dist/theme/palette/text.js.map +1 -1
  473. package/dist/theme/palette/warning.js.map +1 -1
  474. package/dist/theme/theme.js +1 -1
  475. package/dist/theme/theme.js.map +1 -1
  476. package/dist/theme/types/ThemeExtension.d.js.map +1 -1
  477. package/dist/theme/typography.js.map +1 -1
  478. package/dist/utils/axis.d.ts +4 -4
  479. package/dist/utils/axis.d.ts.map +1 -1
  480. package/dist/utils/axis.js +4 -4
  481. package/dist/utils/axis.js.map +1 -1
  482. package/dist/utils/chart-actions.d.ts +6 -2
  483. package/dist/utils/chart-actions.d.ts.map +1 -1
  484. package/dist/utils/chart-actions.js +51 -7
  485. package/dist/utils/chart-actions.js.map +1 -1
  486. package/dist/utils/combine-sx.js.map +1 -1
  487. package/dist/utils/component-ids.js.map +1 -1
  488. package/dist/utils/format.js.map +1 -1
  489. package/dist/utils/index.js.map +1 -1
  490. package/dist/utils/mathjs.js +1 -1
  491. package/dist/utils/mathjs.js.map +1 -1
  492. package/dist/utils/theme-gen.d.ts +3 -8
  493. package/dist/utils/theme-gen.d.ts.map +1 -1
  494. package/dist/utils/theme-gen.js +11 -15
  495. package/dist/utils/theme-gen.js.map +1 -1
  496. package/package.json +8 -7
  497. package/dist/UnitSelector/UnitSelector.d.ts +0 -9
  498. package/dist/UnitSelector/UnitSelector.d.ts.map +0 -1
  499. package/dist/UnitSelector/UnitSelector.js.map +0 -1
  500. package/dist/UnitSelector/index.d.ts +0 -2
  501. package/dist/UnitSelector/index.d.ts.map +0 -1
  502. package/dist/UnitSelector/index.js.map +0 -1
  503. package/dist/context/ChartsThemeProvider.d.ts +0 -10
  504. package/dist/context/ChartsThemeProvider.d.ts.map +0 -1
  505. package/dist/context/ChartsThemeProvider.js.map +0 -1
@@ -16,25 +16,28 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "TimeChart", {
18
18
  enumerable: true,
19
- get: ()=>TimeChart
19
+ get: function() {
20
+ return TimeChart;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
23
+ const _jsxruntime = require("react/jsx-runtime");
22
24
  const _react = require("react");
23
25
  const _material = require("@mui/material");
24
- const _merge = /*#__PURE__*/ _interopRequireDefault(require("lodash/merge"));
25
- const _dateFnsTz = require("date-fns-tz");
26
+ const _merge = /*#__PURE__*/ _interop_require_default(require("lodash/merge"));
27
+ const _isEqual = /*#__PURE__*/ _interop_require_default(require("lodash/isEqual"));
28
+ const _datefnstz = require("date-fns-tz");
26
29
  const _core = require("@perses-dev/core");
27
30
  const _core1 = require("echarts/core");
28
31
  const _charts = require("echarts/charts");
29
32
  const _components = require("echarts/components");
30
33
  const _renderers = require("echarts/renderers");
31
- const _echart = require("../EChart");
32
- const _graph = require("../model/graph");
33
- const _chartsThemeProvider = require("../context/ChartsThemeProvider");
34
+ const _EChart = require("../EChart");
35
+ const _model = require("../model");
36
+ const _ChartsProvider = require("../context/ChartsProvider");
34
37
  const _utils = require("../utils");
35
- const _timeSeriesTooltip = require("../TimeSeriesTooltip");
36
- const _timeZoneProvider = require("../context/TimeZoneProvider");
37
- function _interopRequireDefault(obj) {
38
+ const _TimeSeriesTooltip = require("../TimeSeriesTooltip");
39
+ const _TimeZoneProvider = require("../context/TimeZoneProvider");
40
+ function _interop_require_default(obj) {
38
41
  return obj && obj.__esModule ? obj : {
39
42
  default: obj
40
43
  };
@@ -53,17 +56,17 @@ function _interopRequireDefault(obj) {
53
56
  _components.TooltipComponent,
54
57
  _renderers.CanvasRenderer
55
58
  ]);
56
- const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ height , data , seriesMapping , timeScale: timeScaleProp , yAxis , unit , grid , isStackedBar =false , tooltipConfig =_timeSeriesTooltip.DEFAULT_TOOLTIP_CONFIG , noDataVariant ='message' , syncGroup , onDataZoom , onDoubleClick , __experimentalEChartsOptionsOverride , }, ref) {
57
- var ref1;
58
- const chartsTheme = (0, _chartsThemeProvider.useChartsTheme)();
59
+ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ height, data, seriesMapping, timeScale: timeScaleProp, yAxis, format, grid, isStackedBar = false, tooltipConfig = _TimeSeriesTooltip.DEFAULT_TOOLTIP_CONFIG, noDataVariant = 'message', syncGroup, onDataZoom, onDoubleClick, __experimentalEChartsOptionsOverride }, ref) {
60
+ var _option_tooltip;
61
+ const { chartsTheme, enablePinning, lastTooltipPinnedCoords, setLastTooltipPinnedCoords } = (0, _ChartsProvider.useChartsContext)();
62
+ const isPinningEnabled = tooltipConfig.enablePinning && enablePinning;
59
63
  const chartRef = (0, _react.useRef)();
60
64
  const [showTooltip, setShowTooltip] = (0, _react.useState)(true);
61
65
  const [tooltipPinnedCoords, setTooltipPinnedCoords] = (0, _react.useState)(null);
66
+ const [pinnedCrosshair, setPinnedCrosshair] = (0, _react.useState)(null);
62
67
  const [isDragging, setIsDragging] = (0, _react.useState)(false);
63
68
  const [startX, setStartX] = (0, _react.useState)(0);
64
- const { timeZone } = (0, _timeZoneProvider.useTimeZone)();
65
- var ref2;
66
- const totalSeries = (ref2 = data === null || data === void 0 ? void 0 : data.length) !== null && ref2 !== void 0 ? ref2 : 0;
69
+ const { timeZone } = (0, _TimeZoneProvider.useTimeZone)();
67
70
  let timeScale;
68
71
  if (timeScaleProp === undefined) {
69
72
  const commonTimeScale = (0, _core.getCommonTimeScale)(data);
@@ -88,7 +91,7 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
88
91
  }
89
92
  (0, _react.useImperativeHandle)(ref, ()=>{
90
93
  return {
91
- highlightSeries ({ name }) {
94
+ highlightSeries ({ name }) {
92
95
  if (!chartRef.current) {
93
96
  // when chart undef, do not highlight series when hovering over legend
94
97
  return;
@@ -103,12 +106,10 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
103
106
  // when chart undef, do not clear highlight series
104
107
  return;
105
108
  }
106
- (0, _utils.clearHighlightedSeries)(chartRef.current, totalSeries);
109
+ (0, _utils.clearHighlightedSeries)(chartRef.current);
107
110
  }
108
111
  };
109
- }, [
110
- totalSeries
111
- ]);
112
+ }, []);
112
113
  const handleEvents = (0, _react.useMemo)(()=>{
113
114
  return {
114
115
  datazoom: (params)=>{
@@ -139,7 +140,7 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
139
140
  onDataZoom,
140
141
  setTooltipPinnedCoords
141
142
  ]);
142
- const { noDataOption } = chartsTheme;
143
+ const { noDataOption } = chartsTheme;
143
144
  const option = (0, _react.useMemo)(()=>{
144
145
  // The "chart" `noDataVariant` is only used when the `timeSeries` is an
145
146
  // empty array because a `null` value will throw an error.
@@ -152,7 +153,7 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
152
153
  const values = d.values.map(([timestamp, value])=>{
153
154
  const val = value === null ? '-' : value; // echarts use '-' to represent null data
154
155
  return [
155
- isLocalTimeZone ? timestamp : (0, _dateFnsTz.utcToZonedTime)(timestamp, timeZone),
156
+ isLocalTimeZone ? timestamp : (0, _datefnstz.utcToZonedTime)(timestamp, timeZone),
156
157
  val
157
158
  ];
158
159
  });
@@ -167,23 +168,27 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
167
168
  ]
168
169
  });
169
170
  });
170
- var _rangeMs;
171
+ const updatedSeriesMapping = enablePinning && pinnedCrosshair !== null ? [
172
+ ...seriesMapping,
173
+ pinnedCrosshair
174
+ ] : seriesMapping;
175
+ var _timeScale_rangeMs;
171
176
  const option = {
172
177
  dataset: dataset,
173
- series: seriesMapping,
178
+ series: updatedSeriesMapping,
174
179
  xAxis: {
175
180
  type: 'time',
176
- min: isLocalTimeZone ? timeScale.startMs : (0, _dateFnsTz.utcToZonedTime)(timeScale.startMs, timeZone),
177
- max: isLocalTimeZone ? timeScale.endMs : (0, _dateFnsTz.utcToZonedTime)(timeScale.endMs, timeZone),
181
+ min: isLocalTimeZone ? timeScale.startMs : (0, _datefnstz.utcToZonedTime)(timeScale.startMs, timeZone),
182
+ max: isLocalTimeZone ? timeScale.endMs : (0, _datefnstz.utcToZonedTime)(timeScale.endMs, timeZone),
178
183
  axisLabel: {
179
184
  hideOverlap: true,
180
- formatter: (0, _utils.getFormattedAxisLabel)((_rangeMs = timeScale.rangeMs) !== null && _rangeMs !== void 0 ? _rangeMs : 0)
185
+ formatter: (0, _utils.getFormattedAxisLabel)((_timeScale_rangeMs = timeScale.rangeMs) !== null && _timeScale_rangeMs !== void 0 ? _timeScale_rangeMs : 0)
181
186
  },
182
187
  axisPointer: {
183
188
  snap: false
184
189
  }
185
190
  },
186
- yAxis: (0, _utils.getYAxes)(yAxis, unit),
191
+ yAxis: (0, _utils.getFormattedAxis)(yAxis, format),
187
192
  animation: false,
188
193
  tooltip: {
189
194
  show: true,
@@ -215,77 +220,116 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
215
220
  return __experimentalEChartsOptionsOverride(option);
216
221
  }
217
222
  return option;
218
- // tooltipPinnedCoords is needed in dep array so crosshair stays beside pinned tooltip onClick
219
- // eslint-disable-next-line react-hooks/exhaustive-deps
220
223
  }, [
221
224
  data,
222
225
  seriesMapping,
223
226
  timeScale,
224
227
  yAxis,
225
- unit,
228
+ format,
226
229
  grid,
227
230
  noDataOption,
228
231
  __experimentalEChartsOptionsOverride,
229
232
  noDataVariant,
230
233
  timeZone,
231
- tooltipPinnedCoords,
232
- isStackedBar
234
+ isStackedBar,
235
+ enablePinning,
236
+ pinnedCrosshair
233
237
  ]);
234
- return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_material.Box, {
238
+ // Update adjacent charts so tooltip is unpinned when current chart is clicked.
239
+ (0, _react.useEffect)(()=>{
240
+ // Only allow pinning one tooltip at a time, subsequent tooltip click unpins previous.
241
+ // Multiple tooltips can only be pinned if Ctrl or Cmd key is pressed while clicking.
242
+ const multipleTooltipsPinned = tooltipPinnedCoords !== null && lastTooltipPinnedCoords !== null;
243
+ if (multipleTooltipsPinned) {
244
+ if (!(0, _isEqual.default)(lastTooltipPinnedCoords, tooltipPinnedCoords)) {
245
+ setTooltipPinnedCoords(null);
246
+ if (tooltipPinnedCoords !== null && pinnedCrosshair !== null) {
247
+ setPinnedCrosshair(null);
248
+ }
249
+ }
250
+ }
251
+ // tooltipPinnedCoords CANNOT be in dep array or tooltip pinning breaks in the current chart's onClick
252
+ // eslint-disable-next-line react-hooks/exhaustive-deps
253
+ }, [
254
+ lastTooltipPinnedCoords,
255
+ seriesMapping
256
+ ]);
257
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Box, {
235
258
  sx: {
236
259
  height
237
260
  },
261
+ // onContextMenu={(e) => {
262
+ // // TODO: confirm tooltip pinning works correctly on Windows, should e.preventDefault() be added here
263
+ // e.preventDefault(); // Prevent the default behaviour when right clicked
264
+ // }}
238
265
  onClick: (e)=>{
239
- var ref;
266
+ // Allows user to opt-in to multi tooltip pinning when Ctrl or Cmd key held down
267
+ const isControlKeyPressed = e.ctrlKey || e.metaKey;
268
+ if (isControlKeyPressed) {
269
+ e.preventDefault();
270
+ }
240
271
  // Determine where on chart canvas to plot pinned crosshair as markLine.
241
272
  const pointInGrid = (0, _utils.getPointInGrid)(e.nativeEvent.offsetX, e.nativeEvent.offsetY, chartRef.current);
242
273
  if (pointInGrid === null) {
243
274
  return;
244
275
  }
245
- // Clear previously set pinned crosshair
246
- const isCrosshairPinned = ((ref = seriesMapping[seriesMapping.length - 1]) === null || ref === void 0 ? void 0 : ref.name) === _graph.PINNED_CROSSHAIR_SERIES_NAME;
247
- if (tooltipPinnedCoords !== null && isCrosshairPinned) {
248
- seriesMapping.pop();
249
- } else if (seriesMapping.length !== data.length + 1) {
250
- // Only add pinned crosshair line series when there is not one already in seriesMapping.
251
- const pinnedCrosshair = (0, _merge.default)(_graph.DEFAULT_PINNED_CROSSHAIR, {
252
- markLine: {
253
- data: [
254
- {
255
- xAxis: pointInGrid[0]
256
- }
257
- ]
258
- }
259
- });
260
- seriesMapping.push(pinnedCrosshair);
261
- }
262
276
  // Pin and unpin when clicking on chart canvas but not tooltip text.
263
- if (tooltipConfig.enablePinning && e.target instanceof HTMLCanvasElement) {
277
+ if (isPinningEnabled && e.target instanceof HTMLCanvasElement) {
278
+ // Pin tooltip and update shared charts context to remember these coordinates.
279
+ const pinnedPos = {
280
+ page: {
281
+ x: e.pageX,
282
+ y: e.pageY
283
+ },
284
+ client: {
285
+ x: e.clientX,
286
+ y: e.clientY
287
+ },
288
+ plotCanvas: {
289
+ x: e.nativeEvent.offsetX,
290
+ y: e.nativeEvent.offsetY
291
+ },
292
+ target: e.target
293
+ };
264
294
  setTooltipPinnedCoords((current)=>{
265
295
  if (current === null) {
266
- return {
267
- page: {
268
- x: e.pageX,
269
- y: e.pageY
270
- },
271
- client: {
272
- x: e.clientX,
273
- y: e.clientY
274
- },
275
- plotCanvas: {
276
- x: e.nativeEvent.offsetX,
277
- y: e.nativeEvent.offsetY
278
- },
279
- target: e.target
280
- };
296
+ return pinnedPos;
281
297
  } else {
298
+ setPinnedCrosshair(null);
282
299
  return null;
283
300
  }
284
301
  });
302
+ setPinnedCrosshair((current)=>{
303
+ // Only add pinned crosshair line series when there is not one already in seriesMapping.
304
+ if (current === null) {
305
+ var _data_;
306
+ const cursorX = pointInGrid[0];
307
+ // Only need to loop through first dataset source since getCommonTimeScale ensures xAxis timestamps are consistent
308
+ const firstTimeSeriesValues = (_data_ = data[0]) === null || _data_ === void 0 ? void 0 : _data_.values;
309
+ const closestTimestamp = (0, _utils.getClosestTimestamp)(firstTimeSeriesValues, cursorX);
310
+ // Crosshair snaps to nearest timestamp since cursor may be slightly to left or right
311
+ const pinnedCrosshair = (0, _merge.default)({}, _model.DEFAULT_PINNED_CROSSHAIR, {
312
+ markLine: {
313
+ data: [
314
+ {
315
+ xAxis: closestTimestamp
316
+ }
317
+ ]
318
+ }
319
+ });
320
+ return pinnedCrosshair;
321
+ } else {
322
+ // Clear previously set pinned crosshair
323
+ return null;
324
+ }
325
+ });
326
+ if (!isControlKeyPressed) {
327
+ setLastTooltipPinnedCoords(pinnedPos);
328
+ }
285
329
  }
286
330
  },
287
331
  onMouseDown: (e)=>{
288
- const { clientX } = e;
332
+ const { clientX } = e;
289
333
  setIsDragging(true);
290
334
  setStartX(clientX);
291
335
  },
@@ -294,7 +338,7 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
294
338
  if (!(e.target instanceof HTMLCanvasElement)) {
295
339
  return;
296
340
  }
297
- const { clientX } = e;
341
+ const { clientX } = e;
298
342
  if (isDragging) {
299
343
  const deltaX = clientX - startX;
300
344
  if (deltaX > 0) {
@@ -313,7 +357,7 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
313
357
  setShowTooltip(false);
314
358
  }
315
359
  if (chartRef.current !== undefined) {
316
- (0, _utils.clearHighlightedSeries)(chartRef.current, totalSeries);
360
+ (0, _utils.clearHighlightedSeries)(chartRef.current);
317
361
  }
318
362
  },
319
363
  onMouseEnter: ()=>{
@@ -334,22 +378,23 @@ const TimeChart = /*#__PURE__*/ (0, _react.forwardRef)(function TimeChart({ heig
334
378
  }
335
379
  },
336
380
  children: [
337
- showTooltip === true && ((ref1 = option.tooltip) === null || ref1 === void 0 ? void 0 : ref1.showContent) === false && tooltipConfig.hidden !== true && /*#__PURE__*/ (0, _jsxRuntime.jsx)(_timeSeriesTooltip.TimeChartTooltip, {
381
+ showTooltip === true && ((_option_tooltip = option.tooltip) === null || _option_tooltip === void 0 ? void 0 : _option_tooltip.showContent) === false && tooltipConfig.hidden !== true && /*#__PURE__*/ (0, _jsxruntime.jsx)(_TimeSeriesTooltip.TimeChartTooltip, {
338
382
  containerId: chartsTheme.tooltipPortalContainerId,
339
383
  chartRef: chartRef,
340
384
  data: data,
341
385
  seriesMapping: seriesMapping,
342
386
  wrapLabels: tooltipConfig.wrapLabels,
343
- enablePinning: tooltipConfig.enablePinning,
387
+ enablePinning: isPinningEnabled,
344
388
  pinnedPos: tooltipPinnedCoords,
345
- unit: unit,
389
+ format: format,
346
390
  onUnpinClick: ()=>{
391
+ // Unpins tooltip when clicking Pin icon in TooltipHeader.
347
392
  setTooltipPinnedCoords(null);
348
- // Clear previously set pinned crosshair
349
- seriesMapping.pop();
393
+ // Clear previously set pinned crosshair.
394
+ setPinnedCrosshair(null);
350
395
  }
351
396
  }),
352
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_echart.EChart, {
397
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_EChart.EChart, {
353
398
  sx: {
354
399
  width: '100%',
355
400
  height: '100%'
@@ -14,15 +14,17 @@
14
14
  Object.defineProperty(exports, "__esModule", {
15
15
  value: true
16
16
  });
17
- _exportStar(require("./TimeChart"), exports);
18
- function _exportStar(from, to) {
17
+ _export_star(require("./TimeChart"), exports);
18
+ function _export_star(from, to) {
19
19
  Object.keys(from).forEach(function(k) {
20
- if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) Object.defineProperty(to, k, {
21
- enumerable: true,
22
- get: function() {
23
- return from[k];
24
- }
25
- });
20
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
21
+ Object.defineProperty(to, k, {
22
+ enumerable: true,
23
+ get: function() {
24
+ return from[k];
25
+ }
26
+ });
27
+ }
26
28
  });
27
29
  return from;
28
30
  }
@@ -16,41 +16,43 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "LineChartTooltip", {
18
18
  enumerable: true,
19
- get: ()=>LineChartTooltip
19
+ get: function() {
20
+ return LineChartTooltip;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
23
+ const _jsxruntime = require("react/jsx-runtime");
22
24
  const _material = require("@mui/material");
23
25
  const _react = require("react");
24
- const _useResizeObserver = /*#__PURE__*/ _interopRequireDefault(require("use-resize-observer"));
25
- const _tooltipContent = require("./TooltipContent");
26
- const _tooltipHeader = require("./TooltipHeader");
27
- const _nearbySeries = require("./nearby-series");
28
- const _tooltipModel = require("./tooltip-model");
26
+ const _useresizeobserver = /*#__PURE__*/ _interop_require_default(require("use-resize-observer"));
27
+ const _TooltipContent = require("./TooltipContent");
28
+ const _TooltipHeader = require("./TooltipHeader");
29
+ const _nearbyseries = require("./nearby-series");
30
+ const _tooltipmodel = require("./tooltip-model");
29
31
  const _utils = require("./utils");
30
- function _interopRequireDefault(obj) {
32
+ function _interop_require_default(obj) {
31
33
  return obj && obj.__esModule ? obj : {
32
34
  default: obj
33
35
  };
34
36
  }
35
- const LineChartTooltip = /*#__PURE__*/ (0, _react.memo)(function LineChartTooltip({ chartRef , chartData , enablePinning =true , wrapLabels , unit , onUnpinClick , pinnedPos , containerId }) {
37
+ const LineChartTooltip = /*#__PURE__*/ (0, _react.memo)(function LineChartTooltip({ chartRef, chartData, enablePinning = true, wrapLabels, format, onUnpinClick, pinnedPos, containerId }) {
36
38
  const [showAllSeries, setShowAllSeries] = (0, _react.useState)(false);
37
- const mousePos = (0, _tooltipModel.useMousePosition)();
38
- const { height , width , ref: tooltipRef } = (0, _useResizeObserver.default)();
39
- const transform = (0, _react.useRef)('');
39
+ const mousePos = (0, _tooltipmodel.useMousePosition)();
40
+ const { height, width, ref: tooltipRef } = (0, _useresizeobserver.default)();
41
+ const transform = (0, _react.useRef)();
40
42
  const isTooltipPinned = pinnedPos !== null && enablePinning;
41
43
  if (mousePos === null || mousePos.target === null) return null;
42
44
  // Ensure user is hovering over a chart before checking for nearby series.
43
45
  if (pinnedPos === null && mousePos.target.tagName !== 'CANVAS') return null;
44
46
  const chart = chartRef.current;
45
- var ref;
46
- const chartWidth = (ref = chart === null || chart === void 0 ? void 0 : chart.getWidth()) !== null && ref !== void 0 ? ref : _tooltipModel.FALLBACK_CHART_WIDTH; // Fallback width not likely to ever be needed.
47
+ var _chart_getWidth;
48
+ const chartWidth = (_chart_getWidth = chart === null || chart === void 0 ? void 0 : chart.getWidth()) !== null && _chart_getWidth !== void 0 ? _chart_getWidth : _tooltipmodel.FALLBACK_CHART_WIDTH; // Fallback width not likely to ever be needed.
47
49
  // Get series nearby the cursor and pass into tooltip content children.
48
- const nearbySeries = (0, _nearbySeries.legacyGetNearbySeriesData)({
50
+ const nearbySeries = (0, _nearbyseries.legacyGetNearbySeriesData)({
49
51
  mousePos,
50
52
  chartData,
51
53
  pinnedPos,
52
54
  chart,
53
- unit,
55
+ format,
54
56
  showAllSeries
55
57
  });
56
58
  if (nearbySeries.length === 0) {
@@ -63,22 +65,22 @@ const LineChartTooltip = /*#__PURE__*/ (0, _react.memo)(function LineChartToolti
63
65
  if (!isTooltipPinned) {
64
66
  transform.current = (0, _utils.assembleTransform)(mousePos, chartWidth, pinnedPos, height !== null && height !== void 0 ? height : 0, width !== null && width !== void 0 ? width : 0, containerElement);
65
67
  }
66
- var ref1;
67
- return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Portal, {
68
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Portal, {
68
69
  container: containerElement,
69
- children: /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Box, {
70
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Box, {
70
71
  ref: tooltipRef,
71
72
  sx: (theme)=>{
72
- var ref;
73
+ var _theme_palette_designSystem;
74
+ var _theme_palette_designSystem_grey_;
73
75
  return {
74
- minWidth: _tooltipModel.TOOLTIP_MIN_WIDTH,
75
- maxWidth: _tooltipModel.TOOLTIP_MAX_WIDTH,
76
- maxHeight: maxHeight !== null && maxHeight !== void 0 ? maxHeight : _tooltipModel.TOOLTIP_MAX_HEIGHT,
76
+ minWidth: _tooltipmodel.TOOLTIP_MIN_WIDTH,
77
+ maxWidth: _tooltipmodel.TOOLTIP_MAX_WIDTH,
78
+ maxHeight: maxHeight !== null && maxHeight !== void 0 ? maxHeight : _tooltipmodel.TOOLTIP_MAX_HEIGHT,
77
79
  padding: 0,
78
80
  position: 'absolute',
79
81
  top: 0,
80
82
  left: 0,
81
- backgroundColor: (ref1 = (ref = theme.palette.designSystem) === null || ref === void 0 ? void 0 : ref.grey[800]) !== null && ref1 !== void 0 ? ref1 : _tooltipModel.TOOLTIP_BG_COLOR_FALLBACK,
83
+ backgroundColor: (_theme_palette_designSystem_grey_ = (_theme_palette_designSystem = theme.palette.designSystem) === null || _theme_palette_designSystem === void 0 ? void 0 : _theme_palette_designSystem.grey[800]) !== null && _theme_palette_designSystem_grey_ !== void 0 ? _theme_palette_designSystem_grey_ : _tooltipmodel.TOOLTIP_BG_COLOR_FALLBACK,
82
84
  borderRadius: '6px',
83
85
  color: '#fff',
84
86
  fontSize: '11px',
@@ -94,12 +96,13 @@ const LineChartTooltip = /*#__PURE__*/ (0, _react.memo)(function LineChartToolti
94
96
  };
95
97
  },
96
98
  style: {
97
- transform: transform.current
99
+ transform: transform.current,
100
+ display: transform.current ? 'block' : 'none'
98
101
  },
99
- children: /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_material.Stack, {
102
+ children: /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Stack, {
100
103
  spacing: 0.5,
101
104
  children: [
102
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_tooltipHeader.TooltipHeader, {
105
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_TooltipHeader.TooltipHeader, {
103
106
  nearbySeries: nearbySeries,
104
107
  totalSeries: totalSeries,
105
108
  enablePinning: enablePinning,
@@ -108,7 +111,7 @@ const LineChartTooltip = /*#__PURE__*/ (0, _react.memo)(function LineChartToolti
108
111
  onShowAllClick: (checked)=>setShowAllSeries(checked),
109
112
  onUnpinClick: onUnpinClick
110
113
  }),
111
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_tooltipContent.TooltipContent, {
114
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_TooltipContent.TooltipContent, {
112
115
  series: nearbySeries,
113
116
  wrapLabels: wrapLabels
114
117
  })
@@ -16,28 +16,30 @@ Object.defineProperty(exports, "__esModule", {
16
16
  });
17
17
  Object.defineProperty(exports, "SeriesInfo", {
18
18
  enumerable: true,
19
- get: ()=>SeriesInfo
19
+ get: function() {
20
+ return SeriesInfo;
21
+ }
20
22
  });
21
- const _jsxRuntime = require("react/jsx-runtime");
23
+ const _jsxruntime = require("react/jsx-runtime");
22
24
  const _material = require("@mui/material");
23
- const _seriesMarker = require("./SeriesMarker");
24
- const _seriesLabelsStack = require("./SeriesLabelsStack");
25
- const _tooltipModel = require("./tooltip-model");
25
+ const _SeriesMarker = require("./SeriesMarker");
26
+ const _SeriesLabelsStack = require("./SeriesLabelsStack");
27
+ const _tooltipmodel = require("./tooltip-model");
26
28
  function SeriesInfo(props) {
27
- const { seriesName , formattedY , markerColor , totalSeries , emphasizeText =false , wrapLabels =true } = props;
29
+ const { seriesName, formattedY, markerColor, totalSeries, emphasizeText = false, wrapLabels = true } = props;
28
30
  // metric __name__ comes before opening curly brace, ignore if not populated
29
31
  // ex with metric name: node_load15{env="demo",job="node"}
30
32
  // ex without metric name: {env="demo",job="node"}
31
33
  const splitName = seriesName.split('{');
32
- var ref;
33
- const seriesLabels = (ref = splitName[1]) !== null && ref !== void 0 ? ref : seriesName;
34
+ var _splitName_;
35
+ const seriesLabels = (_splitName_ = splitName[1]) !== null && _splitName_ !== void 0 ? _splitName_ : seriesName;
34
36
  // remove curly braces that wrap labels
35
37
  const formattedSeriesLabels = seriesLabels.replace(/[{}]/g, '');
36
38
  // determine whether to show labels on separate lines
37
39
  const splitLabels = formattedSeriesLabels.split(',');
38
40
  if (totalSeries === 1 && splitLabels.length > 1) {
39
41
  const metricName = splitName[0] ? `${splitName[0]}:` : 'value:';
40
- return /*#__PURE__*/ (0, _jsxRuntime.jsx)(_seriesLabelsStack.SeriesLabelsStack, {
42
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_SeriesLabelsStack.SeriesLabelsStack, {
41
43
  formattedY: formattedY,
42
44
  metricName: metricName,
43
45
  metricLabels: splitLabels,
@@ -46,43 +48,43 @@ function SeriesInfo(props) {
46
48
  }
47
49
  // add space after commas so wrapLabels works
48
50
  const formattedSeriesInfo = seriesName.replace(/[,]/g, ', ');
49
- return /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_material.Box, {
51
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Box, {
50
52
  sx: {
51
53
  display: 'table-row',
52
54
  paddingTop: 0.5
53
55
  },
54
56
  children: [
55
- /*#__PURE__*/ (0, _jsxRuntime.jsxs)(_material.Box, {
57
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)(_material.Box, {
56
58
  sx: {
57
59
  display: 'table-cell',
58
60
  maxWidth: '520px'
59
61
  },
60
62
  children: [
61
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_seriesMarker.SeriesMarker, {
63
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_SeriesMarker.SeriesMarker, {
62
64
  markerColor: markerColor,
63
65
  sx: {
64
66
  marginTop: 0.5
65
67
  }
66
68
  }),
67
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Box, {
69
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Box, {
68
70
  component: "span",
69
71
  sx: (theme)=>({
70
72
  display: 'inline-block',
71
73
  width: 'calc(100% - 20px)',
72
74
  minWidth: 150,
73
- maxWidth: _tooltipModel.TOOLTIP_LABELS_MAX_WIDTH,
75
+ maxWidth: _tooltipmodel.TOOLTIP_LABELS_MAX_WIDTH,
74
76
  overflow: 'hidden',
75
77
  color: theme.palette.common.white,
76
78
  fontWeight: emphasizeText ? theme.typography.fontWeightBold : theme.typography.fontWeightRegular,
77
79
  textOverflow: 'ellipsis',
78
80
  whiteSpace: wrapLabels ? 'normal' : 'nowrap'
79
81
  }),
80
- "aria-label": emphasizeText ? _tooltipModel.EMPHASIZED_SERIES_DESCRIPTION : _tooltipModel.NEARBY_SERIES_DESCRIPTION,
82
+ "aria-label": emphasizeText ? _tooltipmodel.EMPHASIZED_SERIES_DESCRIPTION : _tooltipmodel.NEARBY_SERIES_DESCRIPTION,
81
83
  children: formattedSeriesInfo
82
84
  })
83
85
  ]
84
86
  }),
85
- /*#__PURE__*/ (0, _jsxRuntime.jsx)(_material.Box, {
87
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_material.Box, {
86
88
  sx: (theme)=>({
87
89
  display: 'table-cell',
88
90
  paddingLeft: 1.5,