@splunk/visualizations 28.5.3 → 28.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (663) hide show
  1. package/Area/Area.d.ts.map +1 -1
  2. package/Area/areaUtils.d.ts +1 -1
  3. package/Area/areaUtils.d.ts.map +1 -1
  4. package/Area/config.d.ts.map +1 -1
  5. package/Area.config.js +93 -25
  6. package/Area.config.js.map +3 -3
  7. package/Area.js +708 -319
  8. package/Area.js.map +4 -4
  9. package/Bar/Bar.d.ts.map +1 -1
  10. package/Bar.config.js +81 -24
  11. package/Bar.config.js.map +3 -3
  12. package/Bar.js +528 -297
  13. package/Bar.js.map +4 -4
  14. package/Bubble.config.js +80 -23
  15. package/Bubble.config.js.map +2 -2
  16. package/Bubble.js +375 -208
  17. package/Bubble.js.map +4 -4
  18. package/CHANGELOG.external.md +75 -60
  19. package/ChoroplethSvg/PureChoroplethSvg/PureChoroplethSvg.d.ts +1 -0
  20. package/ChoroplethSvg/PureChoroplethSvg/PureChoroplethSvg.d.ts.map +1 -1
  21. package/ChoroplethSvg/PureChoroplethSvg/SvgChoroplethDynamic.d.ts +12 -25
  22. package/ChoroplethSvg/PureChoroplethSvg/SvgChoroplethDynamic.d.ts.map +1 -1
  23. package/ChoroplethSvg/PureChoroplethSvg/SvgMutator.d.ts +11 -4
  24. package/ChoroplethSvg/PureChoroplethSvg/SvgMutator.d.ts.map +1 -1
  25. package/ChoroplethSvg.js +1133 -253
  26. package/ChoroplethSvg.js.map +4 -4
  27. package/Column/Column.d.ts.map +1 -1
  28. package/Column.config.js +81 -24
  29. package/Column.config.js.map +3 -3
  30. package/Column.js +531 -300
  31. package/Column.js.map +4 -4
  32. package/Ellipse.config.js +1 -1
  33. package/Ellipse.config.js.map +2 -2
  34. package/Ellipse.js +277 -161
  35. package/Ellipse.js.map +4 -4
  36. package/Events/PureEvents/FieldSummaryTooltip.d.ts +8 -31
  37. package/Events/PureEvents/FieldSummaryTooltip.d.ts.map +1 -1
  38. package/Events/PureEvents/PureEvents.d.ts.map +1 -1
  39. package/Events/PureEvents/TimeControlsPopover.d.ts +6 -25
  40. package/Events/PureEvents/TimeControlsPopover.d.ts.map +1 -1
  41. package/Events/config.d.ts.map +1 -1
  42. package/Events.config.js +13 -3
  43. package/Events.config.js.map +2 -2
  44. package/Events.js +355 -293
  45. package/Events.js.map +4 -4
  46. package/FillerGauge/FillerGauge.d.ts.map +1 -1
  47. package/FillerGauge/config.d.ts.map +1 -1
  48. package/FillerGauge.config.js +76 -24
  49. package/FillerGauge.config.js.map +2 -2
  50. package/FillerGauge.js +512 -271
  51. package/FillerGauge.js.map +4 -4
  52. package/Image/config.d.ts.map +1 -1
  53. package/Image.config.js +7 -0
  54. package/Image.config.js.map +2 -2
  55. package/Image.js +282 -149
  56. package/Image.js.map +4 -4
  57. package/LICENSE +13 -0
  58. package/Line/Line.d.ts.map +1 -1
  59. package/Line/config.d.ts.map +1 -1
  60. package/Line/lineUtils.d.ts.map +1 -1
  61. package/Line/mockdata/LineData.d.ts +21 -0
  62. package/Line/mockdata/LineData.d.ts.map +1 -1
  63. package/Line.config.js +86 -25
  64. package/Line.config.js.map +3 -3
  65. package/Line.js +638 -382
  66. package/Line.js.map +4 -4
  67. package/LinkGraph/PureLinkGraph/PureLinkGraph.d.ts +47 -73
  68. package/LinkGraph/PureLinkGraph/PureLinkGraph.d.ts.map +1 -1
  69. package/LinkGraph/PureLinkGraph/PureLinkGraphUtils.d.ts +11 -2
  70. package/LinkGraph/PureLinkGraph/PureLinkGraphUtils.d.ts.map +1 -1
  71. package/LinkGraph/PureLinkGraph/components/Graph.d.ts +5 -5
  72. package/LinkGraph/PureLinkGraph/components/Node.d.ts +2 -2
  73. package/LinkGraph/PureLinkGraph/components/Nodes.d.ts +2 -2
  74. package/LinkGraph.js +886 -759
  75. package/LinkGraph.js.map +4 -4
  76. package/Map/Map.d.ts +1 -0
  77. package/Map/Map.d.ts.map +1 -1
  78. package/Map/PureMap/BubbleLayer.d.ts +22 -4
  79. package/Map/PureMap/BubbleLayer.d.ts.map +1 -1
  80. package/Map/PureMap/ChoroplethLayer.d.ts +9 -1
  81. package/Map/PureMap/ChoroplethLayer.d.ts.map +1 -1
  82. package/Map/PureMap/ClusterLayer.d.ts +3 -1
  83. package/Map/PureMap/ClusterLayer.d.ts.map +1 -1
  84. package/Map/PureMap/LocalChoroplethLayer.d.ts +1 -0
  85. package/Map/PureMap/LocalChoroplethLayer.d.ts.map +1 -1
  86. package/Map/PureMap/MapContext.d.ts +13 -0
  87. package/Map/PureMap/MapContext.d.ts.map +1 -0
  88. package/Map/PureMap/MarkerLayer.d.ts +19 -2
  89. package/Map/PureMap/MarkerLayer.d.ts.map +1 -1
  90. package/Map/PureMap/MarkerWrapper.d.ts +3 -2
  91. package/Map/PureMap/MarkerWrapper.d.ts.map +1 -1
  92. package/Map/PureMap/PureMap.d.ts +1 -0
  93. package/Map/PureMap/PureMap.d.ts.map +1 -1
  94. package/Map/PureMap/PureMapContainer.d.ts.map +1 -1
  95. package/Map/PureMap/Tooltip.d.ts +6 -1
  96. package/Map/PureMap/Tooltip.d.ts.map +1 -1
  97. package/Map/PureMap/keyboardConstants.d.ts +11 -0
  98. package/Map/PureMap/keyboardConstants.d.ts.map +1 -0
  99. package/Map/PureMap/useRovingTabindex.d.ts +18 -0
  100. package/Map/PureMap/useRovingTabindex.d.ts.map +1 -0
  101. package/Map/config.d.ts.map +1 -1
  102. package/Map.config.js +4 -1
  103. package/Map.config.js.map +2 -2
  104. package/Map.js +1594 -628
  105. package/Map.js.map +4 -4
  106. package/Markdown/Markdown.d.ts.map +1 -1
  107. package/Markdown.config.js.map +1 -1
  108. package/Markdown.js +304 -161
  109. package/Markdown.js.map +4 -4
  110. package/MarkerGauge/MarkerGauge.d.ts +1 -47
  111. package/MarkerGauge/MarkerGauge.d.ts.map +1 -1
  112. package/MarkerGauge/PureMarkerGauge/MarkerGauge.d.ts +22 -68
  113. package/MarkerGauge/PureMarkerGauge/MarkerGauge.d.ts.map +1 -1
  114. package/MarkerGauge/config.d.ts.map +1 -1
  115. package/MarkerGauge.config.js +75 -23
  116. package/MarkerGauge.config.js.map +2 -2
  117. package/MarkerGauge.js +560 -375
  118. package/MarkerGauge.js.map +4 -4
  119. package/NetworkGraph/NetworkGraph.d.ts +2 -5
  120. package/NetworkGraph/NetworkGraph.d.ts.map +1 -1
  121. package/NetworkGraph/PureNetworkGraph/PureNetworkGraph.d.ts.map +1 -1
  122. package/NetworkGraph/PureNetworkGraph/components/NetworkGraphSvg.d.ts +1 -0
  123. package/NetworkGraph/PureNetworkGraph/components/NetworkGraphSvg.d.ts.map +1 -1
  124. package/NetworkGraph/PureNetworkGraph/components/Node.d.ts +1 -0
  125. package/NetworkGraph/PureNetworkGraph/components/Node.d.ts.map +1 -1
  126. package/NetworkGraph/PureNetworkGraph/components/Tooltip.d.ts +1 -1
  127. package/NetworkGraph/PureNetworkGraph/components/Tooltip.d.ts.map +1 -1
  128. package/NetworkGraph/PureNetworkGraph/components/ZoomControls.d.ts +1 -0
  129. package/NetworkGraph/PureNetworkGraph/components/ZoomControls.d.ts.map +1 -1
  130. package/NetworkGraph/PureNetworkGraph/utils/networkGraphUtils.d.ts +23 -0
  131. package/NetworkGraph/PureNetworkGraph/utils/networkGraphUtils.d.ts.map +1 -1
  132. package/NetworkGraph.config.js +2 -0
  133. package/NetworkGraph.config.js.map +2 -2
  134. package/NetworkGraph.js +895 -455
  135. package/NetworkGraph.js.map +4 -4
  136. package/ParallelCoordinates.config.js.map +1 -1
  137. package/ParallelCoordinates.js +288 -172
  138. package/ParallelCoordinates.js.map +4 -4
  139. package/Pie/Pie.d.ts.map +1 -1
  140. package/Pie/pieUtils.d.ts +2 -2
  141. package/Pie.config.js +74 -22
  142. package/Pie.config.js.map +2 -2
  143. package/Pie.js +522 -296
  144. package/Pie.js.map +4 -4
  145. package/ProcessTree/ProcessTree.d.ts +23 -0
  146. package/ProcessTree/ProcessTree.d.ts.map +1 -0
  147. package/ProcessTree/PureProcessTree/PureProcessTree.d.ts +33 -0
  148. package/ProcessTree/PureProcessTree/PureProcessTree.d.ts.map +1 -0
  149. package/ProcessTree/PureProcessTree/components/DirectionalBytes.d.ts +8 -0
  150. package/ProcessTree/PureProcessTree/components/DirectionalBytes.d.ts.map +1 -0
  151. package/ProcessTree/PureProcessTree/components/ProcessTreeLeftPanel.d.ts +46 -0
  152. package/ProcessTree/PureProcessTree/components/ProcessTreeLeftPanel.d.ts.map +1 -0
  153. package/ProcessTree/PureProcessTree/components/ProcessTreeRightPanel.d.ts +20 -0
  154. package/ProcessTree/PureProcessTree/components/ProcessTreeRightPanel.d.ts.map +1 -0
  155. package/ProcessTree/PureProcessTree/hooks/useProcessTreeExpansionState.d.ts +20 -0
  156. package/ProcessTree/PureProcessTree/hooks/useProcessTreeExpansionState.d.ts.map +1 -0
  157. package/ProcessTree/PureProcessTree/hooks/useProcessTreeGraphData.d.ts +46 -0
  158. package/ProcessTree/PureProcessTree/hooks/useProcessTreeGraphData.d.ts.map +1 -0
  159. package/ProcessTree/PureProcessTree/hooks/useProcessTreeLinkOverlay.d.ts +23 -0
  160. package/ProcessTree/PureProcessTree/hooks/useProcessTreeLinkOverlay.d.ts.map +1 -0
  161. package/ProcessTree/PureProcessTree/mockdata/data.d.ts +235 -0
  162. package/ProcessTree/PureProcessTree/mockdata/data.d.ts.map +1 -0
  163. package/ProcessTree/PureProcessTree/utils/iconLoader.d.ts +9 -0
  164. package/ProcessTree/PureProcessTree/utils/iconLoader.d.ts.map +1 -0
  165. package/ProcessTree/PureProcessTree/utils/processTreeLinkOverlayUtils.d.ts +36 -0
  166. package/ProcessTree/PureProcessTree/utils/processTreeLinkOverlayUtils.d.ts.map +1 -0
  167. package/ProcessTree/PureProcessTree/utils/processTreeUtils.d.ts +82 -0
  168. package/ProcessTree/PureProcessTree/utils/processTreeUtils.d.ts.map +1 -0
  169. package/ProcessTree/config.d.ts +4 -0
  170. package/ProcessTree/config.d.ts.map +1 -0
  171. package/ProcessTree/index.d.ts +3 -0
  172. package/ProcessTree/index.d.ts.map +1 -0
  173. package/ProcessTree.config.js +192 -0
  174. package/ProcessTree.config.js.map +7 -0
  175. package/ProcessTree.js +5128 -0
  176. package/ProcessTree.js.map +7 -0
  177. package/Punchcard/Punchcard.d.ts +1 -5
  178. package/Punchcard/Punchcard.d.ts.map +1 -1
  179. package/Punchcard/PurePunchcard/Punchcard.d.ts +28 -32
  180. package/Punchcard/PurePunchcard/Punchcard.d.ts.map +1 -1
  181. package/Punchcard/PurePunchcard/src/PunchcardAxis.d.ts +7 -12
  182. package/Punchcard/PurePunchcard/src/PunchcardAxis.d.ts.map +1 -1
  183. package/Punchcard/PurePunchcard/src/PunchcardBubble.d.ts +14 -19
  184. package/Punchcard/PurePunchcard/src/PunchcardBubble.d.ts.map +1 -1
  185. package/Punchcard/PurePunchcard/src/PunchcardChartArea.d.ts +22 -27
  186. package/Punchcard/PurePunchcard/src/PunchcardChartArea.d.ts.map +1 -1
  187. package/Punchcard/PurePunchcard/src/PunchcardGridLines.d.ts +3 -8
  188. package/Punchcard/PurePunchcard/src/PunchcardGridLines.d.ts.map +1 -1
  189. package/Punchcard/PurePunchcard/src/PunchcardLegend.d.ts +9 -14
  190. package/Punchcard/PurePunchcard/src/PunchcardLegend.d.ts.map +1 -1
  191. package/Punchcard/PurePunchcard/src/PunchcardRow.d.ts.map +1 -1
  192. package/Punchcard.config.js.map +1 -1
  193. package/Punchcard.js +444 -631
  194. package/Punchcard.js.map +4 -4
  195. package/README.md +2 -0
  196. package/Rectangle.config.js +1 -1
  197. package/Rectangle.config.js.map +2 -2
  198. package/Rectangle.js +289 -173
  199. package/Rectangle.js.map +4 -4
  200. package/RichText/PureRichText/Editor/EditorPanel.d.ts +20 -0
  201. package/RichText/PureRichText/Editor/EditorPanel.d.ts.map +1 -0
  202. package/RichText/PureRichText/Editor/EditorPanelStyles.d.ts +17 -0
  203. package/RichText/PureRichText/Editor/EditorPanelStyles.d.ts.map +1 -0
  204. package/RichText/PureRichText/Editor/FontSelector.d.ts +15 -0
  205. package/RichText/PureRichText/Editor/FontSelector.d.ts.map +1 -0
  206. package/RichText/PureRichText/Editor/FormatButton.d.ts +23 -0
  207. package/RichText/PureRichText/Editor/FormatButton.d.ts.map +1 -0
  208. package/RichText/PureRichText/Editor/editorPanelUtils.d.ts +19 -0
  209. package/RichText/PureRichText/Editor/editorPanelUtils.d.ts.map +1 -0
  210. package/RichText/PureRichText/Editor/hooks/useLineSpacing.d.ts +11 -0
  211. package/RichText/PureRichText/Editor/hooks/useLineSpacing.d.ts.map +1 -0
  212. package/RichText/PureRichText/Editor/hooks/useLinkHandlers.d.ts +26 -0
  213. package/RichText/PureRichText/Editor/hooks/useLinkHandlers.d.ts.map +1 -0
  214. package/RichText/PureRichText/Editor/index.d.ts +9 -0
  215. package/RichText/PureRichText/Editor/index.d.ts.map +1 -0
  216. package/RichText/PureRichText/InnerEditor.d.ts +41 -0
  217. package/RichText/PureRichText/InnerEditor.d.ts.map +1 -0
  218. package/RichText/PureRichText/PureRichText.d.ts +19 -0
  219. package/RichText/PureRichText/PureRichText.d.ts.map +1 -0
  220. package/RichText/PureRichText/PureRichTextContext.d.ts +64 -0
  221. package/RichText/PureRichText/PureRichTextContext.d.ts.map +1 -0
  222. package/RichText/PureRichText/RichTextStyles.d.ts +25 -0
  223. package/RichText/PureRichText/RichTextStyles.d.ts.map +1 -0
  224. package/RichText/PureRichText/activeInstance.d.ts +23 -0
  225. package/RichText/PureRichText/activeInstance.d.ts.map +1 -0
  226. package/RichText/PureRichText/config.d.ts +17 -0
  227. package/RichText/PureRichText/config.d.ts.map +1 -0
  228. package/RichText/PureRichText/hooks/index.d.ts +12 -0
  229. package/RichText/PureRichText/hooks/index.d.ts.map +1 -0
  230. package/RichText/PureRichText/hooks/useContentSave.d.ts +25 -0
  231. package/RichText/PureRichText/hooks/useContentSave.d.ts.map +1 -0
  232. package/RichText/PureRichText/hooks/useContentSync.d.ts +28 -0
  233. package/RichText/PureRichText/hooks/useContentSync.d.ts.map +1 -0
  234. package/RichText/PureRichText/hooks/useDashboardKeyboardNav.d.ts +33 -0
  235. package/RichText/PureRichText/hooks/useDashboardKeyboardNav.d.ts.map +1 -0
  236. package/RichText/PureRichText/hooks/useEditModeEffect.d.ts +10 -0
  237. package/RichText/PureRichText/hooks/useEditModeEffect.d.ts.map +1 -0
  238. package/RichText/PureRichText/hooks/useEditorSetup.d.ts +36 -0
  239. package/RichText/PureRichText/hooks/useEditorSetup.d.ts.map +1 -0
  240. package/RichText/PureRichText/hooks/useFakeHighlight.d.ts +33 -0
  241. package/RichText/PureRichText/hooks/useFakeHighlight.d.ts.map +1 -0
  242. package/RichText/PureRichText/hooks/useFocusHandlers.d.ts +35 -0
  243. package/RichText/PureRichText/hooks/useFocusHandlers.d.ts.map +1 -0
  244. package/RichText/PureRichText/hooks/useKeyboardShortcuts.d.ts +18 -0
  245. package/RichText/PureRichText/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  246. package/RichText/PureRichText/hooks/useMouseHandlers.d.ts +24 -0
  247. package/RichText/PureRichText/hooks/useMouseHandlers.d.ts.map +1 -0
  248. package/RichText/PureRichText/hooks/useRichTextState.d.ts +38 -0
  249. package/RichText/PureRichText/hooks/useRichTextState.d.ts.map +1 -0
  250. package/RichText/PureRichText/hooks/useStepFontSize.d.ts +17 -0
  251. package/RichText/PureRichText/hooks/useStepFontSize.d.ts.map +1 -0
  252. package/RichText/PureRichText/hooks/useStepLineSpacing.d.ts +18 -0
  253. package/RichText/PureRichText/hooks/useStepLineSpacing.d.ts.map +1 -0
  254. package/RichText/PureRichText/hooks/useTokenMap.d.ts +45 -0
  255. package/RichText/PureRichText/hooks/useTokenMap.d.ts.map +1 -0
  256. package/RichText/PureRichText/index.d.ts +16 -0
  257. package/RichText/PureRichText/index.d.ts.map +1 -0
  258. package/RichText/PureRichText/renderers/ElementRenderer.d.ts +8 -0
  259. package/RichText/PureRichText/renderers/ElementRenderer.d.ts.map +1 -0
  260. package/RichText/PureRichText/renderers/LeafRenderer.d.ts +8 -0
  261. package/RichText/PureRichText/renderers/LeafRenderer.d.ts.map +1 -0
  262. package/RichText/PureRichText/types.d.ts +111 -0
  263. package/RichText/PureRichText/types.d.ts.map +1 -0
  264. package/RichText/PureRichText/utils/a11yUtils.d.ts +9 -0
  265. package/RichText/PureRichText/utils/a11yUtils.d.ts.map +1 -0
  266. package/RichText/PureRichText/utils/fontSize.d.ts +6 -0
  267. package/RichText/PureRichText/utils/fontSize.d.ts.map +1 -0
  268. package/RichText/PureRichText/utils/slateUtils.d.ts +99 -0
  269. package/RichText/PureRichText/utils/slateUtils.d.ts.map +1 -0
  270. package/RichText/RichText.d.ts +17 -0
  271. package/RichText/RichText.d.ts.map +1 -0
  272. package/RichText/config.d.ts +4 -0
  273. package/RichText/config.d.ts.map +1 -0
  274. package/RichText/index.d.ts +7 -0
  275. package/RichText/index.d.ts.map +1 -0
  276. package/RichText.config.js +268 -0
  277. package/RichText.config.js.map +7 -0
  278. package/RichText.js +7674 -0
  279. package/RichText.js.map +7 -0
  280. package/Sankey/PureSankey/PureSankey.d.ts.map +1 -1
  281. package/Sankey/PureSankey/SankeyLink.d.ts.map +1 -1
  282. package/Sankey/PureSankey/SankeyNode.d.ts +10 -3
  283. package/Sankey/PureSankey/SankeyNode.d.ts.map +1 -1
  284. package/Sankey/PureSankey/SankeyTooltip.d.ts.map +1 -1
  285. package/Sankey/PureSankey/SankeyUtils.d.ts +10 -0
  286. package/Sankey/PureSankey/SankeyUtils.d.ts.map +1 -1
  287. package/Sankey.config.js.map +1 -1
  288. package/Sankey.js +562 -290
  289. package/Sankey.js.map +4 -4
  290. package/Scatter/Scatter.d.ts.map +1 -1
  291. package/Scatter.config.js +81 -24
  292. package/Scatter.config.js.map +3 -3
  293. package/Scatter.js +528 -297
  294. package/Scatter.js.map +4 -4
  295. package/SingleValue/SingleValue.d.ts.map +1 -1
  296. package/SingleValue/config.d.ts.map +1 -1
  297. package/SingleValue.config.js +76 -24
  298. package/SingleValue.config.js.map +2 -2
  299. package/SingleValue.js +896 -779
  300. package/SingleValue.js.map +4 -4
  301. package/SingleValueBasic.js.map +1 -1
  302. package/SingleValueIcon/SingleValueIcon.d.ts.map +1 -1
  303. package/SingleValueIcon/config.d.ts.map +1 -1
  304. package/SingleValueIcon.config.js +76 -24
  305. package/SingleValueIcon.config.js.map +2 -2
  306. package/SingleValueIcon.js +512 -287
  307. package/SingleValueIcon.js.map +4 -4
  308. package/SingleValueRadial/PureSingleValueRadial/utils/gaugeUtils.d.ts +0 -8
  309. package/SingleValueRadial/PureSingleValueRadial/utils/gaugeUtils.d.ts.map +1 -1
  310. package/SingleValueRadial/SingleValueRadial.d.ts.map +1 -1
  311. package/SingleValueRadial/config.d.ts.map +1 -1
  312. package/SingleValueRadial.config.js +76 -24
  313. package/SingleValueRadial.config.js.map +2 -2
  314. package/SingleValueRadial.js +543 -326
  315. package/SingleValueRadial.js.map +4 -4
  316. package/SparkLine/SparkLine.d.ts +57 -0
  317. package/SparkLine/SparkLine.d.ts.map +1 -0
  318. package/SparkLine/index.d.ts +1 -1
  319. package/SparkLine/index.d.ts.map +1 -1
  320. package/SparkLine.js +384 -485
  321. package/SparkLine.js.map +4 -4
  322. package/TRELLIS.md +48 -0
  323. package/Table/PureTable.d.ts +1 -0
  324. package/Table/PureTable.d.ts.map +1 -1
  325. package/Table/Table.d.ts.map +1 -1
  326. package/Table/cells/ArrayCell.d.ts.map +1 -1
  327. package/Table/config.d.ts.map +1 -1
  328. package/Table/hooks.d.ts +1 -1
  329. package/Table/hooks.d.ts.map +1 -1
  330. package/Table/tableUtils.d.ts +14 -0
  331. package/Table/tableUtils.d.ts.map +1 -0
  332. package/Table.config.js +4 -10
  333. package/Table.config.js.map +2 -2
  334. package/Table.js +1158 -846
  335. package/Table.js.map +4 -4
  336. package/Timeline/PureTimeline/src/TimelineYAxis.d.ts.map +1 -1
  337. package/Timeline/PureTimeline/src/utils/timelineUtils.d.ts +5 -0
  338. package/Timeline/PureTimeline/src/utils/timelineUtils.d.ts.map +1 -1
  339. package/Timeline/Timeline.d.ts +2 -0
  340. package/Timeline/Timeline.d.ts.map +1 -1
  341. package/Timeline/config.d.ts.map +1 -1
  342. package/Timeline/mockdata/timelineDataSource.d.ts +34 -0
  343. package/Timeline/mockdata/timelineDataSource.d.ts.map +1 -1
  344. package/Timeline.config.js +15 -0
  345. package/Timeline.config.js.map +2 -2
  346. package/Timeline.js +348 -186
  347. package/Timeline.js.map +4 -4
  348. package/common/Charting.d.ts.map +1 -1
  349. package/common/Charting.js +50 -28
  350. package/common/Charting.js.map +2 -2
  351. package/common/ChartingApi.d.ts +1 -1
  352. package/common/ChartingApi.d.ts.map +1 -1
  353. package/common/ChartingApi.js.map +2 -2
  354. package/common/DocExampleWithVizSandbox.js.map +1 -1
  355. package/common/OptionsDoc.js.map +1 -1
  356. package/common/OverviewDoc.js.map +1 -1
  357. package/common/SplunkVisualization.d.ts +1 -1
  358. package/common/SplunkVisualization.d.ts.map +1 -1
  359. package/common/SplunkVisualization.js +6 -4
  360. package/common/SplunkVisualization.js.map +2 -2
  361. package/common/StyledSkipLink.d.ts +2 -0
  362. package/common/StyledSkipLink.d.ts.map +1 -0
  363. package/common/StyledSkipLink.js +81 -0
  364. package/common/StyledSkipLink.js.map +7 -0
  365. package/common/TimeSeriesChartWrapper.d.ts.map +1 -1
  366. package/common/TimeSeriesChartWrapper.js +228 -107
  367. package/common/TimeSeriesChartWrapper.js.map +4 -4
  368. package/common/chartingUtils.d.ts +32 -6
  369. package/common/chartingUtils.d.ts.map +1 -1
  370. package/common/chartingUtils.js +166 -39
  371. package/common/chartingUtils.js.map +4 -4
  372. package/common/components/TrellisTitle.d.ts.map +1 -1
  373. package/common/docUtils.js +1 -1
  374. package/common/docUtils.js.map +2 -2
  375. package/common/editorConfig/AxesChartDataDisplay.d.ts.map +1 -1
  376. package/common/editorConfig/AxesChartYGridAndLabels.d.ts.map +1 -1
  377. package/common/editorConfig/BackgroundColor.d.ts +2 -2
  378. package/common/editorConfig/TrellisEditors.d.ts +33 -5
  379. package/common/editorConfig/TrellisEditors.d.ts.map +1 -1
  380. package/common/hocs/mockdata/trellisData.d.ts +54 -0
  381. package/common/hocs/mockdata/trellisData.d.ts.map +1 -1
  382. package/common/hocs/withTrellis.d.ts +9 -0
  383. package/common/hocs/withTrellis.d.ts.map +1 -1
  384. package/common/hooks/useSorting.d.ts +2 -2
  385. package/common/hooks/useSorting.d.ts.map +1 -1
  386. package/common/shapeUtils.d.ts +1 -1
  387. package/common/shapeUtils.d.ts.map +1 -1
  388. package/common/shapeUtils.js.map +2 -2
  389. package/common/utils/dataUtils.js +2 -1
  390. package/common/utils/dataUtils.js.map +2 -2
  391. package/common/utils/focusUtils.d.ts +4 -0
  392. package/common/utils/focusUtils.d.ts.map +1 -0
  393. package/common/utils/focusUtils.js +101 -0
  394. package/common/utils/focusUtils.js.map +7 -0
  395. package/common/utils/mapUtils.js +513 -184
  396. package/common/utils/mapUtils.js.map +4 -4
  397. package/common/utils/shadowDomUtils.d.ts +2 -0
  398. package/common/utils/shadowDomUtils.d.ts.map +1 -0
  399. package/common/utils/shadowDomUtils.js +39 -0
  400. package/common/utils/shadowDomUtils.js.map +7 -0
  401. package/common/utils/singleValueUtils.js +14 -26
  402. package/common/utils/singleValueUtils.js.map +2 -2
  403. package/common/utils/trellisUtils.d.ts.map +1 -1
  404. package/common/utils/trellisUtils.js +76 -70
  405. package/common/utils/trellisUtils.js.map +2 -2
  406. package/common/withDashboardViz.d.ts.map +1 -1
  407. package/common/withDashboardViz.js +276 -151
  408. package/common/withDashboardViz.js.map +4 -4
  409. package/docs-llm/INDEX.md +118 -0
  410. package/docs-llm/area/examples-json.md +3854 -0
  411. package/docs-llm/area/examples-react.md +2816 -0
  412. package/docs-llm/area/options.md +97 -0
  413. package/docs-llm/area/overview.md +27 -0
  414. package/docs-llm/bar/examples-json.md +3380 -0
  415. package/docs-llm/bar/examples-react.md +2352 -0
  416. package/docs-llm/bar/options.md +89 -0
  417. package/docs-llm/bar/overview.md +25 -0
  418. package/docs-llm/bubble/examples-json.md +4082 -0
  419. package/docs-llm/bubble/examples-react.md +3977 -0
  420. package/docs-llm/bubble/options.md +62 -0
  421. package/docs-llm/bubble/overview.md +26 -0
  422. package/docs-llm/choropleth-svg/examples-json.md +397 -0
  423. package/docs-llm/choropleth-svg/examples-react.md +389 -0
  424. package/docs-llm/choropleth-svg/options.md +15 -0
  425. package/docs-llm/choropleth-svg/overview.md +23 -0
  426. package/docs-llm/column/examples-json.md +3898 -0
  427. package/docs-llm/column/examples-react.md +2653 -0
  428. package/docs-llm/column/options.md +94 -0
  429. package/docs-llm/column/overview.md +31 -0
  430. package/docs-llm/dsl/examples-json.md +43 -0
  431. package/docs-llm/dsl/examples-react.md +78 -0
  432. package/docs-llm/dsl/formatters/format-by-type-examples-json.md +58 -0
  433. package/docs-llm/dsl/formatters/format-by-type-examples-react.md +43 -0
  434. package/docs-llm/dsl/formatters/format-by-type.md +38 -0
  435. package/docs-llm/dsl/formatters/frame-examples-json.md +42 -0
  436. package/docs-llm/dsl/formatters/frame-examples-react.md +24 -0
  437. package/docs-llm/dsl/formatters/frame.md +6 -0
  438. package/docs-llm/dsl/formatters/gradient-examples-json.md +98 -0
  439. package/docs-llm/dsl/formatters/gradient-examples-react.md +44 -0
  440. package/docs-llm/dsl/formatters/gradient.md +23 -0
  441. package/docs-llm/dsl/formatters/lerp-examples-json.md +40 -0
  442. package/docs-llm/dsl/formatters/lerp-examples-react.md +28 -0
  443. package/docs-llm/dsl/formatters/lerp.md +19 -0
  444. package/docs-llm/dsl/formatters/match-value-examples-json.md +65 -0
  445. package/docs-llm/dsl/formatters/match-value-examples-react.md +37 -0
  446. package/docs-llm/dsl/formatters/match-value.md +13 -0
  447. package/docs-llm/dsl/formatters/max-contrast-examples-json.md +39 -0
  448. package/docs-llm/dsl/formatters/max-contrast-examples-react.md +27 -0
  449. package/docs-llm/dsl/formatters/max-contrast.md +9 -0
  450. package/docs-llm/dsl/formatters/multi-format-examples-json.md +67 -0
  451. package/docs-llm/dsl/formatters/multi-format-examples-react.md +49 -0
  452. package/docs-llm/dsl/formatters/multi-format.md +12 -0
  453. package/docs-llm/dsl/formatters/objects-examples-json.md +49 -0
  454. package/docs-llm/dsl/formatters/objects-examples-react.md +37 -0
  455. package/docs-llm/dsl/formatters/objects.md +3 -0
  456. package/docs-llm/dsl/formatters/pick-examples-json.md +59 -0
  457. package/docs-llm/dsl/formatters/pick-examples-react.md +30 -0
  458. package/docs-llm/dsl/formatters/pick.md +9 -0
  459. package/docs-llm/dsl/formatters/prefix-examples-json.md +29 -0
  460. package/docs-llm/dsl/formatters/prefix-examples-react.md +19 -0
  461. package/docs-llm/dsl/formatters/prefix.md +3 -0
  462. package/docs-llm/dsl/formatters/prepend-examples-json.md +51 -0
  463. package/docs-llm/dsl/formatters/prepend-examples-react.md +33 -0
  464. package/docs-llm/dsl/formatters/prepend.md +9 -0
  465. package/docs-llm/dsl/formatters/range-value-examples-json.md +48 -0
  466. package/docs-llm/dsl/formatters/range-value-examples-react.md +34 -0
  467. package/docs-llm/dsl/formatters/range-value.md +15 -0
  468. package/docs-llm/dsl/formatters/set-color-channel-examples-json.md +40 -0
  469. package/docs-llm/dsl/formatters/set-color-channel-examples-react.md +31 -0
  470. package/docs-llm/dsl/formatters/set-color-channel.md +9 -0
  471. package/docs-llm/dsl/formatters/suffix-examples-json.md +29 -0
  472. package/docs-llm/dsl/formatters/suffix-examples-react.md +19 -0
  473. package/docs-llm/dsl/formatters/suffix.md +3 -0
  474. package/docs-llm/dsl/formatters/type-examples-json.md +37 -0
  475. package/docs-llm/dsl/formatters/type-examples-react.md +20 -0
  476. package/docs-llm/dsl/formatters/type.md +3 -0
  477. package/docs-llm/dsl/overview.md +41 -0
  478. package/docs-llm/dsl/selectors/abs.md +7 -0
  479. package/docs-llm/dsl/selectors/ceil.md +7 -0
  480. package/docs-llm/dsl/selectors/data-frame-average-examples-json.md +41 -0
  481. package/docs-llm/dsl/selectors/data-frame-average-examples-react.md +36 -0
  482. package/docs-llm/dsl/selectors/data-frame-average.md +7 -0
  483. package/docs-llm/dsl/selectors/data-frame-count-examples-json.md +41 -0
  484. package/docs-llm/dsl/selectors/data-frame-count-examples-react.md +36 -0
  485. package/docs-llm/dsl/selectors/data-frame-count.md +7 -0
  486. package/docs-llm/dsl/selectors/data-frame-examples-json.md +830 -0
  487. package/docs-llm/dsl/selectors/data-frame-examples-react.md +929 -0
  488. package/docs-llm/dsl/selectors/data-frame-get-field-examples-json.md +89 -0
  489. package/docs-llm/dsl/selectors/data-frame-get-field-examples-react.md +124 -0
  490. package/docs-llm/dsl/selectors/data-frame-get-field.md +5 -0
  491. package/docs-llm/dsl/selectors/data-frame-get-raw-value.md +5 -0
  492. package/docs-llm/dsl/selectors/data-frame-get-type.md +5 -0
  493. package/docs-llm/dsl/selectors/data-frame-get-value.md +5 -0
  494. package/docs-llm/dsl/selectors/data-frame-max-examples-json.md +51 -0
  495. package/docs-llm/dsl/selectors/data-frame-max-examples-react.md +41 -0
  496. package/docs-llm/dsl/selectors/data-frame-max.md +7 -0
  497. package/docs-llm/dsl/selectors/data-frame-min-examples-json.md +51 -0
  498. package/docs-llm/dsl/selectors/data-frame-min-examples-react.md +41 -0
  499. package/docs-llm/dsl/selectors/data-frame-min.md +7 -0
  500. package/docs-llm/dsl/selectors/data-frame-percentile-examples-json.md +41 -0
  501. package/docs-llm/dsl/selectors/data-frame-percentile-examples-react.md +36 -0
  502. package/docs-llm/dsl/selectors/data-frame-percentile.md +8 -0
  503. package/docs-llm/dsl/selectors/data-frame-set-value.md +5 -0
  504. package/docs-llm/dsl/selectors/data-frame-sum-examples-json.md +51 -0
  505. package/docs-llm/dsl/selectors/data-frame-sum-examples-react.md +41 -0
  506. package/docs-llm/dsl/selectors/data-frame-sum.md +7 -0
  507. package/docs-llm/dsl/selectors/data-frame.md +4 -0
  508. package/docs-llm/dsl/selectors/data-point-get-field.md +5 -0
  509. package/docs-llm/dsl/selectors/data-point-get-raw-value.md +4 -0
  510. package/docs-llm/dsl/selectors/data-point-get-type.md +5 -0
  511. package/docs-llm/dsl/selectors/data-point-get-value.md +5 -0
  512. package/docs-llm/dsl/selectors/data-point-set-value.md +4 -0
  513. package/docs-llm/dsl/selectors/data-point.md +5 -0
  514. package/docs-llm/dsl/selectors/data-series-average.md +22 -0
  515. package/docs-llm/dsl/selectors/data-series-count.md +14 -0
  516. package/docs-llm/dsl/selectors/data-series-get-field.md +5 -0
  517. package/docs-llm/dsl/selectors/data-series-get-raw-value.md +4 -0
  518. package/docs-llm/dsl/selectors/data-series-get-type.md +5 -0
  519. package/docs-llm/dsl/selectors/data-series-get-value.md +4 -0
  520. package/docs-llm/dsl/selectors/data-series-max.md +5 -0
  521. package/docs-llm/dsl/selectors/data-series-min.md +5 -0
  522. package/docs-llm/dsl/selectors/data-series-percentile.md +17 -0
  523. package/docs-llm/dsl/selectors/data-series-set-value.md +4 -0
  524. package/docs-llm/dsl/selectors/data-series-sum.md +24 -0
  525. package/docs-llm/dsl/selectors/data-series.md +4 -0
  526. package/docs-llm/dsl/selectors/delta.md +7 -0
  527. package/docs-llm/dsl/selectors/divide.md +8 -0
  528. package/docs-llm/dsl/selectors/first-point.md +5 -0
  529. package/docs-llm/dsl/selectors/floor.md +7 -0
  530. package/docs-llm/dsl/selectors/frame-by-series-index-range-examples-json.md +89 -0
  531. package/docs-llm/dsl/selectors/frame-by-series-index-range-examples-react.md +88 -0
  532. package/docs-llm/dsl/selectors/frame-by-series-index-range.md +10 -0
  533. package/docs-llm/dsl/selectors/frame-by-series-indexes-examples-json.md +88 -0
  534. package/docs-llm/dsl/selectors/frame-by-series-indexes-examples-react.md +87 -0
  535. package/docs-llm/dsl/selectors/frame-by-series-indexes.md +9 -0
  536. package/docs-llm/dsl/selectors/frame-by-series-names-examples-json.md +89 -0
  537. package/docs-llm/dsl/selectors/frame-by-series-names-examples-react.md +88 -0
  538. package/docs-llm/dsl/selectors/frame-by-series-names-or-indexes-examples-json.md +89 -0
  539. package/docs-llm/dsl/selectors/frame-by-series-names-or-indexes-examples-react.md +88 -0
  540. package/docs-llm/dsl/selectors/frame-by-series-names-or-indexes.md +9 -0
  541. package/docs-llm/dsl/selectors/frame-by-series-names.md +9 -0
  542. package/docs-llm/dsl/selectors/frame-by-series-types-examples-json.md +89 -0
  543. package/docs-llm/dsl/selectors/frame-by-series-types-examples-react.md +88 -0
  544. package/docs-llm/dsl/selectors/frame-by-series-types.md +9 -0
  545. package/docs-llm/dsl/selectors/frame-without-internal-fields-examples-json.md +137 -0
  546. package/docs-llm/dsl/selectors/frame-without-internal-fields-examples-react.md +135 -0
  547. package/docs-llm/dsl/selectors/frame-without-internal-fields-except-examples-json.md +157 -0
  548. package/docs-llm/dsl/selectors/frame-without-internal-fields-except-examples-react.md +155 -0
  549. package/docs-llm/dsl/selectors/frame-without-internal-fields-except.md +21 -0
  550. package/docs-llm/dsl/selectors/frame-without-internal-fields.md +17 -0
  551. package/docs-llm/dsl/selectors/frame-without-series-names.md +8 -0
  552. package/docs-llm/dsl/selectors/last-point.md +5 -0
  553. package/docs-llm/dsl/selectors/minus.md +8 -0
  554. package/docs-llm/dsl/selectors/multiply.md +8 -0
  555. package/docs-llm/dsl/selectors/plus.md +8 -0
  556. package/docs-llm/dsl/selectors/point-by-index.md +6 -0
  557. package/docs-llm/dsl/selectors/points-by-indexes.md +6 -0
  558. package/docs-llm/dsl/selectors/round.md +7 -0
  559. package/docs-llm/dsl/selectors/series-by-index-examples-json.md +49 -0
  560. package/docs-llm/dsl/selectors/series-by-index-examples-react.md +39 -0
  561. package/docs-llm/dsl/selectors/series-by-index.md +8 -0
  562. package/docs-llm/dsl/selectors/series-by-name-examples-json.md +49 -0
  563. package/docs-llm/dsl/selectors/series-by-name-examples-react.md +39 -0
  564. package/docs-llm/dsl/selectors/series-by-name.md +8 -0
  565. package/docs-llm/dsl/selectors/series-by-prioritized-types-examples-json.md +47 -0
  566. package/docs-llm/dsl/selectors/series-by-prioritized-types-examples-react.md +39 -0
  567. package/docs-llm/dsl/selectors/series-by-prioritized-types.md +10 -0
  568. package/docs-llm/dsl/selectors/series-by-type-examples-json.md +49 -0
  569. package/docs-llm/dsl/selectors/series-by-type-examples-react.md +39 -0
  570. package/docs-llm/dsl/selectors/series-by-type.md +10 -0
  571. package/docs-llm/dsl/selectors/series-by-types.md +6 -0
  572. package/docs-llm/ellipse/examples-json.md +5 -0
  573. package/docs-llm/ellipse/examples-react.md +5 -0
  574. package/docs-llm/ellipse/options.md +16 -0
  575. package/docs-llm/ellipse/overview.md +5 -0
  576. package/docs-llm/events/examples-json.md +705 -0
  577. package/docs-llm/events/examples-react.md +536 -0
  578. package/docs-llm/events/options.md +18 -0
  579. package/docs-llm/events/overview.md +5 -0
  580. package/docs-llm/filler-gauge/examples-json.md +376 -0
  581. package/docs-llm/filler-gauge/examples-react.md +274 -0
  582. package/docs-llm/filler-gauge/options.md +26 -0
  583. package/docs-llm/filler-gauge/overview.md +5 -0
  584. package/docs-llm/image/examples-json.md +39 -0
  585. package/docs-llm/image/examples-react.md +65 -0
  586. package/docs-llm/image/options.md +13 -0
  587. package/docs-llm/image/overview.md +5 -0
  588. package/docs-llm/line/examples-json.md +3724 -0
  589. package/docs-llm/line/examples-react.md +2683 -0
  590. package/docs-llm/line/options.md +95 -0
  591. package/docs-llm/line/overview.md +29 -0
  592. package/docs-llm/link-graph/examples-json.md +5 -0
  593. package/docs-llm/link-graph/examples-react.md +5 -0
  594. package/docs-llm/link-graph/options.md +26 -0
  595. package/docs-llm/link-graph/overview.md +16 -0
  596. package/docs-llm/map/examples-json.md +13973 -0
  597. package/docs-llm/map/examples-react.md +6154 -0
  598. package/docs-llm/map/options.md +22 -0
  599. package/docs-llm/map/overview.md +32 -0
  600. package/docs-llm/markdown/examples-json.md +63 -0
  601. package/docs-llm/markdown/examples-react.md +98 -0
  602. package/docs-llm/markdown/options.md +17 -0
  603. package/docs-llm/markdown/overview.md +5 -0
  604. package/docs-llm/marker-gauge/examples-json.md +436 -0
  605. package/docs-llm/marker-gauge/examples-react.md +367 -0
  606. package/docs-llm/marker-gauge/options.md +26 -0
  607. package/docs-llm/marker-gauge/overview.md +5 -0
  608. package/docs-llm/network-graph/examples-json.md +8843 -0
  609. package/docs-llm/network-graph/examples-react.md +7339 -0
  610. package/docs-llm/network-graph/options.md +50 -0
  611. package/docs-llm/network-graph/overview.md +28 -0
  612. package/docs-llm/parallel-coordinates/examples-json.md +8376 -0
  613. package/docs-llm/parallel-coordinates/examples-react.md +2771 -0
  614. package/docs-llm/parallel-coordinates/options.md +14 -0
  615. package/docs-llm/parallel-coordinates/overview.md +22 -0
  616. package/docs-llm/pie/examples-json.md +851 -0
  617. package/docs-llm/pie/examples-react.md +606 -0
  618. package/docs-llm/pie/options.md +34 -0
  619. package/docs-llm/pie/overview.md +23 -0
  620. package/docs-llm/process-tree/options.md +32 -0
  621. package/docs-llm/punchcard/examples-json.md +6134 -0
  622. package/docs-llm/punchcard/examples-react.md +4562 -0
  623. package/docs-llm/punchcard/options.md +33 -0
  624. package/docs-llm/punchcard/overview.md +5 -0
  625. package/docs-llm/pure-rich-text/options.md +28 -0
  626. package/docs-llm/rectangle/examples-json.md +5 -0
  627. package/docs-llm/rectangle/examples-react.md +5 -0
  628. package/docs-llm/rectangle/options.md +19 -0
  629. package/docs-llm/rectangle/overview.md +5 -0
  630. package/docs-llm/rich-text/examples-json.md +96 -0
  631. package/docs-llm/rich-text/examples-react.md +119 -0
  632. package/docs-llm/rich-text/options.md +28 -0
  633. package/docs-llm/rich-text/overview.md +5 -0
  634. package/docs-llm/sankey/examples-json.md +844 -0
  635. package/docs-llm/sankey/examples-react.md +546 -0
  636. package/docs-llm/sankey/options.md +19 -0
  637. package/docs-llm/sankey/overview.md +24 -0
  638. package/docs-llm/scatter/examples-json.md +4012 -0
  639. package/docs-llm/scatter/examples-react.md +3914 -0
  640. package/docs-llm/scatter/options.md +68 -0
  641. package/docs-llm/scatter/overview.md +25 -0
  642. package/docs-llm/single-value/examples-json.md +2613 -0
  643. package/docs-llm/single-value/examples-react.md +2296 -0
  644. package/docs-llm/single-value/options.md +49 -0
  645. package/docs-llm/single-value/overview.md +23 -0
  646. package/docs-llm/single-value-icon/examples-json.md +1686 -0
  647. package/docs-llm/single-value-icon/examples-react.md +1573 -0
  648. package/docs-llm/single-value-icon/options.md +43 -0
  649. package/docs-llm/single-value-icon/overview.md +5 -0
  650. package/docs-llm/single-value-radial/examples-json.md +1178 -0
  651. package/docs-llm/single-value-radial/examples-react.md +1028 -0
  652. package/docs-llm/single-value-radial/options.md +41 -0
  653. package/docs-llm/single-value-radial/overview.md +5 -0
  654. package/docs-llm/table/examples-json.md +5 -0
  655. package/docs-llm/table/examples-react.md +5 -0
  656. package/docs-llm/table/options.md +25 -0
  657. package/docs-llm/table/overview.md +24 -0
  658. package/docs-llm/timeline/examples-json.md +5 -0
  659. package/docs-llm/timeline/examples-react.md +5 -0
  660. package/docs-llm/timeline/options.md +27 -0
  661. package/docs-llm/timeline/overview.md +24 -0
  662. package/package.json +39 -30
  663. package/LICENSE.md +0 -449
