@splunk/visualizations 23.2.0 → 23.5.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 (132) hide show
  1. package/Area.config.js +36 -30
  2. package/Area.config.js.map +1 -1
  3. package/Area.js +243 -203
  4. package/Area.js.map +1 -1
  5. package/Bar.config.js +29 -23
  6. package/Bar.config.js.map +1 -1
  7. package/Bar.js +233 -193
  8. package/Bar.js.map +1 -1
  9. package/Bubble.config.js +36 -23
  10. package/Bubble.config.js.map +1 -1
  11. package/Bubble.js +247 -196
  12. package/Bubble.js.map +1 -1
  13. package/ChoroplethSvg.config.js +15 -12
  14. package/ChoroplethSvg.config.js.map +1 -1
  15. package/ChoroplethSvg.js +201 -148
  16. package/ChoroplethSvg.js.map +1 -1
  17. package/Column.config.js +29 -23
  18. package/Column.config.js.map +1 -1
  19. package/Column.js +235 -194
  20. package/Column.js.map +1 -1
  21. package/Ellipse.config.js +23 -20
  22. package/Ellipse.config.js.map +1 -1
  23. package/Ellipse.js +176 -123
  24. package/Ellipse.js.map +1 -1
  25. package/FillerGauge.config.js +803 -0
  26. package/FillerGauge.config.js.map +1 -0
  27. package/FillerGauge.js +3634 -0
  28. package/FillerGauge.js.map +1 -0
  29. package/Image.config.js +13 -6
  30. package/Image.config.js.map +1 -1
  31. package/Image.js +260 -200
  32. package/Image.js.map +1 -1
  33. package/LICENSE.md +14 -0
  34. package/Line.config.js +40 -31
  35. package/Line.config.js.map +1 -1
  36. package/Line.js +248 -202
  37. package/Line.js.map +1 -1
  38. package/LinkGraph.config.js +107 -123
  39. package/LinkGraph.config.js.map +1 -1
  40. package/LinkGraph.js +241 -193
  41. package/LinkGraph.js.map +1 -1
  42. package/Markdown.config.js +95 -3
  43. package/Markdown.config.js.map +1 -1
  44. package/Markdown.js +272 -118
  45. package/Markdown.js.map +1 -1
  46. package/MarkerGauge.config.js +750 -0
  47. package/MarkerGauge.config.js.map +1 -0
  48. package/MarkerGauge.js +3758 -0
  49. package/MarkerGauge.js.map +1 -0
  50. package/ParallelCoordinates.config.js +52 -46
  51. package/ParallelCoordinates.config.js.map +1 -1
  52. package/ParallelCoordinates.js +257 -164
  53. package/ParallelCoordinates.js.map +1 -1
  54. package/Pie.config.js +61 -46
  55. package/Pie.config.js.map +1 -1
  56. package/Pie.js +254 -186
  57. package/Pie.js.map +1 -1
  58. package/Punchcard.config.js +279 -39
  59. package/Punchcard.config.js.map +1 -1
  60. package/Punchcard.js +825 -193
  61. package/Punchcard.js.map +1 -1
  62. package/README.external.md +45 -0
  63. package/README.md +18 -3
  64. package/Rectangle.config.js +89 -107
  65. package/Rectangle.config.js.map +1 -1
  66. package/Rectangle.js +204 -145
  67. package/Rectangle.js.map +1 -1
  68. package/Sankey.config.js +29 -22
  69. package/Sankey.config.js.map +1 -1
  70. package/Sankey.js +250 -186
  71. package/Sankey.js.map +1 -1
  72. package/Scatter.config.js +39 -28
  73. package/Scatter.config.js.map +1 -1
  74. package/Scatter.js +2375 -2434
  75. package/Scatter.js.map +1 -1
  76. package/SingleValue.config.js +37 -29
  77. package/SingleValue.config.js.map +1 -1
  78. package/SingleValue.js +3108 -3174
  79. package/SingleValue.js.map +1 -1
  80. package/SingleValueBasic.js +37 -23
  81. package/SingleValueBasic.js.map +1 -1
  82. package/SingleValueIcon.config.js +36 -28
  83. package/SingleValueIcon.config.js.map +1 -1
  84. package/SingleValueIcon.js +279 -210
  85. package/SingleValueIcon.js.map +1 -1
  86. package/SingleValueRadial.config.js +15 -13
  87. package/SingleValueRadial.config.js.map +1 -1
  88. package/SingleValueRadial.js +299 -253
  89. package/SingleValueRadial.js.map +1 -1
  90. package/Table.config.js +26 -10
  91. package/Table.config.js.map +1 -1
  92. package/Table.js +382 -265
  93. package/Table.js.map +1 -1
  94. package/common/Charting.js +33 -30
  95. package/common/Charting.js.map +1 -1
  96. package/common/ChartingApi.js +4 -4
  97. package/common/ChartingApi.js.map +1 -1
  98. package/common/EventsDoc.js +36 -34
  99. package/common/EventsDoc.js.map +1 -1
  100. package/common/GaugeMajorTicks.js +386 -0
  101. package/common/GaugeMajorTicks.js.map +1 -0
  102. package/common/GaugeValueMarker.js +333 -0
  103. package/common/GaugeValueMarker.js.map +1 -0
  104. package/common/OptionsDoc.js +47 -33
  105. package/common/OptionsDoc.js.map +1 -1
  106. package/common/OverviewDoc.js +376 -0
  107. package/common/OverviewDoc.js.map +1 -0
  108. package/common/SplunkVisualization.js +6 -6
  109. package/common/SplunkVisualization.js.map +1 -1
  110. package/common/SplunkVisualizationApi.js +10 -10
  111. package/common/SplunkVisualizationApi.js.map +1 -1
  112. package/common/ThemesDoc.js +55 -72
  113. package/common/ThemesDoc.js.map +1 -1
  114. package/common/chartingUtils.js +15 -13
  115. package/common/chartingUtils.js.map +1 -1
  116. package/common/docUtils.js +4 -4
  117. package/common/docUtils.js.map +1 -1
  118. package/common/gaugeUtils.js +893 -0
  119. package/common/gaugeUtils.js.map +1 -0
  120. package/common/shapeUtils.js +8 -8
  121. package/common/shapeUtils.js.map +1 -1
  122. package/common/utils/JSONSchemaUtils.js.map +1 -1
  123. package/common/utils/configUtils.js.map +1 -1
  124. package/common/utils/hocUtils.js +57 -3
  125. package/common/utils/hocUtils.js.map +1 -1
  126. package/common/utils/singleValueUtils.js +24 -10
  127. package/common/utils/singleValueUtils.js.map +1 -1
  128. package/common/withDashboardViz.js +158 -95
  129. package/common/withDashboardViz.js.map +1 -1
  130. package/package.json +18 -14
  131. package/common/utils/eventUtils.js +0 -115
  132. package/common/utils/eventUtils.js.map +0 -1
