@splunk/visualizations 28.7.0 → 28.9.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.
- package/Area.config.js +2 -4
- package/Area.config.js.map +2 -2
- package/Area.js +245 -147
- package/Area.js.map +4 -4
- package/Bar.config.js +2 -4
- package/Bar.config.js.map +2 -2
- package/Bar.js +246 -148
- package/Bar.js.map +4 -4
- package/Bubble/Bubble.d.ts +3 -1
- package/Bubble/Bubble.d.ts.map +1 -1
- package/Bubble.js +216 -108
- package/Bubble.js.map +4 -4
- package/CHANGELOG.external.md +56 -0
- package/ChoroplethSvg/ChoroplethSvg.d.ts +3 -1
- package/ChoroplethSvg/ChoroplethSvg.d.ts.map +1 -1
- package/ChoroplethSvg/PureChoroplethSvg/PureChoroplethSvg.d.ts.map +1 -1
- package/ChoroplethSvg/PureChoroplethSvg/SvgMutator.d.ts.map +1 -1
- package/ChoroplethSvg.js +638 -209
- package/ChoroplethSvg.js.map +4 -4
- package/Column.config.js +2 -4
- package/Column.config.js.map +2 -2
- package/Column.js +246 -148
- package/Column.js.map +4 -4
- package/Ellipse/Ellipse.d.ts +3 -1
- package/Ellipse/Ellipse.d.ts.map +1 -1
- package/Ellipse.js +216 -105
- package/Ellipse.js.map +4 -4
- package/Events/Events.d.ts +5 -3
- package/Events/Events.d.ts.map +1 -1
- package/Events/PureEvents/FieldSummaryTooltip.d.ts.map +1 -1
- package/Events/PureEvents/PureEvents.d.ts +0 -1
- package/Events/PureEvents/PureEvents.d.ts.map +1 -1
- package/Events.js +270 -157
- package/Events.js.map +4 -4
- package/FillerGauge.js +251 -143
- package/FillerGauge.js.map +4 -4
- package/Image/Image.d.ts +3 -1
- package/Image/Image.d.ts.map +1 -1
- package/Image.js +217 -106
- package/Image.js.map +4 -4
- package/Line.config.js +2 -4
- package/Line.config.js.map +2 -2
- package/Line.js +246 -148
- package/Line.js.map +4 -4
- package/LinkGraph/LinkGraph.d.ts +3 -1
- package/LinkGraph/LinkGraph.d.ts.map +1 -1
- package/LinkGraph/PureLinkGraph/PureLinkGraphUtils.d.ts.map +1 -1
- package/LinkGraph/PureLinkGraph/components/Node.d.ts.map +1 -1
- package/LinkGraph.config.js +1 -1
- package/LinkGraph.config.js.map +2 -2
- package/LinkGraph.js +802 -682
- package/LinkGraph.js.map +4 -4
- package/Map/Map.d.ts +10 -9
- package/Map/Map.d.ts.map +1 -1
- package/Map/PureMap/BubbleLayer.d.ts.map +1 -1
- package/Map/PureMap/ClusterLayer.d.ts.map +1 -1
- package/Map/PureMap/MapUtils.d.ts.map +1 -1
- package/Map/PureMap/MarkerWrapper.d.ts.map +1 -1
- package/Map/PureMap/PureMap.d.ts +8 -65
- package/Map/PureMap/PureMap.d.ts.map +1 -1
- package/Map.config.js +1 -1
- package/Map.config.js.map +2 -2
- package/Map.js +363 -313
- package/Map.js.map +4 -4
- package/Markdown/Markdown.d.ts +9 -1
- package/Markdown/Markdown.d.ts.map +1 -1
- package/Markdown/config.d.ts.map +1 -1
- package/Markdown.config.js +6 -1
- package/Markdown.config.js.map +2 -2
- package/Markdown.js +226 -95
- package/Markdown.js.map +3 -3
- package/MarkerGauge.js +247 -137
- package/MarkerGauge.js.map +4 -4
- package/NetworkGraph/PureNetworkGraph/PureNetworkGraph.d.ts.map +1 -1
- package/NetworkGraph/PureNetworkGraph/components/NetworkGraphSvg.d.ts +1 -0
- package/NetworkGraph/PureNetworkGraph/components/NetworkGraphSvg.d.ts.map +1 -1
- package/NetworkGraph/PureNetworkGraph/components/Node.d.ts +1 -0
- package/NetworkGraph/PureNetworkGraph/components/Node.d.ts.map +1 -1
- package/NetworkGraph/PureNetworkGraph/utils/networkGraphUtils.d.ts +3 -5
- package/NetworkGraph/PureNetworkGraph/utils/networkGraphUtils.d.ts.map +1 -1
- package/NetworkGraph.config.js +4 -2
- package/NetworkGraph.config.js.map +2 -2
- package/NetworkGraph.js +327 -188
- package/NetworkGraph.js.map +4 -4
- package/ParallelCoordinates/ParallelCoordinates.d.ts +3 -1
- package/ParallelCoordinates/ParallelCoordinates.d.ts.map +1 -1
- package/ParallelCoordinates.js +239 -128
- package/ParallelCoordinates.js.map +4 -4
- package/Pie/config.d.ts.map +1 -1
- package/Pie/pieUtils.d.ts.map +1 -1
- package/Pie.config.js +4 -2
- package/Pie.config.js.map +2 -2
- package/Pie.js +228 -125
- package/Pie.js.map +3 -3
- package/ProcessTree/ProcessTree.d.ts +3 -1
- package/ProcessTree/ProcessTree.d.ts.map +1 -1
- package/ProcessTree/PureProcessTree/PureProcessTree.d.ts +1 -0
- package/ProcessTree/PureProcessTree/PureProcessTree.d.ts.map +1 -1
- package/ProcessTree/PureProcessTree/components/ProcessTreeLeftPanel.d.ts +1 -0
- package/ProcessTree/PureProcessTree/components/ProcessTreeLeftPanel.d.ts.map +1 -1
- package/ProcessTree/PureProcessTree/hooks/useProcessTreeGraphData.d.ts +2 -1
- package/ProcessTree/PureProcessTree/hooks/useProcessTreeGraphData.d.ts.map +1 -1
- package/ProcessTree/PureProcessTree/utils/iconLoader.d.ts +2 -0
- package/ProcessTree/PureProcessTree/utils/iconLoader.d.ts.map +1 -1
- package/ProcessTree/PureProcessTree/utils/processTreeUtils.d.ts +5 -1
- package/ProcessTree/PureProcessTree/utils/processTreeUtils.d.ts.map +1 -1
- package/ProcessTree.js +435 -192
- package/ProcessTree.js.map +4 -4
- package/Punchcard/Punchcard.d.ts +3 -1
- package/Punchcard/Punchcard.d.ts.map +1 -1
- package/Punchcard.js +238 -129
- package/Punchcard.js.map +4 -4
- package/Rectangle/Rectangle.d.ts +3 -1
- package/Rectangle/Rectangle.d.ts.map +1 -1
- package/Rectangle.js +218 -116
- package/Rectangle.js.map +4 -4
- package/RichText/PureRichText/Editor/EditorPanel.d.ts +1 -4
- package/RichText/PureRichText/Editor/EditorPanel.d.ts.map +1 -1
- package/RichText/PureRichText/Editor/hooks/useConfigPanelFocus.d.ts +14 -0
- package/RichText/PureRichText/Editor/hooks/useConfigPanelFocus.d.ts.map +1 -0
- package/RichText/PureRichText/Editor/hooks/useEditorPanelSync.d.ts +15 -0
- package/RichText/PureRichText/Editor/hooks/useEditorPanelSync.d.ts.map +1 -0
- package/RichText/PureRichText/Editor/hooks/useLinkHandlers.d.ts.map +1 -1
- package/RichText/PureRichText/Editor/hooks/usePortalTarget.d.ts +9 -0
- package/RichText/PureRichText/Editor/hooks/usePortalTarget.d.ts.map +1 -0
- package/RichText/PureRichText/InnerEditor.d.ts +20 -4
- package/RichText/PureRichText/InnerEditor.d.ts.map +1 -1
- package/RichText/PureRichText/PureRichText.d.ts +21 -9
- package/RichText/PureRichText/PureRichText.d.ts.map +1 -1
- package/RichText/PureRichText/PureRichTextContext.d.ts +3 -6
- package/RichText/PureRichText/PureRichTextContext.d.ts.map +1 -1
- package/RichText/PureRichText/RichTextStyles.d.ts +5 -4
- package/RichText/PureRichText/RichTextStyles.d.ts.map +1 -1
- package/RichText/PureRichText/activeInstance.d.ts +6 -7
- package/RichText/PureRichText/activeInstance.d.ts.map +1 -1
- package/RichText/PureRichText/config.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useContentSave.d.ts +6 -0
- package/RichText/PureRichText/hooks/useContentSave.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useContentSync.d.ts +13 -1
- package/RichText/PureRichText/hooks/useContentSync.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useDashboardKeyboardNav.d.ts +2 -7
- package/RichText/PureRichText/hooks/useDashboardKeyboardNav.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useEditorSetup.d.ts +8 -4
- package/RichText/PureRichText/hooks/useEditorSetup.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useFakeHighlight.d.ts +1 -16
- package/RichText/PureRichText/hooks/useFakeHighlight.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useFocusHandlers.d.ts +2 -4
- package/RichText/PureRichText/hooks/useFocusHandlers.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useKeyboardShortcuts.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useMouseHandlers.d.ts +3 -7
- package/RichText/PureRichText/hooks/useMouseHandlers.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useStepFontSize.d.ts +2 -2
- package/RichText/PureRichText/hooks/useStepLineSpacing.d.ts +2 -3
- package/RichText/PureRichText/hooks/useStepLineSpacing.d.ts.map +1 -1
- package/RichText/PureRichText/hooks/useTokenMap.d.ts +31 -40
- package/RichText/PureRichText/hooks/useTokenMap.d.ts.map +1 -1
- package/RichText/PureRichText/renderers/ElementRenderer.d.ts +2 -5
- package/RichText/PureRichText/renderers/ElementRenderer.d.ts.map +1 -1
- package/RichText/PureRichText/renderers/LeafRenderer.d.ts +0 -4
- package/RichText/PureRichText/renderers/LeafRenderer.d.ts.map +1 -1
- package/RichText/PureRichText/types.d.ts +21 -0
- package/RichText/PureRichText/types.d.ts.map +1 -1
- package/RichText/PureRichText/utils/slateUtils.d.ts +26 -2
- package/RichText/PureRichText/utils/slateUtils.d.ts.map +1 -1
- package/RichText/RichText.d.ts +5 -1
- package/RichText/RichText.d.ts.map +1 -1
- package/RichText/config.d.ts.map +1 -1
- package/RichText.config.js +19 -1
- package/RichText.config.js.map +2 -2
- package/RichText.js +2311 -835
- package/RichText.js.map +4 -4
- package/Sankey/PureSankey/PureSankey.d.ts +2 -0
- package/Sankey/PureSankey/PureSankey.d.ts.map +1 -1
- package/Sankey/PureSankey/SankeyLink.d.ts +3 -1
- package/Sankey/PureSankey/SankeyLink.d.ts.map +1 -1
- package/Sankey/PureSankey/SankeyNode.d.ts +5 -2
- package/Sankey/PureSankey/SankeyNode.d.ts.map +1 -1
- package/Sankey/PureSankey/SankeyUtils.d.ts.map +1 -1
- package/Sankey/Sankey.d.ts +3 -1
- package/Sankey/Sankey.d.ts.map +1 -1
- package/Sankey.js +508 -219
- package/Sankey.js.map +4 -4
- package/Scatter.config.js +3 -5
- package/Scatter.config.js.map +2 -2
- package/Scatter.js +244 -146
- package/Scatter.js.map +4 -4
- package/SingleValue/SingleValue.d.ts.map +1 -1
- package/SingleValue.js +273 -173
- package/SingleValue.js.map +4 -4
- package/SingleValueBasic.js +4 -4
- package/SingleValueBasic.js.map +2 -2
- package/SingleValueIcon/SingleValueIcon.d.ts.map +1 -1
- package/SingleValueIcon.js +264 -164
- package/SingleValueIcon.js.map +4 -4
- package/SingleValueRadial.js +267 -167
- package/SingleValueRadial.js.map +4 -4
- package/SparkLine/SparkLine.d.ts.map +1 -1
- package/SparkLine.js.map +2 -2
- package/Table/PureTable.d.ts +2 -0
- package/Table/PureTable.d.ts.map +1 -1
- package/Table/Table.d.ts +2 -5
- package/Table/Table.d.ts.map +1 -1
- package/Table/config.d.ts.map +1 -1
- package/Table/hooks.d.ts.map +1 -1
- package/Table.config.js +8 -1
- package/Table.config.js.map +2 -2
- package/Table.js +374 -270
- package/Table.js.map +4 -4
- package/Timeline/PureTimeline/PureTimeline.d.ts +6 -5
- package/Timeline/PureTimeline/PureTimeline.d.ts.map +1 -1
- package/Timeline/PureTimeline/src/CursorPlugin.d.ts +1 -0
- package/Timeline/PureTimeline/src/CursorPlugin.d.ts.map +1 -1
- package/Timeline/PureTimeline/src/TimelineLegend.d.ts +10 -7
- package/Timeline/PureTimeline/src/TimelineLegend.d.ts.map +1 -1
- package/Timeline/PureTimeline/src/TimelineTooltip.d.ts +5 -1
- package/Timeline/PureTimeline/src/TimelineTooltip.d.ts.map +1 -1
- package/Timeline/PureTimeline/src/TimelineUplot.d.ts +19 -2
- package/Timeline/PureTimeline/src/TimelineUplot.d.ts.map +1 -1
- package/Timeline/PureTimeline/src/TimelineYAxis.d.ts.map +1 -1
- package/Timeline/PureTimeline/src/XAxisPlugin.d.ts +1 -0
- package/Timeline/PureTimeline/src/XAxisPlugin.d.ts.map +1 -1
- package/Timeline/PureTimeline/src/utils/timelineUtils.d.ts +8 -0
- package/Timeline/PureTimeline/src/utils/timelineUtils.d.ts.map +1 -1
- package/Timeline/Timeline.d.ts +3 -1
- package/Timeline/Timeline.d.ts.map +1 -1
- package/Timeline.config.js +2 -2
- package/Timeline.config.js.map +2 -2
- package/Timeline.js +713 -351
- package/Timeline.js.map +4 -4
- package/Treemap/PureTreemap/components/PureTreemap.d.ts +42 -0
- package/Treemap/PureTreemap/components/PureTreemap.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapBreadcrumb.d.ts +10 -0
- package/Treemap/PureTreemap/components/TreemapBreadcrumb.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapChildCell.d.ts +28 -0
- package/Treemap/PureTreemap/components/TreemapChildCell.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapHeader.d.ts +19 -0
- package/Treemap/PureTreemap/components/TreemapHeader.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapHoverTarget.d.ts +17 -0
- package/Treemap/PureTreemap/components/TreemapHoverTarget.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapLegend.d.ts +20 -0
- package/Treemap/PureTreemap/components/TreemapLegend.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapNode.d.ts +5 -0
- package/Treemap/PureTreemap/components/TreemapNode.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapParentNode.d.ts +10 -0
- package/Treemap/PureTreemap/components/TreemapParentNode.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapStandaloneNode.d.ts +6 -0
- package/Treemap/PureTreemap/components/TreemapStandaloneNode.d.ts.map +1 -0
- package/Treemap/PureTreemap/components/TreemapTooltip.d.ts +17 -0
- package/Treemap/PureTreemap/components/TreemapTooltip.d.ts.map +1 -0
- package/Treemap/PureTreemap/mockdata/data.d.ts +90 -0
- package/Treemap/PureTreemap/mockdata/data.d.ts.map +1 -0
- package/Treemap/PureTreemap/utils/treemapColorUtils.d.ts +67 -0
- package/Treemap/PureTreemap/utils/treemapColorUtils.d.ts.map +1 -0
- package/Treemap/PureTreemap/utils/treemapDataColorUtils.d.ts +5 -0
- package/Treemap/PureTreemap/utils/treemapDataColorUtils.d.ts.map +1 -0
- package/Treemap/PureTreemap/utils/treemapDataUtils.d.ts +14 -0
- package/Treemap/PureTreemap/utils/treemapDataUtils.d.ts.map +1 -0
- package/Treemap/PureTreemap/utils/treemapLayout.d.ts +49 -0
- package/Treemap/PureTreemap/utils/treemapLayout.d.ts.map +1 -0
- package/Treemap/PureTreemap/utils/treemapNodeUtils.d.ts +81 -0
- package/Treemap/PureTreemap/utils/treemapNodeUtils.d.ts.map +1 -0
- package/Treemap/PureTreemap/utils/treemapTypes.d.ts +37 -0
- package/Treemap/PureTreemap/utils/treemapTypes.d.ts.map +1 -0
- package/Treemap/PureTreemap/utils/treemapUtils.d.ts +76 -0
- package/Treemap/PureTreemap/utils/treemapUtils.d.ts.map +1 -0
- package/Treemap/Treemap.d.ts +14 -0
- package/Treemap/Treemap.d.ts.map +1 -0
- package/Treemap/config.d.ts +4 -0
- package/Treemap/config.d.ts.map +1 -0
- package/Treemap/index.d.ts +3 -0
- package/Treemap/index.d.ts.map +1 -0
- package/Treemap.config.js +465 -0
- package/Treemap.config.js.map +7 -0
- package/Treemap.js +6349 -0
- package/Treemap.js.map +7 -0
- package/common/Charting.js +8 -10
- package/common/Charting.js.map +2 -2
- package/common/ChartingApi.d.ts.map +1 -1
- package/common/ChartingApi.js +5 -2
- package/common/ChartingApi.js.map +2 -2
- package/common/DocExampleWithVizSandbox.js +3 -3
- package/common/DocExampleWithVizSandbox.js.map +2 -2
- package/common/GaugeMajorTicks.js.map +2 -2
- package/common/GaugeValueMarker.js +1 -0
- package/common/GaugeValueMarker.js.map +2 -2
- package/common/OptionsDoc.js +1 -1
- package/common/OptionsDoc.js.map +2 -2
- package/common/OverviewDoc.js +3 -3
- package/common/OverviewDoc.js.map +2 -2
- package/common/ThemesDoc.js.map +2 -2
- package/common/TimeSeriesChartWrapper.js +10 -9
- package/common/TimeSeriesChartWrapper.js.map +2 -2
- package/common/chartingUtils.d.ts.map +1 -1
- package/common/chartingUtils.js +12 -11
- package/common/chartingUtils.js.map +2 -2
- package/common/components/IconPlaceholder.d.ts.map +1 -1
- package/common/docUtils.d.ts.map +1 -1
- package/common/docUtils.js +16 -14
- package/common/docUtils.js.map +2 -2
- package/common/editorConfig/AxesChartDataDisplay.d.ts.map +1 -1
- package/common/gaugeUtils.d.ts.map +1 -1
- package/common/gaugeUtils.js +11 -5
- package/common/gaugeUtils.js.map +2 -2
- package/common/hocs/FixedSizeContainer.d.ts.map +1 -1
- package/common/hooks/useDynamicHeight.d.ts +67 -0
- package/common/hooks/useDynamicHeight.d.ts.map +1 -0
- package/common/hooks/useSorting.d.ts.map +1 -1
- package/common/interfaces/VizCategory.d.ts +2 -1
- package/common/interfaces/VizCategory.d.ts.map +1 -1
- package/common/interfaces/VizEvent.d.ts +7 -0
- package/common/interfaces/VizEvent.d.ts.map +1 -1
- package/common/utils/dataUtils.d.ts.map +1 -1
- package/common/utils/dataUtils.js +6 -10
- package/common/utils/dataUtils.js.map +2 -2
- package/common/utils/featureFlagUtils.js +2 -2
- package/common/utils/featureFlagUtils.js.map +2 -2
- package/common/utils/focusUtils.js +1 -1
- package/common/utils/focusUtils.js.map +2 -2
- package/common/utils/mapUtils.d.ts.map +1 -1
- package/common/utils/mapUtils.js +14 -18
- package/common/utils/mapUtils.js.map +2 -2
- package/common/utils/singleValueUtils.js +22 -25
- package/common/utils/singleValueUtils.js.map +2 -2
- package/common/utils/textUtils.d.ts.map +1 -1
- package/common/utils/textUtils.js +37 -23
- package/common/utils/textUtils.js.map +2 -2
- package/common/utils/trellisUtils.d.ts.map +1 -1
- package/common/utils/trellisUtils.js +18 -17
- package/common/utils/trellisUtils.js.map +2 -2
- package/common/utils/urlUtils.js.map +2 -2
- package/common/utils/visualizationTheme.d.ts +15 -0
- package/common/utils/visualizationTheme.d.ts.map +1 -0
- package/common/utils/visualizationTheme.js +72 -0
- package/common/utils/visualizationTheme.js.map +7 -0
- package/common/withDashboardViz.d.ts +3 -1
- package/common/withDashboardViz.d.ts.map +1 -1
- package/common/withDashboardViz.js +216 -105
- package/common/withDashboardViz.js.map +4 -4
- package/docs-llm/INDEX.md +1 -0
- package/docs-llm/area/options.md +84 -84
- package/docs-llm/bar/options.md +77 -77
- package/docs-llm/bubble/options.md +51 -51
- package/docs-llm/choropleth-svg/options.md +5 -5
- package/docs-llm/column/options.md +82 -82
- package/docs-llm/ellipse/options.md +6 -6
- package/docs-llm/events/options.md +6 -6
- package/docs-llm/filler-gauge/options.md +16 -16
- package/docs-llm/image/options.md +3 -3
- package/docs-llm/line/options.md +82 -82
- package/docs-llm/link-graph/options.md +16 -16
- package/docs-llm/map/options.md +12 -12
- package/docs-llm/markdown/options.md +7 -7
- package/docs-llm/marker-gauge/options.md +16 -16
- package/docs-llm/network-graph/options.md +39 -39
- package/docs-llm/parallel-coordinates/options.md +4 -4
- package/docs-llm/pie/examples-json.md +195 -0
- package/docs-llm/pie/examples-react.md +123 -0
- package/docs-llm/pie/options.md +23 -23
- package/docs-llm/process-tree/options.md +23 -22
- package/docs-llm/punchcard/options.md +23 -23
- package/docs-llm/pure-rich-text/options.md +6 -5
- package/docs-llm/rectangle/options.md +9 -9
- package/docs-llm/rich-text/options.md +6 -5
- package/docs-llm/sankey/options.md +9 -9
- package/docs-llm/scatter/options.md +57 -57
- package/docs-llm/single-value/options.md +39 -39
- package/docs-llm/single-value-icon/options.md +33 -33
- package/docs-llm/single-value-radial/options.md +31 -31
- package/docs-llm/table/options.md +14 -13
- package/docs-llm/timeline/options.md +17 -17
- package/docs-llm/treemap/examples-json.md +5 -0
- package/docs-llm/treemap/examples-react.md +5 -0
- package/docs-llm/treemap/options.md +26 -0
- package/docs-llm/treemap/overview.md +27 -0
- package/package.json +31 -30
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SparkLine.d.ts","sourceRoot":"","sources":["../src/SparkLine/SparkLine.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AAqBtE,UAAU,cAAc;IACpB,gIAAgI;IAChI,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0FAA0F;IAC1F,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACzB,yGAAyG;IACzG,UAAU,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACvC,kKAAkK;IAClK,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6HAA6H;IAC7H,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kCAAkC;IAClC,mBAAmB,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IAClD,oCAAoC;IACpC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qGAAqG;IACrG,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;
|
|
1
|
+
{"version":3,"file":"SparkLine.d.ts","sourceRoot":"","sources":["../src/SparkLine/SparkLine.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AAqBtE,UAAU,cAAc;IACpB,gIAAgI;IAChI,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0FAA0F;IAC1F,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACzB,yGAAyG;IACzG,UAAU,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACvC,kKAAkK;IAClK,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6HAA6H;IAC7H,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kCAAkC;IAClC,mBAAmB,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IAClD,oCAAoC;IACpC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qGAAqG;IACrG,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AA2kBD,QAAA,MAAM,SAAS,GAAI,oBAAyB,cAAc,sBAYzD,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
package/SparkLine.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["src/SparkLine/index.ts", "esm-externals:react", "esm-externals:lodash", "esm-externals:styled-components", "esm-externals:@splunk/react-ui/Popover", "esm-externals:@splunk/ui-utils/i18n", "esm-externals:@splunk/ui-utils/id", "src/SparkLine/SparkLine.tsx"],
|
|
4
|
-
"sourcesContent": ["export { default } from './SparkLine';\n", "\nimport * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"lodash\";\nexport * from \"lodash\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/Popover\";\nexport * from \"@splunk/react-ui/Popover\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/id\";\nexport * from \"@splunk/ui-utils/id\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useState, useRef, useCallback, useMemo } from 'react';\nimport { isFinite, isNull, max, min, omit } from 'lodash';\nimport styled from 'styled-components';\nimport Popover from '@splunk/react-ui/Popover';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { createDOMID } from '@splunk/ui-utils/id';\n\nconst StyledSvg = styled.svg`\n /* For fixing IE11 shows overflow part line issue */\n overflow: hidden;\n`;\n\nconst StyledTooltip = styled.div`\n padding: 3px 8px;\n font-size: 12px;\n text-align: center;\n min-width: 20px;\n`;\n\nconst preventDefault = (e: React.MouseEvent) => e.preventDefault();\n\ninterface SparkLineProps {\n /** If true, data can contain `null` as a value and is treated as `0`. If false, this throws error when data contains `null`. */\n acceptNull?: boolean;\n /** Array of numbers. These data numbers are converted to points and show on sparkline. */\n data?: (number | null)[];\n /** A React ref which is set to the DOM element when the component mounts and `null` when it unmounts. */\n elementRef?: React.Ref<HTMLDivElement>;\n /** 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. */\n endDotCount?: number;\n /** Fills color to the end dot. */\n endDotFillColor?: string;\n /** Sets end dot radius. End dot radius must be less than or equal to the margin. By default, its value equals the margin. */\n endDotRadius?: number;\n /** Sets end dot circle stroke color. */\n endDotStroke?: string;\n /** Sets end dot circle stroke width in pixels. */\n endDotStrokeWidth?: number;\n /** Fills color to area. */\n fillColor?: string;\n /** Fills opacity to area. Value must be in 0 ~ 1. */\n fillOpacity?: string;\n /** Sets cursor stroke color. */\n cursorStroke?: string;\n /** Sets cursor stroke width in pixels. */\n cursorStrokeWidth?: number;\n /** Sets cursor line cap style. */\n cursorStrokeLinecap?: 'butt' | 'round' | 'square';\n /** Sets cursor dash array style. */\n cursorStrokeDasharray?: string;\n /** Container height. If this value is specified, sparkline calculates the size using this height. */\n height: number;\n /** When set to `true`, sparkline shows as area. */\n isArea?: boolean;\n /** The sparkline line color. */\n lineColor?: string;\n /** Allows user to draw only the last data points for the line. */\n lineLength?: number;\n /** The sparkline line stroke width in pixels. */\n lineStrokeWidth?: number;\n /** Enable to show end dot. */\n showEndDot?: boolean;\n /** Enable to show tooltip. */\n showTooltip?: boolean;\n /** Sets the data value range and maximum value shown on sparkline. */\n yMax?: number;\n /** Sets the data value range and minimum value shown on sparkline. */\n yMin?: number;\n /** The width of the container. */\n width: number;\n /** Sets the a11y title text on sparkline. */\n title?: string;\n [key: string]: unknown;\n}\n\nconst PROP_KEYS = [\n 'acceptNull',\n 'data',\n 'elementRef',\n 'endDotCount',\n 'endDotFillColor',\n 'endDotRadius',\n 'endDotStroke',\n 'endDotStrokeWidth',\n 'fillColor',\n 'fillOpacity',\n 'cursorStroke',\n 'cursorStrokeWidth',\n 'cursorStrokeLinecap',\n 'cursorStrokeDasharray',\n 'height',\n 'isArea',\n 'lineColor',\n 'lineLength',\n 'lineStrokeWidth',\n 'showEndDot',\n 'showTooltip',\n 'yMax',\n 'yMin',\n 'width',\n 'title',\n];\n\nconst SparkLineInner = ({\n acceptNull = false,\n data = [],\n elementRef,\n endDotCount = 0,\n endDotFillColor = 'white',\n endDotRadius = 0,\n endDotStroke = 'black',\n endDotStrokeWidth = 0,\n fillColor = '#65a637',\n fillOpacity = '.1',\n cursorStroke = '#5184AF',\n cursorStrokeWidth = 3,\n cursorStrokeLinecap = 'square',\n cursorStrokeDasharray = '1, 5',\n height,\n isArea = false,\n lineColor = '#65a637',\n lineLength,\n lineStrokeWidth = 1,\n showEndDot = false,\n showTooltip = true,\n yMax,\n yMin,\n width,\n title,\n ...restProps\n}: SparkLineProps) => {\n const [anchor, setAnchor] = useState(null);\n const [activeIndex, setActiveIndex] = useState(0);\n const [hoveredIndex, setHoveredIndex] = useState(null);\n const [componentIsFocused, setComponentIsFocused] = useState(false);\n\n const titleId = useMemo(() => createDOMID('sparkline-title'), []);\n const pointRefs = useRef([]);\n const containerRef = useRef(null);\n\n // --- Helper functions ---\n\n const fillNull = useCallback(() => data.map(value => value ?? 0), [data]);\n\n const getMax = useCallback(() => {\n const dataMax = () => (acceptNull ? max(fillNull()) : max(data));\n return yMax ?? dataMax();\n }, [acceptNull, data, fillNull, yMax]);\n\n const getMin = useCallback(() => {\n const dataMin = () => (acceptNull ? min(fillNull()) : min(data));\n return yMin ?? dataMin();\n }, [acceptNull, data, fillNull, yMin]);\n\n /**\n * Gets unit value of x axis.\n * @param {Number} xMargin - margin of x axis.\n * @return {Number} unit value of x axis.\n * @private\n */\n const getXUnit = useCallback(\n xMargin => {\n // Calculate xUnit. Width substract the left margin and right margin, then divide by data length.\n const xUnit = (width - xMargin * 2) / (data.length > 1 ? data.length - 1 : 1);\n return Math.max(0, xUnit);\n },\n [data.length, width]\n );\n\n /**\n * Gets unit value of y axis.\n * @param {String} yMargin - margin of y axis.\n * @return {Number} unit value of y axis.\n * @private\n */\n const getYUnit = useCallback(\n yMargin => {\n const maxValue = getMax();\n const minValue = getMin();\n\n // Calculate yUnit. Height substract the upper margin and bottom margin, then divide by value range of values in data.\n // if the maxValue equals minValue, means all values in data are the same, then, we need to set the YUnit at the mid value of Height.\n // So, draws sparkline right in the mid of the container.\n const yUnit = (height - yMargin * 2) / (maxValue - minValue || 2);\n return Math.max(0, yUnit);\n },\n [getMax, getMin, height]\n );\n\n /**\n * Get a list of arrays of points for drawing lines, based on acceptNull property\n * @method getSegmentSets\n * @param {Array} segmentData\n * @param {Array} points\n * @returns {Object} Object containing lines (arrays of points for polylines) and isolatedPoints (single points surrounded by nulls)\n */\n const getSegmentSets = useCallback(\n (segmentData, points) => {\n const lines = [];\n const isolatedPoints = [];\n let currentLine = [];\n // eslint-disable-next-line\n for (const [idx, p] of segmentData.entries()) {\n // Found null data\n if (!acceptNull && isNull(p)) {\n // need at least 2 points to draw a segment\n if (currentLine.length > 1) {\n lines.push(currentLine);\n } else if (currentLine.length === 1) {\n // Single point surrounded by nulls - this is an isolated point\n isolatedPoints.push(currentLine[0]);\n }\n // reset for the next segment\n currentLine = [];\n } else {\n // data is good, add point data\n currentLine.push(points[idx]);\n }\n }\n\n // Add the last line or isolated point\n if (currentLine.length > 1) {\n lines.push(currentLine);\n } else if (currentLine.length === 1) {\n isolatedPoints.push(currentLine[0]);\n }\n\n return { lines, isolatedPoints };\n },\n [acceptNull]\n );\n\n /**\n * Converts data to points in svg\n * @param {Number} xMargin - margin of x axis.\n * @param {Number} yMargin - margin of x axis.\n * @return {Array} points coordination.\n * @private\n */\n const dataToPoints = useCallback(\n (xMargin, yMargin) => {\n const xUnit = getXUnit(xMargin);\n const yUnit = getYUnit(yMargin);\n const maxValue = getMax();\n const minValue = getMin();\n return data\n .map((val, idx) => ({\n x: idx * xUnit + xMargin,\n y: maxValue === minValue ? yUnit + yMargin : (maxValue - val) * yUnit + yMargin,\n }))\n .map(p => [p.x, p.y]);\n },\n [data, getMax, getMin, getXUnit, getYUnit]\n );\n\n // --- Event handlers ---\n\n const handleFocus = useCallback(\n event => {\n const { target } = event;\n const { pointIndex: pointIndexStr } = target.dataset || {};\n\n if (pointIndexStr !== undefined) {\n // focus event propagated from a datapoint\n const pointIndex = Number.parseInt(pointIndexStr, 10);\n if (activeIndex !== pointIndex || !componentIsFocused || hoveredIndex !== null) {\n setActiveIndex(pointIndex);\n setHoveredIndex(null);\n setComponentIsFocused(true);\n }\n } else if (pointRefs.current.length > 0) {\n // focus set programmatically or by user agent\n const indexToFocus = activeIndex ? Math.min(pointRefs.current.length - 1, activeIndex) : 0;\n pointRefs.current[indexToFocus].focus();\n }\n },\n [activeIndex, componentIsFocused, hoveredIndex]\n );\n\n const handleBlur = useCallback(event => {\n if (containerRef.current && !containerRef.current.contains(event.relatedTarget)) {\n setComponentIsFocused(false);\n }\n }, []);\n\n const handleKeyDown = useCallback(\n event => {\n const numPoints = data.length;\n\n const allowedKeys = ['ArrowLeft', 'ArrowRight', 'Home', 'End'];\n if (!allowedKeys.includes(event.key)) {\n return;\n }\n\n let newIndex;\n if (event.key === 'Home') {\n newIndex = 0;\n } else if (event.key === 'End') {\n newIndex = numPoints - 1;\n } else if (event.key === 'ArrowLeft') {\n newIndex = Math.max(0, activeIndex - 1);\n } else {\n newIndex = Math.min(numPoints - 1, activeIndex + 1);\n }\n\n if (newIndex !== activeIndex) {\n event.preventDefault();\n if (pointRefs.current[newIndex]) {\n pointRefs.current[newIndex].focus();\n }\n }\n },\n [activeIndex, data.length]\n );\n\n const handleMouseOver = useCallback(\n event => {\n const pointIndexStr = event.target.dataset?.pointIndex;\n if (pointIndexStr !== undefined) {\n const pointIndex = Number.parseInt(pointIndexStr, 10);\n if (hoveredIndex !== pointIndex) {\n setHoveredIndex(pointIndex);\n }\n }\n },\n [hoveredIndex]\n );\n\n const handleMouseLeave = useCallback(() => {\n if (hoveredIndex !== null) {\n setHoveredIndex(null);\n }\n }, [hoveredIndex]);\n\n const handleCursorMount = useCallback(el => {\n setAnchor(el);\n }, []);\n\n // --- Render helpers ---\n\n /**\n * Renders rect area for each datapoint for interactions and screen reader support\n * @param {Array} points - array of points coordination.\n * @param {Number} xMargin - margin of x axis.\n * @return {Array} array of svg rect objects\n * @private\n */\n const renderRect = (points, xMargin) => {\n const xUnit = getXUnit(xMargin);\n\n return points.map((p, i) => (\n /* eslint-disable react/no-array-index-key */\n <rect\n key={`${i}_${p[0]}`}\n role=\"graphics-symbol\"\n aria-label={`Value: ${data[i] ?? 'N/A'}, point ${i + 1} of ${data.length}`}\n data-test={`rect-${i}`}\n data-point-index={i}\n tabIndex={showTooltip && activeIndex === i ? 0 : -1}\n ref={el => {\n pointRefs.current[i] = el;\n }}\n x={Math.max(0, p[0] - xUnit / 2)}\n y={0}\n width={i === 0 && data.length !== 1 ? xUnit / 2 : xUnit}\n height={height}\n style={{ fillOpacity: 0 }}\n onMouseDown={preventDefault} // do not take focus on click\n />\n /* eslint-enable react/no-array-index-key */\n ));\n };\n\n // Renders area chart\n const renderArea = points => {\n if (!isArea || points.length === 0) {\n return null;\n }\n\n const { lines } = getSegmentSets(data, points);\n const segments = lines.map(s =>\n s.concat([\n [s.at(-1)[0], height], // down to bottom of graph\n [s[0][0], height], // over to below first data point\n s[0], // up to first data point to close the box\n ])\n );\n\n return (\n <g data-test=\"area\">\n {segments.map(s => (\n <polyline\n key={`area${s.join('')}`}\n points={s.join(' ')}\n data-test=\"area-line\"\n style={{\n fill: fillColor,\n fillOpacity,\n strokeWidth: '0',\n }}\n />\n ))}\n </g>\n );\n };\n\n const renderCursor = (currentPointX, shouldRender) =>\n shouldRender && (\n <line\n data-test=\"cursor\"\n ref={handleCursorMount}\n x1={currentPointX}\n y1={0}\n x2={currentPointX}\n y2={height}\n style={{\n stroke: cursorStroke,\n strokeWidth: cursorStrokeWidth,\n strokeLinecap: cursorStrokeLinecap as React.CSSProperties['strokeLinecap'],\n strokeDasharray: cursorStrokeDasharray,\n }}\n />\n );\n\n const renderTooltip = (tooltipValue, isOpen) => {\n // Display '-' for null values, consistent with canvas chart tooltips\n const displayValue = tooltipValue === null ? '-' : tooltipValue;\n\n return (\n <Popover\n data-test=\"tooltip\"\n open={isOpen}\n anchor={anchor}\n data-test-value={tooltipValue}\n appearance=\"inverted\"\n defaultPlacement=\"above\"\n animation={false}\n >\n <StyledTooltip>{displayValue}</StyledTooltip>\n </Popover>\n );\n };\n\n /**\n * Renders one or more svg circles to highlight values on the sparkline\n * @method renderEndDots\n * @param {Array[Array[Number]]} points // x,y coordinates of values\n * @param {Number} dotsToShow // number of end dots to display\n * @param {Number} xMargin // used when calculating the dot radius\n * @returns {Object} React representation of SVG group\n * @private\n */\n const renderEndDots = (points, dotsToShow, xMargin) => (\n <g>\n {points.slice(-dotsToShow).map(point => (\n <circle\n key={`end-dot${point[0]}${point[1]}`}\n data-test=\"end-dot\"\n cx={point[0]}\n cy={point[1]}\n r={endDotRadius === 0 ? xMargin : endDotRadius}\n style={{\n fill: endDotFillColor,\n stroke: endDotStroke,\n strokeWidth: endDotStrokeWidth,\n }}\n />\n ))}\n </g>\n );\n\n /**\n * Renders circles for isolated points (single data points surrounded by nulls)\n * These would otherwise be invisible since a line requires at least 2 points\n * @method renderIsolatedPoints\n * @param {Array} isolatedPoints - Array of [x, y] coordinates for isolated points\n * @returns {Object} SVG Group of circles\n */\n const renderIsolatedPoints = isolatedPoints => {\n if (!isolatedPoints || isolatedPoints.length === 0) {\n return null;\n }\n\n // Use a radius slightly larger than line width for visibility\n const radius = lineStrokeWidth + 0.5;\n\n return (\n <g data-test=\"isolated-points\">\n {isolatedPoints.map(point => (\n <circle\n key={`isolated-${point[0]}-${point[1]}`}\n data-test=\"isolated-point\"\n cx={point[0]}\n cy={point[1]}\n r={radius}\n style={{\n fill: lineColor,\n }}\n />\n ))}\n </g>\n );\n };\n\n /**\n * Renders the line(s) above the area graph\n * @method renderPolyline\n * @param {Array} points\n * @returns {Object} SVG Group of polylines and isolated points\n */\n const renderPolyline = points => {\n const linePoints = isFinite(lineLength) && lineLength > 0 ? lineLength : points.length;\n const { lines, isolatedPoints } = getSegmentSets(data.slice(-linePoints), points.slice(-linePoints));\n\n return (\n <g data-test=\"sparkline\">\n {lines.map(lineData => (\n <polyline\n key={`line${lineData.join('')}`}\n data-test=\"polyline\"\n style={{\n fill: 'none',\n stroke: lineColor,\n strokeWidth: lineStrokeWidth,\n strokeLinejoin: 'round',\n strokeLinecap: 'round',\n }}\n points={lineData.join(' ')}\n />\n ))}\n {renderIsolatedPoints(isolatedPoints)}\n </g>\n );\n };\n\n const getInteractionState = ({\n interactionData,\n points: interactionPoints,\n interactionShowTooltip,\n interactionActiveIndex,\n interactionHoveredIndex,\n interactionComponentIsFocused,\n }) => {\n if (!interactionShowTooltip) {\n return {\n currentPointX: null,\n tooltipValue: null,\n showCursorAndTooltip: false,\n interactiveProps: {},\n };\n }\n\n const interactiveProps = {\n onKeyDown: handleKeyDown,\n onMouseOver: handleMouseOver,\n onMouseLeave: handleMouseLeave,\n onFocus: handleFocus,\n onBlur: handleBlur,\n };\n\n const isHovered = interactionHoveredIndex !== null;\n const shouldDisplayInteractiveElements =\n (isHovered || interactionComponentIsFocused) && interactionData.length > 0;\n\n if (!shouldDisplayInteractiveElements) {\n return {\n currentPointX: null,\n tooltipValue: null,\n showCursorAndTooltip: false,\n interactiveProps,\n };\n }\n\n const displayIndex = isHovered ? interactionHoveredIndex : interactionActiveIndex;\n const isValidIndex = displayIndex !== null && displayIndex >= 0;\n const withinBounds =\n isValidIndex && displayIndex < interactionData.length && displayIndex < interactionPoints.length;\n\n if (!withinBounds) {\n return {\n currentPointX: null,\n tooltipValue: null,\n showCursorAndTooltip: false,\n interactiveProps,\n };\n }\n\n const displayPointCoords = interactionPoints[displayIndex];\n const currentPointX = displayPointCoords?.[0] ?? null;\n const tooltipValue = interactionData[displayIndex];\n\n return {\n currentPointX,\n tooltipValue,\n showCursorAndTooltip: currentPointX !== null,\n interactiveProps,\n };\n };\n\n // --- Render ---\n\n if (data.length === 0) {\n return null;\n }\n\n if (pointRefs.current.length !== data.length) {\n // remove stale point refs when data changes\n pointRefs.current.length = data.length;\n }\n\n // Calculate horizontal and vertical margin so that fit line or end dot.\n const xMargin = endDotRadius + endDotStrokeWidth / 2;\n const yMargin = Math.max(lineStrokeWidth / 2, endDotRadius + endDotStrokeWidth / 2);\n\n const points = dataToPoints(xMargin, yMargin);\n\n const dotsToShow = Math.max(showEndDot && 1, isFinite(endDotCount) && endDotCount > 0 && endDotCount);\n\n const { currentPointX, tooltipValue, showCursorAndTooltip, interactiveProps } = getInteractionState({\n interactionData: data,\n points,\n interactionShowTooltip: showTooltip,\n interactionActiveIndex: activeIndex,\n interactionHoveredIndex: hoveredIndex,\n interactionComponentIsFocused: componentIsFocused,\n });\n\n const ariaLabel = title || _('Source count over time sparkline trend');\n\n return (\n <div\n data-test=\"line\"\n data-test-type={isArea ? 'area' : 'line'}\n ref={el => {\n containerRef.current = el;\n if (typeof elementRef === 'function') {\n elementRef(el);\n } else if (elementRef && typeof elementRef === 'object') {\n (elementRef as React.MutableRefObject<HTMLDivElement | null>).current = el; // eslint-disable-line no-param-reassign\n }\n }}\n {...interactiveProps}\n {...omit(restProps, PROP_KEYS)}\n >\n <StyledSvg height={height} width={width} aria-labelledby={titleId} data-test=\"sparkline-svg\">\n <title id={titleId} data-test=\"sparkline-title\">\n {ariaLabel}\n </title>\n <g>\n {showTooltip ? renderCursor(currentPointX, showCursorAndTooltip) : null}\n {renderPolyline(points)}\n {renderArea(points)}\n {dotsToShow ? renderEndDots(points, dotsToShow, xMargin) : null}\n {renderRect(points, xMargin)}\n {showTooltip ? renderTooltip(tooltipValue, showCursorAndTooltip) : null}\n </g>\n </StyledSvg>\n </div>\n );\n};\n\nconst SparkLine = ({ data = [], ...props }: SparkLineProps) => {\n if (process.env.NODE_ENV !== 'production') {\n if (!Array.isArray(data)) {\n console.error('Data provided to SparkLine must be an array.');\n return null;\n }\n if (!data.every(value => value === null || isFinite(value))) {\n console.error('Data provided to SparkLine must contain finite numbers or null.');\n return null;\n }\n }\n return <SparkLineInner data={data} {...props} />;\n};\n\nexport default SparkLine;\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["export { default } from './SparkLine';\n", "\nimport * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"lodash\";\nexport * from \"lodash\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/Popover\";\nexport * from \"@splunk/react-ui/Popover\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/id\";\nexport * from \"@splunk/ui-utils/id\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useState, useRef, useCallback, useMemo } from 'react';\nimport { isFinite, isNull, max, min, omit } from 'lodash';\nimport styled from 'styled-components';\nimport Popover from '@splunk/react-ui/Popover';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { createDOMID } from '@splunk/ui-utils/id';\n\nconst StyledSvg = styled.svg`\n /* For fixing IE11 shows overflow part line issue */\n overflow: hidden;\n`;\n\nconst StyledTooltip = styled.div`\n padding: 3px 8px;\n font-size: 12px;\n text-align: center;\n min-width: 20px;\n`;\n\nconst preventDefault = (e: React.MouseEvent) => e.preventDefault();\n\ninterface SparkLineProps {\n /** If true, data can contain `null` as a value and is treated as `0`. If false, this throws error when data contains `null`. */\n acceptNull?: boolean;\n /** Array of numbers. These data numbers are converted to points and show on sparkline. */\n data?: (number | null)[];\n /** A React ref which is set to the DOM element when the component mounts and `null` when it unmounts. */\n elementRef?: React.Ref<HTMLDivElement>;\n /** 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. */\n endDotCount?: number;\n /** Fills color to the end dot. */\n endDotFillColor?: string;\n /** Sets end dot radius. End dot radius must be less than or equal to the margin. By default, its value equals the margin. */\n endDotRadius?: number;\n /** Sets end dot circle stroke color. */\n endDotStroke?: string;\n /** Sets end dot circle stroke width in pixels. */\n endDotStrokeWidth?: number;\n /** Fills color to area. */\n fillColor?: string;\n /** Fills opacity to area. Value must be in 0 ~ 1. */\n fillOpacity?: string;\n /** Sets cursor stroke color. */\n cursorStroke?: string;\n /** Sets cursor stroke width in pixels. */\n cursorStrokeWidth?: number;\n /** Sets cursor line cap style. */\n cursorStrokeLinecap?: 'butt' | 'round' | 'square';\n /** Sets cursor dash array style. */\n cursorStrokeDasharray?: string;\n /** Container height. If this value is specified, sparkline calculates the size using this height. */\n height: number;\n /** When set to `true`, sparkline shows as area. */\n isArea?: boolean;\n /** The sparkline line color. */\n lineColor?: string;\n /** Allows user to draw only the last data points for the line. */\n lineLength?: number;\n /** The sparkline line stroke width in pixels. */\n lineStrokeWidth?: number;\n /** Enable to show end dot. */\n showEndDot?: boolean;\n /** Enable to show tooltip. */\n showTooltip?: boolean;\n /** Sets the data value range and maximum value shown on sparkline. */\n yMax?: number;\n /** Sets the data value range and minimum value shown on sparkline. */\n yMin?: number;\n /** The width of the container. */\n width: number;\n /** Sets the a11y title text on sparkline. */\n title?: string;\n [key: string]: unknown;\n}\n\nconst PROP_KEYS = [\n 'acceptNull',\n 'data',\n 'elementRef',\n 'endDotCount',\n 'endDotFillColor',\n 'endDotRadius',\n 'endDotStroke',\n 'endDotStrokeWidth',\n 'fillColor',\n 'fillOpacity',\n 'cursorStroke',\n 'cursorStrokeWidth',\n 'cursorStrokeLinecap',\n 'cursorStrokeDasharray',\n 'height',\n 'isArea',\n 'lineColor',\n 'lineLength',\n 'lineStrokeWidth',\n 'showEndDot',\n 'showTooltip',\n 'yMax',\n 'yMin',\n 'width',\n 'title',\n];\n\nconst SparkLineInner = ({\n acceptNull = false,\n data = [],\n elementRef,\n endDotCount = 0,\n endDotFillColor = 'white',\n endDotRadius = 0,\n endDotStroke = 'black',\n endDotStrokeWidth = 0,\n fillColor = '#65a637',\n fillOpacity = '.1',\n cursorStroke = '#5184AF',\n cursorStrokeWidth = 3,\n cursorStrokeLinecap = 'square',\n cursorStrokeDasharray = '1, 5',\n height,\n isArea = false,\n lineColor = '#65a637',\n lineLength,\n lineStrokeWidth = 1,\n showEndDot = false,\n showTooltip = true,\n yMax,\n yMin,\n width,\n title,\n ...restProps\n}: SparkLineProps) => {\n const [anchor, setAnchor] = useState(null);\n const [activeIndex, setActiveIndex] = useState(0);\n const [hoveredIndex, setHoveredIndex] = useState(null);\n const [componentIsFocused, setComponentIsFocused] = useState(false);\n\n const titleId = useMemo(() => createDOMID('sparkline-title'), []);\n const pointRefs = useRef([]);\n const containerRef = useRef(null);\n\n // --- Helper functions ---\n\n const fillNull = useCallback(() => data.map(value => value ?? 0), [data]);\n\n const getMax = useCallback(() => {\n const dataMax = () => (acceptNull ? max(fillNull()) : max(data));\n return yMax ?? dataMax();\n }, [acceptNull, data, fillNull, yMax]);\n\n const getMin = useCallback(() => {\n const dataMin = () => (acceptNull ? min(fillNull()) : min(data));\n return yMin ?? dataMin();\n }, [acceptNull, data, fillNull, yMin]);\n\n /**\n * Gets unit value of x axis.\n * @param {Number} xMargin - margin of x axis.\n * @return {Number} unit value of x axis.\n * @private\n */\n const getXUnit = useCallback(\n xMargin => {\n // Calculate xUnit. Width substract the left margin and right margin, then divide by data length.\n const xUnit = (width - xMargin * 2) / (data.length > 1 ? data.length - 1 : 1);\n return Math.max(0, xUnit);\n },\n [data.length, width]\n );\n\n /**\n * Gets unit value of y axis.\n * @param {String} yMargin - margin of y axis.\n * @return {Number} unit value of y axis.\n * @private\n */\n const getYUnit = useCallback(\n yMargin => {\n const maxValue = getMax();\n const minValue = getMin();\n\n // Calculate yUnit. Height substract the upper margin and bottom margin, then divide by value range of values in data.\n // if the maxValue equals minValue, means all values in data are the same, then, we need to set the YUnit at the mid value of Height.\n // So, draws sparkline right in the mid of the container.\n const yUnit = (height - yMargin * 2) / (maxValue - minValue || 2);\n return Math.max(0, yUnit);\n },\n [getMax, getMin, height]\n );\n\n /**\n * Get a list of arrays of points for drawing lines, based on acceptNull property\n * @method getSegmentSets\n * @param {Array} segmentData\n * @param {Array} points\n * @returns {Object} Object containing lines (arrays of points for polylines) and isolatedPoints (single points surrounded by nulls)\n */\n const getSegmentSets = useCallback(\n (segmentData, points) => {\n const lines = [];\n const isolatedPoints = [];\n let currentLine = [];\n for (const [idx, p] of segmentData.entries()) {\n // Found null data\n if (!acceptNull && isNull(p)) {\n // need at least 2 points to draw a segment\n if (currentLine.length > 1) {\n lines.push(currentLine);\n } else if (currentLine.length === 1) {\n // Single point surrounded by nulls - this is an isolated point\n isolatedPoints.push(currentLine[0]);\n }\n // reset for the next segment\n currentLine = [];\n } else {\n // data is good, add point data\n currentLine.push(points[idx]);\n }\n }\n\n // Add the last line or isolated point\n if (currentLine.length > 1) {\n lines.push(currentLine);\n } else if (currentLine.length === 1) {\n isolatedPoints.push(currentLine[0]);\n }\n\n return { lines, isolatedPoints };\n },\n [acceptNull]\n );\n\n /**\n * Converts data to points in svg\n * @param {Number} xMargin - margin of x axis.\n * @param {Number} yMargin - margin of x axis.\n * @return {Array} points coordination.\n * @private\n */\n const dataToPoints = useCallback(\n (xMargin, yMargin) => {\n const xUnit = getXUnit(xMargin);\n const yUnit = getYUnit(yMargin);\n const maxValue = getMax();\n const minValue = getMin();\n return data\n .map((val, idx) => ({\n x: idx * xUnit + xMargin,\n y: maxValue === minValue ? yUnit + yMargin : (maxValue - val) * yUnit + yMargin,\n }))\n .map(p => [p.x, p.y]);\n },\n [data, getMax, getMin, getXUnit, getYUnit]\n );\n\n // --- Event handlers ---\n\n const handleFocus = useCallback(\n event => {\n const { target } = event;\n const { pointIndex: pointIndexStr } = target.dataset || {};\n\n if (pointIndexStr !== undefined) {\n // focus event propagated from a datapoint\n const pointIndex = Number.parseInt(pointIndexStr, 10);\n if (activeIndex !== pointIndex || !componentIsFocused || hoveredIndex !== null) {\n setActiveIndex(pointIndex);\n setHoveredIndex(null);\n setComponentIsFocused(true);\n }\n } else if (pointRefs.current.length > 0) {\n // focus set programmatically or by user agent\n const indexToFocus = activeIndex ? Math.min(pointRefs.current.length - 1, activeIndex) : 0;\n pointRefs.current[indexToFocus].focus();\n }\n },\n [activeIndex, componentIsFocused, hoveredIndex]\n );\n\n const handleBlur = useCallback(event => {\n if (containerRef.current && !containerRef.current.contains(event.relatedTarget)) {\n setComponentIsFocused(false);\n }\n }, []);\n\n const handleKeyDown = useCallback(\n event => {\n const numPoints = data.length;\n\n const allowedKeys = ['ArrowLeft', 'ArrowRight', 'Home', 'End'];\n if (!allowedKeys.includes(event.key)) {\n return;\n }\n\n let newIndex;\n if (event.key === 'Home') {\n newIndex = 0;\n } else if (event.key === 'End') {\n newIndex = numPoints - 1;\n } else if (event.key === 'ArrowLeft') {\n newIndex = Math.max(0, activeIndex - 1);\n } else {\n newIndex = Math.min(numPoints - 1, activeIndex + 1);\n }\n\n if (newIndex !== activeIndex) {\n event.preventDefault();\n if (pointRefs.current[newIndex]) {\n pointRefs.current[newIndex].focus();\n }\n }\n },\n [activeIndex, data.length]\n );\n\n const handleMouseOver = useCallback(\n event => {\n const pointIndexStr = event.target.dataset?.pointIndex;\n if (pointIndexStr !== undefined) {\n const pointIndex = Number.parseInt(pointIndexStr, 10);\n if (hoveredIndex !== pointIndex) {\n setHoveredIndex(pointIndex);\n }\n }\n },\n [hoveredIndex]\n );\n\n const handleMouseLeave = useCallback(() => {\n if (hoveredIndex !== null) {\n setHoveredIndex(null);\n }\n }, [hoveredIndex]);\n\n const handleCursorMount = useCallback(el => {\n setAnchor(el);\n }, []);\n\n // --- Render helpers ---\n\n /**\n * Renders rect area for each datapoint for interactions and screen reader support\n * @param {Array} points - array of points coordination.\n * @param {Number} xMargin - margin of x axis.\n * @return {Array} array of svg rect objects\n * @private\n */\n const renderRect = (points, xMargin) => {\n const xUnit = getXUnit(xMargin);\n\n return points.map((p, i) => (\n /* eslint-disable react/no-array-index-key */\n <rect\n key={`${i}_${p[0]}`}\n role=\"graphics-symbol\"\n aria-label={`Value: ${data[i] ?? 'N/A'}, point ${i + 1} of ${data.length}`}\n data-test={`rect-${i}`}\n data-point-index={i}\n tabIndex={showTooltip && activeIndex === i ? 0 : -1}\n ref={el => {\n pointRefs.current[i] = el;\n }}\n x={Math.max(0, p[0] - xUnit / 2)}\n y={0}\n width={i === 0 && data.length !== 1 ? xUnit / 2 : xUnit}\n height={height}\n style={{ fillOpacity: 0 }}\n onMouseDown={preventDefault} // do not take focus on click\n />\n /* eslint-enable react/no-array-index-key */\n ));\n };\n\n // Renders area chart\n const renderArea = points => {\n if (!isArea || points.length === 0) {\n return null;\n }\n\n const { lines } = getSegmentSets(data, points);\n const segments = lines.map(s =>\n s.concat([\n [s.at(-1)[0], height], // down to bottom of graph\n [s[0][0], height], // over to below first data point\n s[0], // up to first data point to close the box\n ])\n );\n\n return (\n <g data-test=\"area\">\n {segments.map(s => (\n <polyline\n key={`area${s.join('')}`}\n points={s.join(' ')}\n data-test=\"area-line\"\n style={{\n fill: fillColor,\n fillOpacity,\n strokeWidth: '0',\n }}\n />\n ))}\n </g>\n );\n };\n\n const renderCursor = (currentPointX, shouldRender) =>\n shouldRender && (\n <line\n data-test=\"cursor\"\n ref={handleCursorMount}\n x1={currentPointX}\n y1={0}\n x2={currentPointX}\n y2={height}\n style={{\n stroke: cursorStroke,\n strokeWidth: cursorStrokeWidth,\n strokeLinecap: cursorStrokeLinecap as React.CSSProperties['strokeLinecap'],\n strokeDasharray: cursorStrokeDasharray,\n }}\n />\n );\n\n const renderTooltip = (tooltipValue, isOpen) => {\n // Display '-' for null values, consistent with canvas chart tooltips\n const displayValue = tooltipValue === null ? '-' : tooltipValue;\n\n return (\n <Popover\n data-test=\"tooltip\"\n open={isOpen}\n anchor={anchor}\n data-test-value={tooltipValue}\n appearance=\"inverted\"\n defaultPlacement=\"above\"\n animation={false}\n >\n <StyledTooltip>{displayValue}</StyledTooltip>\n </Popover>\n );\n };\n\n /**\n * Renders one or more svg circles to highlight values on the sparkline\n * @method renderEndDots\n * @param {Array[Array[Number]]} points // x,y coordinates of values\n * @param {Number} dotsToShow // number of end dots to display\n * @param {Number} xMargin // used when calculating the dot radius\n * @returns {Object} React representation of SVG group\n * @private\n */\n const renderEndDots = (points, dotsToShow, xMargin) => (\n <g>\n {points.slice(-dotsToShow).map(point => (\n <circle\n key={`end-dot${point[0]}${point[1]}`}\n data-test=\"end-dot\"\n cx={point[0]}\n cy={point[1]}\n r={endDotRadius === 0 ? xMargin : endDotRadius}\n style={{\n fill: endDotFillColor,\n stroke: endDotStroke,\n strokeWidth: endDotStrokeWidth,\n }}\n />\n ))}\n </g>\n );\n\n /**\n * Renders circles for isolated points (single data points surrounded by nulls)\n * These would otherwise be invisible since a line requires at least 2 points\n * @method renderIsolatedPoints\n * @param {Array} isolatedPoints - Array of [x, y] coordinates for isolated points\n * @returns {Object} SVG Group of circles\n */\n const renderIsolatedPoints = isolatedPoints => {\n if (!isolatedPoints || isolatedPoints.length === 0) {\n return null;\n }\n\n // Use a radius slightly larger than line width for visibility\n const radius = lineStrokeWidth + 0.5;\n\n return (\n <g data-test=\"isolated-points\">\n {isolatedPoints.map(point => (\n <circle\n key={`isolated-${point[0]}-${point[1]}`}\n data-test=\"isolated-point\"\n cx={point[0]}\n cy={point[1]}\n r={radius}\n style={{\n fill: lineColor,\n }}\n />\n ))}\n </g>\n );\n };\n\n /**\n * Renders the line(s) above the area graph\n * @method renderPolyline\n * @param {Array} points\n * @returns {Object} SVG Group of polylines and isolated points\n */\n const renderPolyline = points => {\n const linePoints = isFinite(lineLength) && lineLength > 0 ? lineLength : points.length;\n const { lines, isolatedPoints } = getSegmentSets(data.slice(-linePoints), points.slice(-linePoints));\n\n return (\n <g data-test=\"sparkline\">\n {lines.map(lineData => (\n <polyline\n key={`line${lineData.join('')}`}\n data-test=\"polyline\"\n style={{\n fill: 'none',\n stroke: lineColor,\n strokeWidth: lineStrokeWidth,\n strokeLinejoin: 'round',\n strokeLinecap: 'round',\n }}\n points={lineData.join(' ')}\n />\n ))}\n {renderIsolatedPoints(isolatedPoints)}\n </g>\n );\n };\n\n const getInteractionState = ({\n interactionData,\n points: interactionPoints,\n interactionShowTooltip,\n interactionActiveIndex,\n interactionHoveredIndex,\n interactionComponentIsFocused,\n }) => {\n if (!interactionShowTooltip) {\n return {\n currentPointX: null,\n tooltipValue: null,\n showCursorAndTooltip: false,\n interactiveProps: {},\n };\n }\n\n const interactiveProps = {\n onKeyDown: handleKeyDown,\n onMouseOver: handleMouseOver,\n onMouseLeave: handleMouseLeave,\n onFocus: handleFocus,\n onBlur: handleBlur,\n };\n\n const isHovered = interactionHoveredIndex !== null;\n const shouldDisplayInteractiveElements =\n (isHovered || interactionComponentIsFocused) && interactionData.length > 0;\n\n if (!shouldDisplayInteractiveElements) {\n return {\n currentPointX: null,\n tooltipValue: null,\n showCursorAndTooltip: false,\n interactiveProps,\n };\n }\n\n const displayIndex = isHovered ? interactionHoveredIndex : interactionActiveIndex;\n const isValidIndex = displayIndex !== null && displayIndex >= 0;\n const withinBounds =\n isValidIndex && displayIndex < interactionData.length && displayIndex < interactionPoints.length;\n\n if (!withinBounds) {\n return {\n currentPointX: null,\n tooltipValue: null,\n showCursorAndTooltip: false,\n interactiveProps,\n };\n }\n\n const displayPointCoords = interactionPoints[displayIndex];\n const currentPointX = displayPointCoords?.[0] ?? null;\n const tooltipValue = interactionData[displayIndex];\n\n return {\n currentPointX,\n tooltipValue,\n showCursorAndTooltip: currentPointX !== null,\n interactiveProps,\n };\n };\n\n // --- Render ---\n\n if (data.length === 0) {\n return null;\n }\n\n if (pointRefs.current.length !== data.length) {\n // remove stale point refs when data changes\n pointRefs.current.length = data.length;\n }\n\n // Calculate horizontal and vertical margin so that fit line or end dot.\n const xMargin = endDotRadius + endDotStrokeWidth / 2;\n const yMargin = Math.max(lineStrokeWidth / 2, endDotRadius + endDotStrokeWidth / 2);\n\n const points = dataToPoints(xMargin, yMargin);\n\n const dotsToShow = Math.max(showEndDot && 1, isFinite(endDotCount) && endDotCount > 0 && endDotCount);\n\n const { currentPointX, tooltipValue, showCursorAndTooltip, interactiveProps } = getInteractionState({\n interactionData: data,\n points,\n interactionShowTooltip: showTooltip,\n interactionActiveIndex: activeIndex,\n interactionHoveredIndex: hoveredIndex,\n interactionComponentIsFocused: componentIsFocused,\n });\n\n const ariaLabel = title || _('Source count over time sparkline trend');\n\n return (\n <div\n data-test=\"line\"\n data-test-type={isArea ? 'area' : 'line'}\n ref={el => {\n containerRef.current = el;\n if (typeof elementRef === 'function') {\n elementRef(el);\n } else if (elementRef && typeof elementRef === 'object') {\n (elementRef as React.MutableRefObject<HTMLDivElement | null>).current = el; // eslint-disable-line no-param-reassign\n }\n }}\n {...interactiveProps}\n {...omit(restProps, PROP_KEYS)}\n >\n <StyledSvg height={height} width={width} aria-labelledby={titleId} data-test=\"sparkline-svg\">\n <title id={titleId} data-test=\"sparkline-title\">\n {ariaLabel}\n </title>\n <g>\n {showTooltip ? renderCursor(currentPointX, showCursorAndTooltip) : null}\n {renderPolyline(points)}\n {renderArea(points)}\n {dotsToShow ? renderEndDots(points, dotsToShow, xMargin) : null}\n {renderRect(points, xMargin)}\n {showTooltip ? renderTooltip(tooltipValue, showCursorAndTooltip) : null}\n </g>\n </StyledSvg>\n </div>\n );\n};\n\nconst SparkLine = ({ data = [], ...props }: SparkLineProps) => {\n if (process.env.NODE_ENV !== 'production') {\n if (!Array.isArray(data)) {\n console.error('Data provided to SparkLine must be an array.');\n return null;\n }\n if (!data.every(value => value === null || isFinite(value))) {\n console.error('Data provided to SparkLine must contain finite numbers or null.');\n return null;\n }\n }\n return <SparkLineInner data={data} {...props} />;\n};\n\nexport default SparkLine;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "xMargin", "yMargin", "points", "_a", "currentPointX", "tooltipValue", "dotsToShow", "interactiveProps"]
|
|
7
7
|
}
|
package/Table/PureTable.d.ts
CHANGED
|
@@ -54,6 +54,8 @@ export interface PureTableProps {
|
|
|
54
54
|
}>;
|
|
55
55
|
hasEventHandlers?: boolean;
|
|
56
56
|
showColumnAsExpandedJson?: string[];
|
|
57
|
+
dynamicHeight?: boolean;
|
|
58
|
+
onRequestHeight?: (height: number | undefined) => void;
|
|
57
59
|
}
|
|
58
60
|
export declare const getUseMouseOverEffect: (props: any, header: string) => boolean;
|
|
59
61
|
declare const _default: any;
|
package/Table/PureTable.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PureTable.d.ts","sourceRoot":"","sources":["../src/Table/PureTable.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PureTable.d.ts","sourceRoot":"","sources":["../src/Table/PureTable.tsx"],"names":[],"mappings":"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"}
|
package/Table/Table.d.ts
CHANGED
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import config from './config';
|
|
3
|
+
import type { DashboardVizProps } from '../common/interfaces';
|
|
3
4
|
import PureTable from './PureTable';
|
|
4
5
|
export declare const computeVizProps: ({ ...props }: {
|
|
5
6
|
[x: string]: any;
|
|
6
7
|
}) => Record<string, unknown>;
|
|
7
8
|
declare const Table: {
|
|
8
|
-
({ dataSources, options, ...otherProps }:
|
|
9
|
-
dataSources?: any;
|
|
10
|
-
options?: Record<string, any>;
|
|
11
|
-
}): React.JSX.Element;
|
|
12
|
-
defaultProps: any;
|
|
9
|
+
({ dataSources, options, ...otherProps }: DashboardVizProps): React.JSX.Element;
|
|
13
10
|
config: any;
|
|
14
11
|
};
|
|
15
12
|
declare const themes: any;
|
package/Table/Table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../src/Table/Table.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,MAAM,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../src/Table/Table.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,OAAO,SAAS,MAAM,aAAa,CAAC;AAGpC,eAAO,MAAM,eAAe,GAAI;;CAAY,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CA6DpE,CAAC;AA0FF,QAAA,MAAM,KAAK;8CAtFmE,iBAAiB;;CA6F9F,CAAC;AACF,QAAA,MAAQ,MAAM,KAAW,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AACrC,eAAe,KAAK,CAAC"}
|
package/Table/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/Table/config.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/Table/config.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;;AAklB3D,wBAAqC"}
|
package/Table/hooks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/Table/hooks.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/Table/hooks.tsx"],"names":[],"mappings":"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"}
|
package/Table.config.js
CHANGED
|
@@ -392,7 +392,7 @@ var themes = {
|
|
|
392
392
|
prisma: variables_default.contentColorInverted(props)
|
|
393
393
|
})(props)
|
|
394
394
|
};
|
|
395
|
-
var backgroundColorPaletteSet =
|
|
395
|
+
var backgroundColorPaletteSet = new Set(colorConstants_exports.COLOR_EDITOR_PALETTE);
|
|
396
396
|
var EDITOR_LABEL_WIDTH = 100;
|
|
397
397
|
var editorConfig = [
|
|
398
398
|
{
|
|
@@ -409,6 +409,13 @@ var editorConfig = [
|
|
|
409
409
|
}
|
|
410
410
|
}
|
|
411
411
|
],
|
|
412
|
+
[
|
|
413
|
+
{
|
|
414
|
+
label: (0, i18n_exports._)("Dynamic table height"),
|
|
415
|
+
option: "dynamicHeight",
|
|
416
|
+
editor: "editor.toggle"
|
|
417
|
+
}
|
|
418
|
+
],
|
|
412
419
|
[
|
|
413
420
|
{
|
|
414
421
|
label: (0, i18n_exports._)("Row numbers"),
|
package/Table.config.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["src/Table/config.ts", "esm-externals:@splunk/ui-utils/i18n", "esm-externals:@splunk/visualization-schemas", "esm-externals:@splunk/visualization-color-palettes/editors/PresetPalettes", "esm-externals:@splunk/visualizations-shared/colorConstants", "esm-externals:@splunk/visualization-icons", "esm-externals:@splunk/visualization-icons/placeholders", "esm-externals:@splunk/themes/variables", "esm-externals:@splunk/themes/pick", "esm-externals:@splunk/react-icons/TextAlignCenter", "esm-externals:@splunk/react-icons/TextAlignLeft", "esm-externals:@splunk/react-icons/TextAlignRight", "esm-externals:lodash", "esm-externals:@splunk/visualizations-shared/configUtils", "src/common/utils/configUtils.ts", "src/common/ThemedDefaults.tsx"],
|
|
4
|
-
"sourcesContent": ["import { _ } from '@splunk/ui-utils/i18n';\nimport { tableOptionsSchema as optionsSchema } from '@splunk/visualization-schemas';\nimport { defaultPalettesConfig } from '@splunk/visualization-color-palettes/editors/PresetPalettes';\nimport { COLOR_EDITOR_PALETTE } from '@splunk/visualizations-shared/colorConstants';\nimport { Table as TableIcon } from '@splunk/visualization-icons';\nimport { Table as TablePlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport variables from '@splunk/themes/variables';\nimport pick from '@splunk/themes/pick';\nimport TextAlignCenter from '@splunk/react-icons/TextAlignCenter';\nimport TextAlignLeft from '@splunk/react-icons/TextAlignLeft';\nimport TextAlignRight from '@splunk/react-icons/TextAlignRight';\n\nimport { enhanceConfig, generatePrecisionValues } from '../common/utils/configUtils';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { defaultBackgroundColor } from '../common/ThemedDefaults';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [],\n initialRequestParams: {\n primary: (options: { count?: number } = {}): Record<string, unknown> => ({\n offset: 0,\n count: options.count ? options.count : 10,\n requestTotalCount: true,\n add_summary_to_metadata: true,\n }),\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {\n // color context configs\n colorRangeConfig: [\n { to: 20, value: '#D41F1F' },\n { from: 20, to: 40, value: '#D94E17' },\n { from: 40, to: 60, value: '#CBA700' },\n { from: 60, to: 80, value: '#669922' },\n { from: 80, value: '#118832' },\n ],\n colorMatchConfig: [{ match: '', value: '#5C33FF' }],\n colorGradientConfig: { colors: ['#252214', '#B846BB'] },\n tableAlignByType: [\n { match: 'string', value: 'left' },\n { match: 'number', value: 'right' },\n { match: 'time', value: 'left' },\n { match: 'color', value: 'left' },\n { match: 'array', value: 'left' },\n { match: 'sparkline', value: 'center' },\n { match: 'unknown', value: 'left' },\n { match: 'null', value: 'left' },\n ],\n tableCellTypeByType: [\n { match: 'string', value: 'TextCell' },\n { match: 'number', value: 'TextCell' },\n { match: 'time', value: 'TextCell' },\n { match: 'color', value: 'TextCell' },\n { match: 'array', value: 'ArrayCell' },\n { match: 'sparkline', value: 'SparklineCell' },\n { match: 'unknown', value: 'TextCell' },\n { match: 'null', value: 'TextCell' },\n ],\n\n // NOTE: These contexts are used by the table background color editor.\n // Please be careful removing/renaming/altering them.\n // There are unit tests and visual test that will capture breakages.\n tableRowColorMaxContrast: {\n colors: ['> themes.textColor', '> themes.inverseTextColor'],\n default: '> themes.textColor',\n },\n tableRowBackgroundColorEvenConfig: {\n channel: 'hsv.v',\n value: '*0.96',\n },\n tableHeaderBackgroundColorConfig: {\n channel: 'hsv.v',\n value: '*0.9',\n },\n tableRowBackgroundColorsByTheme: ['> themes.rowBackgroundColorOdd'],\n tableAltRowBackgroundColorsByTheme: ['> themes.rowBackgroundColorOdd', '> themes.rowBackgroundColorEven'],\n tableRowBackgroundColorsByBackgroundColor: ['> backgroundColor'],\n tableAltRowBackgroundColorsByBackgroundColor: [\n '> backgroundColor',\n '> backgroundColor | setColorChannel(tableRowBackgroundColorEvenConfig)',\n ],\n};\n\nconst headerAlignConfigTable = {\n label: _('Header alignment'),\n editor: 'editor.radioBar',\n option: 'tableFormat.headerAlign',\n editorProps: {\n values: [\n { label: _('Left'), value: 'left', icon: TextAlignLeft },\n { label: _('Center'), value: 'center', icon: TextAlignCenter },\n { label: _('Right'), value: 'right', icon: TextAlignRight },\n ],\n },\n};\n\nconst headerAlignConfigColumn = {\n ...headerAlignConfigTable,\n option: 'headerAlign',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Left'), value: 'left', icon: TextAlignLeft },\n { label: _('Center'), value: 'center', icon: TextAlignCenter },\n { label: _('Right'), value: 'right', icon: TextAlignRight },\n ],\n },\n};\n\nconst textOverflowConfigColumn = {\n label: _('Text wrapping'),\n editor: 'editor.radioBar',\n option: 'textOverflow',\n editorProps: {\n values: [\n { label: _('Standard'), value: 'break-word' },\n { label: _('Anywhere'), value: 'anywhere' },\n { label: _('Trim'), value: 'ellipsis' },\n ],\n },\n};\n\nconst textAlignConfigTable = {\n label: _('Cells alignment'),\n editor: 'editor.radioBar',\n option: 'tableFormat.align',\n editorProps: {\n values: [\n {\n label: _('Auto'),\n value: '> table | type() | matchValue(tableAlignByType)',\n },\n { label: _('Left'), value: 'left', icon: TextAlignLeft },\n { label: _('Center'), value: 'center', icon: TextAlignCenter },\n { label: _('Right'), value: 'right', icon: TextAlignRight },\n ],\n },\n};\n\nconst textAlignConfigColumn = {\n ...textAlignConfigTable,\n option: 'align',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Left'), value: 'left', icon: TextAlignLeft },\n { label: _('Center'), value: 'center', icon: TextAlignCenter },\n { label: _('Right'), value: 'right', icon: TextAlignRight },\n ],\n },\n};\n\nconst unitPositionConfig = {\n label: _('Units position'),\n editor: 'editor.select',\n option: 'unitPosition',\n editorProps: {\n values: [\n { label: _('Before'), value: 'before' },\n { label: _('After'), value: 'after' },\n ],\n },\n};\n\nconst unitLabelConfig = {\n label: _('Unit label'),\n option: 'unit',\n editor: 'editor.text',\n};\n\nconst timeFormattingConfig = {\n label: _('Date & Time formatting'),\n option: 'format',\n editor: 'editor.text',\n editorProps: {\n tooltip: _('For example: DD-MM-YYYY'),\n },\n};\n\nconst themes: ThemedDefaults = {\n defaultBackgroundColor,\n defaultHeaderBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.gray20(props),\n light: variables.gray92(props),\n },\n prisma: variables.backgroundColor(props),\n })(props),\n rowBackgroundColorEven: props =>\n pick({\n enterprise: { dark: 'rgba(35,36,41,0.4)', light: 'rgba(240,240,240,0.6)' },\n prisma: { dark: 'rgba(35,36,41,0.4)', light: 'rgba(240,240,240,0.6)' },\n })(props),\n rowBackgroundColorOdd: props =>\n pick({\n enterprise: { dark: 'rgba(0,0,0,0.4)', light: 'rgba(255,255,255,0.6)' },\n prisma: { dark: 'rgba(0,0,0,0.4)', light: 'rgba(255,255,255,0.6)' },\n })(props),\n textColor: props =>\n pick({\n enterprise: variables.textColor(props),\n prisma: variables.contentColorDefault(props),\n })(props),\n inverseTextColor: props =>\n pick({\n enterprise: {\n dark: variables.contentColorInverted(props), // equal to textColor in enterprise\n light: variables.white(props), // equal to textColor in enterpriseDark\n },\n prisma: variables.contentColorInverted(props),\n })(props),\n};\n\nconst backgroundColorPaletteSet = new Set([...COLOR_EDITOR_PALETTE]);\n\nconst EDITOR_LABEL_WIDTH = 100;\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Rows displayed'),\n option: 'count',\n editor: 'editor.number',\n editorProps: {\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Row numbers'),\n option: 'showRowNumbers',\n editor: 'editor.checkbox',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Internal fields'),\n option: 'showInternalFields',\n editor: 'editor.checkbox',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Header row'),\n option: 'headerVisibility',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Inline'), value: 'inline' },\n { label: _('Fixed'), value: 'fixed' },\n { label: _('Hidden'), value: 'none' },\n ],\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Footer totals row'),\n option: 'showFooterTotals',\n editor: 'editor.checkbox',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Footer percentages row'),\n option: 'showFooterPercentages',\n editor: 'editor.checkbox',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n ],\n },\n {\n label: _('Color and style'),\n layout: [\n [\n {\n key: 'backgroundColor',\n editor: 'editor.tableBackgroundColor',\n editorProps: {\n themes,\n labelPosition: 'top',\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n option: 'font',\n label: _('Font'),\n editor: 'editor.select',\n editorProps: {\n values: [\n {\n label: _('Proportional (Default)'),\n value: 'proportional',\n },\n { label: _('Monospace'), value: 'monospace' },\n ],\n labelPosition: 'top',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n option: 'fontSize',\n label: _('Font size'),\n editor: 'editor.select',\n editorProps: {\n values: [\n {\n label: _('Extra Small (font 10px, row 24px)'),\n value: 'extraSmall',\n },\n {\n label: _('Small (font 12px, row 24px)'),\n value: 'small',\n },\n {\n label: _('Default (font 14px, row 32px)'),\n value: 'default',\n },\n {\n label: _('Large (font 16px, row 36px)'),\n value: 'large',\n },\n ],\n labelPosition: 'top',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n ...headerAlignConfigTable,\n },\n ],\n [\n {\n ...textAlignConfigTable,\n },\n ],\n [\n {\n key: 'tableDynamicColor',\n editor: 'editor.tableDynamicColor',\n context: 'colorGradientConfig',\n option: 'tableFormat',\n label: _('Data colors'),\n filterKeywords: ['range', 'match', 'gradient', 'dynamic coloring'],\n editorProps: {\n labelPosition: 'top',\n formatters: [\n {\n label: _('Gradient'),\n value: 'gradient',\n isDefault: true,\n defaults: {\n table: defaultContext.colorGradientConfig,\n },\n },\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n table: defaultContext.colorRangeConfig,\n },\n },\n {\n label: _('Matches'),\n value: 'matchValue',\n defaults: {\n table: defaultContext.colorMatchConfig,\n },\n },\n ],\n dataSelectors: [\n {\n label: _('Table'),\n value: 'table',\n },\n ],\n defaultPalettesConfig,\n },\n },\n ],\n [\n {\n label: _('Column-specific formatting'),\n editor: 'editor.tableColumnFormatter',\n editorProps: {\n // popover: {sections: [textFormatConfig, formatByTypeConfig, columnColoringConfig]}\n // Table column coloring does not adhere to same DSL structure as other dynamically colored options\n // we use the FormatterEditor directly and not the DynamicColorEditor's provided DSL builders\n columnColoringConfig: {\n coloringTypes: [\n {\n label: _('Text'),\n value: 'rowColors',\n },\n {\n label: _('Background'),\n value: 'rowBackgroundColors',\n },\n ],\n formatters: [\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n rowBackgroundColors: defaultContext.colorRangeConfig,\n rowColors: defaultContext.colorRangeConfig,\n },\n },\n {\n label: _('Matches'),\n value: 'matchValue',\n defaults: {\n rowBackgroundColors: defaultContext.colorMatchConfig,\n rowColors: defaultContext.colorMatchConfig,\n },\n },\n ],\n themes,\n },\n defaultOptionsByType: {\n number: {\n thousandSeparated: false,\n unitPosition: 'after',\n },\n string: {\n unitPosition: 'after',\n },\n text: {\n align: 'auto',\n headerAlign: 'auto',\n textOverflow: 'break-word',\n },\n },\n textFormatConfig: [\n [\n {\n ...headerAlignConfigColumn,\n },\n ],\n [\n {\n ...textAlignConfigColumn,\n },\n ],\n [\n {\n ...textOverflowConfigColumn,\n },\n ],\n ],\n flyoutConfig: {\n number: [\n [\n {\n ...unitPositionConfig,\n },\n {\n ...unitLabelConfig,\n },\n ],\n [\n {\n label: _('Precision'),\n option: 'precision',\n editor: 'editor.select',\n editorProps: {\n values: generatePrecisionValues(20),\n },\n },\n {\n label: _('Thousand separators'),\n option: 'thousandSeparated',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n {\n label: _('Off'),\n value: false,\n },\n { label: _('On'), value: true },\n ],\n },\n },\n ],\n ],\n sparkline: [], // Configure via columnFormat.sparklineNullValueDisplay\n string: [\n [\n {\n ...unitPositionConfig,\n },\n {\n ...unitLabelConfig,\n },\n ],\n ],\n time: [\n [\n {\n ...timeFormattingConfig,\n },\n ],\n ],\n },\n value: ({ context, options }) => {\n return {\n context,\n columnFormat: options.columnFormat,\n tableFormat: options.tableFormat,\n };\n },\n },\n key: 'TableColumnFormatterEditor',\n },\n ],\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.table',\n /**\n * viz name\n */\n name: _('Table'),\n category: VizCategory.TABLE,\n /**\n * viz icon\n */\n icon: TableIcon,\n placeholderIcon: TablePlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'cell.click': {\n description: 'triggered when user clicks a table cell',\n },\n },\n supports: [\n VizBehavior.DYNAMIC_OPTIONS,\n VizBehavior.EVENTS,\n VizBehavior.PAGE_AND_SORT,\n VizBehavior.PLACEHOLDER,\n ],\n themes,\n};\n\nexport default enhanceConfig(config);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-schemas\";\nexport * from \"@splunk/visualization-schemas\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-color-palettes/editors/PresetPalettes\";\nexport * from \"@splunk/visualization-color-palettes/editors/PresetPalettes\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualizations-shared/colorConstants\";\nexport * from \"@splunk/visualizations-shared/colorConstants\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-icons\";\nexport * from \"@splunk/visualization-icons\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-icons/placeholders\";\nexport * from \"@splunk/visualization-icons/placeholders\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/themes/variables\";\nexport * from \"@splunk/themes/variables\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/themes/pick\";\nexport * from \"@splunk/themes/pick\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/TextAlignCenter\";\nexport * from \"@splunk/react-icons/TextAlignCenter\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/TextAlignLeft\";\nexport * from \"@splunk/react-icons/TextAlignLeft\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/TextAlignRight\";\nexport * from \"@splunk/react-icons/TextAlignRight\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"lodash\";\nexport * from \"lodash\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualizations-shared/configUtils\";\nexport * from \"@splunk/visualizations-shared/configUtils\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import { get, range } from 'lodash';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\n// included for backwards compatibility\nexport { enhanceOptionsSchemaWithDynamicOptions } from '@splunk/visualization-schemas';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * this function also collapse all editor panels\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n * and containing `open: false` for all editor panels in editorConfig\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = { ...vizConfig };\n\n enhancedConfig.editorConfig = vizConfig.editorConfig.map((config: EditorConfig): EditorConfig => {\n return { ...config, open: config.open || false };\n });\n return enhancedConfig;\n}\n\n/**\n * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig\n * Created for editor unit tests\n * @param vizConfig a Visualization Config\n * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig\n */\nfunction uncollapseEditorConfig(vizConfig: VizConfig): VizConfig {\n const editorPanelUncollapsedConfig: VizConfig = { ...vizConfig };\n editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: true };\n }\n );\n return editorPanelUncollapsedConfig;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport { enhanceConfig, getInitialPreset, generatePrecisionValues, uncollapseEditorConfig, isDynamicOption };\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n", "import pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\n\nexport const defaultBackgroundColor = props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.white(props),\n },\n prisma: variables.backgroundColorSection(props),\n })(props);\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import { _ } from '@splunk/ui-utils/i18n';\nimport { tableOptionsSchema as optionsSchema } from '@splunk/visualization-schemas';\nimport { defaultPalettesConfig } from '@splunk/visualization-color-palettes/editors/PresetPalettes';\nimport { COLOR_EDITOR_PALETTE } from '@splunk/visualizations-shared/colorConstants';\nimport { Table as TableIcon } from '@splunk/visualization-icons';\nimport { Table as TablePlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport variables from '@splunk/themes/variables';\nimport pick from '@splunk/themes/pick';\nimport TextAlignCenter from '@splunk/react-icons/TextAlignCenter';\nimport TextAlignLeft from '@splunk/react-icons/TextAlignLeft';\nimport TextAlignRight from '@splunk/react-icons/TextAlignRight';\n\nimport { enhanceConfig, generatePrecisionValues } from '../common/utils/configUtils';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { defaultBackgroundColor } from '../common/ThemedDefaults';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [],\n initialRequestParams: {\n primary: (options: { count?: number } = {}): Record<string, unknown> => ({\n offset: 0,\n count: options.count ? options.count : 10,\n requestTotalCount: true,\n add_summary_to_metadata: true,\n }),\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {\n // color context configs\n colorRangeConfig: [\n { to: 20, value: '#D41F1F' },\n { from: 20, to: 40, value: '#D94E17' },\n { from: 40, to: 60, value: '#CBA700' },\n { from: 60, to: 80, value: '#669922' },\n { from: 80, value: '#118832' },\n ],\n colorMatchConfig: [{ match: '', value: '#5C33FF' }],\n colorGradientConfig: { colors: ['#252214', '#B846BB'] },\n tableAlignByType: [\n { match: 'string', value: 'left' },\n { match: 'number', value: 'right' },\n { match: 'time', value: 'left' },\n { match: 'color', value: 'left' },\n { match: 'array', value: 'left' },\n { match: 'sparkline', value: 'center' },\n { match: 'unknown', value: 'left' },\n { match: 'null', value: 'left' },\n ],\n tableCellTypeByType: [\n { match: 'string', value: 'TextCell' },\n { match: 'number', value: 'TextCell' },\n { match: 'time', value: 'TextCell' },\n { match: 'color', value: 'TextCell' },\n { match: 'array', value: 'ArrayCell' },\n { match: 'sparkline', value: 'SparklineCell' },\n { match: 'unknown', value: 'TextCell' },\n { match: 'null', value: 'TextCell' },\n ],\n\n // NOTE: These contexts are used by the table background color editor.\n // Please be careful removing/renaming/altering them.\n // There are unit tests and visual test that will capture breakages.\n tableRowColorMaxContrast: {\n colors: ['> themes.textColor', '> themes.inverseTextColor'],\n default: '> themes.textColor',\n },\n tableRowBackgroundColorEvenConfig: {\n channel: 'hsv.v',\n value: '*0.96',\n },\n tableHeaderBackgroundColorConfig: {\n channel: 'hsv.v',\n value: '*0.9',\n },\n tableRowBackgroundColorsByTheme: ['> themes.rowBackgroundColorOdd'],\n tableAltRowBackgroundColorsByTheme: ['> themes.rowBackgroundColorOdd', '> themes.rowBackgroundColorEven'],\n tableRowBackgroundColorsByBackgroundColor: ['> backgroundColor'],\n tableAltRowBackgroundColorsByBackgroundColor: [\n '> backgroundColor',\n '> backgroundColor | setColorChannel(tableRowBackgroundColorEvenConfig)',\n ],\n};\n\nconst headerAlignConfigTable = {\n label: _('Header alignment'),\n editor: 'editor.radioBar',\n option: 'tableFormat.headerAlign',\n editorProps: {\n values: [\n { label: _('Left'), value: 'left', icon: TextAlignLeft },\n { label: _('Center'), value: 'center', icon: TextAlignCenter },\n { label: _('Right'), value: 'right', icon: TextAlignRight },\n ],\n },\n};\n\nconst headerAlignConfigColumn = {\n ...headerAlignConfigTable,\n option: 'headerAlign',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Left'), value: 'left', icon: TextAlignLeft },\n { label: _('Center'), value: 'center', icon: TextAlignCenter },\n { label: _('Right'), value: 'right', icon: TextAlignRight },\n ],\n },\n};\n\nconst textOverflowConfigColumn = {\n label: _('Text wrapping'),\n editor: 'editor.radioBar',\n option: 'textOverflow',\n editorProps: {\n values: [\n { label: _('Standard'), value: 'break-word' },\n { label: _('Anywhere'), value: 'anywhere' },\n { label: _('Trim'), value: 'ellipsis' },\n ],\n },\n};\n\nconst textAlignConfigTable = {\n label: _('Cells alignment'),\n editor: 'editor.radioBar',\n option: 'tableFormat.align',\n editorProps: {\n values: [\n {\n label: _('Auto'),\n value: '> table | type() | matchValue(tableAlignByType)',\n },\n { label: _('Left'), value: 'left', icon: TextAlignLeft },\n { label: _('Center'), value: 'center', icon: TextAlignCenter },\n { label: _('Right'), value: 'right', icon: TextAlignRight },\n ],\n },\n};\n\nconst textAlignConfigColumn = {\n ...textAlignConfigTable,\n option: 'align',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Left'), value: 'left', icon: TextAlignLeft },\n { label: _('Center'), value: 'center', icon: TextAlignCenter },\n { label: _('Right'), value: 'right', icon: TextAlignRight },\n ],\n },\n};\n\nconst unitPositionConfig = {\n label: _('Units position'),\n editor: 'editor.select',\n option: 'unitPosition',\n editorProps: {\n values: [\n { label: _('Before'), value: 'before' },\n { label: _('After'), value: 'after' },\n ],\n },\n};\n\nconst unitLabelConfig = {\n label: _('Unit label'),\n option: 'unit',\n editor: 'editor.text',\n};\n\nconst timeFormattingConfig = {\n label: _('Date & Time formatting'),\n option: 'format',\n editor: 'editor.text',\n editorProps: {\n tooltip: _('For example: DD-MM-YYYY'),\n },\n};\n\nconst themes: ThemedDefaults = {\n defaultBackgroundColor,\n defaultHeaderBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.gray20(props),\n light: variables.gray92(props),\n },\n prisma: variables.backgroundColor(props),\n })(props),\n rowBackgroundColorEven: props =>\n pick({\n enterprise: { dark: 'rgba(35,36,41,0.4)', light: 'rgba(240,240,240,0.6)' },\n prisma: { dark: 'rgba(35,36,41,0.4)', light: 'rgba(240,240,240,0.6)' },\n })(props),\n rowBackgroundColorOdd: props =>\n pick({\n enterprise: { dark: 'rgba(0,0,0,0.4)', light: 'rgba(255,255,255,0.6)' },\n prisma: { dark: 'rgba(0,0,0,0.4)', light: 'rgba(255,255,255,0.6)' },\n })(props),\n textColor: props =>\n pick({\n enterprise: variables.textColor(props),\n prisma: variables.contentColorDefault(props),\n })(props),\n inverseTextColor: props =>\n pick({\n enterprise: {\n dark: variables.contentColorInverted(props), // equal to textColor in enterprise\n light: variables.white(props), // equal to textColor in enterpriseDark\n },\n prisma: variables.contentColorInverted(props),\n })(props),\n};\n\nconst backgroundColorPaletteSet = new Set(COLOR_EDITOR_PALETTE);\n\nconst EDITOR_LABEL_WIDTH = 100;\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Rows displayed'),\n option: 'count',\n editor: 'editor.number',\n editorProps: {\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Dynamic table height'),\n option: 'dynamicHeight',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Row numbers'),\n option: 'showRowNumbers',\n editor: 'editor.checkbox',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Internal fields'),\n option: 'showInternalFields',\n editor: 'editor.checkbox',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Header row'),\n option: 'headerVisibility',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Inline'), value: 'inline' },\n { label: _('Fixed'), value: 'fixed' },\n { label: _('Hidden'), value: 'none' },\n ],\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Footer totals row'),\n option: 'showFooterTotals',\n editor: 'editor.checkbox',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Footer percentages row'),\n option: 'showFooterPercentages',\n editor: 'editor.checkbox',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n ],\n },\n {\n label: _('Color and style'),\n layout: [\n [\n {\n key: 'backgroundColor',\n editor: 'editor.tableBackgroundColor',\n editorProps: {\n themes,\n labelPosition: 'top',\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n option: 'font',\n label: _('Font'),\n editor: 'editor.select',\n editorProps: {\n values: [\n {\n label: _('Proportional (Default)'),\n value: 'proportional',\n },\n { label: _('Monospace'), value: 'monospace' },\n ],\n labelPosition: 'top',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n option: 'fontSize',\n label: _('Font size'),\n editor: 'editor.select',\n editorProps: {\n values: [\n {\n label: _('Extra Small (font 10px, row 24px)'),\n value: 'extraSmall',\n },\n {\n label: _('Small (font 12px, row 24px)'),\n value: 'small',\n },\n {\n label: _('Default (font 14px, row 32px)'),\n value: 'default',\n },\n {\n label: _('Large (font 16px, row 36px)'),\n value: 'large',\n },\n ],\n labelPosition: 'top',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n ...headerAlignConfigTable,\n },\n ],\n [\n {\n ...textAlignConfigTable,\n },\n ],\n [\n {\n key: 'tableDynamicColor',\n editor: 'editor.tableDynamicColor',\n context: 'colorGradientConfig',\n option: 'tableFormat',\n label: _('Data colors'),\n filterKeywords: ['range', 'match', 'gradient', 'dynamic coloring'],\n editorProps: {\n labelPosition: 'top',\n formatters: [\n {\n label: _('Gradient'),\n value: 'gradient',\n isDefault: true,\n defaults: {\n table: defaultContext.colorGradientConfig,\n },\n },\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n table: defaultContext.colorRangeConfig,\n },\n },\n {\n label: _('Matches'),\n value: 'matchValue',\n defaults: {\n table: defaultContext.colorMatchConfig,\n },\n },\n ],\n dataSelectors: [\n {\n label: _('Table'),\n value: 'table',\n },\n ],\n defaultPalettesConfig,\n },\n },\n ],\n [\n {\n label: _('Column-specific formatting'),\n editor: 'editor.tableColumnFormatter',\n editorProps: {\n // popover: {sections: [textFormatConfig, formatByTypeConfig, columnColoringConfig]}\n // Table column coloring does not adhere to same DSL structure as other dynamically colored options\n // we use the FormatterEditor directly and not the DynamicColorEditor's provided DSL builders\n columnColoringConfig: {\n coloringTypes: [\n {\n label: _('Text'),\n value: 'rowColors',\n },\n {\n label: _('Background'),\n value: 'rowBackgroundColors',\n },\n ],\n formatters: [\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n rowBackgroundColors: defaultContext.colorRangeConfig,\n rowColors: defaultContext.colorRangeConfig,\n },\n },\n {\n label: _('Matches'),\n value: 'matchValue',\n defaults: {\n rowBackgroundColors: defaultContext.colorMatchConfig,\n rowColors: defaultContext.colorMatchConfig,\n },\n },\n ],\n themes,\n },\n defaultOptionsByType: {\n number: {\n thousandSeparated: false,\n unitPosition: 'after',\n },\n string: {\n unitPosition: 'after',\n },\n text: {\n align: 'auto',\n headerAlign: 'auto',\n textOverflow: 'break-word',\n },\n },\n textFormatConfig: [\n [\n {\n ...headerAlignConfigColumn,\n },\n ],\n [\n {\n ...textAlignConfigColumn,\n },\n ],\n [\n {\n ...textOverflowConfigColumn,\n },\n ],\n ],\n flyoutConfig: {\n number: [\n [\n {\n ...unitPositionConfig,\n },\n {\n ...unitLabelConfig,\n },\n ],\n [\n {\n label: _('Precision'),\n option: 'precision',\n editor: 'editor.select',\n editorProps: {\n values: generatePrecisionValues(20),\n },\n },\n {\n label: _('Thousand separators'),\n option: 'thousandSeparated',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n {\n label: _('Off'),\n value: false,\n },\n { label: _('On'), value: true },\n ],\n },\n },\n ],\n ],\n sparkline: [], // Configure via columnFormat.sparklineNullValueDisplay\n string: [\n [\n {\n ...unitPositionConfig,\n },\n {\n ...unitLabelConfig,\n },\n ],\n ],\n time: [\n [\n {\n ...timeFormattingConfig,\n },\n ],\n ],\n },\n value: ({ context, options }) => {\n return {\n context,\n columnFormat: options.columnFormat,\n tableFormat: options.tableFormat,\n };\n },\n },\n key: 'TableColumnFormatterEditor',\n },\n ],\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.table',\n /**\n * viz name\n */\n name: _('Table'),\n category: VizCategory.TABLE,\n /**\n * viz icon\n */\n icon: TableIcon,\n placeholderIcon: TablePlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'cell.click': {\n description: 'triggered when user clicks a table cell',\n },\n },\n supports: [\n VizBehavior.DYNAMIC_OPTIONS,\n VizBehavior.EVENTS,\n VizBehavior.PAGE_AND_SORT,\n VizBehavior.PLACEHOLDER,\n ],\n themes,\n};\n\nexport default enhanceConfig(config);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-schemas\";\nexport * from \"@splunk/visualization-schemas\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-color-palettes/editors/PresetPalettes\";\nexport * from \"@splunk/visualization-color-palettes/editors/PresetPalettes\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualizations-shared/colorConstants\";\nexport * from \"@splunk/visualizations-shared/colorConstants\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-icons\";\nexport * from \"@splunk/visualization-icons\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-icons/placeholders\";\nexport * from \"@splunk/visualization-icons/placeholders\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/themes/variables\";\nexport * from \"@splunk/themes/variables\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/themes/pick\";\nexport * from \"@splunk/themes/pick\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/TextAlignCenter\";\nexport * from \"@splunk/react-icons/TextAlignCenter\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/TextAlignLeft\";\nexport * from \"@splunk/react-icons/TextAlignLeft\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/TextAlignRight\";\nexport * from \"@splunk/react-icons/TextAlignRight\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"lodash\";\nexport * from \"lodash\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualizations-shared/configUtils\";\nexport * from \"@splunk/visualizations-shared/configUtils\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import { get, range } from 'lodash';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\n// included for backwards compatibility\nexport { enhanceOptionsSchemaWithDynamicOptions } from '@splunk/visualization-schemas';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * this function also collapse all editor panels\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n * and containing `open: false` for all editor panels in editorConfig\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = { ...vizConfig };\n\n enhancedConfig.editorConfig = vizConfig.editorConfig.map((config: EditorConfig): EditorConfig => {\n return { ...config, open: config.open || false };\n });\n return enhancedConfig;\n}\n\n/**\n * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig\n * Created for editor unit tests\n * @param vizConfig a Visualization Config\n * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig\n */\nfunction uncollapseEditorConfig(vizConfig: VizConfig): VizConfig {\n const editorPanelUncollapsedConfig: VizConfig = { ...vizConfig };\n editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: true };\n }\n );\n return editorPanelUncollapsedConfig;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport { enhanceConfig, getInitialPreset, generatePrecisionValues, uncollapseEditorConfig, isDynamicOption };\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n", "import pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\n\nexport const defaultBackgroundColor = props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.white(props),\n },\n prisma: variables.backgroundColorSection(props),\n })(props);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "config", "TableIcon", "TablePlaceholderIcon", "optionsSchema"]
|
|
7
7
|
}
|