package/SparkLine.js CHANGED
@@ -22,6 +22,18 @@ var __spreadValues = (a, b) => {
22
22
  }
23
23
  return a;
24
24
  };
25
+ var __objRest = (source, exclude) => {
26
+ var target = {};
27
+ for (var prop in source)
28
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
+ target[prop] = source[prop];
30
+ if (source != null && __getOwnPropSymbols)
31
+ for (var prop of __getOwnPropSymbols(source)) {
32
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
+ target[prop] = source[prop];
34
+ }
35
+ return target;
36
+ };
25
37
  var __export = (target, all) => {
26
38
  for (var name in all)
27
39
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -44,7 +56,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
44
56
  mod
45
57
  ));
46
58
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
47
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
48
59
 
49
60
  // src/SparkLine/index.ts
50
61
  var SparkLine_exports = {};
@@ -53,70 +64,61 @@ __export(SparkLine_exports, {
53
64
  });
54
65
  module.exports = __toCommonJS(SparkLine_exports);
55
66
 
56
- // esm-externals:prop-types
57
- var prop_types_exports = {};
58
- __export(prop_types_exports, {
59
- default: () => prop_types_default
60
- });
61
- var defaultImport = __toESM(require("prop-types"));
62
- __reExport(prop_types_exports, require("prop-types"));
63
- var prop_types_default = "default" in defaultImport ? defaultImport.default : defaultImport;
64
-
65
67
  // esm-externals:react
