@splunk/visualizations 26.0.0 → 26.1.1
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 +103 -19
- package/Area.config.js.map +1 -1
- package/Area.js +646 -243
- package/Area.js.map +1 -1
- package/Bar.config.js +105 -21
- package/Bar.config.js.map +1 -1
- package/Bar.js +653 -237
- package/Bar.js.map +1 -1
- package/Bubble.config.js +95 -21
- package/Bubble.config.js.map +1 -1
- package/Bubble.js +635 -229
- package/Bubble.js.map +1 -1
- package/ChoroplethSvg.config.js +66 -15
- package/ChoroplethSvg.config.js.map +1 -1
- package/ChoroplethSvg.js +589 -211
- package/ChoroplethSvg.js.map +1 -1
- package/Column.config.js +104 -19
- package/Column.config.js.map +1 -1
- package/Column.js +666 -239
- package/Column.js.map +1 -1
- package/Ellipse.config.js +83 -18
- package/Ellipse.config.js.map +1 -1
- package/Ellipse.js +444 -156
- package/Ellipse.js.map +1 -1
- package/Events.config.js +101 -19
- package/Events.config.js.map +1 -1
- package/Events.js +792 -322
- package/Events.js.map +1 -1
- package/FillerGauge.config.js +97 -28
- package/FillerGauge.config.js.map +1 -1
- package/FillerGauge.js +786 -390
- package/FillerGauge.js.map +1 -1
- package/Image.config.js +63 -19
- package/Image.config.js.map +1 -1
- package/Image.js +439 -164
- package/Image.js.map +1 -1
- package/Line.config.js +107 -23
- package/Line.config.js.map +1 -1
- package/Line.js +841 -456
- package/Line.js.map +1 -1
- package/LinkGraph.config.js +73 -23
- package/LinkGraph.config.js.map +1 -1
- package/LinkGraph.js +653 -230
- package/LinkGraph.js.map +1 -1
- package/MIGRATION.md +1082 -0
- package/Map.config.js +244 -99
- package/Map.config.js.map +1 -1
- package/Map.js +1223 -612
- package/Map.js.map +1 -1
- package/Markdown.config.js +71 -21
- package/Markdown.config.js.map +1 -1
- package/Markdown.js +477 -202
- package/Markdown.js.map +1 -1
- package/MarkerGauge.config.js +80 -22
- package/MarkerGauge.config.js.map +1 -1
- package/MarkerGauge.js +819 -418
- package/MarkerGauge.js.map +1 -1
- package/ParallelCoordinates.config.js +73 -19
- package/ParallelCoordinates.config.js.map +1 -1
- package/ParallelCoordinates.js +870 -491
- package/ParallelCoordinates.js.map +1 -1
- package/Pie.config.js +76 -23
- package/Pie.config.js.map +1 -1
- package/Pie.js +643 -233
- package/Pie.js.map +1 -1
- package/Punchcard.config.js +82 -30
- package/Punchcard.config.js.map +1 -1
- package/Punchcard.js +863 -387
- package/Punchcard.js.map +1 -1
- package/Rectangle.config.js +86 -20
- package/Rectangle.config.js.map +1 -1
- package/Rectangle.js +449 -159
- package/Rectangle.js.map +1 -1
- package/Sankey.config.js +85 -23
- package/Sankey.config.js.map +1 -1
- package/Sankey.js +895 -349
- package/Sankey.js.map +1 -1
- package/Scatter.config.js +97 -23
- package/Scatter.config.js.map +1 -1
- package/Scatter.js +639 -234
- package/Scatter.js.map +1 -1
- package/SingleValue.config.js +95 -25
- package/SingleValue.config.js.map +1 -1
- package/SingleValue.js +1198 -656
- package/SingleValue.js.map +1 -1
- package/SingleValueBasic.js +287 -226
- package/SingleValueBasic.js.map +1 -1
- package/SingleValueIcon.config.js +93 -23
- package/SingleValueIcon.config.js.map +1 -1
- package/SingleValueIcon.js +991 -522
- package/SingleValueIcon.js.map +1 -1
- package/SingleValueRadial.config.js +100 -27
- package/SingleValueRadial.config.js.map +1 -1
- package/SingleValueRadial.js +1185 -624
- package/SingleValueRadial.js.map +1 -1
- package/SparkLine.js +127 -68
- package/SparkLine.js.map +1 -1
- package/Table.config.js +74 -21
- package/Table.config.js.map +1 -1
- package/Table.js +827 -329
- package/Table.js.map +1 -1
- package/common/Charting.js +152 -69
- package/common/Charting.js.map +1 -1
- package/common/ChartingApi.js +25 -14
- package/common/ChartingApi.js.map +1 -1
- package/common/DocExampleWithVizSandbox.js +530 -0
- package/common/DocExampleWithVizSandbox.js.map +1 -0
- package/common/EventsDoc.js +139 -104
- package/common/EventsDoc.js.map +1 -1
- package/common/GaugeMajorTicks.js +79 -69
- package/common/GaugeMajorTicks.js.map +1 -1
- package/common/GaugeValueMarker.js +54 -45
- package/common/GaugeValueMarker.js.map +1 -1
- package/common/OptionsDoc.js +178 -87
- package/common/OptionsDoc.js.map +1 -1
- package/common/OverviewDoc.js +530 -68
- package/common/OverviewDoc.js.map +1 -1
- package/common/SplunkVisualization.js +47 -20
- package/common/SplunkVisualization.js.map +1 -1
- package/common/SplunkVisualizationApi.js +15 -9
- package/common/SplunkVisualizationApi.js.map +1 -1
- package/common/ThemesDoc.js +57 -44
- package/common/ThemesDoc.js.map +1 -1
- package/common/chartingUtils.js +52 -20
- package/common/chartingUtils.js.map +1 -1
- package/common/docUtils.js +139 -7
- package/common/docUtils.js.map +1 -1
- package/common/gaugeUtils.js +185 -102
- package/common/gaugeUtils.js.map +1 -1
- package/common/shapeUtils.js +28 -16
- package/common/shapeUtils.js.map +1 -1
- package/common/utils/configUtils.js +50 -15
- package/common/utils/configUtils.js.map +1 -1
- package/common/utils/dataUtils.js +8 -3
- package/common/utils/dataUtils.js.map +1 -1
- package/common/utils/hocUtils.js +4 -2
- package/common/utils/hocUtils.js.map +1 -1
- package/common/utils/layoutUtils.js +2 -1
- package/common/utils/layoutUtils.js.map +1 -1
- package/common/utils/mapUtils.js +288 -128
- package/common/utils/mapUtils.js.map +1 -1
- package/common/utils/singleValueUtils.js +242 -197
- package/common/utils/singleValueUtils.js.map +1 -1
- package/common/utils/testHelper.js +10 -1
- package/common/utils/testHelper.js.map +1 -1
- package/common/utils/trellisUtils.js +62 -1
- package/common/utils/trellisUtils.js.map +1 -1
- package/common/utils/urlUtils.js +3 -1
- package/common/utils/urlUtils.js.map +1 -1
- package/common/withDashboardViz.js +389 -192
- package/common/withDashboardViz.js.map +1 -1
- package/package.json +18 -26
package/Scatter.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Copyright ©
|
|
2
|
+
* Copyright © 2024 Splunk Inc.
|
|
3
3
|
* SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
|
|
4
4
|
* in part without a valid written license from Splunk Inc. is PROHIBITED.
|
|
5
5
|
*/
|
|
@@ -136,11 +136,17 @@ module.exports = require("@splunk/visualizations-shared/colorUtils");
|
|
|
136
136
|
Object.defineProperty(exports, "__esModule", {
|
|
137
137
|
value: true
|
|
138
138
|
});
|
|
139
|
+
|
|
139
140
|
var React = __webpack_require__(1);
|
|
141
|
+
|
|
140
142
|
var styled_components_1 = __webpack_require__(4);
|
|
143
|
+
|
|
141
144
|
var SizeAwareWrapper_1 = __webpack_require__(19);
|
|
145
|
+
|
|
142
146
|
var style_1 = __webpack_require__(14);
|
|
147
|
+
|
|
143
148
|
var colorUtils_1 = __webpack_require__(12);
|
|
149
|
+
|
|
144
150
|
var Item = styled_components_1.default.div.attrs(function (_ref) {
|
|
145
151
|
var width = _ref.width;
|
|
146
152
|
return {
|
|
@@ -153,11 +159,11 @@ var Item = styled_components_1.default.div.attrs(function (_ref) {
|
|
|
153
159
|
componentId: "sc-1yhgpod-0"
|
|
154
160
|
})(["position:relative;background-color:", "};"], function (props) {
|
|
155
161
|
return (0, colorUtils_1.isColor)(props.backgroundColor) && props.backgroundColor || props.theme.defaultBackgroundColor;
|
|
156
|
-
});
|
|
157
|
-
|
|
162
|
+
}); // Use `.attrs()` for highly dynamic styles. Ref: https://github.com/styled-components/styled-components/issues/134#issuecomment-312415291
|
|
163
|
+
|
|
158
164
|
var FixSizeItem = styled_components_1.default.div.attrs(function (_ref2) {
|
|
159
165
|
var width = _ref2.width,
|
|
160
|
-
|
|
166
|
+
height = _ref2.height;
|
|
161
167
|
return {
|
|
162
168
|
style: Object.assign(Object.assign({}, width && {
|
|
163
169
|
width: (0, style_1.toPx)(width)
|
|
@@ -179,11 +185,13 @@ var FixSizeItemContent = styled_components_1.default.div.withConfig({
|
|
|
179
185
|
displayName: "FixedSizeContainer__FixSizeItemContent",
|
|
180
186
|
componentId: "sc-1yhgpod-3"
|
|
181
187
|
})(["min-height:0px;flex:1;position:relative;box-sizing:border-box;"]);
|
|
188
|
+
|
|
182
189
|
var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
|
|
183
190
|
var FixedSizeContainer = function FixedSizeContainer(props) {
|
|
184
191
|
var width = props.width,
|
|
185
|
-
|
|
186
|
-
|
|
192
|
+
height = props.height,
|
|
193
|
+
backgroundColor = props.backgroundColor;
|
|
194
|
+
|
|
187
195
|
if (!height) {
|
|
188
196
|
return React.createElement(Item, {
|
|
189
197
|
"data-test": "item",
|
|
@@ -191,24 +199,27 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
|
|
|
191
199
|
backgroundColor: backgroundColor
|
|
192
200
|
}, React.createElement(ItemContent, null, React.createElement(Viz, Object.assign({}, props))));
|
|
193
201
|
}
|
|
202
|
+
|
|
194
203
|
return React.createElement(FixSizeItem, {
|
|
195
204
|
"data-test": "fix-size-item",
|
|
196
|
-
"data-splunk-visualization-version": "26.
|
|
205
|
+
"data-splunk-visualization-version": "26.1.1 - b6df0a015",
|
|
197
206
|
width: width,
|
|
198
207
|
height: height,
|
|
199
208
|
backgroundColor: backgroundColor
|
|
200
209
|
}, React.createElement(FixSizeItemContent, null, React.createElement(SizeAwareWrapper_1.default, null, function (_ref3) {
|
|
201
210
|
var newWidth = _ref3.width,
|
|
202
|
-
|
|
211
|
+
newHeight = _ref3.height;
|
|
203
212
|
return React.createElement(Viz, Object.assign({}, props, {
|
|
204
213
|
width: newWidth,
|
|
205
214
|
height: newHeight
|
|
206
215
|
}));
|
|
207
216
|
})));
|
|
208
217
|
};
|
|
218
|
+
|
|
209
219
|
FixedSizeContainer.displayName = 'withFixedSizeContainer';
|
|
210
220
|
return FixedSizeContainer;
|
|
211
221
|
};
|
|
222
|
+
|
|
212
223
|
exports.default = withFixedSizeContainer;
|
|
213
224
|
|
|
214
225
|
/***/ }),
|
|
@@ -236,9 +247,10 @@ exports.extendStaticWrapperProps = void 0;
|
|
|
236
247
|
* @param {DashboardVizType} props.Wrapper
|
|
237
248
|
* @param {DashboardVizType} props.Visualization
|
|
238
249
|
*/
|
|
250
|
+
|
|
239
251
|
var extendStaticWrapperProps = function extendStaticWrapperProps(_ref) {
|
|
240
252
|
var Wrapper = _ref.Wrapper,
|
|
241
|
-
|
|
253
|
+
Visualization = _ref.Visualization;
|
|
242
254
|
var extendProperties = ['propTypes', 'defaultProps', 'config'];
|
|
243
255
|
extendProperties.forEach(function (prop) {
|
|
244
256
|
if (Visualization[prop]) {
|
|
@@ -247,6 +259,7 @@ var extendStaticWrapperProps = function extendStaticWrapperProps(_ref) {
|
|
|
247
259
|
}
|
|
248
260
|
});
|
|
249
261
|
};
|
|
262
|
+
|
|
250
263
|
exports.extendStaticWrapperProps = extendStaticWrapperProps;
|
|
251
264
|
|
|
252
265
|
/***/ }),
|
|
@@ -258,7 +271,7 @@ module.exports = require("@splunk/visualizations-shared/schemaUtils");
|
|
|
258
271
|
|
|
259
272
|
/***/ }),
|
|
260
273
|
|
|
261
|
-
/***/
|
|
274
|
+
/***/ 168:
|
|
262
275
|
/***/ (function(module, exports, __webpack_require__) {
|
|
263
276
|
|
|
264
277
|
"use strict";
|
|
@@ -266,43 +279,59 @@ module.exports = require("@splunk/visualizations-shared/schemaUtils");
|
|
|
266
279
|
|
|
267
280
|
var __rest = this && this.__rest || function (s, e) {
|
|
268
281
|
var t = {};
|
|
282
|
+
|
|
269
283
|
for (var p in s) {
|
|
270
284
|
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
271
285
|
}
|
|
286
|
+
|
|
272
287
|
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
273
288
|
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
274
289
|
}
|
|
275
290
|
return t;
|
|
276
291
|
};
|
|
292
|
+
|
|
277
293
|
Object.defineProperty(exports, "__esModule", {
|
|
278
294
|
value: true
|
|
279
295
|
});
|
|
280
296
|
exports.config = exports.themes = exports.computeVizProps = void 0;
|
|
281
|
-
|
|
282
|
-
// Charting imports i18n which needs to be run to instantiate window globals in the tests
|
|
297
|
+
|
|
298
|
+
var lodash_1 = __webpack_require__(3); // Charting imports i18n which needs to be run to instantiate window globals in the tests
|
|
283
299
|
// eslint-disable-next-line import/order
|
|
300
|
+
|
|
301
|
+
|
|
284
302
|
var Charting_1 = __webpack_require__(65);
|
|
303
|
+
|
|
285
304
|
var charting_bundle_1 = __webpack_require__(55);
|
|
305
|
+
|
|
286
306
|
var simpleXMLOptions_1 = __webpack_require__(70);
|
|
307
|
+
|
|
287
308
|
var config_1 = __webpack_require__(465);
|
|
309
|
+
|
|
288
310
|
exports.config = config_1.default;
|
|
289
|
-
|
|
311
|
+
|
|
312
|
+
var withDashboardViz_1 = __webpack_require__(37);
|
|
313
|
+
|
|
290
314
|
var scatterUtils_1 = __webpack_require__(466);
|
|
291
|
-
|
|
315
|
+
|
|
316
|
+
var chartingUtils_1 = __webpack_require__(57);
|
|
317
|
+
|
|
292
318
|
var validOptions = Object.keys(config_1.default.optionsSchema);
|
|
319
|
+
|
|
293
320
|
var computeVizProps = function computeVizProps(_a) {
|
|
294
321
|
var dataSources = _a.dataSources,
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
322
|
+
onEventTrigger = _a.onEventTrigger,
|
|
323
|
+
visualizationApiRef = _a.visualizationApiRef,
|
|
324
|
+
_a$x = _a.x,
|
|
325
|
+
x = _a$x === void 0 ? [] : _a$x,
|
|
326
|
+
_a$y = _a.y,
|
|
327
|
+
y = _a$y === void 0 ? [] : _a$y,
|
|
328
|
+
category = _a.category,
|
|
329
|
+
xField = _a.xField,
|
|
330
|
+
yField = _a.yField,
|
|
331
|
+
categoryField = _a.categoryField,
|
|
332
|
+
otherOptions = __rest(_a, ["dataSources", "onEventTrigger", "visualizationApiRef", "x", "y", "category", "xField", "yField", "categoryField"]); // options to be passed as props
|
|
333
|
+
|
|
334
|
+
|
|
306
335
|
var computedProps = {
|
|
307
336
|
visualizationApiRef: visualizationApiRef
|
|
308
337
|
};
|
|
@@ -319,19 +348,24 @@ var computeVizProps = function computeVizProps(_a) {
|
|
|
319
348
|
}, {
|
|
320
349
|
name: yField
|
|
321
350
|
}];
|
|
351
|
+
|
|
322
352
|
if (category && categoryField) {
|
|
323
353
|
columns.unshift(category.map(String));
|
|
324
354
|
fields.unshift({
|
|
325
355
|
name: categoryField
|
|
326
356
|
});
|
|
327
357
|
}
|
|
358
|
+
|
|
328
359
|
primaryData.columns = columns;
|
|
329
360
|
primaryData.fields = fields;
|
|
330
361
|
var truncationLimit = computedProps.options['chart.resultTruncationLimit'];
|
|
362
|
+
|
|
331
363
|
if (truncationLimit) {
|
|
332
364
|
primaryData = (0, chartingUtils_1.truncateData)(primaryData, truncationLimit);
|
|
333
365
|
}
|
|
366
|
+
|
|
334
367
|
computedProps.chartData = charting_bundle_1.default.extractChartReadyData(Object.assign({}, primaryData));
|
|
368
|
+
|
|
335
369
|
if (hasEventHandlers) {
|
|
336
370
|
computedProps.onClick = function (event) {
|
|
337
371
|
onEventTrigger(Object.assign(Object.assign({}, event), {
|
|
@@ -341,8 +375,10 @@ var computeVizProps = function computeVizProps(_a) {
|
|
|
341
375
|
}));
|
|
342
376
|
};
|
|
343
377
|
}
|
|
378
|
+
|
|
344
379
|
return computedProps;
|
|
345
380
|
};
|
|
381
|
+
|
|
346
382
|
exports.computeVizProps = computeVizProps;
|
|
347
383
|
var Column = (0, withDashboardViz_1.default)({
|
|
348
384
|
ReactViz: Charting_1.default,
|
|
@@ -390,24 +426,33 @@ module.exports = require("@splunk/ui-utils/i18n");
|
|
|
390
426
|
|
|
391
427
|
|
|
392
428
|
var _toConsumableArray = __webpack_require__(8);
|
|
429
|
+
|
|
393
430
|
var _defineProperty = __webpack_require__(7);
|
|
431
|
+
|
|
394
432
|
var __rest = this && this.__rest || function (s, e) {
|
|
395
433
|
var t = {};
|
|
434
|
+
|
|
396
435
|
for (var p in s) {
|
|
397
436
|
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
398
437
|
}
|
|
438
|
+
|
|
399
439
|
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
400
440
|
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
401
441
|
}
|
|
402
442
|
return t;
|
|
403
443
|
};
|
|
444
|
+
|
|
404
445
|
Object.defineProperty(exports, "__esModule", {
|
|
405
446
|
value: true
|
|
406
447
|
});
|
|
407
448
|
exports.insertLayout = exports.isDynamicOption = exports.uncollapseEditorConfig = exports.generatePrecisionValues = exports.getInitialPreset = exports.enhanceOptionsSchemaWithDynamicOptions = exports.enhanceConfig = void 0;
|
|
449
|
+
|
|
408
450
|
var lodash_1 = __webpack_require__(3);
|
|
451
|
+
|
|
409
452
|
var schemaUtils_1 = __webpack_require__(16);
|
|
453
|
+
|
|
410
454
|
var VizBehavior_1 = __webpack_require__(6);
|
|
455
|
+
|
|
411
456
|
var dynamicOptionsDSLType = {
|
|
412
457
|
type: 'string',
|
|
413
458
|
pattern: schemaUtils_1.DYNAMIC_OPTIONS_DSL_PATTERN
|
|
@@ -417,20 +462,22 @@ var dynamicOptionsDSLType = {
|
|
|
417
462
|
* @param optionsSchema a visualization's options schema
|
|
418
463
|
* @returns an updated options schema that additionally allows strings starting with > for each option
|
|
419
464
|
*/
|
|
465
|
+
|
|
420
466
|
function enhanceOptionsSchemaWithDynamicOptions(optionsSchema) {
|
|
421
467
|
var enhancedOptionsSchema = {};
|
|
422
468
|
Object.keys(optionsSchema).forEach(function (key) {
|
|
423
469
|
var _a = optionsSchema[key],
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
470
|
+
title = _a.title,
|
|
471
|
+
description = _a.description,
|
|
472
|
+
readOnly = _a.readOnly,
|
|
473
|
+
writeOnly = _a.writeOnly,
|
|
474
|
+
examples = _a.examples,
|
|
475
|
+
defaultValue = _a.default,
|
|
476
|
+
type = _a.type,
|
|
477
|
+
properties = _a.properties,
|
|
478
|
+
patternProperties = _a.patternProperties,
|
|
479
|
+
remainingSchemaEntry = __rest(_a, ["title", "description", "readOnly", "writeOnly", "examples", "default", "type", "properties", "patternProperties"]);
|
|
480
|
+
|
|
434
481
|
var annotations = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, title !== undefined && {
|
|
435
482
|
title: title
|
|
436
483
|
}), description !== undefined && {
|
|
@@ -444,12 +491,14 @@ function enhanceOptionsSchemaWithDynamicOptions(optionsSchema) {
|
|
|
444
491
|
}), defaultValue !== undefined && {
|
|
445
492
|
default: defaultValue
|
|
446
493
|
});
|
|
494
|
+
|
|
447
495
|
if (type === 'object') {
|
|
448
496
|
enhancedOptionsSchema[key] = Object.assign(Object.assign(Object.assign(Object.assign({}, remainingSchemaEntry), annotations), {
|
|
449
497
|
type: type
|
|
450
498
|
}), properties && {
|
|
451
499
|
properties: enhanceOptionsSchemaWithDynamicOptions(properties)
|
|
452
500
|
});
|
|
501
|
+
|
|
453
502
|
if (patternProperties) {
|
|
454
503
|
var enhancedPatternProperties = {};
|
|
455
504
|
Object.keys(patternProperties).forEach(function (opt) {
|
|
@@ -467,6 +516,7 @@ function enhanceOptionsSchemaWithDynamicOptions(optionsSchema) {
|
|
|
467
516
|
});
|
|
468
517
|
return enhancedOptionsSchema;
|
|
469
518
|
}
|
|
519
|
+
|
|
470
520
|
exports.enhanceOptionsSchemaWithDynamicOptions = enhanceOptionsSchemaWithDynamicOptions;
|
|
471
521
|
/**
|
|
472
522
|
* Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block
|
|
@@ -475,11 +525,14 @@ exports.enhanceOptionsSchemaWithDynamicOptions = enhanceOptionsSchemaWithDynamic
|
|
|
475
525
|
* @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports
|
|
476
526
|
* and containing `open: false` for all editor panels in editorConfig
|
|
477
527
|
*/
|
|
528
|
+
|
|
478
529
|
function enhanceConfig(vizConfig) {
|
|
479
530
|
var enhancedConfig = Object.assign({}, vizConfig);
|
|
531
|
+
|
|
480
532
|
if (vizConfig.supports.indexOf(VizBehavior_1.VizBehavior.DYNAMIC_OPTIONS) !== -1) {
|
|
481
533
|
enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);
|
|
482
534
|
}
|
|
535
|
+
|
|
483
536
|
enhancedConfig.editorConfig = vizConfig.editorConfig.map(function (config) {
|
|
484
537
|
return Object.assign(Object.assign({}, config), {
|
|
485
538
|
open: config.open || false
|
|
@@ -487,6 +540,7 @@ function enhanceConfig(vizConfig) {
|
|
|
487
540
|
});
|
|
488
541
|
return enhancedConfig;
|
|
489
542
|
}
|
|
543
|
+
|
|
490
544
|
exports.enhanceConfig = enhanceConfig;
|
|
491
545
|
/**
|
|
492
546
|
* Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig
|
|
@@ -494,6 +548,7 @@ exports.enhanceConfig = enhanceConfig;
|
|
|
494
548
|
* @param vizConfig a Visualization Config
|
|
495
549
|
* @returns a Visualization Config containing `open: true` for all editor panels in editorConfig
|
|
496
550
|
*/
|
|
551
|
+
|
|
497
552
|
function uncollapseEditorConfig(vizConfig) {
|
|
498
553
|
var editorPanelUncollapsedConfig = Object.assign({}, vizConfig);
|
|
499
554
|
editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(function (config) {
|
|
@@ -503,13 +558,16 @@ function uncollapseEditorConfig(vizConfig) {
|
|
|
503
558
|
});
|
|
504
559
|
return editorPanelUncollapsedConfig;
|
|
505
560
|
}
|
|
561
|
+
|
|
506
562
|
exports.uncollapseEditorConfig = uncollapseEditorConfig;
|
|
563
|
+
|
|
507
564
|
function isDynamicOption(option) {
|
|
508
565
|
return option && typeof option === 'string' && option.trim().startsWith('>') || false;
|
|
509
566
|
}
|
|
510
|
-
|
|
511
|
-
// private helpers to improve readability of getInitialPreset
|
|
567
|
+
|
|
568
|
+
exports.isDynamicOption = isDynamicOption; // private helpers to improve readability of getInitialPreset
|
|
512
569
|
// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset
|
|
570
|
+
|
|
513
571
|
/**
|
|
514
572
|
* this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset
|
|
515
573
|
* 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
|
|
@@ -518,6 +576,7 @@ exports.isDynamicOption = isDynamicOption;
|
|
|
518
576
|
*
|
|
519
577
|
* Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values
|
|
520
578
|
*/
|
|
579
|
+
|
|
521
580
|
function hasCompatibleContexts(vizContext, presetContext) {
|
|
522
581
|
var presetContextKeys = Object.keys(presetContext);
|
|
523
582
|
return presetContextKeys.every(function (contextKey) {
|
|
@@ -527,6 +586,8 @@ function hasCompatibleContexts(vizContext, presetContext) {
|
|
|
527
586
|
/**
|
|
528
587
|
* Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions
|
|
529
588
|
*/
|
|
589
|
+
|
|
590
|
+
|
|
530
591
|
function hasCompatibleOptions(vizOptions, presetOptions) {
|
|
531
592
|
var presetOptionKeys = Object.keys(presetOptions);
|
|
532
593
|
return presetOptionKeys.every(function (optionKey) {
|
|
@@ -541,18 +602,21 @@ function hasCompatibleOptions(vizOptions, presetOptions) {
|
|
|
541
602
|
* @param {Object} vizOptions - the current vizOptions definition
|
|
542
603
|
* @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset
|
|
543
604
|
*/
|
|
605
|
+
|
|
606
|
+
|
|
544
607
|
function getInitialPreset(vizContext, vizOptions, presets) {
|
|
545
608
|
return presets.find(function (preset) {
|
|
546
609
|
var presetContext = (0, lodash_1.get)(preset, ['value', 'context'], {});
|
|
547
610
|
var presetOptions = (0, lodash_1.get)(preset, ['value', 'options'], {});
|
|
548
611
|
var presetContextKeys = Object.keys(presetContext);
|
|
549
|
-
var presetOptionKeys = Object.keys(presetOptions);
|
|
550
|
-
// all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)
|
|
612
|
+
var presetOptionKeys = Object.keys(presetOptions); // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)
|
|
551
613
|
// if not, then the preset is invalid in config.ts
|
|
614
|
+
|
|
552
615
|
if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;
|
|
553
616
|
return hasCompatibleContexts(vizContext, presetContext) && hasCompatibleOptions(vizOptions, presetOptions);
|
|
554
617
|
});
|
|
555
618
|
}
|
|
619
|
+
|
|
556
620
|
exports.getInitialPreset = getInitialPreset;
|
|
557
621
|
/**
|
|
558
622
|
* generates number precision values for a Select editor
|
|
@@ -560,6 +624,7 @@ exports.getInitialPreset = getInitialPreset;
|
|
|
560
624
|
* @param {Number} numPrecisionValues - number of integer precision values to generate
|
|
561
625
|
* @returns {{ label: string; value; string }[]} array of { label, value } tuples
|
|
562
626
|
*/
|
|
627
|
+
|
|
563
628
|
function generatePrecisionValues(numPrecisionValues) {
|
|
564
629
|
return (0, lodash_1.range)(0, numPrecisionValues + 1).map(function (i) {
|
|
565
630
|
return {
|
|
@@ -568,6 +633,7 @@ function generatePrecisionValues(numPrecisionValues) {
|
|
|
568
633
|
};
|
|
569
634
|
});
|
|
570
635
|
}
|
|
636
|
+
|
|
571
637
|
exports.generatePrecisionValues = generatePrecisionValues;
|
|
572
638
|
/**
|
|
573
639
|
* insert layout in layout array, return a new layout array instead of updating the original
|
|
@@ -577,12 +643,15 @@ exports.generatePrecisionValues = generatePrecisionValues;
|
|
|
577
643
|
* @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert
|
|
578
644
|
* @returns {EditorLayoutConfig[][]} new editor layout with insertion
|
|
579
645
|
*/
|
|
646
|
+
|
|
580
647
|
var insertLayout = function insertLayout(layout, index) {
|
|
581
648
|
for (var _len = arguments.length, layoutItems = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
|
|
582
649
|
layoutItems[_key - 2] = arguments[_key];
|
|
583
650
|
}
|
|
651
|
+
|
|
584
652
|
return [].concat(_toConsumableArray(layout.slice(0, index)), layoutItems, _toConsumableArray(layout.slice(index)));
|
|
585
653
|
};
|
|
654
|
+
|
|
586
655
|
exports.insertLayout = insertLayout;
|
|
587
656
|
|
|
588
657
|
/***/ }),
|
|
@@ -660,11 +729,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
660
729
|
value: true
|
|
661
730
|
});
|
|
662
731
|
exports.shouldShowIconPlaceholder = void 0;
|
|
732
|
+
|
|
663
733
|
var React = __webpack_require__(1);
|
|
734
|
+
|
|
664
735
|
var T = __webpack_require__(0);
|
|
736
|
+
|
|
665
737
|
var lodash_1 = __webpack_require__(3);
|
|
738
|
+
|
|
666
739
|
var i18n_1 = __webpack_require__(2);
|
|
740
|
+
|
|
667
741
|
var Message_1 = __webpack_require__(10);
|
|
742
|
+
|
|
668
743
|
var FixedSizeContainer_1 = __webpack_require__(13);
|
|
669
744
|
/**
|
|
670
745
|
* @method shouldShowIconPlaceholder
|
|
@@ -672,6 +747,8 @@ var FixedSizeContainer_1 = __webpack_require__(13);
|
|
|
672
747
|
* @param {boolean} loading
|
|
673
748
|
* @returns {boolean}
|
|
674
749
|
*/
|
|
750
|
+
|
|
751
|
+
|
|
675
752
|
var shouldShowIconPlaceholder = function shouldShowIconPlaceholder(dataSources) {
|
|
676
753
|
var loading = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
677
754
|
var data = (0, lodash_1.get)(dataSources, 'primary.data.columns[0]', undefined);
|
|
@@ -680,6 +757,7 @@ var shouldShowIconPlaceholder = function shouldShowIconPlaceholder(dataSources)
|
|
|
680
757
|
var noFields = fields === undefined;
|
|
681
758
|
return loading || noData || noFields;
|
|
682
759
|
};
|
|
760
|
+
|
|
683
761
|
exports.shouldShowIconPlaceholder = shouldShowIconPlaceholder;
|
|
684
762
|
var propTypes = {
|
|
685
763
|
icon: T.func,
|
|
@@ -694,11 +772,13 @@ var propTypes = {
|
|
|
694
772
|
* @param {IconPlaceholderProps} props
|
|
695
773
|
* @returns {React.ReactElement}
|
|
696
774
|
*/
|
|
775
|
+
|
|
697
776
|
var IconPlaceholder = function IconPlaceholder(props) {
|
|
698
777
|
var width = props.width,
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
778
|
+
height = props.height,
|
|
779
|
+
icon = props.icon,
|
|
780
|
+
iconColor = props.iconColor;
|
|
781
|
+
|
|
702
782
|
if (icon) {
|
|
703
783
|
return React.createElement(icon, {
|
|
704
784
|
style: {
|
|
@@ -710,9 +790,11 @@ var IconPlaceholder = function IconPlaceholder(props) {
|
|
|
710
790
|
transform: 'translate(-50%, -50%)'
|
|
711
791
|
},
|
|
712
792
|
width: '50%',
|
|
713
|
-
height: '50%'
|
|
793
|
+
height: '50%',
|
|
794
|
+
'data-test': 'icon-placeholder'
|
|
714
795
|
});
|
|
715
796
|
}
|
|
797
|
+
|
|
716
798
|
return React.createElement(Message_1.default, {
|
|
717
799
|
width: width,
|
|
718
800
|
height: height,
|
|
@@ -720,6 +802,7 @@ var IconPlaceholder = function IconPlaceholder(props) {
|
|
|
720
802
|
message: (0, i18n_1._)('No DataSource Connected')
|
|
721
803
|
});
|
|
722
804
|
};
|
|
805
|
+
|
|
723
806
|
IconPlaceholder.propTypes = propTypes;
|
|
724
807
|
IconPlaceholder.defaultProps = {
|
|
725
808
|
width: '100%',
|
|
@@ -736,21 +819,27 @@ exports.default = (0, FixedSizeContainer_1.default)(IconPlaceholder);
|
|
|
736
819
|
|
|
737
820
|
|
|
738
821
|
var _defineProperty = __webpack_require__(7);
|
|
822
|
+
|
|
739
823
|
Object.defineProperty(exports, "__esModule", {
|
|
740
824
|
value: true
|
|
741
825
|
});
|
|
742
826
|
exports.getSortingParams = exports.SortParamsPropTypes = void 0;
|
|
827
|
+
|
|
743
828
|
var T = __webpack_require__(0);
|
|
829
|
+
|
|
744
830
|
var lodash_1 = __webpack_require__(3);
|
|
745
|
-
|
|
831
|
+
|
|
832
|
+
var DataSource_1 = __webpack_require__(34);
|
|
833
|
+
|
|
746
834
|
exports.SortParamsPropTypes = T.shape({
|
|
747
835
|
currentSortKey: T.string,
|
|
748
836
|
currentSortDir: T.oneOf(DataSource_1.validSortDirs),
|
|
749
837
|
onSort: T.func
|
|
750
838
|
});
|
|
839
|
+
|
|
751
840
|
var getSortingParams = function getSortingParams(_ref) {
|
|
752
841
|
var requestParams = _ref.requestParams,
|
|
753
|
-
|
|
842
|
+
onRequestParamsChange = _ref.onRequestParamsChange;
|
|
754
843
|
var currentSortKey;
|
|
755
844
|
var currentSortDir;
|
|
756
845
|
var nextSortDirMap = {
|
|
@@ -759,15 +848,18 @@ var getSortingParams = function getSortingParams(_ref) {
|
|
|
759
848
|
none: 'asc'
|
|
760
849
|
};
|
|
761
850
|
var onSort;
|
|
851
|
+
|
|
762
852
|
if (typeof onRequestParamsChange === 'function') {
|
|
763
853
|
if (requestParams && (0, lodash_1.has)(requestParams, 'sort')) {
|
|
764
854
|
currentSortKey = Object.keys(requestParams.sort).shift();
|
|
765
855
|
currentSortDir = requestParams.sort[currentSortKey];
|
|
766
|
-
}
|
|
767
|
-
|
|
856
|
+
} // undid memoization since there is a dependency on requestParams, which is a deeply nested object
|
|
857
|
+
|
|
858
|
+
|
|
768
859
|
onSort = function onSort(e, _ref2) {
|
|
769
860
|
var sortKey = _ref2.sortKey,
|
|
770
|
-
|
|
861
|
+
sortDir = _ref2.sortDir;
|
|
862
|
+
|
|
771
863
|
if (typeof sortKey === 'string') {
|
|
772
864
|
var nextSortDir = (0, lodash_1.has)(nextSortDirMap, sortDir) ? nextSortDirMap[sortDir] : 'none';
|
|
773
865
|
onRequestParamsChange(Object.assign(Object.assign({}, requestParams), {
|
|
@@ -779,12 +871,14 @@ var getSortingParams = function getSortingParams(_ref) {
|
|
|
779
871
|
}
|
|
780
872
|
};
|
|
781
873
|
}
|
|
874
|
+
|
|
782
875
|
return {
|
|
783
876
|
currentSortKey: currentSortKey,
|
|
784
877
|
currentSortDir: currentSortDir,
|
|
785
878
|
onSort: onSort
|
|
786
879
|
};
|
|
787
880
|
};
|
|
881
|
+
|
|
788
882
|
exports.getSortingParams = getSortingParams;
|
|
789
883
|
|
|
790
884
|
/***/ }),
|
|
@@ -795,43 +889,69 @@ exports.getSortingParams = getSortingParams;
|
|
|
795
889
|
"use strict";
|
|
796
890
|
|
|
797
891
|
|
|
892
|
+
Object.defineProperty(exports, "__esModule", {
|
|
893
|
+
value: true
|
|
894
|
+
});
|
|
895
|
+
exports.validOutputModes = exports.validSegmentationModes = exports.validSortDirs = void 0;
|
|
896
|
+
exports.validSortDirs = ['asc', 'desc', 'none'];
|
|
897
|
+
exports.validSegmentationModes = ['none', 'inner'];
|
|
898
|
+
exports.validOutputModes = ['json_cols', 'json'];
|
|
899
|
+
|
|
900
|
+
/***/ }),
|
|
901
|
+
|
|
902
|
+
/***/ 35:
|
|
903
|
+
/***/ (function(module, exports, __webpack_require__) {
|
|
904
|
+
|
|
905
|
+
"use strict";
|
|
906
|
+
|
|
907
|
+
|
|
798
908
|
Object.defineProperty(exports, "__esModule", {
|
|
799
909
|
value: true
|
|
800
910
|
});
|
|
801
911
|
exports.getPaginationParams = exports.PaginatorParamsPropTypes = void 0;
|
|
912
|
+
|
|
802
913
|
var T = __webpack_require__(0);
|
|
914
|
+
|
|
803
915
|
var lodash_1 = __webpack_require__(3);
|
|
916
|
+
|
|
804
917
|
exports.PaginatorParamsPropTypes = T.shape({
|
|
805
918
|
isPaging: T.bool,
|
|
806
919
|
current: T.number,
|
|
807
920
|
totalPages: T.number,
|
|
808
921
|
onChange: T.func
|
|
809
922
|
});
|
|
923
|
+
|
|
810
924
|
var getPaginationParams = function getPaginationParams(_ref) {
|
|
811
925
|
var requestParams = _ref.requestParams,
|
|
812
|
-
|
|
813
|
-
|
|
926
|
+
meta = _ref.meta,
|
|
927
|
+
onRequestParamsChange = _ref.onRequestParamsChange;
|
|
814
928
|
var totalCount = meta && meta.totalCount || 0;
|
|
815
929
|
var offset = requestParams && requestParams.offset || 0;
|
|
816
930
|
var count = requestParams && requestParams.count;
|
|
817
931
|
var totalPages = typeof count === 'number' && count > 0 ? Math.ceil(totalCount / count) : 0;
|
|
818
932
|
var current = typeof count === 'number' && count > 0 ? Math.floor(offset / count) + 1 : 0;
|
|
819
933
|
var isPaging = totalPages > 1 && typeof onRequestParamsChange === 'function';
|
|
934
|
+
|
|
820
935
|
var onChangeHandler = function onChangeHandler(e, _ref2) {
|
|
821
936
|
var page = _ref2.page,
|
|
822
|
-
|
|
937
|
+
countArg = _ref2.count;
|
|
823
938
|
var newParams = (0, lodash_1.cloneDeep)(requestParams);
|
|
939
|
+
|
|
824
940
|
if (typeof countArg === 'number') {
|
|
825
941
|
newParams.count = countArg;
|
|
826
942
|
newParams.offset = 0;
|
|
827
943
|
}
|
|
944
|
+
|
|
828
945
|
var pageCount = typeof newParams.count === 'number' ? newParams.count : 10;
|
|
946
|
+
|
|
829
947
|
if (typeof page === 'number' && page > 0) {
|
|
830
948
|
newParams.count = pageCount;
|
|
831
949
|
newParams.offset = (page - 1) * pageCount;
|
|
832
950
|
}
|
|
951
|
+
|
|
833
952
|
onRequestParamsChange(newParams);
|
|
834
953
|
};
|
|
954
|
+
|
|
835
955
|
return {
|
|
836
956
|
isPaging: isPaging,
|
|
837
957
|
current: current,
|
|
@@ -839,11 +959,12 @@ var getPaginationParams = function getPaginationParams(_ref) {
|
|
|
839
959
|
onChange: typeof onRequestParamsChange === 'function' ? onChangeHandler : lodash_1.noop
|
|
840
960
|
};
|
|
841
961
|
};
|
|
962
|
+
|
|
842
963
|
exports.getPaginationParams = getPaginationParams;
|
|
843
964
|
|
|
844
965
|
/***/ }),
|
|
845
966
|
|
|
846
|
-
/***/
|
|
967
|
+
/***/ 36:
|
|
847
968
|
/***/ (function(module, exports, __webpack_require__) {
|
|
848
969
|
|
|
849
970
|
"use strict";
|
|
@@ -854,6 +975,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
854
975
|
});
|
|
855
976
|
exports.VizCategory = void 0;
|
|
856
977
|
var VizCategory;
|
|
978
|
+
|
|
857
979
|
(function (VizCategory) {
|
|
858
980
|
VizCategory["SINGLE_VALUE"] = "Single Value";
|
|
859
981
|
VizCategory["TRENDS"] = "Trends";
|
|
@@ -871,67 +993,96 @@ var VizCategory;
|
|
|
871
993
|
|
|
872
994
|
/***/ }),
|
|
873
995
|
|
|
874
|
-
/***/
|
|
996
|
+
/***/ 37:
|
|
875
997
|
/***/ (function(module, exports, __webpack_require__) {
|
|
876
998
|
|
|
877
999
|
"use strict";
|
|
878
1000
|
|
|
879
1001
|
|
|
880
1002
|
var _slicedToArray = __webpack_require__(17);
|
|
1003
|
+
|
|
881
1004
|
Object.defineProperty(exports, "__esModule", {
|
|
882
1005
|
value: true
|
|
883
1006
|
});
|
|
1007
|
+
|
|
884
1008
|
var React = __webpack_require__(1);
|
|
1009
|
+
|
|
885
1010
|
var lodash_1 = __webpack_require__(3);
|
|
886
|
-
|
|
1011
|
+
|
|
1012
|
+
var getSettingsFromThemedProps_1 = __webpack_require__(38);
|
|
1013
|
+
|
|
887
1014
|
var Options_1 = __webpack_require__(30);
|
|
888
|
-
|
|
1015
|
+
|
|
1016
|
+
var SanitizeProps_1 = __webpack_require__(39);
|
|
1017
|
+
|
|
889
1018
|
var TimezoneContext_1 = __webpack_require__(26);
|
|
890
|
-
|
|
1019
|
+
|
|
1020
|
+
var moment_1 = __webpack_require__(40);
|
|
1021
|
+
|
|
891
1022
|
var FeatureFlagContext_1 = __webpack_require__(21);
|
|
1023
|
+
|
|
892
1024
|
var styled_components_1 = __webpack_require__(4);
|
|
1025
|
+
|
|
893
1026
|
var hocUtils_1 = __webpack_require__(27);
|
|
1027
|
+
|
|
894
1028
|
var JSONSchemaUtils_1 = __webpack_require__(28);
|
|
895
|
-
|
|
1029
|
+
|
|
1030
|
+
var async_dynamic_options_evaluator_1 = __webpack_require__(41);
|
|
1031
|
+
|
|
896
1032
|
var id_1 = __webpack_require__(25);
|
|
897
|
-
|
|
1033
|
+
|
|
1034
|
+
var SplunkVisualization_1 = __webpack_require__(42);
|
|
1035
|
+
|
|
898
1036
|
var VizBehavior_1 = __webpack_require__(6);
|
|
1037
|
+
|
|
899
1038
|
var getSorting_1 = __webpack_require__(33);
|
|
900
|
-
|
|
1039
|
+
|
|
1040
|
+
var getPagination_1 = __webpack_require__(35);
|
|
1041
|
+
|
|
901
1042
|
var useDeepMemo_1 = __webpack_require__(44);
|
|
1043
|
+
|
|
902
1044
|
var MissingPropsMessage_1 = __webpack_require__(45);
|
|
1045
|
+
|
|
903
1046
|
var withEditModeCover_1 = __webpack_require__(46);
|
|
1047
|
+
|
|
904
1048
|
var withPlaceholder_1 = __webpack_require__(47);
|
|
905
1049
|
/**
|
|
906
1050
|
* hoc that wraps a pure react visualization in a Dashboard visualization
|
|
907
1051
|
* @param {DashboardVizOpts} opts
|
|
908
1052
|
* @returns {HOC}
|
|
909
1053
|
*/
|
|
1054
|
+
|
|
1055
|
+
|
|
910
1056
|
var withDashboardViz = function withDashboardViz(opts) {
|
|
911
1057
|
var ReactViz = opts.ReactViz,
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
1058
|
+
vizConfig = opts.vizConfig,
|
|
1059
|
+
_opts$computeVizProps = opts.computeVizProps,
|
|
1060
|
+
computeVizProps = _opts$computeVizProps === void 0 ? function () {} : _opts$computeVizProps,
|
|
1061
|
+
disableEditModeCover = opts.disableEditModeCover,
|
|
1062
|
+
useIconPlaceholder = opts.useIconPlaceholder; // sanitizing props before sending them to reactviz.
|
|
1063
|
+
|
|
917
1064
|
var SanitizedReactViz = (0, SanitizeProps_1.withSanitizedProps)(ReactViz);
|
|
918
1065
|
var defaultOptions = (0, JSONSchemaUtils_1.pickFieldFromJSONSchema)(vizConfig.optionsSchema, 'default');
|
|
1066
|
+
|
|
919
1067
|
var DashboardViz = function DashboardViz(props) {
|
|
920
1068
|
var _a;
|
|
1069
|
+
|
|
921
1070
|
var mode = props.mode,
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
1071
|
+
hasEventHandlers = props.hasEventHandlers,
|
|
1072
|
+
dataSources = props.dataSources,
|
|
1073
|
+
options = props.options,
|
|
1074
|
+
_props$context = props.context,
|
|
1075
|
+
context = _props$context === void 0 ? {} : _props$context,
|
|
1076
|
+
width = props.width,
|
|
1077
|
+
height = props.height,
|
|
1078
|
+
onComputedProps = props.onComputedProps,
|
|
1079
|
+
onEventTrigger = props.onEventTrigger,
|
|
1080
|
+
theme = props.theme,
|
|
1081
|
+
onRequestParamsChange = props.onRequestParamsChange;
|
|
1082
|
+
|
|
933
1083
|
var _React$useContext = React.useContext(TimezoneContext_1.default),
|
|
934
|
-
|
|
1084
|
+
serializedTimezone = _React$useContext.serializedTimezone;
|
|
1085
|
+
|
|
935
1086
|
if (serializedTimezone) {
|
|
936
1087
|
/*
|
|
937
1088
|
@splunk/moment currently does not allow us to customize the timezone on a per visualization basis.
|
|
@@ -945,38 +1096,51 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
945
1096
|
moment_1.default.setDefaultSplunkTimezone(serializedTimezone);
|
|
946
1097
|
}
|
|
947
1098
|
}
|
|
1099
|
+
|
|
948
1100
|
var themeFunc = function themeFunc(themeVar) {
|
|
949
1101
|
var _a, _b;
|
|
1102
|
+
|
|
950
1103
|
return (_b = (_a = vizConfig.themes)[themeVar]) === null || _b === void 0 ? void 0 : _b.call(_a, props);
|
|
951
1104
|
};
|
|
1105
|
+
|
|
952
1106
|
var bgColorFromTheme = themeFunc('defaultBackgroundColor');
|
|
1107
|
+
|
|
953
1108
|
var _ref = (0, getSettingsFromThemedProps_1.default)({
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
1109
|
+
theme: theme
|
|
1110
|
+
}),
|
|
1111
|
+
currentThemeFamily = _ref.family,
|
|
1112
|
+
currentThemeColorScheme = _ref.colorScheme,
|
|
1113
|
+
currentThemeDensity = _ref.density;
|
|
1114
|
+
|
|
959
1115
|
var evaluatedOptions = {}; // evaluatedOptions need to be initialized as an empty object
|
|
1116
|
+
|
|
960
1117
|
var _React$useState = React.useState({}),
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
1118
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
1119
|
+
evaluatedOptionsAsync = _React$useState2[0],
|
|
1120
|
+
setEvaluatedOptionsAsync = _React$useState2[1]; // evaluatedOptions need to be initialized as an empty object
|
|
1121
|
+
|
|
1122
|
+
|
|
964
1123
|
var featureFlagContext = React.useContext(FeatureFlagContext_1.default);
|
|
1124
|
+
|
|
965
1125
|
var _React$useState3 = React.useState("".concat(vizConfig.name, " - ").concat((0, id_1.createGUID)())),
|
|
966
|
-
|
|
967
|
-
|
|
1126
|
+
_React$useState4 = _slicedToArray(_React$useState3, 1),
|
|
1127
|
+
visualizationID = _React$useState4[0];
|
|
1128
|
+
|
|
968
1129
|
var _React$useState5 = React.useState({}),
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
1130
|
+
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
1131
|
+
dataSourcesInState = _React$useState6[0],
|
|
1132
|
+
setDataSourcesInState = _React$useState6[1];
|
|
1133
|
+
|
|
972
1134
|
var _React$useState7 = React.useState(),
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
1135
|
+
_React$useState8 = _slicedToArray(_React$useState7, 2),
|
|
1136
|
+
dataFramesInState = _React$useState8[0],
|
|
1137
|
+
setDataFramesInState = _React$useState8[1];
|
|
1138
|
+
|
|
976
1139
|
var _React$useState9 = React.useState(Boolean(featureFlagContext === null || featureFlagContext === void 0 ? void 0 : featureFlagContext.visualizations_useWebWorkersForDSL)),
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
1140
|
+
_React$useState10 = _slicedToArray(_React$useState9, 2),
|
|
1141
|
+
useAsyncEvaluatedOptions = _React$useState10[0],
|
|
1142
|
+
setUseAsyncEvaluatedOptions = _React$useState10[1];
|
|
1143
|
+
|
|
980
1144
|
var isMounted = React.useRef(true);
|
|
981
1145
|
evaluatedOptions = (0, useDeepMemo_1.useDeepMemo)(function () {
|
|
982
1146
|
try {
|
|
@@ -1001,11 +1165,13 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
1001
1165
|
});
|
|
1002
1166
|
} else {
|
|
1003
1167
|
var dataFrames = dataFramesInState;
|
|
1168
|
+
|
|
1004
1169
|
if (dataSources !== dataSourcesInState) {
|
|
1005
1170
|
setDataSourcesInState(dataSources);
|
|
1006
1171
|
dataFrames = Options_1.Options.dataFrameFromDataSource(dataSources);
|
|
1007
1172
|
setDataFramesInState(dataFrames);
|
|
1008
1173
|
}
|
|
1174
|
+
|
|
1009
1175
|
return Options_1.Options.evaluate({
|
|
1010
1176
|
context: (0, lodash_1.defaultsDeep)({}, context, vizConfig.defaultContext),
|
|
1011
1177
|
options: (0, hocUtils_1.deepMergeWithArrayPrimitiveOverrides)({}, options, defaultOptions)
|
|
@@ -1016,21 +1182,24 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
1016
1182
|
console.error("unexpected error evaluating options: ".concat(e.message));
|
|
1017
1183
|
return {};
|
|
1018
1184
|
}
|
|
1185
|
+
|
|
1019
1186
|
return {};
|
|
1020
1187
|
}, [currentThemeFamily, currentThemeColorScheme, currentThemeDensity, options, context, dataSources, serializedTimezone, useAsyncEvaluatedOptions]);
|
|
1021
|
-
var evaluatedOptionsToUse = !useAsyncEvaluatedOptions ? evaluatedOptions : evaluatedOptionsAsync;
|
|
1022
|
-
// trellis specific backgroundColor update for onComputedProps
|
|
1188
|
+
var evaluatedOptionsToUse = !useAsyncEvaluatedOptions ? evaluatedOptions : evaluatedOptionsAsync; // trellis specific backgroundColor update for onComputedProps
|
|
1023
1189
|
// if trellis is enabled following these three criteria - 1) trellis feature flag is enabled 2) vizConfig supports array has 'trellis' 3) option 'splitByLayout' is set to 'trellis
|
|
1024
1190
|
// onComputedProps api should return back trellisBackgroundColor value for backgroundColor option to support coloring of sibling panels (for eg:- title/ description on UDF side)
|
|
1191
|
+
|
|
1025
1192
|
var isTrellisFeatureFlagOn = Boolean(featureFlagContext && featureFlagContext.visualizations_enableTrellis);
|
|
1026
1193
|
var clonedEvaluatedOptions = evaluatedOptionsToUse;
|
|
1194
|
+
|
|
1027
1195
|
if (isTrellisFeatureFlagOn && ((_a = vizConfig === null || vizConfig === void 0 ? void 0 : vizConfig.supports) === null || _a === void 0 ? void 0 : _a.includes(VizBehavior_1.VizBehavior.TRELLIS)) && (clonedEvaluatedOptions === null || clonedEvaluatedOptions === void 0 ? void 0 : clonedEvaluatedOptions.splitByLayout) === VizBehavior_1.VizBehavior.TRELLIS) {
|
|
1028
1196
|
clonedEvaluatedOptions = Object.assign(Object.assign({}, evaluatedOptionsToUse), {
|
|
1029
1197
|
backgroundColor: clonedEvaluatedOptions === null || clonedEvaluatedOptions === void 0 ? void 0 : clonedEvaluatedOptions.trellisBackgroundColor
|
|
1030
1198
|
});
|
|
1031
|
-
}
|
|
1032
|
-
// useEffect hook needs to be initialized before any early returns
|
|
1199
|
+
} // useEffect hook needs to be initialized before any early returns
|
|
1033
1200
|
// this is in accordance with the order of hook calls being the same on each render https://reactjs.org/docs/hooks-rules.html#explanation
|
|
1201
|
+
|
|
1202
|
+
|
|
1034
1203
|
React.useEffect(function () {
|
|
1035
1204
|
onComputedProps(clonedEvaluatedOptions);
|
|
1036
1205
|
});
|
|
@@ -1040,53 +1209,68 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
1040
1209
|
isMounted.current = false;
|
|
1041
1210
|
async_dynamic_options_evaluator_1.default.reset(visualizationID);
|
|
1042
1211
|
}
|
|
1043
|
-
};
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
// present warning message if any required props are missing
|
|
1212
|
+
}; // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
1213
|
+
}, []); // present warning message if any required props are missing
|
|
1214
|
+
|
|
1047
1215
|
var _vizConfig$requiredPr = vizConfig.requiredProps,
|
|
1048
|
-
|
|
1049
|
-
|
|
1216
|
+
requiredProps = _vizConfig$requiredPr === void 0 ? [] : _vizConfig$requiredPr,
|
|
1217
|
+
supports = vizConfig.supports;
|
|
1050
1218
|
var missing = (0, MissingPropsMessage_1.missingKeys)(requiredProps, evaluatedOptionsToUse);
|
|
1219
|
+
|
|
1051
1220
|
if (missing.length > 0 && supports.includes(VizBehavior_1.VizBehavior.PLACEHOLDER) && vizConfig.key !== 'splunk.singlevalue' // For SV missing props msg is not displayed if required props majorValue is missing, instead this will be handled from the component, instead handled within component
|
|
1052
1221
|
) {
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1222
|
+
return React.createElement(MissingPropsMessage_1.default, {
|
|
1223
|
+
"data-test": "missing-props-message",
|
|
1224
|
+
width: width,
|
|
1225
|
+
height: height,
|
|
1226
|
+
missingProps: missing,
|
|
1227
|
+
backgroundColor: bgColorFromTheme
|
|
1228
|
+
});
|
|
1229
|
+
} // events
|
|
1230
|
+
|
|
1231
|
+
|
|
1062
1232
|
var eventCallbackProps = {};
|
|
1233
|
+
|
|
1063
1234
|
if (hasEventHandlers && mode === 'view' && vizConfig.supports.indexOf(VizBehavior_1.VizBehavior.EVENTS) > -1) {
|
|
1064
1235
|
var supportedEvents = vizConfig.events;
|
|
1065
1236
|
Object.keys(supportedEvents).forEach(function (eventName) {
|
|
1066
|
-
var
|
|
1067
|
-
|
|
1068
|
-
|
|
1237
|
+
var _supportedEvents$even = supportedEvents[eventName],
|
|
1238
|
+
parentKeys = _supportedEvents$even.parentKeys,
|
|
1239
|
+
payloadKeys = _supportedEvents$even.payloadKeys;
|
|
1240
|
+
var eventCallbackPropName = (0, lodash_1.camelCase)("on.".concat(eventName)); // todo: refactor single value and single value icon to send payload from viz
|
|
1069
1241
|
// then remove these lines
|
|
1070
|
-
|
|
1242
|
+
|
|
1071
1243
|
var payload = {};
|
|
1244
|
+
|
|
1072
1245
|
if (Array.isArray(payloadKeys) && payloadKeys.length) {
|
|
1073
1246
|
payloadKeys.forEach(function (p) {
|
|
1074
1247
|
payload[p] = evaluatedOptionsToUse[p];
|
|
1075
1248
|
});
|
|
1076
1249
|
}
|
|
1250
|
+
|
|
1077
1251
|
eventCallbackProps[eventCallbackPropName] = function (ev) {
|
|
1078
1252
|
if (ev && ev.payload) {
|
|
1079
1253
|
payload = ev.payload;
|
|
1080
1254
|
}
|
|
1255
|
+
|
|
1081
1256
|
return onEventTrigger({
|
|
1082
1257
|
originalEvent: ev,
|
|
1083
1258
|
payload: payload,
|
|
1084
1259
|
type: eventName
|
|
1085
1260
|
});
|
|
1086
1261
|
};
|
|
1262
|
+
|
|
1263
|
+
if (parentKeys) {
|
|
1264
|
+
for (var i = parentKeys.length - 1; i >= 0; i -= 1) {
|
|
1265
|
+
var newObject = {};
|
|
1266
|
+
newObject[parentKeys[i]] = eventCallbackProps[eventCallbackPropName];
|
|
1267
|
+
eventCallbackProps[eventCallbackPropName] = newObject;
|
|
1268
|
+
}
|
|
1269
|
+
}
|
|
1087
1270
|
});
|
|
1088
|
-
}
|
|
1089
|
-
|
|
1271
|
+
} // compute pure viz props which are not from options
|
|
1272
|
+
|
|
1273
|
+
|
|
1090
1274
|
var computedVizProps = computeVizProps(Object.assign(Object.assign(Object.assign(Object.assign({}, props), evaluatedOptionsToUse), eventCallbackProps), {
|
|
1091
1275
|
themeFunc: themeFunc
|
|
1092
1276
|
}));
|
|
@@ -1104,15 +1288,19 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
1104
1288
|
* In future, we could automatically detect which all datasources are being used
|
|
1105
1289
|
* and bind those magically to pagination/sorting behavior.
|
|
1106
1290
|
*/
|
|
1291
|
+
|
|
1107
1292
|
var dataSourceMetadata = {};
|
|
1108
1293
|
var OptionKey = 'paginateDataSourceKey';
|
|
1109
1294
|
var paginateDataSourceKey = (0, lodash_1.has)(evaluatedOptionsToUse, OptionKey) && evaluatedOptionsToUse[OptionKey] || 'primary';
|
|
1295
|
+
|
|
1110
1296
|
if (vizConfig.supports.indexOf(VizBehavior_1.VizBehavior.PAGE_AND_SORT) > -1 && (0, lodash_1.has)(dataSources, paginateDataSourceKey)) {
|
|
1111
1297
|
var requestParams = (0, lodash_1.get)(dataSources, [paginateDataSourceKey, 'requestParams'], {});
|
|
1112
1298
|
var meta = (0, lodash_1.get)(dataSources, [paginateDataSourceKey, 'meta'], {});
|
|
1299
|
+
|
|
1113
1300
|
var handleRequestParamsChange = function handleRequestParamsChange(payload) {
|
|
1114
1301
|
return onRequestParamsChange(paginateDataSourceKey, payload);
|
|
1115
1302
|
};
|
|
1303
|
+
|
|
1116
1304
|
var sortParams = (0, getSorting_1.getSortingParams)({
|
|
1117
1305
|
requestParams: requestParams,
|
|
1118
1306
|
meta: meta,
|
|
@@ -1127,115 +1315,132 @@ var withDashboardViz = function withDashboardViz(opts) {
|
|
|
1127
1315
|
sortParams: sortParams,
|
|
1128
1316
|
paginatorParams: paginatorParams
|
|
1129
1317
|
};
|
|
1130
|
-
}
|
|
1131
|
-
|
|
1318
|
+
} // if were using webworkers and this is the first render we dont want to show a viz with missing data so we return null
|
|
1319
|
+
|
|
1320
|
+
|
|
1132
1321
|
if (useAsyncEvaluatedOptions && Object.keys(evaluatedOptionsToUse).length === 0) {
|
|
1133
1322
|
return null;
|
|
1134
1323
|
}
|
|
1324
|
+
|
|
1135
1325
|
return React.createElement(SanitizedReactViz, Object.assign({
|
|
1136
1326
|
mode: mode,
|
|
1137
1327
|
width: width,
|
|
1138
1328
|
height: height
|
|
1139
1329
|
}, evaluatedOptionsToUse, computedVizProps, eventCallbackProps, dataSourceMetadata));
|
|
1140
1330
|
};
|
|
1331
|
+
|
|
1141
1332
|
DashboardViz.propTypes = Object.assign(Object.assign({}, SplunkVisualization_1.default.propTypes), ReactViz.propTypes);
|
|
1142
1333
|
DashboardViz.defaultProps = Object.assign(Object.assign(Object.assign({}, SplunkVisualization_1.default.defaultProps), ReactViz.defaultProps), {
|
|
1143
1334
|
// using withTheme requires component to receive theme prop. In case the consumer did not provide ThemeProvider, a default empty object will prevent warnings.
|
|
1144
1335
|
theme: {}
|
|
1145
|
-
});
|
|
1146
|
-
|
|
1147
|
-
DashboardViz.config = vizConfig;
|
|
1148
|
-
|
|
1336
|
+
}); // attach viz config
|
|
1337
|
+
|
|
1338
|
+
DashboardViz.config = vizConfig; // @ts-ignore: TODO fix sc upgrade TS issues
|
|
1339
|
+
|
|
1149
1340
|
return (0, styled_components_1.withTheme)((0, withPlaceholder_1.default)((0, withEditModeCover_1.default)(DashboardViz, disableEditModeCover), useIconPlaceholder));
|
|
1150
1341
|
};
|
|
1342
|
+
|
|
1151
1343
|
exports.default = withDashboardViz;
|
|
1152
1344
|
|
|
1153
1345
|
/***/ }),
|
|
1154
1346
|
|
|
1155
|
-
/***/
|
|
1347
|
+
/***/ 38:
|
|
1156
1348
|
/***/ (function(module, exports) {
|
|
1157
1349
|
|
|
1158
1350
|
module.exports = require("@splunk/themes/getSettingsFromThemedProps");
|
|
1159
1351
|
|
|
1160
1352
|
/***/ }),
|
|
1161
1353
|
|
|
1162
|
-
/***/
|
|
1354
|
+
/***/ 39:
|
|
1163
1355
|
/***/ (function(module, exports) {
|
|
1164
1356
|
|
|
1165
1357
|
module.exports = require("@splunk/visualizations-shared/SanitizeProps");
|
|
1166
1358
|
|
|
1167
1359
|
/***/ }),
|
|
1168
1360
|
|
|
1169
|
-
/***/
|
|
1361
|
+
/***/ 4:
|
|
1170
1362
|
/***/ (function(module, exports) {
|
|
1171
1363
|
|
|
1172
|
-
module.exports = require("
|
|
1364
|
+
module.exports = require("styled-components");
|
|
1173
1365
|
|
|
1174
1366
|
/***/ }),
|
|
1175
1367
|
|
|
1176
|
-
/***/
|
|
1368
|
+
/***/ 40:
|
|
1177
1369
|
/***/ (function(module, exports) {
|
|
1178
1370
|
|
|
1179
|
-
module.exports = require("
|
|
1371
|
+
module.exports = require("@splunk/moment");
|
|
1180
1372
|
|
|
1181
1373
|
/***/ }),
|
|
1182
1374
|
|
|
1183
|
-
/***/
|
|
1375
|
+
/***/ 41:
|
|
1184
1376
|
/***/ (function(module, exports) {
|
|
1185
1377
|
|
|
1186
1378
|
module.exports = require("@splunk/async-dynamic-options-evaluator");
|
|
1187
1379
|
|
|
1188
1380
|
/***/ }),
|
|
1189
1381
|
|
|
1190
|
-
/***/
|
|
1382
|
+
/***/ 42:
|
|
1191
1383
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1192
1384
|
|
|
1193
1385
|
"use strict";
|
|
1194
1386
|
|
|
1195
1387
|
|
|
1196
1388
|
var _classCallCheck = __webpack_require__(9);
|
|
1389
|
+
|
|
1197
1390
|
Object.defineProperty(exports, "__esModule", {
|
|
1198
1391
|
value: true
|
|
1199
1392
|
});
|
|
1200
1393
|
exports.INITIAL_HEIGHT = exports.INITIAL_WIDTH = void 0;
|
|
1201
1394
|
/* eslint-disable react/no-unused-prop-types,react/prefer-stateless-function */
|
|
1395
|
+
|
|
1202
1396
|
var T = __webpack_require__(0);
|
|
1397
|
+
|
|
1203
1398
|
var lodash_1 = __webpack_require__(3);
|
|
1204
|
-
|
|
1205
|
-
// this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
|
|
1399
|
+
|
|
1400
|
+
var VizActionHandler_1 = __webpack_require__(43); // this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations
|
|
1401
|
+
|
|
1402
|
+
|
|
1206
1403
|
exports.INITIAL_WIDTH = 250;
|
|
1207
1404
|
exports.INITIAL_HEIGHT = 250;
|
|
1208
1405
|
/**
|
|
1209
1406
|
* A Splunk visualization
|
|
1210
1407
|
*/
|
|
1408
|
+
|
|
1211
1409
|
var SplunkVisualization = function SplunkVisualization() {
|
|
1212
1410
|
_classCallCheck(this, SplunkVisualization);
|
|
1213
1411
|
};
|
|
1412
|
+
|
|
1214
1413
|
SplunkVisualization.propTypes = {
|
|
1215
1414
|
/**
|
|
1216
1415
|
* display mode
|
|
1217
1416
|
*/
|
|
1218
1417
|
mode: T.oneOf(['view', 'edit', 'export']).isRequired,
|
|
1418
|
+
|
|
1219
1419
|
/**
|
|
1220
1420
|
* width in pixel or string, defaults to 100%
|
|
1221
1421
|
*/
|
|
1222
1422
|
width: T.oneOfType([T.string, T.number]).isRequired,
|
|
1423
|
+
|
|
1223
1424
|
/**
|
|
1224
1425
|
* height in pixel or string
|
|
1225
1426
|
*/
|
|
1226
1427
|
height: T.oneOfType([T.string, T.number]).isRequired,
|
|
1428
|
+
|
|
1227
1429
|
/**
|
|
1228
1430
|
* visualization context used for dynamic option evaluation
|
|
1229
1431
|
*/
|
|
1230
1432
|
context: T.object,
|
|
1433
|
+
|
|
1231
1434
|
/**
|
|
1232
1435
|
* visualization formatting options
|
|
1233
1436
|
*/
|
|
1234
1437
|
options: T.object,
|
|
1438
|
+
|
|
1235
1439
|
/**
|
|
1236
1440
|
* A callback to update formatting options
|
|
1237
1441
|
*/
|
|
1238
1442
|
onOptionsChange: T.func,
|
|
1443
|
+
|
|
1239
1444
|
/**
|
|
1240
1445
|
* datasource state which include data and request params, object key indicate the datasource type.
|
|
1241
1446
|
*/
|
|
@@ -1244,6 +1449,7 @@ SplunkVisualization.propTypes = {
|
|
|
1244
1449
|
* current request params
|
|
1245
1450
|
*/
|
|
1246
1451
|
requestParams: T.object,
|
|
1452
|
+
|
|
1247
1453
|
/**
|
|
1248
1454
|
* current dataset
|
|
1249
1455
|
*/
|
|
@@ -1251,6 +1457,7 @@ SplunkVisualization.propTypes = {
|
|
|
1251
1457
|
fields: T.array,
|
|
1252
1458
|
columns: T.array
|
|
1253
1459
|
}),
|
|
1460
|
+
|
|
1254
1461
|
/**
|
|
1255
1462
|
* error
|
|
1256
1463
|
*/
|
|
@@ -1258,29 +1465,35 @@ SplunkVisualization.propTypes = {
|
|
|
1258
1465
|
level: T.string,
|
|
1259
1466
|
message: T.string
|
|
1260
1467
|
}),
|
|
1468
|
+
|
|
1261
1469
|
/**
|
|
1262
1470
|
* meta data that came with the dataset
|
|
1263
1471
|
*/
|
|
1264
1472
|
meta: T.object
|
|
1265
1473
|
})),
|
|
1474
|
+
|
|
1266
1475
|
/**
|
|
1267
1476
|
* A callback to trigger event
|
|
1268
1477
|
*/
|
|
1269
1478
|
onEventTrigger: T.func,
|
|
1479
|
+
|
|
1270
1480
|
/**
|
|
1271
1481
|
* Inform viz if there are handlers listening to events
|
|
1272
1482
|
*/
|
|
1273
1483
|
hasEventHandlers: T.bool,
|
|
1484
|
+
|
|
1274
1485
|
/**
|
|
1275
1486
|
* A callback to communicate computed props to a consumer
|
|
1276
1487
|
*/
|
|
1277
1488
|
onComputedProps: T.func,
|
|
1489
|
+
|
|
1278
1490
|
/**
|
|
1279
1491
|
* A callback to obtain visualization api
|
|
1280
1492
|
*/
|
|
1281
1493
|
vizActionHandlerRef: T.func,
|
|
1282
1494
|
loading: T.bool,
|
|
1283
1495
|
theme: T.object,
|
|
1496
|
+
|
|
1284
1497
|
/**
|
|
1285
1498
|
* A callback to request new data with updated request params
|
|
1286
1499
|
*/
|
|
@@ -1289,6 +1502,7 @@ SplunkVisualization.propTypes = {
|
|
|
1289
1502
|
/**
|
|
1290
1503
|
*
|
|
1291
1504
|
*/
|
|
1505
|
+
|
|
1292
1506
|
SplunkVisualization.defaultProps = {
|
|
1293
1507
|
// BaseVisualization in dashboard-visualizations uses 100% for width but 250 for height
|
|
1294
1508
|
width: '100%',
|
|
@@ -1317,50 +1531,41 @@ exports.default = SplunkVisualization;
|
|
|
1317
1531
|
|
|
1318
1532
|
/***/ }),
|
|
1319
1533
|
|
|
1320
|
-
/***/
|
|
1534
|
+
/***/ 43:
|
|
1321
1535
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1322
1536
|
|
|
1323
1537
|
"use strict";
|
|
1324
1538
|
|
|
1325
1539
|
|
|
1326
1540
|
var _classCallCheck = __webpack_require__(9);
|
|
1541
|
+
|
|
1327
1542
|
var _createClass = __webpack_require__(18);
|
|
1543
|
+
|
|
1328
1544
|
Object.defineProperty(exports, "__esModule", {
|
|
1329
1545
|
value: true
|
|
1330
1546
|
});
|
|
1331
1547
|
exports.DefaultVizActionHandler = void 0;
|
|
1548
|
+
|
|
1332
1549
|
var DefaultVizActionHandler = /*#__PURE__*/function () {
|
|
1333
1550
|
function DefaultVizActionHandler() {
|
|
1334
1551
|
_classCallCheck(this, DefaultVizActionHandler);
|
|
1335
1552
|
}
|
|
1553
|
+
|
|
1336
1554
|
_createClass(DefaultVizActionHandler, [{
|
|
1337
1555
|
key: "focus",
|
|
1338
|
-
value: function focus() {
|
|
1339
|
-
// noop
|
|
1556
|
+
value: function focus() {// noop
|
|
1340
1557
|
}
|
|
1341
1558
|
}, {
|
|
1342
|
-
key: "snapshot",
|
|
1343
|
-
value: function snapshot() {
|
|
1344
|
-
return null; // noop
|
|
1345
|
-
}
|
|
1346
|
-
}]);
|
|
1347
|
-
return DefaultVizActionHandler;
|
|
1348
|
-
}();
|
|
1349
|
-
exports.DefaultVizActionHandler = DefaultVizActionHandler;
|
|
1350
|
-
|
|
1351
|
-
/***/ }),
|
|
1352
|
-
|
|
1353
|
-
/***/ 43:
|
|
1354
|
-
/***/ (function(module, exports, __webpack_require__) {
|
|
1355
|
-
|
|
1356
|
-
"use strict";
|
|
1559
|
+
key: "snapshot",
|
|
1560
|
+
value: function snapshot() {
|
|
1561
|
+
return null; // noop
|
|
1562
|
+
}
|
|
1563
|
+
}]);
|
|
1357
1564
|
|
|
1565
|
+
return DefaultVizActionHandler;
|
|
1566
|
+
}();
|
|
1358
1567
|
|
|
1359
|
-
|
|
1360
|
-
value: true
|
|
1361
|
-
});
|
|
1362
|
-
exports.validSortDirs = void 0;
|
|
1363
|
-
exports.validSortDirs = ['asc', 'desc', 'none'];
|
|
1568
|
+
exports.DefaultVizActionHandler = DefaultVizActionHandler;
|
|
1364
1569
|
|
|
1365
1570
|
/***/ }),
|
|
1366
1571
|
|
|
@@ -1374,7 +1579,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
1374
1579
|
value: true
|
|
1375
1580
|
});
|
|
1376
1581
|
exports.useDeepMemo = void 0;
|
|
1582
|
+
|
|
1377
1583
|
var react_1 = __webpack_require__(1);
|
|
1584
|
+
|
|
1378
1585
|
var lodash_1 = __webpack_require__(3);
|
|
1379
1586
|
/**
|
|
1380
1587
|
* This hook evaluates and stores the result of a passed function and only
|
|
@@ -1389,16 +1596,21 @@ var lodash_1 = __webpack_require__(3);
|
|
|
1389
1596
|
* @param fn the function to be executed and
|
|
1390
1597
|
* @param dependencies an array of dependencies
|
|
1391
1598
|
*/
|
|
1599
|
+
|
|
1600
|
+
|
|
1392
1601
|
var useDeepMemo = function useDeepMemo(fn, dependencies) {
|
|
1393
1602
|
var ref = (0, react_1.useRef)();
|
|
1603
|
+
|
|
1394
1604
|
if (!ref.current || !(0, lodash_1.isEqual)(dependencies, ref.current.dependencies)) {
|
|
1395
1605
|
ref.current = {
|
|
1396
1606
|
dependencies: dependencies,
|
|
1397
1607
|
value: fn()
|
|
1398
1608
|
};
|
|
1399
1609
|
}
|
|
1610
|
+
|
|
1400
1611
|
return ref.current.value;
|
|
1401
1612
|
};
|
|
1613
|
+
|
|
1402
1614
|
exports.useDeepMemo = useDeepMemo;
|
|
1403
1615
|
|
|
1404
1616
|
/***/ }),
|
|
@@ -1413,19 +1625,27 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
1413
1625
|
value: true
|
|
1414
1626
|
});
|
|
1415
1627
|
exports.MissingPropsMessage = exports.missingKeys = exports.isMissing = void 0;
|
|
1628
|
+
|
|
1416
1629
|
var React = __webpack_require__(1);
|
|
1630
|
+
|
|
1417
1631
|
var T = __webpack_require__(0);
|
|
1632
|
+
|
|
1418
1633
|
var i18n_1 = __webpack_require__(2);
|
|
1634
|
+
|
|
1419
1635
|
var Message_1 = __webpack_require__(10);
|
|
1636
|
+
|
|
1420
1637
|
var FixedSizeContainer_1 = __webpack_require__(13);
|
|
1421
1638
|
/**
|
|
1422
1639
|
* @method isMissing
|
|
1423
1640
|
* @param {any} v
|
|
1424
1641
|
* @returns {boolean} true if the input value === null or undefined
|
|
1425
1642
|
*/
|
|
1643
|
+
|
|
1644
|
+
|
|
1426
1645
|
var isMissing = function isMissing(v) {
|
|
1427
1646
|
return v === null || v === undefined;
|
|
1428
1647
|
};
|
|
1648
|
+
|
|
1429
1649
|
exports.isMissing = isMissing;
|
|
1430
1650
|
/**
|
|
1431
1651
|
* @method misskingKeys
|
|
@@ -1433,11 +1653,13 @@ exports.isMissing = isMissing;
|
|
|
1433
1653
|
* @param {object} target
|
|
1434
1654
|
* @returns {string[]} the keys of missing required props
|
|
1435
1655
|
*/
|
|
1656
|
+
|
|
1436
1657
|
var missingKeys = function missingKeys(keys, target) {
|
|
1437
1658
|
return keys.filter(function (k) {
|
|
1438
1659
|
return (0, exports.isMissing)(target[k]);
|
|
1439
1660
|
});
|
|
1440
1661
|
};
|
|
1662
|
+
|
|
1441
1663
|
exports.missingKeys = missingKeys;
|
|
1442
1664
|
var propTypes = {
|
|
1443
1665
|
width: T.oneOfType([T.string, T.number]),
|
|
@@ -1451,10 +1673,11 @@ var propTypes = {
|
|
|
1451
1673
|
* @param {MissingPropsProps} props
|
|
1452
1674
|
* @returns {React.ReactElement}
|
|
1453
1675
|
*/
|
|
1676
|
+
|
|
1454
1677
|
var MissingPropsMessage = function MissingPropsMessage(props) {
|
|
1455
1678
|
var width = props.width,
|
|
1456
|
-
|
|
1457
|
-
|
|
1679
|
+
height = props.height,
|
|
1680
|
+
missingProps = props.missingProps;
|
|
1458
1681
|
return React.createElement(Message_1.default, {
|
|
1459
1682
|
"data-test": "message",
|
|
1460
1683
|
width: width,
|
|
@@ -1462,6 +1685,7 @@ var MissingPropsMessage = function MissingPropsMessage(props) {
|
|
|
1462
1685
|
message: (0, i18n_1._)("Missing property: ".concat(missingProps.join(', ')))
|
|
1463
1686
|
});
|
|
1464
1687
|
};
|
|
1688
|
+
|
|
1465
1689
|
exports.MissingPropsMessage = MissingPropsMessage;
|
|
1466
1690
|
exports.MissingPropsMessage.propTypes = propTypes;
|
|
1467
1691
|
exports.MissingPropsMessage.defaultProps = {
|
|
@@ -1481,15 +1705,19 @@ exports.default = (0, FixedSizeContainer_1.default)(exports.MissingPropsMessage)
|
|
|
1481
1705
|
Object.defineProperty(exports, "__esModule", {
|
|
1482
1706
|
value: true
|
|
1483
1707
|
});
|
|
1708
|
+
|
|
1484
1709
|
var React = __webpack_require__(1);
|
|
1710
|
+
|
|
1485
1711
|
var styled_components_1 = __webpack_require__(4);
|
|
1712
|
+
|
|
1486
1713
|
var hocUtils_1 = __webpack_require__(15);
|
|
1714
|
+
|
|
1487
1715
|
var Cover = styled_components_1.default.div.withConfig({
|
|
1488
1716
|
displayName: "withEditModeCover__Cover",
|
|
1489
1717
|
componentId: "sc-1gsbnxb-0"
|
|
1490
1718
|
})(["position:absolute;left:0;right:0;top:0;bottom:0;"]);
|
|
1491
1719
|
var Blocker = styled_components_1.default.div.attrs({
|
|
1492
|
-
'data-splunk-visualization-version': "26.
|
|
1720
|
+
'data-splunk-visualization-version': "26.1.1 - b6df0a015"
|
|
1493
1721
|
}).withConfig({
|
|
1494
1722
|
displayName: "withEditModeCover__Blocker",
|
|
1495
1723
|
componentId: "sc-1gsbnxb-1"
|
|
@@ -1500,6 +1728,7 @@ var Blocker = styled_components_1.default.div.attrs({
|
|
|
1500
1728
|
* @param {ExtendedDashViz} Visualization
|
|
1501
1729
|
* @returns {ExtendedDashViz} Wrapper
|
|
1502
1730
|
*/
|
|
1731
|
+
|
|
1503
1732
|
var withEditModeCover = function withEditModeCover(Visualization, disableEditModeCover) {
|
|
1504
1733
|
var Wrapper = function Wrapper(props) {
|
|
1505
1734
|
var mode = props.mode;
|
|
@@ -1508,12 +1737,14 @@ var withEditModeCover = function withEditModeCover(Visualization, disableEditMod
|
|
|
1508
1737
|
"data-test": "edit-mode-cover"
|
|
1509
1738
|
}));
|
|
1510
1739
|
};
|
|
1740
|
+
|
|
1511
1741
|
(0, hocUtils_1.extendStaticWrapperProps)({
|
|
1512
1742
|
Wrapper: Wrapper,
|
|
1513
1743
|
Visualization: Visualization
|
|
1514
1744
|
});
|
|
1515
1745
|
return Wrapper;
|
|
1516
1746
|
};
|
|
1747
|
+
|
|
1517
1748
|
exports.default = withEditModeCover;
|
|
1518
1749
|
|
|
1519
1750
|
/***/ }),
|
|
@@ -1527,6 +1758,7 @@ exports.default = withEditModeCover;
|
|
|
1527
1758
|
var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
|
|
1528
1759
|
if (k2 === undefined) k2 = k;
|
|
1529
1760
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
1761
|
+
|
|
1530
1762
|
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
1531
1763
|
desc = {
|
|
1532
1764
|
enumerable: true,
|
|
@@ -1535,22 +1767,28 @@ var __createBinding = this && this.__createBinding || (Object.create ? function
|
|
|
1535
1767
|
}
|
|
1536
1768
|
};
|
|
1537
1769
|
}
|
|
1770
|
+
|
|
1538
1771
|
Object.defineProperty(o, k2, desc);
|
|
1539
1772
|
} : function (o, m, k, k2) {
|
|
1540
1773
|
if (k2 === undefined) k2 = k;
|
|
1541
1774
|
o[k2] = m[k];
|
|
1542
1775
|
});
|
|
1776
|
+
|
|
1543
1777
|
var __exportStar = this && this.__exportStar || function (m, exports) {
|
|
1544
1778
|
for (var p in m) {
|
|
1545
1779
|
if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
1546
1780
|
}
|
|
1547
1781
|
};
|
|
1782
|
+
|
|
1548
1783
|
Object.defineProperty(exports, "__esModule", {
|
|
1549
1784
|
value: true
|
|
1550
1785
|
});
|
|
1551
1786
|
exports.default = void 0;
|
|
1552
|
-
|
|
1553
|
-
|
|
1787
|
+
|
|
1788
|
+
__exportStar(__webpack_require__(168), exports);
|
|
1789
|
+
|
|
1790
|
+
var Scatter_1 = __webpack_require__(168);
|
|
1791
|
+
|
|
1554
1792
|
Object.defineProperty(exports, "default", {
|
|
1555
1793
|
enumerable: true,
|
|
1556
1794
|
get: function get() {
|
|
@@ -1567,32 +1805,48 @@ Object.defineProperty(exports, "default", {
|
|
|
1567
1805
|
|
|
1568
1806
|
|
|
1569
1807
|
var _toConsumableArray = __webpack_require__(8);
|
|
1808
|
+
|
|
1570
1809
|
Object.defineProperty(exports, "__esModule", {
|
|
1571
1810
|
value: true
|
|
1572
1811
|
});
|
|
1573
1812
|
exports.optionsSchema = void 0;
|
|
1813
|
+
|
|
1574
1814
|
var visualization_icons_1 = __webpack_require__(52);
|
|
1815
|
+
|
|
1575
1816
|
var placeholders_1 = __webpack_require__(50);
|
|
1817
|
+
|
|
1576
1818
|
var pick_1 = __webpack_require__(23);
|
|
1819
|
+
|
|
1577
1820
|
var variables_1 = __webpack_require__(11);
|
|
1821
|
+
|
|
1578
1822
|
var schemaUtils_1 = __webpack_require__(16);
|
|
1823
|
+
|
|
1579
1824
|
var visualization_color_palettes_1 = __webpack_require__(51);
|
|
1825
|
+
|
|
1580
1826
|
var i18n_1 = __webpack_require__(2);
|
|
1827
|
+
|
|
1581
1828
|
var VizBehavior_1 = __webpack_require__(6);
|
|
1582
|
-
|
|
1829
|
+
|
|
1830
|
+
var VizCategory_1 = __webpack_require__(36);
|
|
1831
|
+
|
|
1583
1832
|
var configUtils_1 = __webpack_require__(20);
|
|
1833
|
+
|
|
1584
1834
|
var AxesChartDataConfig_1 = __webpack_require__(74);
|
|
1835
|
+
|
|
1585
1836
|
var AxesChartXGridAndLabels_1 = __webpack_require__(77);
|
|
1837
|
+
|
|
1586
1838
|
var AxesChartColorAndStyle_1 = __webpack_require__(75);
|
|
1839
|
+
|
|
1587
1840
|
var AxesChartLegend_1 = __webpack_require__(76);
|
|
1841
|
+
|
|
1588
1842
|
var AxesChartYGridAndLabels_1 = __webpack_require__(78);
|
|
1843
|
+
|
|
1589
1844
|
var dataContract = {
|
|
1590
1845
|
requiredDataSources: [{
|
|
1591
1846
|
name: 'primary',
|
|
1592
1847
|
description: 'DataSource that powers the visualization'
|
|
1593
1848
|
}],
|
|
1594
|
-
optionalDataSources: [
|
|
1595
|
-
// Note: SCP-14090 disable ui for optional datasources. We may need to add it back later
|
|
1849
|
+
optionalDataSources: [// Note: SCP-14090 disable ui for optional datasources. We may need to add it back later
|
|
1596
1850
|
// {
|
|
1597
1851
|
// name: 'annotation',
|
|
1598
1852
|
// description: 'DataSource that populates event annotations',
|
|
@@ -1929,16 +2183,19 @@ var editorConfig = [AxesChartDataConfig_1.AxesChartDataConfigScatter, {
|
|
|
1929
2183
|
/**
|
|
1930
2184
|
* visualization configuration
|
|
1931
2185
|
*/
|
|
2186
|
+
|
|
1932
2187
|
var config = {
|
|
1933
2188
|
/**
|
|
1934
2189
|
* unique viz key
|
|
1935
2190
|
*/
|
|
1936
2191
|
key: 'splunk.scatter',
|
|
2192
|
+
|
|
1937
2193
|
/**
|
|
1938
2194
|
* viz name
|
|
1939
2195
|
*/
|
|
1940
2196
|
name: (0, i18n_1._)('Scatter'),
|
|
1941
2197
|
category: VizCategory_1.VizCategory.CORRELATION,
|
|
2198
|
+
|
|
1942
2199
|
/**
|
|
1943
2200
|
* viz icon
|
|
1944
2201
|
*/
|
|
@@ -1974,10 +2231,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
1974
2231
|
value: true
|
|
1975
2232
|
});
|
|
1976
2233
|
exports.convertToScatterSCProperties = exports.mapToOldKey = exports.convertToStringValues = exports.scatterOptionValuesSCMapping = void 0;
|
|
2234
|
+
|
|
1977
2235
|
var lodash_1 = __webpack_require__(3);
|
|
2236
|
+
|
|
1978
2237
|
var propUtils_1 = __webpack_require__(29);
|
|
1979
|
-
|
|
1980
|
-
// map for key names which are either new or not present in SimpleXML options mapping
|
|
2238
|
+
|
|
2239
|
+
var chartingUtils_1 = __webpack_require__(57); // map for key names which are either new or not present in SimpleXML options mapping
|
|
2240
|
+
|
|
2241
|
+
|
|
1981
2242
|
var scatterOptionsSCMapping = {
|
|
1982
2243
|
xAxisLabelRotation: 'xAxisMajorLabelRotation',
|
|
1983
2244
|
xAxisLabelVisibility: 'xAxisMajorLabelVisibility',
|
|
@@ -2001,8 +2262,8 @@ var scatterOptionsSCMapping = {
|
|
|
2001
2262
|
bubbleSizeMax: 'bubbleMaxSize',
|
|
2002
2263
|
bubbleSizeMin: 'bubbleMinSize',
|
|
2003
2264
|
bubbleSizeMethod: 'bubbleSizeBy'
|
|
2004
|
-
};
|
|
2005
|
-
|
|
2265
|
+
}; // key value mapping of what options (and their corresponding values) which we expose in config.ts to property values SC understands
|
|
2266
|
+
|
|
2006
2267
|
exports.scatterOptionValuesSCMapping = {
|
|
2007
2268
|
xAxisTitleVisibility: {
|
|
2008
2269
|
hide: 'collapsed'
|
|
@@ -2027,6 +2288,7 @@ exports.scatterOptionValuesSCMapping = {
|
|
|
2027
2288
|
* @param {Object} options
|
|
2028
2289
|
* @returns {Object}
|
|
2029
2290
|
*/
|
|
2291
|
+
|
|
2030
2292
|
var convertToStringValues = function convertToStringValues(options) {
|
|
2031
2293
|
var updatedOptions = (0, propUtils_1.convertPropsToString)({
|
|
2032
2294
|
vizProps: options,
|
|
@@ -2034,6 +2296,7 @@ var convertToStringValues = function convertToStringValues(options) {
|
|
|
2034
2296
|
});
|
|
2035
2297
|
return Object.assign(Object.assign({}, options), updatedOptions);
|
|
2036
2298
|
};
|
|
2299
|
+
|
|
2037
2300
|
exports.convertToStringValues = convertToStringValues;
|
|
2038
2301
|
/**
|
|
2039
2302
|
* Helper method to update the option names which can be mapped to SimpleXML options or
|
|
@@ -2042,11 +2305,13 @@ exports.convertToStringValues = convertToStringValues;
|
|
|
2042
2305
|
* @param {Object} options
|
|
2043
2306
|
* @returns {Object}
|
|
2044
2307
|
*/
|
|
2308
|
+
|
|
2045
2309
|
var mapToOldKey = function mapToOldKey(options) {
|
|
2046
2310
|
return (0, lodash_1.mapKeys)(options, function (val, key) {
|
|
2047
2311
|
return scatterOptionsSCMapping[key] ? scatterOptionsSCMapping[key] : key;
|
|
2048
2312
|
});
|
|
2049
2313
|
};
|
|
2314
|
+
|
|
2050
2315
|
exports.mapToOldKey = mapToOldKey;
|
|
2051
2316
|
/**
|
|
2052
2317
|
* Chained helper for mapping the option properties (and values) we expose in config.ts into property values that splunk-charting accepts
|
|
@@ -2056,9 +2321,11 @@ exports.mapToOldKey = mapToOldKey;
|
|
|
2056
2321
|
* @param {Object} originalOptions
|
|
2057
2322
|
* @returns {Object}
|
|
2058
2323
|
*/
|
|
2324
|
+
|
|
2059
2325
|
var convertToScatterSCProperties = function convertToScatterSCProperties(originalOptions) {
|
|
2060
2326
|
return (0, lodash_1.chain)((0, exports.mapToOldKey)(originalOptions)).thru((0, chartingUtils_1.mapToValues)(exports.scatterOptionValuesSCMapping)).thru(exports.convertToStringValues).value();
|
|
2061
2327
|
};
|
|
2328
|
+
|
|
2062
2329
|
exports.convertToScatterSCProperties = convertToScatterSCProperties;
|
|
2063
2330
|
|
|
2064
2331
|
/***/ }),
|
|
@@ -2072,27 +2339,37 @@ exports.convertToScatterSCProperties = convertToScatterSCProperties;
|
|
|
2072
2339
|
Object.defineProperty(exports, "__esModule", {
|
|
2073
2340
|
value: true
|
|
2074
2341
|
});
|
|
2342
|
+
|
|
2075
2343
|
var React = __webpack_require__(1);
|
|
2344
|
+
|
|
2076
2345
|
var colorUtils_1 = __webpack_require__(12);
|
|
2346
|
+
|
|
2077
2347
|
var variables_1 = __webpack_require__(11);
|
|
2348
|
+
|
|
2078
2349
|
var IconPlaceholder_1 = __webpack_require__(32);
|
|
2350
|
+
|
|
2079
2351
|
var VizBehavior_1 = __webpack_require__(6);
|
|
2352
|
+
|
|
2080
2353
|
var hocUtils_1 = __webpack_require__(15);
|
|
2354
|
+
|
|
2081
2355
|
var withPlaceholder = function withPlaceholder(Visualization) {
|
|
2082
2356
|
var useIconPlaceholder = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : IconPlaceholder_1.shouldShowIconPlaceholder;
|
|
2083
2357
|
var config = Visualization.config;
|
|
2084
2358
|
var themes = config.themes;
|
|
2359
|
+
|
|
2085
2360
|
var Wrapper = function Wrapper(props) {
|
|
2086
2361
|
var _a, _b;
|
|
2362
|
+
|
|
2087
2363
|
var dataSources = props.dataSources,
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2364
|
+
loading = props.loading,
|
|
2365
|
+
options = props.options,
|
|
2366
|
+
height = props.height,
|
|
2367
|
+
width = props.width;
|
|
2092
2368
|
var showPlaceholder = useIconPlaceholder(dataSources, loading, options);
|
|
2093
2369
|
var bgColorFromTheme = (0, colorUtils_1.isColor)(options === null || options === void 0 ? void 0 : options.backgroundColor) ? options === null || options === void 0 ? void 0 : options.backgroundColor : (_a = themes === null || themes === void 0 ? void 0 : themes.defaultBackgroundColor) === null || _a === void 0 ? void 0 : _a.call(themes, props);
|
|
2094
2370
|
var icon = (_b = config.placeholderIcon) !== null && _b !== void 0 ? _b : config.icon;
|
|
2095
2371
|
var iconColor = variables_1.default.contentColorActive(props);
|
|
2372
|
+
|
|
2096
2373
|
if (config.supports.includes(VizBehavior_1.VizBehavior.PLACEHOLDER) && showPlaceholder) {
|
|
2097
2374
|
return React.createElement(IconPlaceholder_1.default, {
|
|
2098
2375
|
"data-test": "icon-placeholder",
|
|
@@ -2103,14 +2380,17 @@ var withPlaceholder = function withPlaceholder(Visualization) {
|
|
|
2103
2380
|
iconColor: iconColor
|
|
2104
2381
|
});
|
|
2105
2382
|
}
|
|
2383
|
+
|
|
2106
2384
|
return React.createElement(Visualization, Object.assign({}, props));
|
|
2107
2385
|
};
|
|
2386
|
+
|
|
2108
2387
|
(0, hocUtils_1.extendStaticWrapperProps)({
|
|
2109
2388
|
Wrapper: Wrapper,
|
|
2110
2389
|
Visualization: Visualization
|
|
2111
2390
|
});
|
|
2112
2391
|
return Wrapper;
|
|
2113
2392
|
};
|
|
2393
|
+
|
|
2114
2394
|
exports.default = withPlaceholder;
|
|
2115
2395
|
|
|
2116
2396
|
/***/ }),
|
|
@@ -2145,11 +2425,13 @@ module.exports = require("@splunk/visualization-icons");
|
|
|
2145
2425
|
Object.defineProperty(exports, "__esModule", {
|
|
2146
2426
|
value: true
|
|
2147
2427
|
});
|
|
2428
|
+
|
|
2148
2429
|
var i18n_1 = __webpack_require__(2);
|
|
2430
|
+
|
|
2149
2431
|
var background = function background(_ref) {
|
|
2150
2432
|
var label = _ref.label,
|
|
2151
|
-
|
|
2152
|
-
|
|
2433
|
+
themes = _ref.themes,
|
|
2434
|
+
labelPosition = _ref.labelPosition;
|
|
2153
2435
|
return [{
|
|
2154
2436
|
label: (0, i18n_1._)(label || 'Background'),
|
|
2155
2437
|
option: 'backgroundColor',
|
|
@@ -2160,6 +2442,7 @@ var background = function background(_ref) {
|
|
|
2160
2442
|
}
|
|
2161
2443
|
}];
|
|
2162
2444
|
};
|
|
2445
|
+
|
|
2163
2446
|
exports.default = background;
|
|
2164
2447
|
|
|
2165
2448
|
/***/ }),
|
|
@@ -2172,26 +2455,38 @@ module.exports = require("@splunk/charting-bundle");
|
|
|
2172
2455
|
/***/ }),
|
|
2173
2456
|
|
|
2174
2457
|
/***/ 56:
|
|
2458
|
+
/***/ (function(module, exports) {
|
|
2459
|
+
|
|
2460
|
+
module.exports = require("@splunk/themes/useSplunkTheme");
|
|
2461
|
+
|
|
2462
|
+
/***/ }),
|
|
2463
|
+
|
|
2464
|
+
/***/ 57:
|
|
2175
2465
|
/***/ (function(module, exports, __webpack_require__) {
|
|
2176
2466
|
|
|
2177
2467
|
"use strict";
|
|
2178
2468
|
|
|
2179
2469
|
|
|
2180
2470
|
var _toConsumableArray = __webpack_require__(8);
|
|
2471
|
+
|
|
2181
2472
|
var __rest = this && this.__rest || function (s, e) {
|
|
2182
2473
|
var t = {};
|
|
2474
|
+
|
|
2183
2475
|
for (var p in s) {
|
|
2184
2476
|
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
2185
2477
|
}
|
|
2478
|
+
|
|
2186
2479
|
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
2187
2480
|
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
2188
2481
|
}
|
|
2189
2482
|
return t;
|
|
2190
2483
|
};
|
|
2484
|
+
|
|
2191
2485
|
Object.defineProperty(exports, "__esModule", {
|
|
2192
2486
|
value: true
|
|
2193
2487
|
});
|
|
2194
2488
|
exports.constructFieldsAndColumns = exports.toArrayForSeries = exports.isMultiSeriesData = exports.convertOverlayFields = exports.convertY2AxisOptions = exports.mapToValues = exports.truncateData = exports.getAnnotations = void 0;
|
|
2489
|
+
|
|
2195
2490
|
var lodash_1 = __webpack_require__(3);
|
|
2196
2491
|
/**
|
|
2197
2492
|
* Get formatted annotations
|
|
@@ -2202,10 +2497,12 @@ var lodash_1 = __webpack_require__(3);
|
|
|
2202
2497
|
* @param {Array} options.annotationLabel
|
|
2203
2498
|
* @returns {Array}
|
|
2204
2499
|
*/
|
|
2500
|
+
|
|
2501
|
+
|
|
2205
2502
|
var getAnnotations = function getAnnotations(_ref) {
|
|
2206
2503
|
var annotationX = _ref.annotationX,
|
|
2207
|
-
|
|
2208
|
-
|
|
2504
|
+
annotationColor = _ref.annotationColor,
|
|
2505
|
+
annotationLabel = _ref.annotationLabel;
|
|
2209
2506
|
return annotationX && annotationX.length ? annotationX.map(function (timestamp, i) {
|
|
2210
2507
|
return {
|
|
2211
2508
|
color: annotationColor && annotationColor[i],
|
|
@@ -2214,6 +2511,7 @@ var getAnnotations = function getAnnotations(_ref) {
|
|
|
2214
2511
|
};
|
|
2215
2512
|
}) : [];
|
|
2216
2513
|
};
|
|
2514
|
+
|
|
2217
2515
|
exports.getAnnotations = getAnnotations;
|
|
2218
2516
|
/**
|
|
2219
2517
|
* Truncate the result set to given limit
|
|
@@ -2222,20 +2520,25 @@ exports.getAnnotations = getAnnotations;
|
|
|
2222
2520
|
* @param {Number|String} truncationLimit - options['chart.resultTruncationLimit']
|
|
2223
2521
|
* @returns {Object}
|
|
2224
2522
|
*/
|
|
2523
|
+
|
|
2225
2524
|
var truncateData = function truncateData(dataSet, truncationLimit) {
|
|
2226
2525
|
if (!dataSet) {
|
|
2227
2526
|
return null;
|
|
2228
2527
|
}
|
|
2528
|
+
|
|
2229
2529
|
var limit = parseInt(truncationLimit, 10);
|
|
2530
|
+
|
|
2230
2531
|
if (!limit || limit <= 0) {
|
|
2231
2532
|
return dataSet;
|
|
2232
2533
|
}
|
|
2534
|
+
|
|
2233
2535
|
var truncatedData = Object.assign({}, dataSet);
|
|
2234
2536
|
truncatedData.columns = truncatedData.columns.map(function (columnData) {
|
|
2235
2537
|
return columnData && Array.isArray(columnData) ? columnData.slice(0, limit) : columnData;
|
|
2236
2538
|
});
|
|
2237
2539
|
return truncatedData;
|
|
2238
2540
|
};
|
|
2541
|
+
|
|
2239
2542
|
exports.truncateData = truncateData;
|
|
2240
2543
|
/**
|
|
2241
2544
|
* Helper method to update the option values into the values that SC accepts
|
|
@@ -2243,12 +2546,14 @@ exports.truncateData = truncateData;
|
|
|
2243
2546
|
* @param {Object} options
|
|
2244
2547
|
* @returns {Object}
|
|
2245
2548
|
*/
|
|
2549
|
+
|
|
2246
2550
|
var mapToValues = function mapToValues(optionValuesSCMapping) {
|
|
2247
2551
|
return function (options) {
|
|
2248
2552
|
var convertedOptions = Object.assign({}, options);
|
|
2249
2553
|
Object.keys(optionValuesSCMapping).forEach(function (key) {
|
|
2250
2554
|
if ((0, lodash_1.has)(options, key)) {
|
|
2251
2555
|
var updatedValue = optionValuesSCMapping[key][options[key]];
|
|
2556
|
+
|
|
2252
2557
|
if (!(0, lodash_1.isUndefined)(updatedValue)) {
|
|
2253
2558
|
convertedOptions[key] = updatedValue;
|
|
2254
2559
|
}
|
|
@@ -2257,6 +2562,7 @@ var mapToValues = function mapToValues(optionValuesSCMapping) {
|
|
|
2257
2562
|
return convertedOptions;
|
|
2258
2563
|
};
|
|
2259
2564
|
};
|
|
2565
|
+
|
|
2260
2566
|
exports.mapToValues = mapToValues;
|
|
2261
2567
|
/**
|
|
2262
2568
|
* Helper method to process options related to y2Fields
|
|
@@ -2264,18 +2570,23 @@ exports.mapToValues = mapToValues;
|
|
|
2264
2570
|
* @param {Object} originalOptions
|
|
2265
2571
|
* @returns {Object}
|
|
2266
2572
|
*/
|
|
2573
|
+
|
|
2267
2574
|
var convertY2AxisOptions = function convertY2AxisOptions(_a) {
|
|
2268
2575
|
var y2Fields = _a.y2Fields,
|
|
2269
|
-
|
|
2576
|
+
originalOptions = __rest(_a, ["y2Fields"]);
|
|
2577
|
+
|
|
2270
2578
|
var convertedOptions = Object.assign({}, originalOptions);
|
|
2579
|
+
|
|
2271
2580
|
if (y2Fields) {
|
|
2272
2581
|
convertedOptions['axisY2.enabled'] = true;
|
|
2273
2582
|
convertedOptions['axisY2.fields'] = (0, lodash_1.isArray)(y2Fields) ? y2Fields.filter(function (name) {
|
|
2274
2583
|
return name;
|
|
2275
2584
|
}).join(',') : y2Fields;
|
|
2276
2585
|
}
|
|
2586
|
+
|
|
2277
2587
|
return convertedOptions;
|
|
2278
2588
|
};
|
|
2589
|
+
|
|
2279
2590
|
exports.convertY2AxisOptions = convertY2AxisOptions;
|
|
2280
2591
|
/**
|
|
2281
2592
|
* Helper method to format value for overlayFields
|
|
@@ -2283,9 +2594,11 @@ exports.convertY2AxisOptions = convertY2AxisOptions;
|
|
|
2283
2594
|
* @param {Object} originalOptions
|
|
2284
2595
|
* @returns {Object}
|
|
2285
2596
|
*/
|
|
2597
|
+
|
|
2286
2598
|
var convertOverlayFields = function convertOverlayFields(originalOptions) {
|
|
2287
2599
|
var convertedOptions = Object.assign({}, originalOptions);
|
|
2288
2600
|
var overlayFields = originalOptions.overlayFields;
|
|
2601
|
+
|
|
2289
2602
|
if (overlayFields) {
|
|
2290
2603
|
convertedOptions.overlayFields = Array.isArray(overlayFields) ? overlayFields.filter(function (field) {
|
|
2291
2604
|
return field;
|
|
@@ -2293,17 +2606,21 @@ var convertOverlayFields = function convertOverlayFields(originalOptions) {
|
|
|
2293
2606
|
return field.trim();
|
|
2294
2607
|
}).join(',') : overlayFields;
|
|
2295
2608
|
}
|
|
2609
|
+
|
|
2296
2610
|
return convertedOptions;
|
|
2297
2611
|
};
|
|
2612
|
+
|
|
2298
2613
|
exports.convertOverlayFields = convertOverlayFields;
|
|
2299
2614
|
/**
|
|
2300
2615
|
* checks whether data is multi series data
|
|
2301
2616
|
* @param {array} data array
|
|
2302
2617
|
* @return {Boolean}
|
|
2303
2618
|
*/
|
|
2619
|
+
|
|
2304
2620
|
var isMultiSeriesData = function isMultiSeriesData(data) {
|
|
2305
2621
|
return Array.isArray(data) && Array.isArray(data[0]);
|
|
2306
2622
|
};
|
|
2623
|
+
|
|
2307
2624
|
exports.isMultiSeriesData = isMultiSeriesData;
|
|
2308
2625
|
/**
|
|
2309
2626
|
* checks whether data is multi series data and returns value as array
|
|
@@ -2311,19 +2628,22 @@ exports.isMultiSeriesData = isMultiSeriesData;
|
|
|
2311
2628
|
* @param {*} value to return as array
|
|
2312
2629
|
* @return {array}
|
|
2313
2630
|
*/
|
|
2631
|
+
|
|
2314
2632
|
var toArrayForSeries = function toArrayForSeries(data, value) {
|
|
2315
2633
|
return (0, exports.isMultiSeriesData)(data) ? value : [value];
|
|
2316
2634
|
};
|
|
2635
|
+
|
|
2317
2636
|
exports.toArrayForSeries = toArrayForSeries;
|
|
2637
|
+
|
|
2318
2638
|
var constructFieldsAndColumns = function constructFieldsAndColumns(_ref2) {
|
|
2319
2639
|
var _ref2$x = _ref2.x,
|
|
2320
|
-
|
|
2321
|
-
|
|
2322
|
-
|
|
2323
|
-
|
|
2324
|
-
|
|
2325
|
-
|
|
2326
|
-
|
|
2640
|
+
x = _ref2$x === void 0 ? [] : _ref2$x,
|
|
2641
|
+
_ref2$y = _ref2.y,
|
|
2642
|
+
y = _ref2$y === void 0 ? [] : _ref2$y,
|
|
2643
|
+
xField = _ref2.xField,
|
|
2644
|
+
yFields = _ref2.yFields,
|
|
2645
|
+
y2 = _ref2.y2,
|
|
2646
|
+
y2Fields = _ref2.y2Fields;
|
|
2327
2647
|
var columns = [x.map(String)].concat(_toConsumableArray((0, exports.toArrayForSeries)(y, y).map(function (series) {
|
|
2328
2648
|
return series.map(String);
|
|
2329
2649
|
})));
|
|
@@ -2334,10 +2654,10 @@ var constructFieldsAndColumns = function constructFieldsAndColumns(_ref2) {
|
|
|
2334
2654
|
return {
|
|
2335
2655
|
name: field
|
|
2336
2656
|
};
|
|
2337
|
-
})));
|
|
2338
|
-
// splunk-charting requires y2 to be part of columns
|
|
2657
|
+
}))); // splunk-charting requires y2 to be part of columns
|
|
2339
2658
|
// when y & y2 options are configured with different (mutually exclusive) series
|
|
2340
2659
|
// y2 columns need to be added to columns
|
|
2660
|
+
|
|
2341
2661
|
if (y2Fields) {
|
|
2342
2662
|
var y2FieldsArray = (0, exports.toArrayForSeries)(y2, y2Fields);
|
|
2343
2663
|
var y2AsArray = (0, exports.toArrayForSeries)(y2, y2).map(function (series) {
|
|
@@ -2352,19 +2672,14 @@ var constructFieldsAndColumns = function constructFieldsAndColumns(_ref2) {
|
|
|
2352
2672
|
}
|
|
2353
2673
|
});
|
|
2354
2674
|
}
|
|
2675
|
+
|
|
2355
2676
|
return {
|
|
2356
2677
|
columns: columns,
|
|
2357
2678
|
fields: fields
|
|
2358
2679
|
};
|
|
2359
2680
|
};
|
|
2360
|
-
exports.constructFieldsAndColumns = constructFieldsAndColumns;
|
|
2361
|
-
|
|
2362
|
-
/***/ }),
|
|
2363
2681
|
|
|
2364
|
-
|
|
2365
|
-
/***/ (function(module, exports) {
|
|
2366
|
-
|
|
2367
|
-
module.exports = require("@splunk/themes/useSplunkTheme");
|
|
2682
|
+
exports.constructFieldsAndColumns = constructFieldsAndColumns;
|
|
2368
2683
|
|
|
2369
2684
|
/***/ }),
|
|
2370
2685
|
|
|
@@ -2379,6 +2694,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
2379
2694
|
});
|
|
2380
2695
|
exports.VizBehavior = void 0;
|
|
2381
2696
|
var VizBehavior;
|
|
2697
|
+
|
|
2382
2698
|
(function (VizBehavior) {
|
|
2383
2699
|
/**
|
|
2384
2700
|
* Dynamic Options Behavior.
|
|
@@ -2398,6 +2714,7 @@ var VizBehavior;
|
|
|
2398
2714
|
* missing.
|
|
2399
2715
|
* @type {string}
|
|
2400
2716
|
*/
|
|
2717
|
+
|
|
2401
2718
|
VizBehavior["PLACEHOLDER"] = "placeholder";
|
|
2402
2719
|
VizBehavior["PAGE_AND_SORT"] = "page-and-sort";
|
|
2403
2720
|
VizBehavior["TRELLIS"] = "trellis";
|
|
@@ -2416,23 +2733,42 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
2416
2733
|
});
|
|
2417
2734
|
exports.updateRowPayload = exports.canUpdateInPlace = exports.changedOptions = exports.NO_INPLACE_PROPS = void 0;
|
|
2418
2735
|
/* eslint-disable react/no-unused-prop-types */
|
|
2736
|
+
|
|
2419
2737
|
var lodash_1 = __webpack_require__(3);
|
|
2738
|
+
|
|
2420
2739
|
var i18n_1 = __webpack_require__(2);
|
|
2740
|
+
|
|
2421
2741
|
var visualization_color_palettes_1 = __webpack_require__(51);
|
|
2742
|
+
|
|
2422
2743
|
var react_1 = __webpack_require__(1);
|
|
2744
|
+
|
|
2423
2745
|
var React = __webpack_require__(1);
|
|
2746
|
+
|
|
2424
2747
|
var T = __webpack_require__(0);
|
|
2748
|
+
|
|
2425
2749
|
var react_event_listener_1 = __webpack_require__(66);
|
|
2750
|
+
|
|
2426
2751
|
__webpack_require__(67); // fixme, @splunk/charting should be refactor to use locale & timezone instead of i18n functions
|
|
2752
|
+
|
|
2753
|
+
|
|
2427
2754
|
var charting_bundle_1 = __webpack_require__(55);
|
|
2755
|
+
|
|
2428
2756
|
var TimezoneContext_1 = __webpack_require__(26);
|
|
2757
|
+
|
|
2429
2758
|
var style_1 = __webpack_require__(14);
|
|
2759
|
+
|
|
2430
2760
|
var styled_components_1 = __webpack_require__(4);
|
|
2761
|
+
|
|
2431
2762
|
var Message_1 = __webpack_require__(10);
|
|
2432
|
-
|
|
2763
|
+
|
|
2764
|
+
var useSplunkTheme_1 = __webpack_require__(56);
|
|
2765
|
+
|
|
2433
2766
|
var themeUtils_1 = __webpack_require__(68);
|
|
2767
|
+
|
|
2434
2768
|
var ChartingApi_1 = __webpack_require__(69);
|
|
2769
|
+
|
|
2435
2770
|
exports.NO_INPLACE_PROPS = ['chart', 'chart.orientation', 'layout.splitSeries', 'chart.style', 'legend.placement'];
|
|
2771
|
+
|
|
2436
2772
|
var changedOptions = function changedOptions(curOptions, nextOptions) {
|
|
2437
2773
|
return Object.keys(curOptions).filter(function (key) {
|
|
2438
2774
|
return !(key in nextOptions);
|
|
@@ -2440,7 +2776,9 @@ var changedOptions = function changedOptions(curOptions, nextOptions) {
|
|
|
2440
2776
|
return !(key in curOptions) || curOptions[key] !== nextOptions[key];
|
|
2441
2777
|
}));
|
|
2442
2778
|
};
|
|
2779
|
+
|
|
2443
2780
|
exports.changedOptions = changedOptions;
|
|
2781
|
+
|
|
2444
2782
|
function usePrevious(value) {
|
|
2445
2783
|
var ref = (0, react_1.useRef)();
|
|
2446
2784
|
(0, react_1.useEffect)(function () {
|
|
@@ -2448,21 +2786,24 @@ function usePrevious(value) {
|
|
|
2448
2786
|
});
|
|
2449
2787
|
return ref.current;
|
|
2450
2788
|
}
|
|
2789
|
+
|
|
2451
2790
|
var canUpdateInPlace = function canUpdateInPlace(curOptions, nextOptions) {
|
|
2452
2791
|
// if either of the options are undefined
|
|
2453
2792
|
// it cannot update in place.
|
|
2454
2793
|
if (!curOptions || !nextOptions) {
|
|
2455
2794
|
return false;
|
|
2456
2795
|
}
|
|
2796
|
+
|
|
2457
2797
|
return !exports.NO_INPLACE_PROPS.some(function (p) {
|
|
2458
2798
|
return curOptions[p] !== nextOptions[p];
|
|
2459
2799
|
}) && !(0, exports.changedOptions)(curOptions, nextOptions).some(function (p) {
|
|
2460
2800
|
return p.toLowerCase().endsWith('color');
|
|
2461
2801
|
});
|
|
2462
2802
|
};
|
|
2463
|
-
|
|
2464
|
-
// create 'row' payloads from 'rowContext' in the flattened format:
|
|
2803
|
+
|
|
2804
|
+
exports.canUpdateInPlace = canUpdateInPlace; // create 'row' payloads from 'rowContext' in the flattened format:
|
|
2465
2805
|
// row.<fieldname>.value
|
|
2806
|
+
|
|
2466
2807
|
var updateRowPayload = function updateRowPayload(chartEventRowContext, payload) {
|
|
2467
2808
|
Object.keys(chartEventRowContext || {}).forEach(function (key) {
|
|
2468
2809
|
// eslint-disable-next-line no-param-reassign
|
|
@@ -2470,18 +2811,21 @@ var updateRowPayload = function updateRowPayload(chartEventRowContext, payload)
|
|
|
2470
2811
|
});
|
|
2471
2812
|
return payload;
|
|
2472
2813
|
};
|
|
2814
|
+
|
|
2473
2815
|
exports.updateRowPayload = updateRowPayload;
|
|
2474
2816
|
var VizChartEventType;
|
|
2817
|
+
|
|
2475
2818
|
(function (VizChartEventType) {
|
|
2476
2819
|
VizChartEventType["POINT_CLICK"] = "point.click";
|
|
2477
2820
|
VizChartEventType["POINT_MOUSE_OUT"] = "point.mouseout";
|
|
2478
2821
|
VizChartEventType["POINT_MOUSE_OVER"] = "point.mouseover";
|
|
2479
2822
|
VizChartEventType["LEGEND_CLICK"] = "legend.click";
|
|
2480
|
-
})(VizChartEventType || (VizChartEventType = {}));
|
|
2481
|
-
// @TODO(pwied): remove after HC upgrade to 8+
|
|
2823
|
+
})(VizChartEventType || (VizChartEventType = {})); // @TODO(pwied): remove after HC upgrade to 8+
|
|
2482
2824
|
// .highcharts-a11y-proxy-container rule addresses a HighCharts < 8 bug
|
|
2483
2825
|
// caused by the accessibility plugin
|
|
2484
2826
|
// https://github.com/highcharts/highcharts/issues/12883
|
|
2827
|
+
|
|
2828
|
+
|
|
2485
2829
|
var ChartingContainer = styled_components_1.default.div.attrs(function (props) {
|
|
2486
2830
|
return {
|
|
2487
2831
|
'data-test': 'charting-container',
|
|
@@ -2509,6 +2853,7 @@ var propTypes = {
|
|
|
2509
2853
|
visualizationApiRef: T.func,
|
|
2510
2854
|
themeKey: T.string
|
|
2511
2855
|
};
|
|
2856
|
+
|
|
2512
2857
|
var Charting = function Charting(props) {
|
|
2513
2858
|
var container = (0, react_1.useRef)(null);
|
|
2514
2859
|
var needsInit = (0, react_1.useRef)(true);
|
|
@@ -2516,6 +2861,7 @@ var Charting = function Charting(props) {
|
|
|
2516
2861
|
var needsRedraw = (0, react_1.useRef)(true);
|
|
2517
2862
|
var api = (0, react_1.useRef)(new ChartingApi_1.ChartingApiFunctional(chart));
|
|
2518
2863
|
var timezone = (0, react_1.useContext)(TimezoneContext_1.default);
|
|
2864
|
+
|
|
2519
2865
|
var computeChartingSize = function computeChartingSize() {
|
|
2520
2866
|
if (container.current) {
|
|
2521
2867
|
var rect = container.current.getBoundingClientRect();
|
|
@@ -2524,48 +2870,56 @@ var Charting = function Charting(props) {
|
|
|
2524
2870
|
width: rect.width
|
|
2525
2871
|
};
|
|
2526
2872
|
}
|
|
2873
|
+
|
|
2527
2874
|
return {};
|
|
2528
2875
|
};
|
|
2876
|
+
|
|
2529
2877
|
var splunkTheme = (0, useSplunkTheme_1.default)();
|
|
2530
2878
|
var themeKey = props.themeKey ? props.themeKey : (0, themeUtils_1.getChartingThemeKey)({
|
|
2531
2879
|
splunkThemeV1: splunkTheme
|
|
2532
2880
|
});
|
|
2533
2881
|
var width = props.width,
|
|
2534
|
-
|
|
2535
|
-
|
|
2536
|
-
|
|
2537
|
-
|
|
2538
|
-
|
|
2539
|
-
|
|
2540
|
-
|
|
2541
|
-
|
|
2542
|
-
|
|
2543
|
-
|
|
2882
|
+
height = props.height,
|
|
2883
|
+
style = props.style,
|
|
2884
|
+
chartData = props.chartData,
|
|
2885
|
+
options = props.options,
|
|
2886
|
+
colorPalette = props.colorPalette,
|
|
2887
|
+
onClick = props.onClick,
|
|
2888
|
+
onSelect = props.onSelect,
|
|
2889
|
+
onPointMouseOut = props.onPointMouseOut,
|
|
2890
|
+
onPointMouseOver = props.onPointMouseOver,
|
|
2891
|
+
onEventTrigger = props.onEventTrigger;
|
|
2544
2892
|
var prevOptions = usePrevious(options);
|
|
2545
2893
|
var prevTimezone = usePrevious(timezone);
|
|
2894
|
+
|
|
2546
2895
|
var handleClick = function handleClick(chartEvent, type) {
|
|
2547
2896
|
var payload = (0, lodash_1.pick)(chartEvent, 'name2', 'value2', '_span', 'modifierKey');
|
|
2548
2897
|
payload.name = payload.name2;
|
|
2549
2898
|
delete payload.name2;
|
|
2899
|
+
|
|
2550
2900
|
if (type === VizChartEventType.POINT_CLICK) {
|
|
2551
2901
|
payload.value = payload.value2;
|
|
2552
2902
|
delete payload.value2;
|
|
2553
2903
|
payload = (0, exports.updateRowPayload)(chartEvent.rowContext, payload);
|
|
2554
2904
|
}
|
|
2905
|
+
|
|
2555
2906
|
onClick({
|
|
2556
2907
|
type: type,
|
|
2557
2908
|
originalEvent: chartEvent,
|
|
2558
2909
|
payload: payload
|
|
2559
2910
|
});
|
|
2560
2911
|
};
|
|
2912
|
+
|
|
2561
2913
|
var destroyChart = function destroyChart() {
|
|
2562
2914
|
if (chart.current) {
|
|
2563
2915
|
chart.current.destroy();
|
|
2564
2916
|
chart.current = null;
|
|
2565
2917
|
}
|
|
2918
|
+
|
|
2566
2919
|
needsRedraw.current = true;
|
|
2567
2920
|
needsInit.current = true;
|
|
2568
2921
|
};
|
|
2922
|
+
|
|
2569
2923
|
var handleSelect = function handleSelect(chartEvent) {
|
|
2570
2924
|
// todo: need change this after breaking all visualizations
|
|
2571
2925
|
if (onSelect && typeof onSelect === 'function') {
|
|
@@ -2575,14 +2929,16 @@ var Charting = function Charting(props) {
|
|
|
2575
2929
|
payload: (0, lodash_1.pick)(chartEvent, 'startXIndex', 'endXIndex', 'startXValue', 'endXValue')
|
|
2576
2930
|
});
|
|
2577
2931
|
return;
|
|
2578
|
-
}
|
|
2579
|
-
|
|
2932
|
+
} // the chartEvent here is a jQuery event
|
|
2933
|
+
|
|
2934
|
+
|
|
2580
2935
|
onEventTrigger({
|
|
2581
2936
|
type: 'range.select',
|
|
2582
2937
|
originalEvent: chartEvent,
|
|
2583
2938
|
payload: (0, lodash_1.pick)(chartEvent, 'startXIndex', 'endXIndex', 'startXValue', 'endXValue')
|
|
2584
2939
|
});
|
|
2585
2940
|
};
|
|
2941
|
+
|
|
2586
2942
|
var handlePointMouseOut = function handlePointMouseOut(chartEvent, type) {
|
|
2587
2943
|
var payload = (0, lodash_1.pick)(chartEvent, 'name2', 'value2', '_span', 'modifierKey', 'tooltipContext');
|
|
2588
2944
|
payload.name = payload.name2;
|
|
@@ -2596,6 +2952,7 @@ var Charting = function Charting(props) {
|
|
|
2596
2952
|
payload: payload
|
|
2597
2953
|
});
|
|
2598
2954
|
};
|
|
2955
|
+
|
|
2599
2956
|
var handlePointMouseOver = function handlePointMouseOver(chartEvent, type) {
|
|
2600
2957
|
var payload = (0, lodash_1.pick)(chartEvent, 'name2', 'value2', '_span', 'modifierKey', 'tooltipContext');
|
|
2601
2958
|
payload.name = payload.name2;
|
|
@@ -2609,6 +2966,7 @@ var Charting = function Charting(props) {
|
|
|
2609
2966
|
payload: payload
|
|
2610
2967
|
});
|
|
2611
2968
|
};
|
|
2969
|
+
|
|
2612
2970
|
var drawChart = function drawChart() {
|
|
2613
2971
|
var updatedOptions = Object.assign(Object.assign({}, options), {
|
|
2614
2972
|
shouldColorizeTooltipData: false
|
|
@@ -2619,15 +2977,18 @@ var Charting = function Charting(props) {
|
|
|
2619
2977
|
var serializedTimezone = timezone === null || timezone === void 0 ? void 0 : timezone.serializedTimezone;
|
|
2620
2978
|
var ianaTimezone = timezone === null || timezone === void 0 ? void 0 : timezone.ianaTimezone;
|
|
2621
2979
|
var utcOffset = timezone === null || timezone === void 0 ? void 0 : timezone.utcOffset;
|
|
2980
|
+
|
|
2622
2981
|
if (!computedWidth || !computedHeight) {
|
|
2623
2982
|
return;
|
|
2624
2983
|
}
|
|
2984
|
+
|
|
2625
2985
|
if (!chartData || !Object.keys(chartData).length) {
|
|
2626
2986
|
return;
|
|
2627
|
-
}
|
|
2628
|
-
// splunk-charting layers configuration option updates.
|
|
2987
|
+
} // splunk-charting layers configuration option updates.
|
|
2629
2988
|
// when an option is removed it needs to be set to an empty string
|
|
2630
2989
|
// to override the previous configuration
|
|
2990
|
+
|
|
2991
|
+
|
|
2631
2992
|
if (prevOptions) {
|
|
2632
2993
|
Object.keys(prevOptions).forEach(function (key) {
|
|
2633
2994
|
if (updatedOptions[key] === undefined) {
|
|
@@ -2635,13 +2996,16 @@ var Charting = function Charting(props) {
|
|
|
2635
2996
|
}
|
|
2636
2997
|
});
|
|
2637
2998
|
}
|
|
2999
|
+
|
|
2638
3000
|
try {
|
|
2639
3001
|
if (needsInit.current) {
|
|
2640
3002
|
destroyChart();
|
|
2641
3003
|
charting_bundle_1.default.setTheme(themeKey);
|
|
3004
|
+
|
|
2642
3005
|
if (colorPalette.length > 0) {
|
|
2643
3006
|
charting_bundle_1.default.setColorPalette(colorPalette);
|
|
2644
3007
|
}
|
|
3008
|
+
|
|
2645
3009
|
chart.current = charting_bundle_1.default.createChart(container.current, Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, updatedOptions), {
|
|
2646
3010
|
drilldown: 'all'
|
|
2647
3011
|
}), typeof serializedTimezone === 'string' && {
|
|
@@ -2650,8 +3014,8 @@ var Charting = function Charting(props) {
|
|
|
2650
3014
|
'time.ianaTimezone': ianaTimezone
|
|
2651
3015
|
}), typeof utcOffset === 'number' && {
|
|
2652
3016
|
'time.timezoneOffset': utcOffset
|
|
2653
|
-
}));
|
|
2654
|
-
|
|
3017
|
+
})); // bind event handlers
|
|
3018
|
+
|
|
2655
3019
|
chart.current.on('pointClick', function (e) {
|
|
2656
3020
|
handleClick(e, VizChartEventType.POINT_CLICK);
|
|
2657
3021
|
});
|
|
@@ -2666,29 +3030,37 @@ var Charting = function Charting(props) {
|
|
|
2666
3030
|
});
|
|
2667
3031
|
chart.current.on('chartRangeSelect', handleSelect);
|
|
2668
3032
|
}
|
|
3033
|
+
|
|
2669
3034
|
if (needsRedraw.current) {
|
|
2670
3035
|
charting_bundle_1.default.setTheme(themeKey);
|
|
3036
|
+
|
|
2671
3037
|
if (colorPalette.length > 0) {
|
|
2672
3038
|
charting_bundle_1.default.setColorPalette(colorPalette);
|
|
2673
3039
|
}
|
|
3040
|
+
|
|
2674
3041
|
chart.current.prepareAndDraw(chartData, updatedOptions, function () {});
|
|
2675
3042
|
}
|
|
3043
|
+
|
|
2676
3044
|
if (chart.current) {
|
|
2677
3045
|
if (Math.round(chart.current.height) !== Math.round(computedHeight) || Math.round(chart.current.width) !== Math.round(computedWidth)) {
|
|
2678
3046
|
chart.current.resize(computedWidth, computedHeight);
|
|
2679
3047
|
}
|
|
2680
3048
|
}
|
|
3049
|
+
|
|
2681
3050
|
needsInit.current = false;
|
|
2682
3051
|
needsRedraw.current = false;
|
|
2683
3052
|
} catch (e) {
|
|
2684
3053
|
window.console.error('Caught error rendering chart:', e);
|
|
2685
3054
|
}
|
|
2686
3055
|
};
|
|
3056
|
+
|
|
2687
3057
|
var debouncedDrawChart = (0, lodash_1.debounce)(drawChart, 5);
|
|
3058
|
+
|
|
2688
3059
|
var onContainerMount = function onContainerMount(chartingContainer) {
|
|
2689
3060
|
container.current = chartingContainer;
|
|
2690
3061
|
debouncedDrawChart();
|
|
2691
3062
|
};
|
|
3063
|
+
|
|
2692
3064
|
var prevTheme = usePrevious(themeKey);
|
|
2693
3065
|
var prevOnClick = usePrevious(onClick);
|
|
2694
3066
|
(0, react_1.useEffect)(function () {
|
|
@@ -2702,14 +3074,14 @@ var Charting = function Charting(props) {
|
|
|
2702
3074
|
(0, react_1.useEffect)(function () {
|
|
2703
3075
|
// TODO: figure out why re-init is needed for functional components (i.e. PlatformViz) when changing theme
|
|
2704
3076
|
// seems like redraw doesn't suffice to update the background colors
|
|
2705
|
-
if (!chart.current || !(0, exports.canUpdateInPlace)(prevOptions, options) ||
|
|
2706
|
-
// timezone is a simple object so this comparison should be fast
|
|
3077
|
+
if (!chart.current || !(0, exports.canUpdateInPlace)(prevOptions, options) || // timezone is a simple object so this comparison should be fast
|
|
2707
3078
|
JSON.stringify(prevTimezone) !== JSON.stringify(timezone) || !props.themeKey && prevTheme !== themeKey || prevOnClick !== onClick) {
|
|
2708
3079
|
needsInit.current = true;
|
|
2709
3080
|
}
|
|
2710
|
-
|
|
2711
|
-
// need to immediately call drawChart upon an option or chartData change
|
|
3081
|
+
|
|
3082
|
+
needsRedraw.current = true; // need to immediately call drawChart upon an option or chartData change
|
|
2712
3083
|
// otherwise a noop would occur if the onContainerMount drawChart is re-invoked when dimensions change
|
|
3084
|
+
|
|
2713
3085
|
drawChart();
|
|
2714
3086
|
}, [JSON.stringify(options), JSON.stringify(chartData.toJSON()), JSON.stringify(chartData.annotations), timezone === null || timezone === void 0 ? void 0 : timezone.ianaTimezone, timezone === null || timezone === void 0 ? void 0 : timezone.utcOffset, timezone === null || timezone === void 0 ? void 0 : timezone.serializedTimezone, themeKey, onClick]);
|
|
2715
3087
|
return React.createElement(ChartingContainer, {
|
|
@@ -2722,6 +3094,7 @@ var Charting = function Charting(props) {
|
|
|
2722
3094
|
onResize: debouncedDrawChart
|
|
2723
3095
|
}));
|
|
2724
3096
|
};
|
|
3097
|
+
|
|
2725
3098
|
var defaultProps = {
|
|
2726
3099
|
width: '100%',
|
|
2727
3100
|
height: 250,
|
|
@@ -2739,31 +3112,36 @@ var defaultProps = {
|
|
|
2739
3112
|
themeKey: null
|
|
2740
3113
|
};
|
|
2741
3114
|
Charting.propTypes = propTypes;
|
|
2742
|
-
Charting.defaultProps = defaultProps;
|
|
2743
|
-
|
|
3115
|
+
Charting.defaultProps = defaultProps; // allow for early return in case of empty chartData while still following hook rules
|
|
3116
|
+
|
|
2744
3117
|
var withEmptyChartMessage = function withEmptyChartMessage(Chart) {
|
|
2745
3118
|
var Wrapper = function Wrapper(props) {
|
|
2746
3119
|
var chartData = props.chartData;
|
|
3120
|
+
|
|
2747
3121
|
if (!chartData) {
|
|
2748
3122
|
return React.createElement(Message_1.default, {
|
|
2749
3123
|
message: (0, i18n_1._)('No DataSource'),
|
|
2750
3124
|
level: "warning"
|
|
2751
3125
|
});
|
|
2752
3126
|
}
|
|
3127
|
+
|
|
2753
3128
|
if (chartData && !Object.keys(chartData).length) {
|
|
2754
3129
|
return React.createElement(Message_1.default, {
|
|
2755
3130
|
message: (0, i18n_1._)('No Result'),
|
|
2756
3131
|
level: "info"
|
|
2757
3132
|
});
|
|
2758
3133
|
}
|
|
3134
|
+
|
|
2759
3135
|
return React.createElement(Chart, Object.assign({}, props));
|
|
2760
3136
|
};
|
|
3137
|
+
|
|
2761
3138
|
Wrapper.displayName = 'ChartingWrapper';
|
|
2762
3139
|
Wrapper.propTypes = propTypes;
|
|
2763
3140
|
Wrapper.defaultProps = defaultProps;
|
|
2764
3141
|
return Wrapper;
|
|
2765
|
-
};
|
|
2766
|
-
|
|
3142
|
+
}; // export default Charting;
|
|
3143
|
+
|
|
3144
|
+
|
|
2767
3145
|
exports.default = withEmptyChartMessage(Charting);
|
|
2768
3146
|
|
|
2769
3147
|
/***/ }),
|
|
@@ -2796,15 +3174,19 @@ module.exports = require("@splunk/visualizations-shared/themeUtils");
|
|
|
2796
3174
|
|
|
2797
3175
|
|
|
2798
3176
|
var _classCallCheck = __webpack_require__(9);
|
|
3177
|
+
|
|
2799
3178
|
var _createClass = __webpack_require__(18);
|
|
3179
|
+
|
|
2800
3180
|
Object.defineProperty(exports, "__esModule", {
|
|
2801
3181
|
value: true
|
|
2802
3182
|
});
|
|
2803
3183
|
exports.ChartingApiFunctional = void 0;
|
|
3184
|
+
|
|
2804
3185
|
var ChartingApiFunctional = /*#__PURE__*/function () {
|
|
2805
3186
|
// eslint-disable-next-line no-useless-constructor
|
|
2806
3187
|
function ChartingApiFunctional(chartRef) {
|
|
2807
3188
|
_classCallCheck(this, ChartingApiFunctional);
|
|
3189
|
+
|
|
2808
3190
|
this.chartRef = chartRef;
|
|
2809
3191
|
}
|
|
2810
3192
|
/**
|
|
@@ -2812,15 +3194,18 @@ var ChartingApiFunctional = /*#__PURE__*/function () {
|
|
|
2812
3194
|
*
|
|
2813
3195
|
* @memberof ChartingApiFunctional
|
|
2814
3196
|
*/
|
|
3197
|
+
|
|
3198
|
+
|
|
2815
3199
|
_createClass(ChartingApiFunctional, [{
|
|
2816
3200
|
key: "highlight",
|
|
2817
3201
|
value: function highlight() {
|
|
2818
3202
|
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
|
|
2819
|
-
|
|
2820
|
-
|
|
2821
|
-
|
|
2822
|
-
|
|
2823
|
-
|
|
3203
|
+
xValue: '',
|
|
3204
|
+
seriesName: ''
|
|
3205
|
+
},
|
|
3206
|
+
xValue = _ref.xValue,
|
|
3207
|
+
seriesName = _ref.seriesName;
|
|
3208
|
+
|
|
2824
3209
|
this.getChart().highlight(xValue, seriesName);
|
|
2825
3210
|
}
|
|
2826
3211
|
/**
|
|
@@ -2828,21 +3213,25 @@ var ChartingApiFunctional = /*#__PURE__*/function () {
|
|
|
2828
3213
|
*
|
|
2829
3214
|
* @memberof ChartingApiFunctional
|
|
2830
3215
|
*/
|
|
3216
|
+
|
|
2831
3217
|
}, {
|
|
2832
3218
|
key: "unHighlight",
|
|
2833
3219
|
value: function unHighlight() {
|
|
2834
3220
|
this.getChart().unHighlight();
|
|
2835
|
-
}
|
|
2836
|
-
|
|
3221
|
+
} // returns chart object
|
|
3222
|
+
|
|
2837
3223
|
}, {
|
|
2838
3224
|
key: "getChart",
|
|
2839
3225
|
value: function getChart() {
|
|
2840
3226
|
var _a;
|
|
3227
|
+
|
|
2841
3228
|
return (_a = this.chartRef) === null || _a === void 0 ? void 0 : _a.current;
|
|
2842
3229
|
}
|
|
2843
3230
|
}]);
|
|
3231
|
+
|
|
2844
3232
|
return ChartingApiFunctional;
|
|
2845
3233
|
}();
|
|
3234
|
+
|
|
2846
3235
|
exports.ChartingApiFunctional = ChartingApiFunctional;
|
|
2847
3236
|
|
|
2848
3237
|
/***/ }),
|
|
@@ -2868,12 +3257,16 @@ module.exports = require("@splunk/visualizations-shared/simpleXMLOptions");
|
|
|
2868
3257
|
|
|
2869
3258
|
|
|
2870
3259
|
var _toConsumableArray = __webpack_require__(8);
|
|
3260
|
+
|
|
2871
3261
|
Object.defineProperty(exports, "__esModule", {
|
|
2872
3262
|
value: true
|
|
2873
3263
|
});
|
|
2874
3264
|
exports.AxesChartDataConfigAreaColumnLine = exports.AxesChartDataConfigBubble = exports.AxesChartDataConfigScatter = exports.AxesChartDataConfigBar = void 0;
|
|
3265
|
+
|
|
2875
3266
|
var i18n_1 = __webpack_require__(2);
|
|
3267
|
+
|
|
2876
3268
|
var configUtils_1 = __webpack_require__(20);
|
|
3269
|
+
|
|
2877
3270
|
var AxesChartDataConfig = {
|
|
2878
3271
|
label: (0, i18n_1._)('Data configurations'),
|
|
2879
3272
|
layout: [[{
|
|
@@ -3007,10 +3400,15 @@ exports.default = AxesChartDataConfig;
|
|
|
3007
3400
|
Object.defineProperty(exports, "__esModule", {
|
|
3008
3401
|
value: true
|
|
3009
3402
|
});
|
|
3403
|
+
|
|
3010
3404
|
var i18n_1 = __webpack_require__(2);
|
|
3405
|
+
|
|
3011
3406
|
var pick_1 = __webpack_require__(23);
|
|
3407
|
+
|
|
3012
3408
|
var variables_1 = __webpack_require__(11);
|
|
3409
|
+
|
|
3013
3410
|
var BackgroundColor_1 = __webpack_require__(53);
|
|
3411
|
+
|
|
3014
3412
|
var themes = {
|
|
3015
3413
|
defaultBackgroundColor: function defaultBackgroundColor(props) {
|
|
3016
3414
|
return (0, pick_1.default)({
|
|
@@ -3049,7 +3447,9 @@ exports.default = AxesChartColorAndStyle;
|
|
|
3049
3447
|
Object.defineProperty(exports, "__esModule", {
|
|
3050
3448
|
value: true
|
|
3051
3449
|
});
|
|
3450
|
+
|
|
3052
3451
|
var i18n_1 = __webpack_require__(2);
|
|
3452
|
+
|
|
3053
3453
|
var AxesChartLegend = {
|
|
3054
3454
|
label: (0, i18n_1._)('Legend'),
|
|
3055
3455
|
layout: [[{
|
|
@@ -3110,12 +3510,16 @@ exports.default = AxesChartLegend;
|
|
|
3110
3510
|
|
|
3111
3511
|
|
|
3112
3512
|
var _toConsumableArray = __webpack_require__(8);
|
|
3513
|
+
|
|
3113
3514
|
Object.defineProperty(exports, "__esModule", {
|
|
3114
3515
|
value: true
|
|
3115
3516
|
});
|
|
3116
3517
|
exports.AxesChartXGridAndLabelsBubbleScatter = exports.AxesChartXGridAndLabelsCommon = void 0;
|
|
3518
|
+
|
|
3117
3519
|
var i18n_1 = __webpack_require__(2);
|
|
3520
|
+
|
|
3118
3521
|
var configUtils_1 = __webpack_require__(20);
|
|
3522
|
+
|
|
3119
3523
|
exports.AxesChartXGridAndLabelsCommon = {
|
|
3120
3524
|
label: (0, i18n_1._)('X-axis grid and labels'),
|
|
3121
3525
|
layout: [[{
|
|
@@ -3304,8 +3708,7 @@ exports.AxesChartXGridAndLabelsBubbleScatter = {
|
|
|
3304
3708
|
label: (0, i18n_1._)('Axis line visibility'),
|
|
3305
3709
|
option: 'xAxisLineVisibility',
|
|
3306
3710
|
editor: 'editor.checkbox'
|
|
3307
|
-
}],
|
|
3308
|
-
// this option is disabled for bubble and scatter
|
|
3711
|
+
}], // this option is disabled for bubble and scatter
|
|
3309
3712
|
// [
|
|
3310
3713
|
// {
|
|
3311
3714
|
// label: _('Major gridlines'),
|
|
@@ -3398,7 +3801,9 @@ exports.default = AxesChartXGridAndLabels;
|
|
|
3398
3801
|
Object.defineProperty(exports, "__esModule", {
|
|
3399
3802
|
value: true
|
|
3400
3803
|
});
|
|
3804
|
+
|
|
3401
3805
|
var i18n_1 = __webpack_require__(2);
|
|
3806
|
+
|
|
3402
3807
|
var AxesChartYGridAndLabels = {
|
|
3403
3808
|
label: (0, i18n_1._)('Y-axis grid and labels'),
|
|
3404
3809
|
layout: [[{
|