@splunk/visualizations 25.10.0 → 25.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/Area.config.js +1 -1
  2. package/Area.config.js.map +1 -1
  3. package/Area.js +3 -3
  4. package/Area.js.map +1 -1
  5. package/Bar.config.js +1 -1
  6. package/Bar.config.js.map +1 -1
  7. package/Bar.js +3 -3
  8. package/Bar.js.map +1 -1
  9. package/Bubble.config.js +2 -2
  10. package/Bubble.config.js.map +1 -1
  11. package/Bubble.js +4 -4
  12. package/Bubble.js.map +1 -1
  13. package/ChoroplethSvg.config.js +2 -2
  14. package/ChoroplethSvg.config.js.map +1 -1
  15. package/ChoroplethSvg.js +11 -11
  16. package/ChoroplethSvg.js.map +1 -1
  17. package/Column.config.js +2 -2
  18. package/Column.config.js.map +1 -1
  19. package/Column.js +4 -4
  20. package/Column.js.map +1 -1
  21. package/Ellipse.config.js +2 -2
  22. package/Ellipse.config.js.map +1 -1
  23. package/Ellipse.js +15 -15
  24. package/Ellipse.js.map +1 -1
  25. package/Events.config.js +1 -1
  26. package/Events.config.js.map +1 -1
  27. package/Events.js +37 -22
  28. package/Events.js.map +1 -1
  29. package/FEATUREFLAGS.md +5 -4
  30. package/FillerGauge.config.js +3 -3
  31. package/FillerGauge.config.js.map +1 -1
  32. package/FillerGauge.js +32 -22
  33. package/FillerGauge.js.map +1 -1
  34. package/Image.config.js +1 -1
  35. package/Image.config.js.map +1 -1
  36. package/Image.js +3 -3
  37. package/Image.js.map +1 -1
  38. package/Line.config.js +2 -2
  39. package/Line.config.js.map +1 -1
  40. package/Line.js +4 -4
  41. package/Line.js.map +1 -1
  42. package/LinkGraph.config.js +1 -1
  43. package/LinkGraph.config.js.map +1 -1
  44. package/LinkGraph.js +25 -25
  45. package/LinkGraph.js.map +1 -1
  46. package/Map.config.js +2 -2
  47. package/Map.config.js.map +1 -1
  48. package/Map.js +203 -142
  49. package/Map.js.map +1 -1
  50. package/Markdown.config.js +1 -1
  51. package/Markdown.config.js.map +1 -1
  52. package/Markdown.js +7 -7
  53. package/Markdown.js.map +1 -1
  54. package/MarkerGauge.config.js +2 -2
  55. package/MarkerGauge.config.js.map +1 -1
  56. package/MarkerGauge.js +32 -21
  57. package/MarkerGauge.js.map +1 -1
  58. package/ParallelCoordinates.config.js +2 -2
  59. package/ParallelCoordinates.config.js.map +1 -1
  60. package/ParallelCoordinates.js +5 -5
  61. package/ParallelCoordinates.js.map +1 -1
  62. package/Pie.config.js +1 -1
  63. package/Pie.config.js.map +1 -1
  64. package/Pie.js +11 -11
  65. package/Pie.js.map +1 -1
  66. package/Punchcard.config.js +2 -2
  67. package/Punchcard.config.js.map +1 -1
  68. package/Punchcard.js +6 -6
  69. package/Punchcard.js.map +1 -1
  70. package/Rectangle.config.js +2 -2
  71. package/Rectangle.config.js.map +1 -1
  72. package/Rectangle.js +14 -14
  73. package/Rectangle.js.map +1 -1
  74. package/Sankey.config.js +1 -1
  75. package/Sankey.config.js.map +1 -1
  76. package/Sankey.js +8 -8
  77. package/Sankey.js.map +1 -1
  78. package/Scatter.config.js +2 -2
  79. package/Scatter.config.js.map +1 -1
  80. package/Scatter.js +8 -6
  81. package/Scatter.js.map +1 -1
  82. package/SingleValue.config.js +3 -3
  83. package/SingleValue.config.js.map +1 -1
  84. package/SingleValue.js +8 -8
  85. package/SingleValue.js.map +1 -1
  86. package/SingleValueBasic.js +1 -1
  87. package/SingleValueBasic.js.map +1 -1
  88. package/SingleValueIcon.config.js +3 -3
  89. package/SingleValueIcon.config.js.map +1 -1
  90. package/SingleValueIcon.js +6 -6
  91. package/SingleValueIcon.js.map +1 -1
  92. package/SingleValueRadial.config.js +3 -3
  93. package/SingleValueRadial.config.js.map +1 -1
  94. package/SingleValueRadial.js +33 -27
  95. package/SingleValueRadial.js.map +1 -1
  96. package/Table.config.js +1 -1
  97. package/Table.config.js.map +1 -1
  98. package/Table.js +13 -13
  99. package/Table.js.map +1 -1
  100. package/common/GaugeValueMarker.js +20 -10
  101. package/common/GaugeValueMarker.js.map +1 -1
  102. package/common/utils/mapUtils.js +4 -3
  103. package/common/utils/mapUtils.js.map +1 -1
  104. package/common/utils/singleValueUtils.js +1 -1
  105. package/common/utils/singleValueUtils.js.map +1 -1
  106. package/common/withDashboardViz.js +2 -2
  107. package/common/withDashboardViz.js.map +1 -1
  108. package/package.json +15 -14