66
68
  var react_exports = {};
67
69
  __export(react_exports, {
68
70
  default: () => react_default
69
71
  });
70
- var defaultImport2 = __toESM(require("react"));
72
+ var defaultImport = __toESM(require("react"));
71
73
  __reExport(react_exports, require("react"));
72
- var react_default = "default" in defaultImport2 ? defaultImport2.default : defaultImport2;
74
+ var react_default = "default" in defaultImport ? defaultImport.default : defaultImport;
73
75
 
74
76
  // esm-externals:lodash
75
77
  var lodash_exports = {};
76
78
  __export(lodash_exports, {
77
79
  default: () => lodash_default
78
80
  });
79
- var defaultImport3 = __toESM(require("lodash"));
81
+ var defaultImport2 = __toESM(require("lodash"));
80
82
  __reExport(lodash_exports, require("lodash"));
81
- var lodash_default = "default" in defaultImport3 ? defaultImport3.default : defaultImport3;
83
+ var lodash_default = "default" in defaultImport2 ? defaultImport2.default : defaultImport2;
82
84
 
83
85
  // esm-externals:styled-components
84
86
  var styled_components_exports = {};
85
87
  __export(styled_components_exports, {
86
88
  default: () => styled_components_default
87
89
  });
88
- var defaultImport4 = __toESM(require("styled-components"));
90
+ var defaultImport3 = __toESM(require("styled-components"));
89
91
  __reExport(styled_components_exports, require("styled-components"));
