@splunk/visualizations 25.13.1 → 26.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 (147) hide show
  1. package/Area.config.js +216 -216
  2. package/Area.config.js.map +1 -1
  3. package/Area.js +529 -561
  4. package/Area.js.map +1 -1
  5. package/Bar.config.js +213 -213
  6. package/Bar.config.js.map +1 -1
  7. package/Bar.js +394 -386
  8. package/Bar.js.map +1 -1
  9. package/Bubble.config.js +140 -140
  10. package/Bubble.config.js.map +1 -1
  11. package/Bubble.js +313 -305
  12. package/Bubble.js.map +1 -1
  13. package/ChoroplethSvg.config.js +15 -15
  14. package/ChoroplethSvg.config.js.map +1 -1
  15. package/ChoroplethSvg.js +149 -144
  16. package/ChoroplethSvg.js.map +1 -1
  17. package/Column.config.js +205 -205
  18. package/Column.config.js.map +1 -1
  19. package/Column.js +387 -379
  20. package/Column.js.map +1 -1
  21. package/Ellipse.config.js +45 -45
  22. package/Ellipse.config.js.map +1 -1
  23. package/Ellipse.js +157 -144
  24. package/Ellipse.js.map +1 -1
  25. package/Events.config.js +11 -11
  26. package/Events.config.js.map +1 -1
  27. package/Events.js +273 -261
  28. package/Events.js.map +1 -1
  29. package/FillerGauge.config.js +46 -46
  30. package/FillerGauge.config.js.map +1 -1
  31. package/FillerGauge.js +267 -262
  32. package/FillerGauge.js.map +1 -1
  33. package/Image.config.js +8 -8
  34. package/Image.config.js.map +1 -1
  35. package/Image.js +110 -104
  36. package/Image.js.map +1 -1
  37. package/Line.config.js +220 -220
  38. package/Line.config.js.map +1 -1
  39. package/Line.js +404 -396
  40. package/Line.js.map +1 -1
  41. package/LinkGraph.config.js +27 -27
  42. package/LinkGraph.config.js.map +1 -1
  43. package/LinkGraph.js +557 -548
  44. package/LinkGraph.js.map +1 -1
  45. package/Map.config.js +71 -71
  46. package/Map.config.js.map +1 -1
  47. package/Map.js +471 -465
  48. package/Map.js.map +1 -1
  49. package/Markdown.config.js +23 -23
  50. package/Markdown.config.js.map +1 -1
  51. package/Markdown.js +151 -145
  52. package/Markdown.js.map +1 -1
  53. package/MarkerGauge.config.js +84 -84
  54. package/MarkerGauge.config.js.map +1 -1
  55. package/MarkerGauge.js +295 -289
  56. package/MarkerGauge.js.map +1 -1
  57. package/ParallelCoordinates.config.js +23 -23
  58. package/ParallelCoordinates.config.js.map +1 -1
  59. package/ParallelCoordinates.js +164 -162
  60. package/ParallelCoordinates.js.map +1 -1
  61. package/Pie.config.js +24 -24
  62. package/Pie.config.js.map +1 -1
  63. package/Pie.js +233 -228
  64. package/Pie.js.map +1 -1
  65. package/Punchcard.config.js +33 -33
  66. package/Punchcard.config.js.map +1 -1
  67. package/Punchcard.js +278 -279
  68. package/Punchcard.js.map +1 -1
  69. package/Rectangle.config.js +46 -46
  70. package/Rectangle.config.js.map +1 -1
  71. package/Rectangle.js +154 -142
  72. package/Rectangle.js.map +1 -1
  73. package/Sankey.config.js +19 -19
  74. package/Sankey.config.js.map +1 -1
  75. package/Sankey.js +281 -275
  76. package/Sankey.js.map +1 -1
  77. package/Scatter.config.js +135 -135
  78. package/Scatter.config.js.map +1 -1
  79. package/Scatter.js +304 -299
  80. package/Scatter.js.map +1 -1
  81. package/SingleValue.config.js +119 -119
  82. package/SingleValue.config.js.map +1 -1
  83. package/SingleValue.js +359 -341
  84. package/SingleValue.js.map +1 -1
  85. package/SingleValueBasic.js +14 -14
  86. package/SingleValueBasic.js.map +1 -1
  87. package/SingleValueIcon.config.js +117 -117
  88. package/SingleValueIcon.config.js.map +1 -1
  89. package/SingleValueIcon.js +373 -371
  90. package/SingleValueIcon.js.map +1 -1
  91. package/SingleValueRadial.config.js +157 -115
  92. package/SingleValueRadial.config.js.map +1 -1
  93. package/SingleValueRadial.js +1114 -540
  94. package/SingleValueRadial.js.map +1 -1
  95. package/SparkLine.js +50 -20
  96. package/SparkLine.js.map +1 -1
  97. package/Table.config.js +54 -54
  98. package/Table.config.js.map +1 -1
  99. package/Table.js +302 -286
  100. package/Table.js.map +1 -1
  101. package/common/Charting.js +41 -41
  102. package/common/Charting.js.map +1 -1
  103. package/common/EventsDoc.js +15 -14
  104. package/common/EventsDoc.js.map +1 -1
  105. package/common/GaugeMajorTicks.js +2 -2
  106. package/common/GaugeMajorTicks.js.map +1 -1
  107. package/common/GaugeValueMarker.js +2 -2
  108. package/common/GaugeValueMarker.js.map +1 -1
  109. package/common/OptionsDoc.js +22 -22
  110. package/common/OptionsDoc.js.map +1 -1
  111. package/common/OverviewDoc.js +32 -27
  112. package/common/OverviewDoc.js.map +1 -1
  113. package/common/SplunkVisualization.js +4 -4
  114. package/common/SplunkVisualization.js.map +1 -1
  115. package/common/SplunkVisualizationApi.js +2 -2
  116. package/common/SplunkVisualizationApi.js.map +1 -1
  117. package/common/ThemesDoc.js +14 -14
  118. package/common/ThemesDoc.js.map +1 -1
  119. package/common/chartingUtils.js +12 -12
  120. package/common/chartingUtils.js.map +1 -1
  121. package/common/docUtils.js +4 -4
  122. package/common/docUtils.js.map +1 -1
  123. package/common/gaugeUtils.js +112 -112
  124. package/common/gaugeUtils.js.map +1 -1
  125. package/common/shapeUtils.js +21 -15
  126. package/common/shapeUtils.js.map +1 -1
  127. package/common/utils/configUtils.js +10 -9
  128. package/common/utils/configUtils.js.map +1 -1
  129. package/common/utils/dataUtils.js +2 -2
  130. package/common/utils/dataUtils.js.map +1 -1
  131. package/common/utils/hocUtils.js +2 -2
  132. package/common/utils/hocUtils.js.map +1 -1
  133. package/common/utils/layoutUtils.js +2 -2
  134. package/common/utils/layoutUtils.js.map +1 -1
  135. package/common/utils/mapUtils.js +84 -80
  136. package/common/utils/mapUtils.js.map +1 -1
  137. package/common/utils/singleValueUtils.js +2 -2
  138. package/common/utils/singleValueUtils.js.map +1 -1
  139. package/common/utils/testHelper.js +27 -9
  140. package/common/utils/testHelper.js.map +1 -1
  141. package/common/utils/trellisUtils.js +26 -26
  142. package/common/utils/trellisUtils.js.map +1 -1
  143. package/common/utils/urlUtils.js +2 -2
  144. package/common/utils/urlUtils.js.map +1 -1
  145. package/common/withDashboardViz.js +107 -104
  146. package/common/withDashboardViz.js.map +1 -1
  147. package/package.json +19 -19