@@ -727,7 +727,7 @@ var config = {
727
727
  /**
728
728
  * viz name
729
729
  */
730
- name: 'Link Graph',
730
+ name: i18n_1._('Link graph'),
731
731
  category: VizCategory_1.VizCategory.FLOW,
732
732
  status: 'preview',
733
733
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/visualization-icons/placeholders\"","webpack:///external \"@splunk/visualization-icons\"","webpack:///external \"@splunk/visualization-color-palettes\"","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/colorConstants\"","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///./src/common/utils/configUtils.ts","webpack:///./src/LinkGraph/config.ts","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///./src/common/interfaces/VizCategory.ts","webpack:///external \"@splunk/themes/pick\""],"names":["VizBehavior","exports","lodash_1","require","schemaUtils_1","VizBehavior_1","dynamicOptionsDSLType","type","pattern","DYNAMIC_OPTIONS_DSL_PATTERN","enhanceOptionsSchemaWithDynamicOptions","optionsSchema","enhancedOptionsSchema","Object","keys","forEach","key","_a","title","description","readOnly","writeOnly","examples","defaultValue","default","properties","patternProperties","remainingSchemaEntry","__rest","annotations","assign","undefined","enhancedPatternProperties","opt","_defineProperty","anyOf","enhanceConfig","vizConfig","enhancedConfig","supports","indexOf","DYNAMIC_OPTIONS","editorConfig","map","config","open","uncollapseEditorConfig","editorPanelUncollapsedConfig","isDynamicOption","option","trim","startsWith","hasCompatibleContexts","vizContext","presetContext","presetContextKeys","every","contextKey","hasCompatibleOptions","vizOptions","presetOptions","presetOptionKeys","optionKey","getInitialPreset","presets","find","preset","get","length","generatePrecisionValues","numPrecisionValues","range","i","label","concat","repeat","value","insertLayout","layout","index","_len","arguments","layoutItems","Array","_key","_toConsumableArray","slice","visualization_icons_1","placeholders_1","i18n_1","pick_1","variables_1","colorConstants_1","visualization_color_palettes_1","configUtils_1","VizCategory_1","dataContract","requiredDataSources","name","optionalDataSources","initialRequestParams","primary","offset","count","size","initialWidth","initialHeight","defaultContext","nodeTextColorMaxContrast","colors","nodeHighlightTextColorMaxContrast","backgroundColor","COLOR_OR_TOKEN_PATTERN_WITH_RGBA","fieldOrder","items","linkColor","linkWidth","nodeColor","nodeTextColor","nodeHeight","nodeHighlightColor","VIZ_CATEGORICAL","nodeTextHighlightColor","nodeSpacingX","nodeSpacingY","nodeWidth","resultLimit","showNodeCounts","showValueCounts","themes","defaultBackgroundColor","props","enterprise","dark","black","light","prisma","backgroundColorSidebar","defaultNodeColor","backgroundColorDialog","gray96","inverseDefaultNodeColor","contentColorInverted","white","textColor","contentColorDefault","inverseTextColor","EDITOR_LABEL_WIDTH","backgroundColorPaletteSet","Set","COLOR_EDITOR_PALETTE","t","_","editor","editorProps","min","labelWidth","palette","labelPosition","category","VizCategory","FLOW","status","icon","LinkGraph","placeholderIcon","events","EVENTS","PLACEHOLDER"],"mappings":"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","file":"LinkGraph.config.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 55);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/visualization-icons/placeholders\");","module.exports = require(\"@splunk/visualization-icons\");","module.exports = require(\"@splunk/visualization-color-palettes\");","export enum VizBehavior {\n /**\n * Dynamic Options Behavior.\n * This allows visualization options to be powered by data\n *\n * **Example**\n *\n * sparklineValues: \">primary|seriesByIndex(0)\"\n * would configure sparklineValues with an array of data points\n * coming from the first series in the primary datasource\n *\n */\n DYNAMIC_OPTIONS = 'dynamic-options',\n EVENTS = 'events',\n /**\n * Placeholder behavior: visualization will display a placeholder rather than fail if any of the `requiredProps` is\n * missing.\n * @type {string}\n */\n PLACEHOLDER = 'placeholder',\n PAGE_AND_SORT = 'page-and-sort',\n TRELLIS = 'trellis',\n}\n","module.exports = require(\"@splunk/visualizations-shared/colorConstants\");","module.exports = require(\"@splunk/visualizations-shared/schemaUtils\");","import { get, range } from 'lodash';\nimport { DYNAMIC_OPTIONS_DSL_PATTERN } from '@splunk/visualizations-shared/schemaUtils';\nimport type { JSONSchema7Definition } from 'json-schema';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\nimport { VizBehavior } from '../interfaces/VizBehavior';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { OptionsSchema } from '../interfaces/OptionsSchema';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\n}\n\nconst dynamicOptionsDSLType = {\n type: 'string',\n pattern: DYNAMIC_OPTIONS_DSL_PATTERN,\n} as const;\n\n/**\n * Helper function to extend an options schema with dynamic options DSL\n * @param optionsSchema a visualization's options schema\n * @returns an updated options schema that additionally allows strings starting with > for each option\n */\nfunction enhanceOptionsSchemaWithDynamicOptions(\n optionsSchema: OptionsSchema | JSONSchema7Definition\n): OptionsSchema {\n const enhancedOptionsSchema: OptionsSchema = {};\n Object.keys(optionsSchema).forEach((key): void => {\n const {\n // The next a few are schema annotations, we should leave them as is.\n // Note: in reality we don't use `readOnly`, `writeOnly` or `examples`, but they are listed here for completeness.\n // Ref: https://datatracker.ietf.org/doc/html/draft-handrews-json-schema-validation-01\n title,\n description,\n readOnly,\n writeOnly,\n examples,\n default: defaultValue,\n // The next a few need special care\n type,\n properties,\n patternProperties,\n // The rest should be handled together\n ...remainingSchemaEntry\n } = optionsSchema[key];\n\n const annotations = {\n ...(title !== undefined && { title }),\n ...(description !== undefined && { description }),\n ...(readOnly !== undefined && { readOnly }),\n ...(writeOnly !== undefined && { writeOnly }),\n ...(examples !== undefined && { examples }),\n ...(defaultValue !== undefined && { default: defaultValue }),\n };\n\n if (type === 'object') {\n enhancedOptionsSchema[key] = {\n ...remainingSchemaEntry,\n ...annotations,\n type,\n ...(properties && { properties: enhanceOptionsSchemaWithDynamicOptions(properties) }),\n };\n if (patternProperties) {\n let enhancedPatternProperties = {};\n Object.keys(patternProperties).forEach((opt): void => {\n enhancedPatternProperties = {\n ...enhancedPatternProperties,\n ...enhanceOptionsSchemaWithDynamicOptions({ [opt]: patternProperties[opt] }),\n };\n });\n enhancedOptionsSchema[key].patternProperties = enhancedPatternProperties;\n }\n } else {\n enhancedOptionsSchema[key] = {\n ...annotations,\n anyOf: [\n // we can't assume `type` is always there because there are `enum` and `const`.\n { ...(type !== undefined && { type }), ...remainingSchemaEntry },\n dynamicOptionsDSLType,\n ],\n };\n }\n });\n return enhancedOptionsSchema;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * this function also collapse all editor panels\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n * and containing `open: false` for all editor panels in editorConfig\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = { ...vizConfig };\n if (vizConfig.supports.indexOf(VizBehavior.DYNAMIC_OPTIONS) !== -1) {\n enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);\n }\n enhancedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: config.open || false };\n }\n );\n return enhancedConfig;\n}\n\n/**\n * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig\n * Created for editor unit tests\n * @param vizConfig a Visualization Config\n * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig\n */\nfunction uncollapseEditorConfig(vizConfig: VizConfig): VizConfig {\n const editorPanelUncollapsedConfig: VizConfig = { ...vizConfig };\n editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: true };\n }\n );\n return editorPanelUncollapsedConfig;\n}\n\nfunction isDynamicOption(option?: string): boolean {\n return (option && typeof option === 'string' && option.trim().startsWith('>')) || false;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport {\n enhanceConfig,\n enhanceOptionsSchemaWithDynamicOptions,\n getInitialPreset,\n generatePrecisionValues,\n uncollapseEditorConfig,\n isDynamicOption,\n};\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n","import { map, get } from 'lodash';\nimport { LinkGraph as LinkGraphIcon } from '@splunk/visualization-icons';\nimport { LinkGraph as LinkGraphPlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { COLOR_OR_TOKEN_PATTERN_WITH_RGBA } from '@splunk/visualizations-shared/schemaUtils';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { COLOR_EDITOR_PALETTE } from '@splunk/visualizations-shared/colorConstants';\nimport { VIZ_CATEGORICAL } from '@splunk/visualization-color-palettes';\nimport { enhanceConfig } from '../common/utils/configUtils';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { OptionsSchema } from '../common/interfaces/OptionsSchema';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [\n // {\n // name: 'metadata',\n // description: 'Used buy the ES team along side the feature flag `LinkGraph.showNodeMetaData`',\n // },\n ],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 900,\n initialHeight: 400,\n};\n\nconst defaultContext: DefaultContext = {\n nodeTextColorMaxContrast: {\n colors: ['> themes.textColor', '> themes.inverseTextColor'],\n default: '> themes.textColor',\n },\n nodeHighlightTextColorMaxContrast: {\n colors: ['> themes.defaultNodeColor', '> themes.inverseDefaultNodeColor'],\n default: '> themes.textColor',\n },\n};\n\nconst optionsSchema: OptionsSchema = {\n backgroundColor: {\n default: '> themes.defaultBackgroundColor',\n description:\n 'Specify the color for the background. You may use a dataSource to apply the color. The default for enterprise light is \"#ffffff\". The default for enterprise dark is \"#000000\". The default for prisma dark is \"#0b0c0e\".',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n fieldOrder: {\n default: '> primary | getField()',\n description:\n 'Specify the order of fields to be displayed in the link graph from left to right when loaded. Unspecified fields will be excluded from the graph.',\n type: 'array',\n items: {\n type: 'string',\n },\n },\n linkColor: {\n default: '#6d6f76',\n description:\n 'Specify the color used for highlighted links. Unhighlighted links will be displayed at 20% opacity.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n linkWidth: {\n default: 1,\n description: 'Specify, in pixels, the stroke width of each link.',\n type: 'number',\n },\n nodeColor: {\n default: '> themes.defaultNodeColor',\n description: 'Specify the color used for unhighlighted nodes.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n nodeTextColor: {\n description: 'Specify the color used for unhighlighted nodes text.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n default: '> nodeColor | maxContrast(nodeTextColorMaxContrast)',\n },\n nodeHeight: {\n default: 21,\n description: 'Specify, in pixels, the height of each node.',\n type: 'number',\n },\n nodeHighlightColor: {\n default: VIZ_CATEGORICAL[0],\n description: 'Specify the color used for highlighted nodes.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n nodeTextHighlightColor: {\n description: 'Specify the color used for highlighted nodes text.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n default: '> nodeHighlightColor | maxContrast(nodeHighlightTextColorMaxContrast)',\n },\n nodeSpacingX: {\n default: 32,\n description: 'Specify, in pixels, the horizontal spacing between each node.',\n type: 'number',\n },\n nodeSpacingY: {\n default: 18,\n description: 'Specify, in pixels, the vertical spacing between each node.',\n type: 'number',\n },\n nodeWidth: {\n default: 180,\n description: 'Specify, in pixels, the width of each node.',\n type: 'number',\n },\n resultLimit: {\n default: 50,\n description: 'Specify the number of nodes rendered in each column.',\n type: 'number',\n },\n showNodeCounts: {\n default: true,\n description:\n 'Specify whether a count is shown for the number of nodes displayed in each column. The number of total nodes is also shown if there are hidden nodes.',\n type: 'boolean',\n },\n showValueCounts: {\n default: true,\n description:\n 'Specify whether a count is shown for the frequency of occurrence for each distinct node value.',\n type: 'boolean',\n },\n};\n\nconst themes: ThemedDefaults = {\n defaultBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n defaultNodeColor: props =>\n pick({\n enterprise: {\n dark: variables.backgroundColorDialog(props),\n light: variables.gray96(props),\n },\n prisma: variables.backgroundColorDialog(props),\n })(props),\n inverseDefaultNodeColor: props =>\n pick({\n enterprise: {\n dark: variables.contentColorInverted(props), // equal to textColor in enterprise\n light: variables.white(props), // equal to textColor in enterpriseDark\n },\n prisma: variables.contentColorInverted(props),\n })(props),\n textColor: props =>\n pick({\n enterprise: variables.textColor(props),\n prisma: variables.contentColorDefault(props),\n })(props),\n inverseTextColor: props =>\n pick({\n enterprise: {\n dark: variables.contentColorInverted(props), // equal to textColor in enterprise\n light: variables.white(props), // equal to textColor in enterpriseDark\n },\n prisma: variables.contentColorInverted(props),\n })(props),\n};\n\nconst EDITOR_LABEL_WIDTH = 140;\nconst backgroundColorPaletteSet = new Set([\n ...COLOR_EDITOR_PALETTE,\n ...map(themes, (t): string => get(t, 'defaultBackgroundColor')),\n]);\n\nconst editorConfig: EditorConfig[] = [\n // {\n // label: _('Data'),\n // layout: [\n // [\n // {\n // label: _('Field Ordering'),\n // option: 'fieldOrder',\n // editor: 'editor.arrayOfStrings',\n // editorProps: {\n // themes,\n // labelPosition: 'top',\n // },\n // },\n // ],\n // ],\n // },\n {\n label: _('Data configurations'),\n layout: [\n [\n {\n label: _('Result limit'),\n option: 'resultLimit',\n editor: 'editor.number',\n editorProps: {\n themes,\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n ],\n },\n {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Show node counts'),\n option: 'showNodeCounts',\n editor: 'editor.checkbox',\n editorProps: {\n themes,\n labelWidth: 130,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Show value counts'),\n option: 'showValueCounts',\n editor: 'editor.checkbox',\n editorProps: {\n themes,\n labelWidth: 130,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n ],\n },\n {\n label: _('Color and style'),\n layout: [\n [\n {\n label: _('Nodes'),\n option: 'nodeColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Selected nodes'),\n option: 'nodeHighlightColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Links'),\n option: 'linkColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Background'),\n option: 'backgroundColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Node width'),\n option: 'nodeWidth',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n {\n label: _('Node height'),\n option: 'nodeHeight',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Vertical spacing'),\n option: 'nodeSpacingY',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n {\n label: _('Horizontal spacing'),\n option: 'nodeSpacingX',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Link width'),\n option: 'linkWidth',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n ],\n },\n];\n\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.linkgraph',\n /**\n * viz name\n */\n name: 'Link Graph',\n category: VizCategory.FLOW,\n status: 'preview',\n /**\n * viz icon\n */\n icon: LinkGraphIcon,\n placeholderIcon: LinkGraphPlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'node.click': {\n description: 'triggered when user clicks a node',\n },\n 'node.mouseover': {\n description: 'triggered when user hovers over a node',\n },\n },\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.EVENTS, VizBehavior.PLACEHOLDER],\n themes,\n};\n\nexport default enhanceConfig(config);\n","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","export enum VizCategory {\n SINGLE_VALUE = 'Single Value',\n TRENDS = 'Trends',\n COMPARISONS = 'Comparisons',\n TABLE = 'Table',\n GAUGE = 'Gauge',\n DISTRIBUTIONS = 'Distributions',\n CHOROPLETH = 'Choropleth Maps',\n SHAPES = 'Shapes',\n MISC = 'misc',\n FLOW = 'Flow',\n CORRELATION = 'Correlation',\n SPATIAL = 'Spatial',\n}\n","module.exports = require(\"@splunk/themes/pick\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/visualization-icons/placeholders\"","webpack:///external \"@splunk/visualization-icons\"","webpack:///external \"@splunk/visualization-color-palettes\"","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/colorConstants\"","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///./src/common/utils/configUtils.ts","webpack:///./src/LinkGraph/config.ts","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///./src/common/interfaces/VizCategory.ts","webpack:///external \"@splunk/themes/pick\""],"names":["VizBehavior","exports","lodash_1","require","schemaUtils_1","VizBehavior_1","dynamicOptionsDSLType","type","pattern","DYNAMIC_OPTIONS_DSL_PATTERN","enhanceOptionsSchemaWithDynamicOptions","optionsSchema","enhancedOptionsSchema","Object","keys","forEach","key","_a","title","description","readOnly","writeOnly","examples","defaultValue","default","properties","patternProperties","remainingSchemaEntry","__rest","annotations","assign","undefined","enhancedPatternProperties","opt","_defineProperty","anyOf","enhanceConfig","vizConfig","enhancedConfig","supports","indexOf","DYNAMIC_OPTIONS","editorConfig","map","config","open","uncollapseEditorConfig","editorPanelUncollapsedConfig","isDynamicOption","option","trim","startsWith","hasCompatibleContexts","vizContext","presetContext","presetContextKeys","every","contextKey","hasCompatibleOptions","vizOptions","presetOptions","presetOptionKeys","optionKey","getInitialPreset","presets","find","preset","get","length","generatePrecisionValues","numPrecisionValues","range","i","label","concat","repeat","value","insertLayout","layout","index","_len","arguments","layoutItems","Array","_key","_toConsumableArray","slice","visualization_icons_1","placeholders_1","i18n_1","pick_1","variables_1","colorConstants_1","visualization_color_palettes_1","configUtils_1","VizCategory_1","dataContract","requiredDataSources","name","optionalDataSources","initialRequestParams","primary","offset","count","size","initialWidth","initialHeight","defaultContext","nodeTextColorMaxContrast","colors","nodeHighlightTextColorMaxContrast","backgroundColor","COLOR_OR_TOKEN_PATTERN_WITH_RGBA","fieldOrder","items","linkColor","linkWidth","nodeColor","nodeTextColor","nodeHeight","nodeHighlightColor","VIZ_CATEGORICAL","nodeTextHighlightColor","nodeSpacingX","nodeSpacingY","nodeWidth","resultLimit","showNodeCounts","showValueCounts","themes","defaultBackgroundColor","props","enterprise","dark","black","light","prisma","backgroundColorSidebar","defaultNodeColor","backgroundColorDialog","gray96","inverseDefaultNodeColor","contentColorInverted","white","textColor","contentColorDefault","inverseTextColor","EDITOR_LABEL_WIDTH","backgroundColorPaletteSet","Set","COLOR_EDITOR_PALETTE","t","_","editor","editorProps","min","labelWidth","palette","labelPosition","category","VizCategory","FLOW","status","icon","LinkGraph","placeholderIcon","events","EVENTS","PLACEHOLDER"],"mappings":"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","file":"LinkGraph.config.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 55);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/visualization-icons/placeholders\");","module.exports = require(\"@splunk/visualization-icons\");","module.exports = require(\"@splunk/visualization-color-palettes\");","export enum VizBehavior {\n /**\n * Dynamic Options Behavior.\n * This allows visualization options to be powered by data\n *\n * **Example**\n *\n * sparklineValues: \">primary|seriesByIndex(0)\"\n * would configure sparklineValues with an array of data points\n * coming from the first series in the primary datasource\n *\n */\n DYNAMIC_OPTIONS = 'dynamic-options',\n EVENTS = 'events',\n /**\n * Placeholder behavior: visualization will display a placeholder rather than fail if any of the `requiredProps` is\n * missing.\n * @type {string}\n */\n PLACEHOLDER = 'placeholder',\n PAGE_AND_SORT = 'page-and-sort',\n TRELLIS = 'trellis',\n}\n","module.exports = require(\"@splunk/visualizations-shared/colorConstants\");","module.exports = require(\"@splunk/visualizations-shared/schemaUtils\");","import { get, range } from 'lodash';\nimport { DYNAMIC_OPTIONS_DSL_PATTERN } from '@splunk/visualizations-shared/schemaUtils';\nimport type { JSONSchema7Definition } from 'json-schema';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\nimport { VizBehavior } from '../interfaces/VizBehavior';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { OptionsSchema } from '../interfaces/OptionsSchema';\nimport { EditorLayoutConfig, EditorConfig } from '../interfaces/Editor';\n\nexport interface PresetEntry {\n name: string;\n value: any;\n label: string;\n}\n\nconst dynamicOptionsDSLType = {\n type: 'string',\n pattern: DYNAMIC_OPTIONS_DSL_PATTERN,\n} as const;\n\n/**\n * Helper function to extend an options schema with dynamic options DSL\n * @param optionsSchema a visualization's options schema\n * @returns an updated options schema that additionally allows strings starting with > for each option\n */\nfunction enhanceOptionsSchemaWithDynamicOptions(\n optionsSchema: OptionsSchema | JSONSchema7Definition\n): OptionsSchema {\n const enhancedOptionsSchema: OptionsSchema = {};\n Object.keys(optionsSchema).forEach((key): void => {\n const {\n // The next a few are schema annotations, we should leave them as is.\n // Note: in reality we don't use `readOnly`, `writeOnly` or `examples`, but they are listed here for completeness.\n // Ref: https://datatracker.ietf.org/doc/html/draft-handrews-json-schema-validation-01\n title,\n description,\n readOnly,\n writeOnly,\n examples,\n default: defaultValue,\n // The next a few need special care\n type,\n properties,\n patternProperties,\n // The rest should be handled together\n ...remainingSchemaEntry\n } = optionsSchema[key];\n\n const annotations = {\n ...(title !== undefined && { title }),\n ...(description !== undefined && { description }),\n ...(readOnly !== undefined && { readOnly }),\n ...(writeOnly !== undefined && { writeOnly }),\n ...(examples !== undefined && { examples }),\n ...(defaultValue !== undefined && { default: defaultValue }),\n };\n\n if (type === 'object') {\n enhancedOptionsSchema[key] = {\n ...remainingSchemaEntry,\n ...annotations,\n type,\n ...(properties && { properties: enhanceOptionsSchemaWithDynamicOptions(properties) }),\n };\n if (patternProperties) {\n let enhancedPatternProperties = {};\n Object.keys(patternProperties).forEach((opt): void => {\n enhancedPatternProperties = {\n ...enhancedPatternProperties,\n ...enhanceOptionsSchemaWithDynamicOptions({ [opt]: patternProperties[opt] }),\n };\n });\n enhancedOptionsSchema[key].patternProperties = enhancedPatternProperties;\n }\n } else {\n enhancedOptionsSchema[key] = {\n ...annotations,\n anyOf: [\n // we can't assume `type` is always there because there are `enum` and `const`.\n { ...(type !== undefined && { type }), ...remainingSchemaEntry },\n dynamicOptionsDSLType,\n ],\n };\n }\n });\n return enhancedOptionsSchema;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * this function also collapse all editor panels\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n * and containing `open: false` for all editor panels in editorConfig\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = { ...vizConfig };\n if (vizConfig.supports.indexOf(VizBehavior.DYNAMIC_OPTIONS) !== -1) {\n enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);\n }\n enhancedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: config.open || false };\n }\n );\n return enhancedConfig;\n}\n\n/**\n * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig\n * Created for editor unit tests\n * @param vizConfig a Visualization Config\n * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig\n */\nfunction uncollapseEditorConfig(vizConfig: VizConfig): VizConfig {\n const editorPanelUncollapsedConfig: VizConfig = { ...vizConfig };\n editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(\n (config: EditorConfig): EditorConfig => {\n return { ...config, open: true };\n }\n );\n return editorPanelUncollapsedConfig;\n}\n\nfunction isDynamicOption(option?: string): boolean {\n return (option && typeof option === 'string' && option.trim().startsWith('>')) || false;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport {\n enhanceConfig,\n enhanceOptionsSchemaWithDynamicOptions,\n getInitialPreset,\n generatePrecisionValues,\n uncollapseEditorConfig,\n isDynamicOption,\n};\n\n/**\n * insert layout in layout array, return a new layout array instead of updating the original\n *\n * @param {EditorLayoutConfig[][]} layout - editor layout\n * @param {Number} index - the index to insert layout item(s)\n * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert\n * @returns {EditorLayoutConfig[][]} new editor layout with insertion\n */\nexport const insertLayout = (\n layout: EditorLayoutConfig[][],\n index: number,\n ...layoutItems: EditorLayoutConfig[][]\n): EditorLayoutConfig[][] => [\n // copy part of the array before the specified index\n ...layout.slice(0, index),\n // inserted layout item\n ...layoutItems,\n // copy part of the array after the specified index\n ...layout.slice(index),\n];\n","import { map, get } from 'lodash';\nimport { LinkGraph as LinkGraphIcon } from '@splunk/visualization-icons';\nimport { LinkGraph as LinkGraphPlaceholderIcon } from '@splunk/visualization-icons/placeholders';\nimport { COLOR_OR_TOKEN_PATTERN_WITH_RGBA } from '@splunk/visualizations-shared/schemaUtils';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { COLOR_EDITOR_PALETTE } from '@splunk/visualizations-shared/colorConstants';\nimport { VIZ_CATEGORICAL } from '@splunk/visualization-color-palettes';\nimport { enhanceConfig } from '../common/utils/configUtils';\nimport { VizConfig } from '../common/interfaces/VizConfig';\nimport { VizCategory } from '../common/interfaces/VizCategory';\nimport { DataContract } from '../common/interfaces/DataContract';\nimport { VizSize } from '../common/interfaces/VizSize';\nimport { DefaultContext } from '../common/interfaces/DefaultContext';\nimport { OptionsSchema } from '../common/interfaces/OptionsSchema';\nimport { EditorConfig } from '../common/interfaces/Editor';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport { VizBehavior } from '../common/interfaces/VizBehavior';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [\n // {\n // name: 'metadata',\n // description: 'Used buy the ES team along side the feature flag `LinkGraph.showNodeMetaData`',\n // },\n ],\n initialRequestParams: {\n primary: { offset: 0, count: 10000 },\n },\n};\n\nconst size: VizSize = {\n initialWidth: 900,\n initialHeight: 400,\n};\n\nconst defaultContext: DefaultContext = {\n nodeTextColorMaxContrast: {\n colors: ['> themes.textColor', '> themes.inverseTextColor'],\n default: '> themes.textColor',\n },\n nodeHighlightTextColorMaxContrast: {\n colors: ['> themes.defaultNodeColor', '> themes.inverseDefaultNodeColor'],\n default: '> themes.textColor',\n },\n};\n\nconst optionsSchema: OptionsSchema = {\n backgroundColor: {\n default: '> themes.defaultBackgroundColor',\n description:\n 'Specify the color for the background. You may use a dataSource to apply the color. The default for enterprise light is \"#ffffff\". The default for enterprise dark is \"#000000\". The default for prisma dark is \"#0b0c0e\".',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n fieldOrder: {\n default: '> primary | getField()',\n description:\n 'Specify the order of fields to be displayed in the link graph from left to right when loaded. Unspecified fields will be excluded from the graph.',\n type: 'array',\n items: {\n type: 'string',\n },\n },\n linkColor: {\n default: '#6d6f76',\n description:\n 'Specify the color used for highlighted links. Unhighlighted links will be displayed at 20% opacity.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n linkWidth: {\n default: 1,\n description: 'Specify, in pixels, the stroke width of each link.',\n type: 'number',\n },\n nodeColor: {\n default: '> themes.defaultNodeColor',\n description: 'Specify the color used for unhighlighted nodes.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n nodeTextColor: {\n description: 'Specify the color used for unhighlighted nodes text.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n default: '> nodeColor | maxContrast(nodeTextColorMaxContrast)',\n },\n nodeHeight: {\n default: 21,\n description: 'Specify, in pixels, the height of each node.',\n type: 'number',\n },\n nodeHighlightColor: {\n default: VIZ_CATEGORICAL[0],\n description: 'Specify the color used for highlighted nodes.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n },\n nodeTextHighlightColor: {\n description: 'Specify the color used for highlighted nodes text.',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n type: 'string',\n default: '> nodeHighlightColor | maxContrast(nodeHighlightTextColorMaxContrast)',\n },\n nodeSpacingX: {\n default: 32,\n description: 'Specify, in pixels, the horizontal spacing between each node.',\n type: 'number',\n },\n nodeSpacingY: {\n default: 18,\n description: 'Specify, in pixels, the vertical spacing between each node.',\n type: 'number',\n },\n nodeWidth: {\n default: 180,\n description: 'Specify, in pixels, the width of each node.',\n type: 'number',\n },\n resultLimit: {\n default: 50,\n description: 'Specify the number of nodes rendered in each column.',\n type: 'number',\n },\n showNodeCounts: {\n default: true,\n description:\n 'Specify whether a count is shown for the number of nodes displayed in each column. The number of total nodes is also shown if there are hidden nodes.',\n type: 'boolean',\n },\n showValueCounts: {\n default: true,\n description:\n 'Specify whether a count is shown for the frequency of occurrence for each distinct node value.',\n type: 'boolean',\n },\n};\n\nconst themes: ThemedDefaults = {\n defaultBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(props),\n })(props),\n defaultNodeColor: props =>\n pick({\n enterprise: {\n dark: variables.backgroundColorDialog(props),\n light: variables.gray96(props),\n },\n prisma: variables.backgroundColorDialog(props),\n })(props),\n inverseDefaultNodeColor: props =>\n pick({\n enterprise: {\n dark: variables.contentColorInverted(props), // equal to textColor in enterprise\n light: variables.white(props), // equal to textColor in enterpriseDark\n },\n prisma: variables.contentColorInverted(props),\n })(props),\n textColor: props =>\n pick({\n enterprise: variables.textColor(props),\n prisma: variables.contentColorDefault(props),\n })(props),\n inverseTextColor: props =>\n pick({\n enterprise: {\n dark: variables.contentColorInverted(props), // equal to textColor in enterprise\n light: variables.white(props), // equal to textColor in enterpriseDark\n },\n prisma: variables.contentColorInverted(props),\n })(props),\n};\n\nconst EDITOR_LABEL_WIDTH = 140;\nconst backgroundColorPaletteSet = new Set([\n ...COLOR_EDITOR_PALETTE,\n ...map(themes, (t): string => get(t, 'defaultBackgroundColor')),\n]);\n\nconst editorConfig: EditorConfig[] = [\n // {\n // label: _('Data'),\n // layout: [\n // [\n // {\n // label: _('Field Ordering'),\n // option: 'fieldOrder',\n // editor: 'editor.arrayOfStrings',\n // editorProps: {\n // themes,\n // labelPosition: 'top',\n // },\n // },\n // ],\n // ],\n // },\n {\n label: _('Data configurations'),\n layout: [\n [\n {\n label: _('Result limit'),\n option: 'resultLimit',\n editor: 'editor.number',\n editorProps: {\n themes,\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n ],\n },\n {\n label: _('Data display'),\n layout: [\n [\n {\n label: _('Show node counts'),\n option: 'showNodeCounts',\n editor: 'editor.checkbox',\n editorProps: {\n themes,\n labelWidth: 130,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Show value counts'),\n option: 'showValueCounts',\n editor: 'editor.checkbox',\n editorProps: {\n themes,\n labelWidth: 130,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n ],\n },\n {\n label: _('Color and style'),\n layout: [\n [\n {\n label: _('Nodes'),\n option: 'nodeColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Selected nodes'),\n option: 'nodeHighlightColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Links'),\n option: 'linkColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Background'),\n option: 'backgroundColor',\n editor: 'editor.color',\n editorProps: {\n themes,\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n [\n {\n label: _('Node width'),\n option: 'nodeWidth',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n {\n label: _('Node height'),\n option: 'nodeHeight',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Vertical spacing'),\n option: 'nodeSpacingY',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n {\n label: _('Horizontal spacing'),\n option: 'nodeSpacingX',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Link width'),\n option: 'linkWidth',\n editor: 'editor.number',\n editorProps: {\n themes,\n labelPosition: 'top',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n ],\n },\n];\n\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.linkgraph',\n /**\n * viz name\n */\n name: _('Link graph'),\n category: VizCategory.FLOW,\n status: 'preview',\n /**\n * viz icon\n */\n icon: LinkGraphIcon,\n placeholderIcon: LinkGraphPlaceholderIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'node.click': {\n description: 'triggered when user clicks a node',\n },\n 'node.mouseover': {\n description: 'triggered when user hovers over a node',\n },\n },\n supports: [VizBehavior.DYNAMIC_OPTIONS, VizBehavior.EVENTS, VizBehavior.PLACEHOLDER],\n themes,\n};\n\nexport default enhanceConfig(config);\n","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","export enum VizCategory {\n SINGLE_VALUE = 'Single Value',\n TRENDS = 'Trends',\n COMPARISONS = 'Comparisons',\n TABLE = 'Table',\n GAUGE = 'Gauge',\n DISTRIBUTIONS = 'Distributions',\n CHOROPLETH = 'Choropleth Maps',\n SHAPES = 'Shapes',\n MISC = 'misc',\n FLOW = 'Flow',\n CORRELATION = 'Correlation',\n SPATIAL = 'Spatial',\n}\n","module.exports = require(\"@splunk/themes/pick\");"],"sourceRoot":""}
package/LinkGraph.js CHANGED
@@ -265,7 +265,7 @@ var withFixedSizeContainer = function withFixedSizeContainer(Viz) {
265
265
  }