90
- var styled_components_default = "default" in defaultImport4 ? defaultImport4.default : defaultImport4;
92
+ var styled_components_default = "default" in defaultImport3 ? defaultImport3.default : defaultImport3;
91
93
 
92
94
  // esm-externals:@splunk/react-ui/Popover
93
95
  var Popover_exports = {};
94
96
  __export(Popover_exports, {
95
97
  default: () => Popover_default
96
98
  });
97
- var defaultImport5 = __toESM(require("@splunk/react-ui/Popover"));
99
+ var defaultImport4 = __toESM(require("@splunk/react-ui/Popover"));
98
100
  __reExport(Popover_exports, require("@splunk/react-ui/Popover"));
99
- var Popover_default = "default" in defaultImport5 ? defaultImport5.default : defaultImport5;
101
+ var Popover_default = "default" in defaultImport4 ? defaultImport4.default : defaultImport4;
100
102
 
101
103
  // esm-externals:@splunk/ui-utils/i18n
102
104
  var i18n_exports = {};
103
105
  __export(i18n_exports, {
104
106
  default: () => i18n_default
105
107
  });
106
- var defaultImport6 = __toESM(require("@splunk/ui-utils/i18n"));
108
+ var defaultImport5 = __toESM(require("@splunk/ui-utils/i18n"));
107
109
  __reExport(i18n_exports, require("@splunk/ui-utils/i18n"));
