@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/Bar.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;
@@ -1042,11 +1047,9 @@ var configUtils_default = "default" in defaultImport23 ? defaultImport23.default
1042
1047
  // src/common/utils/configUtils.ts
1043
1048
  function enhanceConfig(vizConfig) {
1044
1049
  const enhancedConfig = __spreadValues({}, vizConfig);
1045
- enhancedConfig.editorConfig = vizConfig.editorConfig.map(
1046
- (config2) => {
1047
- return __spreadProps(__spreadValues({}, config2), { open: config2.open || false });
1048
- }
1049
- );
1050
+ enhancedConfig.editorConfig = vizConfig.editorConfig.map((config2) => {
1051
+ return __spreadProps(__spreadValues({}, config2), { open: config2.open || false });
1052
+ });
1050
1053
  return enhancedConfig;
1051
1054
  }
1052
1055
  var insertLayout = (layout, index, ...layoutItems) => [
@@ -1094,6 +1097,13 @@ var AxesChartDataConfig = {
1094
1097
  }
1095
1098
  }
1096
1099
  ],
1100
+ [
1101
+ {
1102
+ label: (0, i18n_exports._)("Additional tooltip fields"),
1103
+ option: "additionalTooltipFields",
1104
+ editor: "editor.columnMultiSelectionByFieldNameEditor"
1105
+ }
1106
+ ],
1097
1107
  [
1098
1108
  {
1099
1109
  label: (0, i18n_exports._)("Result limit"),
@@ -1259,7 +1269,6 @@ var TrellisEditorConfig = [
1259
1269
  editorProps: {
1260
1270
  min: 1
1261
1271
  },
1262
- placeholder: (0, i18n_exports._)("Auto"),
1263
1272
  showEditor: isTrellisEnabled2
1264
1273
  }
1265
1274
  ],
@@ -1760,15 +1769,18 @@ var background = ({
1760
1769
  ];
1761
1770
  var BackgroundColor_default = background;
1762
1771
 
1772
+ // src/common/ThemedDefaults.tsx
1773
+ var defaultBackgroundColor = (props) => pick_default({
1774
+ enterprise: {
1775
+ dark: variables_default.black(props),
1776
+ light: variables_default.white(props)
1777
+ },
1778
+ prisma: variables_default.backgroundColorSection(props)
1779
+ })(props);
1780
+
1763
1781
  // src/common/editorConfig/AxesChartColorAndStyle.ts
1764
1782
  var themes = {
1765
- defaultBackgroundColor: (props) => pick_default({
1766
- enterprise: {
1767
- dark: variables_default.black(props),
1768
- light: variables_default.backgroundColor(props)
1769
- },
1770
- prisma: variables_default.backgroundColorSidebar(props)
1771
- })(props)
1783
+ defaultBackgroundColor
1772
1784
  };
1773
1785
  var AxesChartColorAndStyle = {
1774
1786
  label: (0, i18n_exports._)("Color and style"),
@@ -2277,13 +2289,7 @@ var size = {
2277
2289
  };
2278
2290
  var defaultContext = {};
2279
2291
  var themes2 = {
2280
- defaultBackgroundColor: (props) => pick_default({
2281
- enterprise: {
2282
- dark: variables_default.black(props),
2283
- light: variables_default.backgroundColor(props)
2284
- },
2285
- prisma: variables_default.backgroundColorSidebar(props)
2286
- })(props),
2292
+ defaultBackgroundColor,
2287
2293
  defaultFontColor: (props) => pick_default({
2288
2294
  enterprise: {
2289
2295
  dark: variables_default.textColor(props),
@@ -2389,7 +2395,9 @@ var editorConfig = [
2389
2395
  ]
2390
2396
  },
2391
2397
  // bar viz supports custom labels for the x- and y-axis titles (vertical and horizontal axes, respectively)
2392
- __spreadProps(__spreadValues({}, AxesChartYGridAndLabels_default), { label: (0, i18n_exports._)("Y-axis grid and labels (horizontal axis)") }),
2398
+ __spreadProps(__spreadValues({}, AxesChartYGridAndLabels_default), {
2399
+ label: (0, i18n_exports._)("Y-axis grid and labels (horizontal axis)")
2400
+ }),
2393
2401
  AxesChartY2GridAndLabels_default
2394
2402
  ];
2395
2403
  var config = {
@@ -2719,9 +2727,14 @@ var Item = styled_components_default.div.attrs(({ width }) => ({
2719
2727
  position: relative;
2720
2728
  background-color: ${(props) => (0, colorUtils_exports.isColor)(props.backgroundColor) && props.backgroundColor || props.theme.defaultBackgroundColor}};
2721
2729
  `;
2722
- var FixSizeItem = styled_components_default.div.attrs(({ width, height }) => ({
2723
- style: __spreadValues(__spreadValues({}, width && { width: (0, style_exports.toPx)(width) }), height && { height: (0, style_exports.toPx)(height) })
2724
- }))`
2730
+ var FixSizeItem = styled_components_default.div.attrs(
2731
+ ({
2732
+ width,
2733
+ height
2734
+ }) => ({
2735
+ style: __spreadValues(__spreadValues({}, width && { width: (0, style_exports.toPx)(width) }), height && { height: (0, style_exports.toPx)(height) })
2736
+ })
2737
+ )`
2725
2738
  position: relative;
2726
2739
  flex-direction: column;
2727
2740
  flex: 1;
@@ -2755,7 +2768,7 @@ var withFixedSizeContainer = (Viz) => {
2755
2768
  FixSizeItem,
2756
2769
  {
2757
2770
  "data-test": "fix-size-item",
2758
- "data-splunk-visualization-version": "27.4.0 - 92ef39d5c",
2771
+ "data-splunk-visualization-version": "28.0.0 - 0c5f07712",
2759
2772
  width,
2760
2773
  height,
2761
2774
  backgroundColor
@@ -2821,7 +2834,7 @@ var Cover = styled_components_default.div`
2821
2834
  bottom: 0;
2822
2835
  `;
2823
2836
  var Blocker = styled_components_default.div.attrs({
2824
- "data-splunk-visualization-version": "27.4.0 - 92ef39d5c"
2837
+ "data-splunk-visualization-version": "28.0.0 - 0c5f07712"
2825
2838
  })`
2826
2839
  position: relative;
2827
2840
  width: 100%;
@@ -2965,7 +2978,12 @@ var useGetXAndYFields = ({
2965
2978
  y2Fields: options.y2 ? "> y2 | getField()" : void 0,
2966
2979
  fieldTypes: "> primary | getType()"
2967
2980
  };
2968
- const { xField = "", yFields = [], y2Fields = [], fieldTypes } = Options_exports.Options.evaluate(
2981
+ const {
2982
+ xField = "",
2983
+ yFields = [],
2984
+ y2Fields = [],
2985
+ fieldTypes
2986
+ } = Options_exports.Options.evaluate(
2969
2987
  { options: optionsToEvaluate, context },
2970
2988
  dataSourcesWithOnlyOnePoint,
2971
2989
  () => {
@@ -3579,7 +3597,9 @@ var withDashboardViz = (opts) => {
3579
3597
  return result;
3580
3598
  }
3581
3599
  } catch (e) {
3582
- console.error(`unexpected error evaluating options: ${e.message}`);
3600
+ if (e instanceof Error) {
3601
+ console.error(`unexpected error evaluating options: ${e.message}`);
3602
+ }
3583
3603
  return {};
3584
3604
  }
3585
3605
  return {};
@@ -3638,7 +3658,11 @@ var withDashboardViz = (opts) => {
3638
3658
  if (ev && ev.payload) {
3639
3659
  payload = ev.payload;
3640
3660
  }
3641
- return onEventTrigger({ originalEvent: ev, payload, type: eventName });
3661
+ return onEventTrigger({
3662
+ originalEvent: ev,
3663
+ payload,
3664
+ type: eventName
3665
+ });
3642
3666
  };
3643
3667
  if (parentKeys) {
3644
3668
  for (let i = parentKeys.length - 1; i >= 0; i -= 1) {
@@ -3786,6 +3810,16 @@ var constructFieldsAndColumns = ({
3786
3810
  fields
3787
3811
  };
3788
3812
  };
3813
+ function constructAdditionalTooltipFieldsMap({ fields, columns, additionalTooltipFields }) {
3814
+ const map = {};
3815
+ additionalTooltipFields == null ? void 0 : additionalTooltipFields.forEach((fieldName) => {
3816
+ const index = fields.findIndex((f) => f.name === fieldName);
3817
+ if (index !== -1) {
3818
+ map[fieldName] = columns[index];
3819
+ }
3820
+ });
3821
+ return map;
3822
+ }
3789
3823
 
3790
3824
  // src/Bar/barUtils.ts
3791
3825
  var barOptionsSCMapping = {
@@ -3973,7 +4007,9 @@ var withTrellis = (Viz) => {
3973
4007
  const evaluated = Options_exports.Options.evaluate(
3974
4008
  {
3975
4009
  context: Viz.config.context,
3976
- options: { trellisBackgroundColor: mergedOptions.trellisBackgroundColor }
4010
+ options: {
4011
+ trellisBackgroundColor: mergedOptions.trellisBackgroundColor
4012
+ }
3977
4013
  },
3978
4014
  {},
3979
4015
  themeFunc
@@ -4123,7 +4159,8 @@ var computeVizProps = (_a) => {
4123
4159
  visualizationApiRef,
4124
4160
  trellisKey,
4125
4161
  trellisSplitBy,
4126
- themeFunc
4162
+ themeFunc,
4163
+ additionalTooltipFields
4127
4164
  } = _b, otherOptions = __objRest(_b, [
4128
4165
  "dataSources",
4129
4166
  "x",
@@ -4134,7 +4171,8 @@ var computeVizProps = (_a) => {
4134
4171
  "visualizationApiRef",
4135
4172
  "trellisKey",
4136
4173
  "trellisSplitBy",
4137
- "themeFunc"
4174
+ "themeFunc",
4175
+ "additionalTooltipFields"
4138
4176
  ]);
4139
4177
  const defaultFontColor = themeFunc("defaultFontColor");
4140
4178
  const computedProps = {
@@ -4145,16 +4183,24 @@ var computeVizProps = (_a) => {
4145
4183
  defaultFontColor
4146
4184
  };
4147
4185
  const { y2, y2Fields } = otherOptions;
4148
- computedProps.options = (0, lodash_exports.chain)(otherOptions).pick(validOptions).thru(convertToBarSCProperties).thru((options) => __spreadProps(__spreadValues({}, (0, simpleXMLOptions_exports.getSimpleXMLOptionsForProps)(options)), { chart: "bar" })).value();
4186
+ computedProps.options = (0, lodash_exports.chain)(otherOptions).pick(validOptions).thru(convertToBarSCProperties).thru((options) => __spreadProps(__spreadValues({}, (0, simpleXMLOptions_exports.getSimpleXMLOptionsForProps)(options)), {
4187
+ chart: "bar"
4188
+ })).value();
4149
4189
  const truncationLimit = computedProps.options["chart.resultTruncationLimit"];
4150
4190
  let primaryData = __spreadValues({}, dataSources.primary.data);
4151
4191
  const { columns, fields } = constructFieldsAndColumns({ x, y, xField, yFields, y2, y2Fields });
4192
+ const additionalTooltipFieldsConstructed = constructAdditionalTooltipFieldsMap(__spreadProps(__spreadValues({}, dataSources.primary.data), {
4193
+ additionalTooltipFields
4194
+ }));
4152
4195
  primaryData.columns = columns;
4153
4196
  primaryData.fields = fields;
4154
4197
  if (truncationLimit) {
4155
4198
  primaryData = truncateData(primaryData, truncationLimit);
4156
4199
  }
4157
- computedProps.chartData = charting_bundle_default.extractChartReadyData(__spreadValues({}, primaryData));
4200
+ computedProps.chartData = charting_bundle_default.extractChartReadyData(
4201
+ __spreadValues({}, primaryData),
4202
+ { additionalTooltipFields: additionalTooltipFieldsConstructed }
4203
+ );
4158
4204
  if (otherOptions.hasEventHandlers) {
4159
4205
  computedProps.onClick = onEventTrigger;
4160
4206
  computedProps.onSelect = onEventTrigger;