266
266
  return React.createElement(FixSizeItem, {
267
267
  "data-test": "fix-size-item",
268
- "data-splunk-visualization-version": "25.10.0 - 8d01deb08",
268
+ "data-splunk-visualization-version": "25.12.0 - d7a0fecdf",
269
269
  width: width,
270
270
  height: height,
271
271
  backgroundColor: backgroundColor
@@ -1409,7 +1409,7 @@ var Cover = styled_components_1.default.div.withConfig({
1409
1409
  componentId: "sc-1gsbnxb-0"
1410
1410
  })(["position:absolute;left:0;right:0;top:0;bottom:0;"]);
1411
1411
  var Blocker = styled_components_1.default.div.attrs({
1412
- 'data-splunk-visualization-version': "25.10.0 - 8d01deb08"
1412
+ 'data-splunk-visualization-version': "25.12.0 - d7a0fecdf"
1413
1413
  }).withConfig({
1414
1414
  displayName: "withEditModeCover__Blocker",
1415
1415
  componentId: "sc-1gsbnxb-1"
@@ -1579,51 +1579,50 @@ module.exports = require("@splunk/react-ui/Paragraph");
1579
1579
  /* 106 */,
1580
1580
  /* 107 */,
1581
1581
  /* 108 */,
1582
- /* 109 */,
1583
- /* 110 */
1582
+ /* 109 */
1584
1583
  /***/ (function(module, exports) {
1585
1584
 
1586
1585
  module.exports = require("@babel/runtime/helpers/inherits");
1587
1586
 
1588
1587
  /***/ }),
1589
- /* 111 */
1588
+ /* 110 */
1590
1589
  /***/ (function(module, exports) {
1591
1590
 
1592
1591
  module.exports = require("@babel/runtime/helpers/possibleConstructorReturn");
1593
1592
 
1594
1593
  /***/ }),
1595
- /* 112 */
1594
+ /* 111 */
1596
1595
  /***/ (function(module, exports) {
1597
1596
 
1598
1597
  module.exports = require("@babel/runtime/helpers/getPrototypeOf");
1599
1598
 
1600
1599
  /***/ }),
1600
+ /* 112 */,
1601
1601
  /* 113 */,
1602
1602
  /* 114 */,
1603
1603
  /* 115 */,
1604
1604
  /* 116 */,
1605
- /* 117 */,
1606
- /* 118 */
1605
+ /* 117 */
1607
1606
  /***/ (function(module, exports) {
1608
1607
 
1609
1608
  module.exports = require("@splunk/react-ui/Menu");
1610
1609
 
1611
1610
  /***/ }),
1611
+ /* 118 */,
1612
1612
  /* 119 */,
1613
1613
  /* 120 */,
1614
- /* 121 */,
1615
- /* 122 */
1614
+ /* 121 */
1616
1615
  /***/ (function(module, exports) {
1617
1616
 
1618
1617
  module.exports = require("@splunk/react-ui/Button");
1619
1618
 
1620
1619
  /***/ }),
1620
+ /* 122 */,
1621
1621
  /* 123 */,
1622
1622
  /* 124 */,
1623
1623
  /* 125 */,
1624
1624
  /* 126 */,
1625
- /* 127 */,
1626
- /* 128 */
1625
+ /* 127 */
1627
1626
  /***/ (function(module, exports, __webpack_require__) {
1628
1627
 
1629
1628
  "use strict";
@@ -1908,12 +1907,13 @@ var getSecondaryColumnByField = function getSecondaryColumnByField(field, metada
1908
1907
  exports.getSecondaryColumnByField = getSecondaryColumnByField;
1909
1908
 
1910
1909
  /***/ }),
1911
- /* 129 */
1910
+ /* 128 */
1912
1911
  /***/ (function(module, exports) {
1913
1912
 
1914
1913
  module.exports = require("@splunk/react-icons/enterprise/Clear");
1915
1914
 
1916
1915
  /***/ }),
1916
+ /* 129 */,
1917
1917
  /* 130 */,
1918
1918
  /* 131 */,
1919
1919
  /* 132 */,
@@ -2204,7 +2204,7 @@ var T = __webpack_require__(1);
2204
2204
  var styled_components_1 = __webpack_require__(4);
2205
2205
  var lodash_1 = __webpack_require__(3);
2206
2206
  var FixedSizeContainer_1 = __webpack_require__(13);
2207
- var PureLinkGraphUtils_1 = __webpack_require__(128);
2207
+ var PureLinkGraphUtils_1 = __webpack_require__(127);
2208
2208
  var Graph_1 = __webpack_require__(222);
2209
2209
  var Field_1 = __webpack_require__(399);
2210
2210
  var FieldStyles_1 = __webpack_require__(402);
@@ -2376,9 +2376,9 @@ exports.default = FixedSizeContainer_1.default(exports.PureLinkGraph);
2376
2376
  var _toConsumableArray = __webpack_require__(7);
2377
2377
  var _classCallCheck = __webpack_require__(11);
2378
2378
  var _createClass = __webpack_require__(22);
2379
- var _inherits = __webpack_require__(110);
2380
- var _possibleConstructorReturn = __webpack_require__(111);
2381
- var _getPrototypeOf = __webpack_require__(112);
2379
+ var _inherits = __webpack_require__(109);
2380
+ var _possibleConstructorReturn = __webpack_require__(110);
2381
+ var _getPrototypeOf = __webpack_require__(111);
2382
2382
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
2383
2383
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
2384
2384
  Object.defineProperty(exports, "__esModule", {
@@ -2389,7 +2389,7 @@ var lodash_1 = __webpack_require__(3);
2389
2389
  var Edges_1 = __webpack_require__(223);
2390
2390
  var Nodes_1 = __webpack_require__(224);
2391
2391
  var GraphStyles_1 = __webpack_require__(153);
2392
- var PureLinkGraphUtils_1 = __webpack_require__(128);
2392
+ var PureLinkGraphUtils_1 = __webpack_require__(127);
2393
2393
  var Graph = /*#__PURE__*/function (_React$Component) {
2394
2394
  _inherits(Graph, _React$Component);
2395
2395
  var _super = _createSuper(Graph);
@@ -2806,7 +2806,7 @@ Object.defineProperty(exports, "__esModule", {
2806
2806
  exports.NodeES = exports.Node = void 0;
2807
2807
  var React = __webpack_require__(0);
2808
2808
  var Paragraph_1 = __webpack_require__(104);
2809
- var PureLinkGraphUtils_1 = __webpack_require__(128);
2809
+ var PureLinkGraphUtils_1 = __webpack_require__(127);
2810
2810
  var Node = function Node(props) {
2811
2811
  var data = props.data,
2812
2812
  showValueCounts = props.showValueCounts;
@@ -5436,7 +5436,7 @@ function Cancel(props) {
5436
5436
  /***/ 7:
5437
5437
  /***/ (function(module, exports) {
5438
5438
 
5439
- module.exports = __webpack_require__(129);
5439
+ module.exports = __webpack_require__(128);
5440
5440
 
5441
5441
  /***/ })
5442
5442
 
@@ -8925,7 +8925,7 @@ function Close(props) {
8925
8925
  /***/ 7:
8926
8926
  /***/ (function(module, exports) {
8927
8927
 
8928
- module.exports = __webpack_require__(129);
8928
+ module.exports = __webpack_require__(128);
8929
8929
 
8930
8930
  /***/ })
8931
8931
 
@@ -20238,7 +20238,7 @@ module.exports = __webpack_require__(2);
20238
20238
  /***/ 7:
20239
20239
  /***/ (function(module, exports) {
20240
20240
 
20241
- module.exports = __webpack_require__(129);
20241
+ module.exports = __webpack_require__(128);
20242
20242
 
20243
20243
  /***/ })
20244
20244
 
@@ -27173,8 +27173,8 @@ Object.defineProperty(exports, "__esModule", {
27173
27173
  var React = __webpack_require__(0);
27174
27174
  var Dropdown_1 = __webpack_require__(400);
27175
27175
  var Paragraph_1 = __webpack_require__(104);
27176
- var Button_1 = __webpack_require__(122);
27177
- var Menu_1 = __webpack_require__(118);
27176
+ var Button_1 = __webpack_require__(121);
27177
+ var Menu_1 = __webpack_require__(117);
27178
27178
  var Chip_1 = __webpack_require__(401);
27179
27179
  var FeatureFlagContext_1 = __webpack_require__(20);
27180
27180
  var lodash_1 = __webpack_require__(3);
@@ -27609,7 +27609,7 @@ var config = {
27609
27609
  /**
27610
27610
  * viz name
27611
27611
  */
27612
- name: 'Link Graph',
27612
+ name: i18n_1._('Link graph'),
27613
27613
  category: VizCategory_1.VizCategory.FLOW,
27614
27614
  status: 'preview',
27615
27615
  /**