package/Table.config.js CHANGED
@@ -87,7 +87,7 @@ module.exports =
87
87
  /******/
88
88
  /******/
89
89
  /******/ // Load entry module and return exports
90
- /******/ return __webpack_require__(__webpack_require__.s = 60);
90
+ /******/ return __webpack_require__(__webpack_require__.s = 66);
91
91
  /******/ })
92
92
  /************************************************************************/
93
93
  /******/ ({
@@ -380,6 +380,8 @@ var VizCategory;
380
380
  VizCategory["SHAPES"] = "Shapes";
381
381
  VizCategory["MISC"] = "misc";
382
382
  VizCategory["FLOW"] = "Flow";
383
+ VizCategory["CORRELATION"] = "Correlation";
384
+ VizCategory["SPATIAL"] = "Spatial";
383
385
  })(VizCategory = exports.VizCategory || (exports.VizCategory = {}));
384
386
 
385
387
  /***/ }),
@@ -391,7 +393,7 @@ module.exports = require("@babel/runtime/helpers/defineProperty");
391
393
 
392
394
  /***/ }),
393
395
 
394
- /***/ 60:
396
+ /***/ 66:
395
397
  /***/ (function(module, exports, __webpack_require__) {
396
398
 
397
399
  "use strict";
@@ -411,17 +413,17 @@ var schemaUtils_1 = __webpack_require__(3);
411
413
 
412
414
  var colorConstants_1 = __webpack_require__(16);
413
415
 
414
- var visualization_icons_1 = __webpack_require__(7);
416
+ var visualization_icons_1 = __webpack_require__(9);
415
417
 
416
- var variables_1 = __webpack_require__(9);
418
+ var variables_1 = __webpack_require__(8);
417
419
 
418
- var pick_1 = __webpack_require__(8);
420
+ var pick_1 = __webpack_require__(7);
419
421
 
420
422
  var configUtils_1 = __webpack_require__(1);
421
423
 
422
424
  var VizBehavior_1 = __webpack_require__(2);
423
425
 
424
- var consts_1 = __webpack_require__(61);
426
+ var consts_1 = __webpack_require__(67);
425
427
 
426
428
  var VizCategory_1 = __webpack_require__(5);
427
429
 
@@ -680,6 +682,11 @@ var optionsSchema = {
680
682
  description: 'Show row numbers in the first column.',
681
683
  type: 'boolean'
682
684
  },
685
+ showInternalFields: {
686
+ default: true,
687
+ description: 'Specify whether to show internal fields that start with an underscore. The _time field will still be shown if false.',
688
+ type: 'boolean'
689
+ },
683
690
  table: {
684
691
  default: '> primary',
685
692
  description: 'Two dimensional array of data to be displayed in the table.',
@@ -883,6 +890,7 @@ var editorConfig = [{
883
890
  editor: 'editor.number',
884
891
  editorProps: {
885
892
  labelPosition: 'left',
893
+ min: 0,
886
894
  labelWidth: EDITOR_LABEL_WIDTH
887
895
  }
888
896
  }], [{
@@ -893,6 +901,14 @@ var editorConfig = [{
893
901
  labelPosition: 'left',
894
902
  labelWidth: EDITOR_LABEL_WIDTH
895
903
  }
904
+ }], [{
905
+ label: i18n_1._('Internal Fields'),
906
+ option: 'showInternalFields',
907
+ editor: 'editor.toggle',
908
+ editorProps: {
909
+ labelPosition: 'left',
910
+ labelWidth: EDITOR_LABEL_WIDTH
911
+ }
896
912
  }], [{
897
913
  label: i18n_1._('Header Row'),
898
914
  option: 'headerVisibility',
@@ -1033,7 +1049,7 @@ exports.default = configUtils_1.enhanceConfig(config);
1033
1049
 
1034
1050
  /***/ }),
1035
1051
 
1036
- /***/ 61:
1052
+ /***/ 67:
1037
1053
  /***/ (function(module, exports, __webpack_require__) {
1038
1054
 
1039
1055
  "use strict";
@@ -1054,21 +1070,21 @@ exports.validTextOverflows = ['anywhere', 'break-word', 'ellipsis'];
1054
1070
  /***/ 7:
1055
1071
  /***/ (function(module, exports) {
1056
1072
 
1057
- module.exports = require("@splunk/visualization-icons");
1073
+ module.exports = require("@splunk/themes/pick");
1058
1074
 
1059
1075
  /***/ }),
1060
1076
 
1061
1077
  /***/ 8:
1062
1078
  /***/ (function(module, exports) {
1063
1079
 
1064
- module.exports = require("@splunk/themes/pick");
1080
+ module.exports = require("@splunk/themes/variables");
1065
1081
 
1066
1082
  /***/ }),
1067
1083
 
1068
1084
  /***/ 9:
1069
1085
  /***/ (function(module, exports) {
1070
1086
 
1071
- module.exports = require("@splunk/themes/variables");
1087
+ module.exports = require("@splunk/visualization-icons");
1072
1088
 
1073
1089
  /***/ })
1074
1090
 
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///./src/common/utils/configUtils.ts","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"@splunk/visualizations-shared/colorConstants\"","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///external \"lodash\"","webpack:///./src/common/interfaces/VizCategory.ts","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///./src/Table/config.ts","webpack:///./src/Table/consts.ts","webpack:///external \"@splunk/visualization-icons\"","webpack:///external \"@splunk/themes/pick\"","webpack:///external \"@splunk/themes/variables\""],"names":[],"mappings":"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","file":"Table.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 = 60);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","import { get, range } from 'lodash';\nimport { DYNAMIC_OPTIONS_DSL_PATTERN } from '@splunk/visualizations-shared/schemaUtils';\nimport { VizBehavior } from '../interfaces/VizBehavior';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { OptionsSchema } from '../interfaces/OptionsSchema';\nimport { JSONSchema7Definition } from 'json-schema';\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((key): void => {\n enhancedPatternProperties = {\n ...enhancedPatternProperties,\n ...enhanceOptionsSchemaWithDynamicOptions({ [key]: patternProperties[key] }),\n };\n });\n enhancedOptionsSchema[key].patternProperties = enhancedPatternProperties;\n }\n } else {\n enhancedOptionsSchema[key] = {\n ...annotations,\n anyOf: [\n // we can't assume `type` is always there because there are `enum` and `const`.\n { ...(type !== undefined && { type }), ...remainingSchemaEntry },\n dynamicOptionsDSLType,\n ],\n };\n }\n });\n return enhancedOptionsSchema;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = vizConfig;\n if (vizConfig.supports.indexOf(VizBehavior.DYNAMIC_OPTIONS) !== -1) {\n enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);\n }\n return enhancedConfig;\n}\n\nfunction isDynamicOption(option?: string): boolean {\n return (option && typeof option === 'string' && option.trim().startsWith('>')) || false;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport {\n enhanceConfig,\n enhanceOptionsSchemaWithDynamicOptions,\n isDynamicOption,\n getInitialPreset,\n generatePrecisionValues,\n};\n","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"@splunk/visualizations-shared/colorConstants\");","export enum VizBehavior {\n /**\n * Dynamic Options Behavior.\n * This allows visualization options to be powered by data\n *\n * **Example**\n *\n * sparklineValues: \">primary|seriesByIndex(0)\"\n * would configure sparklineValues with an array of data points\n * coming from the first series in the primary datasource\n *\n */\n DYNAMIC_OPTIONS = 'dynamic-options',\n EVENTS = 'events',\n /**\n * Placeholder behavior: visualization will display a placeholder rather than fail if any of the `requiredProps` is\n * missing.\n * @type {string}\n */\n PLACEHOLDER = 'placeholder',\n PAGE_AND_SORT = 'page-and-sort',\n}\n","module.exports = require(\"@splunk/visualizations-shared/schemaUtils\");","module.exports = require(\"lodash\");","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}\n","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { map, get } from 'lodash';\nimport {\n COLOR_OR_TOKEN_PATTERN,\n COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n getPattern,\n} from '@splunk/visualizations-shared/schemaUtils';\nimport { COLOR_EDITOR_PALETTE } from '@splunk/visualizations-shared/colorConstants';\nimport { Table as TableIcon } from '@splunk/visualization-icons';\nimport variables from '@splunk/themes/variables';\nimport pick from '@splunk/themes/pick';\nimport { enhanceConfig, generatePrecisionValues } from '../common/utils/configUtils';\nimport { VizConfig } from '../common/interfaces/VizConfig';\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 { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport {\n validHeaderVisibilities,\n validAlignments,\n validTextOverflows,\n validCellRenderers,\n validSparklineTypes,\n} from './consts';\nimport { VizCategory } from '../common/interfaces/VizCategory';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [],\n initialRequestParams: {\n primary: (options: { count?: number } = {}): Record<string, unknown> => ({\n offset: 0,\n count: options.count ? options.count : 10,\n requestTotalCount: true,\n }),\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {\n tableAlignByType: [\n { match: 'string', value: 'left' },\n { match: 'number', value: 'right' },\n { match: 'time', value: 'left' },\n { match: 'color', value: 'left' },\n { match: 'array', value: 'left' },\n { match: 'sparkline', value: 'center' },\n { match: 'unknown', value: 'left' },\n ],\n tableCellTypeByType: [\n { match: 'string', value: 'TextCell' },\n { match: 'number', value: 'TextCell' },\n { match: 'time', value: 'TextCell' },\n { match: 'color', value: 'TextCell' },\n { match: 'array', value: 'ArrayCell' },\n { match: 'sparkline', value: 'SparklineCell' },\n { match: 'unknown', value: 'TextCell' },\n ],\n\n // NOTE: These contexts are used by the table background color editor.\n // Please be careful removing/renaming/altering them.\n // There are unit tests and visual test that will capture breakages.\n tableRowColorMaxContrast: {\n colors: ['> themes.textColor', '> themes.inverseTextColor'],\n default: '> themes.textColor',\n },\n tableRowBackgroundColorEvenConfig: {\n channel: 'hsv.v',\n value: '*0.96',\n },\n tableHeaderBackgroundColorConfig: {\n channel: 'hsv.v',\n value: '*0.9',\n },\n tableRowBackgroundColorsByTheme: ['> themes.rowBackgroundColorOdd'],\n tableAltRowBackgroundColorsByTheme: ['> themes.rowBackgroundColorOdd', '> themes.rowBackgroundColorEven'],\n tableRowBackgroundColorsByBackgroundColor: ['> backgroundColor'],\n tableAltRowBackgroundColorsByBackgroundColor: [\n '> backgroundColor',\n '> backgroundColor | setColorChannel(tableRowBackgroundColorEvenConfig)',\n ],\n};\n\nconst unitPositionConfig = {\n label: _('Units Position'),\n editor: 'editor.select',\n option: 'unitPosition',\n editorProps: {\n values: [\n { label: _('Before'), value: 'before' },\n { label: _('After'), value: 'after' },\n ],\n },\n};\n\nconst unitLabelConfig = {\n label: _('Unit Label'),\n option: 'unit',\n editor: 'editor.text',\n};\n\nconst sequentialColorConfig = [\n { to: 20, value: '#D41F1F' },\n { from: 20, to: 40, value: '#D94E17' },\n { from: 40, to: 60, value: '#CBA700' },\n { from: 60, to: 80, value: '#669922' },\n { from: 80, value: '#118832' },\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,\n type: 'string',\n },\n columnFormat: {\n description: 'Allows users to set column formatting for individual columns.',\n type: 'object',\n patternProperties: {\n '.*': {\n description: 'Customization for column property',\n type: 'object',\n properties: {\n align: {\n description:\n 'Alignment for each cell in the column. Valid alignments include \"left\", \"center\", and \"right\".',\n type: 'array',\n items: {\n type: 'string',\n enum: validAlignments.concat(),\n },\n },\n cellTypes: {\n description:\n 'Cell renderer for each cell in the column. Valid cell renders include \"TextCell\", \"ArrayCell\", \"SparklineCell\".',\n type: 'array',\n items: {\n type: 'string',\n enum: validCellRenderers.concat(),\n },\n },\n data: {\n description: 'Array of datapoint to be displayed in the column rows.',\n type: 'array',\n items: {\n oneOf: [\n { type: 'string' },\n { type: 'number' },\n { type: 'array', items: { type: ['string', 'number'] } },\n ],\n },\n },\n rowBackgroundColors: {\n description:\n 'Array of colors for background color of each row of the column of the table.',\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n rowColors: {\n description: 'Array of colors for text color of each row of the column of the table.',\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n sparklineAreaColors: {\n description:\n 'Array of colors for sparkline area color of each row of the column of the table.',\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n sparklineColors: {\n description:\n 'Array of colors for sparkline line color of each row of the column of the table.',\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n sparklineTypes: {\n description: 'Area or Line Sparkline. Valid sparkline types include \"line\", \"area\".',\n type: 'array',\n items: {\n type: 'string',\n enum: validSparklineTypes.concat(),\n },\n },\n textOverflow: {\n description:\n 'Controls how the text should be truncated within a particular column. Valid types include \"anywhere\", \"break-word\", \"ellipsis\". Defaults width for ellipsis is 100px.',\n type: 'string',\n pattern: getPattern(validTextOverflows),\n enum: validTextOverflows.concat(),\n },\n width: {\n description:\n 'Controls how wide in pixels (where 1px = 1/96th of 1in) the column should be displayed.',\n type: 'number',\n },\n },\n },\n },\n },\n count: {\n description: 'Specify the maximum number of rows to display.',\n type: 'number',\n default: 10,\n },\n headers: {\n default: '> table | getField()',\n description: 'Array of headers to display on the table.',\n type: 'array',\n items: {\n type: 'string',\n },\n },\n headerVisibility: {\n default: 'inline',\n description: 'Header visibility can be none, fixed (docked) or inline.',\n pattern: getPattern(validHeaderVisibilities),\n enum: validHeaderVisibilities.concat(),\n type: 'string',\n },\n paginateDataSourceKey: {\n default: 'primary',\n description: 'Use the specified datasource key for pagination and sorting.',\n type: 'string',\n },\n showRowNumbers: {\n default: false,\n description: 'Show row numbers in the first column.',\n type: 'boolean',\n },\n table: {\n default: '> primary',\n description: 'Two dimensional array of data to be displayed in the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n oneOf: [\n { type: 'string' },\n { type: 'number' },\n { type: 'array', items: { type: ['string', 'number'] } },\n ],\n },\n },\n },\n tableFormat: {\n description: 'Allows users to set table wide options.',\n type: 'object',\n properties: {\n align: {\n default: '> table | type() | matchValue(tableAlignByType)',\n description:\n 'Alignment for each cell in the table. Valid alignments include \"left\", \"center\", and \"right\".',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n enum: validAlignments.concat(),\n },\n },\n },\n cellTypes: {\n default: '> table | type() | matchValue(tableCellTypeByType)',\n description:\n 'Render the data in one of the supported cell type. Valid cell renders include \"TextCell\", \"ArrayCell\", \"SparklineCell\".',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n enum: validCellRenderers.concat(),\n },\n },\n },\n data: {\n description:\n 'Two dimensional data to be displayed in the table. This is usually formatted data instead of raw data from search.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n oneOf: [\n { type: 'string' },\n { type: 'number' },\n { type: 'array', items: { type: ['string', 'number'] } },\n ],\n },\n },\n },\n headerBackgroundColor: {\n default: '> themes.defaultHeaderBackgroundColor',\n description: 'Background color of table header.',\n pattern: COLOR_OR_TOKEN_PATTERN,\n type: 'string',\n },\n headerColor: {\n description: 'Text color of the table header.',\n pattern: COLOR_OR_TOKEN_PATTERN,\n type: 'string',\n },\n rowBackgroundColors: {\n default: '> table | seriesByIndex(0) | pick(tableAltRowBackgroundColorsByTheme)',\n description: 'Array of colors for background color of each row of the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n },\n rowColors: {\n description: 'Array of colors for text color of each row of the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n },\n },\n },\n sparklineAreaColors: {\n description: 'Array of colors for sparkline area of each row of the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n },\n sparklineColors: {\n description: 'Array of colors for sparkline line of each row of the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n },\n sparklineTypes: {\n description: 'Area or Line Sparkline. Valid sparkline types include \"line\", \"area\".',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n enum: validSparklineTypes.concat(),\n },\n },\n },\n },\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 defaultHeaderBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.gray20(props),\n light: variables.gray92(props),\n },\n prisma: variables.backgroundColor(props),\n })(props),\n rowBackgroundColorEven: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.gray96(props),\n },\n prisma: variables.backgroundColorPage(props),\n })(props),\n rowBackgroundColorOdd: props =>\n pick({\n enterprise: {\n dark: '#0D1012',\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(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 backgroundColorPaletteSet = new Set([\n ...COLOR_EDITOR_PALETTE,\n ...map(themes, (t): string => get(t, 'defaultBackgroundColor')),\n]);\nconst EDITOR_LABEL_WIDTH = 100;\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Global Formatting'),\n layout: [\n [\n {\n label: _('Rows Displayed'),\n option: 'count',\n editor: 'editor.number',\n editorProps: {\n labelPosition: 'left',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Row Numbers'),\n option: 'showRowNumbers',\n editor: 'editor.toggle',\n editorProps: {\n labelPosition: 'left',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Header Row'),\n option: 'headerVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Inline'), value: 'inline' },\n { label: _('Fixed'), value: 'fixed' },\n { label: _('Hidden'), value: 'none' },\n ],\n labelPosition: 'left',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n key: 'backgroundColor',\n editor: 'editor.tableBackgroundColor',\n editorProps: {\n themes,\n labelPosition: 'left',\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n ],\n },\n {\n label: _('Column Formatting'),\n layout: [\n [\n {\n label: _(''),\n editor: 'editor.tableColumnFormatter',\n editorProps: {\n // Table column coloring does not adhere to same DSL structure as other dynamically colored options\n // we use the FormatterEditor directly and not the DynamicColorEditor's provided DSL builders\n columnColoringConfig: {\n coloringTypes: [\n {\n label: _('Text'),\n value: 'rowColors',\n },\n {\n label: _('Background'),\n value: 'rowBackgroundColors',\n },\n ],\n formatters: [\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n rowBackgroundColors: sequentialColorConfig,\n rowColors: sequentialColorConfig,\n },\n },\n ],\n themes,\n },\n defaultOptionsByType: {\n number: {\n thousandSeparated: false,\n unitPosition: 'after',\n },\n string: {\n unitPosition: 'after',\n },\n },\n flyoutConfig: {\n number: [\n [\n {\n ...unitPositionConfig,\n },\n {\n ...unitLabelConfig,\n },\n ],\n [\n {\n label: _('Precision'),\n option: 'precision',\n editor: 'editor.select',\n editorProps: {\n values: generatePrecisionValues(20),\n },\n },\n {\n label: _('Thousand Separators'),\n option: 'thousandSeparated',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Off'), value: false },\n { label: _('On'), value: true },\n ],\n },\n },\n ],\n ],\n // TODO(fkurniawan): fill in with proper editor components\n sparkline: [],\n string: [\n [\n {\n ...unitPositionConfig,\n },\n {\n ...unitLabelConfig,\n },\n ],\n ],\n time: [],\n },\n value: ({ context, options }) => {\n return {\n context,\n columnFormat: options.columnFormat,\n tableFormat: options.tableFormat,\n };\n },\n },\n key: 'TableColumnFormatterEditor',\n },\n ],\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.table',\n /**\n * viz name\n */\n name: 'Table',\n category: VizCategory.TABLE,\n /**\n * viz icon\n */\n icon: TableIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'cell.click': {\n description: 'triggered when user clicks a table cell',\n },\n },\n supports: [\n VizBehavior.DYNAMIC_OPTIONS,\n VizBehavior.EVENTS,\n VizBehavior.PAGE_AND_SORT,\n VizBehavior.PLACEHOLDER,\n ],\n themes,\n};\n\nexport default enhanceConfig(config);\n","export const validCellRenderers = ['TextCell', 'ArrayCell', 'SparklineCell'] as const;\nexport type CellRenderers = typeof validCellRenderers[number];\nexport const validSparklineTypes = ['line', 'area'] as const;\nexport type SparklineType = typeof validSparklineTypes[number];\nexport const validHeaderVisibilities = ['none', 'fixed', 'inline'] as const;\nexport type TableHeaderVisibility = typeof validHeaderVisibilities[number];\nexport const validAlignments = ['left', 'center', 'right'] as const;\nexport type TableAlignment = typeof validAlignments[number];\nexport const validTextOverflows = ['anywhere', 'break-word', 'ellipsis'] as const;\nexport type TextOverflow = typeof validTextOverflows[number];\n","module.exports = require(\"@splunk/visualization-icons\");","module.exports = require(\"@splunk/themes/pick\");","module.exports = require(\"@splunk/themes/variables\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///./src/common/utils/configUtils.ts","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"@splunk/visualizations-shared/colorConstants\"","webpack:///./src/common/interfaces/VizBehavior.ts","webpack:///external \"@splunk/visualizations-shared/schemaUtils\"","webpack:///external \"lodash\"","webpack:///./src/common/interfaces/VizCategory.ts","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///./src/Table/config.ts","webpack:///./src/Table/consts.ts","webpack:///external \"@splunk/themes/pick\"","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"@splunk/visualization-icons\""],"names":[],"mappings":"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","file":"Table.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 = 66);\n","module.exports = require(\"@splunk/ui-utils/i18n\");","import { get, range } from 'lodash';\nimport { DYNAMIC_OPTIONS_DSL_PATTERN } from '@splunk/visualizations-shared/schemaUtils';\nimport { VizBehavior } from '../interfaces/VizBehavior';\nimport { VizConfig } from '../interfaces/VizConfig';\nimport { OptionsSchema } from '../interfaces/OptionsSchema';\nimport type { JSONSchema7Definition } from 'json-schema';\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((key): void => {\n enhancedPatternProperties = {\n ...enhancedPatternProperties,\n ...enhanceOptionsSchemaWithDynamicOptions({ [key]: patternProperties[key] }),\n };\n });\n enhancedOptionsSchema[key].patternProperties = enhancedPatternProperties;\n }\n } else {\n enhancedOptionsSchema[key] = {\n ...annotations,\n anyOf: [\n // we can't assume `type` is always there because there are `enum` and `const`.\n { ...(type !== undefined && { type }), ...remainingSchemaEntry },\n dynamicOptionsDSLType,\n ],\n };\n }\n });\n return enhancedOptionsSchema;\n}\n\n/**\n * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block\n * @param vizConfig a Visualization Config\n * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports\n */\nfunction enhanceConfig(vizConfig: VizConfig): VizConfig {\n const enhancedConfig: VizConfig = vizConfig;\n if (vizConfig.supports.indexOf(VizBehavior.DYNAMIC_OPTIONS) !== -1) {\n enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);\n }\n return enhancedConfig;\n}\n\nfunction isDynamicOption(option?: string): boolean {\n return (option && typeof option === 'string' && option.trim().startsWith('>')) || false;\n}\n\n// private helpers to improve readability of getInitialPreset\n// this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset\n\n/**\n * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset\n * if a preset has explicitly specified a key as being undefined, the vizContext must also has that key as undefined, or else this CANNOT be the initialPreset\n * the inverse is true; if a preset has key is NOT undefined, it must also be NOT undefined in the corresponding vizContext\n * the internal config contents are irrelevant (as the user could customize them in source), just as long as the presence of `undefined`s match up\n *\n * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values\n */\nfunction hasCompatibleContexts(\n vizContext: { [configKey: string]: any },\n presetContext: { [configKey: string]: any }\n): boolean {\n const presetContextKeys = Object.keys(presetContext);\n return presetContextKeys.every(\n (contextKey): boolean =>\n (presetContext[contextKey] === undefined && vizContext[contextKey] === undefined) ||\n (presetContext[contextKey] !== undefined && vizContext[contextKey] !== undefined)\n );\n}\n\n/**\n * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions\n */\nfunction hasCompatibleOptions(\n vizOptions: { [configKey: string]: any },\n presetOptions: { [configKey: string]: any }\n): boolean {\n const presetOptionKeys = Object.keys(presetOptions);\n return presetOptionKeys.every(\n (optionKey): boolean =>\n isDynamicOption(presetOptions[optionKey]) === isDynamicOption(vizOptions[optionKey])\n );\n}\n\n/**\n * Evaluates whether there is an initialPreset that fits the current state of vizContext + vizOptions\n * This function ignores extraneous vizOptions or vizContext keys, as they could be outside the scope of what the preset is intended to configure\n *\n * @param {Object} vizContext - the current vizContext definition\n * @param {Object} vizOptions - the current vizOptions definition\n * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset\n */\nfunction getInitialPreset(\n vizContext: { [configKey: string]: any },\n vizOptions: { [configKey: string]: any },\n presets: PresetEntry[]\n): PresetEntry | null {\n return presets.find((preset): boolean => {\n const presetContext = get(preset, ['value', 'context'], {});\n const presetOptions = get(preset, ['value', 'options'], {});\n const presetContextKeys = Object.keys(presetContext);\n const presetOptionKeys = Object.keys(presetOptions);\n\n // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)\n // if not, then the preset is invalid in config.ts\n if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;\n\n return (\n hasCompatibleContexts(vizContext, presetContext) &&\n hasCompatibleOptions(vizOptions, presetOptions)\n );\n });\n}\n\ninterface PrecisionOption {\n label: string;\n value: number;\n}\n\n/**\n * generates number precision values for a Select editor\n *\n * @param {Number} numPrecisionValues - number of integer precision values to generate\n * @returns {{ label: string; value; string }[]} array of { label, value } tuples\n */\nfunction generatePrecisionValues(numPrecisionValues: number): PrecisionOption[] {\n return range(0, numPrecisionValues + 1).map(\n (i): PrecisionOption => ({\n label: `${i} (0${i > 0 ? '.' : ''}${'0'.repeat(i)})`, // e.g. 0.000 for numPrecisionValues = 3\n value: i,\n })\n );\n}\n\nexport {\n enhanceConfig,\n enhanceOptionsSchemaWithDynamicOptions,\n isDynamicOption,\n getInitialPreset,\n generatePrecisionValues,\n};\n","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"@splunk/visualizations-shared/colorConstants\");","export enum VizBehavior {\n /**\n * Dynamic Options Behavior.\n * This allows visualization options to be powered by data\n *\n * **Example**\n *\n * sparklineValues: \">primary|seriesByIndex(0)\"\n * would configure sparklineValues with an array of data points\n * coming from the first series in the primary datasource\n *\n */\n DYNAMIC_OPTIONS = 'dynamic-options',\n EVENTS = 'events',\n /**\n * Placeholder behavior: visualization will display a placeholder rather than fail if any of the `requiredProps` is\n * missing.\n * @type {string}\n */\n PLACEHOLDER = 'placeholder',\n PAGE_AND_SORT = 'page-and-sort',\n}\n","module.exports = require(\"@splunk/visualizations-shared/schemaUtils\");","module.exports = require(\"lodash\");","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(\"@babel/runtime/helpers/defineProperty\");","import { _ } from '@splunk/ui-utils/i18n';\nimport { map, get } from 'lodash';\nimport {\n COLOR_OR_TOKEN_PATTERN,\n COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n getPattern,\n} from '@splunk/visualizations-shared/schemaUtils';\nimport { COLOR_EDITOR_PALETTE } from '@splunk/visualizations-shared/colorConstants';\nimport { Table as TableIcon } from '@splunk/visualization-icons';\nimport variables from '@splunk/themes/variables';\nimport pick from '@splunk/themes/pick';\nimport { enhanceConfig, generatePrecisionValues } from '../common/utils/configUtils';\nimport { VizConfig } from '../common/interfaces/VizConfig';\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 { VizBehavior } from '../common/interfaces/VizBehavior';\nimport { ThemedDefaults } from '../common/interfaces/ThemedDefaults';\nimport {\n validHeaderVisibilities,\n validAlignments,\n validTextOverflows,\n validCellRenderers,\n validSparklineTypes,\n} from './consts';\nimport { VizCategory } from '../common/interfaces/VizCategory';\n\nconst dataContract: DataContract = {\n requiredDataSources: [\n {\n name: 'primary',\n description: 'DataSource that powers the visualization',\n },\n ],\n optionalDataSources: [],\n initialRequestParams: {\n primary: (options: { count?: number } = {}): Record<string, unknown> => ({\n offset: 0,\n count: options.count ? options.count : 10,\n requestTotalCount: true,\n }),\n },\n};\n\nconst size: VizSize = {\n initialWidth: 300,\n initialHeight: 300,\n};\n\nconst defaultContext: DefaultContext = {\n tableAlignByType: [\n { match: 'string', value: 'left' },\n { match: 'number', value: 'right' },\n { match: 'time', value: 'left' },\n { match: 'color', value: 'left' },\n { match: 'array', value: 'left' },\n { match: 'sparkline', value: 'center' },\n { match: 'unknown', value: 'left' },\n ],\n tableCellTypeByType: [\n { match: 'string', value: 'TextCell' },\n { match: 'number', value: 'TextCell' },\n { match: 'time', value: 'TextCell' },\n { match: 'color', value: 'TextCell' },\n { match: 'array', value: 'ArrayCell' },\n { match: 'sparkline', value: 'SparklineCell' },\n { match: 'unknown', value: 'TextCell' },\n ],\n\n // NOTE: These contexts are used by the table background color editor.\n // Please be careful removing/renaming/altering them.\n // There are unit tests and visual test that will capture breakages.\n tableRowColorMaxContrast: {\n colors: ['> themes.textColor', '> themes.inverseTextColor'],\n default: '> themes.textColor',\n },\n tableRowBackgroundColorEvenConfig: {\n channel: 'hsv.v',\n value: '*0.96',\n },\n tableHeaderBackgroundColorConfig: {\n channel: 'hsv.v',\n value: '*0.9',\n },\n tableRowBackgroundColorsByTheme: ['> themes.rowBackgroundColorOdd'],\n tableAltRowBackgroundColorsByTheme: ['> themes.rowBackgroundColorOdd', '> themes.rowBackgroundColorEven'],\n tableRowBackgroundColorsByBackgroundColor: ['> backgroundColor'],\n tableAltRowBackgroundColorsByBackgroundColor: [\n '> backgroundColor',\n '> backgroundColor | setColorChannel(tableRowBackgroundColorEvenConfig)',\n ],\n};\n\nconst unitPositionConfig = {\n label: _('Units Position'),\n editor: 'editor.select',\n option: 'unitPosition',\n editorProps: {\n values: [\n { label: _('Before'), value: 'before' },\n { label: _('After'), value: 'after' },\n ],\n },\n};\n\nconst unitLabelConfig = {\n label: _('Unit Label'),\n option: 'unit',\n editor: 'editor.text',\n};\n\nconst sequentialColorConfig = [\n { to: 20, value: '#D41F1F' },\n { from: 20, to: 40, value: '#D94E17' },\n { from: 40, to: 60, value: '#CBA700' },\n { from: 60, to: 80, value: '#669922' },\n { from: 80, value: '#118832' },\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,\n type: 'string',\n },\n columnFormat: {\n description: 'Allows users to set column formatting for individual columns.',\n type: 'object',\n patternProperties: {\n '.*': {\n description: 'Customization for column property',\n type: 'object',\n properties: {\n align: {\n description:\n 'Alignment for each cell in the column. Valid alignments include \"left\", \"center\", and \"right\".',\n type: 'array',\n items: {\n type: 'string',\n enum: validAlignments.concat(),\n },\n },\n cellTypes: {\n description:\n 'Cell renderer for each cell in the column. Valid cell renders include \"TextCell\", \"ArrayCell\", \"SparklineCell\".',\n type: 'array',\n items: {\n type: 'string',\n enum: validCellRenderers.concat(),\n },\n },\n data: {\n description: 'Array of datapoint to be displayed in the column rows.',\n type: 'array',\n items: {\n oneOf: [\n { type: 'string' },\n { type: 'number' },\n { type: 'array', items: { type: ['string', 'number'] } },\n ],\n },\n },\n rowBackgroundColors: {\n description:\n 'Array of colors for background color of each row of the column of the table.',\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n rowColors: {\n description: 'Array of colors for text color of each row of the column of the table.',\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n sparklineAreaColors: {\n description:\n 'Array of colors for sparkline area color of each row of the column of the table.',\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n sparklineColors: {\n description:\n 'Array of colors for sparkline line color of each row of the column of the table.',\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n sparklineTypes: {\n description: 'Area or Line Sparkline. Valid sparkline types include \"line\", \"area\".',\n type: 'array',\n items: {\n type: 'string',\n enum: validSparklineTypes.concat(),\n },\n },\n textOverflow: {\n description:\n 'Controls how the text should be truncated within a particular column. Valid types include \"anywhere\", \"break-word\", \"ellipsis\". Defaults width for ellipsis is 100px.',\n type: 'string',\n pattern: getPattern(validTextOverflows),\n enum: validTextOverflows.concat(),\n },\n width: {\n description:\n 'Controls how wide in pixels (where 1px = 1/96th of 1in) the column should be displayed.',\n type: 'number',\n },\n },\n },\n },\n },\n count: {\n description: 'Specify the maximum number of rows to display.',\n type: 'number',\n default: 10,\n },\n headers: {\n default: '> table | getField()',\n description: 'Array of headers to display on the table.',\n type: 'array',\n items: {\n type: 'string',\n },\n },\n headerVisibility: {\n default: 'inline',\n description: 'Header visibility can be none, fixed (docked) or inline.',\n pattern: getPattern(validHeaderVisibilities),\n enum: validHeaderVisibilities.concat(),\n type: 'string',\n },\n paginateDataSourceKey: {\n default: 'primary',\n description: 'Use the specified datasource key for pagination and sorting.',\n type: 'string',\n },\n showRowNumbers: {\n default: false,\n description: 'Show row numbers in the first column.',\n type: 'boolean',\n },\n showInternalFields: {\n default: true,\n description:\n 'Specify whether to show internal fields that start with an underscore. The _time field will still be shown if false.',\n type: 'boolean',\n },\n table: {\n default: '> primary',\n description: 'Two dimensional array of data to be displayed in the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n oneOf: [\n { type: 'string' },\n { type: 'number' },\n { type: 'array', items: { type: ['string', 'number'] } },\n ],\n },\n },\n },\n tableFormat: {\n description: 'Allows users to set table wide options.',\n type: 'object',\n properties: {\n align: {\n default: '> table | type() | matchValue(tableAlignByType)',\n description:\n 'Alignment for each cell in the table. Valid alignments include \"left\", \"center\", and \"right\".',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n enum: validAlignments.concat(),\n },\n },\n },\n cellTypes: {\n default: '> table | type() | matchValue(tableCellTypeByType)',\n description:\n 'Render the data in one of the supported cell type. Valid cell renders include \"TextCell\", \"ArrayCell\", \"SparklineCell\".',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n enum: validCellRenderers.concat(),\n },\n },\n },\n data: {\n description:\n 'Two dimensional data to be displayed in the table. This is usually formatted data instead of raw data from search.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n oneOf: [\n { type: 'string' },\n { type: 'number' },\n { type: 'array', items: { type: ['string', 'number'] } },\n ],\n },\n },\n },\n headerBackgroundColor: {\n default: '> themes.defaultHeaderBackgroundColor',\n description: 'Background color of table header.',\n pattern: COLOR_OR_TOKEN_PATTERN,\n type: 'string',\n },\n headerColor: {\n description: 'Text color of the table header.',\n pattern: COLOR_OR_TOKEN_PATTERN,\n type: 'string',\n },\n rowBackgroundColors: {\n default: '> table | seriesByIndex(0) | pick(tableAltRowBackgroundColorsByTheme)',\n description: 'Array of colors for background color of each row of the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n },\n rowColors: {\n description: 'Array of colors for text color of each row of the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN_WITH_RGBA,\n },\n },\n },\n sparklineAreaColors: {\n description: 'Array of colors for sparkline area of each row of the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n },\n sparklineColors: {\n description: 'Array of colors for sparkline line of each row of the table.',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n pattern: COLOR_OR_TOKEN_PATTERN,\n },\n },\n },\n sparklineTypes: {\n description: 'Area or Line Sparkline. Valid sparkline types include \"line\", \"area\".',\n type: 'array',\n items: {\n type: 'array',\n items: {\n type: 'string',\n enum: validSparklineTypes.concat(),\n },\n },\n },\n },\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 defaultHeaderBackgroundColor: props =>\n pick({\n enterprise: {\n dark: variables.gray20(props),\n light: variables.gray92(props),\n },\n prisma: variables.backgroundColor(props),\n })(props),\n rowBackgroundColorEven: props =>\n pick({\n enterprise: {\n dark: variables.black(props),\n light: variables.gray96(props),\n },\n prisma: variables.backgroundColorPage(props),\n })(props),\n rowBackgroundColorOdd: props =>\n pick({\n enterprise: {\n dark: '#0D1012',\n light: variables.backgroundColor(props),\n },\n prisma: variables.backgroundColorSidebar(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 backgroundColorPaletteSet = new Set([\n ...COLOR_EDITOR_PALETTE,\n ...map(themes, (t): string => get(t, 'defaultBackgroundColor')),\n]);\nconst EDITOR_LABEL_WIDTH = 100;\nconst editorConfig: EditorConfig[] = [\n {\n label: _('Global Formatting'),\n layout: [\n [\n {\n label: _('Rows Displayed'),\n option: 'count',\n editor: 'editor.number',\n editorProps: {\n labelPosition: 'left',\n min: 0,\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Row Numbers'),\n option: 'showRowNumbers',\n editor: 'editor.toggle',\n editorProps: {\n labelPosition: 'left',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Internal Fields'),\n option: 'showInternalFields',\n editor: 'editor.toggle',\n editorProps: {\n labelPosition: 'left',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n label: _('Header Row'),\n option: 'headerVisibility',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Inline'), value: 'inline' },\n { label: _('Fixed'), value: 'fixed' },\n { label: _('Hidden'), value: 'none' },\n ],\n labelPosition: 'left',\n labelWidth: EDITOR_LABEL_WIDTH,\n },\n },\n ],\n [\n {\n key: 'backgroundColor',\n editor: 'editor.tableBackgroundColor',\n editorProps: {\n themes,\n labelPosition: 'left',\n labelWidth: EDITOR_LABEL_WIDTH,\n palette: [...backgroundColorPaletteSet],\n },\n },\n ],\n ],\n },\n {\n label: _('Column Formatting'),\n layout: [\n [\n {\n label: _(''),\n editor: 'editor.tableColumnFormatter',\n editorProps: {\n // Table column coloring does not adhere to same DSL structure as other dynamically colored options\n // we use the FormatterEditor directly and not the DynamicColorEditor's provided DSL builders\n columnColoringConfig: {\n coloringTypes: [\n {\n label: _('Text'),\n value: 'rowColors',\n },\n {\n label: _('Background'),\n value: 'rowBackgroundColors',\n },\n ],\n formatters: [\n {\n label: _('Ranges'),\n value: 'rangeValue',\n defaults: {\n rowBackgroundColors: sequentialColorConfig,\n rowColors: sequentialColorConfig,\n },\n },\n ],\n themes,\n },\n defaultOptionsByType: {\n number: {\n thousandSeparated: false,\n unitPosition: 'after',\n },\n string: {\n unitPosition: 'after',\n },\n },\n flyoutConfig: {\n number: [\n [\n {\n ...unitPositionConfig,\n },\n {\n ...unitLabelConfig,\n },\n ],\n [\n {\n label: _('Precision'),\n option: 'precision',\n editor: 'editor.select',\n editorProps: {\n values: generatePrecisionValues(20),\n },\n },\n {\n label: _('Thousand Separators'),\n option: 'thousandSeparated',\n editor: 'editor.radioBar',\n editorProps: {\n values: [\n { label: _('Off'), value: false },\n { label: _('On'), value: true },\n ],\n },\n },\n ],\n ],\n // TODO(fkurniawan): fill in with proper editor components\n sparkline: [],\n string: [\n [\n {\n ...unitPositionConfig,\n },\n {\n ...unitLabelConfig,\n },\n ],\n ],\n time: [],\n },\n value: ({ context, options }) => {\n return {\n context,\n columnFormat: options.columnFormat,\n tableFormat: options.tableFormat,\n };\n },\n },\n key: 'TableColumnFormatterEditor',\n },\n ],\n ],\n },\n];\n\n/**\n * visualization configuration\n */\nconst config: VizConfig = {\n /**\n * unique viz key\n */\n key: 'splunk.table',\n /**\n * viz name\n */\n name: 'Table',\n category: VizCategory.TABLE,\n /**\n * viz icon\n */\n icon: TableIcon,\n dataContract,\n size,\n defaultContext,\n optionsSchema,\n editorConfig,\n events: {\n 'cell.click': {\n description: 'triggered when user clicks a table cell',\n },\n },\n supports: [\n VizBehavior.DYNAMIC_OPTIONS,\n VizBehavior.EVENTS,\n VizBehavior.PAGE_AND_SORT,\n VizBehavior.PLACEHOLDER,\n ],\n themes,\n};\n\nexport default enhanceConfig(config);\n","export const validCellRenderers = ['TextCell', 'ArrayCell', 'SparklineCell'] as const;\nexport type CellRenderers = typeof validCellRenderers[number];\nexport const validSparklineTypes = ['line', 'area'] as const;\nexport type SparklineType = typeof validSparklineTypes[number];\nexport const validHeaderVisibilities = ['none', 'fixed', 'inline'] as const;\nexport type TableHeaderVisibility = typeof validHeaderVisibilities[number];\nexport const validAlignments = ['left', 'center', 'right'] as const;\nexport type TableAlignment = typeof validAlignments[number];\nexport const validTextOverflows = ['anywhere', 'break-word', 'ellipsis'] as const;\nexport type TextOverflow = typeof validTextOverflows[number];\n","module.exports = require(\"@splunk/themes/pick\");","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"@splunk/visualization-icons\");"],"sourceRoot":""}