@@ -135,7 +135,7 @@ var background = function background(_ref) {
135
135
  themes = _ref.themes,
136
136
  labelPosition = _ref.labelPosition;
137
137
  return [{
138
- label: i18n_1._(label || 'Background'),
138
+ label: (0, i18n_1._)(label || 'Background'),
139
139
  option: 'backgroundColor',
140
140
  editor: 'editor.color',
141
141
  editorProps: {
@@ -192,6 +192,69 @@ module.exports = require("@splunk/visualizations-shared/schemaUtils");
192
192
 
193
193
  /***/ }),
194
194
 
195
+ /***/ 39:
196
+ /***/ (function(module, exports, __webpack_require__) {
197
+
198
+ "use strict";
199
+
200
+
201
+ Object.defineProperty(exports, "__esModule", {
202
+ value: true
203
+ });
204
+ var i18n_1 = __webpack_require__(0);
205
+ var gauge = {
206
+ label: (0, i18n_1._)('Data display'),
207
+ layout: [[{
208
+ label: (0, i18n_1._)('Value display'),
209
+ option: 'valueDisplay',
210
+ editor: 'editor.radioBar',
211
+ editorProps: {
212
+ values: [{
213
+ label: (0, i18n_1._)('Number'),
214
+ value: 'number'
215
+ }, {
216
+ label: (0, i18n_1._)('Percentage'),
217
+ value: 'percentage'
218
+ }, {
219
+ label: (0, i18n_1._)('Off'),
220
+ value: 'off'
221
+ }]
222
+ }
223
+ }], [{
224
+ label: (0, i18n_1._)('Label display'),
225
+ option: 'labelDisplay',
226
+ editor: 'editor.radioBar',
227
+ editorProps: {
228
+ values: [{
229
+ label: (0, i18n_1._)('Numbers'),
230
+ value: 'number'
231
+ }, {
232
+ label: (0, i18n_1._)('Percentages'),
233
+ value: 'percentage'
234
+ }, {
235
+ label: (0, i18n_1._)('Off'),
236
+ value: 'off'
237
+ }]
238
+ }
239
+ }], [{
240
+ label: (0, i18n_1._)('Orientation'),
241
+ option: 'orientation',
242
+ editor: 'editor.radioBar',
243
+ editorProps: {
244
+ values: [{
245
+ label: (0, i18n_1._)('Vertical'),
246
+ value: 'vertical'
247
+ }, {
248
+ label: (0, i18n_1._)('Horizontal'),
249
+ value: 'horizontal'
250
+ }]
251
+ }
252
+ }]]
253
+ };
254
+ exports.default = gauge;
255
+
256
+ /***/ }),
257
+
195
258
  /***/ 4:
196
259
  /***/ (function(module, exports, __webpack_require__) {
197
260
 
@@ -352,8 +415,8 @@ function hasCompatibleOptions(vizOptions, presetOptions) {
352
415
  */
353
416
  function getInitialPreset(vizContext, vizOptions, presets) {
354
417
  return presets.find(function (preset) {
355
- var presetContext = lodash_1.get(preset, ['value', 'context'], {});
356
- var presetOptions = lodash_1.get(preset, ['value', 'options'], {});
418
+ var presetContext = (0, lodash_1.get)(preset, ['value', 'context'], {});
419
+ var presetOptions = (0, lodash_1.get)(preset, ['value', 'options'], {});
357
420
  var presetContextKeys = Object.keys(presetContext);
358
421
  var presetOptionKeys = Object.keys(presetOptions);
359
422
  // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)
@@ -370,7 +433,7 @@ exports.getInitialPreset = getInitialPreset;
370
433
  * @returns {{ label: string; value; string }[]} array of { label, value } tuples
371
434
  */
372
435
  function generatePrecisionValues(numPrecisionValues) {
373
- return lodash_1.range(0, numPrecisionValues + 1).map(function (i) {
436
+ return (0, lodash_1.range)(0, numPrecisionValues + 1).map(function (i) {
374
437
  return {
375
438
  label: "".concat(i, " (0").concat(i > 0 ? '.' : '').concat('0'.repeat(i), ")"),
376
439
  value: i
@@ -396,69 +459,6 @@ exports.insertLayout = insertLayout;
396
459
 
397
460
  /***/ }),
398
461
 
399
- /***/ 40:
400
- /***/ (function(module, exports, __webpack_require__) {
401
-
402
- "use strict";
403
-
404
-
405
- Object.defineProperty(exports, "__esModule", {
406
- value: true
407
- });
408
- var i18n_1 = __webpack_require__(0);
409
- var gauge = {
410
- label: i18n_1._('Data display'),
411
- layout: [[{
412
- label: i18n_1._('Value display'),
413
- option: 'valueDisplay',
414
- editor: 'editor.radioBar',
415
- editorProps: {
416
- values: [{
417
- label: i18n_1._('Number'),
418
- value: 'number'
419
- }, {
420
- label: i18n_1._('Percentage'),
421
- value: 'percentage'
422
- }, {
423
- label: i18n_1._('Off'),
424
- value: 'off'
425
- }]
426
- }
427
- }], [{
428
- label: i18n_1._('Label display'),
429
- option: 'labelDisplay',
430
- editor: 'editor.radioBar',
431
- editorProps: {
432
- values: [{
433
- label: i18n_1._('Numbers'),
434
- value: 'number'
435
- }, {
436
- label: i18n_1._('Percentages'),
437
- value: 'percentage'
438
- }, {
439
- label: i18n_1._('Off'),
440
- value: 'off'
441
- }]
442
- }
443
- }], [{
444
- label: i18n_1._('Orientation'),
445
- option: 'orientation',
446
- editor: 'editor.radioBar',
447
- editorProps: {
448
- values: [{
449
- label: i18n_1._('Vertical'),
450
- value: 'vertical'
451
- }, {
452
- label: i18n_1._('Horizontal'),
453
- value: 'horizontal'
454
- }]
455
- }
456
- }]]
457
- };
458
- exports.default = gauge;
459
-
460
- /***/ }),
461
-
462
462
  /***/ 6:
463
463
  /***/ (function(module, exports) {
464
464
 
@@ -481,7 +481,7 @@ var placeholders_1 = __webpack_require__(11);
481
481
  var schemaUtils_1 = __webpack_require__(3);
482
482
  var variables_1 = __webpack_require__(10);
483
483
  var pick_1 = __webpack_require__(9);
484
- var Gauge_1 = __webpack_require__(40);
484
+ var Gauge_1 = __webpack_require__(39);
485
485
  var VizBehavior_1 = __webpack_require__(2);
486
486
  var VizCategory_1 = __webpack_require__(8);
487
487
  var configUtils_1 = __webpack_require__(4);
@@ -552,7 +552,7 @@ var optionsSchema = {
552
552
  description: 'Specify whether to display the labels as numbers, percentages, or off. The label center aligns to the value.',
553
553
  default: 'number',
554
554
  type: 'string',
555
- pattern: schemaUtils_1.getPattern(['number', 'percentage', 'off'])
555
+ pattern: (0, schemaUtils_1.getPattern)(['number', 'percentage', 'off'])
556
556
  },
557
557
  majorTickInterval: {
558
558
  description: 'Specify, in pixels, the spacing between major tick marks.',
@@ -563,7 +563,7 @@ var optionsSchema = {
563
563
  description: 'Specify the axis orientation of the gauge.',
564
564
  default: 'vertical',
565
565
  type: 'string',
566
- pattern: schemaUtils_1.getPattern(['horizontal', 'vertical'])
566
+ pattern: (0, schemaUtils_1.getPattern)(['horizontal', 'vertical'])
567
567
  },
568
568
  value: {
569
569
  description: 'Specify the dataSource applied to the value of the marker gauge.',
@@ -574,18 +574,18 @@ var optionsSchema = {
574
574
  description: 'Specify whether to display the value as a number, percentage, or off.',
575
575
  default: 'number',
576
576
  type: 'string',
577
- pattern: schemaUtils_1.getPattern(['number', 'percentage', 'off'])
577
+ pattern: (0, schemaUtils_1.getPattern)(['number', 'percentage', 'off'])
578
578
  }
579
579
  };
580
580
  var themes = {
581
581
  defaultFillColor: function defaultFillColor(props) {
582
- return pick_1.default({
582
+ return (0, pick_1.default)({
583
583
  enterprise: variables_1.default.backgroundColorHover(props),
584
584
  prisma: variables_1.default.neutral100(props)
585
585
  })(props);
586
586
  },
587
587
  defaultBackgroundColor: function defaultBackgroundColor(props) {
588
- return pick_1.default({
588
+ return (0, pick_1.default)({
589
589
  enterprise: {
590
590
  dark: variables_1.default.black(props),
591
591
  light: variables_1.default.backgroundColor(props)
@@ -594,7 +594,7 @@ var themes = {
594
594
  })(props);
595
595
  },
596
596
  majorTickFillColor: function majorTickFillColor(props) {
597
- return pick_1.default({
597
+ return (0, pick_1.default)({
598
598
  enterprise: {
599
599
  light: variables_1.default.gray30(props),
600
600
  dark: variables_1.default.textGray(props) // was #D7DAE0
@@ -608,7 +608,7 @@ var themes = {
608
608
  })(props);
609
609
  },
610
610
  majorTickStrokeColor: function majorTickStrokeColor(props) {
611
- return pick_1.default({
611
+ return (0, pick_1.default)({
612
612
  enterprise: {
613
613
  light: variables_1.default.textGray(props),
614
614
  dark: variables_1.default.contentColorMuted(props)
@@ -617,7 +617,7 @@ var themes = {
617
617
  })(props);
618
618
  },
619
619
  valueMarkerFillColor: function valueMarkerFillColor(props) {
620
- return pick_1.default({
620
+ return (0, pick_1.default)({
621
621
  enterprise: variables_1.default.textColor(props),
622
622
  prisma: {
623
623
  dark: variables_1.default.white(props),
@@ -626,7 +626,7 @@ var themes = {
626
626
  })(props);
627
627
  },
628
628
  valueMarkerLabelFillColor: function valueMarkerLabelFillColor(props) {
629
- return pick_1.default({
629
+ return (0, pick_1.default)({
630
630
  enterprise: {
631
631
  light: variables_1.default.gray96(props),
632
632
  dark: variables_1.default.black(props)
@@ -636,9 +636,9 @@ var themes = {
636
636
  }
637
637
  };
638
638
  var editorConfig = [{
639
- label: i18n_1._('Data configurations'),
639
+ label: (0, i18n_1._)('Data configurations'),
640
640
  layout: [[{
641
- label: i18n_1._('Value'),
641
+ label: (0, i18n_1._)('Value'),
642
642
  editor: 'editor.columnSelector',
643
643
  option: 'value',
644
644
  context: 'defaultContext',
@@ -656,16 +656,16 @@ var editorConfig = [{
656
656
  }
657
657
  }]]
658
658
  }, Gauge_1.default, {
659
- label: i18n_1._('Color and style'),
659
+ label: (0, i18n_1._)('Color and style'),
660
660
  layout: [[{
661
- label: i18n_1._('Gauge ranges'),
661
+ label: (0, i18n_1._)('Gauge ranges'),
662
662
  option: 'gaugeRanges',
663
663
  editor: 'editor.threshold',
664
664
  editorProps: {
665
665
  openRanges: false,
666
666
  isTogglable: false // Can not disable thresholds
667
667
  }
668
- }], BackgroundColor_1.default({
668
+ }], (0, BackgroundColor_1.default)({
669
669
  themes: themes,
670
670
  labelPosition: 'top'
671
671
  })]
@@ -681,7 +681,7 @@ var config = {
681
681
  /**
682
682
  * viz name
683
683
  */
684
- name: i18n_1._('Marker gauge'),
684
+ name: (0, i18n_1._)('Marker gauge'),
685
685
  category: VizCategory_1.VizCategory.GAUGE,
686
686
  /**
687
687
  * viz icon
@@ -696,7 +696,7 @@ var config = {
696
696
  supports: [VizBehavior_1.VizBehavior.DYNAMIC_OPTIONS, VizBehavior_1.VizBehavior.PLACEHOLDER],
697
697
  themes: themes
698
698
  };
699
- exports.default = configUtils_1.enhanceConfig(config);
699
+ exports.default = (0, configUtils_1.enhanceConfig)(config);
700
700
 
701
701
  /***/ }),
702
702
 
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/visualization-icons/placeholders\"","webpack:///./src/common/editorConfig/BackgroundColor.ts","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///./src/common/utils/configUtils.ts","webpack:///./src/common/editorConfig/Gauge.ts","webpack:///external \"lodash\"","webpack:///./src/MarkerGauge/config.ts","webpack:///external \"@splunk/react-icons/enterprise/GaugeMarker\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///./src/common/interfaces/VizCategory.ts","webpack:///external \"@splunk/themes/pick\""],"names":["i18n_1","require","background","_ref","label","themes","labelPosition","_","option","editor","editorProps","exports","default","VizBehavior","lodash_1","schemaUtils_1","VizBehavior_1","dynamicOptionsDSLType","type","pattern","DYNAMIC_OPTIONS_DSL_PATTERN","enhanceOptionsSchemaWithDynamicOptions","optionsSchema","enhancedOptionsSchema","Object","keys","forEach","key","_a","title","description","readOnly","writeOnly","examples","defaultValue","properties","patternProperties","remainingSchemaEntry","__rest","annotations","assign","undefined","enhancedPatternProperties","opt","_defineProperty","anyOf","enhanceConfig","vizConfig","enhancedConfig","supports","indexOf","DYNAMIC_OPTIONS","editorConfig","map","config","open","uncollapseEditorConfig","editorPanelUncollapsedConfig","isDynamicOption","trim","startsWith","hasCompatibleContexts","vizContext","presetContext","presetContextKeys","every","contextKey","hasCompatibleOptions","vizOptions","presetOptions","presetOptionKeys","optionKey","getInitialPreset","presets","find","preset","get","length","generatePrecisionValues","numPrecisionValues","range","i","concat","repeat","value","insertLayout","layout","index","_len","arguments","layoutItems","Array","_key","_toConsumableArray","slice","gauge","values","GaugeMarker_1","placeholders_1","variables_1","pick_1","Gauge_1","VizCategory_1","configUtils_1","BackgroundColor_1","dataContract","requiredDataSources","name","optionalDataSources","initialRequestParams","primary","offset","count","size","initialWidth","initialHeight","defaultContext","backgroundColor","COLOR_OR_TOKEN_PATTERN_WITH_RGBA","gaugeRanges","from","to","items","required","additionalProperties","labelDisplay","getPattern","majorTickInterval","orientation","valueDisplay","defaultFillColor","props","enterprise","backgroundColorHover","prisma","neutral100","defaultBackgroundColor","dark","black","light","backgroundColorSidebar","majorTickFillColor","gray30","textGray","contentColorMuted","majorTickStrokeColor","valueMarkerFillColor","textColor","white","valueMarkerLabelFillColor","gray96","context","dataSourceKey","prepareValue","definition","options","openRanges","isTogglable","category","VizCategory","GAUGE","icon","placeholderIcon","MarkerGauge","PLACEHOLDER"],"mappings":"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","file":"MarkerGauge.config.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 64);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/visualization-icons/placeholders\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorLayoutConfig } from '../interfaces/Editor';\nimport { ThemedDefaults } from '../interfaces/ThemedDefaults';\n\ninterface backgroundEditorProps {\n label?: string;\n themes: ThemedDefaults;\n labelPosition?: string;\n}\n\nconst background: ({ label, themes, labelPosition }: backgroundEditorProps) => EditorLayoutConfig[] = ({\n label,\n themes,\n labelPosition,\n}) => [\n {\n label: _(label || 'Background'),\n option: 'backgroundColor',\n editor: 'editor.color',\n editorProps: {\n labelPosition: labelPosition || 'top',\n themes,\n },\n },\n];\n\nexport default background;\n","export enum VizBehavior {\n /**\n * Dynamic Options Behavior.\n * This allows visualization options to be powered by data\n *\n * **Example**\n *\n * sparklineValues: \">primary|seriesByIndex(0)\"\n * would configure sparklineValues with an array of data points\n * coming from the first series in the primary datasource\n *\n */\n DYNAMIC_OPTIONS = 'dynamic-options',\n EVENTS = 'events',\n /**\n * Placeholder behavior: visualization will display a placeholder rather than fail if any of the `requiredProps` is\n * missing.\n * @type {string}\n */\n PLACEHOLDER = 'placeholder',\n PAGE_AND_SORT = 'page-and-sort',\n TRELLIS = 'trellis',\n}\n","module.exports = require(\"@splunk/visualizations-shared/schemaUtils\");","import { get, range } from 'lodash';\nimport { DYNAMIC_OPTIONS_DSL_PATTERN } from '@splunk/visualizations-shared/schemaUtils';\nimport type { JSONSchema7Definition } from 'json-schema';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\nimport { VizBehavior } from '../interfaces/VizBehavior';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { OptionsSchema } from '../interfaces/OptionsSchema';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\n}\n\nconst dynamicOptionsDSLType = {\n type: 'string',\n pattern: DYNAMIC_OPTIONS_DSL_PATTERN,\n} as const;\n\n/**\n * Helper function to extend an options schema with dynamic options DSL\n * @param optionsSchema a visualization's options schema\n * @returns an updated options schema that additionally allows strings starting with > for each option\n */\nfunction enhanceOptionsSchemaWithDynamicOptions(\n optionsSchema: OptionsSchema | JSONSchema7Definition\n): OptionsSchema {\n const enhancedOptionsSchema: OptionsSchema = {};\n Object.keys(optionsSchema).forEach((key): void => {\n const {\n // The next a few are schema annotations, we should leave them as is.\n // Note: in reality we don't use `readOnly`, `writeOnly` or `examples`, but they are listed here for completeness.\n // Ref: https://datatracker.ietf.org/doc/html/draft-handrews-json-schema-validation-01\n title,\n description,\n readOnly,\n writeOnly,\n examples,\n default: defaultValue,\n // The next a few need special care\n type,\n properties,\n patternProperties,\n // The rest should be handled together\n ...remainingSchemaEntry\n } = optionsSchema[key];\n\n const annotations = {\n ...(title !== undefined && { title }),\n ...(description !== undefined && { description }),\n ...(readOnly !== undefined && { readOnly }),\n ...(writeOnly !== undefined && { writeOnly }),\n ...(examples !== undefined && { examples }),\n ...(defaultValue !== undefined && { default: defaultValue }),\n };\n\n if (type === 'object') {\n enhancedOptionsSchema[key] = {\n ...remainingSchemaEntry,\n ...annotations,\n type,\n ...(properties && { properties: enhanceOptionsSchemaWithDynamicOptions(properties) }),\n };\n if (patternProperties) {\n let enhancedPatternProperties = {};\n Object.keys(patternProperties).forEach((opt): void => {\n enhancedPatternProperties = {\n ...enhancedPatternProperties,\n ...enhanceOptionsSchemaWithDynamicOptions({ [opt]: patternProperties[opt] }),\n };\n });\n enhancedOptionsSchema[key].patternProperties = enhancedPatternProperties;\n }\n } else {\n enhancedOptionsSchema[key] = {\n ...annotations,\n anyOf: [\n // we can't assume `type` is always there because there are `enum` and `const`.\n { ...(type !== undefined && { type }), ...remainingSchemaEntry },\n dynamicOptionsDSLType,\n ],\n };\n }\n });\n return enhancedOptionsSchema;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * this function also collapse all editor panels\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n * and containing `open: false` for all editor panels in editorConfig\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = { ...vizConfig };\n if (vizConfig.supports.indexOf(VizBehavior.DYNAMIC_OPTIONS) !== -1) {\n enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);\n }\n enhancedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: config.open || false };\n }\n );\n return enhancedConfig;\n}\n\n/**\n * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig\n * Created for editor unit tests\n * @param vizConfig a Visualization Config\n * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig\n */\nfunction uncollapseEditorConfig(vizConfig: VizConfig): VizConfig {\n const editorPanelUncollapsedConfig: VizConfig = { ...vizConfig };\n editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: true };\n }\n );\n return editorPanelUncollapsedConfig;\n}\n\nfunction isDynamicOption(option?: string): boolean {\n return (option && typeof option === 'string' && option.trim().startsWith('>')) || false;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport {\n enhanceConfig,\n enhanceOptionsSchemaWithDynamicOptions,\n getInitialPreset,\n generatePrecisionValues,\n uncollapseEditorConfig,\n isDynamicOption,\n};\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorConfig } from '../interfaces/Editor';\n\nconst gauge: EditorConfig = {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Value display'),\n option: 'valueDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Number'), value: 'number' },\n { label: _('Percentage'), value: 'percentage' },\n { label: _('Off'), value: 'off' },\n ],\n },\n },\n ],\n [\n {\n label: _('Label display'),\n option: 'labelDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Numbers'), value: 'number' },\n { label: _('Percentages'), value: 'percentage' },\n { label: _('Off'), value: 'off' },\n ],\n },\n },\n ],\n [\n {\n label: _('Orientation'),\n option: 'orientation',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Vertical'), value: 'vertical' },\n { label: _('Horizontal'), value: 'horizontal' },\n ],\n },\n },\n ],\n ],\n};\n\nexport default gauge;\n","module.exports = require(\"lodash\");","import { _ } from '@splunk/ui-utils/i18n';\nimport MarkerGaugeIcon from '@splunk/react-icons/enterprise/GaugeMarker';\nimport { MarkerGauge as MarkerGaugePlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { COLOR_OR_TOKEN_PATTERN_WITH_RGBA, getPattern } from '@splunk/visualizations-shared/schemaUtils';\nimport variables from '@splunk/themes/variables';\nimport pick from '@splunk/themes/pick';\nimport GaugeConfig from '../common/editorConfig/Gauge';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { OptionsSchema } from '../common/interfaces/OptionsSchema';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { enhanceConfig } from '../common/utils/configUtils';\nimport getBackgroundColorEditor from '../common/editorConfig/BackgroundColor';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {};\n\nconst optionsSchema: OptionsSchema = {\n backgroundColor: {\n description:\n 'Specify the color used for the background. The default for enterprise light is \"#ffffff\". The default for enterprise dark is \"#000000\". The default for prisma dark is \"#0b0c0e\".',\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n default: '> themes.defaultBackgroundColor',\n },\n gaugeRanges: {\n description:\n 'Specify the overall range of the gauge as a series of continuous, color-coded subranges. For example, [{\"from\": 0, \"to\": 20, \"value\": \"#4BEBA8\"}, {\"from\": 20, \"to\": 50, \"value\": \"#F4DF7A\"}].',\n default: [\n { from: 0, to: 50, value: '#118832' },\n { from: 50, to: 90, value: '#CBA700' },\n { from: 90, to: 100, value: '#D41F1F' },\n ],\n type: 'array',\n items: {\n type: 'object',\n properties: {\n from: {\n type: 'number',\n description: 'Starting value for range.',\n },\n to: {\n type: 'number',\n description: 'Ending value for range.',\n },\n value: {\n description: 'Color for sub range.',\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n },\n },\n required: ['from', 'to', 'value'],\n additionalProperties: false,\n },\n },\n labelDisplay: {\n description:\n 'Specify whether to display the labels as numbers, percentages, or off. The label center aligns to the value.',\n default: 'number',\n type: 'string',\n pattern: getPattern(['number', 'percentage', 'off']),\n },\n majorTickInterval: {\n description: 'Specify, in pixels, the spacing between major tick marks.',\n default: 'auto',\n type: ['string', 'number'],\n },\n orientation: {\n description: 'Specify the axis orientation of the gauge.',\n default: 'vertical',\n type: 'string',\n pattern: getPattern(['horizontal', 'vertical']),\n },\n value: {\n description: 'Specify the dataSource applied to the value of the marker gauge.',\n type: 'string',\n default: '> primary | seriesByType(\"number\") | lastPoint()',\n },\n valueDisplay: {\n description: 'Specify whether to display the value as a number, percentage, or off.',\n default: 'number',\n type: 'string',\n pattern: getPattern(['number', 'percentage', 'off']),\n },\n};\n\nconst themes: ThemedDefaults = {\n defaultFillColor: props =>\n pick({\n enterprise: variables.backgroundColorHover(props),\n prisma: variables.neutral100(props),\n })(props),\n defaultBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n majorTickFillColor: props =>\n pick({\n enterprise: {\n light: variables.gray30(props), // was '#33343B'\n dark: variables.textGray(props), // was #D7DAE0\n },\n prisma: {\n // TODO: missed colors :(\n light: variables.neutral100(props), // TBD\n dark: variables.contentColorMuted(props), // was #D7DAE0; contentColor\n },\n })(props),\n majorTickStrokeColor: props =>\n pick({\n enterprise: {\n light: variables.textGray(props),\n dark: variables.contentColorMuted(props),\n },\n prisma: variables.contentColorMuted(props),\n })(props),\n valueMarkerFillColor: props =>\n pick({\n enterprise: variables.textColor(props),\n prisma: {\n dark: variables.white(props),\n light: variables.black(props),\n },\n })(props),\n valueMarkerLabelFillColor: props =>\n pick({\n enterprise: {\n light: variables.gray96(props),\n dark: variables.black(props),\n },\n prisma: variables.black(props),\n })(props),\n};\n\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Data configurations'),\n layout: [\n [\n {\n label: _('Value'),\n editor: 'editor.columnSelector',\n option: 'value',\n context: 'defaultContext',\n editorProps: {\n dataSourceKey: 'primary',\n prepareValue: (\n definition\n ): { context: Record<string, any>; options: Record<string, any> } => {\n const {\n options: { value },\n } = definition;\n return {\n context: {},\n options: {\n value: `${value} | lastPoint()`,\n },\n };\n },\n },\n },\n ],\n ],\n },\n GaugeConfig,\n {\n label: _('Color and style'),\n layout: [\n [\n {\n label: _('Gauge ranges'),\n option: 'gaugeRanges',\n editor: 'editor.threshold',\n editorProps: {\n openRanges: false, // Use closed ranges\n isTogglable: false, // Can not disable thresholds\n },\n },\n ],\n getBackgroundColorEditor({ themes, labelPosition: 'top' }),\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.markergauge',\n /**\n * viz name\n */\n name: _('Marker gauge'),\n category: VizCategory.GAUGE,\n /**\n * viz icon\n */\n icon: MarkerGaugeIcon,\n placeholderIcon: MarkerGaugePlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.PLACEHOLDER],\n themes,\n};\n\nexport default enhanceConfig(config);\n","module.exports = require(\"@splunk/react-icons/enterprise/GaugeMarker\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","export enum VizCategory {\n SINGLE_VALUE = 'Single Value',\n TRENDS = 'Trends',\n COMPARISONS = 'Comparisons',\n TABLE = 'Table',\n GAUGE = 'Gauge',\n DISTRIBUTIONS = 'Distributions',\n CHOROPLETH = 'Choropleth Maps',\n SHAPES = 'Shapes',\n MISC = 'misc',\n FLOW = 'Flow',\n CORRELATION = 'Correlation',\n SPATIAL = 'Spatial',\n}\n","module.exports = require(\"@splunk/themes/pick\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/visualization-icons/placeholders\"","webpack:///./src/common/editorConfig/BackgroundColor.ts","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///./src/common/editorConfig/Gauge.ts","webpack:///./src/common/utils/configUtils.ts","webpack:///external \"lodash\"","webpack:///./src/MarkerGauge/config.ts","webpack:///external \"@splunk/react-icons/enterprise/GaugeMarker\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///./src/common/interfaces/VizCategory.ts","webpack:///external \"@splunk/themes/pick\""],"names":["i18n_1","require","background","_ref","label","themes","labelPosition","_","option","editor","editorProps","exports","default","VizBehavior","gauge","layout","values","value","lodash_1","schemaUtils_1","VizBehavior_1","dynamicOptionsDSLType","type","pattern","DYNAMIC_OPTIONS_DSL_PATTERN","enhanceOptionsSchemaWithDynamicOptions","optionsSchema","enhancedOptionsSchema","Object","keys","forEach","key","_a","title","description","readOnly","writeOnly","examples","defaultValue","properties","patternProperties","remainingSchemaEntry","__rest","annotations","assign","undefined","enhancedPatternProperties","opt","_defineProperty","anyOf","enhanceConfig","vizConfig","enhancedConfig","supports","indexOf","DYNAMIC_OPTIONS","editorConfig","map","config","open","uncollapseEditorConfig","editorPanelUncollapsedConfig","isDynamicOption","trim","startsWith","hasCompatibleContexts","vizContext","presetContext","presetContextKeys","every","contextKey","hasCompatibleOptions","vizOptions","presetOptions","presetOptionKeys","optionKey","getInitialPreset","presets","find","preset","get","length","generatePrecisionValues","numPrecisionValues","range","i","concat","repeat","insertLayout","index","_len","arguments","layoutItems","Array","_key","_toConsumableArray","slice","GaugeMarker_1","placeholders_1","variables_1","pick_1","Gauge_1","VizCategory_1","configUtils_1","BackgroundColor_1","dataContract","requiredDataSources","name","optionalDataSources","initialRequestParams","primary","offset","count","size","initialWidth","initialHeight","defaultContext","backgroundColor","COLOR_OR_TOKEN_PATTERN_WITH_RGBA","gaugeRanges","from","to","items","required","additionalProperties","labelDisplay","getPattern","majorTickInterval","orientation","valueDisplay","defaultFillColor","props","enterprise","backgroundColorHover","prisma","neutral100","defaultBackgroundColor","dark","black","light","backgroundColorSidebar","majorTickFillColor","gray30","textGray","contentColorMuted","majorTickStrokeColor","valueMarkerFillColor","textColor","white","valueMarkerLabelFillColor","gray96","context","dataSourceKey","prepareValue","definition","options","openRanges","isTogglable","category","VizCategory","GAUGE","icon","placeholderIcon","MarkerGauge","PLACEHOLDER"],"mappings":"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","file":"MarkerGauge.config.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 64);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/visualization-icons/placeholders\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorLayoutConfig } from '../interfaces/Editor';\nimport { ThemedDefaults } from '../interfaces/ThemedDefaults';\n\ninterface backgroundEditorProps {\n label?: string;\n themes: ThemedDefaults;\n labelPosition?: string;\n}\n\nconst background: ({ label, themes, labelPosition }: backgroundEditorProps) => EditorLayoutConfig[] = ({\n label,\n themes,\n labelPosition,\n}) => [\n {\n label: _(label || 'Background'),\n option: 'backgroundColor',\n editor: 'editor.color',\n editorProps: {\n labelPosition: labelPosition || 'top',\n themes,\n },\n },\n];\n\nexport default background;\n","export enum VizBehavior {\n /**\n * Dynamic Options Behavior.\n * This allows visualization options to be powered by data\n *\n * **Example**\n *\n * sparklineValues: \">primary|seriesByIndex(0)\"\n * would configure sparklineValues with an array of data points\n * coming from the first series in the primary datasource\n *\n */\n DYNAMIC_OPTIONS = 'dynamic-options',\n EVENTS = 'events',\n /**\n * Placeholder behavior: visualization will display a placeholder rather than fail if any of the `requiredProps` is\n * missing.\n * @type {string}\n */\n PLACEHOLDER = 'placeholder',\n PAGE_AND_SORT = 'page-and-sort',\n TRELLIS = 'trellis',\n}\n","module.exports = require(\"@splunk/visualizations-shared/schemaUtils\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorConfig } from '../interfaces/Editor';\n\nconst gauge: EditorConfig = {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Value display'),\n option: 'valueDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Number'), value: 'number' },\n { label: _('Percentage'), value: 'percentage' },\n { label: _('Off'), value: 'off' },\n ],\n },\n },\n ],\n [\n {\n label: _('Label display'),\n option: 'labelDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Numbers'), value: 'number' },\n { label: _('Percentages'), value: 'percentage' },\n { label: _('Off'), value: 'off' },\n ],\n },\n },\n ],\n [\n {\n label: _('Orientation'),\n option: 'orientation',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Vertical'), value: 'vertical' },\n { label: _('Horizontal'), value: 'horizontal' },\n ],\n },\n },\n ],\n ],\n};\n\nexport default gauge;\n","import { get, range } from 'lodash';\nimport { DYNAMIC_OPTIONS_DSL_PATTERN } from '@splunk/visualizations-shared/schemaUtils';\nimport type { JSONSchema7Definition } from 'json-schema';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\nimport { VizBehavior } from '../interfaces/VizBehavior';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { OptionsSchema } from '../interfaces/OptionsSchema';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\n}\n\nconst dynamicOptionsDSLType = {\n type: 'string',\n pattern: DYNAMIC_OPTIONS_DSL_PATTERN,\n} as const;\n\n/**\n * Helper function to extend an options schema with dynamic options DSL\n * @param optionsSchema a visualization's options schema\n * @returns an updated options schema that additionally allows strings starting with > for each option\n */\nfunction enhanceOptionsSchemaWithDynamicOptions(\n optionsSchema: OptionsSchema | JSONSchema7Definition\n): OptionsSchema {\n const enhancedOptionsSchema: OptionsSchema = {};\n Object.keys(optionsSchema).forEach((key): void => {\n const {\n // The next a few are schema annotations, we should leave them as is.\n // Note: in reality we don't use `readOnly`, `writeOnly` or `examples`, but they are listed here for completeness.\n // Ref: https://datatracker.ietf.org/doc/html/draft-handrews-json-schema-validation-01\n title,\n description,\n readOnly,\n writeOnly,\n examples,\n default: defaultValue,\n // The next a few need special care\n type,\n properties,\n patternProperties,\n // The rest should be handled together\n ...remainingSchemaEntry\n } = optionsSchema[key];\n\n const annotations = {\n ...(title !== undefined && { title }),\n ...(description !== undefined && { description }),\n ...(readOnly !== undefined && { readOnly }),\n ...(writeOnly !== undefined && { writeOnly }),\n ...(examples !== undefined && { examples }),\n ...(defaultValue !== undefined && { default: defaultValue }),\n };\n\n if (type === 'object') {\n enhancedOptionsSchema[key] = {\n ...remainingSchemaEntry,\n ...annotations,\n type,\n ...(properties && { properties: enhanceOptionsSchemaWithDynamicOptions(properties) }),\n };\n if (patternProperties) {\n let enhancedPatternProperties = {};\n Object.keys(patternProperties).forEach((opt): void => {\n enhancedPatternProperties = {\n ...enhancedPatternProperties,\n ...enhanceOptionsSchemaWithDynamicOptions({ [opt]: patternProperties[opt] }),\n };\n });\n enhancedOptionsSchema[key].patternProperties = enhancedPatternProperties;\n }\n } else {\n enhancedOptionsSchema[key] = {\n ...annotations,\n anyOf: [\n // we can't assume `type` is always there because there are `enum` and `const`.\n { ...(type !== undefined && { type }), ...remainingSchemaEntry },\n dynamicOptionsDSLType,\n ],\n };\n }\n });\n return enhancedOptionsSchema;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * this function also collapse all editor panels\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n * and containing `open: false` for all editor panels in editorConfig\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = { ...vizConfig };\n if (vizConfig.supports.indexOf(VizBehavior.DYNAMIC_OPTIONS) !== -1) {\n enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);\n }\n enhancedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: config.open || false };\n }\n );\n return enhancedConfig;\n}\n\n/**\n * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig\n * Created for editor unit tests\n * @param vizConfig a Visualization Config\n * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig\n */\nfunction uncollapseEditorConfig(vizConfig: VizConfig): VizConfig {\n const editorPanelUncollapsedConfig: VizConfig = { ...vizConfig };\n editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: true };\n }\n );\n return editorPanelUncollapsedConfig;\n}\n\nfunction isDynamicOption(option?: string): boolean {\n return (option && typeof option === 'string' && option.trim().startsWith('>')) || false;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport {\n enhanceConfig,\n enhanceOptionsSchemaWithDynamicOptions,\n getInitialPreset,\n generatePrecisionValues,\n uncollapseEditorConfig,\n isDynamicOption,\n};\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n","module.exports = require(\"lodash\");","import { _ } from '@splunk/ui-utils/i18n';\nimport MarkerGaugeIcon from '@splunk/react-icons/enterprise/GaugeMarker';\nimport { MarkerGauge as MarkerGaugePlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { COLOR_OR_TOKEN_PATTERN_WITH_RGBA, getPattern } from '@splunk/visualizations-shared/schemaUtils';\nimport variables from '@splunk/themes/variables';\nimport pick from '@splunk/themes/pick';\nimport GaugeConfig from '../common/editorConfig/Gauge';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { OptionsSchema } from '../common/interfaces/OptionsSchema';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { enhanceConfig } from '../common/utils/configUtils';\nimport getBackgroundColorEditor from '../common/editorConfig/BackgroundColor';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {};\n\nconst optionsSchema: OptionsSchema = {\n backgroundColor: {\n description:\n 'Specify the color used for the background. The default for enterprise light is \"#ffffff\". The default for enterprise dark is \"#000000\". The default for prisma dark is \"#0b0c0e\".',\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n default: '> themes.defaultBackgroundColor',\n },\n gaugeRanges: {\n description:\n 'Specify the overall range of the gauge as a series of continuous, color-coded subranges. For example, [{\"from\": 0, \"to\": 20, \"value\": \"#4BEBA8\"}, {\"from\": 20, \"to\": 50, \"value\": \"#F4DF7A\"}].',\n default: [\n { from: 0, to: 50, value: '#118832' },\n { from: 50, to: 90, value: '#CBA700' },\n { from: 90, to: 100, value: '#D41F1F' },\n ],\n type: 'array',\n items: {\n type: 'object',\n properties: {\n from: {\n type: 'number',\n description: 'Starting value for range.',\n },\n to: {\n type: 'number',\n description: 'Ending value for range.',\n },\n value: {\n description: 'Color for sub range.',\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n },\n },\n required: ['from', 'to', 'value'],\n additionalProperties: false,\n },\n },\n labelDisplay: {\n description:\n 'Specify whether to display the labels as numbers, percentages, or off. The label center aligns to the value.',\n default: 'number',\n type: 'string',\n pattern: getPattern(['number', 'percentage', 'off']),\n },\n majorTickInterval: {\n description: 'Specify, in pixels, the spacing between major tick marks.',\n default: 'auto',\n type: ['string', 'number'],\n },\n orientation: {\n description: 'Specify the axis orientation of the gauge.',\n default: 'vertical',\n type: 'string',\n pattern: getPattern(['horizontal', 'vertical']),\n },\n value: {\n description: 'Specify the dataSource applied to the value of the marker gauge.',\n type: 'string',\n default: '> primary | seriesByType(\"number\") | lastPoint()',\n },\n valueDisplay: {\n description: 'Specify whether to display the value as a number, percentage, or off.',\n default: 'number',\n type: 'string',\n pattern: getPattern(['number', 'percentage', 'off']),\n },\n};\n\nconst themes: ThemedDefaults = {\n defaultFillColor: props =>\n pick({\n enterprise: variables.backgroundColorHover(props),\n prisma: variables.neutral100(props),\n })(props),\n defaultBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n majorTickFillColor: props =>\n pick({\n enterprise: {\n light: variables.gray30(props), // was '#33343B'\n dark: variables.textGray(props), // was #D7DAE0\n },\n prisma: {\n // TODO: missed colors :(\n light: variables.neutral100(props), // TBD\n dark: variables.contentColorMuted(props), // was #D7DAE0; contentColor\n },\n })(props),\n majorTickStrokeColor: props =>\n pick({\n enterprise: {\n light: variables.textGray(props),\n dark: variables.contentColorMuted(props),\n },\n prisma: variables.contentColorMuted(props),\n })(props),\n valueMarkerFillColor: props =>\n pick({\n enterprise: variables.textColor(props),\n prisma: {\n dark: variables.white(props),\n light: variables.black(props),\n },\n })(props),\n valueMarkerLabelFillColor: props =>\n pick({\n enterprise: {\n light: variables.gray96(props),\n dark: variables.black(props),\n },\n prisma: variables.black(props),\n })(props),\n};\n\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Data configurations'),\n layout: [\n [\n {\n label: _('Value'),\n editor: 'editor.columnSelector',\n option: 'value',\n context: 'defaultContext',\n editorProps: {\n dataSourceKey: 'primary',\n prepareValue: (\n definition\n ): { context: Record<string, any>; options: Record<string, any> } => {\n const {\n options: { value },\n } = definition;\n return {\n context: {},\n options: {\n value: `${value} | lastPoint()`,\n },\n };\n },\n },\n },\n ],\n ],\n },\n GaugeConfig,\n {\n label: _('Color and style'),\n layout: [\n [\n {\n label: _('Gauge ranges'),\n option: 'gaugeRanges',\n editor: 'editor.threshold',\n editorProps: {\n openRanges: false, // Use closed ranges\n isTogglable: false, // Can not disable thresholds\n },\n },\n ],\n getBackgroundColorEditor({ themes, labelPosition: 'top' }),\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.markergauge',\n /**\n * viz name\n */\n name: _('Marker gauge'),\n category: VizCategory.GAUGE,\n /**\n * viz icon\n */\n icon: MarkerGaugeIcon,\n placeholderIcon: MarkerGaugePlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.PLACEHOLDER],\n themes,\n};\n\nexport default enhanceConfig(config);\n","module.exports = require(\"@splunk/react-icons/enterprise/GaugeMarker\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","export enum VizCategory {\n SINGLE_VALUE = 'Single Value',\n TRENDS = 'Trends',\n COMPARISONS = 'Comparisons',\n TABLE = 'Table',\n GAUGE = 'Gauge',\n DISTRIBUTIONS = 'Distributions',\n CHOROPLETH = 'Choropleth Maps',\n SHAPES = 'Shapes',\n MISC = 'misc',\n FLOW = 'Flow',\n CORRELATION = 'Correlation',\n SPATIAL = 'Spatial',\n}\n","module.exports = require(\"@splunk/themes/pick\");"],"sourceRoot":""}