@splunk/visualizations 27.5.0 → 28.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Area.config.js +19 -21
- package/Area.config.js.map +3 -3
- package/Area.js +54 -32
- package/Area.js.map +3 -3
- package/Bar.config.js +18 -21
- package/Bar.config.js.map +3 -3
- package/Bar.js +48 -31
- package/Bar.js.map +3 -3
- package/Bubble.config.js +39 -44
- package/Bubble.config.js.map +4 -4
- package/Bubble.js +69 -51
- package/Bubble.js.map +4 -4
- package/CHANGELOG.external.md +35 -7
- package/ChoroplethSvg.config.js +47 -43
- package/ChoroplethSvg.config.js.map +4 -4
- package/ChoroplethSvg.js +72 -45
- package/ChoroplethSvg.js.map +4 -4
- package/Column.config.js +15 -20
- package/Column.config.js.map +3 -3
- package/Column.js +42 -29
- package/Column.js.map +3 -3
- package/Ellipse.config.js +16 -7
- package/Ellipse.config.js.map +2 -2
- package/Ellipse.js +45 -19
- package/Ellipse.js.map +2 -2
- package/Events.config.js +38 -27
- package/Events.config.js.map +4 -4
- package/Events.js +113 -97
- package/Events.js.map +4 -4
- package/FEATUREFLAGS.md +9 -9
- package/FillerGauge.config.js +20 -13
- package/FillerGauge.config.js.map +3 -3
- package/FillerGauge.js +76 -27
- package/FillerGauge.js.map +4 -4
- package/Image.config.js +5 -6
- package/Image.config.js.map +2 -2
- package/Image.js +29 -14
- package/Image.js.map +2 -2
- package/Line.config.js +15 -20
- package/Line.config.js.map +3 -3
- package/Line.js +50 -31
- package/Line.js.map +3 -3
- package/LinkGraph.config.js +39 -46
- package/LinkGraph.config.js.map +3 -3
- package/LinkGraph.js +70 -50
- package/LinkGraph.js.map +3 -3
- package/MIGRATION.md +169 -40
- package/Map.config.js +36 -13
- package/Map.config.js.map +4 -4
- package/Map.js +170 -105
- package/Map.js.map +4 -4
- package/Markdown.config.js +4 -5
- package/Markdown.config.js.map +2 -2
- package/Markdown.js +117 -72
- package/Markdown.js.map +3 -3
- package/MarkerGauge.config.js +14 -12
- package/MarkerGauge.config.js.map +3 -3
- package/MarkerGauge.js +107 -69
- package/MarkerGauge.js.map +4 -4
- package/ParallelCoordinates.config.js +14 -12
- package/ParallelCoordinates.config.js.map +3 -3
- package/ParallelCoordinates.js +113 -59
- package/ParallelCoordinates.js.map +3 -3
- package/Pie.config.js +51 -38
- package/Pie.config.js.map +4 -4
- package/Pie.js +109 -85
- package/Pie.js.map +4 -4
- package/Punchcard.config.js +36 -34
- package/Punchcard.config.js.map +4 -4
- package/Punchcard.js +153 -87
- package/Punchcard.js.map +4 -4
- package/README.internal.md +15 -15
- package/README.md +10 -10
- package/Rectangle.config.js +16 -7
- package/Rectangle.config.js.map +2 -2
- package/Rectangle.js +45 -19
- package/Rectangle.js.map +2 -2
- package/Sankey.config.js +69 -17
- package/Sankey.config.js.map +4 -4
- package/Sankey.js +178 -49
- package/Sankey.js.map +4 -4
- package/Scatter.config.js +37 -42
- package/Scatter.config.js.map +3 -3
- package/Scatter.js +70 -53
- package/Scatter.js.map +3 -3
- package/SingleValue.config.js +32 -18
- package/SingleValue.config.js.map +4 -4
- package/SingleValue.js +237 -93
- package/SingleValue.js.map +4 -4
- package/SingleValueBasic.js +1 -0
- package/SingleValueBasic.js.map +2 -2
- package/SingleValueIcon.config.js +22 -11
- package/SingleValueIcon.config.js.map +2 -2
- package/SingleValueIcon.js +84 -28
- package/SingleValueIcon.js.map +2 -2
- package/SingleValueRadial.config.js +34 -23
- package/SingleValueRadial.config.js.map +3 -3
- package/SingleValueRadial.js +89 -48
- package/SingleValueRadial.js.map +4 -4
- package/SparkLine.js +153 -49
- package/SparkLine.js.map +2 -2
- package/Table.config.js +71 -51
- package/Table.config.js.map +3 -3
- package/Table.js +282 -145
- package/Table.js.map +3 -3
- package/Timeline.config.js +36 -34
- package/Timeline.config.js.map +4 -4
- package/Timeline.js +67 -59
- package/Timeline.js.map +4 -4
- package/common/Charting.js +1 -0
- package/common/Charting.js.map +2 -2
- package/common/ChartingApi.js +1 -0
- package/common/ChartingApi.js.map +1 -1
- package/common/DocExampleWithVizSandbox.js +7 -2
- package/common/DocExampleWithVizSandbox.js.map +2 -2
- package/common/EventsDoc.js +31 -5
- package/common/EventsDoc.js.map +4 -4
- package/common/GaugeMajorTicks.js +4 -1
- package/common/GaugeMajorTicks.js.map +2 -2
- package/common/GaugeValueMarker.js +31 -3
- package/common/GaugeValueMarker.js.map +4 -4
- package/common/OptionsDoc.js +4 -1
- package/common/OptionsDoc.js.map +2 -2
- package/common/OverviewDoc.js +66 -50
- package/common/OverviewDoc.js.map +4 -4
- package/common/SplunkVisualization.js +1 -0
- package/common/SplunkVisualization.js.map +1 -1
- package/common/SplunkVisualizationApi.js +1 -0
- package/common/SplunkVisualizationApi.js.map +1 -1
- package/common/ThemedDefaults.js +67 -0
- package/common/ThemedDefaults.js.map +7 -0
- package/common/ThemesDoc.js +6 -9
- package/common/ThemesDoc.js.map +2 -2
- package/common/chartingUtils.js +1 -0
- package/common/chartingUtils.js.map +2 -2
- package/common/docUtils.js +6 -1
- package/common/docUtils.js.map +2 -2
- package/common/gaugeUtils.js +6 -1
- package/common/gaugeUtils.js.map +2 -2
- package/common/shapeUtils.js +6 -4
- package/common/shapeUtils.js.map +2 -2
- package/common/utils/configUtils.js +4 -5
- package/common/utils/configUtils.js.map +2 -2
- package/common/utils/dataUtils.js +1 -0
- package/common/utils/dataUtils.js.map +2 -2
- package/common/utils/featureFlagUtils.js +1 -0
- package/common/utils/featureFlagUtils.js.map +1 -1
- package/common/utils/hocUtils.js +1 -0
- package/common/utils/hocUtils.js.map +1 -1
- package/common/utils/mapUtils.js +35 -22
- package/common/utils/mapUtils.js.map +4 -4
- package/common/utils/singleValueUtils.js +8 -2
- package/common/utils/singleValueUtils.js.map +2 -2
- package/common/utils/styleUtils.js +1 -0
- package/common/utils/styleUtils.js.map +1 -1
- package/common/utils/testHelper.js +1 -0
- package/common/utils/testHelper.js.map +1 -1
- package/common/utils/trellisUtils.js +1 -0
- package/common/utils/trellisUtils.js.map +1 -1
- package/common/utils/urlUtils.js +1 -0
- package/common/utils/urlUtils.js.map +1 -1
- package/common/withDashboardViz.js +25 -8
- package/common/withDashboardViz.js.map +2 -2
- package/package.json +37 -35
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/* Copyright © 2020 Splunk Inc.
|
|
2
2
|
SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
|
|
3
3
|
in part without a valid written license from Splunk Inc. is PROHIBITED. */
|
|
4
|
+
"use strict";
|
|
4
5
|
var __create = Object.create;
|
|
5
6
|
var __defProp = Object.defineProperty;
|
|
6
7
|
var __defProps = Object.defineProperties;
|
|
@@ -129,11 +130,9 @@ var configUtils_default = "default" in defaultImport8 ? defaultImport8.default :
|
|
|
129
130
|
// src/common/utils/configUtils.ts
|
|
130
131
|
function enhanceConfig(vizConfig) {
|
|
131
132
|
const enhancedConfig = __spreadValues({}, vizConfig);
|
|
132
|
-
enhancedConfig.editorConfig = vizConfig.editorConfig.map(
|
|
133
|
-
(config2)
|
|
134
|
-
|
|
135
|
-
}
|
|
136
|
-
);
|
|
133
|
+
enhancedConfig.editorConfig = vizConfig.editorConfig.map((config2) => {
|
|
134
|
+
return __spreadProps(__spreadValues({}, config2), { open: config2.open || false });
|
|
135
|
+
});
|
|
137
136
|
return enhancedConfig;
|
|
138
137
|
}
|
|
139
138
|
|
|
@@ -155,6 +154,15 @@ var background = ({
|
|
|
155
154
|
];
|
|
156
155
|
var BackgroundColor_default = background;
|
|
157
156
|
|
|
157
|
+
// src/common/ThemedDefaults.tsx
|
|
158
|
+
var defaultBackgroundColor = (props) => pick_default({
|
|
159
|
+
enterprise: {
|
|
160
|
+
dark: variables_default.black(props),
|
|
161
|
+
light: variables_default.white(props)
|
|
162
|
+
},
|
|
163
|
+
prisma: variables_default.backgroundColorSection(props)
|
|
164
|
+
})(props);
|
|
165
|
+
|
|
158
166
|
// src/ParallelCoordinates/config.ts
|
|
159
167
|
var dataContract = {
|
|
160
168
|
requiredDataSources: [
|
|
@@ -173,13 +181,7 @@ var size = {
|
|
|
173
181
|
initialHeight: 400
|
|
174
182
|
};
|
|
175
183
|
var themes = {
|
|
176
|
-
defaultBackgroundColor
|
|
177
|
-
enterprise: {
|
|
178
|
-
dark: variables_default.black(props),
|
|
179
|
-
light: variables_default.backgroundColor(props)
|
|
180
|
-
},
|
|
181
|
-
prisma: variables_default.backgroundColorSidebar(props)
|
|
182
|
-
})(props),
|
|
184
|
+
defaultBackgroundColor,
|
|
183
185
|
axisLineColor: (props) => pick_default({
|
|
184
186
|
enterprise: {
|
|
185
187
|
dark: variables_default.gray45(props),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["src/ParallelCoordinates/config.ts", "esm-externals:@splunk/ui-utils/i18n", "esm-externals:@splunk/visualization-schemas", "esm-externals:@splunk/themes/pick", "esm-externals:@splunk/themes/variables", "esm-externals:@splunk/visualization-icons", "esm-externals:@splunk/visualization-icons/placeholders", "esm-externals:lodash", "esm-externals:@splunk/visualizations-shared/configUtils", "src/common/utils/configUtils.ts", "src/common/editorConfig/BackgroundColor.ts"],
|
|
4
|
-
"sourcesContent": ["import { _ } from '@splunk/ui-utils/i18n';\nimport { parallelCoordinatesOptionsSchema as optionsSchema } from '@splunk/visualization-schemas';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { ParallelCoordinates as ParallelCoordinatesIcon } from '@splunk/visualization-icons';\nimport { ParallelCoordinates as ParallelCoordinatesPlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { enhanceConfig } from '../common/utils/configUtils';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport getBackgroundColorEditor from '../common/editorConfig/BackgroundColor';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 700,\n initialHeight: 400,\n};\n\nconst themes: ThemedDefaults = {\n defaultBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n axisLineColor: props =>\n pick({\n enterprise: {\n dark: variables.gray45(props),\n light: variables.gray60(props),\n },\n prisma: {\n dark: variables.neutral400(props),\n light: variables.syntaxGray(props),\n },\n })(props),\n axisLineHighlightColor: props =>\n pick({\n enterprise: variables.textColor(props),\n prisma: variables.contentColorActive(props),\n })(props),\n axisTitleColor: props =>\n pick({\n enterprise: {\n dark: variables.textGray(props),\n light: variables.textColor(props),\n },\n prisma: variables.contentColorDefault(props),\n })(props),\n axisLabelColor: props =>\n pick({\n enterprise: {\n dark: variables.textGray(props),\n light: variables.textColor(props),\n },\n prisma: variables.contentColorDefault(props),\n })(props),\n filterButtonDisabledColor: props =>\n pick({\n enterprise: variables.textDisabledColor(props),\n prisma: variables.contentColorDisabled(props),\n })(props),\n filterButtonActiveColor: props =>\n pick({\n enterprise: variables.focusColor(props),\n prisma: variables.interactiveColorPrimary(props),\n })(props),\n filterTextColor: props =>\n pick({\n enterprise: {\n dark: variables.textGray(props),\n light: variables.textColor(props),\n },\n prisma: variables.contentColorDefault(props),\n })(props),\n truncatedTextColor: props =>\n pick({\n enterprise: variables.textGray(props),\n prisma: variables.contentColorMuted(props),\n })(props),\n filterSelectionColor: props =>\n pick({\n enterprise: {\n dark: '#FFFFFF',\n light: '#000000',\n },\n prisma: {\n dark: '#FFFFFF',\n light: '#000000',\n },\n })(props),\n textShadowColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSection(props),\n })(props),\n};\n\nconst EDITOR_LABEL_WIDTH = 100;\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Show null axis'),\n option: 'showNullAxis',\n editor: 'editor.toggle',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n ],\n },\n {\n label: _('Color and style'),\n layout: [\n [\n {\n label: _('Lines'),\n option: 'lineColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n },\n },\n {\n label: _('Line opacity (%)'),\n option: 'lineOpacity',\n editor: 'editor.percent',\n editorProps: {\n themes,\n min: 0,\n },\n },\n ],\n getBackgroundColorEditor({ themes }),\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.parallelcoordinates',\n /**\n * viz name\n */\n name: _('Parallel coordinates'),\n category: VizCategory.CORRELATION,\n status: 'preview',\n /**\n * viz icon\n */\n icon: ParallelCoordinatesIcon,\n placeholderIcon: ParallelCoordinatesPlaceholderIcon,\n dataContract,\n size,\n optionsSchema,\n editorConfig,\n events: {}, // To be completed\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.EVENTS, VizBehavior.PLACEHOLDER], // will there be more??\n themes,\n requiredProps: [],\n};\n\nexport default enhanceConfig(config);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-schemas\";\nexport * from \"@splunk/visualization-schemas\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/themes/pick\";\nexport * from \"@splunk/themes/pick\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/themes/variables\";\nexport * from \"@splunk/themes/variables\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-icons\";\nexport * from \"@splunk/visualization-icons\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-icons/placeholders\";\nexport * from \"@splunk/visualization-icons/placeholders\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"lodash\";\nexport * from \"lodash\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualizations-shared/configUtils\";\nexport * from \"@splunk/visualizations-shared/configUtils\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import { get, range } from 'lodash';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\n// included for backwards compatibility\nexport { enhanceOptionsSchemaWithDynamicOptions } from '@splunk/visualization-schemas';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\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\n enhancedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: config.open || false };\n }\n );\n return enhancedConfig;\n}\n\n/**\n * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig\n * Created for editor unit tests\n * @param vizConfig a Visualization Config\n * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig\n */\nfunction uncollapseEditorConfig(vizConfig: VizConfig): VizConfig {\n const editorPanelUncollapsedConfig: VizConfig = { ...vizConfig };\n editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: true };\n }\n );\n return editorPanelUncollapsedConfig;\n}\n\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 { enhanceConfig, getInitialPreset, generatePrecisionValues, uncollapseEditorConfig, isDynamicOption };\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorLayoutConfig } from '../interfaces/Editor';\nimport { ThemedDefaults } from '../interfaces/ThemedDefaults';\n\ninterface backgroundEditorProps {\n label?: string;\n themes: ThemedDefaults;\n labelPosition?: string;\n}\n\nconst background: ({ label, themes, labelPosition }: backgroundEditorProps) => EditorLayoutConfig[] = ({\n label,\n themes,\n labelPosition,\n}) => [\n {\n label: _(label || 'Background color'),\n option: 'backgroundColor',\n editor: 'editor.color',\n editorProps: {\n labelPosition: labelPosition || 'top',\n themes,\n },\n },\n];\n\nexport default background;\n"],
|
|
5
|
-
"mappings": "
|
|
3
|
+
"sources": ["src/ParallelCoordinates/config.ts", "esm-externals:@splunk/ui-utils/i18n", "esm-externals:@splunk/visualization-schemas", "esm-externals:@splunk/themes/pick", "esm-externals:@splunk/themes/variables", "esm-externals:@splunk/visualization-icons", "esm-externals:@splunk/visualization-icons/placeholders", "esm-externals:lodash", "esm-externals:@splunk/visualizations-shared/configUtils", "src/common/utils/configUtils.ts", "src/common/editorConfig/BackgroundColor.ts", "src/common/ThemedDefaults.tsx"],
|
|
4
|
+
"sourcesContent": ["import { _ } from '@splunk/ui-utils/i18n';\nimport { parallelCoordinatesOptionsSchema as optionsSchema } from '@splunk/visualization-schemas';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { ParallelCoordinates as ParallelCoordinatesIcon } from '@splunk/visualization-icons';\nimport { ParallelCoordinates as ParallelCoordinatesPlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { enhanceConfig } from '../common/utils/configUtils';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport getBackgroundColorEditor from '../common/editorConfig/BackgroundColor';\nimport { defaultBackgroundColor } from '../common/ThemedDefaults';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 700,\n initialHeight: 400,\n};\n\nconst themes: ThemedDefaults = {\n defaultBackgroundColor,\n axisLineColor: props =>\n pick({\n enterprise: {\n dark: variables.gray45(props),\n light: variables.gray60(props),\n },\n prisma: {\n dark: variables.neutral400(props),\n light: variables.syntaxGray(props),\n },\n })(props),\n axisLineHighlightColor: props =>\n pick({\n enterprise: variables.textColor(props),\n prisma: variables.contentColorActive(props),\n })(props),\n axisTitleColor: props =>\n pick({\n enterprise: {\n dark: variables.textGray(props),\n light: variables.textColor(props),\n },\n prisma: variables.contentColorDefault(props),\n })(props),\n axisLabelColor: props =>\n pick({\n enterprise: {\n dark: variables.textGray(props),\n light: variables.textColor(props),\n },\n prisma: variables.contentColorDefault(props),\n })(props),\n filterButtonDisabledColor: props =>\n pick({\n enterprise: variables.textDisabledColor(props),\n prisma: variables.contentColorDisabled(props),\n })(props),\n filterButtonActiveColor: props =>\n pick({\n enterprise: variables.focusColor(props),\n prisma: variables.interactiveColorPrimary(props),\n })(props),\n filterTextColor: props =>\n pick({\n enterprise: {\n dark: variables.textGray(props),\n light: variables.textColor(props),\n },\n prisma: variables.contentColorDefault(props),\n })(props),\n truncatedTextColor: props =>\n pick({\n enterprise: variables.textGray(props),\n prisma: variables.contentColorMuted(props),\n })(props),\n filterSelectionColor: props =>\n pick({\n enterprise: {\n dark: '#FFFFFF',\n light: '#000000',\n },\n prisma: {\n dark: '#FFFFFF',\n light: '#000000',\n },\n })(props),\n textShadowColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSection(props),\n })(props),\n};\n\nconst EDITOR_LABEL_WIDTH = 100;\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Show null axis'),\n option: 'showNullAxis',\n editor: 'editor.toggle',\n editorProps: {\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n ],\n },\n {\n label: _('Color and style'),\n layout: [\n [\n {\n label: _('Lines'),\n option: 'lineColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n },\n },\n {\n label: _('Line opacity (%)'),\n option: 'lineOpacity',\n editor: 'editor.percent',\n editorProps: {\n themes,\n min: 0,\n },\n },\n ],\n getBackgroundColorEditor({ themes }),\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.parallelcoordinates',\n /**\n * viz name\n */\n name: _('Parallel coordinates'),\n category: VizCategory.CORRELATION,\n status: 'preview',\n /**\n * viz icon\n */\n icon: ParallelCoordinatesIcon,\n placeholderIcon: ParallelCoordinatesPlaceholderIcon,\n dataContract,\n size,\n optionsSchema,\n editorConfig,\n events: {}, // To be completed\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.EVENTS, VizBehavior.PLACEHOLDER], // will there be more??\n themes,\n requiredProps: [],\n};\n\nexport default enhanceConfig(config);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-schemas\";\nexport * from \"@splunk/visualization-schemas\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/themes/pick\";\nexport * from \"@splunk/themes/pick\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/themes/variables\";\nexport * from \"@splunk/themes/variables\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-icons\";\nexport * from \"@splunk/visualization-icons\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualization-icons/placeholders\";\nexport * from \"@splunk/visualization-icons/placeholders\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"lodash\";\nexport * from \"lodash\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/visualizations-shared/configUtils\";\nexport * from \"@splunk/visualizations-shared/configUtils\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import { get, range } from 'lodash';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\n// included for backwards compatibility\nexport { enhanceOptionsSchemaWithDynamicOptions } from '@splunk/visualization-schemas';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\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\n enhancedConfig.editorConfig = vizConfig.editorConfig.map((config: EditorConfig): EditorConfig => {\n return { ...config, open: config.open || false };\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\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 { enhanceConfig, getInitialPreset, generatePrecisionValues, uncollapseEditorConfig, isDynamicOption };\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorLayoutConfig } from '../interfaces/Editor';\nimport { ThemedDefaults } from '../interfaces/ThemedDefaults';\n\ninterface backgroundEditorProps {\n label?: string;\n themes: ThemedDefaults;\n labelPosition?: string;\n}\n\nconst background: ({ label, themes, labelPosition }: backgroundEditorProps) => EditorLayoutConfig[] = ({\n label,\n themes,\n labelPosition,\n}) => [\n {\n label: _(label || 'Background color'),\n option: 'backgroundColor',\n editor: 'editor.color',\n editorProps: {\n labelPosition: labelPosition || 'top',\n themes,\n },\n },\n];\n\nexport default background;\n", "import pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\n\nexport const defaultBackgroundColor = props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.white(props),\n },\n prisma: variables.backgroundColorSection(props),\n })(props);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "config", "themes", "ParallelCoordinatesIcon", "ParallelCoordinatesPlaceholderIcon", "optionsSchema"]
|
|
7
7
|
}
|
package/ParallelCoordinates.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/* Copyright © 2020 Splunk Inc.
|
|
2
2
|
SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
|
|
3
3
|
in part without a valid written license from Splunk Inc. is PROHIBITED. */
|
|
4
|
+
"use strict";
|
|
4
5
|
var __create = Object.create;
|
|
5
6
|
var __defProp = Object.defineProperty;
|
|
6
7
|
var __defProps = Object.defineProperties;
|
|
@@ -330,14 +331,22 @@ var ParallelCoordinatesCanvas = (_a) => {
|
|
|
330
331
|
};
|
|
331
332
|
var ParallelCoordinatesCanvas_default = ParallelCoordinatesCanvas;
|
|
332
333
|
|
|
333
|
-
// src/ParallelCoordinates/PureParallelCoordinates/src/
|
|
334
|
-
var
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
334
|
+
// src/ParallelCoordinates/PureParallelCoordinates/src/ParallelCoordinatesPrompt.tsx
|
|
335
|
+
var FilterButton = styled_components_default.button.attrs({
|
|
336
|
+
"data-test": "clear-filter-button"
|
|
337
|
+
})`
|
|
338
|
+
margin-left: 16px;
|
|
339
|
+
display: flex;
|
|
340
|
+
border: none;
|
|
341
|
+
background: none;
|
|
342
|
+
color: ${(props) => props.filterButtonColor};
|
|
343
|
+
cursor: pointer;
|
|
344
|
+
font-size: 12px;
|
|
345
|
+
padding-top: 0;
|
|
346
|
+
padding-bottom: 0;
|
|
347
|
+
padding-left: 0;
|
|
339
348
|
`;
|
|
340
|
-
var
|
|
349
|
+
var PromptDivStyled = styled_components_default.div`
|
|
341
350
|
position: absolute;
|
|
342
351
|
top: ${(props) => props.height + props.margin.top + props.margin.bottom - 27}px;
|
|
343
352
|
display: flex;
|
|
@@ -348,17 +357,51 @@ var PromptDiv = styled_components_default.div`
|
|
|
348
357
|
margin-left: 0;
|
|
349
358
|
width: ${(props) => props.margin.left + props.width + props.margin.right}px;
|
|
350
359
|
`;
|
|
351
|
-
var
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
360
|
+
var ParallelCoordinatesPrompt = ({
|
|
361
|
+
width,
|
|
362
|
+
height,
|
|
363
|
+
margin,
|
|
364
|
+
filterButtonColor,
|
|
365
|
+
onClearFilters,
|
|
366
|
+
filterPromptState,
|
|
367
|
+
filterTextColor,
|
|
368
|
+
selectedDataLength,
|
|
369
|
+
totalDataLength,
|
|
370
|
+
truncatedCategoriesFlag,
|
|
371
|
+
truncatedTextColor
|
|
372
|
+
}) => {
|
|
373
|
+
return /* @__PURE__ */ react_exports.createElement(PromptDivStyled, { width, height, margin }, /* @__PURE__ */ react_exports.createElement("div", { style: { display: "flex", flexDirection: "row", alignItems: "center" } }, /* @__PURE__ */ react_exports.createElement(FilterButton, { filterButtonColor, onClick: onClearFilters }, "Clear filters"), /* @__PURE__ */ react_exports.createElement(
|
|
374
|
+
"span",
|
|
375
|
+
{
|
|
376
|
+
style: {
|
|
377
|
+
display: filterPromptState ? "flex" : "none",
|
|
378
|
+
color: filterTextColor,
|
|
379
|
+
marginTop: "1.5px"
|
|
380
|
+
},
|
|
381
|
+
"data-test": "line-selection-prompt"
|
|
382
|
+
},
|
|
383
|
+
`${selectedDataLength}/${totalDataLength} lines selected`
|
|
384
|
+
)), /* @__PURE__ */ react_exports.createElement(
|
|
385
|
+
"span",
|
|
386
|
+
{
|
|
387
|
+
style: {
|
|
388
|
+
display: truncatedCategoriesFlag ? "flex" : "none",
|
|
389
|
+
color: truncatedTextColor,
|
|
390
|
+
marginRight: 16
|
|
391
|
+
},
|
|
392
|
+
"data-test": "truncated-data-warning"
|
|
393
|
+
},
|
|
394
|
+
"Note: Your data is currently truncated due to a high amount of categorical values"
|
|
395
|
+
));
|
|
396
|
+
};
|
|
397
|
+
var ParallelCoordinatesPrompt_default = ParallelCoordinatesPrompt;
|
|
398
|
+
|
|
399
|
+
// src/ParallelCoordinates/PureParallelCoordinates/src/ParallelCoordinatesChart.tsx
|
|
400
|
+
var ChartDiv = styled_components_default.div`
|
|
401
|
+
background-color: ${(props) => props.backgroundColor};
|
|
402
|
+
width: ${(props) => props.width + props.margin.left + props.margin.right}px;
|
|
403
|
+
height: ${(props) => props.height + props.margin.top + props.margin.bottom}px;
|
|
404
|
+
position: relative;
|
|
362
405
|
`;
|
|
363
406
|
var ParallelCoordinatesChart = (_a) => {
|
|
364
407
|
var props = __objRest(_a, []);
|
|
@@ -571,28 +614,22 @@ var ParallelCoordinatesChart = (_a) => {
|
|
|
571
614
|
"data-test-dimensions": currentDimensions.length
|
|
572
615
|
}
|
|
573
616
|
),
|
|
574
|
-
/* @__PURE__ */ react_exports.createElement(
|
|
575
|
-
|
|
576
|
-
{
|
|
577
|
-
style: { display: filterPromptState ? "flex" : "none", color: filterTextColor },
|
|
578
|
-
"data-test": "line-selection-prompt"
|
|
579
|
-
},
|
|
580
|
-
selectedData.length,
|
|
581
|
-
"/",
|
|
582
|
-
data.length,
|
|
583
|
-
" lines selected"
|
|
584
|
-
)), /* @__PURE__ */ react_exports.createElement(
|
|
585
|
-
"span",
|
|
617
|
+
/* @__PURE__ */ react_exports.createElement(
|
|
618
|
+
ParallelCoordinatesPrompt_default,
|
|
586
619
|
{
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
620
|
+
width,
|
|
621
|
+
height,
|
|
622
|
+
margin,
|
|
623
|
+
filterButtonColor,
|
|
624
|
+
onClearFilters: clearAllFilters,
|
|
625
|
+
filterPromptState,
|
|
626
|
+
filterTextColor,
|
|
627
|
+
selectedDataLength: selectedData.length,
|
|
628
|
+
totalDataLength: data.length,
|
|
629
|
+
truncatedCategoriesFlag,
|
|
630
|
+
truncatedTextColor
|
|
631
|
+
}
|
|
632
|
+
)
|
|
596
633
|
));
|
|
597
634
|
};
|
|
598
635
|
var ParallelCoordinatesChart_default = ParallelCoordinatesChart;
|
|
@@ -1075,9 +1112,14 @@ var Item = styled_components_default.div.attrs(({ width }) => ({
|
|
|
1075
1112
|
position: relative;
|
|
1076
1113
|
background-color: ${(props) => (0, colorUtils_exports.isColor)(props.backgroundColor) && props.backgroundColor || props.theme.defaultBackgroundColor}};
|
|
1077
1114
|
`;
|
|
1078
|
-
var FixSizeItem = styled_components_default.div.attrs(
|
|
1079
|
-
|
|
1080
|
-
|
|
1115
|
+
var FixSizeItem = styled_components_default.div.attrs(
|
|
1116
|
+
({
|
|
1117
|
+
width,
|
|
1118
|
+
height
|
|
1119
|
+
}) => ({
|
|
1120
|
+
style: __spreadValues(__spreadValues({}, width && { width: (0, style_exports.toPx)(width) }), height && { height: (0, style_exports.toPx)(height) })
|
|
1121
|
+
})
|
|
1122
|
+
)`
|
|
1081
1123
|
position: relative;
|
|
1082
1124
|
flex-direction: column;
|
|
1083
1125
|
flex: 1;
|
|
@@ -1111,7 +1153,7 @@ var withFixedSizeContainer = (Viz) => {
|
|
|
1111
1153
|
FixSizeItem,
|
|
1112
1154
|
{
|
|
1113
1155
|
"data-test": "fix-size-item",
|
|
1114
|
-
"data-splunk-visualization-version": "
|
|
1156
|
+
"data-splunk-visualization-version": "28.0.0 - 0c5f07712",
|
|
1115
1157
|
width,
|
|
1116
1158
|
height,
|
|
1117
1159
|
backgroundColor
|
|
@@ -1177,7 +1219,7 @@ var Cover = styled_components_default.div`
|
|
|
1177
1219
|
bottom: 0;
|
|
1178
1220
|
`;
|
|
1179
1221
|
var Blocker = styled_components_default.div.attrs({
|
|
1180
|
-
"data-splunk-visualization-version": "
|
|
1222
|
+
"data-splunk-visualization-version": "28.0.0 - 0c5f07712"
|
|
1181
1223
|
})`
|
|
1182
1224
|
position: relative;
|
|
1183
1225
|
width: 100%;
|
|
@@ -1555,7 +1597,12 @@ var useGetXAndYFields = ({
|
|
|
1555
1597
|
y2Fields: options.y2 ? "> y2 | getField()" : void 0,
|
|
1556
1598
|
fieldTypes: "> primary | getType()"
|
|
1557
1599
|
};
|
|
1558
|
-
const {
|
|
1600
|
+
const {
|
|
1601
|
+
xField = "",
|
|
1602
|
+
yFields = [],
|
|
1603
|
+
y2Fields = [],
|
|
1604
|
+
fieldTypes
|
|
1605
|
+
} = Options_exports.Options.evaluate(
|
|
1559
1606
|
{ options: optionsToEvaluate, context },
|
|
1560
1607
|
dataSourcesWithOnlyOnePoint,
|
|
1561
1608
|
() => {
|
|
@@ -1836,7 +1883,9 @@ var withDashboardViz = (opts) => {
|
|
|
1836
1883
|
return result;
|
|
1837
1884
|
}
|
|
1838
1885
|
} catch (e) {
|
|
1839
|
-
|
|
1886
|
+
if (e instanceof Error) {
|
|
1887
|
+
console.error(`unexpected error evaluating options: ${e.message}`);
|
|
1888
|
+
}
|
|
1840
1889
|
return {};
|
|
1841
1890
|
}
|
|
1842
1891
|
return {};
|
|
@@ -1895,7 +1944,11 @@ var withDashboardViz = (opts) => {
|
|
|
1895
1944
|
if (ev && ev.payload) {
|
|
1896
1945
|
payload = ev.payload;
|
|
1897
1946
|
}
|
|
1898
|
-
return onEventTrigger({
|
|
1947
|
+
return onEventTrigger({
|
|
1948
|
+
originalEvent: ev,
|
|
1949
|
+
payload,
|
|
1950
|
+
type: eventName
|
|
1951
|
+
});
|
|
1899
1952
|
};
|
|
1900
1953
|
if (parentKeys) {
|
|
1901
1954
|
for (let i = parentKeys.length - 1; i >= 0; i -= 1) {
|
|
@@ -2004,11 +2057,9 @@ var configUtils_default = "default" in defaultImport35 ? defaultImport35.default
|
|
|
2004
2057
|
// src/common/utils/configUtils.ts
|
|
2005
2058
|
function enhanceConfig(vizConfig) {
|
|
2006
2059
|
const enhancedConfig = __spreadValues({}, vizConfig);
|
|
2007
|
-
enhancedConfig.editorConfig = vizConfig.editorConfig.map(
|
|
2008
|
-
(config3)
|
|
2009
|
-
|
|
2010
|
-
}
|
|
2011
|
-
);
|
|
2060
|
+
enhancedConfig.editorConfig = vizConfig.editorConfig.map((config3) => {
|
|
2061
|
+
return __spreadProps(__spreadValues({}, config3), { open: config3.open || false });
|
|
2062
|
+
});
|
|
2012
2063
|
return enhancedConfig;
|
|
2013
2064
|
}
|
|
2014
2065
|
|
|
@@ -2030,6 +2081,15 @@ var background = ({
|
|
|
2030
2081
|
];
|
|
2031
2082
|
var BackgroundColor_default = background;
|
|
2032
2083
|
|
|
2084
|
+
// src/common/ThemedDefaults.tsx
|
|
2085
|
+
var defaultBackgroundColor = (props) => pick_default({
|
|
2086
|
+
enterprise: {
|
|
2087
|
+
dark: variables_default.black(props),
|
|
2088
|
+
light: variables_default.white(props)
|
|
2089
|
+
},
|
|
2090
|
+
prisma: variables_default.backgroundColorSection(props)
|
|
2091
|
+
})(props);
|
|
2092
|
+
|
|
2033
2093
|
// src/ParallelCoordinates/config.ts
|
|
2034
2094
|
var dataContract = {
|
|
2035
2095
|
requiredDataSources: [
|
|
@@ -2048,13 +2108,7 @@ var size = {
|
|
|
2048
2108
|
initialHeight: 400
|
|
2049
2109
|
};
|
|
2050
2110
|
var themes = {
|
|
2051
|
-
defaultBackgroundColor
|
|
2052
|
-
enterprise: {
|
|
2053
|
-
dark: variables_default.black(props),
|
|
2054
|
-
light: variables_default.backgroundColor(props)
|
|
2055
|
-
},
|
|
2056
|
-
prisma: variables_default.backgroundColorSidebar(props)
|
|
2057
|
-
})(props),
|
|
2111
|
+
defaultBackgroundColor,
|
|
2058
2112
|
axisLineColor: (props) => pick_default({
|
|
2059
2113
|
enterprise: {
|
|
2060
2114
|
dark: variables_default.gray45(props),
|