@splunk/visualizations 25.0.0 → 25.0.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/.loki/reference/chrome_docker_PureVisualizations_PureMap_basic.png +0 -0
- package/.loki/reference/chrome_docker_PureVisualizations_PureMap_marker_layer_dynamic_color.png +0 -0
- package/.loki/reference/chrome_docker_PureVisualizations_PureMap_marker_layer_static_color.png +0 -0
- package/.loki/reference/chrome_docker_PureVisualizations_PureMap_marker_layer_static_color_with_no_seriesColors.png +0 -0
- package/.loki/reference/chrome_docker_PureVisualizations_PureMap_scale_off.png +0 -0
- package/.loki/reference/chrome_docker_PureVisualizations_PureMap_scale_unit_metric.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Area_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bar_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bubble_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_ChoroplethSvg_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Column_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Ellipse_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_FillerGauge_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Image_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Line_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_LinkGraph_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Map_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Markdown_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_MarkerGauge_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Parallel_Coordinates_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Pie_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Punchcard_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Rectangle_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Sankey_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Scatter_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Icon_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Radial_Editor.png +0 -0
- package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Table_Editor.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Line_Line_Placeholder_if_datasource_does_not_have_any_data.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Line_Line_Placeholder_if_viz_does_not_connect_to_datasource.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Basic_Map.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_GET.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_GET_Dynamic_Coloring.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Internal_Fields.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Static_Coloring.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_Dynamic_Coloring.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer_Dynamic_coloring.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer_Result_Limit_Set_To_3.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Restricted_Zoom.png +0 -0
- package/.loki/reference/chrome_docker_Visualizations_Map_Map_Set_Map_tiles.png +0 -0
- package/Area.config.js +26 -1
- package/Area.config.js.map +1 -1
- package/Area.js +49 -23
- package/Area.js.map +1 -1
- package/Bar.config.js +26 -1
- package/Bar.config.js.map +1 -1
- package/Bar.js +49 -23
- package/Bar.js.map +1 -1
- package/Bubble.config.js +26 -1
- package/Bubble.config.js.map +1 -1
- package/Bubble.js +49 -23
- package/Bubble.js.map +1 -1
- package/ChoroplethSvg.config.js +27 -3
- package/ChoroplethSvg.config.js.map +1 -1
- package/ChoroplethSvg.js +73 -48
- package/ChoroplethSvg.js.map +1 -1
- package/Column.config.js +26 -1
- package/Column.config.js.map +1 -1
- package/Column.js +49 -23
- package/Column.js.map +1 -1
- package/Ellipse.config.js +26 -1
- package/Ellipse.config.js.map +1 -1
- package/Ellipse.js +58 -32
- package/Ellipse.js.map +1 -1
- package/FillerGauge.config.js +27 -2
- package/FillerGauge.config.js.map +1 -1
- package/FillerGauge.js +60 -34
- package/FillerGauge.js.map +1 -1
- package/Image.config.js +27 -3
- package/Image.config.js.map +1 -1
- package/Image.js +58 -34
- package/Image.js.map +1 -1
- package/Line.config.js +26 -1
- package/Line.config.js.map +1 -1
- package/Line.js +49 -23
- package/Line.js.map +1 -1
- package/LinkGraph.config.js +26 -1
- package/LinkGraph.config.js.map +1 -1
- package/LinkGraph.js +87 -61
- package/LinkGraph.js.map +1 -1
- package/Map.config.js +42 -5
- package/Map.config.js.map +1 -1
- package/Map.js +100 -60
- package/Map.js.map +1 -1
- package/Markdown.config.js +28 -5
- package/Markdown.config.js.map +1 -1
- package/Markdown.js +58 -35
- package/Markdown.js.map +1 -1
- package/MarkerGauge.config.js +31 -7
- package/MarkerGauge.config.js.map +1 -1
- package/MarkerGauge.js +2939 -3022
- package/MarkerGauge.js.map +1 -1
- package/ParallelCoordinates.config.js +35 -10
- package/ParallelCoordinates.config.js.map +1 -1
- package/ParallelCoordinates.js +61 -35
- package/ParallelCoordinates.js.map +1 -1
- package/Pie.config.js +32 -8
- package/Pie.config.js.map +1 -1
- package/Pie.js +2242 -2330
- package/Pie.js.map +1 -1
- package/Punchcard.config.js +28 -5
- package/Punchcard.config.js.map +1 -1
- package/Punchcard.js +72 -48
- package/Punchcard.js.map +1 -1
- package/Rectangle.config.js +28 -3
- package/Rectangle.config.js.map +1 -1
- package/Rectangle.js +155 -130
- package/Rectangle.js.map +1 -1
- package/Sankey.config.js +30 -5
- package/Sankey.config.js.map +1 -1
- package/Sankey.js +107 -82
- package/Sankey.js.map +1 -1
- package/Scatter.config.js +29 -3
- package/Scatter.config.js.map +1 -1
- package/Scatter.js +47 -22
- package/Scatter.js.map +1 -1
- package/SingleValue.config.js +33 -7
- package/SingleValue.config.js.map +1 -1
- package/SingleValue.js +63 -38
- package/SingleValue.js.map +1 -1
- package/SingleValueBasic.js +2 -2
- package/SingleValueIcon.config.js +31 -5
- package/SingleValueIcon.config.js.map +1 -1
- package/SingleValueIcon.js +71 -45
- package/SingleValueIcon.js.map +1 -1
- package/SingleValueRadial.config.js +160 -165
- package/SingleValueRadial.config.js.map +1 -1
- package/SingleValueRadial.js +112 -87
- package/SingleValueRadial.js.map +1 -1
- package/Table.config.js +31 -6
- package/Table.config.js.map +1 -1
- package/Table.js +249 -224
- package/Table.js.map +1 -1
- package/common/OptionsDoc.js +26 -1
- package/common/OptionsDoc.js.map +1 -1
- package/common/utils/configUtils.js +26 -1
- package/common/utils/configUtils.js.map +1 -1
- package/common/withDashboardViz.js +2 -2
- package/package.json +10 -10
package/Ellipse.config.js
CHANGED
|
@@ -123,7 +123,7 @@ var __rest = this && this.__rest || function (s, e) {
|
|
|
123
123
|
Object.defineProperty(exports, "__esModule", {
|
|
124
124
|
value: true
|
|
125
125
|
});
|
|
126
|
-
exports.insertLayout = exports.generatePrecisionValues = exports.getInitialPreset = exports.isDynamicOption = exports.enhanceOptionsSchemaWithDynamicOptions = exports.enhanceConfig = void 0;
|
|
126
|
+
exports.insertLayout = exports.uncollapseEditorConfig = exports.generatePrecisionValues = exports.getInitialPreset = exports.isDynamicOption = exports.enhanceOptionsSchemaWithDynamicOptions = exports.enhanceConfig = void 0;
|
|
127
127
|
|
|
128
128
|
var lodash_1 = __webpack_require__(5);
|
|
129
129
|
|
|
@@ -198,8 +198,10 @@ function enhanceOptionsSchemaWithDynamicOptions(optionsSchema) {
|
|
|
198
198
|
exports.enhanceOptionsSchemaWithDynamicOptions = enhanceOptionsSchemaWithDynamicOptions;
|
|
199
199
|
/**
|
|
200
200
|
* Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block
|
|
201
|
+
* this function also collapse all editor panels
|
|
201
202
|
* @param vizConfig a Visualization Config
|
|
202
203
|
* @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports
|
|
204
|
+
* and containing `open: false` for all editor panels in editorConfig
|
|
203
205
|
*/
|
|
204
206
|
|
|
205
207
|
function enhanceConfig(vizConfig) {
|
|
@@ -209,10 +211,33 @@ function enhanceConfig(vizConfig) {
|
|
|
209
211
|
enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);
|
|
210
212
|
}
|
|
211
213
|
|
|
214
|
+
enhancedConfig.editorConfig = vizConfig.editorConfig.map(function (config) {
|
|
215
|
+
return Object.assign(Object.assign({}, config), {
|
|
216
|
+
open: false
|
|
217
|
+
});
|
|
218
|
+
});
|
|
212
219
|
return enhancedConfig;
|
|
213
220
|
}
|
|
214
221
|
|
|
215
222
|
exports.enhanceConfig = enhanceConfig;
|
|
223
|
+
/**
|
|
224
|
+
* Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig
|
|
225
|
+
* Created for editor unit tests
|
|
226
|
+
* @param vizConfig a Visualization Config
|
|
227
|
+
* @returns a Visualization Config containing `open: true` for all editor panels in editorConfig
|
|
228
|
+
*/
|
|
229
|
+
|
|
230
|
+
function uncollapseEditorConfig(vizConfig) {
|
|
231
|
+
var editorPanelUncollapsedConfig = vizConfig;
|
|
232
|
+
editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(function (config) {
|
|
233
|
+
return Object.assign(Object.assign({}, config), {
|
|
234
|
+
open: true
|
|
235
|
+
});
|
|
236
|
+
});
|
|
237
|
+
return editorPanelUncollapsedConfig;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
exports.uncollapseEditorConfig = uncollapseEditorConfig;
|
|
216
241
|
|
|
217
242
|
function isDynamicOption(option) {
|
|
218
243
|
return option && typeof option === 'string' && option.trim().startsWith('>') || false;
|
package/Ellipse.config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///./src/common/utils/configUtils.ts","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///./src/common/interfaces/VizCategory.ts","webpack:///external \"@splunk/themes/pick\"","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/visualization-color-palettes/editors/PresetPalettes\"","webpack:///./src/common/editorConfig/DynamicFillColorEditor.ts","webpack:///./src/common/editorConfig/DynamicStrokeColorEditor.ts","webpack:///./src/common/editorConfig/StaticFillColorEditor.ts","webpack:///./src/common/editorConfig/StaticStrokeColorEditor.ts","webpack:///./src/Ellipse/config.ts"],"names":[],"mappings":"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","file":"Ellipse.config.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 42);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","import { get, range } from 'lodash';\nimport { DYNAMIC_OPTIONS_DSL_PATTERN } from '@splunk/visualizations-shared/schemaUtils';\nimport type { JSONSchema7Definition } from 'json-schema';\nimport { VizBehavior } from '../interfaces/VizBehavior';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { OptionsSchema } from '../interfaces/OptionsSchema';\nimport { EditorLayoutConfig } from '../interfaces/Editor';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\n}\n\nconst dynamicOptionsDSLType = {\n type: 'string',\n pattern: DYNAMIC_OPTIONS_DSL_PATTERN,\n} as const;\n\n/**\n * Helper function to extend an options schema with dynamic options DSL\n * @param optionsSchema a visualization's options schema\n * @returns an updated options schema that additionally allows strings starting with > for each option\n */\nfunction enhanceOptionsSchemaWithDynamicOptions(\n optionsSchema: OptionsSchema | JSONSchema7Definition\n): OptionsSchema {\n const enhancedOptionsSchema: OptionsSchema = {};\n Object.keys(optionsSchema).forEach((key): void => {\n const {\n // The next a few are schema annotations, we should leave them as is.\n // Note: in reality we don't use `readOnly`, `writeOnly` or `examples`, but they are listed here for completeness.\n // Ref: https://datatracker.ietf.org/doc/html/draft-handrews-json-schema-validation-01\n title,\n description,\n readOnly,\n writeOnly,\n examples,\n default: defaultValue,\n // The next a few need special care\n type,\n properties,\n patternProperties,\n // The rest should be handled together\n ...remainingSchemaEntry\n } = optionsSchema[key];\n\n const annotations = {\n ...(title !== undefined && { title }),\n ...(description !== undefined && { description }),\n ...(readOnly !== undefined && { readOnly }),\n ...(writeOnly !== undefined && { writeOnly }),\n ...(examples !== undefined && { examples }),\n ...(defaultValue !== undefined && { default: defaultValue }),\n };\n\n if (type === 'object') {\n enhancedOptionsSchema[key] = {\n ...remainingSchemaEntry,\n ...annotations,\n type,\n ...(properties && { properties: enhanceOptionsSchemaWithDynamicOptions(properties) }),\n };\n if (patternProperties) {\n let enhancedPatternProperties = {};\n Object.keys(patternProperties).forEach((opt): void => {\n enhancedPatternProperties = {\n ...enhancedPatternProperties,\n ...enhanceOptionsSchemaWithDynamicOptions({ [opt]: patternProperties[opt] }),\n };\n });\n enhancedOptionsSchema[key].patternProperties = enhancedPatternProperties;\n }\n } else {\n enhancedOptionsSchema[key] = {\n ...annotations,\n anyOf: [\n // we can't assume `type` is always there because there are `enum` and `const`.\n { ...(type !== undefined && { type }), ...remainingSchemaEntry },\n dynamicOptionsDSLType,\n ],\n };\n }\n });\n return enhancedOptionsSchema;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = vizConfig;\n if (vizConfig.supports.indexOf(VizBehavior.DYNAMIC_OPTIONS) !== -1) {\n enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);\n }\n return enhancedConfig;\n}\n\nfunction isDynamicOption(option?: string): boolean {\n return (option && typeof option === 'string' && option.trim().startsWith('>')) || false;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport {\n enhanceConfig,\n enhanceOptionsSchemaWithDynamicOptions,\n isDynamicOption,\n getInitialPreset,\n generatePrecisionValues,\n};\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","export enum VizBehavior {\n /**\n * Dynamic Options Behavior.\n * This allows visualization options to be powered by data\n *\n * **Example**\n *\n * sparklineValues: \">primary|seriesByIndex(0)\"\n * would configure sparklineValues with an array of data points\n * coming from the first series in the primary datasource\n *\n */\n DYNAMIC_OPTIONS = 'dynamic-options',\n EVENTS = 'events',\n /**\n * Placeholder behavior: visualization will display a placeholder rather than fail if any of the `requiredProps` is\n * missing.\n * @type {string}\n */\n PLACEHOLDER = 'placeholder',\n PAGE_AND_SORT = 'page-and-sort',\n}\n","module.exports = require(\"@splunk/visualizations-shared/schemaUtils\");","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","export enum VizCategory {\n SINGLE_VALUE = 'Single Value',\n TRENDS = 'Trends',\n COMPARISONS = 'Comparisons',\n TABLE = 'Table',\n GAUGE = 'Gauge',\n DISTRIBUTIONS = 'Distributions',\n CHOROPLETH = 'Choropleth Maps',\n SHAPES = 'Shapes',\n MISC = 'misc',\n FLOW = 'Flow',\n CORRELATION = 'Correlation',\n SPATIAL = 'Spatial',\n}\n","module.exports = require(\"@splunk/themes/pick\");","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/visualization-color-palettes/editors/PresetPalettes\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { isDynamicOption } from '../utils/configUtils';\n\nexport const getDynamicFillColorEditor = ({ defaultContext, defaultPalettesConfig }) => ({\n label: _('Dynamic Fill'),\n option: 'fillColor',\n context: 'fillColorEditorConfig',\n editor: 'editor.dynamicColor',\n showEditor: ({ options }) => isDynamicOption(options.fillColor),\n editorProps: {\n labelPosition: 'left',\n flyoutTitle: _('Dynamic Coloring: Fill Color'),\n formatters: [\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n fillDataValue: defaultContext.fillColorConfig,\n },\n },\n {\n label: _('Matches'),\n value: 'matchValue',\n defaults: {\n fillDataValue: defaultContext.fillColorMatchConfig,\n },\n },\n ],\n dataSelectors: [\n {\n label: _('Fill Color'),\n value: 'fillDataValue',\n },\n ],\n defaultPalettesConfig,\n },\n});\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { isDynamicOption } from '../utils/configUtils';\n\nexport const getDynamicStrokeColorEditor = ({ defaultContext, defaultPalettesConfig }) => ({\n label: _('Dynamic Stroke'),\n option: 'strokeColor',\n context: 'strokeColorEditorConfig',\n editor: 'editor.dynamicColor',\n showEditor: ({ options }) => isDynamicOption(options.strokeColor),\n editorProps: {\n labelPosition: 'left',\n flyoutTitle: _('Dynamic Coloring: Stroke Color'),\n formatters: [\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n strokeDataValue: defaultContext.strokeColorConfig,\n },\n },\n {\n label: _('Matches'),\n value: 'matchValue',\n defaults: {\n strokeDataValue: defaultContext.strokeColorMatchConfig,\n },\n },\n ],\n dataSelectors: [\n {\n label: _('Stroke Color'),\n value: 'strokeDataValue',\n },\n ],\n defaultPalettesConfig,\n },\n});\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { isDynamicOption } from '../utils/configUtils';\n\nconst StaticFillColorEditor = {\n label: _('Static Fill'),\n option: 'fillColor',\n editor: 'editor.color',\n showEditor: ({ options }) => !isDynamicOption(options.fillColor),\n};\n\nexport default StaticFillColorEditor;\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { isDynamicOption } from '../utils/configUtils';\n\nconst StaticStrokeColorEditor = {\n label: _('Static Stroke'),\n option: 'strokeColor',\n editor: 'editor.color',\n showEditor: ({ options }) => !isDynamicOption(options.strokeColor),\n};\n\nexport default StaticStrokeColorEditor;\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { defaultPalettesConfig } from '@splunk/visualization-color-palettes/editors/PresetPalettes';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { OptionsSchema } from '../common/interfaces/OptionsSchema';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { PresetEntry, enhanceConfig, getInitialPreset } from '../common/utils/configUtils';\nimport { getDynamicFillColorEditor } from '../common/editorConfig/DynamicFillColorEditor';\nimport { getDynamicStrokeColorEditor } from '../common/editorConfig/DynamicStrokeColorEditor';\nimport StaticFillColorEditor from '../common/editorConfig/StaticFillColorEditor';\nimport StaticStrokeColorEditor from '../common/editorConfig/StaticStrokeColorEditor';\n\nconst dataContract: DataContract = {\n requiredDataSources: [],\n optionalDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {\n fillColorConfig: [\n {\n from: 100,\n value: '#118832',\n },\n {\n from: 80,\n to: 100,\n value: '#669922',\n },\n {\n from: 60,\n to: 80,\n value: '#9D9F0D',\n },\n {\n from: 40,\n to: 60,\n value: '#CBA700',\n },\n {\n from: 20,\n to: 40,\n value: '#D97A0D',\n },\n {\n from: 0,\n to: 20,\n value: '#D94E17',\n },\n {\n to: 0,\n value: '#D41F1F',\n },\n ],\n strokeColorConfig: [\n {\n from: 100,\n value: '#118832',\n },\n {\n from: 80,\n to: 100,\n value: '#669922',\n },\n {\n from: 60,\n to: 80,\n value: '#9D9F0D',\n },\n {\n from: 40,\n to: 60,\n value: '#CBA700',\n },\n {\n from: 20,\n to: 40,\n value: '#D97A0D',\n },\n {\n from: 0,\n to: 20,\n value: '#D94E17',\n },\n {\n to: 0,\n value: '#D41F1F',\n },\n ],\n fillColorMatchConfig: [{ match: '', value: '#5C33FF' }],\n strokeColorMatchConfig: [{ match: '', value: '#5C33FF' }],\n};\n\nconst optionsSchema: OptionsSchema = {\n fillColor: {\n default: '> themes.defaultFillColor',\n description:\n 'Specify the fill color. You may use a dataSource to apply the color. The hex value format should be \"#FFFFFF\". The default for enterprise light is \"#C3CBD4\". The default for enterprise dark is \"#31373E\". The default for prisma dark is \"#0B0C0E\".',\n type: 'string',\n },\n fillOpacity: {\n default: 1,\n description:\n 'Specify the opacity of the fill. Choose a number in the range of 0 - 1 (inclusive). You can also express the value as a percentage. For example, \"0.80\" in source or \"80%\" in UI.',\n type: 'number',\n },\n strokeColor: {\n default: '> themes.defaultStrokeColor',\n description:\n 'Specify the stroke color. You may use a dataSource to apply the color. The hex value format should be \"#FFFFFF\". The default for enterprise light is \"#3C444D\". The default for enterprise dark is \"#C3CBD4\". The default for prisma dark is \"#ACACAD\".',\n type: 'string',\n },\n strokeDashStyle: {\n default: 0,\n description:\n 'Specify the size, in pixels, of dashes and spaces used to create a custom stitched outline. The value you specify applies to both the dashes and the spaces between them.',\n type: 'number',\n },\n strokeOpacity: {\n default: 1,\n description:\n 'Specify the opacity of the stroke. Choose a number in the range of 0 - 1 (inclusive). You can also express the value as a percentage. For example, \"0.80\" in source or \"80%\" in UI.',\n type: 'number',\n },\n strokeWidth: {\n default: 1,\n description: 'Specify the width of the stroke, in pixels, in the range of 1 - 25 (inclusive).',\n type: 'number',\n },\n};\n\nconst themes: ThemedDefaults = {\n defaultFillColor: props =>\n pick({\n enterprise: {\n dark: variables.gray25(props),\n light: variables.gray80(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n defaultStrokeColor: props =>\n pick({\n enterprise: {\n dark: variables.gray80(props),\n light: variables.gray30(props),\n },\n prisma: variables.neutral500(props),\n })(props),\n};\n\nconst basePresetContext = {\n fillColorEditorConfig: undefined,\n strokeColorEditorConfig: undefined,\n};\n\nconst basePresetOptions = {\n fillColor: undefined,\n strokeColor: undefined,\n};\n\nconst presets: PresetEntry[] = [\n {\n // dummy context variables to allow for resetting of unused context states\n label: _('None'),\n name: 'ellipse.none',\n value: {\n context: { ...basePresetContext },\n options: { ...basePresetOptions },\n },\n },\n {\n label: _('Fill'),\n name: 'ellipse.fill',\n value: {\n context: {\n ...basePresetContext,\n fillDataValue: '> primary | seriesByType(\"number\") | lastPoint()',\n fillColorEditorConfig: defaultContext.fillColorConfig,\n },\n options: {\n ...basePresetOptions,\n fillColor: '> fillDataValue | rangeValue(fillColorEditorConfig)',\n },\n },\n },\n {\n label: _('Stroke'),\n name: 'ellipse.stroke',\n value: {\n context: {\n ...basePresetContext,\n strokeDataValue: '> primary | seriesByType(\"number\") | lastPoint()',\n strokeColorEditorConfig: defaultContext.strokeColorConfig,\n },\n options: {\n ...basePresetOptions,\n strokeColor: '> strokeDataValue | rangeValue(strokeColorEditorConfig)',\n },\n },\n },\n {\n label: _('Fill & Stroke'),\n name: 'ellipse.fillAndStroke',\n value: {\n context: {\n ...basePresetContext,\n fillDataValue: '> primary | seriesByType(\"number\") | lastPoint()',\n strokeDataValue: '> primary | seriesByType(\"number\") | lastPoint()',\n fillColorEditorConfig: defaultContext.fillColorConfig,\n strokeColorEditorConfig: defaultContext.strokeColorConfig,\n },\n options: {\n ...basePresetOptions,\n fillColor: '> fillDataValue | rangeValue(fillColorEditorConfig)',\n strokeColor: '> strokeDataValue | rangeValue(strokeColorEditorConfig)',\n },\n },\n },\n];\n\nconst editorConfig: EditorConfig[] = [\n {\n label: _('General'),\n layout: [\n [\n {\n label: _('Fill Opacity (%)'),\n option: 'fillOpacity',\n editor: 'editor.percent',\n editorProps: {\n min: 0,\n },\n },\n {\n label: _('Stroke Opacity (%)'),\n option: 'strokeOpacity',\n editor: 'editor.percent',\n editorProps: {\n min: 0,\n },\n },\n ],\n [\n {\n label: _('Stroke Width'),\n option: 'strokeWidth',\n editor: 'editor.number',\n editorProps: {\n min: 0,\n },\n },\n {\n label: _('Stroke Dash Style'),\n option: 'strokeDashStyle',\n editor: 'editor.number',\n editorProps: {\n min: 0,\n },\n },\n ],\n ],\n },\n {\n label: _('Coloring'),\n layout: [\n [\n {\n label: 'Dynamic Elements',\n key: 'presetSelector',\n editor: 'editor.presetSelector',\n editorProps: {\n presets,\n value: ({ context, options }) => {\n const initialPreset = getInitialPreset(context, options, presets);\n return (initialPreset && initialPreset.label) || null;\n },\n },\n },\n ],\n [\n {\n ...StaticFillColorEditor,\n editorProps: {\n labelPosition: 'left',\n themes,\n },\n },\n ],\n [getDynamicFillColorEditor({ defaultContext, defaultPalettesConfig })],\n [\n {\n ...StaticStrokeColorEditor,\n editorProps: {\n labelPosition: 'left',\n themes,\n },\n },\n ],\n [getDynamicStrokeColorEditor({ defaultContext, defaultPalettesConfig })],\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.ellipse',\n /**\n * viz name\n */\n name: 'Ellipse',\n category: VizCategory.SHAPES,\n /**\n * viz icon\n */\n icon: null,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'ellipse.click': {\n description: 'triggered when user clicks ellipse',\n payloadKeys: ['strokeColor', 'fillColor'],\n },\n },\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.EVENTS],\n themes,\n};\n\nexport default enhanceConfig(config);\n"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///./src/common/utils/configUtils.ts","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///./src/common/interfaces/VizCategory.ts","webpack:///external \"@splunk/themes/pick\"","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/visualization-color-palettes/editors/PresetPalettes\"","webpack:///./src/common/editorConfig/DynamicFillColorEditor.ts","webpack:///./src/common/editorConfig/DynamicStrokeColorEditor.ts","webpack:///./src/common/editorConfig/StaticFillColorEditor.ts","webpack:///./src/common/editorConfig/StaticStrokeColorEditor.ts","webpack:///./src/Ellipse/config.ts"],"names":[],"mappings":"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","file":"Ellipse.config.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 42);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","import { get, range } from 'lodash';\nimport { DYNAMIC_OPTIONS_DSL_PATTERN } from '@splunk/visualizations-shared/schemaUtils';\nimport type { JSONSchema7Definition } from 'json-schema';\nimport { VizBehavior } from '../interfaces/VizBehavior';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { OptionsSchema } from '../interfaces/OptionsSchema';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\n}\n\nconst dynamicOptionsDSLType = {\n type: 'string',\n pattern: DYNAMIC_OPTIONS_DSL_PATTERN,\n} as const;\n\n/**\n * Helper function to extend an options schema with dynamic options DSL\n * @param optionsSchema a visualization's options schema\n * @returns an updated options schema that additionally allows strings starting with > for each option\n */\nfunction enhanceOptionsSchemaWithDynamicOptions(\n optionsSchema: OptionsSchema | JSONSchema7Definition\n): OptionsSchema {\n const enhancedOptionsSchema: OptionsSchema = {};\n Object.keys(optionsSchema).forEach((key): void => {\n const {\n // The next a few are schema annotations, we should leave them as is.\n // Note: in reality we don't use `readOnly`, `writeOnly` or `examples`, but they are listed here for completeness.\n // Ref: https://datatracker.ietf.org/doc/html/draft-handrews-json-schema-validation-01\n title,\n description,\n readOnly,\n writeOnly,\n examples,\n default: defaultValue,\n // The next a few need special care\n type,\n properties,\n patternProperties,\n // The rest should be handled together\n ...remainingSchemaEntry\n } = optionsSchema[key];\n\n const annotations = {\n ...(title !== undefined && { title }),\n ...(description !== undefined && { description }),\n ...(readOnly !== undefined && { readOnly }),\n ...(writeOnly !== undefined && { writeOnly }),\n ...(examples !== undefined && { examples }),\n ...(defaultValue !== undefined && { default: defaultValue }),\n };\n\n if (type === 'object') {\n enhancedOptionsSchema[key] = {\n ...remainingSchemaEntry,\n ...annotations,\n type,\n ...(properties && { properties: enhanceOptionsSchemaWithDynamicOptions(properties) }),\n };\n if (patternProperties) {\n let enhancedPatternProperties = {};\n Object.keys(patternProperties).forEach((opt): void => {\n enhancedPatternProperties = {\n ...enhancedPatternProperties,\n ...enhanceOptionsSchemaWithDynamicOptions({ [opt]: patternProperties[opt] }),\n };\n });\n enhancedOptionsSchema[key].patternProperties = enhancedPatternProperties;\n }\n } else {\n enhancedOptionsSchema[key] = {\n ...annotations,\n anyOf: [\n // we can't assume `type` is always there because there are `enum` and `const`.\n { ...(type !== undefined && { type }), ...remainingSchemaEntry },\n dynamicOptionsDSLType,\n ],\n };\n }\n });\n return enhancedOptionsSchema;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * this function also collapse all editor panels\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n * and containing `open: false` for all editor panels in editorConfig\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = vizConfig;\n if (vizConfig.supports.indexOf(VizBehavior.DYNAMIC_OPTIONS) !== -1) {\n enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);\n }\n enhancedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: false };\n }\n );\n return enhancedConfig;\n}\n\n/**\n * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig\n * Created for editor unit tests\n * @param vizConfig a Visualization Config\n * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig\n */\nfunction uncollapseEditorConfig(vizConfig: VizConfig): VizConfig {\n const editorPanelUncollapsedConfig: VizConfig = vizConfig;\n editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: true };\n }\n );\n return editorPanelUncollapsedConfig;\n}\n\nfunction isDynamicOption(option?: string): boolean {\n return (option && typeof option === 'string' && option.trim().startsWith('>')) || false;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport {\n enhanceConfig,\n enhanceOptionsSchemaWithDynamicOptions,\n isDynamicOption,\n getInitialPreset,\n generatePrecisionValues,\n uncollapseEditorConfig,\n};\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","export enum VizBehavior {\n /**\n * Dynamic Options Behavior.\n * This allows visualization options to be powered by data\n *\n * **Example**\n *\n * sparklineValues: \">primary|seriesByIndex(0)\"\n * would configure sparklineValues with an array of data points\n * coming from the first series in the primary datasource\n *\n */\n DYNAMIC_OPTIONS = 'dynamic-options',\n EVENTS = 'events',\n /**\n * Placeholder behavior: visualization will display a placeholder rather than fail if any of the `requiredProps` is\n * missing.\n * @type {string}\n */\n PLACEHOLDER = 'placeholder',\n PAGE_AND_SORT = 'page-and-sort',\n}\n","module.exports = require(\"@splunk/visualizations-shared/schemaUtils\");","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","export enum VizCategory {\n SINGLE_VALUE = 'Single Value',\n TRENDS = 'Trends',\n COMPARISONS = 'Comparisons',\n TABLE = 'Table',\n GAUGE = 'Gauge',\n DISTRIBUTIONS = 'Distributions',\n CHOROPLETH = 'Choropleth Maps',\n SHAPES = 'Shapes',\n MISC = 'misc',\n FLOW = 'Flow',\n CORRELATION = 'Correlation',\n SPATIAL = 'Spatial',\n}\n","module.exports = require(\"@splunk/themes/pick\");","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/visualization-color-palettes/editors/PresetPalettes\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { isDynamicOption } from '../utils/configUtils';\n\nexport const getDynamicFillColorEditor = ({ defaultContext, defaultPalettesConfig }) => ({\n label: _('Dynamic Fill'),\n option: 'fillColor',\n context: 'fillColorEditorConfig',\n editor: 'editor.dynamicColor',\n showEditor: ({ options }) => isDynamicOption(options.fillColor),\n editorProps: {\n labelPosition: 'left',\n flyoutTitle: _('Dynamic Coloring: Fill Color'),\n formatters: [\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n fillDataValue: defaultContext.fillColorConfig,\n },\n },\n {\n label: _('Matches'),\n value: 'matchValue',\n defaults: {\n fillDataValue: defaultContext.fillColorMatchConfig,\n },\n },\n ],\n dataSelectors: [\n {\n label: _('Fill Color'),\n value: 'fillDataValue',\n },\n ],\n defaultPalettesConfig,\n },\n});\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { isDynamicOption } from '../utils/configUtils';\n\nexport const getDynamicStrokeColorEditor = ({ defaultContext, defaultPalettesConfig }) => ({\n label: _('Dynamic Stroke'),\n option: 'strokeColor',\n context: 'strokeColorEditorConfig',\n editor: 'editor.dynamicColor',\n showEditor: ({ options }) => isDynamicOption(options.strokeColor),\n editorProps: {\n labelPosition: 'left',\n flyoutTitle: _('Dynamic Coloring: Stroke Color'),\n formatters: [\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n strokeDataValue: defaultContext.strokeColorConfig,\n },\n },\n {\n label: _('Matches'),\n value: 'matchValue',\n defaults: {\n strokeDataValue: defaultContext.strokeColorMatchConfig,\n },\n },\n ],\n dataSelectors: [\n {\n label: _('Stroke Color'),\n value: 'strokeDataValue',\n },\n ],\n defaultPalettesConfig,\n },\n});\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { isDynamicOption } from '../utils/configUtils';\n\nconst StaticFillColorEditor = {\n label: _('Static Fill'),\n option: 'fillColor',\n editor: 'editor.color',\n showEditor: ({ options }) => !isDynamicOption(options.fillColor),\n};\n\nexport default StaticFillColorEditor;\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { isDynamicOption } from '../utils/configUtils';\n\nconst StaticStrokeColorEditor = {\n label: _('Static Stroke'),\n option: 'strokeColor',\n editor: 'editor.color',\n showEditor: ({ options }) => !isDynamicOption(options.strokeColor),\n};\n\nexport default StaticStrokeColorEditor;\n","import { _ } from '@splunk/ui-utils/i18n';\nimport { defaultPalettesConfig } from '@splunk/visualization-color-palettes/editors/PresetPalettes';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { OptionsSchema } from '../common/interfaces/OptionsSchema';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { PresetEntry, enhanceConfig, getInitialPreset } from '../common/utils/configUtils';\nimport { getDynamicFillColorEditor } from '../common/editorConfig/DynamicFillColorEditor';\nimport { getDynamicStrokeColorEditor } from '../common/editorConfig/DynamicStrokeColorEditor';\nimport StaticFillColorEditor from '../common/editorConfig/StaticFillColorEditor';\nimport StaticStrokeColorEditor from '../common/editorConfig/StaticStrokeColorEditor';\n\nconst dataContract: DataContract = {\n requiredDataSources: [],\n optionalDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {\n fillColorConfig: [\n {\n from: 100,\n value: '#118832',\n },\n {\n from: 80,\n to: 100,\n value: '#669922',\n },\n {\n from: 60,\n to: 80,\n value: '#9D9F0D',\n },\n {\n from: 40,\n to: 60,\n value: '#CBA700',\n },\n {\n from: 20,\n to: 40,\n value: '#D97A0D',\n },\n {\n from: 0,\n to: 20,\n value: '#D94E17',\n },\n {\n to: 0,\n value: '#D41F1F',\n },\n ],\n strokeColorConfig: [\n {\n from: 100,\n value: '#118832',\n },\n {\n from: 80,\n to: 100,\n value: '#669922',\n },\n {\n from: 60,\n to: 80,\n value: '#9D9F0D',\n },\n {\n from: 40,\n to: 60,\n value: '#CBA700',\n },\n {\n from: 20,\n to: 40,\n value: '#D97A0D',\n },\n {\n from: 0,\n to: 20,\n value: '#D94E17',\n },\n {\n to: 0,\n value: '#D41F1F',\n },\n ],\n fillColorMatchConfig: [{ match: '', value: '#5C33FF' }],\n strokeColorMatchConfig: [{ match: '', value: '#5C33FF' }],\n};\n\nconst optionsSchema: OptionsSchema = {\n fillColor: {\n default: '> themes.defaultFillColor',\n description:\n 'Specify the fill color. You may use a dataSource to apply the color. The hex value format should be \"#FFFFFF\". The default for enterprise light is \"#C3CBD4\". The default for enterprise dark is \"#31373E\". The default for prisma dark is \"#0B0C0E\".',\n type: 'string',\n },\n fillOpacity: {\n default: 1,\n description:\n 'Specify the opacity of the fill. Choose a number in the range of 0 - 1 (inclusive). You can also express the value as a percentage. For example, \"0.80\" in source or \"80%\" in UI.',\n type: 'number',\n },\n strokeColor: {\n default: '> themes.defaultStrokeColor',\n description:\n 'Specify the stroke color. You may use a dataSource to apply the color. The hex value format should be \"#FFFFFF\". The default for enterprise light is \"#3C444D\". The default for enterprise dark is \"#C3CBD4\". The default for prisma dark is \"#ACACAD\".',\n type: 'string',\n },\n strokeDashStyle: {\n default: 0,\n description:\n 'Specify the size, in pixels, of dashes and spaces used to create a custom stitched outline. The value you specify applies to both the dashes and the spaces between them.',\n type: 'number',\n },\n strokeOpacity: {\n default: 1,\n description:\n 'Specify the opacity of the stroke. Choose a number in the range of 0 - 1 (inclusive). You can also express the value as a percentage. For example, \"0.80\" in source or \"80%\" in UI.',\n type: 'number',\n },\n strokeWidth: {\n default: 1,\n description: 'Specify the width of the stroke, in pixels, in the range of 1 - 25 (inclusive).',\n type: 'number',\n },\n};\n\nconst themes: ThemedDefaults = {\n defaultFillColor: props =>\n pick({\n enterprise: {\n dark: variables.gray25(props),\n light: variables.gray80(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n defaultStrokeColor: props =>\n pick({\n enterprise: {\n dark: variables.gray80(props),\n light: variables.gray30(props),\n },\n prisma: variables.neutral500(props),\n })(props),\n};\n\nconst basePresetContext = {\n fillColorEditorConfig: undefined,\n strokeColorEditorConfig: undefined,\n};\n\nconst basePresetOptions = {\n fillColor: undefined,\n strokeColor: undefined,\n};\n\nconst presets: PresetEntry[] = [\n {\n // dummy context variables to allow for resetting of unused context states\n label: _('None'),\n name: 'ellipse.none',\n value: {\n context: { ...basePresetContext },\n options: { ...basePresetOptions },\n },\n },\n {\n label: _('Fill'),\n name: 'ellipse.fill',\n value: {\n context: {\n ...basePresetContext,\n fillDataValue: '> primary | seriesByType(\"number\") | lastPoint()',\n fillColorEditorConfig: defaultContext.fillColorConfig,\n },\n options: {\n ...basePresetOptions,\n fillColor: '> fillDataValue | rangeValue(fillColorEditorConfig)',\n },\n },\n },\n {\n label: _('Stroke'),\n name: 'ellipse.stroke',\n value: {\n context: {\n ...basePresetContext,\n strokeDataValue: '> primary | seriesByType(\"number\") | lastPoint()',\n strokeColorEditorConfig: defaultContext.strokeColorConfig,\n },\n options: {\n ...basePresetOptions,\n strokeColor: '> strokeDataValue | rangeValue(strokeColorEditorConfig)',\n },\n },\n },\n {\n label: _('Fill & Stroke'),\n name: 'ellipse.fillAndStroke',\n value: {\n context: {\n ...basePresetContext,\n fillDataValue: '> primary | seriesByType(\"number\") | lastPoint()',\n strokeDataValue: '> primary | seriesByType(\"number\") | lastPoint()',\n fillColorEditorConfig: defaultContext.fillColorConfig,\n strokeColorEditorConfig: defaultContext.strokeColorConfig,\n },\n options: {\n ...basePresetOptions,\n fillColor: '> fillDataValue | rangeValue(fillColorEditorConfig)',\n strokeColor: '> strokeDataValue | rangeValue(strokeColorEditorConfig)',\n },\n },\n },\n];\n\nconst editorConfig: EditorConfig[] = [\n {\n label: _('General'),\n layout: [\n [\n {\n label: _('Fill Opacity (%)'),\n option: 'fillOpacity',\n editor: 'editor.percent',\n editorProps: {\n min: 0,\n },\n },\n {\n label: _('Stroke Opacity (%)'),\n option: 'strokeOpacity',\n editor: 'editor.percent',\n editorProps: {\n min: 0,\n },\n },\n ],\n [\n {\n label: _('Stroke Width'),\n option: 'strokeWidth',\n editor: 'editor.number',\n editorProps: {\n min: 0,\n },\n },\n {\n label: _('Stroke Dash Style'),\n option: 'strokeDashStyle',\n editor: 'editor.number',\n editorProps: {\n min: 0,\n },\n },\n ],\n ],\n },\n {\n label: _('Coloring'),\n layout: [\n [\n {\n label: 'Dynamic Elements',\n key: 'presetSelector',\n editor: 'editor.presetSelector',\n editorProps: {\n presets,\n value: ({ context, options }) => {\n const initialPreset = getInitialPreset(context, options, presets);\n return (initialPreset && initialPreset.label) || null;\n },\n },\n },\n ],\n [\n {\n ...StaticFillColorEditor,\n editorProps: {\n labelPosition: 'left',\n themes,\n },\n },\n ],\n [getDynamicFillColorEditor({ defaultContext, defaultPalettesConfig })],\n [\n {\n ...StaticStrokeColorEditor,\n editorProps: {\n labelPosition: 'left',\n themes,\n },\n },\n ],\n [getDynamicStrokeColorEditor({ defaultContext, defaultPalettesConfig })],\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.ellipse',\n /**\n * viz name\n */\n name: 'Ellipse',\n category: VizCategory.SHAPES,\n /**\n * viz icon\n */\n icon: null,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'ellipse.click': {\n description: 'triggered when user clicks ellipse',\n payloadKeys: ['strokeColor', 'fillColor'],\n },\n },\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.EVENTS],\n themes,\n};\n\nexport default enhanceConfig(config);\n"],"sourceRoot":""}
|
package/Ellipse.js
CHANGED
|
@@ -87,7 +87,7 @@ module.exports =
|
|
|
87
87
|
/******/
|
|
88
88
|
/******/
|
|
89
89
|
/******/ // Load entry module and return exports
|
|
90
|
-
/******/ return __webpack_require__(__webpack_require__.s =
|
|
90
|
+
/******/ return __webpack_require__(__webpack_require__.s = 170);
|
|
91
91
|
/******/ })
|
|
92
92
|
/************************************************************************/
|
|
93
93
|
/******/ ([
|
|
@@ -184,7 +184,7 @@ var __rest = this && this.__rest || function (s, e) {
|
|
|
184
184
|
Object.defineProperty(exports, "__esModule", {
|
|
185
185
|
value: true
|
|
186
186
|
});
|
|
187
|
-
exports.insertLayout = exports.generatePrecisionValues = exports.getInitialPreset = exports.isDynamicOption = exports.enhanceOptionsSchemaWithDynamicOptions = exports.enhanceConfig = void 0;
|
|
187
|
+
exports.insertLayout = exports.uncollapseEditorConfig = exports.generatePrecisionValues = exports.getInitialPreset = exports.isDynamicOption = exports.enhanceOptionsSchemaWithDynamicOptions = exports.enhanceConfig = void 0;
|
|
188
188
|
|
|
189
189
|
var lodash_1 = __webpack_require__(2);
|
|
190
190
|
|
|
@@ -259,8 +259,10 @@ function enhanceOptionsSchemaWithDynamicOptions(optionsSchema) {
|
|
|
259
259
|
exports.enhanceOptionsSchemaWithDynamicOptions = enhanceOptionsSchemaWithDynamicOptions;
|
|
260
260
|
/**
|
|
261
261
|
* Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block
|
|
262
|
+
* this function also collapse all editor panels
|
|
262
263
|
* @param vizConfig a Visualization Config
|
|
263
264
|
* @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports
|
|
265
|
+
* and containing `open: false` for all editor panels in editorConfig
|
|
264
266
|
*/
|
|
265
267
|
|
|
266
268
|
function enhanceConfig(vizConfig) {
|
|
@@ -270,10 +272,33 @@ function enhanceConfig(vizConfig) {
|
|
|
270
272
|
enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);
|
|
271
273
|
}
|
|
272
274
|
|
|
275
|
+
enhancedConfig.editorConfig = vizConfig.editorConfig.map(function (config) {
|
|
276
|
+
return Object.assign(Object.assign({}, config), {
|
|
277
|
+
open: false
|
|
278
|
+
});
|
|
279
|
+
});
|
|
273
280
|
return enhancedConfig;
|
|
274
281
|
}
|
|
275
282
|
|
|
276
283
|
exports.enhanceConfig = enhanceConfig;
|
|
284
|
+
/**
|
|
285
|
+
* Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig
|
|
286
|
+
* Created for editor unit tests
|
|
287
|
+
* @param vizConfig a Visualization Config
|
|
288
|
+
* @returns a Visualization Config containing `open: true` for all editor panels in editorConfig
|
|
289
|
+
*/
|
|
290
|
+
|
|
291
|
+
function uncollapseEditorConfig(vizConfig) {
|
|
292
|
+
var editorPanelUncollapsedConfig = vizConfig;
|
|
293
|
+
editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(function (config) {
|
|
294
|
+
return Object.assign(Object.assign({}, config), {
|
|
295
|
+
open: true
|
|
296
|
+
});
|
|
297
|
+
});
|
|
298
|
+
return editorPanelUncollapsedConfig;
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
exports.uncollapseEditorConfig = uncollapseEditorConfig;
|
|
277
302
|
|
|
278
303
|
function isDynamicOption(option) {
|
|
279
304
|
return option && typeof option === 'string' && option.trim().startsWith('>') || false;
|
|
@@ -381,7 +406,7 @@ module.exports = require("@babel/runtime/helpers/defineProperty");
|
|
|
381
406
|
"use strict";
|
|
382
407
|
|
|
383
408
|
|
|
384
|
-
var _typeof = __webpack_require__(
|
|
409
|
+
var _typeof = __webpack_require__(25);
|
|
385
410
|
|
|
386
411
|
Object.defineProperty(exports, "__esModule", {
|
|
387
412
|
value: true
|
|
@@ -566,7 +591,7 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
|
|
|
566
591
|
|
|
567
592
|
return React.createElement(FixSizeItem, {
|
|
568
593
|
"data-test": "fix-size-item",
|
|
569
|
-
"data-splunk-visualization-version": "25.0.
|
|
594
|
+
"data-splunk-visualization-version": "25.0.1 - de10ad954",
|
|
570
595
|
width: width,
|
|
571
596
|
height: height,
|
|
572
597
|
backgroundColor: backgroundColor
|
|
@@ -630,14 +655,8 @@ module.exports = require("@splunk/visualization-context/TimezoneContext");
|
|
|
630
655
|
module.exports = require("@splunk/visualizations-shared/propUtils");
|
|
631
656
|
|
|
632
657
|
/***/ }),
|
|
633
|
-
/* 23
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
module.exports = require("@babel/runtime/helpers/typeof");
|
|
637
|
-
|
|
638
|
-
/***/ }),
|
|
639
|
-
/* 24 */,
|
|
640
|
-
/* 25 */
|
|
658
|
+
/* 23 */,
|
|
659
|
+
/* 24 */
|
|
641
660
|
/***/ (function(module, exports, __webpack_require__) {
|
|
642
661
|
|
|
643
662
|
"use strict";
|
|
@@ -669,6 +688,12 @@ var pickFieldFromJSONSchema = function pickFieldFromJSONSchema(optionsSchema) {
|
|
|
669
688
|
|
|
670
689
|
exports.pickFieldFromJSONSchema = pickFieldFromJSONSchema;
|
|
671
690
|
|
|
691
|
+
/***/ }),
|
|
692
|
+
/* 25 */
|
|
693
|
+
/***/ (function(module, exports) {
|
|
694
|
+
|
|
695
|
+
module.exports = require("@babel/runtime/helpers/typeof");
|
|
696
|
+
|
|
672
697
|
/***/ }),
|
|
673
698
|
/* 26 */
|
|
674
699
|
/***/ (function(module, exports, __webpack_require__) {
|
|
@@ -959,7 +984,7 @@ var getPagination_1 = __webpack_require__(28);
|
|
|
959
984
|
|
|
960
985
|
var useDeepMemo_1 = __webpack_require__(38);
|
|
961
986
|
|
|
962
|
-
var JSONSchemaUtils_1 = __webpack_require__(
|
|
987
|
+
var JSONSchemaUtils_1 = __webpack_require__(24);
|
|
963
988
|
|
|
964
989
|
var MissingPropsMessage_1 = __webpack_require__(39);
|
|
965
990
|
|
|
@@ -1539,7 +1564,7 @@ var Cover = styled_components_1.default.div.withConfig({
|
|
|
1539
1564
|
componentId: "sc-1gsbnxb-0"
|
|
1540
1565
|
})(["position:absolute;left:0;right:0;top:0;bottom:0;"]);
|
|
1541
1566
|
var Blocker = styled_components_1.default.div.attrs({
|
|
1542
|
-
'data-splunk-visualization-version': "25.0.
|
|
1567
|
+
'data-splunk-visualization-version': "25.0.1 - de10ad954"
|
|
1543
1568
|
}).withConfig({
|
|
1544
1569
|
displayName: "withEditModeCover__Blocker",
|
|
1545
1570
|
componentId: "sc-1gsbnxb-1"
|
|
@@ -1697,7 +1722,8 @@ module.exports = require("@splunk/visualization-color-palettes/editors/PresetPal
|
|
|
1697
1722
|
/* 92 */,
|
|
1698
1723
|
/* 93 */,
|
|
1699
1724
|
/* 94 */,
|
|
1700
|
-
/* 95
|
|
1725
|
+
/* 95 */,
|
|
1726
|
+
/* 96 */
|
|
1701
1727
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1702
1728
|
|
|
1703
1729
|
"use strict";
|
|
@@ -1752,7 +1778,7 @@ var getDynamicFillColorEditor = function getDynamicFillColorEditor(_ref) {
|
|
|
1752
1778
|
exports.getDynamicFillColorEditor = getDynamicFillColorEditor;
|
|
1753
1779
|
|
|
1754
1780
|
/***/ }),
|
|
1755
|
-
/*
|
|
1781
|
+
/* 97 */
|
|
1756
1782
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1757
1783
|
|
|
1758
1784
|
"use strict";
|
|
@@ -1807,7 +1833,7 @@ var getDynamicStrokeColorEditor = function getDynamicStrokeColorEditor(_ref) {
|
|
|
1807
1833
|
exports.getDynamicStrokeColorEditor = getDynamicStrokeColorEditor;
|
|
1808
1834
|
|
|
1809
1835
|
/***/ }),
|
|
1810
|
-
/*
|
|
1836
|
+
/* 98 */
|
|
1811
1837
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1812
1838
|
|
|
1813
1839
|
"use strict";
|
|
@@ -1833,7 +1859,7 @@ var StaticFillColorEditor = {
|
|
|
1833
1859
|
exports.default = StaticFillColorEditor;
|
|
1834
1860
|
|
|
1835
1861
|
/***/ }),
|
|
1836
|
-
/*
|
|
1862
|
+
/* 99 */
|
|
1837
1863
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1838
1864
|
|
|
1839
1865
|
"use strict";
|
|
@@ -1859,7 +1885,7 @@ var StaticStrokeColorEditor = {
|
|
|
1859
1885
|
exports.default = StaticStrokeColorEditor;
|
|
1860
1886
|
|
|
1861
1887
|
/***/ }),
|
|
1862
|
-
/*
|
|
1888
|
+
/* 100 */
|
|
1863
1889
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1864
1890
|
|
|
1865
1891
|
"use strict";
|
|
@@ -1935,7 +1961,6 @@ var getStyledShape = function getStyledShape(shape) {
|
|
|
1935
1961
|
exports.getStyledShape = getStyledShape;
|
|
1936
1962
|
|
|
1937
1963
|
/***/ }),
|
|
1938
|
-
/* 100 */,
|
|
1939
1964
|
/* 101 */,
|
|
1940
1965
|
/* 102 */,
|
|
1941
1966
|
/* 103 */,
|
|
@@ -1957,7 +1982,8 @@ exports.getStyledShape = getStyledShape;
|
|
|
1957
1982
|
/* 119 */,
|
|
1958
1983
|
/* 120 */,
|
|
1959
1984
|
/* 121 */,
|
|
1960
|
-
/* 122
|
|
1985
|
+
/* 122 */,
|
|
1986
|
+
/* 123 */
|
|
1961
1987
|
/***/ (function(module, exports, __webpack_require__) {
|
|
1962
1988
|
|
|
1963
1989
|
"use strict";
|
|
@@ -1989,13 +2015,13 @@ var styled_components_1 = __webpack_require__(4);
|
|
|
1989
2015
|
|
|
1990
2016
|
var T = __webpack_require__(0);
|
|
1991
2017
|
|
|
1992
|
-
var config_1 = __webpack_require__(
|
|
2018
|
+
var config_1 = __webpack_require__(171);
|
|
1993
2019
|
|
|
1994
2020
|
exports.config = config_1.default;
|
|
1995
2021
|
|
|
1996
2022
|
var withDashboardViz_1 = __webpack_require__(30);
|
|
1997
2023
|
|
|
1998
|
-
var shapeUtils_1 = __webpack_require__(
|
|
2024
|
+
var shapeUtils_1 = __webpack_require__(100);
|
|
1999
2025
|
|
|
2000
2026
|
var validOptions = Object.keys(config_1.default.optionsSchema);
|
|
2001
2027
|
var SVGContainer = styled_components_1.default.svg.withConfig({
|
|
@@ -2064,7 +2090,6 @@ exports.themes = themes;
|
|
|
2064
2090
|
exports.default = Ellipse;
|
|
2065
2091
|
|
|
2066
2092
|
/***/ }),
|
|
2067
|
-
/* 123 */,
|
|
2068
2093
|
/* 124 */,
|
|
2069
2094
|
/* 125 */,
|
|
2070
2095
|
/* 126 */,
|
|
@@ -2110,7 +2135,8 @@ exports.default = Ellipse;
|
|
|
2110
2135
|
/* 166 */,
|
|
2111
2136
|
/* 167 */,
|
|
2112
2137
|
/* 168 */,
|
|
2113
|
-
/* 169
|
|
2138
|
+
/* 169 */,
|
|
2139
|
+
/* 170 */
|
|
2114
2140
|
/***/ (function(module, exports, __webpack_require__) {
|
|
2115
2141
|
|
|
2116
2142
|
"use strict";
|
|
@@ -2140,9 +2166,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
2140
2166
|
});
|
|
2141
2167
|
exports.default = void 0;
|
|
2142
2168
|
|
|
2143
|
-
__exportStar(__webpack_require__(
|
|
2169
|
+
__exportStar(__webpack_require__(123), exports);
|
|
2144
2170
|
|
|
2145
|
-
var Ellipse_1 = __webpack_require__(
|
|
2171
|
+
var Ellipse_1 = __webpack_require__(123);
|
|
2146
2172
|
|
|
2147
2173
|
Object.defineProperty(exports, "default", {
|
|
2148
2174
|
enumerable: true,
|
|
@@ -2152,7 +2178,7 @@ Object.defineProperty(exports, "default", {
|
|
|
2152
2178
|
});
|
|
2153
2179
|
|
|
2154
2180
|
/***/ }),
|
|
2155
|
-
/*
|
|
2181
|
+
/* 171 */
|
|
2156
2182
|
/***/ (function(module, exports, __webpack_require__) {
|
|
2157
2183
|
|
|
2158
2184
|
"use strict";
|
|
@@ -2176,13 +2202,13 @@ var VizCategory_1 = __webpack_require__(29);
|
|
|
2176
2202
|
|
|
2177
2203
|
var configUtils_1 = __webpack_require__(6);
|
|
2178
2204
|
|
|
2179
|
-
var DynamicFillColorEditor_1 = __webpack_require__(
|
|
2205
|
+
var DynamicFillColorEditor_1 = __webpack_require__(96);
|
|
2180
2206
|
|
|
2181
|
-
var DynamicStrokeColorEditor_1 = __webpack_require__(
|
|
2207
|
+
var DynamicStrokeColorEditor_1 = __webpack_require__(97);
|
|
2182
2208
|
|
|
2183
|
-
var StaticFillColorEditor_1 = __webpack_require__(
|
|
2209
|
+
var StaticFillColorEditor_1 = __webpack_require__(98);
|
|
2184
2210
|
|
|
2185
|
-
var StaticStrokeColorEditor_1 = __webpack_require__(
|
|
2211
|
+
var StaticStrokeColorEditor_1 = __webpack_require__(99);
|
|
2186
2212
|
|
|
2187
2213
|
var dataContract = {
|
|
2188
2214
|
requiredDataSources: [],
|