@splunk/visualizations 24.3.2 → 24.3.5

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 (64) hide show
  1. package/.loki/reference/chrome_docker_PureVisualizations_PureMap_Tooltip_Dark.png +0 -0
  2. package/.loki/reference/chrome_docker_PureVisualizations_PureMap_basic.png +0 -0
  3. package/.loki/reference/chrome_docker_PureVisualizations_PureMap_bubble_layer_geostats_by.png +0 -0
  4. package/.loki/reference/chrome_docker_PureVisualizations_PureMap_scale_off.png +0 -0
  5. package/.loki/reference/chrome_docker_PureVisualizations_PureMap_scale_unit_metric.png +0 -0
  6. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Map_Editor.png +0 -0
  7. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Additional_Cases.png +0 -0
  8. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Internal_Fields.png +0 -0
  9. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Mostly_null.png +0 -0
  10. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Restricted_Zoom.png +0 -0
  11. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Set_Map_tiles.png +0 -0
  12. package/Area.js +121 -65
  13. package/Area.js.map +1 -1
  14. package/Bar.js +121 -65
  15. package/Bar.js.map +1 -1
  16. package/Bubble.js +121 -65
  17. package/Bubble.js.map +1 -1
  18. package/ChoroplethSvg.js +142 -73
  19. package/ChoroplethSvg.js.map +1 -1
  20. package/Column.js +121 -65
  21. package/Column.js.map +1 -1
  22. package/Ellipse.js +121 -65
  23. package/Ellipse.js.map +1 -1
  24. package/FillerGauge.js +121 -65
  25. package/FillerGauge.js.map +1 -1
  26. package/Image.js +125 -69
  27. package/Image.js.map +1 -1
  28. package/Line.js +121 -65
  29. package/Line.js.map +1 -1
  30. package/LinkGraph.js +121 -65
  31. package/LinkGraph.js.map +1 -1
  32. package/Map.config.js +16 -6
  33. package/Map.config.js.map +1 -1
  34. package/Map.js +430 -126
  35. package/Map.js.map +1 -1
  36. package/Markdown.js +131 -75
  37. package/Markdown.js.map +1 -1
  38. package/MarkerGauge.js +135 -79
  39. package/MarkerGauge.js.map +1 -1
  40. package/ParallelCoordinates.js +140 -83
  41. package/ParallelCoordinates.js.map +1 -1
  42. package/Pie.js +133 -77
  43. package/Pie.js.map +1 -1
  44. package/Punchcard.js +144 -87
  45. package/Punchcard.js.map +1 -1
  46. package/Rectangle.js +129 -73
  47. package/Rectangle.js.map +1 -1
  48. package/Sankey.js +204 -148
  49. package/Sankey.js.map +1 -1
  50. package/Scatter.js +131 -75
  51. package/Scatter.js.map +1 -1
  52. package/SingleValue.js +160 -104
  53. package/SingleValue.js.map +1 -1
  54. package/SingleValueIcon.js +135 -78
  55. package/SingleValueIcon.js.map +1 -1
  56. package/SingleValueRadial.js +202 -146
  57. package/SingleValueRadial.js.map +1 -1
  58. package/Table.js +236 -180
  59. package/Table.js.map +1 -1
  60. package/common/utils/hocUtils.js +65 -9
  61. package/common/utils/hocUtils.js.map +1 -1
  62. package/common/withDashboardViz.js +68 -12
  63. package/common/withDashboardViz.js.map +1 -1
  64. package/package.json +9 -9
package/Table.js CHANGED
@@ -87,7 +87,7 @@ module.exports =
87
87
  /******/
88
88
  /******/
89
89
  /******/ // Load entry module and return exports
90
- /******/ return __webpack_require__(__webpack_require__.s = 255);
90
+ /******/ return __webpack_require__(__webpack_require__.s = 256);
91
91
  /******/ })
92
92
  /************************************************************************/
