@perses-dev/components 0.0.0-snapshot-time-range-height-80d08fc

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 (481) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +18 -0
  3. package/dist/DateTimeRangePicker/AbsoluteTimePicker.d.ts +9 -0
  4. package/dist/DateTimeRangePicker/AbsoluteTimePicker.d.ts.map +1 -0
  5. package/dist/DateTimeRangePicker/AbsoluteTimePicker.js +181 -0
  6. package/dist/DateTimeRangePicker/AbsoluteTimePicker.js.map +1 -0
  7. package/dist/DateTimeRangePicker/DateTimeRangePicker.d.ts +12 -0
  8. package/dist/DateTimeRangePicker/DateTimeRangePicker.d.ts.map +1 -0
  9. package/dist/DateTimeRangePicker/DateTimeRangePicker.js +79 -0
  10. package/dist/DateTimeRangePicker/DateTimeRangePicker.js.map +1 -0
  11. package/dist/DateTimeRangePicker/TimeRangeSelector.d.ts +17 -0
  12. package/dist/DateTimeRangePicker/TimeRangeSelector.d.ts.map +1 -0
  13. package/dist/DateTimeRangePicker/TimeRangeSelector.js +58 -0
  14. package/dist/DateTimeRangePicker/TimeRangeSelector.js.map +1 -0
  15. package/dist/DateTimeRangePicker/index.d.ts +4 -0
  16. package/dist/DateTimeRangePicker/index.d.ts.map +1 -0
  17. package/dist/DateTimeRangePicker/index.js +17 -0
  18. package/dist/DateTimeRangePicker/index.js.map +1 -0
  19. package/dist/DateTimeRangePicker/utils.d.ts +7 -0
  20. package/dist/DateTimeRangePicker/utils.d.ts.map +1 -0
  21. package/dist/DateTimeRangePicker/utils.js +37 -0
  22. package/dist/DateTimeRangePicker/utils.js.map +1 -0
  23. package/dist/Drawer/Drawer.d.ts +9 -0
  24. package/dist/Drawer/Drawer.d.ts.map +1 -0
  25. package/dist/Drawer/Drawer.js +34 -0
  26. package/dist/Drawer/Drawer.js.map +1 -0
  27. package/dist/Drawer/index.d.ts +2 -0
  28. package/dist/Drawer/index.d.ts.map +1 -0
  29. package/dist/Drawer/index.js +15 -0
  30. package/dist/Drawer/index.js.map +1 -0
  31. package/dist/EChart.d.ts +61 -0
  32. package/dist/EChart.d.ts.map +1 -0
  33. package/dist/EChart.js +143 -0
  34. package/dist/EChart.js.map +1 -0
  35. package/dist/ErrorAlert.d.ts +9 -0
  36. package/dist/ErrorAlert.d.ts.map +1 -0
  37. package/dist/ErrorAlert.js +25 -0
  38. package/dist/ErrorAlert.js.map +1 -0
  39. package/dist/ErrorBoundary.d.ts +3 -0
  40. package/dist/ErrorBoundary.d.ts.map +1 -0
  41. package/dist/ErrorBoundary.js +16 -0
  42. package/dist/ErrorBoundary.js.map +1 -0
  43. package/dist/GaugeChart/GaugeChart.d.ts +15 -0
  44. package/dist/GaugeChart/GaugeChart.d.ts.map +1 -0
  45. package/dist/GaugeChart/GaugeChart.js +172 -0
  46. package/dist/GaugeChart/GaugeChart.js.map +1 -0
  47. package/dist/GaugeChart/index.d.ts +2 -0
  48. package/dist/GaugeChart/index.d.ts.map +1 -0
  49. package/dist/GaugeChart/index.js +15 -0
  50. package/dist/GaugeChart/index.js.map +1 -0
  51. package/dist/InfoTooltip/InfoTooltip.d.ts +17 -0
  52. package/dist/InfoTooltip/InfoTooltip.d.ts.map +1 -0
  53. package/dist/InfoTooltip/InfoTooltip.js +76 -0
  54. package/dist/InfoTooltip/InfoTooltip.js.map +1 -0
  55. package/dist/InfoTooltip/InfoTooltip.test.d.ts +2 -0
  56. package/dist/InfoTooltip/InfoTooltip.test.d.ts.map +1 -0
  57. package/dist/InfoTooltip/InfoTooltip.test.js +36 -0
  58. package/dist/InfoTooltip/InfoTooltip.test.js.map +1 -0
  59. package/dist/InfoTooltip/index.d.ts +2 -0
  60. package/dist/InfoTooltip/index.d.ts.map +1 -0
  61. package/dist/InfoTooltip/index.js +15 -0
  62. package/dist/InfoTooltip/index.js.map +1 -0
  63. package/dist/JSONEditor.d.ts +8 -0
  64. package/dist/JSONEditor.d.ts.map +1 -0
  65. package/dist/JSONEditor.js +51 -0
  66. package/dist/JSONEditor.js.map +1 -0
  67. package/dist/Legend/CompactLegend.d.ts +13 -0
  68. package/dist/Legend/CompactLegend.d.ts.map +1 -0
  69. package/dist/Legend/CompactLegend.js +45 -0
  70. package/dist/Legend/CompactLegend.js.map +1 -0
  71. package/dist/Legend/Legend.d.ts +11 -0
  72. package/dist/Legend/Legend.d.ts.map +1 -0
  73. package/dist/Legend/Legend.js +39 -0
  74. package/dist/Legend/Legend.js.map +1 -0
  75. package/dist/Legend/LegendColorBadge.d.ts +7 -0
  76. package/dist/Legend/LegendColorBadge.d.ts.map +1 -0
  77. package/dist/Legend/LegendColorBadge.js +31 -0
  78. package/dist/Legend/LegendColorBadge.js.map +1 -0
  79. package/dist/Legend/ListLegend.d.ts +11 -0
  80. package/dist/Legend/ListLegend.d.ts.map +1 -0
  81. package/dist/Legend/ListLegend.js +40 -0
  82. package/dist/Legend/ListLegend.js.map +1 -0
  83. package/dist/Legend/ListLegendItem.d.ts +9 -0
  84. package/dist/Legend/ListLegendItem.d.ts.map +1 -0
  85. package/dist/Legend/ListLegendItem.js +47 -0
  86. package/dist/Legend/ListLegendItem.js.map +1 -0
  87. package/dist/Legend/index.d.ts +2 -0
  88. package/dist/Legend/index.d.ts.map +1 -0
  89. package/dist/Legend/index.js +15 -0
  90. package/dist/Legend/index.js.map +1 -0
  91. package/dist/LineChart/LineChart.d.ts +19 -0
  92. package/dist/LineChart/LineChart.d.ts.map +1 -0
  93. package/dist/LineChart/LineChart.js +189 -0
  94. package/dist/LineChart/LineChart.js.map +1 -0
  95. package/dist/LineChart/index.d.ts +3 -0
  96. package/dist/LineChart/index.d.ts.map +1 -0
  97. package/dist/LineChart/index.js +15 -0
  98. package/dist/LineChart/index.js.map +1 -0
  99. package/dist/LineChart/utils.d.ts +30 -0
  100. package/dist/LineChart/utils.d.ts.map +1 -0
  101. package/dist/LineChart/utils.js +90 -0
  102. package/dist/LineChart/utils.js.map +1 -0
  103. package/dist/OptionsEditorLayout/OptionsEditorColumn.d.ts +13 -0
  104. package/dist/OptionsEditorLayout/OptionsEditorColumn.d.ts.map +1 -0
  105. package/dist/OptionsEditorLayout/OptionsEditorColumn.js +28 -0
  106. package/dist/OptionsEditorLayout/OptionsEditorColumn.js.map +1 -0
  107. package/dist/OptionsEditorLayout/OptionsEditorControl.d.ts +5 -0
  108. package/dist/OptionsEditorLayout/OptionsEditorControl.d.ts.map +1 -0
  109. package/dist/OptionsEditorLayout/OptionsEditorControl.js +50 -0
  110. package/dist/OptionsEditorLayout/OptionsEditorControl.js.map +1 -0
  111. package/dist/OptionsEditorLayout/OptionsEditorGrid.d.ts +13 -0
  112. package/dist/OptionsEditorLayout/OptionsEditorGrid.d.ts.map +1 -0
  113. package/dist/OptionsEditorLayout/OptionsEditorGrid.js +26 -0
  114. package/dist/OptionsEditorLayout/OptionsEditorGrid.js.map +1 -0
  115. package/dist/OptionsEditorLayout/OptionsEditorGroup.d.ts +13 -0
  116. package/dist/OptionsEditorLayout/OptionsEditorGroup.d.ts.map +1 -0
  117. package/dist/OptionsEditorLayout/OptionsEditorGroup.js +36 -0
  118. package/dist/OptionsEditorLayout/OptionsEditorGroup.js.map +1 -0
  119. package/dist/OptionsEditorLayout/index.d.ts +5 -0
  120. package/dist/OptionsEditorLayout/index.d.ts.map +1 -0
  121. package/dist/OptionsEditorLayout/index.js +18 -0
  122. package/dist/OptionsEditorLayout/index.js.map +1 -0
  123. package/dist/StatChart/StatChart.d.ts +19 -0
  124. package/dist/StatChart/StatChart.d.ts.map +1 -0
  125. package/dist/StatChart/StatChart.js +121 -0
  126. package/dist/StatChart/StatChart.js.map +1 -0
  127. package/dist/StatChart/StatChart.test.d.ts +2 -0
  128. package/dist/StatChart/StatChart.test.d.ts.map +1 -0
  129. package/dist/StatChart/StatChart.test.js +87 -0
  130. package/dist/StatChart/StatChart.test.js.map +1 -0
  131. package/dist/StatChart/index.d.ts +2 -0
  132. package/dist/StatChart/index.d.ts.map +1 -0
  133. package/dist/StatChart/index.js +15 -0
  134. package/dist/StatChart/index.js.map +1 -0
  135. package/dist/Tooltip/SeriesInfo.d.ts +12 -0
  136. package/dist/Tooltip/SeriesInfo.d.ts.map +1 -0
  137. package/dist/Tooltip/SeriesInfo.js +143 -0
  138. package/dist/Tooltip/SeriesInfo.js.map +1 -0
  139. package/dist/Tooltip/SeriesMarker.d.ts +7 -0
  140. package/dist/Tooltip/SeriesMarker.d.ts.map +1 -0
  141. package/dist/Tooltip/SeriesMarker.js +33 -0
  142. package/dist/Tooltip/SeriesMarker.js.map +1 -0
  143. package/dist/Tooltip/Tooltip.d.ts +13 -0
  144. package/dist/Tooltip/Tooltip.d.ts.map +1 -0
  145. package/dist/Tooltip/Tooltip.js +72 -0
  146. package/dist/Tooltip/Tooltip.js.map +1 -0
  147. package/dist/Tooltip/TooltipContent.d.ts +9 -0
  148. package/dist/Tooltip/TooltipContent.d.ts.map +1 -0
  149. package/dist/Tooltip/TooltipContent.js +89 -0
  150. package/dist/Tooltip/TooltipContent.js.map +1 -0
  151. package/dist/Tooltip/focused-series.d.ts +25 -0
  152. package/dist/Tooltip/focused-series.d.ts.map +1 -0
  153. package/dist/Tooltip/focused-series.js +111 -0
  154. package/dist/Tooltip/focused-series.js.map +1 -0
  155. package/dist/Tooltip/focused-series.test.d.ts +2 -0
  156. package/dist/Tooltip/focused-series.test.d.ts.map +1 -0
  157. package/dist/Tooltip/focused-series.test.js +93 -0
  158. package/dist/Tooltip/focused-series.test.js.map +1 -0
  159. package/dist/Tooltip/index.d.ts +3 -0
  160. package/dist/Tooltip/index.d.ts.map +1 -0
  161. package/dist/Tooltip/index.js +16 -0
  162. package/dist/Tooltip/index.js.map +1 -0
  163. package/dist/Tooltip/tooltip-model.d.ts +79 -0
  164. package/dist/Tooltip/tooltip-model.d.ts.map +1 -0
  165. package/dist/Tooltip/tooltip-model.js +80 -0
  166. package/dist/Tooltip/tooltip-model.js.map +1 -0
  167. package/dist/Tooltip/utils.d.ts +6 -0
  168. package/dist/Tooltip/utils.d.ts.map +1 -0
  169. package/dist/Tooltip/utils.js +46 -0
  170. package/dist/Tooltip/utils.js.map +1 -0
  171. package/dist/UnitSelector/UnitSelector.d.ts +8 -0
  172. package/dist/UnitSelector/UnitSelector.d.ts.map +1 -0
  173. package/dist/UnitSelector/UnitSelector.js +112 -0
  174. package/dist/UnitSelector/UnitSelector.js.map +1 -0
  175. package/dist/UnitSelector/UnitSelector.test.d.ts +2 -0
  176. package/dist/UnitSelector/UnitSelector.test.d.ts.map +1 -0
  177. package/dist/UnitSelector/UnitSelector.test.js +205 -0
  178. package/dist/UnitSelector/UnitSelector.test.js.map +1 -0
  179. package/dist/UnitSelector/index.d.ts +2 -0
  180. package/dist/UnitSelector/index.d.ts.map +1 -0
  181. package/dist/UnitSelector/index.js +15 -0
  182. package/dist/UnitSelector/index.js.map +1 -0
  183. package/dist/YAxisLabel.d.ts +8 -0
  184. package/dist/YAxisLabel.d.ts.map +1 -0
  185. package/dist/YAxisLabel.js +39 -0
  186. package/dist/YAxisLabel.js.map +1 -0
  187. package/dist/cjs/DateTimeRangePicker/AbsoluteTimePicker.js +187 -0
  188. package/dist/cjs/DateTimeRangePicker/DateTimeRangePicker.js +85 -0
  189. package/dist/cjs/DateTimeRangePicker/TimeRangeSelector.js +69 -0
  190. package/dist/cjs/DateTimeRangePicker/index.js +30 -0
  191. package/dist/cjs/DateTimeRangePicker/utils.js +45 -0
  192. package/dist/cjs/Drawer/Drawer.js +40 -0
  193. package/dist/cjs/Drawer/index.js +28 -0
  194. package/dist/cjs/EChart.js +188 -0
  195. package/dist/cjs/ErrorAlert.js +29 -0
  196. package/dist/cjs/ErrorBoundary.js +22 -0
  197. package/dist/cjs/GaugeChart/GaugeChart.js +178 -0
  198. package/dist/cjs/GaugeChart/index.js +28 -0
  199. package/dist/cjs/InfoTooltip/InfoTooltip.js +93 -0
  200. package/dist/cjs/InfoTooltip/InfoTooltip.test.js +43 -0
  201. package/dist/cjs/InfoTooltip/index.js +28 -0
  202. package/dist/cjs/JSONEditor.js +57 -0
  203. package/dist/cjs/Legend/CompactLegend.js +48 -0
  204. package/dist/cjs/Legend/Legend.js +45 -0
  205. package/dist/cjs/Legend/LegendColorBadge.js +42 -0
  206. package/dist/cjs/Legend/ListLegend.js +44 -0
  207. package/dist/cjs/Legend/ListLegendItem.js +91 -0
  208. package/dist/cjs/Legend/index.js +28 -0
  209. package/dist/cjs/LineChart/LineChart.js +195 -0
  210. package/dist/cjs/LineChart/index.js +28 -0
  211. package/dist/cjs/LineChart/utils.js +95 -0
  212. package/dist/cjs/OptionsEditorLayout/OptionsEditorColumn.js +32 -0
  213. package/dist/cjs/OptionsEditorLayout/OptionsEditorControl.js +61 -0
  214. package/dist/cjs/OptionsEditorLayout/OptionsEditorGrid.js +29 -0
  215. package/dist/cjs/OptionsEditorLayout/OptionsEditorGroup.js +40 -0
  216. package/dist/cjs/OptionsEditorLayout/index.js +31 -0
  217. package/dist/cjs/StatChart/StatChart.js +165 -0
  218. package/dist/cjs/StatChart/StatChart.test.js +89 -0
  219. package/dist/cjs/StatChart/index.js +28 -0
  220. package/dist/cjs/Tooltip/SeriesInfo.js +149 -0
  221. package/dist/cjs/Tooltip/SeriesMarker.js +39 -0
  222. package/dist/cjs/Tooltip/Tooltip.js +116 -0
  223. package/dist/cjs/Tooltip/TooltipContent.js +95 -0
  224. package/dist/cjs/Tooltip/focused-series.js +117 -0
  225. package/dist/cjs/Tooltip/focused-series.test.js +95 -0
  226. package/dist/cjs/Tooltip/index.js +29 -0
  227. package/dist/cjs/Tooltip/tooltip-model.js +98 -0
  228. package/dist/cjs/Tooltip/utils.js +50 -0
  229. package/dist/cjs/UnitSelector/UnitSelector.js +118 -0
  230. package/dist/cjs/UnitSelector/UnitSelector.test.js +212 -0
  231. package/dist/cjs/UnitSelector/index.js +28 -0
  232. package/dist/cjs/YAxisLabel.js +45 -0
  233. package/dist/cjs/context/ChartsThemeProvider.js +83 -0
  234. package/dist/cjs/context/TimeZoneProvider.js +90 -0
  235. package/dist/cjs/index.js +47 -0
  236. package/dist/cjs/model/graph.js +21 -0
  237. package/dist/cjs/model/index.js +30 -0
  238. package/dist/cjs/model/theme.js +16 -0
  239. package/dist/cjs/model/units/bytes.js +60 -0
  240. package/dist/cjs/model/units/constants.js +23 -0
  241. package/dist/cjs/model/units/decimal.js +67 -0
  242. package/dist/cjs/model/units/index.js +30 -0
  243. package/dist/cjs/model/units/percent.js +64 -0
  244. package/dist/cjs/model/units/time.js +102 -0
  245. package/dist/cjs/model/units/types.js +28 -0
  246. package/dist/cjs/model/units/units.js +104 -0
  247. package/dist/cjs/test/index.js +28 -0
  248. package/dist/cjs/test/render.js +36 -0
  249. package/dist/cjs/test/setup-tests.js +20 -0
  250. package/dist/cjs/test-utils/index.js +28 -0
  251. package/dist/cjs/test-utils/theme.js +28 -0
  252. package/dist/cjs/theme/index.js +28 -0
  253. package/dist/cjs/theme/palette/background.js +40 -0
  254. package/dist/cjs/theme/palette/colors/blue.js +35 -0
  255. package/dist/cjs/theme/palette/colors/common.js +28 -0
  256. package/dist/cjs/theme/palette/colors/green.js +35 -0
  257. package/dist/cjs/theme/palette/colors/grey.js +35 -0
  258. package/dist/cjs/theme/palette/colors/index.js +35 -0
  259. package/dist/cjs/theme/palette/colors/orange.js +35 -0
  260. package/dist/cjs/theme/palette/colors/purple.js +35 -0
  261. package/dist/cjs/theme/palette/colors/red.js +35 -0
  262. package/dist/cjs/theme/palette/colors/types.js +16 -0
  263. package/dist/cjs/theme/palette/error.js +32 -0
  264. package/dist/cjs/theme/palette/grey.js +44 -0
  265. package/dist/cjs/theme/palette/index.js +28 -0
  266. package/dist/cjs/theme/palette/palette-options.js +59 -0
  267. package/dist/cjs/theme/palette/primary.js +32 -0
  268. package/dist/cjs/theme/palette/secondary.js +32 -0
  269. package/dist/cjs/theme/palette/success.js +32 -0
  270. package/dist/cjs/theme/palette/text.js +42 -0
  271. package/dist/cjs/theme/palette/warning.js +32 -0
  272. package/dist/cjs/theme/theme.js +64 -0
  273. package/dist/cjs/theme/types/ThemeExtension.d.js +17 -0
  274. package/dist/cjs/theme/typography.js +96 -0
  275. package/dist/cjs/utils/combine-sx.js +29 -0
  276. package/dist/cjs/utils/component-ids.js +31 -0
  277. package/dist/cjs/utils/format.js +56 -0
  278. package/dist/cjs/utils/format.test.js +47 -0
  279. package/dist/cjs/utils/index.js +31 -0
  280. package/dist/cjs/utils/mathjs.js +25 -0
  281. package/dist/cjs/utils/theme-gen.js +188 -0
  282. package/dist/cjs/utils/theme-gen.test.js +197 -0
  283. package/dist/context/ChartsThemeProvider.d.ts +10 -0
  284. package/dist/context/ChartsThemeProvider.d.ts.map +1 -0
  285. package/dist/context/ChartsThemeProvider.js +31 -0
  286. package/dist/context/ChartsThemeProvider.js.map +1 -0
  287. package/dist/context/TimeZoneProvider.d.ts +13 -0
  288. package/dist/context/TimeZoneProvider.d.ts.map +1 -0
  289. package/dist/context/TimeZoneProvider.js +38 -0
  290. package/dist/context/TimeZoneProvider.js.map +1 -0
  291. package/dist/index.d.ts +21 -0
  292. package/dist/index.d.ts.map +1 -0
  293. package/dist/index.js +34 -0
  294. package/dist/index.js.map +1 -0
  295. package/dist/model/graph.d.ts +34 -0
  296. package/dist/model/graph.d.ts.map +1 -0
  297. package/dist/model/graph.js +16 -0
  298. package/dist/model/graph.js.map +1 -0
  299. package/dist/model/index.d.ts +4 -0
  300. package/dist/model/index.d.ts.map +1 -0
  301. package/dist/model/index.js +17 -0
  302. package/dist/model/index.js.map +1 -0
  303. package/dist/model/theme.d.ts +15 -0
  304. package/dist/model/theme.d.ts.map +1 -0
  305. package/dist/model/theme.js +15 -0
  306. package/dist/model/theme.js.map +1 -0
  307. package/dist/model/units/bytes.d.ts +12 -0
  308. package/dist/model/units/bytes.d.ts.map +1 -0
  309. package/dist/model/units/bytes.js +48 -0
  310. package/dist/model/units/bytes.js.map +1 -0
  311. package/dist/model/units/constants.d.ts +2 -0
  312. package/dist/model/units/constants.d.ts.map +1 -0
  313. package/dist/model/units/constants.js +17 -0
  314. package/dist/model/units/constants.js.map +1 -0
  315. package/dist/model/units/decimal.d.ts +24 -0
  316. package/dist/model/units/decimal.d.ts.map +1 -0
  317. package/dist/model/units/decimal.js +59 -0
  318. package/dist/model/units/decimal.js.map +1 -0
  319. package/dist/model/units/index.d.ts +4 -0
  320. package/dist/model/units/index.d.ts.map +1 -0
  321. package/dist/model/units/index.js +17 -0
  322. package/dist/model/units/index.js.map +1 -0
  323. package/dist/model/units/percent.d.ts +12 -0
  324. package/dist/model/units/percent.d.ts.map +1 -0
  325. package/dist/model/units/percent.js +51 -0
  326. package/dist/model/units/percent.js.map +1 -0
  327. package/dist/model/units/time.d.ts +22 -0
  328. package/dist/model/units/time.d.ts.map +1 -0
  329. package/dist/model/units/time.js +88 -0
  330. package/dist/model/units/time.js.map +1 -0
  331. package/dist/model/units/types.d.ts +38 -0
  332. package/dist/model/units/types.d.ts.map +1 -0
  333. package/dist/model/units/types.js +22 -0
  334. package/dist/model/units/types.js.map +1 -0
  335. package/dist/model/units/units.d.ts +40 -0
  336. package/dist/model/units/units.d.ts.map +1 -0
  337. package/dist/model/units/units.js +83 -0
  338. package/dist/model/units/units.js.map +1 -0
  339. package/dist/test/index.d.ts +2 -0
  340. package/dist/test/index.d.ts.map +1 -0
  341. package/dist/test/index.js +15 -0
  342. package/dist/test/index.js.map +1 -0
  343. package/dist/test/render.d.ts +7 -0
  344. package/dist/test/render.d.ts.map +1 -0
  345. package/dist/test/render.js +32 -0
  346. package/dist/test/render.js.map +1 -0
  347. package/dist/test/setup-tests.d.ts +2 -0
  348. package/dist/test/setup-tests.d.ts.map +1 -0
  349. package/dist/test/setup-tests.js +18 -0
  350. package/dist/test/setup-tests.js.map +1 -0
  351. package/dist/test-utils/index.d.ts +2 -0
  352. package/dist/test-utils/index.d.ts.map +1 -0
  353. package/dist/test-utils/index.js +15 -0
  354. package/dist/test-utils/index.js.map +1 -0
  355. package/dist/test-utils/theme.d.ts +3 -0
  356. package/dist/test-utils/theme.d.ts.map +1 -0
  357. package/dist/test-utils/theme.js +22 -0
  358. package/dist/test-utils/theme.js.map +1 -0
  359. package/dist/theme/index.d.ts +37 -0
  360. package/dist/theme/index.d.ts.map +1 -0
  361. package/dist/theme/index.js +15 -0
  362. package/dist/theme/index.js.map +1 -0
  363. package/dist/theme/palette/background.d.ts +3 -0
  364. package/dist/theme/palette/background.d.ts.map +1 -0
  365. package/dist/theme/palette/background.js +34 -0
  366. package/dist/theme/palette/background.js.map +1 -0
  367. package/dist/theme/palette/colors/blue.d.ts +3 -0
  368. package/dist/theme/palette/colors/blue.d.ts.map +1 -0
  369. package/dist/theme/palette/colors/blue.js +29 -0
  370. package/dist/theme/palette/colors/blue.js.map +1 -0
  371. package/dist/theme/palette/colors/common.d.ts +3 -0
  372. package/dist/theme/palette/colors/common.d.ts.map +1 -0
  373. package/dist/theme/palette/colors/common.js +16 -0
  374. package/dist/theme/palette/colors/common.js.map +1 -0
  375. package/dist/theme/palette/colors/green.d.ts +3 -0
  376. package/dist/theme/palette/colors/green.d.ts.map +1 -0
  377. package/dist/theme/palette/colors/green.js +29 -0
  378. package/dist/theme/palette/colors/green.js.map +1 -0
  379. package/dist/theme/palette/colors/grey.d.ts +3 -0
  380. package/dist/theme/palette/colors/grey.d.ts.map +1 -0
  381. package/dist/theme/palette/colors/grey.js +29 -0
  382. package/dist/theme/palette/colors/grey.js.map +1 -0
  383. package/dist/theme/palette/colors/index.d.ts +9 -0
  384. package/dist/theme/palette/colors/index.d.ts.map +1 -0
  385. package/dist/theme/palette/colors/index.js +22 -0
  386. package/dist/theme/palette/colors/index.js.map +1 -0
  387. package/dist/theme/palette/colors/orange.d.ts +3 -0
  388. package/dist/theme/palette/colors/orange.d.ts.map +1 -0
  389. package/dist/theme/palette/colors/orange.js +29 -0
  390. package/dist/theme/palette/colors/orange.js.map +1 -0
  391. package/dist/theme/palette/colors/purple.d.ts +3 -0
  392. package/dist/theme/palette/colors/purple.d.ts.map +1 -0
  393. package/dist/theme/palette/colors/purple.js +29 -0
  394. package/dist/theme/palette/colors/purple.js.map +1 -0
  395. package/dist/theme/palette/colors/red.d.ts +3 -0
  396. package/dist/theme/palette/colors/red.d.ts.map +1 -0
  397. package/dist/theme/palette/colors/red.js +29 -0
  398. package/dist/theme/palette/colors/red.js.map +1 -0
  399. package/dist/theme/palette/colors/types.d.ts +17 -0
  400. package/dist/theme/palette/colors/types.d.ts.map +1 -0
  401. package/dist/theme/palette/colors/types.js +15 -0
  402. package/dist/theme/palette/colors/types.js.map +1 -0
  403. package/dist/theme/palette/error.d.ts +3 -0
  404. package/dist/theme/palette/error.d.ts.map +1 -0
  405. package/dist/theme/palette/error.js +26 -0
  406. package/dist/theme/palette/error.js.map +1 -0
  407. package/dist/theme/palette/grey.d.ts +3 -0
  408. package/dist/theme/palette/grey.d.ts.map +1 -0
  409. package/dist/theme/palette/grey.js +38 -0
  410. package/dist/theme/palette/grey.js.map +1 -0
  411. package/dist/theme/palette/index.d.ts +3 -0
  412. package/dist/theme/palette/index.d.ts.map +1 -0
  413. package/dist/theme/palette/index.js +15 -0
  414. package/dist/theme/palette/index.js.map +1 -0
  415. package/dist/theme/palette/palette-options.d.ts +6 -0
  416. package/dist/theme/palette/palette-options.d.ts.map +1 -0
  417. package/dist/theme/palette/palette-options.js +55 -0
  418. package/dist/theme/palette/palette-options.js.map +1 -0
  419. package/dist/theme/palette/primary.d.ts +3 -0
  420. package/dist/theme/palette/primary.d.ts.map +1 -0
  421. package/dist/theme/palette/primary.js +26 -0
  422. package/dist/theme/palette/primary.js.map +1 -0
  423. package/dist/theme/palette/secondary.d.ts +3 -0
  424. package/dist/theme/palette/secondary.d.ts.map +1 -0
  425. package/dist/theme/palette/secondary.js +26 -0
  426. package/dist/theme/palette/secondary.js.map +1 -0
  427. package/dist/theme/palette/success.d.ts +3 -0
  428. package/dist/theme/palette/success.d.ts.map +1 -0
  429. package/dist/theme/palette/success.js +26 -0
  430. package/dist/theme/palette/success.js.map +1 -0
  431. package/dist/theme/palette/text.d.ts +3 -0
  432. package/dist/theme/palette/text.d.ts.map +1 -0
  433. package/dist/theme/palette/text.js +36 -0
  434. package/dist/theme/palette/text.js.map +1 -0
  435. package/dist/theme/palette/warning.d.ts +3 -0
  436. package/dist/theme/palette/warning.d.ts.map +1 -0
  437. package/dist/theme/palette/warning.js +26 -0
  438. package/dist/theme/palette/warning.js.map +1 -0
  439. package/dist/theme/theme.d.ts +13 -0
  440. package/dist/theme/theme.d.ts.map +1 -0
  441. package/dist/theme/theme.js +67 -0
  442. package/dist/theme/theme.js.map +1 -0
  443. package/dist/theme/types/ThemeExtension.d.js +16 -0
  444. package/dist/theme/types/ThemeExtension.d.js.map +1 -0
  445. package/dist/theme/typography.d.ts +10 -0
  446. package/dist/theme/typography.d.ts.map +1 -0
  447. package/dist/theme/typography.js +92 -0
  448. package/dist/theme/typography.js.map +1 -0
  449. package/dist/utils/combine-sx.d.ts +8 -0
  450. package/dist/utils/combine-sx.d.ts.map +1 -0
  451. package/dist/utils/combine-sx.js +27 -0
  452. package/dist/utils/combine-sx.js.map +1 -0
  453. package/dist/utils/component-ids.d.ts +8 -0
  454. package/dist/utils/component-ids.d.ts.map +1 -0
  455. package/dist/utils/component-ids.js +27 -0
  456. package/dist/utils/component-ids.js.map +1 -0
  457. package/dist/utils/format.d.ts +3 -0
  458. package/dist/utils/format.d.ts.map +1 -0
  459. package/dist/utils/format.js +44 -0
  460. package/dist/utils/format.js.map +1 -0
  461. package/dist/utils/format.test.d.ts +2 -0
  462. package/dist/utils/format.test.d.ts.map +1 -0
  463. package/dist/utils/format.test.js +45 -0
  464. package/dist/utils/format.test.js.map +1 -0
  465. package/dist/utils/index.d.ts +5 -0
  466. package/dist/utils/index.d.ts.map +1 -0
  467. package/dist/utils/index.js +18 -0
  468. package/dist/utils/index.js.map +1 -0
  469. package/dist/utils/mathjs.d.ts +6 -0
  470. package/dist/utils/mathjs.d.ts.map +1 -0
  471. package/dist/utils/mathjs.js +20 -0
  472. package/dist/utils/mathjs.js.map +1 -0
  473. package/dist/utils/theme-gen.d.ts +6 -0
  474. package/dist/utils/theme-gen.d.ts.map +1 -0
  475. package/dist/utils/theme-gen.js +182 -0
  476. package/dist/utils/theme-gen.js.map +1 -0
  477. package/dist/utils/theme-gen.test.d.ts +2 -0
  478. package/dist/utils/theme-gen.test.d.ts.map +1 -0
  479. package/dist/utils/theme-gen.test.js +195 -0
  480. package/dist/utils/theme-gen.test.js.map +1 -0
  481. package/package.json +54 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendColorBadge.d.ts","sourceRoot":"","sources":["../../src/Legend/LegendColorBadge.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAO,QAAQ,EAAE,MAAM,eAAe,CAAC;AAG9C,MAAM,WAAW,qBAAsB,SAAQ,QAAQ,CAAC,KAAK,CAAC;IAC5D,KAAK,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,gBAAgB,mDAe3B,CAAC"}
