@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.
- package/Area.config.js +216 -216
- package/Area.config.js.map +1 -1
- package/Area.js +529 -561
- package/Area.js.map +1 -1
- package/Bar.config.js +213 -213
- package/Bar.config.js.map +1 -1
- package/Bar.js +394 -386
- package/Bar.js.map +1 -1
- package/Bubble.config.js +140 -140
- package/Bubble.config.js.map +1 -1
- package/Bubble.js +313 -305
- package/Bubble.js.map +1 -1
- package/ChoroplethSvg.config.js +15 -15
- package/ChoroplethSvg.config.js.map +1 -1
- package/ChoroplethSvg.js +149 -144
- package/ChoroplethSvg.js.map +1 -1
- package/Column.config.js +205 -205
- package/Column.config.js.map +1 -1
- package/Column.js +387 -379
- package/Column.js.map +1 -1
- package/Ellipse.config.js +45 -45
- package/Ellipse.config.js.map +1 -1
- package/Ellipse.js +157 -144
- package/Ellipse.js.map +1 -1
- package/Events.config.js +11 -11
- package/Events.config.js.map +1 -1
- package/Events.js +273 -261
- package/Events.js.map +1 -1
- package/FillerGauge.config.js +46 -46
- package/FillerGauge.config.js.map +1 -1
- package/FillerGauge.js +267 -262
- package/FillerGauge.js.map +1 -1
- package/Image.config.js +8 -8
- package/Image.config.js.map +1 -1
- package/Image.js +110 -104
- package/Image.js.map +1 -1
- package/Line.config.js +220 -220
- package/Line.config.js.map +1 -1
- package/Line.js +404 -396
- package/Line.js.map +1 -1
- package/LinkGraph.config.js +27 -27
- package/LinkGraph.config.js.map +1 -1
- package/LinkGraph.js +557 -548
- package/LinkGraph.js.map +1 -1
- package/Map.config.js +71 -71
- package/Map.config.js.map +1 -1
- package/Map.js +471 -465
- package/Map.js.map +1 -1
- package/Markdown.config.js +23 -23
- package/Markdown.config.js.map +1 -1
- package/Markdown.js +151 -145
- package/Markdown.js.map +1 -1
- package/MarkerGauge.config.js +84 -84
- package/MarkerGauge.config.js.map +1 -1
- package/MarkerGauge.js +295 -289
- package/MarkerGauge.js.map +1 -1
- package/ParallelCoordinates.config.js +23 -23
- package/ParallelCoordinates.config.js.map +1 -1
- package/ParallelCoordinates.js +164 -162
- package/ParallelCoordinates.js.map +1 -1
- package/Pie.config.js +24 -24
- package/Pie.config.js.map +1 -1
- package/Pie.js +233 -228
- package/Pie.js.map +1 -1
- package/Punchcard.config.js +33 -33
- package/Punchcard.config.js.map +1 -1
- package/Punchcard.js +278 -279
- package/Punchcard.js.map +1 -1
- package/Rectangle.config.js +46 -46
- package/Rectangle.config.js.map +1 -1
- package/Rectangle.js +154 -142
- package/Rectangle.js.map +1 -1
- package/Sankey.config.js +19 -19
- package/Sankey.config.js.map +1 -1
- package/Sankey.js +281 -275
- package/Sankey.js.map +1 -1
- package/Scatter.config.js +135 -135
- package/Scatter.config.js.map +1 -1
- package/Scatter.js +304 -299
- package/Scatter.js.map +1 -1
- package/SingleValue.config.js +119 -119
- package/SingleValue.config.js.map +1 -1
- package/SingleValue.js +359 -341
- package/SingleValue.js.map +1 -1
- package/SingleValueBasic.js +14 -14
- package/SingleValueBasic.js.map +1 -1
- package/SingleValueIcon.config.js +117 -117
- package/SingleValueIcon.config.js.map +1 -1
- package/SingleValueIcon.js +373 -371
- package/SingleValueIcon.js.map +1 -1
- package/SingleValueRadial.config.js +157 -115
- package/SingleValueRadial.config.js.map +1 -1
- package/SingleValueRadial.js +1114 -540
- package/SingleValueRadial.js.map +1 -1
- package/SparkLine.js +50 -20
- package/SparkLine.js.map +1 -1
- package/Table.config.js +54 -54
- package/Table.config.js.map +1 -1
- package/Table.js +302 -286
- package/Table.js.map +1 -1
- package/common/Charting.js +41 -41
- package/common/Charting.js.map +1 -1
- package/common/EventsDoc.js +15 -14
- package/common/EventsDoc.js.map +1 -1
- package/common/GaugeMajorTicks.js +2 -2
- package/common/GaugeMajorTicks.js.map +1 -1
- package/common/GaugeValueMarker.js +2 -2
- package/common/GaugeValueMarker.js.map +1 -1
- package/common/OptionsDoc.js +22 -22
- package/common/OptionsDoc.js.map +1 -1
- package/common/OverviewDoc.js +32 -27
- package/common/OverviewDoc.js.map +1 -1
- package/common/SplunkVisualization.js +4 -4
- package/common/SplunkVisualization.js.map +1 -1
- package/common/SplunkVisualizationApi.js +2 -2
- package/common/SplunkVisualizationApi.js.map +1 -1
- package/common/ThemesDoc.js +14 -14
- package/common/ThemesDoc.js.map +1 -1
- package/common/chartingUtils.js +12 -12
- package/common/chartingUtils.js.map +1 -1
- package/common/docUtils.js +4 -4
- package/common/docUtils.js.map +1 -1
- package/common/gaugeUtils.js +112 -112
- package/common/gaugeUtils.js.map +1 -1
- package/common/shapeUtils.js +21 -15
- package/common/shapeUtils.js.map +1 -1
- package/common/utils/configUtils.js +10 -9
- package/common/utils/configUtils.js.map +1 -1
- package/common/utils/dataUtils.js +2 -2
- package/common/utils/dataUtils.js.map +1 -1
- package/common/utils/hocUtils.js +2 -2
- package/common/utils/hocUtils.js.map +1 -1
- package/common/utils/layoutUtils.js +2 -2
- package/common/utils/layoutUtils.js.map +1 -1
- package/common/utils/mapUtils.js +84 -80
- package/common/utils/mapUtils.js.map +1 -1
- package/common/utils/singleValueUtils.js +2 -2
- package/common/utils/singleValueUtils.js.map +1 -1
- package/common/utils/testHelper.js +27 -9
- package/common/utils/testHelper.js.map +1 -1
- package/common/utils/trellisUtils.js +26 -26
- package/common/utils/trellisUtils.js.map +1 -1
- package/common/utils/urlUtils.js +2 -2
- package/common/utils/urlUtils.js.map +1 -1
- package/common/withDashboardViz.js +107 -104
- package/common/withDashboardViz.js.map +1 -1
- package/package.json +19 -19
package/Punchcard.config.js
CHANGED
|
@@ -142,7 +142,7 @@ var background = function background(_ref) {
|
|
|
142
142
|
themes = _ref.themes,
|
|
143
143
|
labelPosition = _ref.labelPosition;
|
|
144
144
|
return [{
|
|
145
|
-
label: i18n_1._(label || 'Background'),
|
|
145
|
+
label: (0, i18n_1._)(label || 'Background'),
|
|
146
146
|
option: 'backgroundColor',
|
|
147
147
|
editor: 'editor.color',
|
|
148
148
|
editorProps: {
|
|
@@ -366,8 +366,8 @@ function hasCompatibleOptions(vizOptions, presetOptions) {
|
|
|
366
366
|
*/
|
|
367
367
|
function getInitialPreset(vizContext, vizOptions, presets) {
|
|
368
368
|
return presets.find(function (preset) {
|
|
369
|
-
var presetContext = lodash_1.get(preset, ['value', 'context'], {});
|
|
370
|
-
var presetOptions = lodash_1.get(preset, ['value', 'options'], {});
|
|
369
|
+
var presetContext = (0, lodash_1.get)(preset, ['value', 'context'], {});
|
|
370
|
+
var presetOptions = (0, lodash_1.get)(preset, ['value', 'options'], {});
|
|
371
371
|
var presetContextKeys = Object.keys(presetContext);
|
|
372
372
|
var presetOptionKeys = Object.keys(presetOptions);
|
|
373
373
|
// all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)
|
|
@@ -384,7 +384,7 @@ exports.getInitialPreset = getInitialPreset;
|
|
|
384
384
|
* @returns {{ label: string; value; string }[]} array of { label, value } tuples
|
|
385
385
|
*/
|
|
386
386
|
function generatePrecisionValues(numPrecisionValues) {
|
|
387
|
-
return lodash_1.range(0, numPrecisionValues + 1).map(function (i) {
|
|
387
|
+
return (0, lodash_1.range)(0, numPrecisionValues + 1).map(function (i) {
|
|
388
388
|
return {
|
|
389
389
|
label: "".concat(i, " (0").concat(i > 0 ? '.' : '').concat('0'.repeat(i), ")"),
|
|
390
390
|
value: i
|
|
@@ -532,7 +532,7 @@ var optionsSchema = {
|
|
|
532
532
|
bubbleLabelDisplay: {
|
|
533
533
|
default: 'all',
|
|
534
534
|
description: 'Specify whether all bubble labels, the max value bubble labels, or none of the bubble labels should be displayed.',
|
|
535
|
-
pattern: schemaUtils_1.getPattern(['all', 'max', 'off']),
|
|
535
|
+
pattern: (0, schemaUtils_1.getPattern)(['all', 'max', 'off']),
|
|
536
536
|
type: 'string'
|
|
537
537
|
},
|
|
538
538
|
bubbleRadiusMax: {
|
|
@@ -548,7 +548,7 @@ var optionsSchema = {
|
|
|
548
548
|
bubbleRowScale: {
|
|
549
549
|
default: 'global',
|
|
550
550
|
description: 'Specify how bubbles are scaled relative to other rows.',
|
|
551
|
-
pattern: schemaUtils_1.getPattern(['global', 'row']),
|
|
551
|
+
pattern: (0, schemaUtils_1.getPattern)(['global', 'row']),
|
|
552
552
|
type: 'string'
|
|
553
553
|
},
|
|
554
554
|
bubbleSizeMax: {
|
|
@@ -564,19 +564,19 @@ var optionsSchema = {
|
|
|
564
564
|
bubbleSizeMethod: {
|
|
565
565
|
default: 'area',
|
|
566
566
|
description: 'Specify whether bubble area or diameter corresponds to the size value.',
|
|
567
|
-
pattern: schemaUtils_1.getPattern(['radius', 'area']),
|
|
567
|
+
pattern: (0, schemaUtils_1.getPattern)(['radius', 'area']),
|
|
568
568
|
type: 'string'
|
|
569
569
|
},
|
|
570
570
|
colorMode: {
|
|
571
571
|
default: 'dynamic',
|
|
572
572
|
description: 'Specify the coloring method used for the bubbles.',
|
|
573
|
-
pattern: schemaUtils_1.getPattern(['categorical', 'dynamic']),
|
|
573
|
+
pattern: (0, schemaUtils_1.getPattern)(['categorical', 'dynamic']),
|
|
574
574
|
type: 'string'
|
|
575
575
|
},
|
|
576
576
|
legendDisplay: {
|
|
577
577
|
default: 'right',
|
|
578
578
|
description: 'Specify the location of the legend on the panel.',
|
|
579
|
-
pattern: schemaUtils_1.getPattern(['right', 'off']),
|
|
579
|
+
pattern: (0, schemaUtils_1.getPattern)(['right', 'off']),
|
|
580
580
|
type: 'string'
|
|
581
581
|
},
|
|
582
582
|
seriesColors: {
|
|
@@ -605,7 +605,7 @@ var optionsSchema = {
|
|
|
605
605
|
};
|
|
606
606
|
var themes = {
|
|
607
607
|
defaultBackgroundColor: function defaultBackgroundColor(props) {
|
|
608
|
-
return pick_1.default({
|
|
608
|
+
return (0, pick_1.default)({
|
|
609
609
|
enterprise: {
|
|
610
610
|
dark: variables_1.default.black(props),
|
|
611
611
|
light: variables_1.default.backgroundColor(props)
|
|
@@ -615,73 +615,73 @@ var themes = {
|
|
|
615
615
|
}
|
|
616
616
|
};
|
|
617
617
|
var editorConfig = [{
|
|
618
|
-
label: i18n_1._('Data display'),
|
|
618
|
+
label: (0, i18n_1._)('Data display'),
|
|
619
619
|
layout: [[{
|
|
620
|
-
label: i18n_1._('Show bubble labels'),
|
|
620
|
+
label: (0, i18n_1._)('Show bubble labels'),
|
|
621
621
|
option: 'bubbleLabelDisplay',
|
|
622
622
|
editor: 'editor.radioBar',
|
|
623
623
|
editorProps: {
|
|
624
624
|
values: [{
|
|
625
|
-
label: i18n_1._('All'),
|
|
625
|
+
label: (0, i18n_1._)('All'),
|
|
626
626
|
value: 'all'
|
|
627
627
|
}, {
|
|
628
|
-
label: i18n_1._('Max'),
|
|
628
|
+
label: (0, i18n_1._)('Max'),
|
|
629
629
|
value: 'max'
|
|
630
630
|
}, {
|
|
631
|
-
label: i18n_1._('Off'),
|
|
631
|
+
label: (0, i18n_1._)('Off'),
|
|
632
632
|
value: 'off'
|
|
633
633
|
}]
|
|
634
634
|
}
|
|
635
635
|
}], [{
|
|
636
|
-
label: i18n_1._('Pulsate max value'),
|
|
636
|
+
label: (0, i18n_1._)('Pulsate max value'),
|
|
637
637
|
option: 'showMaxValuePulsation',
|
|
638
638
|
editor: 'editor.toggle'
|
|
639
639
|
}], [{
|
|
640
|
-
label: i18n_1._('Bubble scale'),
|
|
640
|
+
label: (0, i18n_1._)('Bubble scale'),
|
|
641
641
|
option: 'bubbleSizeMethod',
|
|
642
642
|
editor: 'editor.radioBar',
|
|
643
643
|
editorProps: {
|
|
644
644
|
values: [{
|
|
645
|
-
label: i18n_1._('Radius'),
|
|
645
|
+
label: (0, i18n_1._)('Radius'),
|
|
646
646
|
value: 'radius'
|
|
647
647
|
}, {
|
|
648
|
-
label: i18n_1._('Area'),
|
|
648
|
+
label: (0, i18n_1._)('Area'),
|
|
649
649
|
value: 'area'
|
|
650
650
|
}]
|
|
651
651
|
}
|
|
652
652
|
}], [{
|
|
653
|
-
label: i18n_1._('Bubble row scale'),
|
|
653
|
+
label: (0, i18n_1._)('Bubble row scale'),
|
|
654
654
|
option: 'bubbleRowScale',
|
|
655
655
|
editor: 'editor.radioBar',
|
|
656
656
|
editorProps: {
|
|
657
657
|
values: [{
|
|
658
|
-
label: i18n_1._('Global'),
|
|
658
|
+
label: (0, i18n_1._)('Global'),
|
|
659
659
|
value: 'global'
|
|
660
660
|
}, {
|
|
661
|
-
label: i18n_1._('By Row'),
|
|
661
|
+
label: (0, i18n_1._)('By Row'),
|
|
662
662
|
value: 'row'
|
|
663
663
|
}]
|
|
664
664
|
}
|
|
665
665
|
}]]
|
|
666
666
|
}, {
|
|
667
|
-
label: i18n_1._('Color and style'),
|
|
667
|
+
label: (0, i18n_1._)('Color and style'),
|
|
668
668
|
layout: [[{
|
|
669
|
-
label: i18n_1._('Color mode'),
|
|
669
|
+
label: (0, i18n_1._)('Color mode'),
|
|
670
670
|
option: 'colorMode',
|
|
671
671
|
editor: 'editor.radioBar',
|
|
672
672
|
editorProps: {
|
|
673
673
|
values: [{
|
|
674
|
-
label: i18n_1._('Dynamic'),
|
|
674
|
+
label: (0, i18n_1._)('Dynamic'),
|
|
675
675
|
value: 'dynamic'
|
|
676
676
|
}, {
|
|
677
|
-
label: i18n_1._('Categorical'),
|
|
677
|
+
label: (0, i18n_1._)('Categorical'),
|
|
678
678
|
value: 'categorical'
|
|
679
679
|
}]
|
|
680
680
|
}
|
|
681
681
|
}], [
|
|
682
682
|
// This should be hidden in categorical color mode
|
|
683
683
|
{
|
|
684
|
-
label: i18n_1._('Color by field'),
|
|
684
|
+
label: (0, i18n_1._)('Color by field'),
|
|
685
685
|
editor: 'editor.columnSelector',
|
|
686
686
|
option: 'bubbleColor',
|
|
687
687
|
context: 'bubbleColorConfig',
|
|
@@ -701,18 +701,18 @@ var editorConfig = [{
|
|
|
701
701
|
};
|
|
702
702
|
}
|
|
703
703
|
}
|
|
704
|
-
}], BackgroundColor_1.default({
|
|
704
|
+
}], (0, BackgroundColor_1.default)({
|
|
705
705
|
themes: themes
|
|
706
706
|
}), [{
|
|
707
|
-
label: i18n_1._('Legend display'),
|
|
707
|
+
label: (0, i18n_1._)('Legend display'),
|
|
708
708
|
option: 'legendDisplay',
|
|
709
709
|
editor: 'editor.select',
|
|
710
710
|
editorProps: {
|
|
711
711
|
values: [{
|
|
712
|
-
label: i18n_1._('Right'),
|
|
712
|
+
label: (0, i18n_1._)('Right'),
|
|
713
713
|
value: 'right'
|
|
714
714
|
}, {
|
|
715
|
-
label: i18n_1._('Off'),
|
|
715
|
+
label: (0, i18n_1._)('Off'),
|
|
716
716
|
value: 'off'
|
|
717
717
|
}]
|
|
718
718
|
},
|
|
@@ -733,7 +733,7 @@ var config = {
|
|
|
733
733
|
/**
|
|
734
734
|
* viz name
|
|
735
735
|
*/
|
|
736
|
-
name: i18n_1._('Punchcard'),
|
|
736
|
+
name: (0, i18n_1._)('Punchcard'),
|
|
737
737
|
category: VizCategory_1.VizCategory.CORRELATION,
|
|
738
738
|
/**
|
|
739
739
|
* viz icon
|
|
@@ -757,7 +757,7 @@ var config = {
|
|
|
757
757
|
themes: themes,
|
|
758
758
|
requiredProps: ['x', 'y', 'size']
|
|
759
759
|
};
|
|
760
|
-
exports.default = configUtils_1.enhanceConfig(config);
|
|
760
|
+
exports.default = (0, configUtils_1.enhanceConfig)(config);
|
|
761
761
|
|
|
762
762
|
/***/ }),
|
|
763
763
|
|
package/Punchcard.config.js.map
CHANGED
|
@@ -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:///external \"@splunk/visualization-icons\"","webpack:///./src/common/editorConfig/BackgroundColor.ts","webpack:///external \"@splunk/visualization-color-palettes\"","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///./src/common/utils/configUtils.ts","webpack:///external \"lodash\"","webpack:///./src/Punchcard/config.ts","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","visualization_icons_1","placeholders_1","visualization_color_palettes_1","pick_1","variables_1","VizCategory_1","configUtils_1","BackgroundColor_1","dataContract","requiredDataSources","name","optionalDataSources","initialRequestParams","primary","offset","count","size","initialWidth","initialHeight","defaultContext","bubbleColorConfig","colors","x","items","y","category","xField","yField","categoryField","sizeField","backgroundColor","COLOR_OR_TOKEN_PATTERN_WITH_RGBA","bubbleColor","bubbleLabelDisplay","getPattern","bubbleRadiusMax","bubbleRadiusMin","bubbleRowScale","bubbleSizeMax","bubbleSizeMin","bubbleSizeMethod","colorMode","legendDisplay","seriesColors","VIZ_CATEGORICAL","showDefaultSort","showDynamicBubbleSize","showMaxValuePulsation","defaultBackgroundColor","props","enterprise","dark","black","light","prisma","backgroundColorSidebar","values","context","showEditor","options","dataSourceKey","prepareValue","definition","_ref2","VizCategory","CORRELATION","icon","Punchcard","placeholderIcon","events","PLACEHOLDER","EVENTS","requiredProps"],"mappings":"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","file":"Punchcard.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 = 69);\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\");","module.exports = require(\"@splunk/visualization-icons\");","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","module.exports = require(\"@splunk/visualization-color-palettes\");","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","module.exports = require(\"lodash\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { COLOR_OR_TOKEN_PATTERN_WITH_RGBA, getPattern } from '@splunk/visualizations-shared/schemaUtils';\nimport { Punchcard as PunchcardIcon } from '@splunk/visualization-icons';\nimport { Punchcard as PunchcardPlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { VIZ_CATEGORICAL } from '@splunk/visualization-color-palettes';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\n\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 // Note: SCP-14090 disable ui for optional datasources. We may need to add it back later\n // {\n // name: 'annotation',\n // description: 'DataSource that populate event annotations',\n // },\n ],\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 bubbleColorConfig: {\n colors: ['rgba(123,86,219,0.4)', 'rgba(123,86,219,1)'],\n },\n};\n\nconst optionsSchema: OptionsSchema = {\n x: {\n default: '> primary | seriesByIndex(0)',\n description: 'Specify the dataSource applied to the x-axis.',\n type: 'array',\n items: { type: ['string', 'number'] },\n },\n y: {\n default: '> primary | seriesByIndex(1)',\n description: 'Specify the dataSource applied to the y-axis.',\n type: 'array',\n items: { type: ['string', 'number'] },\n },\n category: {\n default: '> primary | seriesByIndex(3)',\n description: 'Specify the dataSource to apply series categories.',\n type: 'array',\n items: { type: ['string', 'number'] },\n },\n size: {\n default: '> primary | seriesByIndex(2)',\n description: 'Specify the dataSource to apply bubble size in the chart.',\n type: 'array',\n items: { type: 'number' },\n },\n xField: {\n default: '> x | getField()',\n description: 'Specify the field that should be mapped to the x-axis.',\n type: 'string',\n },\n yField: {\n default: '> y | getField()',\n description: 'Specify the field that should be mapped to the y-axis.',\n type: 'string',\n },\n categoryField: {\n default: '> category | getField()',\n description: 'Specify the field that should be mapped to the series categories.',\n type: 'string',\n },\n sizeField: {\n default: '> size | getField()',\n description: 'Specify the field that should be mapped to the bubble size in the chart.',\n type: 'string',\n },\n backgroundColor: {\n default: '> themes.defaultBackgroundColor',\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 pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n bubbleColor: {\n default: '> size | gradient(bubbleColorConfig)',\n description:\n 'Specify the coloring method used for the bubbles when the colorMode “dynamic” is specified. For example “> size | gradient(bubbleColorConfig)\".',\n type: ['string', 'array'],\n },\n bubbleLabelDisplay: {\n default: 'all',\n description:\n 'Specify whether all bubble labels, the max value bubble labels, or none of the bubble labels should be displayed.',\n pattern: getPattern(['all', 'max', 'off']),\n type: 'string',\n },\n bubbleRadiusMax: {\n default: 15,\n description:\n 'Specify the max radius (in pixels) of the bubbles when showDynamicBubbleSize option is false. Greater than 0.',\n type: 'number',\n },\n bubbleRadiusMin: {\n default: 1,\n description:\n 'Specify the min radius (in pixels) of the bubbles when showDynamicBubbleSize option is false. Greater than 0.',\n type: 'number',\n },\n bubbleRowScale: {\n default: 'global',\n description: 'Specify how bubbles are scaled relative to other rows.',\n pattern: getPattern(['global', 'row']),\n type: 'string',\n },\n bubbleSizeMax: {\n default: 1,\n description:\n 'Specify the max percentage (in decimal format) of space a bubble should take up within a cell when showDynamicBubbleSize option is true. The number specified must be between 0 and 1.',\n type: 'number',\n },\n bubbleSizeMin: {\n default: 0.25,\n description:\n 'Specify the min percentage (in decimal format) of space a bubble should take up within a cell when showDynamicBubbleSize option is true. The number specified must be between 0 and 1.',\n type: 'number',\n },\n bubbleSizeMethod: {\n default: 'area',\n description: 'Specify whether bubble area or diameter corresponds to the size value.',\n pattern: getPattern(['radius', 'area']),\n type: 'string',\n },\n colorMode: {\n default: 'dynamic',\n description: 'Specify the coloring method used for the bubbles.',\n pattern: getPattern(['categorical', 'dynamic']),\n type: 'string',\n },\n legendDisplay: {\n default: 'right',\n description: 'Specify the location of the legend on the panel.',\n pattern: getPattern(['right', 'off']),\n type: 'string',\n },\n seriesColors: {\n default: VIZ_CATEGORICAL,\n description: 'Specify the colors used for a series. For example, \"#FF0000\", \"#0000FF\", \"#008000\".',\n type: 'array',\n items: {\n type: 'string',\n },\n },\n showDefaultSort: {\n default: false,\n description: 'Specify whether axes should be sorted based on order of time, digits and strings.',\n type: 'boolean',\n },\n showDynamicBubbleSize: {\n default: true,\n description: 'Specify whether the bubble size should be dynamic or fixed.',\n type: 'boolean',\n },\n showMaxValuePulsation: {\n default: true,\n description: 'Specify whether the max value bubble should pulsate.',\n type: 'boolean',\n },\n};\n\nconst themes: ThemedDefaults = {\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};\n\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Show bubble labels'),\n option: 'bubbleLabelDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('All'), value: 'all' },\n { label: _('Max'), value: 'max' },\n { label: _('Off'), value: 'off' },\n ],\n },\n },\n ],\n [\n {\n label: _('Pulsate max value'),\n option: 'showMaxValuePulsation',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Bubble scale'),\n option: 'bubbleSizeMethod',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Radius'), value: 'radius' },\n { label: _('Area'), value: 'area' },\n ],\n },\n },\n ],\n [\n {\n label: _('Bubble row scale'),\n option: 'bubbleRowScale',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Global'), value: 'global' },\n { label: _('By Row'), value: 'row' },\n ],\n },\n },\n ],\n ],\n },\n {\n label: _('Color and style'),\n layout: [\n [\n {\n label: _('Color mode'),\n option: 'colorMode',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Dynamic'), value: 'dynamic' },\n { label: _('Categorical'), value: 'categorical' },\n ],\n },\n },\n ],\n [\n // This should be hidden in categorical color mode\n {\n label: _('Color by field'),\n editor: 'editor.columnSelector',\n option: 'bubbleColor',\n context: 'bubbleColorConfig',\n showEditor: ({ options }) =>\n options.colorMode === 'dynamic' || options.colorMode === undefined,\n editorProps: {\n dataSourceKey: 'primary',\n prepareValue: (\n definition\n ): { context: Record<string, any>; options: Record<string, any> } => {\n const {\n options: { bubbleColor },\n } = definition;\n return {\n context: {},\n options: {\n bubbleColor: `${bubbleColor} | gradient(bubbleColorConfig)`,\n },\n };\n },\n },\n },\n ],\n getBackgroundColorEditor({ themes }),\n [\n {\n label: _('Legend display'),\n option: 'legendDisplay',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Right'), value: 'right' },\n { label: _('Off'), value: 'off' },\n ],\n },\n showEditor: ({ options }) => options.colorMode === 'categorical',\n },\n ],\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.punchcard',\n /**\n * viz name\n */\n name: _('Punchcard'),\n category: VizCategory.CORRELATION,\n /**\n * viz icon\n */\n icon: PunchcardIcon,\n placeholderIcon: PunchcardPlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'legend.click': {\n description: 'Triggered when user clicks a chart legend',\n },\n 'point.click': {\n description: 'Triggered when user clicks a data point',\n },\n },\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.PLACEHOLDER, VizBehavior.EVENTS],\n themes,\n requiredProps: ['x', 'y', 'size'],\n};\n\nexport default enhanceConfig(config);\n","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:///external \"@splunk/visualization-icons\"","webpack:///./src/common/editorConfig/BackgroundColor.ts","webpack:///external \"@splunk/visualization-color-palettes\"","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///./src/common/utils/configUtils.ts","webpack:///external \"lodash\"","webpack:///./src/Punchcard/config.ts","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","visualization_icons_1","placeholders_1","visualization_color_palettes_1","pick_1","variables_1","VizCategory_1","configUtils_1","BackgroundColor_1","dataContract","requiredDataSources","name","optionalDataSources","initialRequestParams","primary","offset","count","size","initialWidth","initialHeight","defaultContext","bubbleColorConfig","colors","x","items","y","category","xField","yField","categoryField","sizeField","backgroundColor","COLOR_OR_TOKEN_PATTERN_WITH_RGBA","bubbleColor","bubbleLabelDisplay","getPattern","bubbleRadiusMax","bubbleRadiusMin","bubbleRowScale","bubbleSizeMax","bubbleSizeMin","bubbleSizeMethod","colorMode","legendDisplay","seriesColors","VIZ_CATEGORICAL","showDefaultSort","showDynamicBubbleSize","showMaxValuePulsation","defaultBackgroundColor","props","enterprise","dark","black","light","prisma","backgroundColorSidebar","values","context","showEditor","options","dataSourceKey","prepareValue","definition","_ref2","VizCategory","CORRELATION","icon","Punchcard","placeholderIcon","events","PLACEHOLDER","EVENTS","requiredProps"],"mappings":"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","file":"Punchcard.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 = 69);\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\");","module.exports = require(\"@splunk/visualization-icons\");","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","module.exports = require(\"@splunk/visualization-color-palettes\");","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","module.exports = require(\"lodash\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { COLOR_OR_TOKEN_PATTERN_WITH_RGBA, getPattern } from '@splunk/visualizations-shared/schemaUtils';\nimport { Punchcard as PunchcardIcon } from '@splunk/visualization-icons';\nimport { Punchcard as PunchcardPlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { VIZ_CATEGORICAL } from '@splunk/visualization-color-palettes';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\n\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 // Note: SCP-14090 disable ui for optional datasources. We may need to add it back later\n // {\n // name: 'annotation',\n // description: 'DataSource that populate event annotations',\n // },\n ],\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 bubbleColorConfig: {\n colors: ['rgba(123,86,219,0.4)', 'rgba(123,86,219,1)'],\n },\n};\n\nconst optionsSchema: OptionsSchema = {\n x: {\n default: '> primary | seriesByIndex(0)',\n description: 'Specify the dataSource applied to the x-axis.',\n type: 'array',\n items: { type: ['string', 'number'] },\n },\n y: {\n default: '> primary | seriesByIndex(1)',\n description: 'Specify the dataSource applied to the y-axis.',\n type: 'array',\n items: { type: ['string', 'number'] },\n },\n category: {\n default: '> primary | seriesByIndex(3)',\n description: 'Specify the dataSource to apply series categories.',\n type: 'array',\n items: { type: ['string', 'number'] },\n },\n size: {\n default: '> primary | seriesByIndex(2)',\n description: 'Specify the dataSource to apply bubble size in the chart.',\n type: 'array',\n items: { type: 'number' },\n },\n xField: {\n default: '> x | getField()',\n description: 'Specify the field that should be mapped to the x-axis.',\n type: 'string',\n },\n yField: {\n default: '> y | getField()',\n description: 'Specify the field that should be mapped to the y-axis.',\n type: 'string',\n },\n categoryField: {\n default: '> category | getField()',\n description: 'Specify the field that should be mapped to the series categories.',\n type: 'string',\n },\n sizeField: {\n default: '> size | getField()',\n description: 'Specify the field that should be mapped to the bubble size in the chart.',\n type: 'string',\n },\n backgroundColor: {\n default: '> themes.defaultBackgroundColor',\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 pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n bubbleColor: {\n default: '> size | gradient(bubbleColorConfig)',\n description:\n 'Specify the coloring method used for the bubbles when the colorMode “dynamic” is specified. For example “> size | gradient(bubbleColorConfig)\".',\n type: ['string', 'array'],\n },\n bubbleLabelDisplay: {\n default: 'all',\n description:\n 'Specify whether all bubble labels, the max value bubble labels, or none of the bubble labels should be displayed.',\n pattern: getPattern(['all', 'max', 'off']),\n type: 'string',\n },\n bubbleRadiusMax: {\n default: 15,\n description:\n 'Specify the max radius (in pixels) of the bubbles when showDynamicBubbleSize option is false. Greater than 0.',\n type: 'number',\n },\n bubbleRadiusMin: {\n default: 1,\n description:\n 'Specify the min radius (in pixels) of the bubbles when showDynamicBubbleSize option is false. Greater than 0.',\n type: 'number',\n },\n bubbleRowScale: {\n default: 'global',\n description: 'Specify how bubbles are scaled relative to other rows.',\n pattern: getPattern(['global', 'row']),\n type: 'string',\n },\n bubbleSizeMax: {\n default: 1,\n description:\n 'Specify the max percentage (in decimal format) of space a bubble should take up within a cell when showDynamicBubbleSize option is true. The number specified must be between 0 and 1.',\n type: 'number',\n },\n bubbleSizeMin: {\n default: 0.25,\n description:\n 'Specify the min percentage (in decimal format) of space a bubble should take up within a cell when showDynamicBubbleSize option is true. The number specified must be between 0 and 1.',\n type: 'number',\n },\n bubbleSizeMethod: {\n default: 'area',\n description: 'Specify whether bubble area or diameter corresponds to the size value.',\n pattern: getPattern(['radius', 'area']),\n type: 'string',\n },\n colorMode: {\n default: 'dynamic',\n description: 'Specify the coloring method used for the bubbles.',\n pattern: getPattern(['categorical', 'dynamic']),\n type: 'string',\n },\n legendDisplay: {\n default: 'right',\n description: 'Specify the location of the legend on the panel.',\n pattern: getPattern(['right', 'off']),\n type: 'string',\n },\n seriesColors: {\n default: VIZ_CATEGORICAL,\n description: 'Specify the colors used for a series. For example, \"#FF0000\", \"#0000FF\", \"#008000\".',\n type: 'array',\n items: {\n type: 'string',\n },\n },\n showDefaultSort: {\n default: false,\n description: 'Specify whether axes should be sorted based on order of time, digits and strings.',\n type: 'boolean',\n },\n showDynamicBubbleSize: {\n default: true,\n description: 'Specify whether the bubble size should be dynamic or fixed.',\n type: 'boolean',\n },\n showMaxValuePulsation: {\n default: true,\n description: 'Specify whether the max value bubble should pulsate.',\n type: 'boolean',\n },\n};\n\nconst themes: ThemedDefaults = {\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};\n\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Show bubble labels'),\n option: 'bubbleLabelDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('All'), value: 'all' },\n { label: _('Max'), value: 'max' },\n { label: _('Off'), value: 'off' },\n ],\n },\n },\n ],\n [\n {\n label: _('Pulsate max value'),\n option: 'showMaxValuePulsation',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Bubble scale'),\n option: 'bubbleSizeMethod',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Radius'), value: 'radius' },\n { label: _('Area'), value: 'area' },\n ],\n },\n },\n ],\n [\n {\n label: _('Bubble row scale'),\n option: 'bubbleRowScale',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Global'), value: 'global' },\n { label: _('By Row'), value: 'row' },\n ],\n },\n },\n ],\n ],\n },\n {\n label: _('Color and style'),\n layout: [\n [\n {\n label: _('Color mode'),\n option: 'colorMode',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Dynamic'), value: 'dynamic' },\n { label: _('Categorical'), value: 'categorical' },\n ],\n },\n },\n ],\n [\n // This should be hidden in categorical color mode\n {\n label: _('Color by field'),\n editor: 'editor.columnSelector',\n option: 'bubbleColor',\n context: 'bubbleColorConfig',\n showEditor: ({ options }) =>\n options.colorMode === 'dynamic' || options.colorMode === undefined,\n editorProps: {\n dataSourceKey: 'primary',\n prepareValue: (\n definition\n ): { context: Record<string, any>; options: Record<string, any> } => {\n const {\n options: { bubbleColor },\n } = definition;\n return {\n context: {},\n options: {\n bubbleColor: `${bubbleColor} | gradient(bubbleColorConfig)`,\n },\n };\n },\n },\n },\n ],\n getBackgroundColorEditor({ themes }),\n [\n {\n label: _('Legend display'),\n option: 'legendDisplay',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Right'), value: 'right' },\n { label: _('Off'), value: 'off' },\n ],\n },\n showEditor: ({ options }) => options.colorMode === 'categorical',\n },\n ],\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.punchcard',\n /**\n * viz name\n */\n name: _('Punchcard'),\n category: VizCategory.CORRELATION,\n /**\n * viz icon\n */\n icon: PunchcardIcon,\n placeholderIcon: PunchcardPlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'legend.click': {\n description: 'Triggered when user clicks a chart legend',\n },\n 'point.click': {\n description: 'Triggered when user clicks a data point',\n },\n },\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.PLACEHOLDER, VizBehavior.EVENTS],\n themes,\n requiredProps: ['x', 'y', 'size'],\n};\n\nexport default enhanceConfig(config);\n","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":""}
|