@splunk/visualizations 27.4.0 → 28.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/Area.config.js +26 -21
  2. package/Area.config.js.map +3 -3
  3. package/Area.js +88 -36
  4. package/Area.js.map +3 -3
  5. package/Bar.config.js +25 -21
  6. package/Bar.config.js.map +3 -3
  7. package/Bar.js +83 -37
  8. package/Bar.js.map +3 -3
  9. package/Bubble.config.js +46 -44
  10. package/Bubble.config.js.map +4 -4
  11. package/Bubble.js +83 -54
  12. package/Bubble.js.map +4 -4
  13. package/CHANGELOG.external.md +54 -7
  14. package/ChoroplethSvg.config.js +47 -43
  15. package/ChoroplethSvg.config.js.map +4 -4
  16. package/ChoroplethSvg.js +72 -45
  17. package/ChoroplethSvg.js.map +4 -4
  18. package/Column.config.js +22 -20
  19. package/Column.config.js.map +3 -3
  20. package/Column.js +76 -33
  21. package/Column.js.map +3 -3
  22. package/Ellipse.config.js +16 -7
  23. package/Ellipse.config.js.map +2 -2
  24. package/Ellipse.js +104 -20
  25. package/Ellipse.js.map +4 -4
  26. package/Events.config.js +38 -27
  27. package/Events.config.js.map +4 -4
  28. package/Events.js +122 -101
  29. package/Events.js.map +4 -4
  30. package/FEATUREFLAGS.md +9 -7
  31. package/FillerGauge.config.js +20 -13
  32. package/FillerGauge.config.js.map +3 -3
  33. package/FillerGauge.js +76 -27
  34. package/FillerGauge.js.map +4 -4
  35. package/Image.config.js +5 -6
  36. package/Image.config.js.map +2 -2
  37. package/Image.js +29 -14
  38. package/Image.js.map +2 -2
  39. package/Line.config.js +22 -20
  40. package/Line.config.js.map +3 -3
  41. package/Line.js +84 -35
  42. package/Line.js.map +3 -3
  43. package/LinkGraph.config.js +39 -46
  44. package/LinkGraph.config.js.map +3 -3
  45. package/LinkGraph.js +70 -50
  46. package/LinkGraph.js.map +3 -3
  47. package/MIGRATION.md +169 -40
  48. package/Map.config.js +47 -13
  49. package/Map.config.js.map +4 -4
  50. package/Map.js +350 -159
  51. package/Map.js.map +4 -4
  52. package/Markdown.config.js +4 -5
  53. package/Markdown.config.js.map +2 -2
  54. package/Markdown.js +117 -72
  55. package/Markdown.js.map +3 -3
  56. package/MarkerGauge.config.js +14 -12
  57. package/MarkerGauge.config.js.map +3 -3
  58. package/MarkerGauge.js +107 -69
  59. package/MarkerGauge.js.map +4 -4
  60. package/ParallelCoordinates.config.js +14 -12
  61. package/ParallelCoordinates.config.js.map +3 -3
  62. package/ParallelCoordinates.js +113 -59
  63. package/ParallelCoordinates.js.map +3 -3
  64. package/Pie.config.js +51 -38
  65. package/Pie.config.js.map +4 -4
  66. package/Pie.js +116 -88
  67. package/Pie.js.map +4 -4
  68. package/Punchcard.config.js +36 -34
  69. package/Punchcard.config.js.map +4 -4
  70. package/Punchcard.js +153 -87
  71. package/Punchcard.js.map +4 -4
  72. package/README.internal.md +15 -15
  73. package/README.md +10 -10
  74. package/Rectangle.config.js +16 -7
  75. package/Rectangle.config.js.map +2 -2
  76. package/Rectangle.js +103 -20
  77. package/Rectangle.js.map +4 -4
  78. package/Sankey.config.js +69 -17
  79. package/Sankey.config.js.map +4 -4
  80. package/Sankey.js +212 -82
  81. package/Sankey.js.map +4 -4
  82. package/Scatter.config.js +44 -42
  83. package/Scatter.config.js.map +3 -3
  84. package/Scatter.js +84 -56
  85. package/Scatter.js.map +3 -3
  86. package/SingleValue.config.js +32 -18
  87. package/SingleValue.config.js.map +4 -4
  88. package/SingleValue.js +238 -94
  89. package/SingleValue.js.map +4 -4
  90. package/SingleValueBasic.js +1 -0
  91. package/SingleValueBasic.js.map +2 -2
  92. package/SingleValueIcon.config.js +22 -11
  93. package/SingleValueIcon.config.js.map +2 -2
  94. package/SingleValueIcon.js +85 -29
  95. package/SingleValueIcon.js.map +2 -2
  96. package/SingleValueRadial.config.js +34 -23
  97. package/SingleValueRadial.config.js.map +3 -3
  98. package/SingleValueRadial.js +90 -49
  99. package/SingleValueRadial.js.map +4 -4
  100. package/SparkLine.js +153 -49
  101. package/SparkLine.js.map +2 -2
  102. package/Table.config.js +71 -51
  103. package/Table.config.js.map +3 -3
  104. package/Table.js +282 -145
  105. package/Table.js.map +3 -3
  106. package/Timeline.config.js +36 -34
  107. package/Timeline.config.js.map +4 -4
  108. package/Timeline.js +67 -59
  109. package/Timeline.js.map +4 -4
  110. package/common/Charting.js +8 -3
  111. package/common/Charting.js.map +2 -2
  112. package/common/ChartingApi.js +1 -0
  113. package/common/ChartingApi.js.map +1 -1
  114. package/common/DocExampleWithVizSandbox.js +7 -2
  115. package/common/DocExampleWithVizSandbox.js.map +2 -2
  116. package/common/EventsDoc.js +31 -5
  117. package/common/EventsDoc.js.map +4 -4
  118. package/common/GaugeMajorTicks.js +4 -1
  119. package/common/GaugeMajorTicks.js.map +2 -2
  120. package/common/GaugeValueMarker.js +31 -3
  121. package/common/GaugeValueMarker.js.map +4 -4
  122. package/common/OptionsDoc.js +4 -1
  123. package/common/OptionsDoc.js.map +2 -2
  124. package/common/OverviewDoc.js +66 -50
  125. package/common/OverviewDoc.js.map +4 -4
  126. package/common/SplunkVisualization.js +1 -0
  127. package/common/SplunkVisualization.js.map +1 -1
  128. package/common/SplunkVisualizationApi.js +1 -0
  129. package/common/SplunkVisualizationApi.js.map +1 -1
  130. package/common/ThemedDefaults.js +67 -0
  131. package/common/ThemedDefaults.js.map +7 -0
  132. package/common/ThemesDoc.js +6 -9
  133. package/common/ThemesDoc.js.map +2 -2
  134. package/common/chartingUtils.js +12 -0
  135. package/common/chartingUtils.js.map +2 -2
  136. package/common/docUtils.js +6 -1
  137. package/common/docUtils.js.map +2 -2
  138. package/common/gaugeUtils.js +6 -1
  139. package/common/gaugeUtils.js.map +2 -2
  140. package/common/shapeUtils.js +87 -3
  141. package/common/shapeUtils.js.map +4 -4
  142. package/common/utils/configUtils.js +4 -5
  143. package/common/utils/configUtils.js.map +2 -2
  144. package/common/utils/dataUtils.js +1 -0
  145. package/common/utils/dataUtils.js.map +2 -2
  146. package/common/utils/featureFlagUtils.js +1 -0
  147. package/common/utils/featureFlagUtils.js.map +1 -1
  148. package/common/utils/hocUtils.js +1 -0
  149. package/common/utils/hocUtils.js.map +1 -1
  150. package/common/utils/mapUtils.js +174 -48
  151. package/common/utils/mapUtils.js.map +4 -4
  152. package/common/utils/singleValueUtils.js +9 -3
  153. package/common/utils/singleValueUtils.js.map +2 -2
  154. package/common/utils/styleUtils.js +1 -0
  155. package/common/utils/styleUtils.js.map +1 -1
  156. package/common/utils/testHelper.js +1 -0
  157. package/common/utils/testHelper.js.map +1 -1
  158. package/common/utils/trellisUtils.js +1 -0
  159. package/common/utils/trellisUtils.js.map +1 -1
  160. package/common/utils/urlUtils.js +1 -0
  161. package/common/utils/urlUtils.js.map +1 -1
  162. package/common/withDashboardViz.js +25 -8
  163. package/common/withDashboardViz.js.map +2 -2
  164. package/package.json +37 -35