@@ -0,0 +1,31 @@
1
+ // Copyright 2022 The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ import React from 'react';
15
+ import { Box } from '@mui/material';
16
+ import { combineSx } from '../utils';
17
+ export const LegendColorBadge = /*#__PURE__*/ React.memo(function LegendColorBadge({ color , sx , ...others }) {
18
+ return /*#__PURE__*/ _jsx(Box, {
19
+ ...others,
20
+ sx: combineSx({
21
+ height: 4,
22
+ width: 16,
23
+ margin: (theme)=>theme.spacing(0.5)
24
+ }, sx),
25
+ style: {
26
+ backgroundColor: color
27
+ }
28
+ });
29
+ });
30
+
31
+ //# sourceMappingURL=LegendColorBadge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Legend/LegendColorBadge.tsx"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport React from 'react';\nimport { Box, BoxProps } from '@mui/material';\nimport { combineSx } from '../utils';\n\nexport interface LegendColorBadgeProps extends BoxProps<'div'> {\n color: string;\n}\n\nexport const LegendColorBadge = React.memo(function LegendColorBadge({ color, sx, ...others }: LegendColorBadgeProps) {\n return (\n <Box\n {...others}\n sx={combineSx(\n {\n height: 4,\n width: 16,\n margin: (theme) => theme.spacing(0.5),\n },\n sx\n )}\n style={{ backgroundColor: color }}\n />\n );\n});\n"],"names":["React","Box","combineSx","LegendColorBadge","memo","color","sx","others","height","width","margin","theme","spacing","style","backgroundColor"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC;AAAA,OAAOA,KAAK,MAAM,OAAO,CAAC;AAC1B,SAASC,GAAG,QAAkB,eAAe,CAAC;AAC9C,SAASC,SAAS,QAAQ,UAAU,CAAC;AAMrC,OAAO,MAAMC,gBAAgB,iBAAGH,KAAK,CAACI,IAAI,CAAC,SAASD,gBAAgB,CAAC,EAAEE,KAAK,CAAA,EAAEC,EAAE,CAAA,EAAE,GAAGC,MAAM,EAAyB,EAAE;IACpH,qBACE,KAACN,GAAG;QACD,GAAGM,MAAM;QACVD,EAAE,EAAEJ,SAAS,CACX;YACEM,MAAM,EAAE,CAAC;YACTC,KAAK,EAAE,EAAE;YACTC,MAAM,EAAE,CAACC,KAAK,GAAKA,KAAK,CAACC,OAAO,CAAC,GAAG,CAAC;SACtC,EACDN,EAAE,CACH;QACDO,KAAK,EAAE;YAAEC,eAAe,EAAET,KAAK;SAAE;MACjC,CACF;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { LegendItem } from '../model';
3
+ interface ListLegendProps {
4
+ items: LegendItem[];
5
+ }
6
+ /**
7
+ * ListLegend is used when legend.position is 'right' since legend items are stacked
8
+ */
9
+ export declare function ListLegend({ items }: ListLegendProps): JSX.Element;
10
+ export {};
11
+ //# sourceMappingURL=ListLegend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListLegend.d.ts","sourceRoot":"","sources":["../../src/Legend/ListLegend.tsx"],"names":[],"mappings":";AAcA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGtC,UAAU,eAAe;IACvB,KAAK,EAAE,UAAU,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,eAAe,eAyBpD"}
@@ -0,0 +1,40 @@
1
+ // Copyright 2022 The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ import { List } from '@mui/material';
15
+ import { ListLegendItem } from './ListLegendItem';
16
+ /**
17
+ * ListLegend is used when legend.position is 'right' since legend items are stacked
18
+ */ export function ListLegend({ items }) {
19
+ // show full labels on hover when there are many total series
20
+ const truncateLabels = items.length > 5;
21
+ return /*#__PURE__*/ _jsx(List, {
22
+ children: items.map((item)=>/*#__PURE__*/ _jsx(ListLegendItem, {
23
+ item: item,
24
+ sx: {
25
+ width: 190,
26
+ textOverflow: 'ellipsis',
27
+ wordBreak: 'break-word',
28
+ overflow: truncateLabels ? 'hidden' : 'visible',
29
+ whiteSpace: truncateLabels ? 'nowrap' : 'normal',
30
+ // TODO: add optional hover effect to show unformatted label
31
+ '&:hover': {
32
+ overflow: 'visible',
33
+ whiteSpace: 'normal'
34
+ }
35
+ }
36
+ }, item.id))
37
+ });
38
+ }
39
+
40
+ //# sourceMappingURL=ListLegend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Legend/ListLegend.tsx"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { List } from '@mui/material';\nimport { LegendItem } from '../model';\nimport { ListLegendItem } from './ListLegendItem';\n\ninterface ListLegendProps {\n items: LegendItem[];\n}\n\n/**\n * ListLegend is used when legend.position is 'right' since legend items are stacked\n */\nexport function ListLegend({ items }: ListLegendProps) {\n // show full labels on hover when there are many total series\n const truncateLabels = items.length > 5;\n return (\n <List>\n {items.map((item) => (\n <ListLegendItem\n key={item.id}\n item={item}\n sx={{\n width: 190,\n textOverflow: 'ellipsis',\n wordBreak: 'break-word',\n overflow: truncateLabels ? 'hidden' : 'visible',\n whiteSpace: truncateLabels ? 'nowrap' : 'normal',\n // TODO: add optional hover effect to show unformatted label\n '&:hover': {\n overflow: 'visible',\n whiteSpace: 'normal', // this allow you to see the full label on hover\n },\n }}\n />\n ))}\n </List>\n );\n}\n"],"names":["List","ListLegendItem","ListLegend","items","truncateLabels","length","map","item","sx","width","textOverflow","wordBreak","overflow","whiteSpace","id"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC;AAAA,SAASA,IAAI,QAAQ,eAAe,CAAC;AAErC,SAASC,cAAc,QAAQ,kBAAkB,CAAC;AAMlD;;CAEC,GACD,OAAO,SAASC,UAAU,CAAC,EAAEC,KAAK,CAAA,EAAmB,EAAE;IACrD,6DAA6D;IAC7D,MAAMC,cAAc,GAAGD,KAAK,CAACE,MAAM,GAAG,CAAC,AAAC;IACxC,qBACE,KAACL,IAAI;kBACFG,KAAK,CAACG,GAAG,CAAC,CAACC,IAAI,iBACd,KAACN,cAAc;gBAEbM,IAAI,EAAEA,IAAI;gBACVC,EAAE,EAAE;oBACFC,KAAK,EAAE,GAAG;oBACVC,YAAY,EAAE,UAAU;oBACxBC,SAAS,EAAE,YAAY;oBACvBC,QAAQ,EAAER,cAAc,GAAG,QAAQ,GAAG,SAAS;oBAC/CS,UAAU,EAAET,cAAc,GAAG,QAAQ,GAAG,QAAQ;oBAChD,4DAA4D;oBAC5D,SAAS,EAAE;wBACTQ,QAAQ,EAAE,SAAS;wBACnBC,UAAU,EAAE,QAAQ;qBACrB;iBACF;eAbIN,IAAI,CAACO,EAAE,CAcZ,AACH,CAAC;MACG,CACP;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { ListItemProps } from '@mui/material';
3
+ import { LegendItem } from '../model';
4
+ interface ListLegendItemProps extends ListItemProps {
5
+ item: LegendItem;
6
+ }
7
+ export declare const ListLegendItem: React.NamedExoticComponent<ListLegendItemProps>;
8
+ export {};
9
+ //# sourceMappingURL=ListLegendItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListLegendItem.d.ts","sourceRoot":"","sources":["../../src/Legend/ListLegendItem.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAA+B,aAAa,EAAE,MAAM,eAAe,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAItC,UAAU,mBAAoB,SAAQ,aAAa;IACjD,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,eAAO,MAAM,cAAc,iDAsBzB,CAAC"}
@@ -0,0 +1,47 @@
1
+ // Copyright 2022 The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ import { jsx as _jsx } from "react/jsx-runtime";
14
+ import { createElement as _createElement } from "react";
15
+ import React from 'react';
16
+ import { Box, ListItemText, ListItem } from '@mui/material';
17
+ import { combineSx } from '../utils';
18
+ import { LegendColorBadge } from './LegendColorBadge';
19
+ export const ListLegendItem = /*#__PURE__*/ React.memo(function ListLegendItem({ item , sx , ...others }) {
20
+ return /*#__PURE__*/ _createElement(ListItem, {
21
+ ...others,
22
+ sx: combineSx({
23
+ padding: 0,
24
+ cursor: 'pointer'
25
+ }, sx),
26
+ dense: true,
27
+ key: item.id,
28
+ onClick: item.onClick,
29
+ selected: item.isSelected,
30
+ children: [
31
+ /*#__PURE__*/ _jsx(Box, {
32
+ sx: {
33
+ display: 'flex',
34
+ alignItems: 'center'
35
+ },
36
+ children: /*#__PURE__*/ _jsx(LegendColorBadge, {
37
+ color: item.color
38
+ })
39
+ }),
40
+ /*#__PURE__*/ _jsx(ListItemText, {
41
+ primary: item.label
42
+ })
43
+ ]
44
+ });
45
+ });
46
+
47
+ //# sourceMappingURL=ListLegendItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Legend/ListLegendItem.tsx"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport React from 'react';\nimport { Box, ListItemText, ListItem, ListItemProps } from '@mui/material';\nimport { LegendItem } from '../model';\nimport { combineSx } from '../utils';\nimport { LegendColorBadge } from './LegendColorBadge';\n\ninterface ListLegendItemProps extends ListItemProps {\n item: LegendItem;\n}\n\nexport const ListLegendItem = React.memo(function ListLegendItem({ item, sx, ...others }: ListLegendItemProps) {\n return (\n <ListItem\n {...others}\n sx={combineSx(\n {\n padding: 0,\n cursor: 'pointer',\n },\n sx\n )}\n dense={true}\n key={item.id}\n onClick={item.onClick}\n selected={item.isSelected}\n >\n <Box sx={{ display: 'flex', alignItems: 'center' }}>\n <LegendColorBadge color={item.color} />\n </Box>\n <ListItemText primary={item.label}></ListItemText>\n </ListItem>\n );\n});\n"],"names":["React","Box","ListItemText","ListItem","combineSx","LegendColorBadge","ListLegendItem","memo","item","sx","others","padding","cursor","dense","key","id","onClick","selected","isSelected","display","alignItems","color","primary","label"],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC;;AAAA,OAAOA,KAAK,MAAM,OAAO,CAAC;AAC1B,SAASC,GAAG,EAAEC,YAAY,EAAEC,QAAQ,QAAuB,eAAe,CAAC;AAE3E,SAASC,SAAS,QAAQ,UAAU,CAAC;AACrC,SAASC,gBAAgB,QAAQ,oBAAoB,CAAC;AAMtD,OAAO,MAAMC,cAAc,iBAAGN,KAAK,CAACO,IAAI,CAAC,SAASD,cAAc,CAAC,EAAEE,IAAI,CAAA,EAAEC,EAAE,CAAA,EAAE,GAAGC,MAAM,EAAuB,EAAE;IAC7G,qBACE,eAACP,QAAQ;QACN,GAAGO,MAAM;QACVD,EAAE,EAAEL,SAAS,CACX;YACEO,OAAO,EAAE,CAAC;YACVC,MAAM,EAAE,SAAS;SAClB,EACDH,EAAE,CACH;QACDI,KAAK,EAAE,IAAI;QACXC,GAAG,EAAEN,IAAI,CAACO,EAAE;QACZC,OAAO,EAAER,IAAI,CAACQ,OAAO;QACrBC,QAAQ,EAAET,IAAI,CAACU,UAAU;;0BAEzB,KAACjB,GAAG;gBAACQ,EAAE,EAAE;oBAAEU,OAAO,EAAE,MAAM;oBAAEC,UAAU,EAAE,QAAQ;iBAAE;0BAChD,cAAA,KAACf,gBAAgB;oBAACgB,KAAK,EAAEb,IAAI,CAACa,KAAK;kBAAI;cACnC;0BACN,KAACnB,YAAY;gBAACoB,OAAO,EAAEd,IAAI,CAACe,KAAK;cAAiB;;MACzC,CACX;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './Legend';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Legend/index.ts"],"names":[],"mappings":"AAaA,cAAc,UAAU,CAAC"}
@@ -0,0 +1,15 @@
1
+ // Copyright 2022 The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ export * from './Legend';
14
+
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/Legend/index.ts"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nexport * from './Legend';\n"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,cAAc,UAAU,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { MouseEvent } from 'react';
2
+ import type { GridComponentOption, LegendComponentOption, VisualMapComponentOption, YAXisComponentOption } from 'echarts';
3
+ import { EChartsDataFormat } from '../model/graph';
4
+ import { UnitOptions } from '../model/units';
5
+ import { ZoomEventData } from './utils';
6
+ interface LineChartProps {
7
+ height: number;
8
+ data: EChartsDataFormat;
9
+ yAxis?: YAXisComponentOption;
10
+ unit?: UnitOptions;
11
+ grid?: GridComponentOption;
12
+ legend?: LegendComponentOption;
13
+ visualMap?: VisualMapComponentOption[];
14
+ onDataZoom?: (e: ZoomEventData) => void;
15
+ onDoubleClick?: (e: MouseEvent) => void;
16
+ }
17
+ export declare function LineChart({ height, data, yAxis, unit, grid, legend, visualMap, onDataZoom, onDoubleClick, }: LineChartProps): JSX.Element;
18
+ export {};
19
+ //# sourceMappingURL=LineChart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../src/LineChart/LineChart.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,UAAU,EAA6B,MAAM,OAAO,CAAC;AAE9D,OAAO,KAAK,EAEV,mBAAmB,EAEnB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAiBjB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAA0E,aAAa,EAAE,MAAM,SAAS,CAAC;AAkBhH,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,SAAS,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,CAAC;IACxC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;CACzC;AAED,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,SAAS,EACT,UAAU,EACV,aAAa,GACd,EAAE,cAAc,eAmJhB"}
@@ -0,0 +1,189 @@
1
+ // Copyright 2022 The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
+ import { useMemo, useRef, useState } from 'react';
15
+ import { Box } from '@mui/material';
16
+ import { use } from 'echarts/core';
17
+ import { LineChart as EChartsLineChart } from 'echarts/charts';
18
+ import { GridComponent, DataZoomComponent, MarkAreaComponent, MarkLineComponent, MarkPointComponent, TitleComponent, ToolboxComponent, TooltipComponent, LegendComponent, VisualMapComponent } from 'echarts/components';
19
+ import { CanvasRenderer } from 'echarts/renderers';
20
+ import { EChart } from '../EChart';
21
+ import { useChartsTheme } from '../context/ChartsThemeProvider';
22
+ import { Tooltip } from '../Tooltip/Tooltip';
23
+ import { enableDataZoom, getDateRange, getFormattedDate, getYAxes, restoreChart } from './utils';
24
+ import { useTimeZone } from '../context/TimeZoneProvider';
25
+ use([
26
+ EChartsLineChart,
27
+ GridComponent,
28
+ DataZoomComponent,
29
+ MarkAreaComponent,
30
+ MarkLineComponent,
31
+ MarkPointComponent,
32
+ TitleComponent,
33
+ ToolboxComponent,
34
+ TooltipComponent,
35
+ LegendComponent,
36
+ VisualMapComponent,
37
+ CanvasRenderer
38
+ ]);
39
+ export function LineChart({ height , data , yAxis , unit , grid , legend , visualMap , onDataZoom , onDoubleClick }) {
40
+ const chartsTheme = useChartsTheme();
41
+ const chartRef = useRef();
42
+ const [showTooltip, setShowTooltip] = useState(true);
43
+ const [pinTooltip, setPinTooltip] = useState(false);
44
+ const { timeZone } = useTimeZone();
45
+ const handleEvents = useMemo(()=>{
46
+ return {
47
+ datazoom: (params)=>{
48
+ if (onDataZoom === undefined) {
49
+ setTimeout(()=>{
50
+ // workaround so unpin happens after click event
51
+ setPinTooltip(false);
52
+ }, 10);
53
+ }
54
+ if (onDataZoom === undefined || params.batch[0] === undefined) return;
55
+ var _startValue;
56
+ const startIndex = (_startValue = params.batch[0].startValue) !== null && _startValue !== void 0 ? _startValue : 0;
57
+ var _endValue;
58
+ const endIndex = (_endValue = params.batch[0].endValue) !== null && _endValue !== void 0 ? _endValue : data.xAxis.length - 1;
59
+ const xAxisStartValue = data.xAxis[startIndex];
60
+ const xAxisEndValue = data.xAxis[endIndex];
61
+ if (xAxisStartValue !== undefined && xAxisEndValue !== undefined) {
62
+ const zoomEvent = {
63
+ start: xAxisStartValue,
64
+ end: xAxisEndValue,
65
+ startIndex,
66
+ endIndex
67
+ };
68
+ onDataZoom(zoomEvent);
69
+ }
70
+ }
71
+ };
72
+ }, [
73
+ data,
74
+ onDataZoom,
75
+ setPinTooltip
76
+ ]);
77
+ if (chartRef.current !== undefined) {
78
+ enableDataZoom(chartRef.current);
79
+ }
80
+ const handleOnClick = ()=>setPinTooltip((current)=>!current);
81
+ const handleOnDoubleClick = (e)=>{
82
+ setPinTooltip(false);
83
+ // either dispatch ECharts restore action to return to orig state or allow consumer to define behavior
84
+ if (onDoubleClick === undefined) {
85
+ if (chartRef.current !== undefined) {
86
+ restoreChart(chartRef.current);
87
+ }
88
+ } else {
89
+ onDoubleClick(e);
90
+ }
91
+ };
92
+ const handleOnMouseDown = (e)=>{
93
+ // hide tooltip when user drags to zoom, but allow clicking inside tooltip to copy labels
94
+ if (e.target instanceof HTMLCanvasElement) {
95
+ setShowTooltip(false);
96
+ }
97
+ };
98
+ const handleOnMouseUp = ()=>{
99
+ setShowTooltip(true);
100
+ };
101
+ const handleOnMouseEnter = ()=>{
102
+ setShowTooltip(true);
103
+ };
104
+ const handleOnMouseLeave = ()=>{
105
+ setShowTooltip(false);
106
+ setPinTooltip(false);
107
+ };
108
+ const option = useMemo(()=>{
109
+ if (data.timeSeries === undefined) return {};
110
+ if (data.timeSeries === null || data.timeSeries.length === 0) return chartsTheme.noDataOption;
111
+ var _rangeMs;
112
+ const rangeMs = (_rangeMs = data.rangeMs) !== null && _rangeMs !== void 0 ? _rangeMs : getDateRange(data.xAxis);
113
+ const option = {
114
+ series: data.timeSeries,
115
+ xAxis: {
116
+ type: 'category',
117
+ data: data.xAxis,
118
+ max: data.xAxisMax,
119
+ axisLabel: {
120
+ formatter: (value)=>{
121
+ return getFormattedDate(value, rangeMs, timeZone);
122
+ }
123
+ }
124
+ },
125
+ yAxis: getYAxes(yAxis, unit),
126
+ animation: false,
127
+ tooltip: {
128
+ show: true,
129
+ trigger: 'axis',
130
+ showContent: false,
131
+ axisPointer: {
132
+ type: 'line',
133
+ z: 0
134
+ }
135
+ },
136
+ toolbox: {
137
+ feature: {
138
+ dataZoom: {
139
+ icon: null,
140
+ yAxisIndex: 'none'
141
+ }
142
+ }
143
+ },
144
+ grid,
145
+ legend,
146
+ visualMap
147
+ };
148
+ return option;
149
+ }, [
150
+ data,
151
+ yAxis,
152
+ grid,
153
+ legend,
154
+ visualMap,
155
+ timeZone
156
+ ]);
157
+ return /*#__PURE__*/ _jsxs(Box, {
158
+ sx: {
159
+ height
160
+ },
161
+ onClick: handleOnClick,
162
+ onDoubleClick: handleOnDoubleClick,
163
+ onMouseDown: handleOnMouseDown,
164
+ onMouseUp: handleOnMouseUp,
165
+ onMouseLeave: handleOnMouseLeave,
166
+ onMouseEnter: handleOnMouseEnter,
167
+ children: [
168
+ showTooltip === true && /*#__PURE__*/ _jsx(Tooltip, {
169
+ chartRef: chartRef,
170
+ chartData: data,
171
+ wrapLabels: true,
172
+ pinTooltip: pinTooltip,
173
+ unit: unit
174
+ }),
175
+ /*#__PURE__*/ _jsx(EChart, {
176
+ sx: {
177
+ width: '100%',
178
+ height: '100%'
179
+ },
180
+ option: option,
181
+ theme: chartsTheme.echartsTheme,
182
+ onEvents: handleEvents,
183
+ _instance: chartRef
184
+ })
185
+ ]
186
+ });
187
+ }
188
+
189
+ //# sourceMappingURL=LineChart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/LineChart/LineChart.tsx"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { MouseEvent, useMemo, useRef, useState } from 'react';\nimport { Box } from '@mui/material';\nimport type {\n EChartsCoreOption,\n GridComponentOption,\n LineSeriesOption,\n LegendComponentOption,\n VisualMapComponentOption,\n YAXisComponentOption,\n} from 'echarts';\nimport { ECharts as EChartsInstance, use } from 'echarts/core';\nimport { LineChart as EChartsLineChart } from 'echarts/charts';\nimport {\n GridComponent,\n DataZoomComponent,\n MarkAreaComponent,\n MarkLineComponent,\n MarkPointComponent,\n TitleComponent,\n ToolboxComponent,\n TooltipComponent,\n LegendComponent,\n VisualMapComponent,\n} from 'echarts/components';\nimport { CanvasRenderer } from 'echarts/renderers';\nimport { EChart, OnEventsType } from '../EChart';\nimport { EChartsDataFormat } from '../model/graph';\nimport { UnitOptions } from '../model/units';\nimport { useChartsTheme } from '../context/ChartsThemeProvider';\nimport { Tooltip } from '../Tooltip/Tooltip';\nimport { enableDataZoom, getDateRange, getFormattedDate, getYAxes, restoreChart, ZoomEventData } from './utils';\nimport { useTimeZone } from '../context/TimeZoneProvider';\n\nuse([\n EChartsLineChart,\n GridComponent,\n DataZoomComponent,\n MarkAreaComponent,\n MarkLineComponent,\n MarkPointComponent,\n TitleComponent,\n ToolboxComponent,\n TooltipComponent,\n LegendComponent,\n VisualMapComponent,\n CanvasRenderer,\n]);\n\ninterface LineChartProps {\n height: number;\n data: EChartsDataFormat;\n yAxis?: YAXisComponentOption;\n unit?: UnitOptions;\n grid?: GridComponentOption;\n legend?: LegendComponentOption;\n visualMap?: VisualMapComponentOption[];\n onDataZoom?: (e: ZoomEventData) => void;\n onDoubleClick?: (e: MouseEvent) => void;\n}\n\nexport function LineChart({\n height,\n data,\n yAxis,\n unit,\n grid,\n legend,\n visualMap,\n onDataZoom,\n onDoubleClick,\n}: LineChartProps) {\n const chartsTheme = useChartsTheme();\n const chartRef = useRef<EChartsInstance>();\n const [showTooltip, setShowTooltip] = useState<boolean>(true);\n const [pinTooltip, setPinTooltip] = useState<boolean>(false);\n const { timeZone } = useTimeZone();\n\n const handleEvents: OnEventsType<LineSeriesOption['data'] | unknown> = useMemo(() => {\n return {\n datazoom: (params) => {\n if (onDataZoom === undefined) {\n setTimeout(() => {\n // workaround so unpin happens after click event\n setPinTooltip(false);\n }, 10);\n }\n if (onDataZoom === undefined || params.batch[0] === undefined) return;\n const startIndex = params.batch[0].startValue ?? 0;\n const endIndex = params.batch[0].endValue ?? data.xAxis.length - 1;\n const xAxisStartValue = data.xAxis[startIndex];\n const xAxisEndValue = data.xAxis[endIndex];\n\n if (xAxisStartValue !== undefined && xAxisEndValue !== undefined) {\n const zoomEvent: ZoomEventData = {\n start: xAxisStartValue,\n end: xAxisEndValue,\n startIndex,\n endIndex,\n };\n onDataZoom(zoomEvent);\n }\n },\n // TODO: use legendselectchanged event to fix tooltip when legend selected\n };\n }, [data, onDataZoom, setPinTooltip]);\n\n if (chartRef.current !== undefined) {\n enableDataZoom(chartRef.current);\n }\n\n const handleOnClick = () => setPinTooltip((current) => !current);\n\n const handleOnDoubleClick = (e: MouseEvent) => {\n setPinTooltip(false);\n // either dispatch ECharts restore action to return to orig state or allow consumer to define behavior\n if (onDoubleClick === undefined) {\n if (chartRef.current !== undefined) {\n restoreChart(chartRef.current);\n }\n } else {\n onDoubleClick(e);\n }\n };\n\n const handleOnMouseDown = (e: MouseEvent) => {\n // hide tooltip when user drags to zoom, but allow clicking inside tooltip to copy labels\n if (e.target instanceof HTMLCanvasElement) {\n setShowTooltip(false);\n }\n };\n\n const handleOnMouseUp = () => {\n setShowTooltip(true);\n };\n\n const handleOnMouseEnter = () => {\n setShowTooltip(true);\n };\n\n const handleOnMouseLeave = () => {\n setShowTooltip(false);\n setPinTooltip(false);\n };\n\n const option: EChartsCoreOption = useMemo(() => {\n if (data.timeSeries === undefined) return {};\n if (data.timeSeries === null || data.timeSeries.length === 0) return chartsTheme.noDataOption;\n\n const rangeMs = data.rangeMs ?? getDateRange(data.xAxis);\n\n const option: EChartsCoreOption = {\n series: data.timeSeries,\n xAxis: {\n type: 'category',\n data: data.xAxis,\n max: data.xAxisMax,\n axisLabel: {\n formatter: (value: number) => {\n return getFormattedDate(value, rangeMs, timeZone);\n },\n },\n },\n yAxis: getYAxes(yAxis, unit),\n animation: false,\n tooltip: {\n show: true,\n trigger: 'axis',\n showContent: false, // echarts tooltip content hidden since we use custom tooltip instead\n axisPointer: {\n type: 'line',\n z: 0, // ensure point symbol shows on top of dashed line\n },\n },\n toolbox: {\n feature: {\n dataZoom: {\n icon: null, // https://stackoverflow.com/a/67684076/17575201\n yAxisIndex: 'none',\n },\n },\n },\n grid,\n legend,\n visualMap,\n };\n\n return option;\n }, [data, yAxis, grid, legend, visualMap, timeZone]);\n\n return (\n <Box\n sx={{\n height,\n }}\n onClick={handleOnClick}\n onDoubleClick={handleOnDoubleClick}\n onMouseDown={handleOnMouseDown}\n onMouseUp={handleOnMouseUp}\n onMouseLeave={handleOnMouseLeave}\n onMouseEnter={handleOnMouseEnter}\n >\n {showTooltip === true && (\n <Tooltip chartRef={chartRef} chartData={data} wrapLabels={true} pinTooltip={pinTooltip} unit={unit}></Tooltip>\n )}\n\n <EChart\n sx={{\n width: '100%',\n height: '100%',\n }}\n option={option}\n theme={chartsTheme.echartsTheme}\n onEvents={handleEvents}\n _instance={chartRef}\n />\n </Box>\n );\n}\n"],"names":["useMemo","useRef","useState","Box","use","LineChart","EChartsLineChart","GridComponent","DataZoomComponent","MarkAreaComponent","MarkLineComponent","MarkPointComponent","TitleComponent","ToolboxComponent","TooltipComponent","LegendComponent","VisualMapComponent","CanvasRenderer","EChart","useChartsTheme","Tooltip","enableDataZoom","getDateRange","getFormattedDate","getYAxes","restoreChart","useTimeZone","height","data","yAxis","unit","grid","legend","visualMap","onDataZoom","onDoubleClick","chartsTheme","chartRef","showTooltip","setShowTooltip","pinTooltip","setPinTooltip","timeZone","handleEvents","datazoom","params","undefined","setTimeout","batch","startIndex","startValue","endIndex","endValue","xAxis","length","xAxisStartValue","xAxisEndValue","zoomEvent","start","end","current","handleOnClick","handleOnDoubleClick","e","handleOnMouseDown","target","HTMLCanvasElement","handleOnMouseUp","handleOnMouseEnter","handleOnMouseLeave","option","timeSeries","noDataOption","rangeMs","series","type","max","xAxisMax","axisLabel","formatter","value","animation","tooltip","show","trigger","showContent","axisPointer","z","toolbox","feature","dataZoom","icon","yAxisIndex","sx","onClick","onMouseDown","onMouseUp","onMouseLeave","onMouseEnter","chartData","wrapLabels","width","theme","echartsTheme","onEvents","_instance"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './LineChart';
2
+ export type { ZoomEventData } from './utils';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/LineChart/index.ts"],"names":[],"mappings":"AAaA,cAAc,aAAa,CAAC;AAC5B,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,15 @@
1
+ // Copyright 2022 The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ export * from './LineChart';
14
+
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/LineChart/index.ts"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nexport * from './LineChart';\nexport type { ZoomEventData } from './utils';\n"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,cAAc,aAAa,CAAC"}
@@ -0,0 +1,30 @@
1
+ import type { YAXisComponentOption } from 'echarts';
2
+ import { ECharts as EChartsInstance } from 'echarts/core';
3
+ import { UnitOptions } from '../model';
4
+ export interface ZoomEventData {
5
+ start: number;
6
+ end: number;
7
+ startIndex: number;
8
+ endIndex: number;
9
+ }
10
+ /**
11
+ * Enable dataZoom without requring user to click toolbox icon
12
+ */
13
+ export declare function enableDataZoom(chart: EChartsInstance): void;
14
+ /**
15
+ * Restore chart to original state before zoom or other actions were dispatched
16
+ */
17
+ export declare function restoreChart(chart: EChartsInstance): void;
18
+ /**
19
+ * Calculate date range, used as a fallback when xAxis time range not passed as prop
20
+ */
21
+ export declare function getDateRange(data: number[]): number;
22
+ export declare function getFormattedDate(value: number, rangeMs: number, timeZone?: string): string;
23
+ export declare function getYAxes(yAxis?: YAXisComponentOption, unit?: UnitOptions): ({
24
+ type: string;
25
+ boundaryGap: (string | number)[];
26
+ axisLabel: {
27
+ formatter: (value: number) => string;
28
+ };
29
+ } & (YAXisComponentOption | undefined))[];
30
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/LineChart/utils.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAe,WAAW,EAAE,MAAM,UAAU,CAAC;AAGpD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,QAapD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,eAAe,QAKlD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAM1C;AAKD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,UAoBjF;AAKD,wBAAgB,QAAQ,CAAC,KAAK,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE,WAAW;;;;2BAMhD,MAAM;;0CAM9B"}
@@ -0,0 +1,90 @@
1
+ // Copyright 2022 The Perses Authors
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ import { merge } from 'lodash-es';
14
+ import { formatValue } from '../model';
15
+ import { dateFormatOptionsWithTimeZone } from '../utils';
16
+ /**
17
+ * Enable dataZoom without requring user to click toolbox icon
18
+ */ export function enableDataZoom(chart) {
19
+ const chartModel = chart['_model'];
20
+ if (chartModel === undefined) return;
21
+ if (chartModel.option.toolbox !== undefined && chartModel.option.toolbox.length > 0) {
22
+ // check if hidden data zoom icon is unselected (if selected it would be 'emphasis' instead of 'normal')
23
+ if (chartModel.option.toolbox[0].feature.dataZoom.iconStatus.zoom === 'normal') {
24
+ chart.dispatchAction({
25
+ type: 'takeGlobalCursor',
26
+ key: 'dataZoomSelect',
27
+ dataZoomSelectActive: true
28
+ });
29
+ }
30
+ }
31
+ }
32
+ /**
33
+ * Restore chart to original state before zoom or other actions were dispatched
34
+ */ export function restoreChart(chart) {
35
+ // TODO: support incremental unzoom instead of restore to original state
36
+ chart.dispatchAction({
37
+ type: 'restore'
38
+ });
39
+ }
40
+ /**
41
+ * Calculate date range, used as a fallback when xAxis time range not passed as prop
42
+ */ export function getDateRange(data) {
43
+ const defaultRange = 3600000; // hour in ms
44
+ if (data.length === 0) return defaultRange;
45
+ const lastDatum = data[data.length - 1];
46
+ if (data[0] === undefined || lastDatum === undefined) return defaultRange;
47
+ return lastDatum - data[0];
48
+ }
49
+ /*
50
+ * Determines time granularity for axis labels, defaults to hh:mm
51
+ */ export function getFormattedDate(value, rangeMs, timeZone) {
52
+ const dateFormatOptions = dateFormatOptionsWithTimeZone({
53
+ hour: 'numeric',
54
+ minute: 'numeric',
55
+ hourCycle: 'h23'
56
+ }, timeZone);
57
+ const thirtyMinMs = 1800000;
58
+ const dayMs = 86400000;
59
+ if (rangeMs <= thirtyMinMs) {
60
+ dateFormatOptions.second = 'numeric';
61
+ } else if (rangeMs >= dayMs) {
62
+ dateFormatOptions.month = 'numeric';
63
+ dateFormatOptions.day = 'numeric';
64
+ }
65
+ const DATE_FORMAT = new Intl.DateTimeFormat(undefined, dateFormatOptions);
66
+ // remove comma when month / day present
67
+ return DATE_FORMAT.format(value).replace(/, /g, ' ');
68
+ }
69
+ /*
70
+ * Populate yAxis properties, returns an Array since multiple y axes will be supported in the future
71
+ */ export function getYAxes(yAxis, unit) {
72
+ // TODO: support alternate yAxis that shows on right side
73
+ const Y_AXIS_DEFAULT = {
74
+ type: 'value',
75
+ boundaryGap: [
76
+ 0,
77
+ '10%'
78
+ ],
79
+ axisLabel: {
80
+ formatter: (value)=>{
81
+ return formatValue(value, unit);
82
+ }
83
+ }
84
+ };
85
+ return [
86
+ merge(Y_AXIS_DEFAULT, yAxis)
87
+ ];
88
+ }
89
+
90
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/LineChart/utils.ts"],"sourcesContent":["// Copyright 2022 The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { merge } from 'lodash-es';\nimport type { YAXisComponentOption } from 'echarts';\nimport { ECharts as EChartsInstance } from 'echarts/core';\nimport { formatValue, UnitOptions } from '../model';\nimport { dateFormatOptionsWithTimeZone } from '../utils';\n\nexport interface ZoomEventData {\n start: number;\n end: number;\n startIndex: number;\n endIndex: number;\n}\n\n/**\n * Enable dataZoom without requring user to click toolbox icon\n */\nexport function enableDataZoom(chart: EChartsInstance) {\n const chartModel = chart['_model'];\n if (chartModel === undefined) return;\n if (chartModel.option.toolbox !== undefined && chartModel.option.toolbox.length > 0) {\n // check if hidden data zoom icon is unselected (if selected it would be 'emphasis' instead of 'normal')\n if (chartModel.option.toolbox[0].feature.dataZoom.iconStatus.zoom === 'normal') {\n chart.dispatchAction({\n type: 'takeGlobalCursor',\n key: 'dataZoomSelect',\n dataZoomSelectActive: true,\n });\n }\n }\n}\n\n/**\n * Restore chart to original state before zoom or other actions were dispatched\n */\nexport function restoreChart(chart: EChartsInstance) {\n // TODO: support incremental unzoom instead of restore to original state\n chart.dispatchAction({\n type: 'restore', // https://echarts.apache.org/en/api.html#events.restore\n });\n}\n\n/**\n * Calculate date range, used as a fallback when xAxis time range not passed as prop\n */\nexport function getDateRange(data: number[]) {\n const defaultRange = 3600000; // hour in ms\n if (data.length === 0) return defaultRange;\n const lastDatum = data[data.length - 1];\n if (data[0] === undefined || lastDatum === undefined) return defaultRange;\n return lastDatum - data[0];\n}\n\n/*\n * Determines time granularity for axis labels, defaults to hh:mm\n */\nexport function getFormattedDate(value: number, rangeMs: number, timeZone?: string) {\n const dateFormatOptions: Intl.DateTimeFormatOptions = dateFormatOptionsWithTimeZone(\n {\n hour: 'numeric',\n minute: 'numeric',\n hourCycle: 'h23',\n },\n timeZone\n );\n const thirtyMinMs = 1800000;\n const dayMs = 86400000;\n if (rangeMs <= thirtyMinMs) {\n dateFormatOptions.second = 'numeric';\n } else if (rangeMs >= dayMs) {\n dateFormatOptions.month = 'numeric';\n dateFormatOptions.day = 'numeric';\n }\n const DATE_FORMAT = new Intl.DateTimeFormat(undefined, dateFormatOptions);\n // remove comma when month / day present\n return DATE_FORMAT.format(value).replace(/, /g, ' ');\n}\n\n/*\n * Populate yAxis properties, returns an Array since multiple y axes will be supported in the future\n */\nexport function getYAxes(yAxis?: YAXisComponentOption, unit?: UnitOptions) {\n // TODO: support alternate yAxis that shows on right side\n const Y_AXIS_DEFAULT = {\n type: 'value',\n boundaryGap: [0, '10%'],\n axisLabel: {\n formatter: (value: number) => {\n return formatValue(value, unit);\n },\n },\n };\n return [merge(Y_AXIS_DEFAULT, yAxis)];\n}\n"],"names":["merge","formatValue","dateFormatOptionsWithTimeZone","enableDataZoom","chart","chartModel","undefined","option","toolbox","length","feature","dataZoom","iconStatus","zoom","dispatchAction","type","key","dataZoomSelectActive","restoreChart","getDateRange","data","defaultRange","lastDatum","getFormattedDate","value","rangeMs","timeZone","dateFormatOptions","hour","minute","hourCycle","thirtyMinMs","dayMs","second","month","day","DATE_FORMAT","Intl","DateTimeFormat","format","replace","getYAxes","yAxis","unit","Y_AXIS_DEFAULT","boundaryGap","axisLabel","formatter"],"mappings":"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"}