108
- var i18n_default = "default" in defaultImport6 ? defaultImport6.default : defaultImport6;
110
+ var i18n_default = "default" in defaultImport5 ? defaultImport5.default : defaultImport5;
109
111
 
110
112
  // esm-externals:@splunk/ui-utils/id
111
113
  var id_exports = {};
112
114
  __export(id_exports, {
113
115
  default: () => id_default
114
116
  });
115
- var defaultImport7 = __toESM(require("@splunk/ui-utils/id"));
117
+ var defaultImport6 = __toESM(require("@splunk/ui-utils/id"));
116
118
  __reExport(id_exports, require("@splunk/ui-utils/id"));
117
- var id_default = "default" in defaultImport7 ? defaultImport7.default : defaultImport7;
119
+ var id_default = "default" in defaultImport6 ? defaultImport6.default : defaultImport6;
118
120
 
119
- // src/SparkLine/SparkLine.jsx
121
+ // src/SparkLine/SparkLine.tsx
120
122
  var StyledSvg = styled_components_default.svg`
121
123
  /* For fixing IE11 shows overflow part line issue */
122
124
  overflow: hidden;
@@ -128,233 +130,262 @@ var StyledTooltip = styled_components_default.div`
128
130
  min-width: 20px;
129
131
  `;
130
132
  var preventDefault = (e) => e.preventDefault();
131
- var _SparkLine = class _SparkLine extends react_exports.Component {
132
- constructor(props, ...rest) {
133
- super(props, ...rest);
134
- __publicField(this, "handleCursorMount", (el) => {
135
- this.setState({
136
- anchor: el
137
- });
138
- });
139
- this.state = {
140
- anchor: null,
141
- activeIndex: 0,
142
- hoveredIndex: null,
143
- componentIsFocused: false
144
- };
145
- this.titleId = (0, id_exports.createDOMID)("sparkline-title");
146
- this.pointRefs = [];
147
- this.containerRef = react_default.createRef();
148
- this.handleKeyDown = this.handleKeyDown.bind(this);
149
- this.handleMouseOver = this.handleMouseOver.bind(this);
150
- this.handleMouseLeave = this.handleMouseLeave.bind(this);
151
- this.handleFocus = this.handleFocus.bind(this);
152
- this.handleBlur = this.handleBlur.bind(this);
153
- }
154
- handleFocus(event) {
155
- const { target } = event;
156
- const { pointIndex: pointIndexStr } = target.dataset || {};
157
- const { activeIndex, componentIsFocused, hoveredIndex } = this.state;
158
- if (pointIndexStr !== void 0) {
159
- const pointIndex = Number.parseInt(pointIndexStr, 10);
160
- if (activeIndex !== pointIndex || !componentIsFocused || hoveredIndex !== null) {
161
- this.setState({
162
- activeIndex: pointIndex,
163
- hoveredIndex: null,
164
- componentIsFocused: true
165
- });
133
+ var PROP_KEYS = [
134
+ "acceptNull",
135
+ "data",
136
+ "elementRef",
137
+ "endDotCount",
138
+ "endDotFillColor",
139
+ "endDotRadius",
140
+ "endDotStroke",
141
+ "endDotStrokeWidth",
142
+ "fillColor",
143
+ "fillOpacity",
144
+ "cursorStroke",
145
+ "cursorStrokeWidth",
146
+ "cursorStrokeLinecap",
147
+ "cursorStrokeDasharray",
148
+ "height",
149
+ "isArea",
150
+ "lineColor",
151
+ "lineLength",
152
+ "lineStrokeWidth",
153
+ "showEndDot",
154
+ "showTooltip",
155
+ "yMax",
156
+ "yMin",
157
+ "width",
158
+ "title"
159
+ ];
160
+ var SparkLineInner = (_a) => {
161
+ var _b = _a, {
162
+ acceptNull = false,
163
+ data = [],
164
+ elementRef,
165
+ endDotCount = 0,
166
+ endDotFillColor = "white",
167
+ endDotRadius = 0,
168
+ endDotStroke = "black",
169
+ endDotStrokeWidth = 0,
170
+ fillColor = "#65a637",
171
+ fillOpacity = ".1",
172
+ cursorStroke = "#5184AF",
173
+ cursorStrokeWidth = 3,
174
+ cursorStrokeLinecap = "square",
175
+ cursorStrokeDasharray = "1, 5",
176
+ height,
177
+ isArea = false,
178
+ lineColor = "#65a637",
179
+ lineLength,
180
+ lineStrokeWidth = 1,
181
+ showEndDot = false,
182
+ showTooltip = true,
183
+ yMax,
184
+ yMin,
185
+ width,
186
+ title
187
+ } = _b, restProps = __objRest(_b, [
188
+ "acceptNull",
189
+ "data",
190
+ "elementRef",
191
+ "endDotCount",
192
+ "endDotFillColor",
193
+ "endDotRadius",
194
+ "endDotStroke",
195
+ "endDotStrokeWidth",
196
+ "fillColor",
197
+ "fillOpacity",
198
+ "cursorStroke",
199
+ "cursorStrokeWidth",
200
+ "cursorStrokeLinecap",
201
+ "cursorStrokeDasharray",
202
+ "height",
203
+ "isArea",
204
+ "lineColor",
205
+ "lineLength",
206
+ "lineStrokeWidth",
207
+ "showEndDot",
208
+ "showTooltip",
209
+ "yMax",
210
+ "yMin",
211
+ "width",
212
+ "title"
213
+ ]);
214
+ const [anchor, setAnchor] = (0, react_exports.useState)(null);
215
+ const [activeIndex, setActiveIndex] = (0, react_exports.useState)(0);
216
+ const [hoveredIndex, setHoveredIndex] = (0, react_exports.useState)(null);
217
+ const [componentIsFocused, setComponentIsFocused] = (0, react_exports.useState)(false);
218
+ const titleId = (0, react_exports.useMemo)(() => (0, id_exports.createDOMID)("sparkline-title"), []);
219
+ const pointRefs = (0, react_exports.useRef)([]);
220
+ const containerRef = (0, react_exports.useRef)(null);
221
+ const fillNull = (0, react_exports.useCallback)(() => data.map((value) => value != null ? value : 0), [data]);
222
+ const getMax = (0, react_exports.useCallback)(() => {
223
+ const dataMax = () => acceptNull ? (0, lodash_exports.max)(fillNull()) : (0, lodash_exports.max)(data);
224
+ return yMax != null ? yMax : dataMax();
225
+ }, [acceptNull, data, fillNull, yMax]);
226
+ const getMin = (0, react_exports.useCallback)(() => {
227
+ const dataMin = () => acceptNull ? (0, lodash_exports.min)(fillNull()) : (0, lodash_exports.min)(data);
228
+ return yMin != null ? yMin : dataMin();
229
+ }, [acceptNull, data, fillNull, yMin]);
230
+ const getXUnit = (0, react_exports.useCallback)(
231
+ (xMargin2) => {
232
+ const xUnit = (width - xMargin2 * 2) / (data.length > 1 ? data.length - 1 : 1);
233
+ return Math.max(0, xUnit);
234
+ },
235
+ [data.length, width]
236
+ );
237
+ const getYUnit = (0, react_exports.useCallback)(
238
+ (yMargin2) => {
239
+ const maxValue = getMax();
240
+ const minValue = getMin();
241
+ const yUnit = (height - yMargin2 * 2) / (maxValue - minValue || 2);
242
+ return Math.max(0, yUnit);
243
+ },
244
+ [getMax, getMin, height]
245
+ );
246
+ const getSegmentSets = (0, react_exports.useCallback)(
247
+ (segmentData, points2) => {
248
+ const lines = [];
249
+ const isolatedPoints = [];
250
+ let currentLine = [];
251
+ for (const [idx, p] of segmentData.entries()) {
252
+ if (!acceptNull && (0, lodash_exports.isNull)(p)) {
253
+ if (currentLine.length > 1) {
254
+ lines.push(currentLine);
255
+ } else if (currentLine.length === 1) {
256
+ isolatedPoints.push(currentLine[0]);
257
+ }
258
+ currentLine = [];
259
+ } else {
260
+ currentLine.push(points2[idx]);
261
+ }
166
262
  }
167
- } else if (this.pointRefs.length > 0) {
168
- const indexToFocus = activeIndex ? Math.min(this.pointRefs.length - 1, activeIndex) : 0;
169
- this.pointRefs[indexToFocus].focus();
170
- }
171
- }
172
- handleBlur(event) {
173
- if (this.containerRef.current && !this.containerRef.current.contains(event.relatedTarget)) {
174
- this.setState({ componentIsFocused: false });
175
- }
176
- }
177
- handleKeyDown(event) {
178
- const { data } = this.props;
179
- const { activeIndex } = this.state;
180
- const numPoints = data.length;
181
- if (numPoints === 0) {
182
- return;
183
- }
184
- const allowedKeys = ["ArrowLeft", "ArrowRight", "Home", "End"];
185
- if (!allowedKeys.includes(event.key)) {
186
- return;
263
+ if (currentLine.length > 1) {
264
+ lines.push(currentLine);
265
+ } else if (currentLine.length === 1) {
266
+ isolatedPoints.push(currentLine[0]);
267
+ }
268
+ return { lines, isolatedPoints };
269
+ },
270
+ [acceptNull]
271
+ );
272
+ const dataToPoints = (0, react_exports.useCallback)(
273
+ (xMargin2, yMargin2) => {
274
+ const xUnit = getXUnit(xMargin2);
275
+ const yUnit = getYUnit(yMargin2);
276
+ const maxValue = getMax();
277
+ const minValue = getMin();
278
+ return data.map((val, idx) => ({
279
+ x: idx * xUnit + xMargin2,
280
+ y: maxValue === minValue ? yUnit + yMargin2 : (maxValue - val) * yUnit + yMargin2
281
+ })).map((p) => [p.x, p.y]);
282
+ },
283
+ [data, getMax, getMin, getXUnit, getYUnit]
284
+ );
285
+ const handleFocus = (0, react_exports.useCallback)(
286
+ (event) => {
287
+ const { target } = event;
288
+ const { pointIndex: pointIndexStr } = target.dataset || {};
289
+ if (pointIndexStr !== void 0) {
290
+ const pointIndex = Number.parseInt(pointIndexStr, 10);
291
+ if (activeIndex !== pointIndex || !componentIsFocused || hoveredIndex !== null) {
292
+ setActiveIndex(pointIndex);
293
+ setHoveredIndex(null);
294
+ setComponentIsFocused(true);
295
+ }
296
+ } else if (pointRefs.current.length > 0) {
297
+ const indexToFocus = activeIndex ? Math.min(pointRefs.current.length - 1, activeIndex) : 0;
298
+ pointRefs.current[indexToFocus].focus();
299
+ }
300
+ },
301
+ [activeIndex, componentIsFocused, hoveredIndex]
302
+ );
303
+ const handleBlur = (0, react_exports.useCallback)((event) => {
304
+ if (containerRef.current && !containerRef.current.contains(event.relatedTarget)) {
305
+ setComponentIsFocused(false);
187
306
  }
188
- let newIndex;
189
- switch (event.key) {
190
- case "Home":
307
+ }, []);
308
+ const handleKeyDown = (0, react_exports.useCallback)(
309
+ (event) => {
310
+ const numPoints = data.length;
311
+ const allowedKeys = ["ArrowLeft", "ArrowRight", "Home", "End"];
312
+ if (!allowedKeys.includes(event.key)) {
313
+ return;
314
+ }
315
+ let newIndex;
316
+ if (event.key === "Home") {
191
317
  newIndex = 0;
192
- break;
193
- case "End":
318
+ } else if (event.key === "End") {
194
319
  newIndex = numPoints - 1;
195
- break;
196
- case "ArrowLeft":
320
+ } else if (event.key === "ArrowLeft") {
197
321
  newIndex = Math.max(0, activeIndex - 1);
198
- break;
199
- case "ArrowRight":
322
+ } else {
200
323
  newIndex = Math.min(numPoints - 1, activeIndex + 1);
201
- break;
202
- default:
203
- return;
204
- }
205
- if (newIndex !== activeIndex) {
206
- event.preventDefault();
207
- if (this.pointRefs[newIndex]) {
208
- this.pointRefs[newIndex].focus();
209
324
  }
210
- }
211
- }
212
- handleMouseOver(event) {
213
- const pointIndexStr = event.target.dataset && event.target.dataset.pointIndex;
214
- if (pointIndexStr !== void 0) {
215
- const pointIndex = Number.parseInt(pointIndexStr, 10);
216
- if (this.state.hoveredIndex !== pointIndex) {
217
- this.setState({ hoveredIndex: pointIndex });
325
+ if (newIndex !== activeIndex) {
326
+ event.preventDefault();
327
+ if (pointRefs.current[newIndex]) {
328
+ pointRefs.current[newIndex].focus();
329
+ }
218
330
  }
219
- }
220
- }
221
- handleMouseLeave() {
222
- if (this.state.hoveredIndex !== null) {
223
- this.setState({ hoveredIndex: null });
224
- }
225
- }
226
- getMax() {
227
- const { data, acceptNull, yMax } = this.props;
228
- const dataMax = () => acceptNull ? (0, lodash_exports.max)(this.fillNull()) : (0, lodash_exports.max)(data);
229
- return yMax === void 0 ? dataMax() : yMax;
230
- }
231
- getMin() {
232
- const { data, acceptNull, yMin } = this.props;
233
- const dataMin = () => acceptNull ? (0, lodash_exports.min)(this.fillNull()) : (0, lodash_exports.min)(data);
234
- return yMin === void 0 ? dataMin() : yMin;
235
- }
236
- /**
237
- * Gets unit value of x axis.
238
- * @param {Number} xMargin - margin of x axis.
239
- * @return {Number} unit value of x axis.
240
- * @private
241
- */
242
- getXUnit(xMargin) {
243
- const { data, width } = this.props;
244
- const xUnit = (width - xMargin * 2) / (data.length > 1 ? data.length - 1 : 1);
245
- return Math.max(0, xUnit);
246
- }
247
- /**
248
- * Gets unit value of y axis.
249
- * @param {String} yMargin - margin of y axis.
250
- * @return {Number} unit value of y axis.
251
- * @private
252
- */
253
- getYUnit(yMargin) {
254
- const { height } = this.props;
255
- const maxValue = this.getMax();
256
- const minValue = this.getMin();
257
- const yUnit = (height - yMargin * 2) / (maxValue - minValue || 2);
258
- return Math.max(0, yUnit);
259
- }
260
- /**
261
- * Get a list of arrays of points for drawing lines, based on acceptNull property
262
- * @method getSegmentSets
263
- * @param {Array} data
264
- * @param {Array} points
265
- * @returns {Object} Object containing lines (arrays of points for polylines) and isolatedPoints (single points surrounded by nulls)
266
- */
267
- getSegmentSets(data, points) {
268
- const { acceptNull } = this.props;
269
- const lines = [];
270
- const isolatedPoints = [];
271
- let currentLine = [];
272
- for (const [idx, p] of data.entries()) {
273
- if (!acceptNull && (0, lodash_exports.isNull)(p)) {
274
- if (currentLine.length > 1) {
275
- lines.push(currentLine);
276
- } else if (currentLine.length === 1) {
277
- isolatedPoints.push(currentLine[0]);
331
+ },
332
+ [activeIndex, data.length]
333
+ );
334
+ const handleMouseOver = (0, react_exports.useCallback)(
335
+ (event) => {
336
+ var _a2;
337
+ const pointIndexStr = (_a2 = event.target.dataset) == null ? void 0 : _a2.pointIndex;
338
+ if (pointIndexStr !== void 0) {
339
+ const pointIndex = Number.parseInt(pointIndexStr, 10);
340
+ if (hoveredIndex !== pointIndex) {
341
+ setHoveredIndex(pointIndex);
278
342
  }
279
- currentLine = [];
280
- } else {
281
- currentLine.push(points[idx]);
282
343
  }
344
+ },
345
+ [hoveredIndex]
346
+ );
347
+ const handleMouseLeave = (0, react_exports.useCallback)(() => {
348
+ if (hoveredIndex !== null) {
349
+ setHoveredIndex(null);
283
350
  }
284
- if (currentLine.length > 1) {
285
- lines.push(currentLine);
286
- } else if (currentLine.length === 1) {
287
- isolatedPoints.push(currentLine[0]);
288
- }
289
- return { lines, isolatedPoints };
290
- }
291
- /**
292
- * Utility for fill null value with number 0.
293
- * @private
294
- */
295
- fillNull() {
296
- const { data } = this.props;
297
- return data.map((value) => value === null ? 0 : value);
298
- }
299
- /**
300
- * Converts data to points in svg
301
- * @param {Number} xMargin - margin of x axis.
302
- * @param {Number} yMargin - margin of x axis.
303
- * @return {Array} points coordination.
304
- * @private
305
- */
306
- dataToPoints(xMargin, yMargin) {
307
- const { data } = this.props;
308
- const xUnit = this.getXUnit(xMargin);
309
- const yUnit = this.getYUnit(yMargin);
310
- const maxValue = this.getMax();
311
- const minValue = this.getMin();
312
- return data.map((val, idx) => ({
313
- x: idx * xUnit + xMargin,
314
- y: maxValue === minValue ? yUnit + yMargin : (maxValue - val) * yUnit + yMargin
315
- })).map((p) => [p.x, p.y]);
316
- }
317
- /**
318
- * Renders rect area for each datapoint for interactions and screen reader support
319
- * @param {Array} points - array of points coordination.
320
- * @param {Number} xMargin - margin of x axis.
321
- * @return {Array} array of svg rect objects
322
- * @private
323
- */
324
- renderRect(points, xMargin) {
325
- const { data, height, showTooltip } = this.props;
326
- const xUnit = this.getXUnit(xMargin);
327
- return points.map((p, i) => (
328
- /* eslint-disable react/no-array-index-key */
329
- /* @__PURE__ */ react_default.createElement(
330
- "rect",
331
- {
332
- key: `${i}_${p[0]}`,
333
- role: "graphics-symbol",
334
- "aria-label": `Value: ${data[i] === null ? "N/A" : data[i]}, point ${i + 1} of ${data.length}`,
335
- "data-test": `rect-${i}`,
336
- "data-point-index": i,
337
- tabIndex: showTooltip && this.state.activeIndex === i ? 0 : -1,
338
- ref: (el) => {
339
- this.pointRefs[i] = el;
340
- },
341
- x: Math.max(0, p[0] - xUnit / 2),
342
- y: 0,
343
- width: i === 0 && data.length !== 1 ? xUnit / 2 : xUnit,
344
- height,
345
- style: { fillOpacity: 0 },
346
- onMouseDown: preventDefault
347
- }
348
- )
349
- ));
350
- }
351
- // Renders area chart
352
- renderArea(points) {
353
- const { data, fillColor, fillOpacity, height, isArea } = this.props;
354
- if (!isArea || points.length === 0) {
351
+ }, [hoveredIndex]);
352
+ const handleCursorMount = (0, react_exports.useCallback)((el) => {
353
+ setAnchor(el);
354
+ }, []);
355
+ const renderRect = (points2, xMargin2) => {
356
+ const xUnit = getXUnit(xMargin2);
357
+ return points2.map((p, i) => {
358
+ var _a2;
359
+ return (
360
+ /* eslint-disable react/no-array-index-key */
361
+ /* @__PURE__ */ react_default.createElement(
362
+ "rect",
363
+ {
364
+ key: `${i}_${p[0]}`,
365
+ role: "graphics-symbol",
366
+ "aria-label": `Value: ${(_a2 = data[i]) != null ? _a2 : "N/A"}, point ${i + 1} of ${data.length}`,
367
+ "data-test": `rect-${i}`,
368
+ "data-point-index": i,
369
+ tabIndex: showTooltip && activeIndex === i ? 0 : -1,
370
+ ref: (el) => {
371
+ pointRefs.current[i] = el;
372
+ },
373
+ x: Math.max(0, p[0] - xUnit / 2),
374
+ y: 0,
375
+ width: i === 0 && data.length !== 1 ? xUnit / 2 : xUnit,
376
+ height,
377
+ style: { fillOpacity: 0 },
378
+ onMouseDown: preventDefault
379
+ }
380
+ )
381
+ );
382
+ });
383
+ };
384
+ const renderArea = (points2) => {
385
+ if (!isArea || points2.length === 0) {
355
386
  return null;
356
387
  }
357
- const { lines } = this.getSegmentSets(data, points);
388
+ const { lines } = getSegmentSets(data, points2);
358
389
  const segments = lines.map(
359
390
  (s) => s.concat([
360
391
  [s.at(-1)[0], height],
@@ -378,80 +409,56 @@ var _SparkLine = class _SparkLine extends react_exports.Component {
378
409
  }
379
410
  }
380
411
  )));
381
- }
382
- renderCursor(currentPointX, shouldRender) {
383
- const { cursorStroke, cursorStrokeWidth, cursorStrokeLinecap, cursorStrokeDasharray, height } = this.props;
384
- return shouldRender && /* @__PURE__ */ react_default.createElement(
385
- "line",
386
- {
387
- "data-test": "cursor",
388
- ref: this.handleCursorMount,
389
- x1: currentPointX,
390
- y1: 0,
391
- x2: currentPointX,
392
- y2: height,
393
- style: {
394
- stroke: cursorStroke,
395
- strokeWidth: cursorStrokeWidth,
396
- strokeLinecap: cursorStrokeLinecap,
397
- strokeDasharray: cursorStrokeDasharray
398
- }
412
+ };
413
+ const renderCursor = (currentPointX2, shouldRender) => shouldRender && /* @__PURE__ */ react_default.createElement(
414
+ "line",
415
+ {
416
+ "data-test": "cursor",
417
+ ref: handleCursorMount,
418
+ x1: currentPointX2,
419
+ y1: 0,
420
+ x2: currentPointX2,
421
+ y2: height,
422
+ style: {
423
+ stroke: cursorStroke,
424
+ strokeWidth: cursorStrokeWidth,
425
+ strokeLinecap: cursorStrokeLinecap,
426
+ strokeDasharray: cursorStrokeDasharray
399
427
  }
400
- );
401
- }
402
- renderTooltip(tooltipValue, isOpen) {
403
- const { anchor } = this.state;
404
- const displayValue = tooltipValue === null ? "-" : tooltipValue;
428
+ }
429
+ );
430
+ const renderTooltip = (tooltipValue2, isOpen) => {
431
+ const displayValue = tooltipValue2 === null ? "-" : tooltipValue2;
405
432
  return /* @__PURE__ */ react_default.createElement(
406
433
  Popover_default,
407
434
  {
408
435
  "data-test": "tooltip",
409
436
  open: isOpen,
410
437
  anchor,
411
- "data-test-value": tooltipValue,
438
+ "data-test-value": tooltipValue2,
412
439
  appearance: "inverted",
413
440
  defaultPlacement: "above",
414
441
  animation: false
415
442
  },
416
443
  /* @__PURE__ */ react_default.createElement(StyledTooltip, null, displayValue)
417
444
  );
418
- }
419
- /**
420
- * Renders one or more svg circles to highlight values on the sparkline
421
- * @method renderEndDots
422
- * @param {Array[Array[Number]]} points // x,y coordinates of values
423
- * @param {Number} dotsToShow // number of end dots to display
424
- * @param {Number} xMargin // used when calculating the dot radius
425
- * @returns {Object} React representation of SVG group
426
- * @private
427
- */
428
- renderEndDots(points, dotsToShow, xMargin) {
429
- const { endDotFillColor, endDotRadius, endDotStroke, endDotStrokeWidth } = this.props;
430
- return /* @__PURE__ */ react_default.createElement("g", null, points.slice(-dotsToShow).map((point) => /* @__PURE__ */ react_default.createElement(
431
- "circle",
432
- {
433
- key: `end-dot${point[0]}${point[1]}`,
434
- "data-test": "end-dot",
435
- cx: point[0],
436
- cy: point[1],
437
- r: endDotRadius === 0 ? xMargin : endDotRadius,
438
- style: {
439
- fill: endDotFillColor,
440
- stroke: endDotStroke,
441
- strokeWidth: endDotStrokeWidth
442
- }
445
+ };
446
+ const renderEndDots = (points2, dotsToShow2, xMargin2) => /* @__PURE__ */ react_default.createElement("g", null, points2.slice(-dotsToShow2).map((point) => /* @__PURE__ */ react_default.createElement(
447
+ "circle",
448
+ {
449
+ key: `end-dot${point[0]}${point[1]}`,
450
+ "data-test": "end-dot",
451
+ cx: point[0],
452
+ cy: point[1],
453
+ r: endDotRadius === 0 ? xMargin2 : endDotRadius,
454
+ style: {
455
+ fill: endDotFillColor,
456
+ stroke: endDotStroke,
457
+ strokeWidth: endDotStrokeWidth
443
458
  }
444
- )));
445
- }
446
- /**
447
- * Renders circles for isolated points (single data points surrounded by nulls)
448
- * These would otherwise be invisible since a line requires at least 2 points
449
- * @method renderIsolatedPoints
450
- * @param {Array} isolatedPoints - Array of [x, y] coordinates for isolated points
451
- * @returns {Object} SVG Group of circles
452
- */
453
- renderIsolatedPoints(isolatedPoints) {
454
- const { lineColor, lineStrokeWidth } = this.props;
459
+ }
460
+ )));
461
+ const renderIsolatedPoints = (isolatedPoints) => {
455
462
  if (!isolatedPoints || isolatedPoints.length === 0) {
456
463
  return null;
457
464
  }
@@ -469,20 +476,10 @@ var _SparkLine = class _SparkLine extends react_exports.Component {
469
476
  }
470
477
  }
471
478
  )));
472
- }
473
- /**
474
- * Renders the line(s) above the area graph
475
- * @method renderPolyline
476
- * @param {Array} points
477
- * @returns {Object} SVG Group of polylines and isolated points
478
- */
479
- renderPolyline(points) {
480
- const { data, lineColor, lineLength, lineStrokeWidth } = this.props;
481
- const linePoints = (0, lodash_exports.isFinite)(lineLength) && lineLength > 0 ? lineLength : points.length;
482
- const { lines, isolatedPoints } = this.getSegmentSets(
483
- data.slice(-linePoints),
484
- points.slice(-linePoints)
485
- );
479
+ };
480
+ const renderPolyline = (points2) => {
481
+ const linePoints = (0, lodash_exports.isFinite)(lineLength) && lineLength > 0 ? lineLength : points2.length;
482
+ const { lines, isolatedPoints } = getSegmentSets(data.slice(-linePoints), points2.slice(-linePoints));
486
483
  return /* @__PURE__ */ react_default.createElement("g", { "data-test": "sparkline" }, lines.map((lineData) => /* @__PURE__ */ react_default.createElement(
487
484
  "polyline",
488
485
  {
@@ -497,10 +494,18 @@ var _SparkLine = class _SparkLine extends react_exports.Component {
497
494
  },
498
495
  points: lineData.join(" ")
499
496
  }
500
- )), this.renderIsolatedPoints(isolatedPoints));
501
- }
502
- getInteractionState({ data, points, showTooltip, activeIndex, hoveredIndex, componentIsFocused }) {
503
- if (!showTooltip) {
497
+ )), renderIsolatedPoints(isolatedPoints));
498
+ };
499
+ const getInteractionState = ({
500
+ interactionData,
501
+ points: interactionPoints,
502
+ interactionShowTooltip,
503
+ interactionActiveIndex,
504
+ interactionHoveredIndex,
505
+ interactionComponentIsFocused
506
+ }) => {
507
+ var _a2;
508
+ if (!interactionShowTooltip) {
504
509
  return {
505
510
  currentPointX: null,
506
511
  tooltipValue: null,
@@ -508,199 +513,93 @@ var _SparkLine = class _SparkLine extends react_exports.Component {
508
513
  interactiveProps: {}
509
514
  };
510
515
  }
511
- const interactiveProps = {
512
- onKeyDown: this.handleKeyDown,
513
- onMouseOver: this.handleMouseOver,
514
- onMouseLeave: this.handleMouseLeave,
515
- onFocus: this.handleFocus,
516
- onBlur: this.handleBlur
516
+ const interactiveProps2 = {
517
+ onKeyDown: handleKeyDown,
518
+ onMouseOver: handleMouseOver,
519
+ onMouseLeave: handleMouseLeave,
520
+ onFocus: handleFocus,
521
+ onBlur: handleBlur
517
522
  };
518
- const isHovered = hoveredIndex !== null;
519
- const shouldDisplayInteractiveElements = (isHovered || componentIsFocused) && data.length > 0;
523
+ const isHovered = interactionHoveredIndex !== null;
524
+ const shouldDisplayInteractiveElements = (isHovered || interactionComponentIsFocused) && interactionData.length > 0;
520
525
  if (!shouldDisplayInteractiveElements) {
521
526
  return {
522
527
  currentPointX: null,
523
528
  tooltipValue: null,
524
529
  showCursorAndTooltip: false,
525
- interactiveProps
530
+ interactiveProps: interactiveProps2
526
531
  };
527
532
  }
528
- const displayIndex = isHovered ? hoveredIndex : activeIndex;
533
+ const displayIndex = isHovered ? interactionHoveredIndex : interactionActiveIndex;
529
534
  const isValidIndex = displayIndex !== null && displayIndex >= 0;
530
- const withinBounds = isValidIndex && displayIndex < data.length && displayIndex < points.length;
535
+ const withinBounds = isValidIndex && displayIndex < interactionData.length && displayIndex < interactionPoints.length;
531
536
  if (!withinBounds) {
532
537
  return {
533
538
  currentPointX: null,
534
539
  tooltipValue: null,
535
540
  showCursorAndTooltip: false,
536
- interactiveProps
541
+ interactiveProps: interactiveProps2
537
542
  };
538
543
  }
539
- const displayPointCoords = points[displayIndex];
540
- const currentPointX = displayPointCoords ? displayPointCoords[0] : null;
541
- const tooltipValue = data[displayIndex];
544
+ const displayPointCoords = interactionPoints[displayIndex];
545
+ const currentPointX2 = (_a2 = displayPointCoords == null ? void 0 : displayPointCoords[0]) != null ? _a2 : null;
546
+ const tooltipValue2 = interactionData[displayIndex];
542
547
  return {
543
- currentPointX,
544
- tooltipValue,
545
- showCursorAndTooltip: currentPointX !== null,
546
- interactiveProps
548
+ currentPointX: currentPointX2,
549
+ tooltipValue: tooltipValue2,
550
+ showCursorAndTooltip: currentPointX2 !== null,
551
+ interactiveProps: interactiveProps2
547
552
  };
553
+ };
554
+ if (data.length === 0) {
555
+ return null;
548
556
  }
549
- render() {
550
- const {
551
- data,
552
- elementRef,
553
- showTooltip,
554
- showEndDot,
555
- endDotRadius,
556
- endDotStrokeWidth,
557
- endDotCount,
558
- height,
559
- isArea,
560
- lineStrokeWidth,
561
- width,
562
- title
563
- } = this.props;
564
- const { activeIndex, hoveredIndex, componentIsFocused } = this.state;
565
- if (data.length === 0) {
557
+ if (pointRefs.current.length !== data.length) {
558
+ pointRefs.current.length = data.length;
559
+ }
560
+ const xMargin = endDotRadius + endDotStrokeWidth / 2;
561
+ const yMargin = Math.max(lineStrokeWidth / 2, endDotRadius + endDotStrokeWidth / 2);
562
+ const points = dataToPoints(xMargin, yMargin);
563
+ const dotsToShow = Math.max(showEndDot && 1, (0, lodash_exports.isFinite)(endDotCount) && endDotCount > 0 && endDotCount);
564
+ const { currentPointX, tooltipValue, showCursorAndTooltip, interactiveProps } = getInteractionState({
565
+ interactionData: data,
566
+ points,
567
+ interactionShowTooltip: showTooltip,
568
+ interactionActiveIndex: activeIndex,
569
+ interactionHoveredIndex: hoveredIndex,
570
+ interactionComponentIsFocused: componentIsFocused
571
+ });
572
+ const ariaLabel = title || (0, i18n_exports._)("Source count over time sparkline trend");
573
+ return /* @__PURE__ */ react_default.createElement(
574
+ "div",
575
+ __spreadValues(__spreadValues({
576
+ "data-test": "line",
577
+ "data-test-type": isArea ? "area" : "line",
578
+ ref: (el) => {
579
+ containerRef.current = el;
580
+ if (typeof elementRef === "function") {
581
+ elementRef(el);
582
+ } else if (elementRef && typeof elementRef === "object") {
583
+ elementRef.current = el;
584
+ }
585
+ }
586
+ }, interactiveProps), (0, lodash_exports.omit)(restProps, PROP_KEYS)),
587
+ /* @__PURE__ */ react_default.createElement(StyledSvg, { height, width, "aria-labelledby": titleId, "data-test": "sparkline-svg" }, /* @__PURE__ */ react_default.createElement("title", { id: titleId, "data-test": "sparkline-title" }, ariaLabel), /* @__PURE__ */ react_default.createElement("g", null, showTooltip ? renderCursor(currentPointX, showCursorAndTooltip) : null, renderPolyline(points), renderArea(points), dotsToShow ? renderEndDots(points, dotsToShow, xMargin) : null, renderRect(points, xMargin), showTooltip ? renderTooltip(tooltipValue, showCursorAndTooltip) : null))
588
+ );
589
+ };
590
+ var SparkLine = (_a) => {
591
+ var _b = _a, { data = [] } = _b, props = __objRest(_b, ["data"]);
592
+ if (true) {
593
+ if (!Array.isArray(data)) {
594
+ console.error("Data provided to SparkLine must be an array.");
566
595
  return null;
567
596
  }
568
- if (this.pointRefs.length !== data.length) {
569
- this.pointRefs.length = data.length;
597
+ if (!data.every((value) => value === null || (0, lodash_exports.isFinite)(value))) {
598
+ console.error("Data provided to SparkLine must contain finite numbers or null.");
599
+ return null;
570
600
  }
571
- const xMargin = endDotRadius + endDotStrokeWidth / 2;
572
- const yMargin = Math.max(lineStrokeWidth / 2, endDotRadius + endDotStrokeWidth / 2);
573
- const points = this.dataToPoints(xMargin, yMargin);
574
- const dotsToShow = Math.max(showEndDot && 1, (0, lodash_exports.isFinite)(endDotCount) && endDotCount > 0 && endDotCount);
575
- const { currentPointX, tooltipValue, showCursorAndTooltip, interactiveProps } = this.getInteractionState({
576
- data,
577
- points,
578
- showTooltip,
579
- activeIndex,
580
- hoveredIndex,
581
- componentIsFocused
582
- });
583
- const ariaLabel = title || (0, i18n_exports._)("Source count over time sparkline trend");
584
- return /* @__PURE__ */ react_default.createElement(
585
- "div",
586
- __spreadValues(__spreadValues({
587
- "data-test": "line",
588
- "data-test-type": isArea ? "area" : "line",
589
- ref: (el) => {
590
- this.containerRef.current = el;
591
- if (typeof elementRef === "function") {
592
- elementRef(el);
593
- } else if (elementRef && typeof elementRef === "object") {
594
- elementRef.current = el;
595
- }
596
- }
597
- }, interactiveProps), (0, lodash_exports.omit)(this.props, (0, lodash_exports.keys)(_SparkLine.propTypes))),
598
- /* @__PURE__ */ react_default.createElement(
599
- StyledSvg,
600
- {
601
- height,
602
- width,
603
- "aria-labelledby": this.titleId,
604
- "data-test": "sparkline-svg"
605
- },
606
- /* @__PURE__ */ react_default.createElement("title", { id: this.titleId, "data-test": "sparkline-title" }, ariaLabel),
607
- /* @__PURE__ */ react_default.createElement("g", null, showTooltip ? this.renderCursor(currentPointX, showCursorAndTooltip) : null, this.renderPolyline(points), this.renderArea(points), dotsToShow ? this.renderEndDots(points, dotsToShow, xMargin) : null, this.renderRect(points, xMargin), showTooltip ? this.renderTooltip(tooltipValue, showCursorAndTooltip) : null)
608
- )
609
- );
610
601
  }
602
+ return /* @__PURE__ */ react_default.createElement(SparkLineInner, __spreadValues({ data }, props));
611
603
  };
612
- __publicField(_SparkLine, "propTypes", {
613
- /**
614
- * If true, data can contain `null` as a value and is treated as `0`. If false, this throws error when data contains `null`.
615
- */
616
- acceptNull: prop_types_default.bool,
617
- /** Array of numbers. These data numbers are converted to points and show on sparkline. */
618
- data: (props) => {
619
- if (!(0, lodash_exports.isArray)(props.data)) {
620
- return new Error("Data provided to Sparkline must be an array.");
621
- }
622
- if (props.acceptNull && !props.data.every((value) => (0, lodash_exports.isNull)(value) || (0, lodash_exports.isFinite)(value))) {
623
- return new Error("Data provided to Sparkline must be finite numbers or null.");
624
- }
625
- if (!props.acceptNull && !props.data.every((value) => (0, lodash_exports.isFinite)(value))) {
626
- return new Error("Data provided to Sparkline must be finite numbers.");
627
- }
628
- return null;
629
- },
630
- /** A React ref which is set to the DOM element when the component mounts and `null` when it unmounts. */
631
- elementRef: prop_types_default.oneOfType([prop_types_default.func, prop_types_default.object]),
632
- /** Sets the number of end dots to display. When showEndDot is set to `true`, endDotCount is at least 1. If set to a positive value, this overrides showEndDot. */
633
- endDotCount: prop_types_default.number,
634
- /** Fills color to the end dot. */
635
- endDotFillColor: prop_types_default.string,
636
- /**
637
- * Sets end dot radius. End dot radius must be less than or equal to the margin. By default, its value equals the margin.
638
- */
639
- endDotRadius: prop_types_default.number,
640
- /** Sets end dot circle stroke color. */
641
- endDotStroke: prop_types_default.string,
642
- /** Sets end dot circle stroke width in pixels. */
643
- endDotStrokeWidth: prop_types_default.number,
644
- /** Fills color to area. */
645
- fillColor: prop_types_default.string,
646
- /** Fills opacity to area. Value must be in 0 ~ 1. */
647
- fillOpacity: prop_types_default.string,
648
- /** Sets cursor stroke color. */
649
- cursorStroke: prop_types_default.string,
650
- /** Sets cursor stroke width in pixels. */
651
- cursorStrokeWidth: prop_types_default.number,
652
- /** Sets cursor line cap style. */
653
- cursorStrokeLinecap: prop_types_default.oneOf(["butt", "round", "square"]),
654
- /** Sets cursor dash array style. */
655
- cursorStrokeDasharray: prop_types_default.string,
656
- /**
657
- * Container height. If this value is specified, sparkline calculates the size using this height. If height isn't specified,
658
- * sparkline figures out the container height by itself.
659
- */
660
- height: prop_types_default.number.isRequired,
661
- /** When set to `true`, sparkline shows as area. */
662
- isArea: prop_types_default.bool,
663
- /** The sparkline line color. */
664
- lineColor: prop_types_default.string,
665
- /** Allows user to draw only the last data points for the line. */
666
- lineLength: prop_types_default.number,
667
- /** The sparkline line stroke width in pixels. */
668
- lineStrokeWidth: prop_types_default.number,
669
- /** Enable to show end dot. */
670
- showEndDot: prop_types_default.bool,
671
- /** Enable to show tooltip. */
672
- showTooltip: prop_types_default.bool,
673
- /** Sets the data value range and maximum value shown on sparkline. */
674
- yMax: prop_types_default.number,
675
- /** Sets the data value range and minimum value shown on sparkline. */
676
- yMin: prop_types_default.number,
677
- /**
678
- * The width of the container.
679
- */
680
- width: prop_types_default.number.isRequired,
681
- /** Sets the a11y title text on sparkline. */
682
- title: prop_types_default.string
683
- });
684
- __publicField(_SparkLine, "defaultProps", {
685
- acceptNull: false,
686
- data: [],
687
- showTooltip: true,
688
- endDotCount: 0,
689
- showEndDot: false,
690
- endDotRadius: 0,
691
- endDotFillColor: "white",
692
- endDotStroke: "black",
693
- endDotStrokeWidth: 0,
694
- fillColor: "#65a637",
695
- fillOpacity: ".1",
696
- cursorStroke: "#5184AF",
697
- cursorStrokeWidth: 3,
698
- cursorStrokeLinecap: "square",
699
- cursorStrokeDasharray: "1, 5",
700
- isArea: false,
701
- lineColor: "#65a637",
702
- lineStrokeWidth: 1
703
- });
704
- var SparkLine = _SparkLine;
705
604
  var SparkLine_default = SparkLine;
706
605
  //# sourceMappingURL=SparkLine.js.map