@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/Pie.js
CHANGED
|
@@ -183,17 +183,18 @@ __reExport(themeUtils_exports, require("@splunk/visualizations-shared/themeUtils
|
|
|
183
183
|
var themeUtils_default = "default" in defaultImport12 ? defaultImport12.default : defaultImport12;
|
|
184
184
|
|
|
185
185
|
// src/common/ChartingApi.ts
|
|
186
|
+
var DEFAULT_HIGHLIGHT_POINT = { xValue: "", seriesName: "" };
|
|
186
187
|
var ChartingApiFunctional = class {
|
|
187
188
|
// eslint-disable-next-line no-useless-constructor
|
|
188
189
|
constructor(chartRef) {
|
|
189
|
-
this
|
|
190
|
+
__publicField(this, "chartRef", chartRef);
|
|
190
191
|
}
|
|
191
192
|
/**
|
|
192
193
|
* Allows users to programmatically highlight a point on the chart
|
|
193
194
|
*
|
|
194
195
|
* @memberof ChartingApiFunctional
|
|
195
196
|
*/
|
|
196
|
-
highlight({ xValue, seriesName } =
|
|
197
|
+
highlight({ xValue, seriesName } = DEFAULT_HIGHLIGHT_POINT) {
|
|
197
198
|
this.getChart().highlight(xValue, seriesName);
|
|
198
199
|
}
|
|
199
200
|
/**
|
|
@@ -275,7 +276,7 @@ var largestTriangleThreeBuckets = (data, threshold, preferredDownsampleIndices)
|
|
|
275
276
|
let avgY = 0;
|
|
276
277
|
let avgRangeStart = Math.floor((i + 1) * every) + 1;
|
|
277
278
|
let avgRangeEnd = Math.floor((i + 2) * every) + 1;
|
|
278
|
-
avgRangeEnd = avgRangeEnd
|
|
279
|
+
avgRangeEnd = Math.min(avgRangeEnd, dataLength);
|
|
279
280
|
const avgRangeLength = avgRangeEnd - avgRangeStart;
|
|
280
281
|
for (; avgRangeStart < avgRangeEnd; avgRangeStart++) {
|
|
281
282
|
avgX += Number(data[avgRangeStart][0]);
|
|
@@ -310,9 +311,9 @@ var largestTriangleThreeBuckets = (data, threshold, preferredDownsampleIndices)
|
|
|
310
311
|
};
|
|
311
312
|
var strictlyCoerceYColumn = (column, options) => {
|
|
312
313
|
const isNullCoercionEnabled = options.nullValueDisplay === "zero";
|
|
313
|
-
const canLooselyCoerceSomeValues = column.
|
|
314
|
+
const canLooselyCoerceSomeValues = column.some(
|
|
314
315
|
(value) => (0, numberUtils_exports.startsWithNumber)(`${value}`) || isNullCoercionEnabled && value === null
|
|
315
|
-
)
|
|
316
|
+
);
|
|
316
317
|
const coercedColumn = [];
|
|
317
318
|
const canDownsampleColumn = !column.some((value) => {
|
|
318
319
|
const coercedValue = Number(value);
|
|
@@ -331,7 +332,7 @@ var strictlyCoerceYColumn = (column, options) => {
|
|
|
331
332
|
};
|
|
332
333
|
var strictlyCoerceXColumn = (column, fieldType) => {
|
|
333
334
|
if (fieldType === "number") {
|
|
334
|
-
const coercedXColumn = column.map(
|
|
335
|
+
const coercedXColumn = column.map(Number);
|
|
335
336
|
if (isColumnStrictlyIncreasing(coercedXColumn, fieldType)) {
|
|
336
337
|
return coercedXColumn;
|
|
337
338
|
}
|
|
@@ -385,12 +386,8 @@ var calculateDownsamplingThreshold = ({
|
|
|
385
386
|
}
|
|
386
387
|
const fullSeries = (_c = primaryDataSource == null ? void 0 : primaryDataSource.data) == null ? void 0 : _c.columns[xFieldIndex];
|
|
387
388
|
const downsampledSeries = currentTarget.dataSet.seriesList[downsampledXFieldIndex];
|
|
388
|
-
const firstIndex = fullSeries.
|
|
389
|
-
|
|
390
|
-
});
|
|
391
|
-
const lastIndex = fullSeries.findIndex((x) => {
|
|
392
|
-
return downsampledSeries[endXIndex] === x;
|
|
393
|
-
});
|
|
389
|
+
const firstIndex = fullSeries.indexOf(downsampledSeries[startXIndex]);
|
|
390
|
+
const lastIndex = fullSeries.indexOf(downsampledSeries[endXIndex]);
|
|
394
391
|
if (firstIndex >= 0 && lastIndex >= 0 && firstIndex <= lastIndex) {
|
|
395
392
|
return calculateThresholdOnRangeSelect({
|
|
396
393
|
firstIndex,
|
|
@@ -882,7 +879,7 @@ var Charting = (props) => {
|
|
|
882
879
|
const payload = appendTrellisToPayload(props, {
|
|
883
880
|
width,
|
|
884
881
|
height,
|
|
885
|
-
currentTime:
|
|
882
|
+
currentTime: Date.now()
|
|
886
883
|
});
|
|
887
884
|
chart.current.prepareAndDraw(chartData, updatedOptions, () => {
|
|
888
885
|
onEventTrigger({
|
|
@@ -907,7 +904,7 @@ var Charting = (props) => {
|
|
|
907
904
|
needsInit.current = false;
|
|
908
905
|
needsRedraw.current = false;
|
|
909
906
|
} catch (e) {
|
|
910
|
-
|
|
907
|
+
globalThis.console.error("Caught error rendering chart:", e);
|
|
911
908
|
}
|
|
912
909
|
};
|
|
913
910
|
const onContainerMount = (chartingContainer) => {
|
|
@@ -1325,9 +1322,11 @@ var editorConfig = [
|
|
|
1325
1322
|
values: [
|
|
1326
1323
|
{ label: (0, i18n_exports._)("Values"), value: "values" },
|
|
1327
1324
|
{
|
|
1328
|
-
label: (0, i18n_exports._)("Values
|
|
1325
|
+
label: (0, i18n_exports._)("Values, percent"),
|
|
1329
1326
|
value: "valuesAndPercentage"
|
|
1330
1327
|
},
|
|
1328
|
+
{ label: (0, i18n_exports._)("Values, count"), value: "valuesAndCount" },
|
|
1329
|
+
{ label: (0, i18n_exports._)("Values, percent, count"), value: "all" },
|
|
1331
1330
|
{ label: (0, i18n_exports._)("Off"), value: "off" }
|
|
1332
1331
|
]
|
|
1333
1332
|
}
|
|
@@ -1359,7 +1358,7 @@ var editorConfig = [
|
|
|
1359
1358
|
max: 16,
|
|
1360
1359
|
step: 1
|
|
1361
1360
|
},
|
|
1362
|
-
showEditor: ({ options }) => options.labelDisplay === "valuesAndPercentage"
|
|
1361
|
+
showEditor: ({ options }) => options.labelDisplay === "valuesAndPercentage" || options.labelDisplay === "all"
|
|
1363
1362
|
}
|
|
1364
1363
|
],
|
|
1365
1364
|
[
|
|
@@ -1648,7 +1647,10 @@ var useSortingParams = ({ requestParams, onRequestParamsChange }) => {
|
|
|
1648
1647
|
onSort = (e, { sortKey, sortDir }) => {
|
|
1649
1648
|
if (typeof sortKey === "string") {
|
|
1650
1649
|
const nextSortDir = (0, lodash_exports.has)(nextSortDirMap, sortDir) ? nextSortDirMap[sortDir] : "none";
|
|
1651
|
-
onRequestParamsChange(
|
|
1650
|
+
onRequestParamsChange(__spreadProps(__spreadValues({}, requestParams), {
|
|
1651
|
+
offset: 0,
|
|
1652
|
+
sort: { [sortKey]: nextSortDir }
|
|
1653
|
+
}));
|
|
1652
1654
|
} else {
|
|
1653
1655
|
onRequestParamsChange(requestParams);
|
|
1654
1656
|
}
|
|
@@ -1774,7 +1776,7 @@ var Cover = styled_components_default.div`
|
|
|
1774
1776
|
bottom: 0;
|
|
1775
1777
|
`;
|
|
1776
1778
|
var Blocker = styled_components_default.div.attrs({
|
|
1777
|
-
"data-splunk-visualization-version": "28.
|
|
1779
|
+
"data-splunk-visualization-version": "28.9.0 - 96b03188d"
|
|
1778
1780
|
})`
|
|
1779
1781
|
position: relative;
|
|
1780
1782
|
width: 100%;
|
|
@@ -1855,7 +1857,7 @@ var withFixedSizeContainer = (Viz) => {
|
|
|
1855
1857
|
FixSizeItem,
|
|
1856
1858
|
{
|
|
1857
1859
|
"data-test": "fix-size-item",
|
|
1858
|
-
"data-splunk-visualization-version": "28.
|
|
1860
|
+
"data-splunk-visualization-version": "28.9.0 - 96b03188d",
|
|
1859
1861
|
width,
|
|
1860
1862
|
height,
|
|
1861
1863
|
backgroundColor
|
|
@@ -1876,6 +1878,14 @@ var shouldShowIconPlaceholder = (dataSources, loading = false) => {
|
|
|
1876
1878
|
const noFields = fields === void 0;
|
|
1877
1879
|
return loading || noData || noFields;
|
|
1878
1880
|
};
|
|
1881
|
+
var PlaceholderContainer = styled_components_default.div`
|
|
1882
|
+
/* The inline token color wins when supported. Older browsers discard an
|
|
1883
|
+
unsupported oklch value and retain this inherited fallback instead. */
|
|
1884
|
+
color: ${(0, themes_exports.pick)({
|
|
1885
|
+
dark: "#fafafa",
|
|
1886
|
+
light: "#2c2c2c"
|
|
1887
|
+
})};
|
|
1888
|
+
`;
|
|
1879
1889
|
var IconPlaceholder = (props) => {
|
|
1880
1890
|
const {
|
|
1881
1891
|
width = SplunkVisualization_default.defaults.width,
|
|
@@ -1890,7 +1900,6 @@ var IconPlaceholder = (props) => {
|
|
|
1890
1900
|
style: {
|
|
1891
1901
|
left: "50%",
|
|
1892
1902
|
top: "50%",
|
|
1893
|
-
color: iconColor,
|
|
1894
1903
|
opacity: 0.15,
|
|
1895
1904
|
position: "absolute",
|
|
1896
1905
|
transform: "translate(-50%, -50%)"
|
|
@@ -1900,7 +1909,14 @@ var IconPlaceholder = (props) => {
|
|
|
1900
1909
|
"data-test": "icon-placeholder"
|
|
1901
1910
|
});
|
|
1902
1911
|
}
|
|
1903
|
-
return /* @__PURE__ */ react_exports.createElement(
|
|
1912
|
+
return /* @__PURE__ */ react_exports.createElement(
|
|
1913
|
+
PlaceholderContainer,
|
|
1914
|
+
{
|
|
1915
|
+
"data-test": "icon-placeholder-container",
|
|
1916
|
+
style: { width, height, background: backgroundColor, color: iconColor }
|
|
1917
|
+
},
|
|
1918
|
+
content
|
|
1919
|
+
);
|
|
1904
1920
|
};
|
|
1905
1921
|
var IconPlaceholder_default = FixedSizeContainer_default(IconPlaceholder);
|
|
1906
1922
|
|
|
@@ -2109,10 +2125,10 @@ var FeatureFlags_default = "default" in defaultImport34 ? defaultImport34.defaul
|
|
|
2109
2125
|
|
|
2110
2126
|
// src/common/utils/featureFlagUtils.ts
|
|
2111
2127
|
var getFeatureFlag = (context, flagName) => {
|
|
2112
|
-
if (context && Object.keys(context).
|
|
2128
|
+
if (context && Object.keys(context).includes(flagName)) {
|
|
2113
2129
|
return context[flagName];
|
|
2114
2130
|
}
|
|
2115
|
-
if (Object.keys(FeatureFlags_default).
|
|
2131
|
+
if (Object.keys(FeatureFlags_default).includes(flagName)) {
|
|
2116
2132
|
return FeatureFlags_default[flagName];
|
|
2117
2133
|
}
|
|
2118
2134
|
return false;
|
|
@@ -2346,7 +2362,7 @@ var dataSourcesSplitByModeChart = (dataSource, splitBy) => {
|
|
|
2346
2362
|
splitByFields = (0, trellisUtils_exports.extractSplitByFieldsChartFields)(fields);
|
|
2347
2363
|
}
|
|
2348
2364
|
if (splitByFields == null ? void 0 : splitByFields.includes(splitBy)) {
|
|
2349
|
-
const splitByFieldIdx = splitByFields.
|
|
2365
|
+
const splitByFieldIdx = splitByFields.indexOf(splitBy);
|
|
2350
2366
|
const otherSplitBy = splitByFields.filter((f) => f !== splitBy);
|
|
2351
2367
|
const dataSourceKeys = (0, trellisUtils_exports.extractDataSourceAggregationKeysChart)(fields);
|
|
2352
2368
|
const nonDataSourceAggregations = [];
|
|
@@ -2380,17 +2396,17 @@ var dataSourcesSplitByModeStatsorUnknown = (dataSource, splitBy, splitMode) => {
|
|
|
2380
2396
|
let splitByFields = [];
|
|
2381
2397
|
let errorCode = null;
|
|
2382
2398
|
if (fields.length > 0) {
|
|
2383
|
-
splitByFields = splitMode
|
|
2399
|
+
splitByFields = splitMode === trellisUtils_exports.UNKNOWN ? (0, trellisUtils_exports.extractSplitByFieldsForUnknown)(fields) : (0, trellisUtils_exports.extractSplitByFieldsForStats)(fields);
|
|
2384
2400
|
}
|
|
2385
2401
|
const splitByIndex = fields.findIndex((field) => field.name === splitBy);
|
|
2386
2402
|
if (splitByFields == null ? void 0 : splitByFields.includes(splitBy)) {
|
|
2387
2403
|
const splitByColumn = (_f = (_e = dataSource == null ? void 0 : dataSource.primary) == null ? void 0 : _e.data) == null ? void 0 : _f.columns[splitByIndex];
|
|
2388
2404
|
splitDataSources = {};
|
|
2389
2405
|
splitByColumn.forEach((val, idx) => {
|
|
2390
|
-
if (
|
|
2391
|
-
splitDataSources[val] = [idx];
|
|
2392
|
-
} else {
|
|
2406
|
+
if (splitDataSources[val]) {
|
|
2393
2407
|
splitDataSources[val].push(idx);
|
|
2408
|
+
} else {
|
|
2409
|
+
splitDataSources[val] = [idx];
|
|
2394
2410
|
}
|
|
2395
2411
|
});
|
|
2396
2412
|
const cloneFields = (0, lodash_exports.cloneDeep)(fields);
|
|
@@ -2441,27 +2457,28 @@ var turnOffLegendDisplayWhenTrellisIsOn = (isTrellisOn, options) => {
|
|
|
2441
2457
|
}
|
|
2442
2458
|
return {};
|
|
2443
2459
|
};
|
|
2460
|
+
var extendMinMaxWithColumn = (column, range2) => column.reduce((acc, point) => {
|
|
2461
|
+
const pointNumber = Number(point);
|
|
2462
|
+
if (Number.isNaN(pointNumber)) {
|
|
2463
|
+
return acc;
|
|
2464
|
+
}
|
|
2465
|
+
return {
|
|
2466
|
+
min: Math.min(pointNumber, acc.min),
|
|
2467
|
+
max: Math.max(pointNumber, acc.max)
|
|
2468
|
+
};
|
|
2469
|
+
}, range2);
|
|
2444
2470
|
var calculateSharedMinMax = (splitData) => {
|
|
2445
|
-
let
|
|
2446
|
-
let min = Infinity;
|
|
2471
|
+
let range2 = { min: Infinity, max: -Infinity };
|
|
2447
2472
|
Object.keys(splitData).forEach((splitByKey) => {
|
|
2448
2473
|
const datasources = splitData[splitByKey];
|
|
2449
2474
|
Object.keys(datasources).forEach((datasourceName) => {
|
|
2450
2475
|
const dataColumns = datasources[datasourceName].data.columns;
|
|
2451
2476
|
dataColumns.forEach((column) => {
|
|
2452
|
-
column
|
|
2453
|
-
const pointNumber = Number(point);
|
|
2454
|
-
if (pointNumber > max) {
|
|
2455
|
-
max = pointNumber;
|
|
2456
|
-
}
|
|
2457
|
-
if (pointNumber < min) {
|
|
2458
|
-
min = pointNumber;
|
|
2459
|
-
}
|
|
2460
|
-
});
|
|
2477
|
+
range2 = extendMinMaxWithColumn(column, range2);
|
|
2461
2478
|
});
|
|
2462
2479
|
});
|
|
2463
2480
|
});
|
|
2464
|
-
return [min, max];
|
|
2481
|
+
return [range2.min, range2.max];
|
|
2465
2482
|
};
|
|
2466
2483
|
var determineMinMax = (splitData, trellisSharedScale, yAxisMin, yAxisMax, stackMode) => {
|
|
2467
2484
|
if (!trellisSharedScale || stackMode === "stacked100" || yAxisMin !== "auto" && yAxisMax !== "auto")
|
|
@@ -2545,7 +2562,7 @@ var truncateData = (dataSet, truncationLimit) => {
|
|
|
2545
2562
|
if (!dataSet) {
|
|
2546
2563
|
return null;
|
|
2547
2564
|
}
|
|
2548
|
-
const limit = parseInt(truncationLimit, 10);
|
|
2565
|
+
const limit = Number.parseInt(truncationLimit, 10);
|
|
2549
2566
|
if (!limit || limit <= 0) {
|
|
2550
2567
|
return dataSet;
|
|
2551
2568
|
}
|
|
@@ -2565,9 +2582,9 @@ var shouldEnableSearchZoom = (eventHandlers = [], xField = "") => {
|
|
|
2565
2582
|
const xAxisIsTime = xField === "_time";
|
|
2566
2583
|
return !!rangeSelectEventHandler && xAxisIsTime;
|
|
2567
2584
|
};
|
|
2568
|
-
var canvasSupportedTimeSeriesCharts = ["splunk.line", "splunk.area"];
|
|
2585
|
+
var canvasSupportedTimeSeriesCharts = /* @__PURE__ */ new Set(["splunk.line", "splunk.area"]);
|
|
2569
2586
|
var isTimeSeriesCanvasRenderSupported = (vizConfigKey) => {
|
|
2570
|
-
return canvasSupportedTimeSeriesCharts.
|
|
2587
|
+
return canvasSupportedTimeSeriesCharts.has(vizConfigKey);
|
|
2571
2588
|
};
|
|
2572
2589
|
var filterChartDataFromInternalFields = (chartData) => {
|
|
2573
2590
|
const { fields, columns } = chartData;
|
|
@@ -2583,7 +2600,7 @@ var filterChartDataFromInternalFields = (chartData) => {
|
|
|
2583
2600
|
return { fields: filteredFields, columns: filteredColumns };
|
|
2584
2601
|
};
|
|
2585
2602
|
var convert2DArrayToNumbers = (arr) => {
|
|
2586
|
-
return arr.map((subArray) => subArray.map((element) => parseFloat(element)));
|
|
2603
|
+
return arr.map((subArray) => subArray.map((element) => Number.parseFloat(element)));
|
|
2587
2604
|
};
|
|
2588
2605
|
var parseAxisValue = (val) => {
|
|
2589
2606
|
if (val === void 0 || val === null || val === "auto" || val === "") {
|
|
@@ -2621,6 +2638,7 @@ var getLegend = (props) => {
|
|
|
2621
2638
|
return (0, visualization_canvas_exports.TopLegendFactory)(__spreadValues({
|
|
2622
2639
|
wrap: true
|
|
2623
2640
|
}, commonLegendProps));
|
|
2641
|
+
// Note: By default, use right legend
|
|
2624
2642
|
default:
|
|
2625
2643
|
return (0, visualization_canvas_exports.SideLegendFactory)(__spreadValues({}, commonLegendProps));
|
|
2626
2644
|
}
|
|
@@ -2753,10 +2771,10 @@ var getSeriesOverrides = (opts) => {
|
|
|
2753
2771
|
let spanGaps;
|
|
2754
2772
|
if (nullValueMode === "gaps") {
|
|
2755
2773
|
spanGaps = false;
|
|
2756
|
-
} else if (nullValueMode
|
|
2757
|
-
spanGaps = true;
|
|
2758
|
-
} else {
|
|
2774
|
+
} else if (nullValueMode == null) {
|
|
2759
2775
|
spanGaps = void 0;
|
|
2776
|
+
} else {
|
|
2777
|
+
spanGaps = true;
|
|
2760
2778
|
}
|
|
2761
2779
|
const replaceNullsWithZero = nullValueMode === "zero" ? true : void 0;
|
|
2762
2780
|
const isAreaChart = type === "area";
|
|
@@ -3126,11 +3144,11 @@ var TimeSeriesChartWrapper = (props) => {
|
|
|
3126
3144
|
y2AxisMajorUnitFromSimpleXML,
|
|
3127
3145
|
y2AxisMajorTickInterval
|
|
3128
3146
|
);
|
|
3129
|
-
const xAxisMajorTickSizeNum = xAxisMajorTickSize
|
|
3130
|
-
const yAxisMajorTickSizeNum = yAxisMajorTickSize
|
|
3131
|
-
const y2AxisMajorTickSizeNum = y2AxisMajorTickSize
|
|
3132
|
-
const yAxisMinorTickSizeNum = yAxisMinorTickSize
|
|
3133
|
-
const y2AxisMinorTickSizeNum = y2AxisMinorTickSize
|
|
3147
|
+
const xAxisMajorTickSizeNum = xAxisMajorTickSize == null ? void 0 : Number(xAxisMajorTickSize);
|
|
3148
|
+
const yAxisMajorTickSizeNum = yAxisMajorTickSize == null ? void 0 : Number(yAxisMajorTickSize);
|
|
3149
|
+
const y2AxisMajorTickSizeNum = y2AxisMajorTickSize == null ? void 0 : Number(y2AxisMajorTickSize);
|
|
3150
|
+
const yAxisMinorTickSizeNum = yAxisMinorTickSize == null ? void 0 : Number(yAxisMinorTickSize);
|
|
3151
|
+
const y2AxisMinorTickSizeNum = y2AxisMinorTickSize == null ? void 0 : Number(y2AxisMinorTickSize);
|
|
3134
3152
|
const areaOpacityForCanvas = getAreaOpacityForCanvas(areaOpacity);
|
|
3135
3153
|
const seriesColors = seriesColorsStr ? JSON.parse(seriesColorsStr) : void 0;
|
|
3136
3154
|
const seriesColorsByField = fieldColors ? JSON.parse(fieldColors) : void 0;
|
|
@@ -3542,6 +3560,76 @@ var buildEventCallbackProps = (supportedEvents, evaluatedOptionsToUse, onEventTr
|
|
|
3542
3560
|
});
|
|
3543
3561
|
return result;
|
|
3544
3562
|
};
|
|
3563
|
+
var buildAllEventCallbackProps = (events, evaluatedOptionsToUse, onEventTrigger, { supportsEvents, hasEventHandlers, mode }) => {
|
|
3564
|
+
if (!supportsEvents) return {};
|
|
3565
|
+
const defaultEvents = {};
|
|
3566
|
+
const userEvents = {};
|
|
3567
|
+
Object.entries(events || {}).forEach(([eventKey, eventConfig]) => {
|
|
3568
|
+
(eventConfig.source === "default" ? defaultEvents : userEvents)[eventKey] = eventConfig;
|
|
3569
|
+
});
|
|
3570
|
+
const userProps = hasEventHandlers && mode === "view" ? buildEventCallbackProps(userEvents, evaluatedOptionsToUse, onEventTrigger) : {};
|
|
3571
|
+
return __spreadValues(__spreadValues({}, userProps), buildEventCallbackProps(defaultEvents, evaluatedOptionsToUse, onEventTrigger));
|
|
3572
|
+
};
|
|
3573
|
+
var applyContextTimezone = (localeContext) => {
|
|
3574
|
+
if (localeContext.serializedTimezone && !moment_default.getDefaultSplunkTimezone()) {
|
|
3575
|
+
moment_default.setDefaultSplunkTimezone(localeContext.serializedTimezone);
|
|
3576
|
+
}
|
|
3577
|
+
};
|
|
3578
|
+
var getAsyncOptionsEvaluationParams = ({
|
|
3579
|
+
visualizationID,
|
|
3580
|
+
props,
|
|
3581
|
+
optionsToEvaluate,
|
|
3582
|
+
downsampledDataSources,
|
|
3583
|
+
vizConfig,
|
|
3584
|
+
bypassCloneDeepOptionScope,
|
|
3585
|
+
lazyLoadingDataFrame
|
|
3586
|
+
}) => {
|
|
3587
|
+
return {
|
|
3588
|
+
visualizationID,
|
|
3589
|
+
props,
|
|
3590
|
+
options: __spreadValues({}, optionsToEvaluate),
|
|
3591
|
+
dataSources: downsampledDataSources,
|
|
3592
|
+
theme: vizConfig.themes,
|
|
3593
|
+
bypassCloneDeepOptionScope,
|
|
3594
|
+
lazyLoadingDataFrame
|
|
3595
|
+
};
|
|
3596
|
+
};
|
|
3597
|
+
var evaluateOptionsSync = ({
|
|
3598
|
+
optionsToEvaluate,
|
|
3599
|
+
downsampledDataSources,
|
|
3600
|
+
dataSourcesInState,
|
|
3601
|
+
dataFramesInState,
|
|
3602
|
+
setDataSourcesInState,
|
|
3603
|
+
setDataFramesInState,
|
|
3604
|
+
computeDataFrames,
|
|
3605
|
+
featureFlagContext,
|
|
3606
|
+
themeFunc
|
|
3607
|
+
}) => {
|
|
3608
|
+
let dataFrames = dataFramesInState;
|
|
3609
|
+
if (downsampledDataSources !== dataSourcesInState) {
|
|
3610
|
+
setDataSourcesInState(downsampledDataSources);
|
|
3611
|
+
dataFrames = Options_exports.Options.dataFrameFromDataSource(
|
|
3612
|
+
downsampledDataSources,
|
|
3613
|
+
getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
|
|
3614
|
+
);
|
|
3615
|
+
setDataFramesInState(dataFrames);
|
|
3616
|
+
}
|
|
3617
|
+
let mergedFrames = dataFrames;
|
|
3618
|
+
if (computeDataFrames && dataFrames) {
|
|
3619
|
+
const derivedFrames = computeDataFrames({
|
|
3620
|
+
dataSources: downsampledDataSources,
|
|
3621
|
+
options: optionsToEvaluate.options
|
|
3622
|
+
});
|
|
3623
|
+
mergedFrames = __spreadValues(__spreadValues({}, dataFrames), derivedFrames);
|
|
3624
|
+
}
|
|
3625
|
+
return Options_exports.Options.evaluate(
|
|
3626
|
+
optionsToEvaluate,
|
|
3627
|
+
downsampledDataSources,
|
|
3628
|
+
themeFunc,
|
|
3629
|
+
mergedFrames,
|
|
3630
|
+
getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
|
|
3631
|
+
);
|
|
3632
|
+
};
|
|
3545
3633
|
var withDashboardViz = (opts) => {
|
|
3546
3634
|
const {
|
|
3547
3635
|
ReactViz,
|
|
@@ -3573,11 +3661,7 @@ var withDashboardViz = (opts) => {
|
|
|
3573
3661
|
onRequestParamsChange = lodash_exports.noop
|
|
3574
3662
|
} = props;
|
|
3575
3663
|
const localeContext = react_exports.useContext(TimezoneContext_default);
|
|
3576
|
-
|
|
3577
|
-
if (!moment_default.getDefaultSplunkTimezone()) {
|
|
3578
|
-
moment_default.setDefaultSplunkTimezone(localeContext.serializedTimezone);
|
|
3579
|
-
}
|
|
3580
|
-
}
|
|
3664
|
+
applyContextTimezone(localeContext);
|
|
3581
3665
|
const themeFunc = (themeVar) => {
|
|
3582
3666
|
var _a2, _b;
|
|
3583
3667
|
return (_b = (_a2 = vizConfig.themes)[themeVar]) == null ? void 0 : _b.call(_a2, props);
|
|
@@ -3605,7 +3689,12 @@ var withDashboardViz = (opts) => {
|
|
|
3605
3689
|
featureFlagContext == null ? void 0 : featureFlagContext.visualizations_enableAcceleratedRender
|
|
3606
3690
|
);
|
|
3607
3691
|
const isAcceleratedRenderOn = isAcceleratedRenderFeatureFlagOn && isTimeSeriesCanvasRenderSupported(vizConfig.key) && (options == null ? void 0 : options.acceleratedRender) === true;
|
|
3608
|
-
const
|
|
3692
|
+
const bypassCloneDeepOptionScope = Boolean(
|
|
3693
|
+
getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
|
|
3694
|
+
);
|
|
3695
|
+
const lazyLoadingDataFrame = Boolean(
|
|
3696
|
+
getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
|
|
3697
|
+
);
|
|
3609
3698
|
const optionsToEvaluate = react_exports.useMemo(() => {
|
|
3610
3699
|
var _a2;
|
|
3611
3700
|
const legendDisplay = turnOffLegendDisplayWhenTrellisIsOn(isTrellisOn, options);
|
|
@@ -3644,63 +3733,74 @@ var withDashboardViz = (opts) => {
|
|
|
3644
3733
|
threshold,
|
|
3645
3734
|
isDownsamplingEnabled
|
|
3646
3735
|
});
|
|
3647
|
-
|
|
3736
|
+
const asyncOptionsEvaluationParams = useDeepMemo(
|
|
3737
|
+
() => getAsyncOptionsEvaluationParams({
|
|
3738
|
+
visualizationID,
|
|
3739
|
+
props,
|
|
3740
|
+
optionsToEvaluate,
|
|
3741
|
+
downsampledDataSources,
|
|
3742
|
+
vizConfig,
|
|
3743
|
+
bypassCloneDeepOptionScope,
|
|
3744
|
+
lazyLoadingDataFrame
|
|
3745
|
+
}),
|
|
3746
|
+
[
|
|
3747
|
+
visualizationID,
|
|
3748
|
+
optionsToEvaluate,
|
|
3749
|
+
downsampledDataSources,
|
|
3750
|
+
vizConfig,
|
|
3751
|
+
bypassCloneDeepOptionScope,
|
|
3752
|
+
lazyLoadingDataFrame,
|
|
3753
|
+
currentThemeFamily,
|
|
3754
|
+
currentThemeColorScheme,
|
|
3755
|
+
currentThemeDensity,
|
|
3756
|
+
localeContext.serializedTimezone
|
|
3757
|
+
]
|
|
3758
|
+
);
|
|
3759
|
+
react_exports.useEffect(() => {
|
|
3760
|
+
if (!useAsyncEvaluatedOptions) {
|
|
3761
|
+
return void 0;
|
|
3762
|
+
}
|
|
3763
|
+
let ownsEvaluation = true;
|
|
3648
3764
|
try {
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
visualizationID,
|
|
3652
|
-
props,
|
|
3653
|
-
options: optionsToEvaluate,
|
|
3654
|
-
dataSources: downsampledDataSources,
|
|
3655
|
-
theme: vizConfig.themes,
|
|
3656
|
-
bypassCloneDeepOptionScope: Boolean(
|
|
3657
|
-
getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
|
|
3658
|
-
),
|
|
3659
|
-
lazyLoadingDataFrame: Boolean(
|
|
3660
|
-
getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
|
|
3661
|
-
)
|
|
3662
|
-
};
|
|
3663
|
-
async_dynamic_options_evaluator_default.evaluate(asyncDynamicOptionsEvaluatorParams).then((results) => {
|
|
3765
|
+
async_dynamic_options_evaluator_default.evaluate(asyncOptionsEvaluationParams).then((results) => {
|
|
3766
|
+
if (ownsEvaluation) {
|
|
3664
3767
|
setEvaluatedOptionsAsync(results.results);
|
|
3665
|
-
}).catch(() => {
|
|
3666
|
-
if (isMounted.current) {
|
|
3667
|
-
setUseAsyncEvaluatedOptions(false);
|
|
3668
|
-
}
|
|
3669
|
-
});
|
|
3670
|
-
} else {
|
|
3671
|
-
let dataFrames = dataFramesInState;
|
|
3672
|
-
if (downsampledDataSources !== dataSourcesInState) {
|
|
3673
|
-
setDataSourcesInState(downsampledDataSources);
|
|
3674
|
-
dataFrames = Options_exports.Options.dataFrameFromDataSource(
|
|
3675
|
-
downsampledDataSources,
|
|
3676
|
-
getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
|
|
3677
|
-
);
|
|
3678
|
-
setDataFramesInState(dataFrames);
|
|
3679
3768
|
}
|
|
3680
|
-
|
|
3681
|
-
if (
|
|
3682
|
-
|
|
3683
|
-
dataSources: downsampledDataSources,
|
|
3684
|
-
options: optionsToEvaluate.options
|
|
3685
|
-
});
|
|
3686
|
-
mergedFrames = __spreadValues(__spreadValues({}, dataFrames), derivedFrames);
|
|
3769
|
+
}).catch(() => {
|
|
3770
|
+
if (ownsEvaluation) {
|
|
3771
|
+
setUseAsyncEvaluatedOptions(false);
|
|
3687
3772
|
}
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3773
|
+
});
|
|
3774
|
+
} catch (e) {
|
|
3775
|
+
setUseAsyncEvaluatedOptions(false);
|
|
3776
|
+
}
|
|
3777
|
+
return () => {
|
|
3778
|
+
ownsEvaluation = false;
|
|
3779
|
+
async_dynamic_options_evaluator_default.reset(visualizationID);
|
|
3780
|
+
};
|
|
3781
|
+
}, [asyncOptionsEvaluationParams, useAsyncEvaluatedOptions, visualizationID]);
|
|
3782
|
+
evaluatedOptions = useDeepMemo(() => {
|
|
3783
|
+
try {
|
|
3784
|
+
if (useAsyncEvaluatedOptions) {
|
|
3785
|
+
return {};
|
|
3696
3786
|
}
|
|
3787
|
+
return evaluateOptionsSync({
|
|
3788
|
+
optionsToEvaluate,
|
|
3789
|
+
downsampledDataSources,
|
|
3790
|
+
dataSourcesInState,
|
|
3791
|
+
dataFramesInState,
|
|
3792
|
+
setDataSourcesInState,
|
|
3793
|
+
setDataFramesInState,
|
|
3794
|
+
computeDataFrames,
|
|
3795
|
+
featureFlagContext,
|
|
3796
|
+
themeFunc
|
|
3797
|
+
});
|
|
3697
3798
|
} catch (e) {
|
|
3698
3799
|
if (e instanceof Error) {
|
|
3699
3800
|
console.error(`unexpected error evaluating options: ${e.message}`);
|
|
3700
3801
|
}
|
|
3701
3802
|
return {};
|
|
3702
3803
|
}
|
|
3703
|
-
return {};
|
|
3704
3804
|
}, [
|
|
3705
3805
|
currentThemeFamily,
|
|
3706
3806
|
currentThemeColorScheme,
|
|
@@ -3710,7 +3810,7 @@ var withDashboardViz = (opts) => {
|
|
|
3710
3810
|
localeContext.serializedTimezone,
|
|
3711
3811
|
useAsyncEvaluatedOptions
|
|
3712
3812
|
]);
|
|
3713
|
-
const evaluatedOptionsToUse =
|
|
3813
|
+
const evaluatedOptionsToUse = useAsyncEvaluatedOptions ? evaluatedOptionsAsync : evaluatedOptions;
|
|
3714
3814
|
let dataSourceMetadata = {};
|
|
3715
3815
|
const OptionKey = "paginateDataSourceKey";
|
|
3716
3816
|
const optsKey = (0, lodash_exports.has)(evaluatedOptionsToUse, OptionKey) && evaluatedOptionsToUse[OptionKey];
|
|
@@ -3732,7 +3832,7 @@ var withDashboardViz = (opts) => {
|
|
|
3732
3832
|
sortParams,
|
|
3733
3833
|
paginatorParams
|
|
3734
3834
|
};
|
|
3735
|
-
if (vizConfig.supports.
|
|
3835
|
+
if (!vizConfig.supports.includes("page-and-sort" /* PAGE_AND_SORT */) && !(0, lodash_exports.has)(dataSources, paginateDataSourceKey)) {
|
|
3736
3836
|
dataSourceMetadata = {};
|
|
3737
3837
|
}
|
|
3738
3838
|
const clonedEvaluatedOptions = __spreadValues({}, evaluatedOptionsToUse);
|
|
@@ -3742,14 +3842,6 @@ var withDashboardViz = (opts) => {
|
|
|
3742
3842
|
react_exports.useEffect(() => {
|
|
3743
3843
|
onComputedProps(clonedEvaluatedOptions);
|
|
3744
3844
|
});
|
|
3745
|
-
react_exports.useEffect(() => {
|
|
3746
|
-
return () => {
|
|
3747
|
-
if (useAsyncEvaluatedOptions) {
|
|
3748
|
-
isMounted.current = false;
|
|
3749
|
-
async_dynamic_options_evaluator_default.reset(visualizationID);
|
|
3750
|
-
}
|
|
3751
|
-
};
|
|
3752
|
-
}, []);
|
|
3753
3845
|
const { requiredProps = [], supports } = vizConfig;
|
|
3754
3846
|
const missing = missingKeys(requiredProps, evaluatedOptionsToUse);
|
|
3755
3847
|
if (missing.length > 0 && supports.includes("placeholder" /* PLACEHOLDER */) && vizConfig.key !== "splunk.singlevalue") {
|
|
@@ -3764,7 +3856,16 @@ var withDashboardViz = (opts) => {
|
|
|
3764
3856
|
}
|
|
3765
3857
|
);
|
|
3766
3858
|
}
|
|
3767
|
-
const eventCallbackProps =
|
|
3859
|
+
const eventCallbackProps = buildAllEventCallbackProps(
|
|
3860
|
+
vizConfig.events,
|
|
3861
|
+
evaluatedOptionsToUse,
|
|
3862
|
+
onEventTrigger,
|
|
3863
|
+
{
|
|
3864
|
+
supportsEvents: vizConfig.supports.includes("events" /* EVENTS */),
|
|
3865
|
+
hasEventHandlers,
|
|
3866
|
+
mode
|
|
3867
|
+
}
|
|
3868
|
+
);
|
|
3768
3869
|
const computedVizProps = computeVizProps2(__spreadProps(__spreadValues(__spreadProps(__spreadValues(__spreadValues({}, props), evaluatedOptionsToUse), {
|
|
3769
3870
|
// Align option transformation with the actual renderer selected below.
|
|
3770
3871
|
// This prevents canvas-only option preservation from leaking into Highcharts mode.
|
|
@@ -3792,8 +3893,9 @@ var withDashboardViz = (opts) => {
|
|
|
3792
3893
|
onEventTrigger: SplunkVisualization_default.defaults.onEventTrigger
|
|
3793
3894
|
});
|
|
3794
3895
|
DashboardViz.config = vizConfig;
|
|
3795
|
-
return
|
|
3796
|
-
withPlaceholder_default(withEditModeCover_default(DashboardViz, disableEditModeCover), useIconPlaceholder)
|
|
3896
|
+
return Object.assign(
|
|
3897
|
+
(0, styled_components_exports.withTheme)(withPlaceholder_default(withEditModeCover_default(DashboardViz, disableEditModeCover), useIconPlaceholder)),
|
|
3898
|
+
{ config: vizConfig }
|
|
3797
3899
|
);
|
|
3798
3900
|
};
|
|
3799
3901
|
var withDashboardViz_default = withDashboardViz;
|
|
@@ -3828,14 +3930,15 @@ var convertToStringValues = (options) => {
|
|
|
3828
3930
|
};
|
|
3829
3931
|
var mapLabelDisplay = (_a) => {
|
|
3830
3932
|
var _b = _a, { labelDisplay } = _b, options = __objRest(_b, ["labelDisplay"]);
|
|
3933
|
+
const resolvedLabelDisplay = labelDisplay || "values";
|
|
3831
3934
|
const convertedOptions = __spreadProps(__spreadValues({}, options), {
|
|
3832
|
-
|
|
3935
|
+
"chart.labelDisplay": resolvedLabelDisplay,
|
|
3833
3936
|
"chart.showLabels": true,
|
|
3834
3937
|
"chart.showPercent": false
|
|
3835
3938
|
});
|
|
3836
|
-
if (
|
|
3939
|
+
if (resolvedLabelDisplay === "valuesAndPercentage" || resolvedLabelDisplay === "all") {
|
|
3837
3940
|
convertedOptions["chart.showPercent"] = true;
|
|
3838
|
-
} else if (
|
|
3941
|
+
} else if (resolvedLabelDisplay === "off") {
|
|
3839
3942
|
convertedOptions["chart.showLabels"] = false;
|
|
3840
3943
|
}
|
|
3841
3944
|
return convertedOptions;
|
|
@@ -3935,7 +4038,7 @@ var sortTrellisKeys = (keys, trellisSortBy, trellisSortOrder, modifiedDataSource
|
|
|
3935
4038
|
if (trellisSortBy === "trend") {
|
|
3936
4039
|
optionKey = "trendValue";
|
|
3937
4040
|
} else {
|
|
3938
|
-
optionKey = mergedOptions.value
|
|
4041
|
+
optionKey = mergedOptions.value === void 0 ? "majorValue" : "value";
|
|
3939
4042
|
}
|
|
3940
4043
|
keys.sort((a, b) => {
|
|
3941
4044
|
const valA = evaluatePanelOption(
|
|
@@ -4087,13 +4190,13 @@ var withTrellis = (Viz) => {
|
|
|
4087
4190
|
const noColumns = columns === void 0;
|
|
4088
4191
|
const noFields = fields === void 0;
|
|
4089
4192
|
const updateDataDisplay = (currPage) => {
|
|
4090
|
-
if (
|
|
4091
|
-
setPagedData(splitByKeys);
|
|
4092
|
-
setPageNum(1);
|
|
4093
|
-
} else {
|
|
4193
|
+
if (showPaginator) {
|
|
4094
4194
|
const startIdx = pageCount * (currPage - 1);
|
|
4095
4195
|
const paged = splitByKeys.slice(startIdx, startIdx + pageCount);
|
|
4096
4196
|
setPagedData(paged);
|
|
4197
|
+
} else {
|
|
4198
|
+
setPagedData(splitByKeys);
|
|
4199
|
+
setPageNum(1);
|
|
4097
4200
|
}
|
|
4098
4201
|
};
|
|
4099
4202
|
(0, react_exports.useEffect)(() => {
|