@splunk/visualizations 27.4.0 → 27.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Area.config.js +7 -0
- package/Area.config.js.map +2 -2
- package/Area.js +36 -6
- package/Area.js.map +2 -2
- package/Bar.config.js +7 -0
- package/Bar.config.js.map +2 -2
- package/Bar.js +37 -8
- package/Bar.js.map +2 -2
- package/Bubble.config.js +7 -0
- package/Bubble.config.js.map +2 -2
- package/Bubble.js +16 -5
- package/Bubble.js.map +2 -2
- package/CHANGELOG.external.md +36 -7
- package/ChoroplethSvg.js +2 -2
- package/Column.config.js +7 -0
- package/Column.config.js.map +2 -2
- package/Column.js +36 -6
- package/Column.js.map +2 -2
- package/Ellipse.js +65 -7
- package/Ellipse.js.map +4 -4
- package/Events.js +11 -6
- package/Events.js.map +2 -2
- package/FEATUREFLAGS.md +2 -0
- package/FillerGauge.js +2 -2
- package/Image.js +2 -2
- package/Line.config.js +7 -0
- package/Line.config.js.map +2 -2
- package/Line.js +36 -6
- package/Line.js.map +2 -2
- package/LinkGraph.js +2 -2
- package/Map.config.js +11 -0
- package/Map.config.js.map +2 -2
- package/Map.js +227 -101
- package/Map.js.map +4 -4
- package/Markdown.js +2 -2
- package/MarkerGauge.js +2 -2
- package/ParallelCoordinates.js +2 -2
- package/ParallelCoordinates.js.map +1 -1
- package/Pie.js +9 -5
- package/Pie.js.map +2 -2
- package/Punchcard.js +3 -3
- package/Punchcard.js.map +2 -2
- package/Rectangle.js +64 -7
- package/Rectangle.js.map +4 -4
- package/Sankey.js +36 -35
- package/Sankey.js.map +3 -3
- package/Scatter.config.js +7 -0
- package/Scatter.config.js.map +2 -2
- package/Scatter.js +16 -5
- package/Scatter.js.map +2 -2
- package/SingleValue.js +3 -3
- package/SingleValue.js.map +2 -2
- package/SingleValueBasic.js.map +1 -1
- package/SingleValueIcon.js +3 -3
- package/SingleValueIcon.js.map +2 -2
- package/SingleValueRadial.js +3 -3
- package/SingleValueRadial.js.map +2 -2
- package/Table.js +2 -2
- package/Timeline.js +2 -2
- package/common/Charting.js +7 -3
- package/common/Charting.js.map +2 -2
- package/common/chartingUtils.js +11 -0
- package/common/chartingUtils.js.map +2 -2
- package/common/shapeUtils.js +85 -3
- package/common/shapeUtils.js.map +4 -4
- package/common/utils/mapUtils.js +156 -43
- package/common/utils/mapUtils.js.map +4 -4
- package/common/utils/singleValueUtils.js +1 -1
- package/common/utils/singleValueUtils.js.map +2 -2
- package/common/withDashboardViz.js +2 -2
- package/package.json +16 -16
package/Bar.config.js
CHANGED
|
@@ -181,6 +181,13 @@ var AxesChartDataConfig = {
|
|
|
181
181
|
}
|
|
182
182
|
}
|
|
183
183
|
],
|
|
184
|
+
[
|
|
185
|
+
{
|
|
186
|
+
label: (0, i18n_exports._)("Additional tooltip fields"),
|
|
187
|
+
option: "additionalTooltipFields",
|
|
188
|
+
editor: "editor.columnMultiSelectionByFieldNameEditor"
|
|
189
|
+
}
|
|
190
|
+
],
|
|
184
191
|
[
|
|
185
192
|
{
|
|
186
193
|
label: (0, i18n_exports._)("Result limit"),
|
package/Bar.config.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["src/Bar/config.ts", "esm-externals:@splunk/visualization-icons", "esm-externals:@splunk/visualization-icons/placeholders", "esm-externals:@splunk/visualization-schemas", "esm-externals:@splunk/ui-utils/i18n", "esm-externals:@splunk/themes/pick", "esm-externals:@splunk/themes/variables", "esm-externals:lodash", "esm-externals:@splunk/visualizations-shared/configUtils", "src/common/utils/configUtils.ts", "src/common/editorConfig/AxesChartDataConfig.ts", "src/common/editorConfig/TrellisEditors.ts", "src/common/editorConfig/AxesChartDataDisplay.ts", "src/common/editorConfig/AxesChartXGridAndLabels.ts", "src/common/editorConfig/BackgroundColor.ts", "src/common/editorConfig/AxesChartColorAndStyle.ts", "src/common/editorConfig/AxesChartLegend.ts", "src/common/editorConfig/AxesChartYGridAndLabels.ts", "src/common/editorConfig/AxesChartY2GridAndLabels.ts"],
|
|
4
|
-
"sourcesContent": ["import { Bar as BarIcon } from '@splunk/visualization-icons';\nimport { Bar as BarPlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { barOptionsSchema as optionsSchema } from '@splunk/visualization-schemas';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { AxesChartDataConfigBar } from '../common/editorConfig/AxesChartDataConfig';\nimport { AxesChartDataDisplayBar } from '../common/editorConfig/AxesChartDataDisplay';\nimport { AxesChartXGridAndLabelsCommon } from '../common/editorConfig/AxesChartXGridAndLabels';\nimport { AxesChartColorAndStyleWithTrellis } from '../common/editorConfig/AxesChartColorAndStyle';\nimport { AxesChartLegendWithTrellisAndMode } from '../common/editorConfig/AxesChartLegend';\nimport AxesChartYGridAndLabels from '../common/editorConfig/AxesChartYGridAndLabels';\nimport AxesChartY2GridAndLabels from '../common/editorConfig/AxesChartY2GridAndLabels';\n\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { enhanceConfig } from '../common/utils/configUtils';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [\n // Note: SCP-14090 disable ui for optional datasources. We may need to add it back later\n // {\n // name: 'annotation',\n // description: 'DataSource that populates event annotations',\n // },\n ],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {};\n\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 defaultFontColor: props =>\n pick({\n enterprise: {\n dark: variables.textColor(props),\n light: variables.textColor(props),\n },\n prisma: variables.contentColorDefault(props),\n })(props),\n};\n\nconst editorConfig: EditorConfig[] = [\n AxesChartDataConfigBar,\n AxesChartDataDisplayBar,\n {\n label: AxesChartColorAndStyleWithTrellis.label,\n layout: [\n ...AxesChartColorAndStyleWithTrellis.layout,\n [\n {\n label: _('Line width'),\n option: 'lineWidth',\n editor: 'editor.slider',\n editorProps: {\n min: 0.5,\n max: 8.0,\n step: 0.5,\n },\n showEditor: ({ options }) =>\n Array.isArray(options.overlayFields) && options.overlayFields.length > 0,\n },\n ],\n [\n {\n label: _('Series spacing'),\n option: 'seriesSpacing',\n editor: 'editor.number',\n },\n ],\n [\n {\n label: _('Bar spacing'),\n option: 'barSpacing',\n editor: 'editor.number',\n },\n ],\n ],\n },\n AxesChartLegendWithTrellisAndMode({ showLegendTooltip: false }),\n {\n label: _('X-axis grid and labels (vertical axis)'),\n layout: [\n ...AxesChartXGridAndLabelsCommon.layout,\n [\n {\n label: _('Number of time label parts'),\n option: 'xAxisMaxLabelParts',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n max: 3,\n },\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'xAxisLineVisibility',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major gridlines'),\n option: 'showXMajorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major tick visibility'),\n option: 'xAxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'xAxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.xAxisMajorTickVisibility === 'show' ||\n options.xAxisMajorTickVisibility === 'auto' ||\n options.xAxisMajorTickVisibility === undefined,\n },\n ],\n ],\n },\n // bar viz supports custom labels for the x- and y-axis titles (vertical and horizontal axes, respectively)\n { ...AxesChartYGridAndLabels, label: _('Y-axis grid and labels (horizontal axis)') },\n AxesChartY2GridAndLabels,\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.bar',\n /**\n * viz name\n */\n name: _('Bar'),\n category: VizCategory.COMPARISONS,\n /**\n * viz icon\n */\n icon: BarIcon,\n placeholderIcon: BarPlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'legend.click': {\n description: 'triggered when user clicks on chart legend',\n },\n 'point.click': {\n description: 'triggered when user clicks on a point in the bar chart',\n },\n 'point.mouseover': {\n description: 'triggered when user hovers over a data point',\n },\n 'point.mouseout': {\n description: 'triggered when user moves out of a data point',\n },\n },\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.PLACEHOLDER, VizBehavior.EVENTS, VizBehavior.TRELLIS],\n themes,\n};\n\nexport default enhanceConfig(config);\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 \"@splunk/visualization-schemas\";\nexport * from \"@splunk/visualization-schemas\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\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/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 \"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 { LAYOUT_TYPE } from '@splunk/visualization-schemas';\nimport { EditorConfig } from '../interfaces/Editor';\nimport { insertLayout } from '../utils/configUtils';\n\nexport const isTrellisFeatureFlagOn = ({ featureFlags }): boolean => {\n return Boolean(featureFlags?.visualizations_enableTrellis);\n};\n\nexport const isTrellisEnabled = ({ options, featureFlags }): boolean => {\n const { splitByLayout = LAYOUT_TYPE.Off } = options;\n return isTrellisFeatureFlagOn({ featureFlags }) && splitByLayout === LAYOUT_TYPE.Trellis;\n};\n\nconst AxesChartDataConfig: EditorConfig = {\n label: _('Data configurations'),\n layout: [\n [\n {\n label: _('X'),\n option: 'x',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Y'),\n option: 'y',\n editor: 'editor.columnMultiSelector',\n editorProps: {\n dataSourceKey: 'primary',\n filterByTypes: ['number'],\n supportsDSL: true,\n expectedDataPrimitive: ['series', 'frame'],\n },\n },\n ],\n [\n {\n label: _('Result limit'),\n option: 'resultLimit',\n editor: 'editor.number',\n editorProps: {\n dataSourceKey: 'primary',\n },\n },\n ],\n ],\n};\n\nexport const AxesChartDataConfigBar: EditorConfig = {\n label: AxesChartDataConfig.label,\n // insert Y2 after Y\n layout: insertLayout(AxesChartDataConfig.layout, 2, [\n {\n label: _('Y2'),\n option: 'y2',\n editor: 'editor.columnMultiSelector',\n editorProps: {\n dataSourceKey: 'primary',\n filterByTypes: ['number'],\n supportsDSL: true,\n expectedDataPrimitive: ['series', 'frame'],\n },\n isDisabled: isTrellisEnabled,\n },\n ]),\n};\n\nexport const AxesChartDataConfigScatter: EditorConfig = {\n label: AxesChartDataConfig.label,\n layout: [\n [\n {\n label: _('X'),\n option: 'x',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Y'),\n option: 'y',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n filterByTypes: ['number'],\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Category'),\n option: 'category',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Result limit'),\n option: 'resultLimit',\n editor: 'editor.number',\n editorProps: {\n dataSourceKey: 'primary',\n },\n },\n ],\n ],\n};\n\nexport const AxesChartDataConfigBubble: EditorConfig = {\n label: AxesChartDataConfigScatter.label,\n // layout: insert Size after Category\n layout: insertLayout(AxesChartDataConfigScatter.layout, 3, [\n {\n label: _('Size'),\n option: 'size',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ]),\n};\n\nexport const AxesChartDataConfigAreaColumnLine: EditorConfig = {\n label: AxesChartDataConfigBar.label,\n layout: [\n ...AxesChartDataConfigBar.layout,\n [\n {\n label: _('Annotation x'),\n option: 'annotationX',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'annotation',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Annotation labels'),\n option: 'annotationLabel',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'annotation',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n ],\n};\n\nexport default AxesChartDataConfig;\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { LAYOUT_TYPE } from '@splunk/visualization-schemas';\n\nexport const isTrellisFeatureFlagOn = ({ featureFlags }): boolean => {\n return Boolean(featureFlags?.visualizations_enableTrellis);\n};\n\nexport const isTrellisEnabled = ({ options, featureFlags }): boolean => {\n const { splitByLayout = LAYOUT_TYPE.Off } = options;\n return isTrellisFeatureFlagOn({ featureFlags }) && splitByLayout === LAYOUT_TYPE.Trellis;\n};\n\nexport const TrellisEditorConfig = [\n [\n {\n label: _('Trellis layout'),\n option: 'splitByLayout',\n editor: 'editor.toggle',\n showEditor: isTrellisFeatureFlagOn,\n },\n ],\n [\n {\n label: _('Split by'),\n option: 'trellisSplitBy',\n editor: 'editor.trellisSplitBy',\n editorProps: {\n dataSourceKey: 'primary',\n },\n showEditor: isTrellisEnabled,\n },\n ],\n [\n {\n label: _('Number of columns'),\n option: 'trellisColumns',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n },\n placeholder: _('Auto'),\n showEditor: isTrellisEnabled,\n },\n ],\n [\n {\n label: _('Min column width'),\n option: 'trellisMinColumnWidth',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n },\n showEditor: isTrellisEnabled,\n },\n {\n label: _('Row height'),\n option: 'trellisRowHeight',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n },\n showEditor: isTrellisEnabled,\n },\n ],\n [\n {\n label: _('Max number of components per page'),\n option: 'trellisPageCount',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n },\n showEditor: isTrellisEnabled,\n },\n ],\n];\n\nexport const TimechartTrellisEditorConfig = [\n [\n {\n label: _('Trellis layout'),\n option: 'splitByLayout',\n editor: 'editor.toggle',\n showEditor: isTrellisFeatureFlagOn,\n // add help text for timecharts\n editorProps: {\n help: _(\n 'Y2-axis and overlay field configurations are not supported when trellis is enabled.'\n ),\n helpFormat: 'under',\n },\n },\n ],\n ...TrellisEditorConfig.slice(1),\n [\n {\n label: _('Shared y-axis scale'),\n option: 'trellisSharedScale',\n editor: 'editor.checkbox',\n showEditor: isTrellisEnabled,\n },\n ],\n];\n\nexport const TrellisBackgroundColorEditor = {\n label: _('Trellis background'),\n option: 'trellisBackgroundColor',\n editor: 'editor.color',\n showEditor: isTrellisEnabled,\n};\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { LAYOUT_TYPE } from '@splunk/visualization-schemas';\nimport { EditorConfig } from '../interfaces/Editor';\nimport { TimechartTrellisEditorConfig, TrellisEditorConfig } from './TrellisEditors';\n\nexport const isTrellisFeatureFlagOn = ({ featureFlags }): boolean => {\n return Boolean(featureFlags?.visualizations_enableTrellis);\n};\n\nexport const isTrellisEnabled = ({ options, featureFlags }): boolean => {\n const { splitByLayout = LAYOUT_TYPE.Off } = options;\n return isTrellisFeatureFlagOn({ featureFlags }) && splitByLayout === LAYOUT_TYPE.Trellis;\n};\n\nconst AxesChartDataDisplayBase: EditorConfig = {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Stack mode'),\n option: 'stackMode',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Not stacked'), value: 'auto' },\n { label: _('Stacked'), value: 'stacked' },\n { label: _('Stacked 100%'), value: 'stacked100' },\n ],\n },\n },\n ],\n [\n {\n label: _('Null value display'),\n option: 'nullValueDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Gaps'), value: 'gaps' },\n { label: _('Zero'), value: 'zero' },\n { label: _('Connect'), value: 'connect' },\n ],\n },\n },\n ],\n [\n {\n label: _('Data value display'),\n option: 'dataValuesDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Off'), value: 'off' },\n { label: _('All'), value: 'all' },\n { label: _('Min/Max'), value: 'minmax' },\n ],\n },\n },\n ],\n [\n {\n label: _('Overlay fields'),\n option: 'overlayFields',\n editor: 'editor.columnMultiSelectionByFieldNameEditor',\n editorProps: {\n filterByTypes: ['number'],\n },\n isDisabled: isTrellisEnabled,\n },\n ],\n [\n {\n label: _('Split series'),\n option: 'showSplitSeries',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Independent y-axis for split series'),\n option: 'showIndependentYRanges',\n editor: 'editor.checkbox',\n showEditor: ({ options }) => options.showSplitSeries,\n },\n ],\n ...TimechartTrellisEditorConfig,\n ],\n};\n\nexport const AxesChartDataDisplayArea: EditorConfig = AxesChartDataDisplayBase;\n\nexport const AxesChartDataDisplayBar: EditorConfig = {\n label: AxesChartDataDisplayBase.label,\n layout: [\n AxesChartDataDisplayBase.layout[0],\n // remove null value display editor at index 1\n ...AxesChartDataDisplayBase.layout.slice(2),\n ],\n};\n\nexport const AxesChartDataDisplayScatter: EditorConfig = {\n label: AxesChartDataDisplayBase.label,\n layout: [\n ...TrellisEditorConfig,\n [\n {\n label: _('Shared y-axis scale'),\n option: 'trellisSharedScale',\n editor: 'editor.checkbox',\n showEditor: isTrellisEnabled,\n },\n ],\n ],\n};\n\nexport const AxesChartDataDisplayColumn: EditorConfig = {\n label: AxesChartDataDisplayBase.label,\n layout: [\n AxesChartDataDisplayBase.layout[0],\n // remove null value display and add data value display\n AxesChartDataDisplayBase.layout[2],\n [\n {\n label: _('Show tooltip on hover'),\n option: 'showTooltip',\n editor: 'editor.checkbox',\n },\n ],\n ...AxesChartDataDisplayBase.layout.slice(3),\n [\n {\n label: _('Column grouping mode'),\n option: 'columnGrouping',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Overlay'), value: 'overlay' },\n ],\n },\n },\n ],\n ],\n};\n\nexport const AxesChartDataDisplayLine: EditorConfig = {\n label: AxesChartDataDisplayBase.label,\n layout: [\n // remove stacked mode editor\n ...AxesChartDataDisplayBase.layout.slice(1),\n ],\n};\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorConfig } from '../interfaces/Editor';\nimport { insertLayout } from '../utils/configUtils';\n\nexport const AxesChartXGridAndLabelsCommon: EditorConfig = {\n label: _('X-axis grid and labels'),\n layout: [\n [\n {\n label: _('Axis title'),\n option: 'xAxisTitleVisibility',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Axis title text'),\n option: 'xAxisTitleText',\n editor: 'editor.text',\n showEditor: ({ options }) =>\n options.xAxisTitleVisibility === 'show' || options.xAxisTitleVisibility === undefined,\n },\n ],\n [\n {\n label: _('Label visibility'),\n option: 'xAxisLabelVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n ],\n};\n\nconst AxesChartXGridAndLabels: EditorConfig = {\n label: AxesChartXGridAndLabelsCommon.label,\n layout: [\n ...AxesChartXGridAndLabelsCommon.layout,\n [\n {\n label: _('Label rotation'),\n option: 'xAxisLabelRotation',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('-90'), value: -90 },\n { label: _('-45'), value: -45 },\n { label: _('0'), value: 0 },\n { label: _('45'), value: 45 },\n { label: _('90'), value: 90 },\n ],\n },\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Number of time label parts'),\n option: 'xAxisMaxLabelParts',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n max: 3,\n },\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'xAxisLineVisibility',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major gridlines'),\n option: 'showXMajorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major tick visibility'),\n option: 'xAxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'xAxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.xAxisMajorTickVisibility === 'show' ||\n options.xAxisMajorTickVisibility === 'auto' ||\n options.xAxisMajorTickVisibility === undefined,\n },\n ],\n ],\n};\n\nexport const AxesChartXGridAndLabelsBubbleScatter: EditorConfig = {\n label: AxesChartXGridAndLabelsCommon.label,\n layout: [\n ...insertLayout(AxesChartXGridAndLabelsCommon.layout, 2, [\n {\n label: _('Axis scale'),\n option: 'xAxisScale',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Linear'), value: 'linear' },\n { label: _('Log'), value: 'log' },\n ],\n },\n },\n ]),\n [\n {\n label: _('Label rotation'),\n option: 'xAxisLabelRotation',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('-90'), value: -90 },\n { label: _('-45'), value: -45 },\n { label: _('0'), value: 0 },\n { label: _('45'), value: 45 },\n { label: _('90'), value: 90 },\n ],\n },\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Round axis labels'),\n option: 'showRoundedXAxisLabels',\n editor: 'editor.checkbox',\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('SI prefix abbreviation for labels'),\n option: 'xAxisAbbreviation',\n editor: 'editor.checkbox',\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Include zero'),\n option: 'showXAxisWithZero',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Extend to whole grid'),\n option: 'showXAxisExtendedRange',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Minimum axis value'),\n option: 'xAxisMin',\n editor: 'editor.number',\n },\n {\n label: _('Maximum axis value'),\n option: 'xAxisMax',\n editor: 'editor.number',\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'xAxisLineVisibility',\n editor: 'editor.checkbox',\n },\n ],\n // this option is disabled for bubble and scatter\n // [\n // {\n // label: _('Major gridlines'),\n // option: 'showXMajorGridLines',\n // editor: 'editor.checkbox',\n // },\n // ],\n [\n {\n label: _('Major tick visibility'),\n option: 'xAxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'xAxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.xAxisMajorTickVisibility === 'show' ||\n options.xAxisMajorTickVisibility === 'auto' ||\n options.xAxisMajorTickVisibility === undefined,\n },\n ],\n [\n {\n label: _('Major tick interval spacing'),\n option: 'xAxisMajorTickInterval',\n editor: 'editor.number',\n showEditor: ({ options }) =>\n options.xAxisMajorTickVisibility === 'show' ||\n options.xAxisMajorTickVisibility === 'auto' ||\n options.xAxisMajorTickVisibility === undefined,\n },\n ],\n [\n {\n label: _('Minor gridlines'),\n option: 'showXMinorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Minor tick visibility'),\n option: 'xAxisMinorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Minor tick size (px)'),\n option: 'xAxisMinorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.xAxisMinorTickVisibility === 'show' ||\n options.xAxisMinorTickVisibility === 'auto' ||\n options.xAxisMinorTickVisibility === undefined,\n },\n ],\n ],\n};\n\nexport default AxesChartXGridAndLabels;\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 { _ } from '@splunk/ui-utils/i18n';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { EditorConfig } from '../interfaces/Editor';\nimport { ThemedDefaults } from '../interfaces/ThemedDefaults';\nimport getBackgroundColorEditor from '../editorConfig/BackgroundColor';\nimport { TrellisBackgroundColorEditor } from './TrellisEditors';\n\nconst themes: ThemedDefaults = {\n defaultBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n};\n\nconst AxesChartColorAndStyle: EditorConfig = {\n label: _('Color and style'),\n layout: [\n getBackgroundColorEditor({ themes }),\n [\n {\n label: _('Series colors'),\n option: 'seriesColors',\n editor: 'editor.seriesColors',\n },\n ],\n [\n {\n label: _('Series colors by field name'),\n option: 'seriesColorsByField',\n editor: 'editor.seriesColorsByField',\n },\n ],\n ],\n};\n\nexport const AxesChartColorAndStyleWithTrellis: EditorConfig = {\n ...AxesChartColorAndStyle,\n layout: [\n AxesChartColorAndStyle.layout[0],\n [\n {\n ...TrellisBackgroundColorEditor,\n editorProps: {\n themes,\n },\n },\n ],\n ...AxesChartColorAndStyle.layout.slice(1),\n ],\n};\n\nexport default AxesChartColorAndStyle;\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorConfig } from '../interfaces/Editor';\n\nconst AxesChartLegend: EditorConfig = {\n label: _('Legend'),\n layout: [\n [\n {\n label: _('Legend display'),\n option: 'legendDisplay',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Right'), value: 'right' },\n { label: _('Left'), value: 'left' },\n { label: _('Top'), value: 'top' },\n { label: _('Bottom'), value: 'bottom' },\n { label: _('Off'), value: 'off' },\n ],\n },\n },\n ],\n [\n {\n label: _('Legend truncation'),\n option: 'legendTruncation',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('A...'), value: 'ellipsisEnd' },\n { label: _('A...Z'), value: 'ellipsisMiddle' },\n { label: _('...Z'), value: 'ellipsisStart' },\n { label: _('Off'), value: 'ellipsisOff' },\n ],\n },\n showEditor: ({ options }) =>\n options.legendDisplay === 'left' ||\n options.legendDisplay === 'right' ||\n options.legendDisplay === 'top' ||\n options.legendDisplay === 'bottom' ||\n options.legendDisplay === undefined,\n },\n ],\n ],\n};\n\nexport const AxesChartLegendWithTrellisAndMode = ({\n showLegendTooltip = false,\n hideModeWhenOff = false,\n}): EditorConfig => ({\n label: AxesChartLegend.label,\n layout: [\n [\n {\n label: _('Legend display'),\n option: 'legendDisplay',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Right'), value: 'right' },\n { label: _('Left'), value: 'left' },\n { label: _('Top'), value: 'top' },\n { label: _('Bottom'), value: 'bottom' },\n { label: _('Off'), value: 'off' },\n ],\n tooltip:\n showLegendTooltip && _('Legend mode must be \"Standard\" to configure legend display'),\n },\n isDisabled: showLegendTooltip\n ? ({ options }) => options.legendMode === 'seriesCompare'\n : undefined,\n overrideDefaultValue: ({ options }) =>\n options?.splitByLayout === 'trellis' ? 'off' : 'right',\n },\n ],\n [\n {\n ...AxesChartLegend.layout[1][0],\n showEditor: ({ options }) =>\n options.legendDisplay === 'left' ||\n options.legendDisplay === 'right' ||\n options.legendDisplay === 'top' ||\n options.legendDisplay === 'bottom' ||\n // when Trellis is on, the default value of legendDisplay is off\n (options.legendDisplay === undefined && options.splitByLayout !== 'trellis'),\n },\n ],\n [\n {\n label: _('Legend mode'),\n option: 'legendMode',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Standard'), value: 'standard' },\n { label: _('Compare series'), value: 'seriesCompare' },\n ],\n },\n showEditor: ({ options }) =>\n hideModeWhenOff\n ? options.legendDisplay === 'left' ||\n options.legendDisplay === 'right' ||\n options.legendDisplay === 'top' ||\n options.legendDisplay === 'bottom' ||\n // when Trellis is on, the default value of legendDisplay is off\n (options.legendDisplay === undefined && options.splitByLayout !== 'trellis')\n : true,\n },\n ],\n ],\n});\n\nexport default AxesChartLegend;\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorConfig } from '../interfaces/Editor';\n\nconst AxesChartYGridAndLabels: EditorConfig = {\n label: _('Y-axis grid and labels'),\n layout: [\n [\n {\n label: _('Axis title'),\n option: 'yAxisTitleVisibility',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Axis title text'),\n option: 'yAxisTitleText',\n editor: 'editor.text',\n showEditor: ({ options }) =>\n options.yAxisTitleVisibility === 'show' || options.yAxisTitleVisibility === undefined,\n },\n ],\n [\n {\n label: _('Scale'),\n option: 'yAxisScale',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Linear'), value: 'linear' },\n { label: _('Log'), value: 'log' },\n ],\n },\n },\n ],\n [\n {\n label: _('Label visibility'),\n option: 'yAxisLabelVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('SI prefix abbreviation for labels'),\n option: 'yAxisAbbreviation',\n editor: 'editor.checkbox',\n showEditor: ({ options }) =>\n options.yAxisLabelVisibility === 'show' ||\n options.yAxisLabelVisibility === 'auto' ||\n options.yAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Include zero'),\n option: 'showYAxisWithZero',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Extend to whole grid'),\n option: 'showYAxisExtendedRange',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Minimum axis value'),\n option: 'yAxisMin',\n editor: 'editor.number',\n },\n {\n label: _('Maximum axis value'),\n option: 'yAxisMax',\n editor: 'editor.number',\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'yAxisLineVisibility',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major gridlines'),\n option: 'showYMajorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major tick visibility'),\n option: 'yAxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'yAxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.yAxisMajorTickVisibility === 'show' ||\n options.yAxisMajorTickVisibility === 'auto' ||\n options.yAxisMajorTickVisibility === undefined,\n },\n ],\n [\n {\n label: _('Major tick interval spacing'),\n option: 'yAxisMajorTickInterval',\n editor: 'editor.number',\n showEditor: ({ options }) =>\n options.yAxisMajorTickVisibility === 'show' ||\n options.yAxisMajorTickVisibility === 'auto' ||\n options.yAxisMajorTickVisibility === undefined,\n },\n ],\n [\n {\n label: _('Minor gridlines'),\n option: 'showYMinorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Minor tick visibility'),\n option: 'yAxisMinorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Minor tick size (px)'),\n option: 'yAxisMinorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.yAxisMinorTickVisibility === 'show' ||\n options.yAxisMinorTickVisibility === 'auto' ||\n options.yAxisMinorTickVisibility === undefined,\n },\n ],\n ],\n};\n\nexport default AxesChartYGridAndLabels;\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { LAYOUT_TYPE } from '@splunk/visualization-schemas';\nimport { EditorConfig } from '../interfaces/Editor';\n\nexport const isTrellisFeatureFlagOn = ({ featureFlags }): boolean => {\n return Boolean(featureFlags?.visualizations_enableTrellis);\n};\n\nexport const isTrellisOff = ({ options, featureFlags }): boolean => {\n const { splitByLayout = LAYOUT_TYPE.Off } = options;\n return !isTrellisFeatureFlagOn({ featureFlags }) || splitByLayout !== LAYOUT_TYPE.Trellis;\n};\n\nconst axesChartY2GridAndLabels: EditorConfig = {\n label: _('Y2-axis grid and labels'),\n layout: [\n [\n {\n label: _('Axis title'),\n option: 'y2AxisTitleVisibility',\n editor: 'editor.toggle',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Axis title text'),\n option: 'y2AxisTitleText',\n editor: 'editor.text',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisTitleVisibility === 'show' || options.y2AxisTitleVisibility === undefined),\n },\n ],\n [\n {\n label: _('Show overlays on the y2-axis'),\n option: 'showOverlayY2Axis',\n editor: 'editor.checkbox',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n Array.isArray(options.overlayFields) &&\n options.overlayFields.length > 0,\n },\n ],\n [\n {\n label: _('Scale'),\n option: 'y2AxisScale',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Linear'), value: 'linear' },\n { label: _('Log'), value: 'log' },\n ],\n },\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Label visibility'),\n option: 'y2AxisLabelVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Round axis labels'),\n option: 'showRoundedY2AxisLabels',\n editor: 'editor.checkbox',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisLabelVisibility === 'show' ||\n options.y2AxisLabelVisibility === 'auto' ||\n options.y2AxisLabelVisibility === undefined),\n },\n ],\n [\n {\n label: _('SI prefix abbreviation for labels'),\n option: 'y2AxisAbbreviation',\n editor: 'editor.checkbox',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisLabelVisibility === 'show' ||\n options.y2AxisLabelVisibility === 'auto' ||\n options.y2AxisLabelVisibility === undefined),\n },\n ],\n [\n {\n label: _('Include zero'),\n option: 'showY2AxisWithZero',\n editor: 'editor.checkbox',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Minimum axis value'),\n option: 'y2AxisMin',\n editor: 'editor.number',\n showEditor: isTrellisOff,\n },\n {\n label: _('Maximum axis value'),\n option: 'y2AxisMax',\n editor: 'editor.number',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'y2AxisLineVisibility',\n editor: 'editor.checkbox',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Major gridlines'),\n option: 'showY2MajorGridLines',\n editor: 'editor.checkbox',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Major tick visibility'),\n option: 'y2AxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'y2AxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisMajorTickVisibility === 'show' ||\n options.y2AxisMajorTickVisibility === 'auto' ||\n options.y2AxisMajorTickVisibility === undefined),\n },\n ],\n [\n {\n label: _('Major tick interval spacing'),\n option: 'y2AxisMajorTickInterval',\n editor: 'editor.number',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisMajorTickVisibility === 'show' ||\n options.y2AxisMajorTickVisibility === 'auto' ||\n options.y2AxisMajorTickVisibility === undefined),\n },\n ],\n [\n {\n label: _('Minor gridlines'),\n option: 'showY2MinorGridLines',\n editor: 'editor.checkbox',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Minor tick visibility'),\n option: 'y2AxisMinorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Minor tick size (px)'),\n option: 'y2AxisMinorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisMinorTickVisibility === 'show' ||\n options.y2AxisMinorTickVisibility === 'auto' ||\n options.y2AxisMinorTickVisibility === undefined),\n },\n ],\n ],\n};\n\nexport default axesChartY2GridAndLabels;\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import { Bar as BarIcon } from '@splunk/visualization-icons';\nimport { Bar as BarPlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { barOptionsSchema as optionsSchema } from '@splunk/visualization-schemas';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { AxesChartDataConfigBar } from '../common/editorConfig/AxesChartDataConfig';\nimport { AxesChartDataDisplayBar } from '../common/editorConfig/AxesChartDataDisplay';\nimport { AxesChartXGridAndLabelsCommon } from '../common/editorConfig/AxesChartXGridAndLabels';\nimport { AxesChartColorAndStyleWithTrellis } from '../common/editorConfig/AxesChartColorAndStyle';\nimport { AxesChartLegendWithTrellisAndMode } from '../common/editorConfig/AxesChartLegend';\nimport AxesChartYGridAndLabels from '../common/editorConfig/AxesChartYGridAndLabels';\nimport AxesChartY2GridAndLabels from '../common/editorConfig/AxesChartY2GridAndLabels';\n\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { enhanceConfig } from '../common/utils/configUtils';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [\n // Note: SCP-14090 disable ui for optional datasources. We may need to add it back later\n // {\n // name: 'annotation',\n // description: 'DataSource that populates event annotations',\n // },\n ],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {};\n\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 defaultFontColor: props =>\n pick({\n enterprise: {\n dark: variables.textColor(props),\n light: variables.textColor(props),\n },\n prisma: variables.contentColorDefault(props),\n })(props),\n};\n\nconst editorConfig: EditorConfig[] = [\n AxesChartDataConfigBar,\n AxesChartDataDisplayBar,\n {\n label: AxesChartColorAndStyleWithTrellis.label,\n layout: [\n ...AxesChartColorAndStyleWithTrellis.layout,\n [\n {\n label: _('Line width'),\n option: 'lineWidth',\n editor: 'editor.slider',\n editorProps: {\n min: 0.5,\n max: 8.0,\n step: 0.5,\n },\n showEditor: ({ options }) =>\n Array.isArray(options.overlayFields) && options.overlayFields.length > 0,\n },\n ],\n [\n {\n label: _('Series spacing'),\n option: 'seriesSpacing',\n editor: 'editor.number',\n },\n ],\n [\n {\n label: _('Bar spacing'),\n option: 'barSpacing',\n editor: 'editor.number',\n },\n ],\n ],\n },\n AxesChartLegendWithTrellisAndMode({ showLegendTooltip: false }),\n {\n label: _('X-axis grid and labels (vertical axis)'),\n layout: [\n ...AxesChartXGridAndLabelsCommon.layout,\n [\n {\n label: _('Number of time label parts'),\n option: 'xAxisMaxLabelParts',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n max: 3,\n },\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'xAxisLineVisibility',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major gridlines'),\n option: 'showXMajorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major tick visibility'),\n option: 'xAxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'xAxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.xAxisMajorTickVisibility === 'show' ||\n options.xAxisMajorTickVisibility === 'auto' ||\n options.xAxisMajorTickVisibility === undefined,\n },\n ],\n ],\n },\n // bar viz supports custom labels for the x- and y-axis titles (vertical and horizontal axes, respectively)\n { ...AxesChartYGridAndLabels, label: _('Y-axis grid and labels (horizontal axis)') },\n AxesChartY2GridAndLabels,\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.bar',\n /**\n * viz name\n */\n name: _('Bar'),\n category: VizCategory.COMPARISONS,\n /**\n * viz icon\n */\n icon: BarIcon,\n placeholderIcon: BarPlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'legend.click': {\n description: 'triggered when user clicks on chart legend',\n },\n 'point.click': {\n description: 'triggered when user clicks on a point in the bar chart',\n },\n 'point.mouseover': {\n description: 'triggered when user hovers over a data point',\n },\n 'point.mouseout': {\n description: 'triggered when user moves out of a data point',\n },\n },\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.PLACEHOLDER, VizBehavior.EVENTS, VizBehavior.TRELLIS],\n themes,\n};\n\nexport default enhanceConfig(config);\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 \"@splunk/visualization-schemas\";\nexport * from \"@splunk/visualization-schemas\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\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/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 \"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 { LAYOUT_TYPE } from '@splunk/visualization-schemas';\nimport { EditorConfig } from '../interfaces/Editor';\nimport { insertLayout } from '../utils/configUtils';\n\nexport const isTrellisFeatureFlagOn = ({ featureFlags }): boolean => {\n return Boolean(featureFlags?.visualizations_enableTrellis);\n};\n\nexport const isTrellisEnabled = ({ options, featureFlags }): boolean => {\n const { splitByLayout = LAYOUT_TYPE.Off } = options;\n return isTrellisFeatureFlagOn({ featureFlags }) && splitByLayout === LAYOUT_TYPE.Trellis;\n};\n\nconst AxesChartDataConfig: EditorConfig = {\n label: _('Data configurations'),\n layout: [\n [\n {\n label: _('X'),\n option: 'x',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Y'),\n option: 'y',\n editor: 'editor.columnMultiSelector',\n editorProps: {\n dataSourceKey: 'primary',\n filterByTypes: ['number'],\n supportsDSL: true,\n expectedDataPrimitive: ['series', 'frame'],\n },\n },\n ],\n [\n {\n label: _('Additional tooltip fields'),\n option: 'additionalTooltipFields',\n editor: 'editor.columnMultiSelectionByFieldNameEditor',\n },\n ],\n [\n {\n label: _('Result limit'),\n option: 'resultLimit',\n editor: 'editor.number',\n editorProps: {\n dataSourceKey: 'primary',\n },\n },\n ],\n ],\n};\n\nexport const AxesChartDataConfigBar: EditorConfig = {\n label: AxesChartDataConfig.label,\n // insert Y2 after Y\n layout: insertLayout(AxesChartDataConfig.layout, 2, [\n {\n label: _('Y2'),\n option: 'y2',\n editor: 'editor.columnMultiSelector',\n editorProps: {\n dataSourceKey: 'primary',\n filterByTypes: ['number'],\n supportsDSL: true,\n expectedDataPrimitive: ['series', 'frame'],\n },\n isDisabled: isTrellisEnabled,\n },\n ]),\n};\n\nexport const AxesChartDataConfigScatter: EditorConfig = {\n label: AxesChartDataConfig.label,\n layout: [\n [\n {\n label: _('X'),\n option: 'x',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Y'),\n option: 'y',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n filterByTypes: ['number'],\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Category'),\n option: 'category',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Result limit'),\n option: 'resultLimit',\n editor: 'editor.number',\n editorProps: {\n dataSourceKey: 'primary',\n },\n },\n ],\n ],\n};\n\nexport const AxesChartDataConfigBubble: EditorConfig = {\n label: AxesChartDataConfigScatter.label,\n // layout: insert Size after Category\n layout: insertLayout(AxesChartDataConfigScatter.layout, 3, [\n {\n label: _('Size'),\n option: 'size',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'primary',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ]),\n};\n\nexport const AxesChartDataConfigAreaColumnLine: EditorConfig = {\n label: AxesChartDataConfigBar.label,\n layout: [\n ...AxesChartDataConfigBar.layout,\n [\n {\n label: _('Annotation x'),\n option: 'annotationX',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'annotation',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n [\n {\n label: _('Annotation labels'),\n option: 'annotationLabel',\n editor: 'editor.columnSelector',\n editorProps: {\n dataSourceKey: 'annotation',\n supportsDSL: true,\n expectedDataPrimitive: ['series'],\n },\n },\n ],\n ],\n};\n\nexport default AxesChartDataConfig;\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { LAYOUT_TYPE } from '@splunk/visualization-schemas';\n\nexport const isTrellisFeatureFlagOn = ({ featureFlags }): boolean => {\n return Boolean(featureFlags?.visualizations_enableTrellis);\n};\n\nexport const isTrellisEnabled = ({ options, featureFlags }): boolean => {\n const { splitByLayout = LAYOUT_TYPE.Off } = options;\n return isTrellisFeatureFlagOn({ featureFlags }) && splitByLayout === LAYOUT_TYPE.Trellis;\n};\n\nexport const TrellisEditorConfig = [\n [\n {\n label: _('Trellis layout'),\n option: 'splitByLayout',\n editor: 'editor.toggle',\n showEditor: isTrellisFeatureFlagOn,\n },\n ],\n [\n {\n label: _('Split by'),\n option: 'trellisSplitBy',\n editor: 'editor.trellisSplitBy',\n editorProps: {\n dataSourceKey: 'primary',\n },\n showEditor: isTrellisEnabled,\n },\n ],\n [\n {\n label: _('Number of columns'),\n option: 'trellisColumns',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n },\n placeholder: _('Auto'),\n showEditor: isTrellisEnabled,\n },\n ],\n [\n {\n label: _('Min column width'),\n option: 'trellisMinColumnWidth',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n },\n showEditor: isTrellisEnabled,\n },\n {\n label: _('Row height'),\n option: 'trellisRowHeight',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n },\n showEditor: isTrellisEnabled,\n },\n ],\n [\n {\n label: _('Max number of components per page'),\n option: 'trellisPageCount',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n },\n showEditor: isTrellisEnabled,\n },\n ],\n];\n\nexport const TimechartTrellisEditorConfig = [\n [\n {\n label: _('Trellis layout'),\n option: 'splitByLayout',\n editor: 'editor.toggle',\n showEditor: isTrellisFeatureFlagOn,\n // add help text for timecharts\n editorProps: {\n help: _(\n 'Y2-axis and overlay field configurations are not supported when trellis is enabled.'\n ),\n helpFormat: 'under',\n },\n },\n ],\n ...TrellisEditorConfig.slice(1),\n [\n {\n label: _('Shared y-axis scale'),\n option: 'trellisSharedScale',\n editor: 'editor.checkbox',\n showEditor: isTrellisEnabled,\n },\n ],\n];\n\nexport const TrellisBackgroundColorEditor = {\n label: _('Trellis background'),\n option: 'trellisBackgroundColor',\n editor: 'editor.color',\n showEditor: isTrellisEnabled,\n};\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { LAYOUT_TYPE } from '@splunk/visualization-schemas';\nimport { EditorConfig } from '../interfaces/Editor';\nimport { TimechartTrellisEditorConfig, TrellisEditorConfig } from './TrellisEditors';\n\nexport const isTrellisFeatureFlagOn = ({ featureFlags }): boolean => {\n return Boolean(featureFlags?.visualizations_enableTrellis);\n};\n\nexport const isTrellisEnabled = ({ options, featureFlags }): boolean => {\n const { splitByLayout = LAYOUT_TYPE.Off } = options;\n return isTrellisFeatureFlagOn({ featureFlags }) && splitByLayout === LAYOUT_TYPE.Trellis;\n};\n\nconst AxesChartDataDisplayBase: EditorConfig = {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Stack mode'),\n option: 'stackMode',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Not stacked'), value: 'auto' },\n { label: _('Stacked'), value: 'stacked' },\n { label: _('Stacked 100%'), value: 'stacked100' },\n ],\n },\n },\n ],\n [\n {\n label: _('Null value display'),\n option: 'nullValueDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Gaps'), value: 'gaps' },\n { label: _('Zero'), value: 'zero' },\n { label: _('Connect'), value: 'connect' },\n ],\n },\n },\n ],\n [\n {\n label: _('Data value display'),\n option: 'dataValuesDisplay',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Off'), value: 'off' },\n { label: _('All'), value: 'all' },\n { label: _('Min/Max'), value: 'minmax' },\n ],\n },\n },\n ],\n [\n {\n label: _('Overlay fields'),\n option: 'overlayFields',\n editor: 'editor.columnMultiSelectionByFieldNameEditor',\n editorProps: {\n filterByTypes: ['number'],\n },\n isDisabled: isTrellisEnabled,\n },\n ],\n [\n {\n label: _('Split series'),\n option: 'showSplitSeries',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Independent y-axis for split series'),\n option: 'showIndependentYRanges',\n editor: 'editor.checkbox',\n showEditor: ({ options }) => options.showSplitSeries,\n },\n ],\n ...TimechartTrellisEditorConfig,\n ],\n};\n\nexport const AxesChartDataDisplayArea: EditorConfig = AxesChartDataDisplayBase;\n\nexport const AxesChartDataDisplayBar: EditorConfig = {\n label: AxesChartDataDisplayBase.label,\n layout: [\n AxesChartDataDisplayBase.layout[0],\n // remove null value display editor at index 1\n ...AxesChartDataDisplayBase.layout.slice(2),\n ],\n};\n\nexport const AxesChartDataDisplayScatter: EditorConfig = {\n label: AxesChartDataDisplayBase.label,\n layout: [\n ...TrellisEditorConfig,\n [\n {\n label: _('Shared y-axis scale'),\n option: 'trellisSharedScale',\n editor: 'editor.checkbox',\n showEditor: isTrellisEnabled,\n },\n ],\n ],\n};\n\nexport const AxesChartDataDisplayColumn: EditorConfig = {\n label: AxesChartDataDisplayBase.label,\n layout: [\n AxesChartDataDisplayBase.layout[0],\n // remove null value display and add data value display\n AxesChartDataDisplayBase.layout[2],\n [\n {\n label: _('Show tooltip on hover'),\n option: 'showTooltip',\n editor: 'editor.checkbox',\n },\n ],\n ...AxesChartDataDisplayBase.layout.slice(3),\n [\n {\n label: _('Column grouping mode'),\n option: 'columnGrouping',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Overlay'), value: 'overlay' },\n ],\n },\n },\n ],\n ],\n};\n\nexport const AxesChartDataDisplayLine: EditorConfig = {\n label: AxesChartDataDisplayBase.label,\n layout: [\n // remove stacked mode editor\n ...AxesChartDataDisplayBase.layout.slice(1),\n ],\n};\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorConfig } from '../interfaces/Editor';\nimport { insertLayout } from '../utils/configUtils';\n\nexport const AxesChartXGridAndLabelsCommon: EditorConfig = {\n label: _('X-axis grid and labels'),\n layout: [\n [\n {\n label: _('Axis title'),\n option: 'xAxisTitleVisibility',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Axis title text'),\n option: 'xAxisTitleText',\n editor: 'editor.text',\n showEditor: ({ options }) =>\n options.xAxisTitleVisibility === 'show' || options.xAxisTitleVisibility === undefined,\n },\n ],\n [\n {\n label: _('Label visibility'),\n option: 'xAxisLabelVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n ],\n};\n\nconst AxesChartXGridAndLabels: EditorConfig = {\n label: AxesChartXGridAndLabelsCommon.label,\n layout: [\n ...AxesChartXGridAndLabelsCommon.layout,\n [\n {\n label: _('Label rotation'),\n option: 'xAxisLabelRotation',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('-90'), value: -90 },\n { label: _('-45'), value: -45 },\n { label: _('0'), value: 0 },\n { label: _('45'), value: 45 },\n { label: _('90'), value: 90 },\n ],\n },\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Number of time label parts'),\n option: 'xAxisMaxLabelParts',\n editor: 'editor.number',\n editorProps: {\n min: 1,\n max: 3,\n },\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'xAxisLineVisibility',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major gridlines'),\n option: 'showXMajorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major tick visibility'),\n option: 'xAxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'xAxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.xAxisMajorTickVisibility === 'show' ||\n options.xAxisMajorTickVisibility === 'auto' ||\n options.xAxisMajorTickVisibility === undefined,\n },\n ],\n ],\n};\n\nexport const AxesChartXGridAndLabelsBubbleScatter: EditorConfig = {\n label: AxesChartXGridAndLabelsCommon.label,\n layout: [\n ...insertLayout(AxesChartXGridAndLabelsCommon.layout, 2, [\n {\n label: _('Axis scale'),\n option: 'xAxisScale',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Linear'), value: 'linear' },\n { label: _('Log'), value: 'log' },\n ],\n },\n },\n ]),\n [\n {\n label: _('Label rotation'),\n option: 'xAxisLabelRotation',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('-90'), value: -90 },\n { label: _('-45'), value: -45 },\n { label: _('0'), value: 0 },\n { label: _('45'), value: 45 },\n { label: _('90'), value: 90 },\n ],\n },\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Round axis labels'),\n option: 'showRoundedXAxisLabels',\n editor: 'editor.checkbox',\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('SI prefix abbreviation for labels'),\n option: 'xAxisAbbreviation',\n editor: 'editor.checkbox',\n showEditor: ({ options }) =>\n options.xAxisLabelVisibility === 'show' ||\n options.xAxisLabelVisibility === 'auto' ||\n options.xAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Include zero'),\n option: 'showXAxisWithZero',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Extend to whole grid'),\n option: 'showXAxisExtendedRange',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Minimum axis value'),\n option: 'xAxisMin',\n editor: 'editor.number',\n },\n {\n label: _('Maximum axis value'),\n option: 'xAxisMax',\n editor: 'editor.number',\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'xAxisLineVisibility',\n editor: 'editor.checkbox',\n },\n ],\n // this option is disabled for bubble and scatter\n // [\n // {\n // label: _('Major gridlines'),\n // option: 'showXMajorGridLines',\n // editor: 'editor.checkbox',\n // },\n // ],\n [\n {\n label: _('Major tick visibility'),\n option: 'xAxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'xAxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.xAxisMajorTickVisibility === 'show' ||\n options.xAxisMajorTickVisibility === 'auto' ||\n options.xAxisMajorTickVisibility === undefined,\n },\n ],\n [\n {\n label: _('Major tick interval spacing'),\n option: 'xAxisMajorTickInterval',\n editor: 'editor.number',\n showEditor: ({ options }) =>\n options.xAxisMajorTickVisibility === 'show' ||\n options.xAxisMajorTickVisibility === 'auto' ||\n options.xAxisMajorTickVisibility === undefined,\n },\n ],\n [\n {\n label: _('Minor gridlines'),\n option: 'showXMinorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Minor tick visibility'),\n option: 'xAxisMinorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Minor tick size (px)'),\n option: 'xAxisMinorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.xAxisMinorTickVisibility === 'show' ||\n options.xAxisMinorTickVisibility === 'auto' ||\n options.xAxisMinorTickVisibility === undefined,\n },\n ],\n ],\n};\n\nexport default AxesChartXGridAndLabels;\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 { _ } from '@splunk/ui-utils/i18n';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { EditorConfig } from '../interfaces/Editor';\nimport { ThemedDefaults } from '../interfaces/ThemedDefaults';\nimport getBackgroundColorEditor from '../editorConfig/BackgroundColor';\nimport { TrellisBackgroundColorEditor } from './TrellisEditors';\n\nconst themes: ThemedDefaults = {\n defaultBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n};\n\nconst AxesChartColorAndStyle: EditorConfig = {\n label: _('Color and style'),\n layout: [\n getBackgroundColorEditor({ themes }),\n [\n {\n label: _('Series colors'),\n option: 'seriesColors',\n editor: 'editor.seriesColors',\n },\n ],\n [\n {\n label: _('Series colors by field name'),\n option: 'seriesColorsByField',\n editor: 'editor.seriesColorsByField',\n },\n ],\n ],\n};\n\nexport const AxesChartColorAndStyleWithTrellis: EditorConfig = {\n ...AxesChartColorAndStyle,\n layout: [\n AxesChartColorAndStyle.layout[0],\n [\n {\n ...TrellisBackgroundColorEditor,\n editorProps: {\n themes,\n },\n },\n ],\n ...AxesChartColorAndStyle.layout.slice(1),\n ],\n};\n\nexport default AxesChartColorAndStyle;\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorConfig } from '../interfaces/Editor';\n\nconst AxesChartLegend: EditorConfig = {\n label: _('Legend'),\n layout: [\n [\n {\n label: _('Legend display'),\n option: 'legendDisplay',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Right'), value: 'right' },\n { label: _('Left'), value: 'left' },\n { label: _('Top'), value: 'top' },\n { label: _('Bottom'), value: 'bottom' },\n { label: _('Off'), value: 'off' },\n ],\n },\n },\n ],\n [\n {\n label: _('Legend truncation'),\n option: 'legendTruncation',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('A...'), value: 'ellipsisEnd' },\n { label: _('A...Z'), value: 'ellipsisMiddle' },\n { label: _('...Z'), value: 'ellipsisStart' },\n { label: _('Off'), value: 'ellipsisOff' },\n ],\n },\n showEditor: ({ options }) =>\n options.legendDisplay === 'left' ||\n options.legendDisplay === 'right' ||\n options.legendDisplay === 'top' ||\n options.legendDisplay === 'bottom' ||\n options.legendDisplay === undefined,\n },\n ],\n ],\n};\n\nexport const AxesChartLegendWithTrellisAndMode = ({\n showLegendTooltip = false,\n hideModeWhenOff = false,\n}): EditorConfig => ({\n label: AxesChartLegend.label,\n layout: [\n [\n {\n label: _('Legend display'),\n option: 'legendDisplay',\n editor: 'editor.select',\n editorProps: {\n values: [\n { label: _('Right'), value: 'right' },\n { label: _('Left'), value: 'left' },\n { label: _('Top'), value: 'top' },\n { label: _('Bottom'), value: 'bottom' },\n { label: _('Off'), value: 'off' },\n ],\n tooltip:\n showLegendTooltip && _('Legend mode must be \"Standard\" to configure legend display'),\n },\n isDisabled: showLegendTooltip\n ? ({ options }) => options.legendMode === 'seriesCompare'\n : undefined,\n overrideDefaultValue: ({ options }) =>\n options?.splitByLayout === 'trellis' ? 'off' : 'right',\n },\n ],\n [\n {\n ...AxesChartLegend.layout[1][0],\n showEditor: ({ options }) =>\n options.legendDisplay === 'left' ||\n options.legendDisplay === 'right' ||\n options.legendDisplay === 'top' ||\n options.legendDisplay === 'bottom' ||\n // when Trellis is on, the default value of legendDisplay is off\n (options.legendDisplay === undefined && options.splitByLayout !== 'trellis'),\n },\n ],\n [\n {\n label: _('Legend mode'),\n option: 'legendMode',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Standard'), value: 'standard' },\n { label: _('Compare series'), value: 'seriesCompare' },\n ],\n },\n showEditor: ({ options }) =>\n hideModeWhenOff\n ? options.legendDisplay === 'left' ||\n options.legendDisplay === 'right' ||\n options.legendDisplay === 'top' ||\n options.legendDisplay === 'bottom' ||\n // when Trellis is on, the default value of legendDisplay is off\n (options.legendDisplay === undefined && options.splitByLayout !== 'trellis')\n : true,\n },\n ],\n ],\n});\n\nexport default AxesChartLegend;\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { EditorConfig } from '../interfaces/Editor';\n\nconst AxesChartYGridAndLabels: EditorConfig = {\n label: _('Y-axis grid and labels'),\n layout: [\n [\n {\n label: _('Axis title'),\n option: 'yAxisTitleVisibility',\n editor: 'editor.toggle',\n },\n ],\n [\n {\n label: _('Axis title text'),\n option: 'yAxisTitleText',\n editor: 'editor.text',\n showEditor: ({ options }) =>\n options.yAxisTitleVisibility === 'show' || options.yAxisTitleVisibility === undefined,\n },\n ],\n [\n {\n label: _('Scale'),\n option: 'yAxisScale',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Linear'), value: 'linear' },\n { label: _('Log'), value: 'log' },\n ],\n },\n },\n ],\n [\n {\n label: _('Label visibility'),\n option: 'yAxisLabelVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('SI prefix abbreviation for labels'),\n option: 'yAxisAbbreviation',\n editor: 'editor.checkbox',\n showEditor: ({ options }) =>\n options.yAxisLabelVisibility === 'show' ||\n options.yAxisLabelVisibility === 'auto' ||\n options.yAxisLabelVisibility === undefined,\n },\n ],\n [\n {\n label: _('Include zero'),\n option: 'showYAxisWithZero',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Extend to whole grid'),\n option: 'showYAxisExtendedRange',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Minimum axis value'),\n option: 'yAxisMin',\n editor: 'editor.number',\n },\n {\n label: _('Maximum axis value'),\n option: 'yAxisMax',\n editor: 'editor.number',\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'yAxisLineVisibility',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major gridlines'),\n option: 'showYMajorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Major tick visibility'),\n option: 'yAxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'yAxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.yAxisMajorTickVisibility === 'show' ||\n options.yAxisMajorTickVisibility === 'auto' ||\n options.yAxisMajorTickVisibility === undefined,\n },\n ],\n [\n {\n label: _('Major tick interval spacing'),\n option: 'yAxisMajorTickInterval',\n editor: 'editor.number',\n showEditor: ({ options }) =>\n options.yAxisMajorTickVisibility === 'show' ||\n options.yAxisMajorTickVisibility === 'auto' ||\n options.yAxisMajorTickVisibility === undefined,\n },\n ],\n [\n {\n label: _('Minor gridlines'),\n option: 'showYMinorGridLines',\n editor: 'editor.checkbox',\n },\n ],\n [\n {\n label: _('Minor tick visibility'),\n option: 'yAxisMinorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n },\n ],\n [\n {\n label: _('Minor tick size (px)'),\n option: 'yAxisMinorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options }) =>\n options.yAxisMinorTickVisibility === 'show' ||\n options.yAxisMinorTickVisibility === 'auto' ||\n options.yAxisMinorTickVisibility === undefined,\n },\n ],\n ],\n};\n\nexport default AxesChartYGridAndLabels;\n", "import { _ } from '@splunk/ui-utils/i18n';\nimport { LAYOUT_TYPE } from '@splunk/visualization-schemas';\nimport { EditorConfig } from '../interfaces/Editor';\n\nexport const isTrellisFeatureFlagOn = ({ featureFlags }): boolean => {\n return Boolean(featureFlags?.visualizations_enableTrellis);\n};\n\nexport const isTrellisOff = ({ options, featureFlags }): boolean => {\n const { splitByLayout = LAYOUT_TYPE.Off } = options;\n return !isTrellisFeatureFlagOn({ featureFlags }) || splitByLayout !== LAYOUT_TYPE.Trellis;\n};\n\nconst axesChartY2GridAndLabels: EditorConfig = {\n label: _('Y2-axis grid and labels'),\n layout: [\n [\n {\n label: _('Axis title'),\n option: 'y2AxisTitleVisibility',\n editor: 'editor.toggle',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Axis title text'),\n option: 'y2AxisTitleText',\n editor: 'editor.text',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisTitleVisibility === 'show' || options.y2AxisTitleVisibility === undefined),\n },\n ],\n [\n {\n label: _('Show overlays on the y2-axis'),\n option: 'showOverlayY2Axis',\n editor: 'editor.checkbox',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n Array.isArray(options.overlayFields) &&\n options.overlayFields.length > 0,\n },\n ],\n [\n {\n label: _('Scale'),\n option: 'y2AxisScale',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Linear'), value: 'linear' },\n { label: _('Log'), value: 'log' },\n ],\n },\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Label visibility'),\n option: 'y2AxisLabelVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Round axis labels'),\n option: 'showRoundedY2AxisLabels',\n editor: 'editor.checkbox',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisLabelVisibility === 'show' ||\n options.y2AxisLabelVisibility === 'auto' ||\n options.y2AxisLabelVisibility === undefined),\n },\n ],\n [\n {\n label: _('SI prefix abbreviation for labels'),\n option: 'y2AxisAbbreviation',\n editor: 'editor.checkbox',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisLabelVisibility === 'show' ||\n options.y2AxisLabelVisibility === 'auto' ||\n options.y2AxisLabelVisibility === undefined),\n },\n ],\n [\n {\n label: _('Include zero'),\n option: 'showY2AxisWithZero',\n editor: 'editor.checkbox',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Minimum axis value'),\n option: 'y2AxisMin',\n editor: 'editor.number',\n showEditor: isTrellisOff,\n },\n {\n label: _('Maximum axis value'),\n option: 'y2AxisMax',\n editor: 'editor.number',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Axis line visibility'),\n option: 'y2AxisLineVisibility',\n editor: 'editor.checkbox',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Major gridlines'),\n option: 'showY2MajorGridLines',\n editor: 'editor.checkbox',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Major tick visibility'),\n option: 'y2AxisMajorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Major tick size (px)'),\n option: 'y2AxisMajorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisMajorTickVisibility === 'show' ||\n options.y2AxisMajorTickVisibility === 'auto' ||\n options.y2AxisMajorTickVisibility === undefined),\n },\n ],\n [\n {\n label: _('Major tick interval spacing'),\n option: 'y2AxisMajorTickInterval',\n editor: 'editor.number',\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisMajorTickVisibility === 'show' ||\n options.y2AxisMajorTickVisibility === 'auto' ||\n options.y2AxisMajorTickVisibility === undefined),\n },\n ],\n [\n {\n label: _('Minor gridlines'),\n option: 'showY2MinorGridLines',\n editor: 'editor.checkbox',\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Minor tick visibility'),\n option: 'y2AxisMinorTickVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Auto'), value: 'auto' },\n { label: _('Show'), value: 'show' },\n { label: _('Hide'), value: 'hide' },\n ],\n },\n showEditor: isTrellisOff,\n },\n ],\n [\n {\n label: _('Minor tick size (px)'),\n option: 'y2AxisMinorTickSize',\n editor: 'editor.slider',\n editorProps: {\n min: 0,\n max: 10,\n step: 1,\n },\n showEditor: ({ options, featureFlags }) =>\n isTrellisOff({ options, featureFlags }) &&\n (options.y2AxisMinorTickVisibility === 'show' ||\n options.y2AxisMinorTickVisibility === 'auto' ||\n options.y2AxisMinorTickVisibility === undefined),\n },\n ],\n ],\n};\n\nexport default axesChartY2GridAndLabels;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "config", "isTrellisFeatureFlagOn", "isTrellisEnabled", "isTrellisFeatureFlagOn", "isTrellisEnabled", "isTrellisEnabled", "themes", "isTrellisFeatureFlagOn", "themes", "BarIcon", "BarPlaceholderIcon", "optionsSchema"]
|
|
7
7
|
}
|
package/Bar.js
CHANGED
|
@@ -652,6 +652,7 @@ var propTypes = {
|
|
|
652
652
|
onDownsamplingThresholdChange: prop_types_exports.func,
|
|
653
653
|
xField: prop_types_exports.string,
|
|
654
654
|
y2Fields: prop_types_exports.array,
|
|
655
|
+
additionalTooltipFields: prop_types_exports.array,
|
|
655
656
|
splitByLayout: prop_types_exports.oneOf(Object.values(visualization_schemas_exports.LAYOUT_TYPE)),
|
|
656
657
|
trellisKey: prop_types_exports.string,
|
|
657
658
|
trellisSplitBy: prop_types_exports.string,
|
|
@@ -697,7 +698,8 @@ var Charting = (props) => {
|
|
|
697
698
|
xField,
|
|
698
699
|
backgroundColor,
|
|
699
700
|
defaultFontColor,
|
|
700
|
-
trellisKey
|
|
701
|
+
trellisKey,
|
|
702
|
+
additionalTooltipFields
|
|
701
703
|
} = props;
|
|
702
704
|
const prevOptions = usePrevious(options);
|
|
703
705
|
const prevTimezone = usePrevious(timezone);
|
|
@@ -924,7 +926,8 @@ var Charting = (props) => {
|
|
|
924
926
|
timezone == null ? void 0 : timezone.utcOffset,
|
|
925
927
|
timezone == null ? void 0 : timezone.serializedTimezone,
|
|
926
928
|
themeKey,
|
|
927
|
-
onClick
|
|
929
|
+
onClick,
|
|
930
|
+
additionalTooltipFields
|
|
928
931
|
]);
|
|
929
932
|
return /* @__PURE__ */ react_exports.createElement(react_exports.Fragment, null, trellisEnabled && /* @__PURE__ */ react_exports.createElement(
|
|
930
933
|
TrellisTitle,
|
|
@@ -967,7 +970,8 @@ var defaultProps = {
|
|
|
967
970
|
trellisKey: void 0,
|
|
968
971
|
trellisSplitBy: void 0,
|
|
969
972
|
backgroundColor: "",
|
|
970
|
-
defaultFontColor: ""
|
|
973
|
+
defaultFontColor: "",
|
|
974
|
+
additionalTooltipFields: []
|
|
971
975
|
};
|
|
972
976
|
Charting.propTypes = propTypes;
|
|
973
977
|
Charting.defaultProps = defaultProps;
|
|
@@ -1094,6 +1098,13 @@ var AxesChartDataConfig = {
|
|
|
1094
1098
|
}
|
|
1095
1099
|
}
|
|
1096
1100
|
],
|
|
1101
|
+
[
|
|
1102
|
+
{
|
|
1103
|
+
label: (0, i18n_exports._)("Additional tooltip fields"),
|
|
1104
|
+
option: "additionalTooltipFields",
|
|
1105
|
+
editor: "editor.columnMultiSelectionByFieldNameEditor"
|
|
1106
|
+
}
|
|
1107
|
+
],
|
|
1097
1108
|
[
|
|
1098
1109
|
{
|
|
1099
1110
|
label: (0, i18n_exports._)("Result limit"),
|
|
@@ -2755,7 +2766,7 @@ var withFixedSizeContainer = (Viz) => {
|
|
|
2755
2766
|
FixSizeItem,
|
|
2756
2767
|
{
|
|
2757
2768
|
"data-test": "fix-size-item",
|
|
2758
|
-
"data-splunk-visualization-version": "27.
|
|
2769
|
+
"data-splunk-visualization-version": "27.5.1 - 8ecd94150",
|
|
2759
2770
|
width,
|
|
2760
2771
|
height,
|
|
2761
2772
|
backgroundColor
|
|
@@ -2821,7 +2832,7 @@ var Cover = styled_components_default.div`
|
|
|
2821
2832
|
bottom: 0;
|
|
2822
2833
|
`;
|
|
2823
2834
|
var Blocker = styled_components_default.div.attrs({
|
|
2824
|
-
"data-splunk-visualization-version": "27.
|
|
2835
|
+
"data-splunk-visualization-version": "27.5.1 - 8ecd94150"
|
|
2825
2836
|
})`
|
|
2826
2837
|
position: relative;
|
|
2827
2838
|
width: 100%;
|
|
@@ -3786,6 +3797,16 @@ var constructFieldsAndColumns = ({
|
|
|
3786
3797
|
fields
|
|
3787
3798
|
};
|
|
3788
3799
|
};
|
|
3800
|
+
function constructAdditionalTooltipFieldsMap({ fields, columns, additionalTooltipFields }) {
|
|
3801
|
+
const map = {};
|
|
3802
|
+
additionalTooltipFields == null ? void 0 : additionalTooltipFields.forEach((fieldName) => {
|
|
3803
|
+
const index = fields.findIndex((f) => f.name === fieldName);
|
|
3804
|
+
if (index !== -1) {
|
|
3805
|
+
map[fieldName] = columns[index];
|
|
3806
|
+
}
|
|
3807
|
+
});
|
|
3808
|
+
return map;
|
|
3809
|
+
}
|
|
3789
3810
|
|
|
3790
3811
|
// src/Bar/barUtils.ts
|
|
3791
3812
|
var barOptionsSCMapping = {
|
|
@@ -4123,7 +4144,8 @@ var computeVizProps = (_a) => {
|
|
|
4123
4144
|
visualizationApiRef,
|
|
4124
4145
|
trellisKey,
|
|
4125
4146
|
trellisSplitBy,
|
|
4126
|
-
themeFunc
|
|
4147
|
+
themeFunc,
|
|
4148
|
+
additionalTooltipFields
|
|
4127
4149
|
} = _b, otherOptions = __objRest(_b, [
|
|
4128
4150
|
"dataSources",
|
|
4129
4151
|
"x",
|
|
@@ -4134,7 +4156,8 @@ var computeVizProps = (_a) => {
|
|
|
4134
4156
|
"visualizationApiRef",
|
|
4135
4157
|
"trellisKey",
|
|
4136
4158
|
"trellisSplitBy",
|
|
4137
|
-
"themeFunc"
|
|
4159
|
+
"themeFunc",
|
|
4160
|
+
"additionalTooltipFields"
|
|
4138
4161
|
]);
|
|
4139
4162
|
const defaultFontColor = themeFunc("defaultFontColor");
|
|
4140
4163
|
const computedProps = {
|
|
@@ -4149,12 +4172,18 @@ var computeVizProps = (_a) => {
|
|
|
4149
4172
|
const truncationLimit = computedProps.options["chart.resultTruncationLimit"];
|
|
4150
4173
|
let primaryData = __spreadValues({}, dataSources.primary.data);
|
|
4151
4174
|
const { columns, fields } = constructFieldsAndColumns({ x, y, xField, yFields, y2, y2Fields });
|
|
4175
|
+
const additionalTooltipFieldsConstructed = constructAdditionalTooltipFieldsMap(__spreadProps(__spreadValues({}, dataSources.primary.data), {
|
|
4176
|
+
additionalTooltipFields
|
|
4177
|
+
}));
|
|
4152
4178
|
primaryData.columns = columns;
|
|
4153
4179
|
primaryData.fields = fields;
|
|
4154
4180
|
if (truncationLimit) {
|
|
4155
4181
|
primaryData = truncateData(primaryData, truncationLimit);
|
|
4156
4182
|
}
|
|
4157
|
-
computedProps.chartData = charting_bundle_default.extractChartReadyData(
|
|
4183
|
+
computedProps.chartData = charting_bundle_default.extractChartReadyData(
|
|
4184
|
+
__spreadValues({}, primaryData),
|
|
4185
|
+
{ additionalTooltipFields: additionalTooltipFieldsConstructed }
|
|
4186
|
+
);
|
|
4158
4187
|
if (otherOptions.hasEventHandlers) {
|
|
4159
4188
|
computedProps.onClick = onEventTrigger;
|
|
4160
4189
|
computedProps.onSelect = onEventTrigger;
|