package/Area.js CHANGED
@@ -1,6 +1,7 @@
1
1
  /* Copyright © 2020 Splunk Inc.
2
2
  SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
3
3
  in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
+ "use strict";
4
5
  var __create = Object.create;
5
6
  var __defProp = Object.defineProperty;
6
7
  var __defProps = Object.defineProperties;
@@ -652,6 +653,7 @@ var propTypes = {
652
653
  onDownsamplingThresholdChange: prop_types_exports.func,
653
654
  xField: prop_types_exports.string,
654
655
  y2Fields: prop_types_exports.array,
656
+ additionalTooltipFields: prop_types_exports.array,
655
657
  splitByLayout: prop_types_exports.oneOf(Object.values(visualization_schemas_exports.LAYOUT_TYPE)),
656
658
  trellisKey: prop_types_exports.string,
657
659
  trellisSplitBy: prop_types_exports.string,
@@ -697,7 +699,8 @@ var Charting = (props) => {
697
699
  xField,
698
700
  backgroundColor,
699
701
  defaultFontColor,
700
- trellisKey
702
+ trellisKey,
703
+ additionalTooltipFields
701
704
  } = props;
702
705
  const prevOptions = usePrevious(options);
703
706
  const prevTimezone = usePrevious(timezone);
@@ -924,7 +927,8 @@ var Charting = (props) => {
924
927
  timezone == null ? void 0 : timezone.utcOffset,
925
928
  timezone == null ? void 0 : timezone.serializedTimezone,
926
929
  themeKey,
927
- onClick
930
+ onClick,
931
+ additionalTooltipFields
928
932
  ]);
929
933
  return /* @__PURE__ */ react_exports.createElement(react_exports.Fragment, null, trellisEnabled && /* @__PURE__ */ react_exports.createElement(
930
934
  TrellisTitle,
@@ -967,7 +971,8 @@ var defaultProps = {
967
971
  trellisKey: void 0,
968
972
  trellisSplitBy: void 0,
969
973
  backgroundColor: "",
970
- defaultFontColor: ""
974
+ defaultFontColor: "",
975
+ additionalTooltipFields: []
971
976
  };
972
977
  Charting.propTypes = propTypes;
973
978
  Charting.defaultProps = defaultProps;
@@ -1033,11 +1038,9 @@ var configUtils_default = "default" in defaultImport22 ? defaultImport22.default
1033
1038
  // src/common/utils/configUtils.ts
1034
1039
  function enhanceConfig(vizConfig) {
1035
1040
  const enhancedConfig = __spreadValues({}, vizConfig);
1036
- enhancedConfig.editorConfig = vizConfig.editorConfig.map(
1037
- (config2) => {
1038
- return __spreadProps(__spreadValues({}, config2), { open: config2.open || false });
1039
- }
1040
- );
1041
+ enhancedConfig.editorConfig = vizConfig.editorConfig.map((config2) => {
1042
+ return __spreadProps(__spreadValues({}, config2), { open: config2.open || false });
1043
+ });
1041
1044
  return enhancedConfig;
1042
1045
  }
1043
1046
  var insertLayout = (layout, index, ...layoutItems) => [
@@ -1085,6 +1088,13 @@ var AxesChartDataConfig = {
1085
1088
  }
1086
1089
  }
1087
1090
  ],
1091
+ [
1092
+ {
1093
+ label: (0, i18n_exports._)("Additional tooltip fields"),
1094
+ option: "additionalTooltipFields",
1095
+ editor: "editor.columnMultiSelectionByFieldNameEditor"
1096
+ }
1097
+ ],
1088
1098
  [
1089
1099
  {
1090
1100
  label: (0, i18n_exports._)("Result limit"),
@@ -1250,7 +1260,6 @@ var TrellisEditorConfig = [
1250
1260
  editorProps: {
1251
1261
  min: 1
1252
1262
  },
1253
- placeholder: (0, i18n_exports._)("Auto"),
1254
1263
  showEditor: isTrellisEnabled2
1255
1264
  }
1256
1265
  ],
@@ -1479,15 +1488,18 @@ var background = ({
1479
1488
  ];
1480
1489
  var BackgroundColor_default = background;
1481
1490
 
1491
+ // src/common/ThemedDefaults.tsx
1492
+ var defaultBackgroundColor = (props) => pick_default({
1493
+ enterprise: {
1494
+ dark: variables_default.black(props),
1495
+ light: variables_default.white(props)
1496
+ },
1497
+ prisma: variables_default.backgroundColorSection(props)
1498
+ })(props);
1499
+
1482
1500
  // src/common/editorConfig/AxesChartColorAndStyle.ts
1483
1501
  var themes = {
1484
- defaultBackgroundColor: (props) => pick_default({
1485
- enterprise: {
1486
- dark: variables_default.black(props),
1487
- light: variables_default.backgroundColor(props)
1488
- },
1489
- prisma: variables_default.backgroundColorSidebar(props)
1490
- })(props)
1502
+ defaultBackgroundColor
1491
1503
  };
1492
1504
  var AxesChartColorAndStyle = {
1493
1505
  label: (0, i18n_exports._)("Color and style"),
@@ -2270,13 +2282,7 @@ var size = {
2270
2282
  };
2271
2283
  var defaultContext = {};
2272
2284
  var themes2 = {
2273
- defaultBackgroundColor: (props) => pick_default({
2274
- enterprise: {
2275
- dark: variables_default.black(props),
2276
- light: variables_default.backgroundColor(props)
2277
- },
2278
- prisma: variables_default.backgroundColorSidebar(props)
2279
- })(props),
2285
+ defaultBackgroundColor,
2280
2286
  defaultFontColor: (props) => pick_default({
2281
2287
  enterprise: {
2282
2288
  dark: variables_default.textColor(props),
@@ -2338,7 +2344,10 @@ var editorConfig = [
2338
2344
  ]
2339
2345
  ]
2340
2346
  },
2341
- AxesChartLegendWithTrellisAndMode({ showLegendTooltip: true, hideModeWhenOff: true }),
2347
+ AxesChartLegendWithTrellisAndMode({
2348
+ showLegendTooltip: true,
2349
+ hideModeWhenOff: true
2350
+ }),
2342
2351
  AxesChartXGridAndLabels_default,
2343
2352
  AxesChartYGridAndLabels_default,
2344
2353
  AxesChartY2GridAndLabels_default
@@ -2679,9 +2688,14 @@ var Item = styled_components_default.div.attrs(({ width }) => ({
2679
2688
  position: relative;
2680
2689
  background-color: ${(props) => (0, colorUtils_exports.isColor)(props.backgroundColor) && props.backgroundColor || props.theme.defaultBackgroundColor}};
2681
2690
  `;
2682
- var FixSizeItem = styled_components_default.div.attrs(({ width, height }) => ({
2683
- style: __spreadValues(__spreadValues({}, width && { width: (0, style_exports.toPx)(width) }), height && { height: (0, style_exports.toPx)(height) })
2684
- }))`
2691
+ var FixSizeItem = styled_components_default.div.attrs(
2692
+ ({
2693
+ width,
2694
+ height
2695
+ }) => ({
2696
+ style: __spreadValues(__spreadValues({}, width && { width: (0, style_exports.toPx)(width) }), height && { height: (0, style_exports.toPx)(height) })
2697
+ })
2698
+ )`
2685
2699
  position: relative;
2686
2700
  flex-direction: column;
2687
2701
  flex: 1;
@@ -2715,7 +2729,7 @@ var withFixedSizeContainer = (Viz) => {
2715
2729
  FixSizeItem,
2716
2730
  {
2717
2731
  "data-test": "fix-size-item",
2718
- "data-splunk-visualization-version": "27.4.0 - 92ef39d5c",
2732
+ "data-splunk-visualization-version": "28.0.0 - 0c5f07712",
2719
2733
  width,
2720
2734
  height,
2721
2735
  backgroundColor
@@ -2781,7 +2795,7 @@ var Cover = styled_components_default.div`
2781
2795
  bottom: 0;
2782
2796
  `;
2783
2797
  var Blocker = styled_components_default.div.attrs({
2784
- "data-splunk-visualization-version": "27.4.0 - 92ef39d5c"
2798
+ "data-splunk-visualization-version": "28.0.0 - 0c5f07712"
2785
2799
  })`
2786
2800
  position: relative;
2787
2801
  width: 100%;
@@ -2925,7 +2939,12 @@ var useGetXAndYFields = ({
2925
2939
  y2Fields: options.y2 ? "> y2 | getField()" : void 0,
2926
2940
  fieldTypes: "> primary | getType()"
2927
2941
  };
2928
- const { xField = "", yFields = [], y2Fields = [], fieldTypes } = Options_exports.Options.evaluate(
2942
+ const {
2943
+ xField = "",
2944
+ yFields = [],
2945
+ y2Fields = [],
2946
+ fieldTypes
2947
+ } = Options_exports.Options.evaluate(
2929
2948
  { options: optionsToEvaluate, context },
2930
2949
  dataSourcesWithOnlyOnePoint,
2931
2950
  () => {
@@ -3539,7 +3558,9 @@ var withDashboardViz = (opts) => {
3539
3558
  return result;
3540
3559
  }
3541
3560
  } catch (e) {
3542
- console.error(`unexpected error evaluating options: ${e.message}`);
3561
+ if (e instanceof Error) {
3562
+ console.error(`unexpected error evaluating options: ${e.message}`);
3563
+ }
3543
3564
  return {};
3544
3565
  }
3545
3566
  return {};
@@ -3598,7 +3619,11 @@ var withDashboardViz = (opts) => {
3598
3619
  if (ev && ev.payload) {
3599
3620
  payload = ev.payload;
3600
3621
  }
3601
- return onEventTrigger({ originalEvent: ev, payload, type: eventName });
3622
+ return onEventTrigger({
3623
+ originalEvent: ev,
3624
+ payload,
3625
+ type: eventName
3626
+ });
3602
3627
  };
3603
3628
  if (parentKeys) {
3604
3629
  for (let i = parentKeys.length - 1; i >= 0; i -= 1) {
@@ -3680,7 +3705,9 @@ var simpleXMLOptions_default = "default" in defaultImport36 ? defaultImport36.de
3680
3705
  // src/Area/areaUtils.ts
3681
3706
  var transformOptions = (originalOptions) => {
3682
3707
  const returnOptions = (0, propUtils_exports.adjustOptionsToSchema)(originalOptions, config_default.optionsSchema);
3683
- return __spreadProps(__spreadValues({}, (0, simpleXMLOptions_exports.getSimpleXMLOptionsForProps)(convertToAreaSCProperties(returnOptions))), { chart: "area" });
3708
+ return __spreadProps(__spreadValues({}, (0, simpleXMLOptions_exports.getSimpleXMLOptionsForProps)(convertToAreaSCProperties(returnOptions))), {
3709
+ chart: "area"
3710
+ });
3684
3711
  };
3685
3712
  var convertToAreaSCProperties = (originalOptions) => {
3686
3713
  const areaOptionsSCMapping = {
@@ -3791,6 +3818,16 @@ var constructFieldsAndColumns = ({
3791
3818
  fields
3792
3819
  };
3793
3820
  };
3821
+ function constructAdditionalTooltipFieldsMap({ fields, columns, additionalTooltipFields }) {
3822
+ const map = {};
3823
+ additionalTooltipFields == null ? void 0 : additionalTooltipFields.forEach((fieldName) => {
3824
+ const index = fields.findIndex((f) => f.name === fieldName);
3825
+ if (index !== -1) {
3826
+ map[fieldName] = columns[index];
3827
+ }
3828
+ });
3829
+ return map;
3830
+ }
3794
3831
  var shouldEnableSearchZoom = (eventHandlers = [], xField = "") => {
3795
3832
  const rangeSelectEventHandler = eventHandlers.find(
3796
3833
  (eventHandler) => {
@@ -3917,7 +3954,9 @@ var withTrellis = (Viz) => {
3917
3954
  const evaluated = Options_exports.Options.evaluate(
3918
3955
  {
3919
3956
  context: Viz.config.context,
3920
- options: { trellisBackgroundColor: mergedOptions.trellisBackgroundColor }
3957
+ options: {
3958
+ trellisBackgroundColor: mergedOptions.trellisBackgroundColor
3959
+ }
3921
3960
  },
3922
3961
  {},
3923
3962
  themeFunc
@@ -4063,6 +4102,7 @@ var computeVizProps = (_a) => {
4063
4102
  y,
4064
4103
  xField,
4065
4104
  yFields,
4105
+ additionalTooltipFields,
4066
4106
  annotationX,
4067
4107
  annotationColor,
4068
4108
  annotationLabel,
@@ -4077,6 +4117,7 @@ var computeVizProps = (_a) => {
4077
4117
  "y",
4078
4118
  "xField",
4079
4119
  "yFields",
4120
+ "additionalTooltipFields",
4080
4121
  "annotationX",
4081
4122
  "annotationColor",
4082
4123
  "annotationLabel",
@@ -4095,16 +4136,27 @@ var computeVizProps = (_a) => {
4095
4136
  };
4096
4137
  const { y2, y2Fields, hasEventHandlers, eventHandlers } = otherOptions;
4097
4138
  computedProps.options = transformOptions(otherOptions);
4098
- const chartingAnnotations = getAnnotations({ annotationX, annotationColor, annotationLabel });
4139
+ const chartingAnnotations = getAnnotations({
4140
+ annotationX,
4141
+ annotationColor,
4142
+ annotationLabel
4143
+ });
4099
4144
  const primaryData = __spreadValues({}, dataSources.primary.data);
4100
4145
  const { columns, fields } = constructFieldsAndColumns({ x, y, xField, yFields, y2, y2Fields });
4146
+ const additionalTooltipFieldsConstructed = constructAdditionalTooltipFieldsMap(__spreadProps(__spreadValues({}, dataSources.primary.data), {
4147
+ additionalTooltipFields
4148
+ }));
4101
4149
  primaryData.columns = columns;
4102
4150
  primaryData.fields = fields;
4103
4151
  computedProps.chartData = charting_bundle_default.extractChartReadyData(
4104
4152
  __spreadProps(__spreadValues({}, primaryData), {
4105
4153
  annotations: chartingAnnotations
4106
4154
  }),
4107
- { removeRangeSelectOnLoad: true, enableSearchZoom: shouldEnableSearchZoom(eventHandlers, xField) }
4155
+ {
4156
+ removeRangeSelectOnLoad: true,
4157
+ enableSearchZoom: shouldEnableSearchZoom(eventHandlers, xField),
4158
+ additionalTooltipFields: additionalTooltipFieldsConstructed
4159
+ }
4108
4160
  );
4109
4161
  if (hasEventHandlers) {
4110
4162
  computedProps.onClick = onEventTrigger;