@splunk/visualizations 28.8.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 +31 -1
- 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 +243 -140
- 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 +5 -0
- package/Markdown.config.js.map +2 -2
- package/Markdown.js +225 -94
- package/Markdown.js.map +3 -3
- package/MarkerGauge.js +239 -134
- 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 +15 -9
- package/RichText/PureRichText/InnerEditor.d.ts.map +1 -1
- package/RichText/PureRichText/PureRichText.d.ts +5 -10
- 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/useContentSync.d.ts +9 -9
- 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/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 +13 -24
- 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/types.d.ts +6 -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 +3 -1
- package/RichText/RichText.d.ts.map +1 -1
- package/RichText/config.d.ts.map +1 -1
- package/RichText.config.js +5 -0
- package/RichText.config.js.map +2 -2
- package/RichText.js +1848 -842
- 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.map +1 -1
- package/Table/Table.d.ts +2 -5
- package/Table/Table.d.ts.map +1 -1
- package/Table/hooks.d.ts.map +1 -1
- package/Table.config.js +1 -1
- package/Table.config.js.map +2 -2
- package/Table.js +293 -271
- package/Table.js.map +4 -4
- 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 +266 -142
- package/Timeline.js.map +4 -4
- package/Treemap/Treemap.d.ts +3 -1
- package/Treemap/Treemap.d.ts.map +1 -1
- package/Treemap.js +263 -147
- package/Treemap.js.map +4 -4
- 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.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 +15 -6
- 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 +4 -2
- package/common/gaugeUtils.js.map +2 -2
- package/common/hooks/useSorting.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/network-graph/options.md +2 -2
- package/docs-llm/pie/examples-json.md +195 -0
- package/docs-llm/pie/examples-react.md +123 -0
- package/docs-llm/pie/options.md +1 -1
- package/docs-llm/process-tree/options.md +3 -2
- package/package.json +24 -24
package/MarkerGauge.js
CHANGED
|
@@ -350,8 +350,10 @@ var getGradientStops = ({ ranges, orientation }) => {
|
|
|
350
350
|
const stopColors = getGradientStopColors({ ranges, orientation });
|
|
351
351
|
stops.push({ offset: `${offsets[0]}%`, stopColor: stopColors[0] });
|
|
352
352
|
for (let i = 1; i < ranges.length; i += 1) {
|
|
353
|
-
stops.push(
|
|
354
|
-
|
|
353
|
+
stops.push(
|
|
354
|
+
{ offset: `${offsets[i - 1]}%`, stopColor: stopColors[i] },
|
|
355
|
+
{ offset: `${offsets[i]}%`, stopColor: stopColors[i] }
|
|
356
|
+
);
|
|
355
357
|
}
|
|
356
358
|
return stops;
|
|
357
359
|
};
|
|
@@ -1825,7 +1827,10 @@ var useSortingParams = ({ requestParams, onRequestParamsChange }) => {
|
|
|
1825
1827
|
onSort = (e, { sortKey, sortDir }) => {
|
|
1826
1828
|
if (typeof sortKey === "string") {
|
|
1827
1829
|
const nextSortDir = (0, lodash_exports.has)(nextSortDirMap, sortDir) ? nextSortDirMap[sortDir] : "none";
|
|
1828
|
-
onRequestParamsChange(
|
|
1830
|
+
onRequestParamsChange(__spreadProps(__spreadValues({}, requestParams), {
|
|
1831
|
+
offset: 0,
|
|
1832
|
+
sort: { [sortKey]: nextSortDir }
|
|
1833
|
+
}));
|
|
1829
1834
|
} else {
|
|
1830
1835
|
onRequestParamsChange(requestParams);
|
|
1831
1836
|
}
|
|
@@ -1942,7 +1947,7 @@ var Cover = styled_components_default.div`
|
|
|
1942
1947
|
bottom: 0;
|
|
1943
1948
|
`;
|
|
1944
1949
|
var Blocker = styled_components_default.div.attrs({
|
|
1945
|
-
"data-splunk-visualization-version": "28.
|
|
1950
|
+
"data-splunk-visualization-version": "28.9.0 - 96b03188d"
|
|
1946
1951
|
})`
|
|
1947
1952
|
position: relative;
|
|
1948
1953
|
width: 100%;
|
|
@@ -1968,6 +1973,15 @@ var defaultImport28 = __toESM(require("@splunk/visualizations-shared/colorUtils"
|
|
|
1968
1973
|
__reExport(colorUtils_exports, require("@splunk/visualizations-shared/colorUtils"));
|
|
1969
1974
|
var colorUtils_default = "default" in defaultImport28 ? defaultImport28.default : defaultImport28;
|
|
1970
1975
|
|
|
1976
|
+
// esm-externals:@splunk/themes
|
|
1977
|
+
var themes_exports = {};
|
|
1978
|
+
__export(themes_exports, {
|
|
1979
|
+
default: () => themes_default
|
|
1980
|
+
});
|
|
1981
|
+
var defaultImport29 = __toESM(require("@splunk/themes"));
|
|
1982
|
+
__reExport(themes_exports, require("@splunk/themes"));
|
|
1983
|
+
var themes_default = "default" in defaultImport29 ? defaultImport29.default : defaultImport29;
|
|
1984
|
+
|
|
1971
1985
|
// src/common/hocs/FixedSizeContainer.tsx
|
|
1972
1986
|
var Item = styled_components_default.div.attrs(({ width }) => ({
|
|
1973
1987
|
style: {
|
|
@@ -2023,7 +2037,7 @@ var withFixedSizeContainer = (Viz) => {
|
|
|
2023
2037
|
FixSizeItem,
|
|
2024
2038
|
{
|
|
2025
2039
|
"data-test": "fix-size-item",
|
|
2026
|
-
"data-splunk-visualization-version": "28.
|
|
2040
|
+
"data-splunk-visualization-version": "28.9.0 - 96b03188d",
|
|
2027
2041
|
width,
|
|
2028
2042
|
height,
|
|
2029
2043
|
backgroundColor
|
|
@@ -2044,6 +2058,14 @@ var shouldShowIconPlaceholder = (dataSources, loading = false) => {
|
|
|
2044
2058
|
const noFields = fields === void 0;
|
|
2045
2059
|
return loading || noData || noFields;
|
|
2046
2060
|
};
|
|
2061
|
+
var PlaceholderContainer = styled_components_default.div`
|
|
2062
|
+
/* The inline token color wins when supported. Older browsers discard an
|
|
2063
|
+
unsupported oklch value and retain this inherited fallback instead. */
|
|
2064
|
+
color: ${(0, themes_exports.pick)({
|
|
2065
|
+
dark: "#fafafa",
|
|
2066
|
+
light: "#2c2c2c"
|
|
2067
|
+
})};
|
|
2068
|
+
`;
|
|
2047
2069
|
var IconPlaceholder = (props) => {
|
|
2048
2070
|
const {
|
|
2049
2071
|
width = SplunkVisualization_default.defaults.width,
|
|
@@ -2058,7 +2080,6 @@ var IconPlaceholder = (props) => {
|
|
|
2058
2080
|
style: {
|
|
2059
2081
|
left: "50%",
|
|
2060
2082
|
top: "50%",
|
|
2061
|
-
color: iconColor,
|
|
2062
2083
|
opacity: 0.15,
|
|
2063
2084
|
position: "absolute",
|
|
2064
2085
|
transform: "translate(-50%, -50%)"
|
|
@@ -2068,7 +2089,14 @@ var IconPlaceholder = (props) => {
|
|
|
2068
2089
|
"data-test": "icon-placeholder"
|
|
2069
2090
|
});
|
|
2070
2091
|
}
|
|
2071
|
-
return /* @__PURE__ */ react_exports.createElement(
|
|
2092
|
+
return /* @__PURE__ */ react_exports.createElement(
|
|
2093
|
+
PlaceholderContainer,
|
|
2094
|
+
{
|
|
2095
|
+
"data-test": "icon-placeholder-container",
|
|
2096
|
+
style: { width, height, background: backgroundColor, color: iconColor }
|
|
2097
|
+
},
|
|
2098
|
+
content
|
|
2099
|
+
);
|
|
2072
2100
|
};
|
|
2073
2101
|
var IconPlaceholder_default = FixedSizeContainer_default(IconPlaceholder);
|
|
2074
2102
|
|
|
@@ -2133,7 +2161,7 @@ var largestTriangleThreeBuckets = (data, threshold, preferredDownsampleIndices)
|
|
|
2133
2161
|
let avgY = 0;
|
|
2134
2162
|
let avgRangeStart = Math.floor((i + 1) * every) + 1;
|
|
2135
2163
|
let avgRangeEnd = Math.floor((i + 2) * every) + 1;
|
|
2136
|
-
avgRangeEnd = avgRangeEnd
|
|
2164
|
+
avgRangeEnd = Math.min(avgRangeEnd, dataLength);
|
|
2137
2165
|
const avgRangeLength = avgRangeEnd - avgRangeStart;
|
|
2138
2166
|
for (; avgRangeStart < avgRangeEnd; avgRangeStart++) {
|
|
2139
2167
|
avgX += Number(data[avgRangeStart][0]);
|
|
@@ -2168,9 +2196,9 @@ var largestTriangleThreeBuckets = (data, threshold, preferredDownsampleIndices)
|
|
|
2168
2196
|
};
|
|
2169
2197
|
var strictlyCoerceYColumn = (column, options) => {
|
|
2170
2198
|
const isNullCoercionEnabled = options.nullValueDisplay === "zero";
|
|
2171
|
-
const canLooselyCoerceSomeValues = column.
|
|
2199
|
+
const canLooselyCoerceSomeValues = column.some(
|
|
2172
2200
|
(value) => (0, numberUtils_exports.startsWithNumber)(`${value}`) || isNullCoercionEnabled && value === null
|
|
2173
|
-
)
|
|
2201
|
+
);
|
|
2174
2202
|
const coercedColumn = [];
|
|
2175
2203
|
const canDownsampleColumn = !column.some((value) => {
|
|
2176
2204
|
const coercedValue = Number(value);
|
|
@@ -2189,7 +2217,7 @@ var strictlyCoerceYColumn = (column, options) => {
|
|
|
2189
2217
|
};
|
|
2190
2218
|
var strictlyCoerceXColumn = (column, fieldType) => {
|
|
2191
2219
|
if (fieldType === "number") {
|
|
2192
|
-
const coercedXColumn = column.map(
|
|
2220
|
+
const coercedXColumn = column.map(Number);
|
|
2193
2221
|
if (isColumnStrictlyIncreasing(coercedXColumn, fieldType)) {
|
|
2194
2222
|
return coercedXColumn;
|
|
2195
2223
|
}
|
|
@@ -2488,16 +2516,16 @@ var FeatureFlags_exports = {};
|
|
|
2488
2516
|
__export(FeatureFlags_exports, {
|
|
2489
2517
|
default: () => FeatureFlags_default
|
|
2490
2518
|
});
|
|
2491
|
-
var
|
|
2519
|
+
var defaultImport30 = __toESM(require("@splunk/visualization-context/FeatureFlags"));
|
|
2492
2520
|
__reExport(FeatureFlags_exports, require("@splunk/visualization-context/FeatureFlags"));
|
|
2493
|
-
var FeatureFlags_default = "default" in
|
|
2521
|
+
var FeatureFlags_default = "default" in defaultImport30 ? defaultImport30.default : defaultImport30;
|
|
2494
2522
|
|
|
2495
2523
|
// src/common/utils/featureFlagUtils.ts
|
|
2496
2524
|
var getFeatureFlag = (context, flagName) => {
|
|
2497
|
-
if (context && Object.keys(context).
|
|
2525
|
+
if (context && Object.keys(context).includes(flagName)) {
|
|
2498
2526
|
return context[flagName];
|
|
2499
2527
|
}
|
|
2500
|
-
if (Object.keys(FeatureFlags_default).
|
|
2528
|
+
if (Object.keys(FeatureFlags_default).includes(flagName)) {
|
|
2501
2529
|
return FeatureFlags_default[flagName];
|
|
2502
2530
|
}
|
|
2503
2531
|
return false;
|
|
@@ -2508,9 +2536,9 @@ var trellisUtils_exports = {};
|
|
|
2508
2536
|
__export(trellisUtils_exports, {
|
|
2509
2537
|
default: () => trellisUtils_default
|
|
2510
2538
|
});
|
|
2511
|
-
var
|
|
2539
|
+
var defaultImport31 = __toESM(require("@splunk/visualizations-shared/trellisUtils"));
|
|
2512
2540
|
__reExport(trellisUtils_exports, require("@splunk/visualizations-shared/trellisUtils"));
|
|
2513
|
-
var trellisUtils_default = "default" in
|
|
2541
|
+
var trellisUtils_default = "default" in defaultImport31 ? defaultImport31.default : defaultImport31;
|
|
2514
2542
|
|
|
2515
2543
|
// src/common/utils/trellisUtils.ts
|
|
2516
2544
|
var AGGREGATIONS = "aggregations";
|
|
@@ -2731,7 +2759,7 @@ var dataSourcesSplitByModeChart = (dataSource, splitBy) => {
|
|
|
2731
2759
|
splitByFields = (0, trellisUtils_exports.extractSplitByFieldsChartFields)(fields);
|
|
2732
2760
|
}
|
|
2733
2761
|
if (splitByFields == null ? void 0 : splitByFields.includes(splitBy)) {
|
|
2734
|
-
const splitByFieldIdx = splitByFields.
|
|
2762
|
+
const splitByFieldIdx = splitByFields.indexOf(splitBy);
|
|
2735
2763
|
const otherSplitBy = splitByFields.filter((f) => f !== splitBy);
|
|
2736
2764
|
const dataSourceKeys = (0, trellisUtils_exports.extractDataSourceAggregationKeysChart)(fields);
|
|
2737
2765
|
const nonDataSourceAggregations = [];
|
|
@@ -2765,17 +2793,17 @@ var dataSourcesSplitByModeStatsorUnknown = (dataSource, splitBy, splitMode) => {
|
|
|
2765
2793
|
let splitByFields = [];
|
|
2766
2794
|
let errorCode = null;
|
|
2767
2795
|
if (fields.length > 0) {
|
|
2768
|
-
splitByFields = splitMode
|
|
2796
|
+
splitByFields = splitMode === trellisUtils_exports.UNKNOWN ? (0, trellisUtils_exports.extractSplitByFieldsForUnknown)(fields) : (0, trellisUtils_exports.extractSplitByFieldsForStats)(fields);
|
|
2769
2797
|
}
|
|
2770
2798
|
const splitByIndex = fields.findIndex((field) => field.name === splitBy);
|
|
2771
2799
|
if (splitByFields == null ? void 0 : splitByFields.includes(splitBy)) {
|
|
2772
2800
|
const splitByColumn = (_f = (_e = dataSource == null ? void 0 : dataSource.primary) == null ? void 0 : _e.data) == null ? void 0 : _f.columns[splitByIndex];
|
|
2773
2801
|
splitDataSources = {};
|
|
2774
2802
|
splitByColumn.forEach((val, idx) => {
|
|
2775
|
-
if (
|
|
2776
|
-
splitDataSources[val] = [idx];
|
|
2777
|
-
} else {
|
|
2803
|
+
if (splitDataSources[val]) {
|
|
2778
2804
|
splitDataSources[val].push(idx);
|
|
2805
|
+
} else {
|
|
2806
|
+
splitDataSources[val] = [idx];
|
|
2779
2807
|
}
|
|
2780
2808
|
});
|
|
2781
2809
|
const cloneFields = (0, lodash_exports.cloneDeep)(fields);
|
|
@@ -2826,27 +2854,28 @@ var turnOffLegendDisplayWhenTrellisIsOn = (isTrellisOn, options) => {
|
|
|
2826
2854
|
}
|
|
2827
2855
|
return {};
|
|
2828
2856
|
};
|
|
2857
|
+
var extendMinMaxWithColumn = (column, range2) => column.reduce((acc, point) => {
|
|
2858
|
+
const pointNumber = Number(point);
|
|
2859
|
+
if (Number.isNaN(pointNumber)) {
|
|
2860
|
+
return acc;
|
|
2861
|
+
}
|
|
2862
|
+
return {
|
|
2863
|
+
min: Math.min(pointNumber, acc.min),
|
|
2864
|
+
max: Math.max(pointNumber, acc.max)
|
|
2865
|
+
};
|
|
2866
|
+
}, range2);
|
|
2829
2867
|
var calculateSharedMinMax = (splitData) => {
|
|
2830
|
-
let
|
|
2831
|
-
let min = Infinity;
|
|
2868
|
+
let range2 = { min: Infinity, max: -Infinity };
|
|
2832
2869
|
Object.keys(splitData).forEach((splitByKey) => {
|
|
2833
2870
|
const datasources = splitData[splitByKey];
|
|
2834
2871
|
Object.keys(datasources).forEach((datasourceName) => {
|
|
2835
2872
|
const dataColumns = datasources[datasourceName].data.columns;
|
|
2836
2873
|
dataColumns.forEach((column) => {
|
|
2837
|
-
column
|
|
2838
|
-
const pointNumber = Number(point);
|
|
2839
|
-
if (pointNumber > max) {
|
|
2840
|
-
max = pointNumber;
|
|
2841
|
-
}
|
|
2842
|
-
if (pointNumber < min) {
|
|
2843
|
-
min = pointNumber;
|
|
2844
|
-
}
|
|
2845
|
-
});
|
|
2874
|
+
range2 = extendMinMaxWithColumn(column, range2);
|
|
2846
2875
|
});
|
|
2847
2876
|
});
|
|
2848
2877
|
});
|
|
2849
|
-
return [min, max];
|
|
2878
|
+
return [range2.min, range2.max];
|
|
2850
2879
|
};
|
|
2851
2880
|
var determineMinMax = (splitData, trellisSharedScale, yAxisMin, yAxisMax, stackMode) => {
|
|
2852
2881
|
if (!trellisSharedScale || stackMode === "stacked100" || yAxisMin !== "auto" && yAxisMax !== "auto")
|
|
@@ -2862,9 +2891,9 @@ var visualization_canvas_exports = {};
|
|
|
2862
2891
|
__export(visualization_canvas_exports, {
|
|
2863
2892
|
default: () => visualization_canvas_default
|
|
2864
2893
|
});
|
|
2865
|
-
var
|
|
2894
|
+
var defaultImport32 = __toESM(require("@splunk/visualization-canvas"));
|
|
2866
2895
|
__reExport(visualization_canvas_exports, require("@splunk/visualization-canvas"));
|
|
2867
|
-
var visualization_canvas_default = "default" in
|
|
2896
|
+
var visualization_canvas_default = "default" in defaultImport32 ? defaultImport32.default : defaultImport32;
|
|
2868
2897
|
|
|
2869
2898
|
// src/common/components/VizStyleWrapper.jsx
|
|
2870
2899
|
var VizStyleWrapper = styled_components_default.div.attrs(({ dataTestKey }) => ({
|
|
@@ -2886,27 +2915,27 @@ var Triangle_exports = {};
|
|
|
2886
2915
|
__export(Triangle_exports, {
|
|
2887
2916
|
default: () => Triangle_default
|
|
2888
2917
|
});
|
|
2889
|
-
var
|
|
2918
|
+
var defaultImport33 = __toESM(require("@splunk/react-icons/Triangle"));
|
|
2890
2919
|
__reExport(Triangle_exports, require("@splunk/react-icons/Triangle"));
|
|
2891
|
-
var Triangle_default = "default" in
|
|
2920
|
+
var Triangle_default = "default" in defaultImport33 ? defaultImport33.default : defaultImport33;
|
|
2892
2921
|
|
|
2893
2922
|
// esm-externals:@splunk/visualizations-shared/propUtils
|
|
2894
2923
|
var propUtils_exports = {};
|
|
2895
2924
|
__export(propUtils_exports, {
|
|
2896
2925
|
default: () => propUtils_default
|
|
2897
2926
|
});
|
|
2898
|
-
var
|
|
2927
|
+
var defaultImport34 = __toESM(require("@splunk/visualizations-shared/propUtils"));
|
|
2899
2928
|
__reExport(propUtils_exports, require("@splunk/visualizations-shared/propUtils"));
|
|
2900
|
-
var propUtils_default = "default" in
|
|
2929
|
+
var propUtils_default = "default" in defaultImport34 ? defaultImport34.default : defaultImport34;
|
|
2901
2930
|
|
|
2902
2931
|
// esm-externals:@splunk/visualizations-shared/simpleXMLOptions
|
|
2903
2932
|
var simpleXMLOptions_exports = {};
|
|
2904
2933
|
__export(simpleXMLOptions_exports, {
|
|
2905
2934
|
default: () => simpleXMLOptions_default
|
|
2906
2935
|
});
|
|
2907
|
-
var
|
|
2936
|
+
var defaultImport35 = __toESM(require("@splunk/visualizations-shared/simpleXMLOptions"));
|
|
2908
2937
|
__reExport(simpleXMLOptions_exports, require("@splunk/visualizations-shared/simpleXMLOptions"));
|
|
2909
|
-
var simpleXMLOptions_default = "default" in
|
|
2938
|
+
var simpleXMLOptions_default = "default" in defaultImport35 ? defaultImport35.default : defaultImport35;
|
|
2910
2939
|
|
|
2911
2940
|
// src/common/chartingUtils.ts
|
|
2912
2941
|
var DEFAULT_LINE_WIDTH = 2;
|
|
@@ -2945,9 +2974,9 @@ var shouldEnableSearchZoom = (eventHandlers = [], xField = "") => {
|
|
|
2945
2974
|
const xAxisIsTime = xField === "_time";
|
|
2946
2975
|
return !!rangeSelectEventHandler && xAxisIsTime;
|
|
2947
2976
|
};
|
|
2948
|
-
var canvasSupportedTimeSeriesCharts = ["splunk.line", "splunk.area"];
|
|
2977
|
+
var canvasSupportedTimeSeriesCharts = /* @__PURE__ */ new Set(["splunk.line", "splunk.area"]);
|
|
2949
2978
|
var isTimeSeriesCanvasRenderSupported = (vizConfigKey) => {
|
|
2950
|
-
return canvasSupportedTimeSeriesCharts.
|
|
2979
|
+
return canvasSupportedTimeSeriesCharts.has(vizConfigKey);
|
|
2951
2980
|
};
|
|
2952
2981
|
var filterChartDataFromInternalFields = (chartData) => {
|
|
2953
2982
|
const { fields, columns } = chartData;
|
|
@@ -2963,7 +2992,7 @@ var filterChartDataFromInternalFields = (chartData) => {
|
|
|
2963
2992
|
return { fields: filteredFields, columns: filteredColumns };
|
|
2964
2993
|
};
|
|
2965
2994
|
var convert2DArrayToNumbers = (arr) => {
|
|
2966
|
-
return arr.map((subArray) => subArray.map((element) => parseFloat(element)));
|
|
2995
|
+
return arr.map((subArray) => subArray.map((element) => Number.parseFloat(element)));
|
|
2967
2996
|
};
|
|
2968
2997
|
var parseAxisValue = (val) => {
|
|
2969
2998
|
if (val === void 0 || val === null || val === "auto" || val === "") {
|
|
@@ -3001,6 +3030,7 @@ var getLegend = (props) => {
|
|
|
3001
3030
|
return (0, visualization_canvas_exports.TopLegendFactory)(__spreadValues({
|
|
3002
3031
|
wrap: true
|
|
3003
3032
|
}, commonLegendProps));
|
|
3033
|
+
// Note: By default, use right legend
|
|
3004
3034
|
default:
|
|
3005
3035
|
return (0, visualization_canvas_exports.SideLegendFactory)(__spreadValues({}, commonLegendProps));
|
|
3006
3036
|
}
|
|
@@ -3133,10 +3163,10 @@ var getSeriesOverrides = (opts) => {
|
|
|
3133
3163
|
let spanGaps;
|
|
3134
3164
|
if (nullValueMode === "gaps") {
|
|
3135
3165
|
spanGaps = false;
|
|
3136
|
-
} else if (nullValueMode
|
|
3137
|
-
spanGaps = true;
|
|
3138
|
-
} else {
|
|
3166
|
+
} else if (nullValueMode == null) {
|
|
3139
3167
|
spanGaps = void 0;
|
|
3168
|
+
} else {
|
|
3169
|
+
spanGaps = true;
|
|
3140
3170
|
}
|
|
3141
3171
|
const replaceNullsWithZero = nullValueMode === "zero" ? true : void 0;
|
|
3142
3172
|
const isAreaChart = type === "area";
|
|
@@ -3506,11 +3536,11 @@ var TimeSeriesChartWrapper = (props) => {
|
|
|
3506
3536
|
y2AxisMajorUnitFromSimpleXML,
|
|
3507
3537
|
y2AxisMajorTickInterval
|
|
3508
3538
|
);
|
|
3509
|
-
const xAxisMajorTickSizeNum = xAxisMajorTickSize
|
|
3510
|
-
const yAxisMajorTickSizeNum = yAxisMajorTickSize
|
|
3511
|
-
const y2AxisMajorTickSizeNum = y2AxisMajorTickSize
|
|
3512
|
-
const yAxisMinorTickSizeNum = yAxisMinorTickSize
|
|
3513
|
-
const y2AxisMinorTickSizeNum = y2AxisMinorTickSize
|
|
3539
|
+
const xAxisMajorTickSizeNum = xAxisMajorTickSize == null ? void 0 : Number(xAxisMajorTickSize);
|
|
3540
|
+
const yAxisMajorTickSizeNum = yAxisMajorTickSize == null ? void 0 : Number(yAxisMajorTickSize);
|
|
3541
|
+
const y2AxisMajorTickSizeNum = y2AxisMajorTickSize == null ? void 0 : Number(y2AxisMajorTickSize);
|
|
3542
|
+
const yAxisMinorTickSizeNum = yAxisMinorTickSize == null ? void 0 : Number(yAxisMinorTickSize);
|
|
3543
|
+
const y2AxisMinorTickSizeNum = y2AxisMinorTickSize == null ? void 0 : Number(y2AxisMinorTickSize);
|
|
3514
3544
|
const areaOpacityForCanvas = getAreaOpacityForCanvas(areaOpacity);
|
|
3515
3545
|
const seriesColors = seriesColorsStr ? JSON.parse(seriesColorsStr) : void 0;
|
|
3516
3546
|
const seriesColorsByField = fieldColors ? JSON.parse(fieldColors) : void 0;
|
|
@@ -3922,6 +3952,76 @@ var buildEventCallbackProps = (supportedEvents, evaluatedOptionsToUse, onEventTr
|
|
|
3922
3952
|
});
|
|
3923
3953
|
return result;
|
|
3924
3954
|
};
|
|
3955
|
+
var buildAllEventCallbackProps = (events, evaluatedOptionsToUse, onEventTrigger, { supportsEvents, hasEventHandlers, mode }) => {
|
|
3956
|
+
if (!supportsEvents) return {};
|
|
3957
|
+
const defaultEvents = {};
|
|
3958
|
+
const userEvents = {};
|
|
3959
|
+
Object.entries(events || {}).forEach(([eventKey, eventConfig]) => {
|
|
3960
|
+
(eventConfig.source === "default" ? defaultEvents : userEvents)[eventKey] = eventConfig;
|
|
3961
|
+
});
|
|
3962
|
+
const userProps = hasEventHandlers && mode === "view" ? buildEventCallbackProps(userEvents, evaluatedOptionsToUse, onEventTrigger) : {};
|
|
3963
|
+
return __spreadValues(__spreadValues({}, userProps), buildEventCallbackProps(defaultEvents, evaluatedOptionsToUse, onEventTrigger));
|
|
3964
|
+
};
|
|
3965
|
+
var applyContextTimezone = (localeContext) => {
|
|
3966
|
+
if (localeContext.serializedTimezone && !moment_default.getDefaultSplunkTimezone()) {
|
|
3967
|
+
moment_default.setDefaultSplunkTimezone(localeContext.serializedTimezone);
|
|
3968
|
+
}
|
|
3969
|
+
};
|
|
3970
|
+
var getAsyncOptionsEvaluationParams = ({
|
|
3971
|
+
visualizationID,
|
|
3972
|
+
props,
|
|
3973
|
+
optionsToEvaluate,
|
|
3974
|
+
downsampledDataSources,
|
|
3975
|
+
vizConfig,
|
|
3976
|
+
bypassCloneDeepOptionScope,
|
|
3977
|
+
lazyLoadingDataFrame
|
|
3978
|
+
}) => {
|
|
3979
|
+
return {
|
|
3980
|
+
visualizationID,
|
|
3981
|
+
props,
|
|
3982
|
+
options: __spreadValues({}, optionsToEvaluate),
|
|
3983
|
+
dataSources: downsampledDataSources,
|
|
3984
|
+
theme: vizConfig.themes,
|
|
3985
|
+
bypassCloneDeepOptionScope,
|
|
3986
|
+
lazyLoadingDataFrame
|
|
3987
|
+
};
|
|
3988
|
+
};
|
|
3989
|
+
var evaluateOptionsSync = ({
|
|
3990
|
+
optionsToEvaluate,
|
|
3991
|
+
downsampledDataSources,
|
|
3992
|
+
dataSourcesInState,
|
|
3993
|
+
dataFramesInState,
|
|
3994
|
+
setDataSourcesInState,
|
|
3995
|
+
setDataFramesInState,
|
|
3996
|
+
computeDataFrames,
|
|
3997
|
+
featureFlagContext,
|
|
3998
|
+
themeFunc
|
|
3999
|
+
}) => {
|
|
4000
|
+
let dataFrames = dataFramesInState;
|
|
4001
|
+
if (downsampledDataSources !== dataSourcesInState) {
|
|
4002
|
+
setDataSourcesInState(downsampledDataSources);
|
|
4003
|
+
dataFrames = Options_exports.Options.dataFrameFromDataSource(
|
|
4004
|
+
downsampledDataSources,
|
|
4005
|
+
getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
|
|
4006
|
+
);
|
|
4007
|
+
setDataFramesInState(dataFrames);
|
|
4008
|
+
}
|
|
4009
|
+
let mergedFrames = dataFrames;
|
|
4010
|
+
if (computeDataFrames && dataFrames) {
|
|
4011
|
+
const derivedFrames = computeDataFrames({
|
|
4012
|
+
dataSources: downsampledDataSources,
|
|
4013
|
+
options: optionsToEvaluate.options
|
|
4014
|
+
});
|
|
4015
|
+
mergedFrames = __spreadValues(__spreadValues({}, dataFrames), derivedFrames);
|
|
4016
|
+
}
|
|
4017
|
+
return Options_exports.Options.evaluate(
|
|
4018
|
+
optionsToEvaluate,
|
|
4019
|
+
downsampledDataSources,
|
|
4020
|
+
themeFunc,
|
|
4021
|
+
mergedFrames,
|
|
4022
|
+
getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
|
|
4023
|
+
);
|
|
4024
|
+
};
|
|
3925
4025
|
var withDashboardViz = (opts) => {
|
|
3926
4026
|
const {
|
|
3927
4027
|
ReactViz,
|
|
@@ -3953,11 +4053,7 @@ var withDashboardViz = (opts) => {
|
|
|
3953
4053
|
onRequestParamsChange = lodash_exports.noop
|
|
3954
4054
|
} = props;
|
|
3955
4055
|
const localeContext = react_exports.useContext(TimezoneContext_default);
|
|
3956
|
-
|
|
3957
|
-
if (!moment_default.getDefaultSplunkTimezone()) {
|
|
3958
|
-
moment_default.setDefaultSplunkTimezone(localeContext.serializedTimezone);
|
|
3959
|
-
}
|
|
3960
|
-
}
|
|
4056
|
+
applyContextTimezone(localeContext);
|
|
3961
4057
|
const themeFunc = (themeVar) => {
|
|
3962
4058
|
var _a2, _b;
|
|
3963
4059
|
return (_b = (_a2 = vizConfig.themes)[themeVar]) == null ? void 0 : _b.call(_a2, props);
|
|
@@ -3985,7 +4081,12 @@ var withDashboardViz = (opts) => {
|
|
|
3985
4081
|
featureFlagContext == null ? void 0 : featureFlagContext.visualizations_enableAcceleratedRender
|
|
3986
4082
|
);
|
|
3987
4083
|
const isAcceleratedRenderOn = isAcceleratedRenderFeatureFlagOn && isTimeSeriesCanvasRenderSupported(vizConfig.key) && (options == null ? void 0 : options.acceleratedRender) === true;
|
|
3988
|
-
const
|
|
4084
|
+
const bypassCloneDeepOptionScope = Boolean(
|
|
4085
|
+
getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
|
|
4086
|
+
);
|
|
4087
|
+
const lazyLoadingDataFrame = Boolean(
|
|
4088
|
+
getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
|
|
4089
|
+
);
|
|
3989
4090
|
const optionsToEvaluate = react_exports.useMemo(() => {
|
|
3990
4091
|
var _a2;
|
|
3991
4092
|
const legendDisplay = turnOffLegendDisplayWhenTrellisIsOn(isTrellisOn, options);
|
|
@@ -4024,63 +4125,74 @@ var withDashboardViz = (opts) => {
|
|
|
4024
4125
|
threshold,
|
|
4025
4126
|
isDownsamplingEnabled
|
|
4026
4127
|
});
|
|
4027
|
-
|
|
4128
|
+
const asyncOptionsEvaluationParams = useDeepMemo(
|
|
4129
|
+
() => getAsyncOptionsEvaluationParams({
|
|
4130
|
+
visualizationID,
|
|
4131
|
+
props,
|
|
4132
|
+
optionsToEvaluate,
|
|
4133
|
+
downsampledDataSources,
|
|
4134
|
+
vizConfig,
|
|
4135
|
+
bypassCloneDeepOptionScope,
|
|
4136
|
+
lazyLoadingDataFrame
|
|
4137
|
+
}),
|
|
4138
|
+
[
|
|
4139
|
+
visualizationID,
|
|
4140
|
+
optionsToEvaluate,
|
|
4141
|
+
downsampledDataSources,
|
|
4142
|
+
vizConfig,
|
|
4143
|
+
bypassCloneDeepOptionScope,
|
|
4144
|
+
lazyLoadingDataFrame,
|
|
4145
|
+
currentThemeFamily,
|
|
4146
|
+
currentThemeColorScheme,
|
|
4147
|
+
currentThemeDensity,
|
|
4148
|
+
localeContext.serializedTimezone
|
|
4149
|
+
]
|
|
4150
|
+
);
|
|
4151
|
+
react_exports.useEffect(() => {
|
|
4152
|
+
if (!useAsyncEvaluatedOptions) {
|
|
4153
|
+
return void 0;
|
|
4154
|
+
}
|
|
4155
|
+
let ownsEvaluation = true;
|
|
4028
4156
|
try {
|
|
4029
|
-
|
|
4030
|
-
|
|
4031
|
-
visualizationID,
|
|
4032
|
-
props,
|
|
4033
|
-
options: optionsToEvaluate,
|
|
4034
|
-
dataSources: downsampledDataSources,
|
|
4035
|
-
theme: vizConfig.themes,
|
|
4036
|
-
bypassCloneDeepOptionScope: Boolean(
|
|
4037
|
-
getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
|
|
4038
|
-
),
|
|
4039
|
-
lazyLoadingDataFrame: Boolean(
|
|
4040
|
-
getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
|
|
4041
|
-
)
|
|
4042
|
-
};
|
|
4043
|
-
async_dynamic_options_evaluator_default.evaluate(asyncDynamicOptionsEvaluatorParams).then((results) => {
|
|
4157
|
+
async_dynamic_options_evaluator_default.evaluate(asyncOptionsEvaluationParams).then((results) => {
|
|
4158
|
+
if (ownsEvaluation) {
|
|
4044
4159
|
setEvaluatedOptionsAsync(results.results);
|
|
4045
|
-
}).catch(() => {
|
|
4046
|
-
if (isMounted.current) {
|
|
4047
|
-
setUseAsyncEvaluatedOptions(false);
|
|
4048
|
-
}
|
|
4049
|
-
});
|
|
4050
|
-
} else {
|
|
4051
|
-
let dataFrames = dataFramesInState;
|
|
4052
|
-
if (downsampledDataSources !== dataSourcesInState) {
|
|
4053
|
-
setDataSourcesInState(downsampledDataSources);
|
|
4054
|
-
dataFrames = Options_exports.Options.dataFrameFromDataSource(
|
|
4055
|
-
downsampledDataSources,
|
|
4056
|
-
getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
|
|
4057
|
-
);
|
|
4058
|
-
setDataFramesInState(dataFrames);
|
|
4059
4160
|
}
|
|
4060
|
-
|
|
4061
|
-
if (
|
|
4062
|
-
|
|
4063
|
-
dataSources: downsampledDataSources,
|
|
4064
|
-
options: optionsToEvaluate.options
|
|
4065
|
-
});
|
|
4066
|
-
mergedFrames = __spreadValues(__spreadValues({}, dataFrames), derivedFrames);
|
|
4161
|
+
}).catch(() => {
|
|
4162
|
+
if (ownsEvaluation) {
|
|
4163
|
+
setUseAsyncEvaluatedOptions(false);
|
|
4067
4164
|
}
|
|
4068
|
-
|
|
4069
|
-
|
|
4070
|
-
|
|
4071
|
-
|
|
4072
|
-
|
|
4073
|
-
|
|
4074
|
-
|
|
4075
|
-
|
|
4165
|
+
});
|
|
4166
|
+
} catch (e) {
|
|
4167
|
+
setUseAsyncEvaluatedOptions(false);
|
|
4168
|
+
}
|
|
4169
|
+
return () => {
|
|
4170
|
+
ownsEvaluation = false;
|
|
4171
|
+
async_dynamic_options_evaluator_default.reset(visualizationID);
|
|
4172
|
+
};
|
|
4173
|
+
}, [asyncOptionsEvaluationParams, useAsyncEvaluatedOptions, visualizationID]);
|
|
4174
|
+
evaluatedOptions = useDeepMemo(() => {
|
|
4175
|
+
try {
|
|
4176
|
+
if (useAsyncEvaluatedOptions) {
|
|
4177
|
+
return {};
|
|
4076
4178
|
}
|
|
4179
|
+
return evaluateOptionsSync({
|
|
4180
|
+
optionsToEvaluate,
|
|
4181
|
+
downsampledDataSources,
|
|
4182
|
+
dataSourcesInState,
|
|
4183
|
+
dataFramesInState,
|
|
4184
|
+
setDataSourcesInState,
|
|
4185
|
+
setDataFramesInState,
|
|
4186
|
+
computeDataFrames,
|
|
4187
|
+
featureFlagContext,
|
|
4188
|
+
themeFunc
|
|
4189
|
+
});
|
|
4077
4190
|
} catch (e) {
|
|
4078
4191
|
if (e instanceof Error) {
|
|
4079
4192
|
console.error(`unexpected error evaluating options: ${e.message}`);
|
|
4080
4193
|
}
|
|
4081
4194
|
return {};
|
|
4082
4195
|
}
|
|
4083
|
-
return {};
|
|
4084
4196
|
}, [
|
|
4085
4197
|
currentThemeFamily,
|
|
4086
4198
|
currentThemeColorScheme,
|
|
@@ -4090,7 +4202,7 @@ var withDashboardViz = (opts) => {
|
|
|
4090
4202
|
localeContext.serializedTimezone,
|
|
4091
4203
|
useAsyncEvaluatedOptions
|
|
4092
4204
|
]);
|
|
4093
|
-
const evaluatedOptionsToUse =
|
|
4205
|
+
const evaluatedOptionsToUse = useAsyncEvaluatedOptions ? evaluatedOptionsAsync : evaluatedOptions;
|
|
4094
4206
|
let dataSourceMetadata = {};
|
|
4095
4207
|
const OptionKey = "paginateDataSourceKey";
|
|
4096
4208
|
const optsKey = (0, lodash_exports.has)(evaluatedOptionsToUse, OptionKey) && evaluatedOptionsToUse[OptionKey];
|
|
@@ -4112,7 +4224,7 @@ var withDashboardViz = (opts) => {
|
|
|
4112
4224
|
sortParams,
|
|
4113
4225
|
paginatorParams
|
|
4114
4226
|
};
|
|
4115
|
-
if (vizConfig.supports.
|
|
4227
|
+
if (!vizConfig.supports.includes("page-and-sort" /* PAGE_AND_SORT */) && !(0, lodash_exports.has)(dataSources, paginateDataSourceKey)) {
|
|
4116
4228
|
dataSourceMetadata = {};
|
|
4117
4229
|
}
|
|
4118
4230
|
const clonedEvaluatedOptions = __spreadValues({}, evaluatedOptionsToUse);
|
|
@@ -4122,14 +4234,6 @@ var withDashboardViz = (opts) => {
|
|
|
4122
4234
|
react_exports.useEffect(() => {
|
|
4123
4235
|
onComputedProps(clonedEvaluatedOptions);
|
|
4124
4236
|
});
|
|
4125
|
-
react_exports.useEffect(() => {
|
|
4126
|
-
return () => {
|
|
4127
|
-
if (useAsyncEvaluatedOptions) {
|
|
4128
|
-
isMounted.current = false;
|
|
4129
|
-
async_dynamic_options_evaluator_default.reset(visualizationID);
|
|
4130
|
-
}
|
|
4131
|
-
};
|
|
4132
|
-
}, []);
|
|
4133
4237
|
const { requiredProps = [], supports } = vizConfig;
|
|
4134
4238
|
const missing = missingKeys(requiredProps, evaluatedOptionsToUse);
|
|
4135
4239
|
if (missing.length > 0 && supports.includes("placeholder" /* PLACEHOLDER */) && vizConfig.key !== "splunk.singlevalue") {
|
|
@@ -4144,7 +4248,16 @@ var withDashboardViz = (opts) => {
|
|
|
4144
4248
|
}
|
|
4145
4249
|
);
|
|
4146
4250
|
}
|
|
4147
|
-
const eventCallbackProps =
|
|
4251
|
+
const eventCallbackProps = buildAllEventCallbackProps(
|
|
4252
|
+
vizConfig.events,
|
|
4253
|
+
evaluatedOptionsToUse,
|
|
4254
|
+
onEventTrigger,
|
|
4255
|
+
{
|
|
4256
|
+
supportsEvents: vizConfig.supports.includes("events" /* EVENTS */),
|
|
4257
|
+
hasEventHandlers,
|
|
4258
|
+
mode
|
|
4259
|
+
}
|
|
4260
|
+
);
|
|
4148
4261
|
const computedVizProps = computeVizProps2(__spreadProps(__spreadValues(__spreadProps(__spreadValues(__spreadValues({}, props), evaluatedOptionsToUse), {
|
|
4149
4262
|
// Align option transformation with the actual renderer selected below.
|
|
4150
4263
|
// This prevents canvas-only option preservation from leaking into Highcharts mode.
|
|
@@ -4172,8 +4285,9 @@ var withDashboardViz = (opts) => {
|
|
|
4172
4285
|
onEventTrigger: SplunkVisualization_default.defaults.onEventTrigger
|
|
4173
4286
|
});
|
|
4174
4287
|
DashboardViz.config = vizConfig;
|
|
4175
|
-
return
|
|
4176
|
-
withPlaceholder_default(withEditModeCover_default(DashboardViz, disableEditModeCover), useIconPlaceholder)
|
|
4288
|
+
return Object.assign(
|
|
4289
|
+
(0, styled_components_exports.withTheme)(withPlaceholder_default(withEditModeCover_default(DashboardViz, disableEditModeCover), useIconPlaceholder)),
|
|
4290
|
+
{ config: vizConfig }
|
|
4177
4291
|
);
|
|
4178
4292
|
};
|
|
4179
4293
|
var withDashboardViz_default = withDashboardViz;
|
|
@@ -4183,18 +4297,9 @@ var Paginator_exports = {};
|
|
|
4183
4297
|
__export(Paginator_exports, {
|
|
4184
4298
|
default: () => Paginator_default
|
|
4185
4299
|
});
|
|
4186
|
-
var
|
|
4300
|
+
var defaultImport36 = __toESM(require("@splunk/react-ui/Paginator"));
|
|
4187
4301
|
__reExport(Paginator_exports, require("@splunk/react-ui/Paginator"));
|
|
4188
|
-
var Paginator_default = "default" in
|
|
4189
|
-
|
|
4190
|
-
// esm-externals:@splunk/themes
|
|
4191
|
-
var themes_exports = {};
|
|
4192
|
-
__export(themes_exports, {
|
|
4193
|
-
default: () => themes_default
|
|
4194
|
-
});
|
|
4195
|
-
var defaultImport36 = __toESM(require("@splunk/themes"));
|
|
4196
|
-
__reExport(themes_exports, require("@splunk/themes"));
|
|
4197
|
-
var themes_default = "default" in defaultImport36 ? defaultImport36.default : defaultImport36;
|
|
4302
|
+
var Paginator_default = "default" in defaultImport36 ? defaultImport36.default : defaultImport36;
|
|
4198
4303
|
|
|
4199
4304
|
// esm-externals:@splunk/themes/useSplunkTheme
|
|
4200
4305
|
var useSplunkTheme_exports = {};
|
|
@@ -4226,7 +4331,7 @@ var sortTrellisKeys = (keys, trellisSortBy, trellisSortOrder, modifiedDataSource
|
|
|
4226
4331
|
if (trellisSortBy === "trend") {
|
|
4227
4332
|
optionKey = "trendValue";
|
|
4228
4333
|
} else {
|
|
4229
|
-
optionKey = mergedOptions.value
|
|
4334
|
+
optionKey = mergedOptions.value === void 0 ? "majorValue" : "value";
|
|
4230
4335
|
}
|
|
4231
4336
|
keys.sort((a, b) => {
|
|
4232
4337
|
const valA = evaluatePanelOption(
|
|
@@ -4378,13 +4483,13 @@ var withTrellis = (Viz) => {
|
|
|
4378
4483
|
const noColumns = columns === void 0;
|
|
4379
4484
|
const noFields = fields === void 0;
|
|
4380
4485
|
const updateDataDisplay = (currPage) => {
|
|
4381
|
-
if (
|
|
4382
|
-
setPagedData(splitByKeys);
|
|
4383
|
-
setPageNum(1);
|
|
4384
|
-
} else {
|
|
4486
|
+
if (showPaginator) {
|
|
4385
4487
|
const startIdx = pageCount * (currPage - 1);
|
|
4386
4488
|
const paged = splitByKeys.slice(startIdx, startIdx + pageCount);
|
|
4387
4489
|
setPagedData(paged);
|
|
4490
|
+
} else {
|
|
4491
|
+
setPagedData(splitByKeys);
|
|
4492
|
+
setPageNum(1);
|
|
4388
4493
|
}
|
|
4389
4494
|
};
|
|
4390
4495
|
(0, react_exports.useEffect)(() => {
|