93
93
  /******/ ({
@@ -220,7 +220,7 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
220
220
 
221
221
  return React.createElement(FixSizeItem, {
222
222
  "data-test": "fix-size-item",
223
- "data-splunk-visualization-version": "24.3.2 - 1cf892b72",
223
+ "data-splunk-visualization-version": "24.3.5 - 8d7f16f22",
224
224
  width: width,
225
225
  height: height,
226
226
  backgroundColor: backgroundColor
@@ -277,13 +277,13 @@ exports.config = exports.PureTable = exports.themes = exports.computeVizProps =
277
277
 
278
278
  var colorUtils_1 = __webpack_require__(11);
279
279
 
280
- var config_1 = __webpack_require__(256);
280
+ var config_1 = __webpack_require__(257);
281
281
 
282
282
  exports.config = config_1.default;
283
283
 
284
- var withDashboardViz_1 = __webpack_require__(27);
284
+ var withDashboardViz_1 = __webpack_require__(28);
285
285
 
286
- var PureTable_1 = __webpack_require__(257);
286
+ var PureTable_1 = __webpack_require__(258);
287
287
 
288
288
  exports.PureTable = PureTable_1.default;
289
289
 
@@ -446,7 +446,7 @@ var T = __webpack_require__(0);
446
446
 
447
447
  var lodash_1 = __webpack_require__(2);
448
448
 
449
- var DataSource_1 = __webpack_require__(33);
449
+ var DataSource_1 = __webpack_require__(34);
450
450
 
451
451
  exports.SortParamsPropTypes = T.shape({
452
452
  currentSortKey: T.string,
@@ -574,87 +574,32 @@ exports.getPaginationParams = getPaginationParams;
574
574
  Object.defineProperty(exports, "__esModule", {
575
575
  value: true
576
576
  });
577
- exports.shouldShowIconPlaceholder = void 0;
578
-
579
- var React = __webpack_require__(1);
580
-
581
- var T = __webpack_require__(0);
577
+ exports.pickFieldFromJSONSchema = void 0;
582
578
 
583
579
  var lodash_1 = __webpack_require__(2);
584
580
 
585
- var i18n_1 = __webpack_require__(3);
586
-
587
- var Message_1 = __webpack_require__(9);
588
-
589
- var FixedSizeContainer_1 = __webpack_require__(12);
590
- /**
591
- * @method shouldShowIconPlaceholder
592
- * @param {object} dataSources
593
- * @param {boolean} loading
594
- * @returns {boolean}
595
- */
596
-
597
-
598
- var shouldShowIconPlaceholder = function shouldShowIconPlaceholder(dataSources) {
599
- var loading = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
600
- var data = lodash_1.get(dataSources, 'primary.data.columns[0]', undefined);
601
- var noData = data === undefined;
602
- var fields = lodash_1.get(dataSources, 'primary.data.fields[0]', undefined);
603
- var noFields = fields === undefined;
604
- return loading || noData || noFields;
605
- };
606
-
607
- exports.shouldShowIconPlaceholder = shouldShowIconPlaceholder;
608
- var propTypes = {
609
- icon: T.func,
610
- width: T.oneOfType([T.string, T.number]),
611
- height: T.oneOfType([T.string, T.number]),
612
- // eslint-disable-next-line react/no-unused-prop-types
613
- backgroundColor: T.string
614
- };
615
- /**
616
- * @method IconPlaceholder
617
- * @param {IconPlaceholderProps} props
618
- * @returns {React.ReactElement}
619
- */
620
-
621
- var IconPlaceholder = function IconPlaceholder(props) {
622
- var width = props.width,
623
- height = props.height,
624
- icon = props.icon;
581
+ var pickFieldFromJSONSchema = function pickFieldFromJSONSchema(optionsSchema) {
582
+ var fieldName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';
583
+ return Object.keys(optionsSchema).reduce(function (accum, k) {
584
+ if (lodash_1.has(optionsSchema[k], fieldName)) {
585
+ accum[k] = optionsSchema[k][fieldName];
586
+ } else if (lodash_1.get(optionsSchema, [k, 'type']) === 'object' && lodash_1.has(optionsSchema[k], 'properties')) {
587
+ var nestedSchema = exports.pickFieldFromJSONSchema(optionsSchema[k].properties, fieldName);
625
588
 
626
- if (icon) {
627
- return React.createElement(icon, {
628
- style: {
629
- left: '50%',
630
- top: '50%',
631
- color: 'grey',
632
- position: 'absolute',
633
- transform: 'translate(-50%, -50%)'
634
- },
635
- width: '50%',
636
- height: '50%'
637
- });
638
- }
589
+ if (!lodash_1.isEmpty(nestedSchema)) {
590
+ accum[k] = nestedSchema;
591
+ }
592
+ }
639
593
 
640
- return React.createElement(Message_1.default, {
641
- width: width,
642
- height: height,
643
- level: "warning",
644
- message: i18n_1._('No DataSource Connected')
645
- });
594
+ return accum;
595
+ }, {});
646
596
  };
647
597
 
648
- IconPlaceholder.propTypes = propTypes;
649
- IconPlaceholder.defaultProps = {
650
- width: '100%',
651
- height: 250
652
- };
653
- exports.default = FixedSizeContainer_1.default(IconPlaceholder);
598
+ exports.pickFieldFromJSONSchema = pickFieldFromJSONSchema;
654
599
 
655
600
  /***/ }),
656
601
 
657
- /***/ 255:
602
+ /***/ 256:
658
603
  /***/ (function(module, exports, __webpack_require__) {
659
604
 
660
605
  "use strict";
@@ -699,7 +644,7 @@ Object.defineProperty(exports, "default", {
699
644
 
700
645
  /***/ }),
701
646
 
702
- /***/ 256:
647
+ /***/ 257:
703
648
  /***/ (function(module, exports, __webpack_require__) {
704
649
 
705
650
  "use strict";
@@ -731,7 +676,7 @@ var VizBehavior_1 = __webpack_require__(5);
731
676
 
732
677
  var consts_1 = __webpack_require__(105);
733
678
 
734
- var VizCategory_1 = __webpack_require__(26);
679
+ var VizCategory_1 = __webpack_require__(27);
735
680
 
736
681
  var dataContract = {
737
682
  requiredDataSources: [{
@@ -1374,7 +1319,7 @@ exports.default = configUtils_1.enhanceConfig(config);
1374
1319
 
1375
1320
  /***/ }),
1376
1321
 
1377
- /***/ 257:
1322
+ /***/ 258:
1378
1323
  /***/ (function(module, exports, __webpack_require__) {
1379
1324
 
1380
1325
  "use strict";
@@ -1413,9 +1358,9 @@ var i18n_1 = __webpack_require__(3);
1413
1358
 
1414
1359
  var Table_1 = __webpack_require__(82);
1415
1360
 
1416
- var Paginator_1 = __webpack_require__(258);
1361
+ var Paginator_1 = __webpack_require__(259);
1417
1362
 
1418
- var Message_1 = __webpack_require__(259);
1363
+ var Message_1 = __webpack_require__(260);
1419
1364
 
1420
1365
  var colorUtils_1 = __webpack_require__(11);
1421
1366
 
@@ -1425,11 +1370,11 @@ var pick_1 = __webpack_require__(21);
1425
1370
 
1426
1371
  var variables_1 = __webpack_require__(19);
1427
1372
 
1428
- var hooks_1 = __webpack_require__(260);
1373
+ var hooks_1 = __webpack_require__(261);
1429
1374
 
1430
1375
  var consts_1 = __webpack_require__(105);
1431
1376
 
1432
- var cells_1 = __webpack_require__(261);
1377
+ var cells_1 = __webpack_require__(262);
1433
1378
 
1434
1379
  var getPagination_1 = __webpack_require__(24);
1435
1380
 
@@ -1439,7 +1384,7 @@ var FixedSizeContainer_1 = __webpack_require__(12); // debounce was imported thi
1439
1384
  // eslint-disable-next-line import/order
1440
1385
 
1441
1386
 
1442
- var debounce = __webpack_require__(266);
1387
+ var debounce = __webpack_require__(267);
1443
1388
 
1444
1389
  var NonVisibleTableHead = styled_components_1.default(Table_1.default.Head).withConfig({
1445
1390
  displayName: "PureTable__NonVisibleTableHead",
@@ -1732,17 +1677,10 @@ exports.default = withEmptyTableMessage(FixedSizeContainer_1.default(PureTable))
1732
1677
 
1733
1678
  /***/ }),
1734
1679
 
1735
- /***/ 258:
1736
- /***/ (function(module, exports) {
1737
-
1738
- module.exports = require("@splunk/react-ui/Paginator");
1739
-
1740
- /***/ }),
1741
-
1742
1680
  /***/ 259:
1743
1681
  /***/ (function(module, exports) {
1744
1682
 
1745
- module.exports = require("@splunk/react-ui/Message");
1683
+ module.exports = require("@splunk/react-ui/Paginator");
1746
1684
 
1747
1685
  /***/ }),
1748
1686
 
@@ -1755,27 +1693,94 @@ module.exports = require("@splunk/react-ui/Message");
1755
1693
  Object.defineProperty(exports, "__esModule", {
1756
1694
  value: true
1757
1695
  });
1758
- exports.VizCategory = void 0;
1759
- var VizCategory;
1696
+ exports.shouldShowIconPlaceholder = void 0;
1760
1697
 
1761
- (function (VizCategory) {
1762
- VizCategory["SINGLE_VALUE"] = "Single Value";
1763
- VizCategory["TRENDS"] = "Trends";
1764
- VizCategory["COMPARISONS"] = "Comparisons";
1765
- VizCategory["TABLE"] = "Table";
1766
- VizCategory["GAUGE"] = "Gauge";
1767
- VizCategory["DISTRIBUTIONS"] = "Distributions";
1768
- VizCategory["CHOROPLETH"] = "Choropleth Maps";
1769
- VizCategory["SHAPES"] = "Shapes";
1770
- VizCategory["MISC"] = "misc";
1771
- VizCategory["FLOW"] = "Flow";
1772
- VizCategory["CORRELATION"] = "Correlation";
1773
- VizCategory["SPATIAL"] = "Spatial";
1774
- })(VizCategory = exports.VizCategory || (exports.VizCategory = {}));
1698
+ var React = __webpack_require__(1);
1699
+
1700
+ var T = __webpack_require__(0);
1701
+
1702
+ var lodash_1 = __webpack_require__(2);
1703
+
1704
+ var i18n_1 = __webpack_require__(3);
1705
+
1706
+ var Message_1 = __webpack_require__(9);
1707
+
1708
+ var FixedSizeContainer_1 = __webpack_require__(12);
1709
+ /**
1710
+ * @method shouldShowIconPlaceholder
1711
+ * @param {object} dataSources
1712
+ * @param {boolean} loading
1713
+ * @returns {boolean}
1714
+ */
1715
+
1716
+
1717
+ var shouldShowIconPlaceholder = function shouldShowIconPlaceholder(dataSources) {
1718
+ var loading = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
1719
+ var data = lodash_1.get(dataSources, 'primary.data.columns[0]', undefined);
1720
+ var noData = data === undefined;
1721
+ var fields = lodash_1.get(dataSources, 'primary.data.fields[0]', undefined);
1722
+ var noFields = fields === undefined;
1723
+ return loading || noData || noFields;
1724
+ };
1725
+
1726
+ exports.shouldShowIconPlaceholder = shouldShowIconPlaceholder;
1727
+ var propTypes = {
1728
+ icon: T.func,
1729
+ width: T.oneOfType([T.string, T.number]),
1730
+ height: T.oneOfType([T.string, T.number]),
1731
+ // eslint-disable-next-line react/no-unused-prop-types
1732
+ backgroundColor: T.string
1733
+ };
1734
+ /**
1735
+ * @method IconPlaceholder
1736
+ * @param {IconPlaceholderProps} props
1737
+ * @returns {React.ReactElement}
1738
+ */
1739
+
1740
+ var IconPlaceholder = function IconPlaceholder(props) {
1741
+ var width = props.width,
1742
+ height = props.height,
1743
+ icon = props.icon;
1744
+
1745
+ if (icon) {
1746
+ return React.createElement(icon, {
1747
+ style: {
1748
+ left: '50%',
1749
+ top: '50%',
1750
+ color: 'grey',
1751
+ position: 'absolute',
1752
+ transform: 'translate(-50%, -50%)'
1753
+ },
1754
+ width: '50%',
1755
+ height: '50%'
1756
+ });
1757
+ }
1758
+
1759
+ return React.createElement(Message_1.default, {
1760
+ width: width,
1761
+ height: height,
1762
+ level: "warning",
1763
+ message: i18n_1._('No DataSource Connected')
1764
+ });
1765
+ };
1766
+
1767
+ IconPlaceholder.propTypes = propTypes;
1768
+ IconPlaceholder.defaultProps = {
1769
+ width: '100%',
1770
+ height: 250
1771
+ };
1772
+ exports.default = FixedSizeContainer_1.default(IconPlaceholder);
1775
1773
 
1776
1774
  /***/ }),
1777
1775
 
1778
1776
  /***/ 260:
1777
+ /***/ (function(module, exports) {
1778
+
1779
+ module.exports = require("@splunk/react-ui/Message");
1780
+
1781
+ /***/ }),
1782
+
1783
+ /***/ 261:
1779
1784
  /***/ (function(module, exports, __webpack_require__) {
1780
1785
 
1781
1786
  "use strict";
@@ -2196,7 +2201,7 @@ exports.useTable = useTable;
2196
2201
 
2197
2202
  /***/ }),
2198
2203
 
2199
- /***/ 261:
2204
+ /***/ 262:
2200
2205
  /***/ (function(module, exports, __webpack_require__) {
2201
2206
 
2202
2207
  "use strict";
@@ -2225,17 +2230,17 @@ Object.defineProperty(exports, "__esModule", {
2225
2230
  value: true
2226
2231
  });
2227
2232
 
2228
- __exportStar(__webpack_require__(262), exports);
2229
-
2230
2233
  __exportStar(__webpack_require__(263), exports);
2231
2234
 
2232
2235
  __exportStar(__webpack_require__(264), exports);
2233
2236
 
2234
2237
  __exportStar(__webpack_require__(265), exports);
2235
2238
 
2239
+ __exportStar(__webpack_require__(266), exports);
2240
+
2236
2241
  /***/ }),
2237
2242
 
2238
- /***/ 262:
2243
+ /***/ 263:
2239
2244
  /***/ (function(module, exports, __webpack_require__) {
2240
2245
 
2241
2246
  "use strict";
@@ -2258,7 +2263,7 @@ exports.SwitchTableCell = SwitchTableCell;
2258
2263
 
2259
2264
  /***/ }),
2260
2265
 
2261
- /***/ 263:
2266
+ /***/ 264:
2262
2267
  /***/ (function(module, exports, __webpack_require__) {
2263
2268
 
2264
2269
  "use strict";
@@ -2291,7 +2296,7 @@ exports.TextCell.displayName = 'TextCell';
2291
2296
 
2292
2297
  /***/ }),
2293
2298
 
2294
- /***/ 264:
2299
+ /***/ 265:
2295
2300
  /***/ (function(module, exports, __webpack_require__) {
2296
2301
 
2297
2302
  "use strict";
@@ -2330,7 +2335,7 @@ exports.ArrayCell.displayName = 'ArrayCell';
2330
2335
 
2331
2336
  /***/ }),
2332
2337
 
2333
- /***/ 265:
2338
+ /***/ 266:
2334
2339
  /***/ (function(module, exports, __webpack_require__) {
2335
2340
 
2336
2341
  "use strict";
@@ -2422,7 +2427,7 @@ exports.SparklineCell.displayName = 'SparklineCell';
2422
2427
 
2423
2428
  /***/ }),
2424
2429
 
2425
- /***/ 266:
2430
+ /***/ 267:
2426
2431
  /***/ (function(module, exports) {
2427
2432
 
2428
2433
  module.exports = require("lodash/debounce");
@@ -2435,6 +2440,35 @@ module.exports = require("lodash/debounce");
2435
2440
  "use strict";
2436
2441
 
2437
2442
 
2443
+ Object.defineProperty(exports, "__esModule", {
2444
+ value: true
2445
+ });
2446
+ exports.VizCategory = void 0;
2447
+ var VizCategory;
2448
+
2449
+ (function (VizCategory) {
2450
+ VizCategory["SINGLE_VALUE"] = "Single Value";
2451
+ VizCategory["TRENDS"] = "Trends";
2452
+ VizCategory["COMPARISONS"] = "Comparisons";
2453
+ VizCategory["TABLE"] = "Table";
2454
+ VizCategory["GAUGE"] = "Gauge";
2455
+ VizCategory["DISTRIBUTIONS"] = "Distributions";
2456
+ VizCategory["CHOROPLETH"] = "Choropleth Maps";
2457
+ VizCategory["SHAPES"] = "Shapes";
2458
+ VizCategory["MISC"] = "misc";
2459
+ VizCategory["FLOW"] = "Flow";
2460
+ VizCategory["CORRELATION"] = "Correlation";
2461
+ VizCategory["SPATIAL"] = "Spatial";
2462
+ })(VizCategory = exports.VizCategory || (exports.VizCategory = {}));
2463
+
2464
+ /***/ }),
2465
+
2466
+ /***/ 28:
2467
+ /***/ (function(module, exports, __webpack_require__) {
2468
+
2469
+ "use strict";
2470
+
2471
+
2438
2472
  Object.defineProperty(exports, "__esModule", {
2439
2473
  value: true
2440
2474
  });
@@ -2443,15 +2477,15 @@ var React = __webpack_require__(1);
2443
2477
 
2444
2478
  var lodash_1 = __webpack_require__(2);
2445
2479
 
2446
- var getSettingsFromThemedProps_1 = __webpack_require__(28);
2480
+ var getSettingsFromThemedProps_1 = __webpack_require__(29);
2447
2481
 
2448
- var Options_1 = __webpack_require__(29);
2482
+ var Options_1 = __webpack_require__(30);
2449
2483
 
2450
- var SanitizeProps_1 = __webpack_require__(30);
2484
+ var SanitizeProps_1 = __webpack_require__(31);
2451
2485
 
2452
2486
  var styled_components_1 = __webpack_require__(4);
2453
2487
 
2454
- var SplunkVisualization_1 = __webpack_require__(31);
2488
+ var SplunkVisualization_1 = __webpack_require__(32);
2455
2489
 
2456
2490
  var VizBehavior_1 = __webpack_require__(5);
2457
2491
 
@@ -2459,9 +2493,9 @@ var getSorting_1 = __webpack_require__(23);
2459
2493
 
2460
2494
  var getPagination_1 = __webpack_require__(24);
2461
2495
 
2462
- var useDeepMemo_1 = __webpack_require__(34);
2496
+ var useDeepMemo_1 = __webpack_require__(35);
2463
2497
 
2464
- var JSONSchemaUtils_1 = __webpack_require__(35);
2498
+ var JSONSchemaUtils_1 = __webpack_require__(25);
2465
2499
 
2466
2500
  var MissingPropsMessage_1 = __webpack_require__(36);
2467
2501
 
@@ -2523,7 +2557,7 @@ var withDashboardViz = function withDashboardViz(opts) {
2523
2557
  try {
2524
2558
  return Options_1.Options.evaluate({
2525
2559
  context: lodash_1.defaultsDeep({}, context, vizConfig.defaultContext),
2526
- options: hocUtils_1.deepMergeWithArrayOverrides({}, options, defaultOptions)
2560
+ options: hocUtils_1.deepMergeWithArrayPrimitiveOverrides({}, options, defaultOptions)
2527
2561
  }, dataSources, themeFunc);
2528
2562
  } catch (e) {
2529
2563
  // eslint-disable-next-line no-console
@@ -2654,35 +2688,35 @@ exports.default = withDashboardViz;
2654
2688
 
2655
2689
  /***/ }),
2656
2690
 
2657
- /***/ 28:
2691
+ /***/ 29:
2658
2692
  /***/ (function(module, exports) {
2659
2693
 
2660
2694
  module.exports = require("@splunk/themes/getSettingsFromThemedProps");
2661
2695
 
2662
2696
  /***/ }),
2663
2697
 
2664
- /***/ 29:
2698
+ /***/ 3:
2665
2699
  /***/ (function(module, exports) {
2666
2700
 
2667
- module.exports = require("@splunk/visualization-encoding/Options");
2701
+ module.exports = require("@splunk/ui-utils/i18n");
2668
2702
 
2669
2703
  /***/ }),
2670
2704
 
2671
- /***/ 3:
2705
+ /***/ 30:
2672
2706
  /***/ (function(module, exports) {
2673
2707
 
2674
- module.exports = require("@splunk/ui-utils/i18n");
2708
+ module.exports = require("@splunk/visualization-encoding/Options");
2675
2709
 
2676
2710
  /***/ }),
2677
2711
 
2678
- /***/ 30:
2712
+ /***/ 31:
2679
2713
  /***/ (function(module, exports) {
2680
2714
 
2681
2715
  module.exports = require("@splunk/visualizations-shared/SanitizeProps");
2682
2716
 
2683
2717
  /***/ }),
2684
2718
 
2685
- /***/ 31:
2719
+ /***/ 32:
2686
2720
  /***/ (function(module, exports, __webpack_require__) {
2687
2721
 
2688
2722
  "use strict";
@@ -2700,7 +2734,7 @@ var T = __webpack_require__(0);
2700
2734
 
2701
2735
  var lodash_1 = __webpack_require__(2);
2702
2736
 
2703
- var VizActionHandler_1 = __webpack_require__(32); // this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
2737
+ var VizActionHandler_1 = __webpack_require__(33); // this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
2704
2738
 
2705
2739
 
2706
2740
  exports.INITIAL_WIDTH = 250;
@@ -2834,7 +2868,7 @@ exports.default = SplunkVisualization;
2834
2868
 
2835
2869
  /***/ }),
2836
2870
 
2837
- /***/ 32:
2871
+ /***/ 33:
2838
2872
  /***/ (function(module, exports, __webpack_require__) {
2839
2873
 
2840
2874
  "use strict";
@@ -2872,7 +2906,7 @@ exports.DefaultVizActionHandler = DefaultVizActionHandler;
2872
2906
 
2873
2907
  /***/ }),
2874
2908
 
2875
- /***/ 33:
2909
+ /***/ 34:
2876
2910
  /***/ (function(module, exports, __webpack_require__) {
2877
2911
 
2878
2912
  "use strict";
@@ -2886,7 +2920,7 @@ exports.validSortDirs = ['asc', 'desc', 'none'];
2886
2920
 
2887
2921
  /***/ }),
2888
2922
 
2889
- /***/ 34:
2923
+ /***/ 35:
2890
2924
  /***/ (function(module, exports, __webpack_require__) {
2891
2925
 
2892
2926
  "use strict";
@@ -2932,40 +2966,6 @@ exports.useDeepMemo = useDeepMemo;
2932
2966
 
2933
2967
  /***/ }),
2934
2968
 
2935
- /***/ 35:
2936
- /***/ (function(module, exports, __webpack_require__) {
2937
-
2938
- "use strict";
2939
-
2940
-
2941
- Object.defineProperty(exports, "__esModule", {
2942
- value: true
2943
- });
2944
- exports.pickFieldFromJSONSchema = void 0;
2945
-
2946
- var lodash_1 = __webpack_require__(2);
2947
-
2948
- var pickFieldFromJSONSchema = function pickFieldFromJSONSchema(optionsSchema) {
2949
- var fieldName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';
2950
- return Object.keys(optionsSchema).reduce(function (accum, k) {
2951
- if (lodash_1.has(optionsSchema[k], fieldName)) {
2952
- accum[k] = optionsSchema[k][fieldName];
2953
- } else if (lodash_1.get(optionsSchema, [k, 'type']) === 'object' && lodash_1.has(optionsSchema[k], 'properties')) {
2954
- var nestedSchema = exports.pickFieldFromJSONSchema(optionsSchema[k].properties, fieldName);
2955
-
2956
- if (!lodash_1.isEmpty(nestedSchema)) {
2957
- accum[k] = nestedSchema;
2958
- }
2959
- }
2960
-
2961
- return accum;
2962
- }, {});
2963
- };
2964
-
2965
- exports.pickFieldFromJSONSchema = pickFieldFromJSONSchema;
2966
-
2967
- /***/ }),
2968
-
2969
2969
  /***/ 36:
2970
2970
  /***/ (function(module, exports, __webpack_require__) {
2971
2971
 
@@ -3068,7 +3068,7 @@ var Cover = styled_components_1.default.div.withConfig({
3068
3068
  componentId: "sc-1gsbnxb-0"
3069
3069
  })(["position:absolute;left:0;right:0;top:0;bottom:0;"]);
3070
3070
  var Blocker = styled_components_1.default.div.attrs({
3071
- 'data-splunk-visualization-version': "24.3.2 - 1cf892b72"
3071
+ 'data-splunk-visualization-version': "24.3.5 - 8d7f16f22"
3072
3072
  }).withConfig({
3073
3073
  displayName: "withEditModeCover__Blocker",
3074
3074
  componentId: "sc-1gsbnxb-1"
@@ -3114,7 +3114,7 @@ var React = __webpack_require__(1);
3114
3114
 
3115
3115
  var colorUtils_1 = __webpack_require__(11);
3116
3116
 
3117
- var IconPlaceholder_1 = __webpack_require__(25);
3117
+ var IconPlaceholder_1 = __webpack_require__(26);
3118
3118
 
3119
3119
  var VizBehavior_1 = __webpack_require__(5);
3120
3120
 
@@ -3436,7 +3436,7 @@ var _typeof = __webpack_require__(20);
3436
3436
  Object.defineProperty(exports, "__esModule", {
3437
3437
  value: true
3438
3438
  });
3439
- exports.deepMergeWithArrayOverrides = exports.extendStaticWrapperProps = void 0;
3439
+ exports.findClosestMatchFromDefaultList = exports.deepMergeWithArrayPrimitiveOverrides = exports.extendStaticWrapperProps = void 0;
3440
3440
 
3441
3441
  var lodash_1 = __webpack_require__(2);
3442
3442
  /**
@@ -3462,17 +3462,19 @@ var extendStaticWrapperProps = function extendStaticWrapperProps(_ref) {
3462
3462
  exports.extendStaticWrapperProps = extendStaticWrapperProps;
3463
3463
  /**
3464
3464
  * helper to deeply merge objects while preserving arrays in earlier source objects
3465
- * deeply nested primitive keys are merged similarly to lodash's defaultsDeep, while keys with arrays will be preserved if already present in the resultant merged object
3466
- * this prevents default arrays from appending values to user-defined arrays (this occurs if the default array is longer than the user-defined one)
3465
+ * deeply nested primitive keys are merged similarly to lodash's defaultsDeep, while keys with arrays of primitives will be preserved if already present in the resultant merged object
3466
+ * this prevents default arrays of primitives from appending values to user-defined arrays (this occurs if the default array is longer than the user-defined one).
3467
+ * Array of objects gets merged with the defaults, where the defaults can be an array of objects. Closest matching default object from the defaults list based on key - value pair
3468
+ * will be used for merging defaults for each object in the array. If no closest match found, first object in default array list used for merging.
3467
3469
  *
3468
- * @method deepMergeWithArrayOverrides
3470
+ * @method deepMergeWithArrayPrimitiveOverrides
3469
3471
  * @param {Object} initial - target object to merge values into
3470
3472
  * @param {Object[]} sources - other default options to be merged into the resultant object if no explicit value is provided, with earlier args taking precedence over later ones
3471
3473
  *
3472
3474
  * @returns {Object}
3473
3475
  */
3474
3476
 
3475
- var deepMergeWithArrayOverrides = function deepMergeWithArrayOverrides(initial) {
3477
+ var deepMergeWithArrayPrimitiveOverrides = function deepMergeWithArrayPrimitiveOverrides(initial) {
3476
3478
  var clone = lodash_1.cloneDeep(initial);
3477
3479
 
3478
3480
  for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
@@ -3483,18 +3485,72 @@ var deepMergeWithArrayOverrides = function deepMergeWithArrayOverrides(initial)
3483
3485
  Object.keys(sourceToApply).forEach(function (sourceKey) {
3484
3486
  if (!Object.prototype.hasOwnProperty.call(clone, sourceKey)) {
3485
3487
  clone[sourceKey] = lodash_1.cloneDeep(sourceToApply[sourceKey]);
3486
- } // object merging excluding arrays
3487
-
3488
+ }
3488
3489
 
3489
3490
  if (clone[sourceKey] && _typeof(clone[sourceKey]) === 'object' && !Array.isArray(clone[sourceKey]) && _typeof(sourceToApply[sourceKey]) === 'object') {
3490
- clone[sourceKey] = exports.deepMergeWithArrayOverrides(clone[sourceKey], sourceToApply[sourceKey]);
3491
+ clone[sourceKey] = exports.deepMergeWithArrayPrimitiveOverrides(clone[sourceKey], sourceToApply[sourceKey]);
3492
+ } else if (Array.isArray(clone[sourceKey]) && _typeof(clone[sourceKey][0]) === 'object' && !Array.isArray(clone[sourceKey][0])) {
3493
+ // If option is an array of objects
3494
+ for (var i = 0; i < clone[sourceKey].length; i += 1) {
3495
+ if (_typeof(clone[sourceKey][i]) === 'object') {
3496
+ var closestMatchIdx = exports.findClosestMatchFromDefaultList(sourceToApply[sourceKey], clone[sourceKey][i]);
3497
+
3498
+ if (closestMatchIdx > -1) {
3499
+ clone[sourceKey][i] = exports.deepMergeWithArrayPrimitiveOverrides(clone[sourceKey][i], sourceToApply[sourceKey][closestMatchIdx]);
3500
+ }
3501
+ }
3502
+ }
3491
3503
  }
3492
3504
  });
3493
3505
  });
3494
3506
  return clone;
3495
3507
  };
3496
3508
 
3497
- exports.deepMergeWithArrayOverrides = deepMergeWithArrayOverrides;
3509
+ exports.deepMergeWithArrayPrimitiveOverrides = deepMergeWithArrayPrimitiveOverrides;
3510
+ /**
3511
+ * Finds the closest matching object from the list, which has the max same key value pairs.
3512
+ * Returns the index of match if found, or -1
3513
+ * For eg :-
3514
+ const list = [{
3515
+ type: "marker",
3516
+ lat: "value1"
3517
+ }, {
3518
+ type: "bubble",
3519
+ size: "value2"
3520
+ }];
3521
+
3522
+ const obj = {
3523
+ type: 'bubble'
3524
+ };
3525
+
3526
+ findClosestMatch(list, obj) -> returns index 1.
3527
+ */
3528
+
3529
+ var findClosestMatchFromDefaultList = function findClosestMatchFromDefaultList(searchList, inputObj) {
3530
+ if (!Array.isArray(searchList) || searchList.length === 0) {
3531
+ return -1;
3532
+ }
3533
+
3534
+ var keys = Object.keys(inputObj);
3535
+ var maxMatchCnt = 0;
3536
+ var maxMatchIdx = 0;
3537
+ searchList.forEach(function (item, idx) {
3538
+ var matchCnt = 0;
3539
+ keys.forEach(function (key) {
3540
+ if (item[key] === inputObj[key]) {
3541
+ matchCnt += 1;
3542
+ }
3543
+ });
3544
+
3545
+ if (Math.max(maxMatchCnt, matchCnt) > maxMatchCnt) {
3546
+ maxMatchCnt = matchCnt;
3547
+ maxMatchIdx = idx;
3548
+ }
3549
+ });
3550
+ return maxMatchIdx;
3551
+ };
3552
+
3553
+ exports.findClosestMatchFromDefaultList = findClosestMatchFromDefaultList;
3498
3554
 
3499
3555
  /***/ }),
3500
3556