@splunk/visualizations 26.0.0 → 26.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/Area.config.js +103 -19
  2. package/Area.config.js.map +1 -1
  3. package/Area.js +646 -243
  4. package/Area.js.map +1 -1
  5. package/Bar.config.js +105 -21
  6. package/Bar.config.js.map +1 -1
  7. package/Bar.js +653 -237
  8. package/Bar.js.map +1 -1
  9. package/Bubble.config.js +95 -21
  10. package/Bubble.config.js.map +1 -1
  11. package/Bubble.js +635 -229
  12. package/Bubble.js.map +1 -1
  13. package/ChoroplethSvg.config.js +66 -15
  14. package/ChoroplethSvg.config.js.map +1 -1
  15. package/ChoroplethSvg.js +589 -211
  16. package/ChoroplethSvg.js.map +1 -1
  17. package/Column.config.js +104 -19
  18. package/Column.config.js.map +1 -1
  19. package/Column.js +666 -239
  20. package/Column.js.map +1 -1
  21. package/Ellipse.config.js +83 -18
  22. package/Ellipse.config.js.map +1 -1
  23. package/Ellipse.js +444 -156
  24. package/Ellipse.js.map +1 -1
  25. package/Events.config.js +101 -19
  26. package/Events.config.js.map +1 -1
  27. package/Events.js +792 -322
  28. package/Events.js.map +1 -1
  29. package/FillerGauge.config.js +97 -28
  30. package/FillerGauge.config.js.map +1 -1
  31. package/FillerGauge.js +786 -390
  32. package/FillerGauge.js.map +1 -1
  33. package/Image.config.js +63 -19
  34. package/Image.config.js.map +1 -1
  35. package/Image.js +439 -164
  36. package/Image.js.map +1 -1
  37. package/Line.config.js +107 -23
  38. package/Line.config.js.map +1 -1
  39. package/Line.js +841 -456
  40. package/Line.js.map +1 -1
  41. package/LinkGraph.config.js +73 -23
  42. package/LinkGraph.config.js.map +1 -1
  43. package/LinkGraph.js +653 -230
  44. package/LinkGraph.js.map +1 -1
  45. package/MIGRATION.md +1082 -0
  46. package/Map.config.js +244 -99
  47. package/Map.config.js.map +1 -1
  48. package/Map.js +1223 -612
  49. package/Map.js.map +1 -1
  50. package/Markdown.config.js +71 -21
  51. package/Markdown.config.js.map +1 -1
  52. package/Markdown.js +477 -202
  53. package/Markdown.js.map +1 -1
  54. package/MarkerGauge.config.js +80 -22
  55. package/MarkerGauge.config.js.map +1 -1
  56. package/MarkerGauge.js +819 -418
  57. package/MarkerGauge.js.map +1 -1
  58. package/ParallelCoordinates.config.js +73 -19
  59. package/ParallelCoordinates.config.js.map +1 -1
  60. package/ParallelCoordinates.js +870 -491
  61. package/ParallelCoordinates.js.map +1 -1
  62. package/Pie.config.js +76 -23
  63. package/Pie.config.js.map +1 -1
  64. package/Pie.js +643 -233
  65. package/Pie.js.map +1 -1
  66. package/Punchcard.config.js +82 -30
  67. package/Punchcard.config.js.map +1 -1
  68. package/Punchcard.js +863 -387
  69. package/Punchcard.js.map +1 -1
  70. package/Rectangle.config.js +86 -20
  71. package/Rectangle.config.js.map +1 -1
  72. package/Rectangle.js +449 -159
  73. package/Rectangle.js.map +1 -1
  74. package/Sankey.config.js +85 -23
  75. package/Sankey.config.js.map +1 -1
  76. package/Sankey.js +895 -349
  77. package/Sankey.js.map +1 -1
  78. package/Scatter.config.js +97 -23
  79. package/Scatter.config.js.map +1 -1
  80. package/Scatter.js +639 -234
  81. package/Scatter.js.map +1 -1
  82. package/SingleValue.config.js +95 -25
  83. package/SingleValue.config.js.map +1 -1
  84. package/SingleValue.js +1198 -656
  85. package/SingleValue.js.map +1 -1
  86. package/SingleValueBasic.js +287 -226
  87. package/SingleValueBasic.js.map +1 -1
  88. package/SingleValueIcon.config.js +93 -23
  89. package/SingleValueIcon.config.js.map +1 -1
  90. package/SingleValueIcon.js +991 -522
  91. package/SingleValueIcon.js.map +1 -1
  92. package/SingleValueRadial.config.js +100 -27
  93. package/SingleValueRadial.config.js.map +1 -1
  94. package/SingleValueRadial.js +1185 -624
  95. package/SingleValueRadial.js.map +1 -1
  96. package/SparkLine.js +127 -68
  97. package/SparkLine.js.map +1 -1
  98. package/Table.config.js +74 -21
  99. package/Table.config.js.map +1 -1
  100. package/Table.js +827 -329
  101. package/Table.js.map +1 -1
  102. package/common/Charting.js +152 -69
  103. package/common/Charting.js.map +1 -1
  104. package/common/ChartingApi.js +25 -14
  105. package/common/ChartingApi.js.map +1 -1
  106. package/common/DocExampleWithVizSandbox.js +530 -0
  107. package/common/DocExampleWithVizSandbox.js.map +1 -0
  108. package/common/EventsDoc.js +139 -104
  109. package/common/EventsDoc.js.map +1 -1
  110. package/common/GaugeMajorTicks.js +79 -69
  111. package/common/GaugeMajorTicks.js.map +1 -1
  112. package/common/GaugeValueMarker.js +54 -45
  113. package/common/GaugeValueMarker.js.map +1 -1
  114. package/common/OptionsDoc.js +178 -87
  115. package/common/OptionsDoc.js.map +1 -1
  116. package/common/OverviewDoc.js +530 -68
  117. package/common/OverviewDoc.js.map +1 -1
  118. package/common/SplunkVisualization.js +47 -20
  119. package/common/SplunkVisualization.js.map +1 -1
  120. package/common/SplunkVisualizationApi.js +15 -9
  121. package/common/SplunkVisualizationApi.js.map +1 -1
  122. package/common/ThemesDoc.js +57 -44
  123. package/common/ThemesDoc.js.map +1 -1
  124. package/common/chartingUtils.js +52 -20
  125. package/common/chartingUtils.js.map +1 -1
  126. package/common/docUtils.js +139 -7
  127. package/common/docUtils.js.map +1 -1
  128. package/common/gaugeUtils.js +185 -102
  129. package/common/gaugeUtils.js.map +1 -1
  130. package/common/shapeUtils.js +28 -16
  131. package/common/shapeUtils.js.map +1 -1
  132. package/common/utils/configUtils.js +50 -15
  133. package/common/utils/configUtils.js.map +1 -1
  134. package/common/utils/dataUtils.js +8 -3
  135. package/common/utils/dataUtils.js.map +1 -1
  136. package/common/utils/hocUtils.js +4 -2
  137. package/common/utils/hocUtils.js.map +1 -1
  138. package/common/utils/layoutUtils.js +2 -1
  139. package/common/utils/layoutUtils.js.map +1 -1
  140. package/common/utils/mapUtils.js +288 -128
  141. package/common/utils/mapUtils.js.map +1 -1
  142. package/common/utils/singleValueUtils.js +242 -197
  143. package/common/utils/singleValueUtils.js.map +1 -1
  144. package/common/utils/testHelper.js +10 -1
  145. package/common/utils/testHelper.js.map +1 -1
  146. package/common/utils/trellisUtils.js +62 -1
  147. package/common/utils/trellisUtils.js.map +1 -1
  148. package/common/utils/urlUtils.js +3 -1
  149. package/common/utils/urlUtils.js.map +1 -1
  150. package/common/withDashboardViz.js +389 -192
  151. package/common/withDashboardViz.js.map +1 -1
  152. package/package.json +18 -26
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"lodash\"","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///./src/common/gaugeUtils.ts","webpack:///external \"@splunk/visualizations-shared/colorConstants\""],"names":["lodash_1","require","colorConstants_1","i18n_1","exports","GAUGE_THICKNESS","FILL_THICKNESS","GRADIENT_STOP_OFFSET_MIN","GRADIENT_STOP_OFFSET_MAX","getGaugeWidth","_ref","containerWidth","orientation","getGaugeHeight","_ref2","containerHeight","getGaugeLength","_ref3","getGaugeStartPosition","_ref4","gaugeLength","gaugeStartX","gaugeStartY","getGaugeDimensions","_ref5","_ref6","gaugeWidth","gaugeHeight","assignGaugeColor","_ref7","value","min","max","rate","SEMANTIC_SUCCESS","SEMANTIC_WARNING","SEMANTIC_ERROR","getGaugeBarLength","_ref8","getGaugeBarStartPositions","_ref9","gaugeBarLength","gaugeBarX","gaugeBarY","getGaugeBarWidth","_ref10","getGaugeBarHeight","_ref11","getFillBarDimensions","_ref12","_ref13","fillBarX","fillBarY","fillBarWidth","fillBarHeight","fillBarLength","getFillerGaugeValueMarkerPositions","_ref14","valueMarkerX","valueMarkerY","getMarkerBarDimensions","_ref15","_ref16","markerBarX","markerBarY","markerBarWidth","markerBarHeight","markerBarLength","getMarkerGaugeValueMarkerPositions","_ref17","getSortedRanges","ranges","sort","a","b","from","validateRanges","length","_","some","range","to","uniqBy","sortedRanges","i","getGaugeRange","Math","apply","_toConsumableArray","map","getGradientStopOffsets","_ref18","_ref19","offsetScale","offsets","abs","reverse","cumulativeOffsets","reduce","accumulator","currentValue","idx","getGradientStopColors","_ref20","stopColors","getGradientStops","_ref21","stops","push","offset","concat","stopColor","getGradientDimensions","x1","y1","x2","y2","gaugeOptionsMapping","majorTickInterval","gaugeRanges","mapToOldKey","options","mapKeys","val","key","mapValueLabelDisplay","labelOrValue","rangeOrValue","showKey","percentKey","optionString","newOptions","Object","assign","omit","convertToGaugeProperties","originalOptions","chain","thru"],"mappings":"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","file":"gaugeUtils.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 = 70);\n","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"lodash\");","module.exports = require(\"@splunk/ui-utils/i18n\");","import { chain, mapKeys, omit, uniqBy } from 'lodash';\nimport {\n SEMANTIC_SUCCESS,\n SEMANTIC_WARNING,\n SEMANTIC_ERROR,\n} from '@splunk/visualizations-shared/colorConstants';\nimport { _ } from '@splunk/ui-utils/i18n';\n\nexport const GAUGE_THICKNESS = 50;\nexport const FILL_THICKNESS = 38;\nconst GRADIENT_STOP_OFFSET_MIN = 0;\nconst GRADIENT_STOP_OFFSET_MAX = 100;\n\n/**\n * get width for the whole gauge viz for horizontal or vertical view\n * @method getGaugeWidth\n * @param {Object} input\n * @param {Number} containerWidth\n * @param {String} orientation\n * @return {Number} width\n */\nexport const getGaugeWidth = ({ containerWidth, orientation }) =>\n orientation === 'vertical' ? GAUGE_THICKNESS : containerWidth * 0.8;\n\n/**\n * get height for the whole gauge viz for horizontal or vertical view\n * @method getGaugeHeight\n * @param {Object} input\n * @param {Number} containerHeight\n * @param {String} orientation\n * @return {Number} height\n */\nexport const getGaugeHeight = ({ containerHeight, orientation }) =>\n orientation === 'vertical' ? containerHeight * 0.8 : GAUGE_THICKNESS;\n\n/**\n * get how long the gauge shoud be.\n * In horizontal view, gauge length equals to gauge width. In vertical view, it equals to gauge height.\n * @method getGaugeLength\n * @param {Object} input\n * @param {Number} input.containerWidth\n * @param {Number} input.containerHeight\n * @param {String} input.orientation\n * @return {Number} gaugeLength\n */\nexport const getGaugeLength = ({ containerWidth, containerHeight, orientation }) =>\n orientation === 'vertical'\n ? getGaugeHeight({ containerHeight, orientation })\n : getGaugeWidth({ containerWidth, orientation });\n\n/**\n * get start x and y for rendering gauge\n * @method getGaugeStartPosition\n * @param {Object} input\n * @param {Number} containerWidth\n * @param {Number} containerHeight\n * @param {Number} gaugeLength\n * @param {String} orientation\n * @return {Object} position\n * @return {Number} position.gaugeStartX\n * @return {Number} position.gaugeStartY\n */\nexport const getGaugeStartPosition = ({ containerWidth, containerHeight, gaugeLength, orientation }) => {\n // for horizontal view\n let gaugeStartX = (containerWidth - gaugeLength) / 2.0;\n let gaugeStartY = (containerHeight - GAUGE_THICKNESS) / 2.0;\n\n if (orientation === 'vertical') {\n gaugeStartX = (containerWidth - GAUGE_THICKNESS) / 2.0;\n gaugeStartY = (containerHeight - gaugeLength) / 2.0;\n }\n\n return { gaugeStartX, gaugeStartY };\n};\n\n/**\n * get dimensions for the whole gauge viz,\n * which can be useful to calculate background bar and major ticks positions.\n * @method getGaugeDimensions\n * @param {Object} input\n * @param {Number} input.containerWidth\n * @param {Number} input.containerHeight\n * @param {String} input.orientation 'horizontal' or 'vertical'\n * @return {Object} gaugeDimensions\n * @return {Number} gaugeDimensions.gaugeLength how long the gauge shoud be in horizontal or vertical orientation.\n * @return {Number} gaugeDimensions.gaugeStartX start x to render gauge\n * @return {Number} gaugeDimensions.gaugeStartY start y to render gauge\n * @return {Number} gaugeDimensions.gaugeWidth natural width of gauge\n * @return {Number} gaugeDimensions.gaugeHeight natural height of gauge\n */\nexport const getGaugeDimensions = ({ containerWidth, containerHeight, orientation }) => {\n const gaugeLength = getGaugeLength({ containerWidth, containerHeight, orientation });\n const { gaugeStartX, gaugeStartY } = getGaugeStartPosition({\n containerWidth,\n containerHeight,\n gaugeLength,\n orientation,\n });\n const gaugeWidth = getGaugeWidth({ containerWidth, orientation });\n const gaugeHeight = getGaugeHeight({ containerHeight, orientation });\n\n return {\n gaugeLength,\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n };\n};\n\n/**\n * if gaugeColor is not specified, auto assign a gauge color to the fill bar\n * based on how much percentage the value is taken between min and max\n * @method assignGaugeColor\n * @params\n * */\nexport const assignGaugeColor = ({ value, min, max }) => {\n const rate = (value - min) / (max - min);\n\n if (rate <= 0.3) {\n return SEMANTIC_SUCCESS;\n }\n if (rate > 0.3 && rate <= 0.6) {\n return SEMANTIC_WARNING;\n }\n\n return SEMANTIC_ERROR;\n};\n\n/**\n * get inner bar length in gauge\n * @method getGaugeBarLength\n * @param {Object} input\n * @param {Number} input.gaugeLength\n * @param {Number} input.value\n * @param {Number} input.min\n * @param {Number} input.max\n * @return {Number} gaugeBarLength\n */\nexport const getGaugeBarLength = ({ gaugeLength, value, min, max }) => {\n if (max < min) {\n return null;\n }\n\n if (value >= max) {\n return gaugeLength;\n }\n\n if (value < min) {\n return 0;\n }\n\n return (gaugeLength * (value - min)) / (max - min);\n};\n\n/**\n * get x and y position for rendering inner bar in gauge\n * @method getGaugeBarStartPositions\n * @param {Object} input\n * @param {Number} input.gaugeStartX\n * @param {Number} input.gaugeStartY\n * @param {Number} input.gaugeWidth\n * @param {Number} input.gaugeHeight\n * @param {Number} input.gaugeBarLength\n * @param {String} input.orientation\n * @return {Object} position\n * @return {Number} position.gaugeBarX\n * @return {Number} position.gaugeBarY\n */\nexport const getGaugeBarStartPositions = ({\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n gaugeBarLength,\n orientation,\n}) => {\n let gaugeBarX = gaugeStartX;\n let gaugeBarY = gaugeStartY;\n\n if (orientation === 'vertical') {\n gaugeBarX += (gaugeWidth - FILL_THICKNESS) / 2;\n gaugeBarY += gaugeHeight - gaugeBarLength;\n } else {\n gaugeBarY += (gaugeHeight - FILL_THICKNESS) / 2;\n }\n\n return {\n gaugeBarX,\n gaugeBarY,\n };\n};\n\n/**\n * get width of inner bar in gauge\n * @method getGaugeBarWidth\n * @param {Object} input\n * @param {Number} input.gaugeBarLength\n * @param {String} orientation\n * @return {Number} gaugeBarWidth\n */\nexport const getGaugeBarWidth = ({ gaugeBarLength, orientation }) =>\n orientation === 'vertical' ? FILL_THICKNESS : gaugeBarLength;\n\n/**\n * get height of inner bar in gauge\n * @method getGaugeBarWidth\n * @param {Object} input\n * @param {Number} input.gaugeBarLength\n * @param {String} orientation\n * @return {Number} gaugeBarHeight\n */\nexport const getGaugeBarHeight = ({ gaugeBarLength, orientation }) =>\n orientation === 'vertical' ? gaugeBarLength : FILL_THICKNESS;\n\n/**\n * get dimensions for the fill bar in the gauge\n * @method getFillBarDimensions\n * @param {Object} input\n * @param {Number} input.gaugeLength\n * @param {Number} input.gaugeStartX\n * @param {Number} input.gaugeStartY\n * @param {Number} input.gaugeWidth,\n * @param {Number} input.gaugeHeight,\n * @param {Number} input.value,\n * @param {Number} input.min,\n * @param {Number} input.max,\n * @param {String} input.orientation\n * @return {Object} fillBarDimensions\n * @return {Number} fillBarDimensions.fillBarLength\n * @return {Number} fillBarDimensions.fillBarX\n * @return {Number} fillBarDimensions.fillBarY\n * @return {Number} fillBarDimensions.fillBarWidth\n * @return {Number} fillBarDimensions.fillBarHeight\n */\nexport const getFillBarDimensions = ({\n gaugeLength,\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n value,\n min,\n max,\n orientation,\n}) => {\n const gaugeBarLength = getGaugeBarLength({ gaugeLength, value, max, min });\n const { gaugeBarX: fillBarX, gaugeBarY: fillBarY } = getGaugeBarStartPositions({\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n gaugeBarLength,\n orientation,\n });\n const fillBarWidth = getGaugeBarWidth({ gaugeBarLength, orientation });\n const fillBarHeight = getGaugeBarHeight({ gaugeBarLength, orientation });\n\n return {\n fillBarLength: gaugeBarLength,\n fillBarX,\n fillBarY,\n fillBarWidth,\n fillBarHeight,\n };\n};\n\n/**\n * get position x and y for value marker in filler gauge\n * @method getFillerGaugeValueMarkerPositions\n * @param {Object} input\n * @param {Number} input.fillBarX\n * @param {Number} input.fillBarY\n * @param {Number} input.fillBarLength\n * @param {String} input.orientation\n * @return {Object} position\n * @return {Number} position.valueMarkerX\n * @return {Number} position.valueMarkerY\n */\nexport const getFillerGaugeValueMarkerPositions = ({ fillBarX, fillBarY, fillBarLength, orientation }) => {\n let valueMarkerX = fillBarX;\n let valueMarkerY = fillBarY;\n\n if (orientation === 'vertical') {\n valueMarkerX -= (GAUGE_THICKNESS - FILL_THICKNESS) / 4;\n } else {\n valueMarkerX += fillBarLength;\n valueMarkerY -= (GAUGE_THICKNESS - FILL_THICKNESS) / 4;\n }\n\n return {\n valueMarkerX,\n valueMarkerY,\n };\n};\n\n/**\n * get dimensions for the marker bar in the gauge\n * @method getMarkerBarDimensions\n * @param {Object} input\n * @param {Number} input.gaugeLength\n * @param {Number} input.gaugeStartX\n * @param {Number} input.gaugeStartY\n * @param {Number} input.gaugeWidth,\n * @param {Number} input.gaugeHeight,\n * @param {String} input.orientation\n * @return {Object} markerBarDimensions\n * @return {Number} markerBarDimensions.markerBarLength\n * @return {Number} markerBarDimensions.markerBarX\n * @return {Number} markerBarDimensions.markerBarY\n * @return {Number} markerBarDimensions.markerBarWidth\n * @return {Number} markerBarDimensions.markerBarHeight\n */\nexport const getMarkerBarDimensions = ({\n gaugeLength,\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n orientation,\n}) => {\n const gaugeBarLength = gaugeLength; // For marker gauge, inner marker bar spans the entire gauge\n const { gaugeBarX: markerBarX, gaugeBarY: markerBarY } = getGaugeBarStartPositions({\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n gaugeBarLength,\n orientation,\n });\n const markerBarWidth = getGaugeBarWidth({ gaugeBarLength, orientation });\n const markerBarHeight = getGaugeBarHeight({ gaugeBarLength, orientation });\n\n return {\n markerBarLength: gaugeBarLength,\n markerBarX,\n markerBarY,\n markerBarWidth,\n markerBarHeight,\n };\n};\n\n/**\n * get position x and y for value marker in marker gauge\n * @method getMarkerGaugeValueMarkerPositions\n * @param {Object} input\n * @param {Number} input.markerBarX\n * @param {Number} input.markerBarY\n * @param {Number} input.markerBarHeight\n * @param {Number} input.markerBarLength\n * @param {Number} input.value\n * @param {Number} input.min\n * @param {Number} input.max\n * @param {String} input.orientation\n * @return {Object} position\n * @return {Number} position.valueMarkerX\n * @return {Number} position.valueMarkerY\n */\nexport const getMarkerGaugeValueMarkerPositions = ({\n markerBarX,\n markerBarY,\n markerBarHeight,\n markerBarLength: gaugeLength,\n orientation,\n value,\n min,\n max,\n}) => {\n let valueMarkerX = markerBarX;\n let valueMarkerY = markerBarY;\n if (orientation === 'vertical') {\n valueMarkerY += markerBarHeight - getGaugeBarLength({ gaugeLength, value, max, min });\n valueMarkerX -= (GAUGE_THICKNESS - FILL_THICKNESS) / 4;\n } else {\n valueMarkerX += getGaugeBarLength({ gaugeLength, value, max, min });\n valueMarkerY -= (GAUGE_THICKNESS - FILL_THICKNESS) / 4;\n }\n\n return {\n valueMarkerX,\n valueMarkerY,\n };\n};\n\n/**\n * sort the ranges in ascending order\n * @method getSortedRanges\n * @param {Array} ranges\n * @return {Array} sortedRanges\n */\nexport const getSortedRanges = ranges => ranges.sort((a, b) => a.from - b.from);\n\n/**\n * validate whether ranges prop is valid - continuous ranges, range.to < range.from, range.from != range.to\n * @method validateRanges\n * @param {Array} ranges\n * @return {String} error\n */\nexport const validateRanges = ranges => {\n if (!ranges.length) {\n return _('Prop \"ranges\" is missing entries');\n }\n\n // check whether a range has \"from\" >= \"to\" eg: 10 - 10, 100 - 10, -20 - -10 are invalid\n if (ranges.some(range => range.from >= range.to)) {\n return _('Prop \"ranges\" has invalid entries: invalid range');\n }\n\n // check whether ranges have duplicate \"from/to\" eg: 0 - 50, 25 - 50\n if (ranges.length !== uniqBy(ranges, 'to').length || ranges.length !== uniqBy(ranges, 'from').length) {\n return _('Prop \"ranges\" has invalid entries: duplicate values');\n }\n\n const sortedRanges = getSortedRanges(ranges);\n\n // check whether ranges are continuous eg: 0 - 10, 10 - 20, 20 - 30\n for (let i = 1; i < sortedRanges.length; i += 1) {\n if (sortedRanges[i].from !== sortedRanges[i - 1].to) {\n return _('Prop \"ranges\" has invalid entries: discontinuous ranges');\n }\n }\n\n return null;\n};\n\n/**\n * calculate min and max value of gauge\n * @method getGaugeRange\n * @param {Array} ranges\n * @return {Object} gaugeRange\n * @return {Number} gaugeRange.min\n * @return {Number} gaugeRange.max\n */\nexport const getGaugeRange = ranges => {\n const min = Math.min(...ranges.map(range => range.from));\n const max = Math.max(...ranges.map(range => range.to));\n return { min, max };\n};\n\n/**\n * calculate stop offsets for linear gradient\n * @method getGradientStopOffsets\n * @param {Array} ranges\n * @param {String} orientation\n * @return {Array} cumulativeOffsets\n */\nexport const getGradientStopOffsets = ({ ranges, orientation }) => {\n const { min, max } = getGaugeRange(ranges);\n const offsetScale = (GRADIENT_STOP_OFFSET_MAX - GRADIENT_STOP_OFFSET_MIN) / (max - min);\n let offsets = ranges.map(range => Math.abs(range.from - range.to) * offsetScale);\n // When orientation is vertical, since the gauge starts from bottom to top, linear gradient should be reversed\n offsets = orientation === 'vertical' ? offsets.reverse() : offsets;\n const cumulativeOffsets = [];\n offsets.reduce((accumulator, currentValue, idx) => {\n cumulativeOffsets[idx] = accumulator + currentValue;\n return cumulativeOffsets[idx];\n }, 0);\n return cumulativeOffsets;\n};\n\n/**\n * calculate stop colors for linear gradient\n * @method getGradientStopColors\n * @param {Array} ranges\n * @param {String} orientation\n * @return {Array} stopColors\n */\nexport const getGradientStopColors = ({ ranges, orientation }) => {\n const stopColors = ranges.map(range => range.value);\n // When orientation is vertical, since the gauge starts from bottom to top, linear gradient should be reversed\n return orientation === 'vertical' ? stopColors.reverse() : stopColors;\n};\n\n/**\n * calculate linear gradient stops from ranges\n * @method getGradientStops\n * @param {Object} input\n * @param {Array} ranges\n * @param {String} orientation\n * @return {Array} stops\n */\nexport const getGradientStops = ({ ranges, orientation }) => {\n const stops = [];\n const offsets = getGradientStopOffsets({ ranges, orientation });\n const stopColors = getGradientStopColors({ ranges, orientation });\n // Initialize stops with the first color stop\n stops.push({ offset: `${offsets[0]}%`, stopColor: stopColors[0] });\n // Add the remaining color stops with gradient change at each stop\n for (let i = 1; i < ranges.length; i += 1) {\n stops.push({ offset: `${offsets[i - 1]}%`, stopColor: stopColors[i] });\n stops.push({ offset: `${offsets[i]}%`, stopColor: stopColors[i] });\n }\n return stops;\n};\n\n/**\n * calculate linear gradient dimensions\n * @method getGradientDimensions\n * @param {String} orientation\n * @return {Object} dimensions\n * @return {String} dimensions.x1\n * @return {String} dimensions.y1\n * @return {String} dimensions.x2\n * @return {String} dimensions.y2\n */\nexport const getGradientDimensions = orientation => {\n const x1 = '0%';\n const y1 = '0%';\n const x2 = orientation === 'horizontal' ? '100%' : '0%';\n const y2 = orientation === 'horizontal' ? '0%' : '100%';\n return { x1, y1, x2, y2 };\n};\n\ninterface GaugeOptions {\n [key: string]: any;\n}\n\n// map for new options names to old option names\nconst gaugeOptionsMapping = {\n majorTickInterval: 'majorUnit',\n gaugeRanges: 'ranges',\n};\n\n/**\n * Helper method to update the option names which can be mapped to pure component options\n * @method mapToOldKey\n * @param {Object} options\n * @returns {Object}\n */\nexport const mapToOldKey = (options: GaugeOptions): GaugeOptions =>\n mapKeys(options, (val, key) => (gaugeOptionsMapping[key] ? gaugeOptionsMapping[key] : key));\n\ntype LabelOrValue = 'label' | 'value';\n\n/**\n * Helper method to map labelDisplay and valueDisplay options to pure component option names\n * @method mapToOldKey\n * @param {string} labelOrValue\n * @param {Object} options\n * @returns {Object}\n */\nexport const mapValueLabelDisplay = (labelOrValue: LabelOrValue, options: GaugeOptions): GaugeOptions => {\n const rangeOrValue: string = labelOrValue === 'value' ? 'Value' : 'Range';\n const showKey: string = labelOrValue === 'value' ? 'showValue' : 'showLabels';\n const percentKey = `usePercentage${rangeOrValue}`;\n const optionString = `${labelOrValue}Display`;\n const newOptions = { ...options };\n if (newOptions[optionString]) {\n if (newOptions[optionString] === 'number') {\n newOptions[showKey] = true;\n newOptions[percentKey] = false;\n } else if (newOptions[optionString] === 'percentage') {\n newOptions[showKey] = true;\n newOptions[percentKey] = true;\n } else {\n newOptions[showKey] = false;\n newOptions[percentKey] = false;\n }\n }\n return omit(newOptions, [optionString]);\n};\n\n/**\n * Chained helper for mapping the option properties (and values) we expose in config.ts into property values that pure component accepts\n * This is for options that has new key name and can not directly be mapped with pure component props\n * @method convertToGaugeProperties\n * @param {Object} originalOptions\n * @returns {Object}\n */\nexport const convertToGaugeProperties = (originalOptions: GaugeOptions): GaugeOptions =>\n chain(mapToOldKey(originalOptions))\n .thru(options => mapValueLabelDisplay('label', options))\n .thru(options => mapValueLabelDisplay('value', options))\n .value();\n","module.exports = require(\"@splunk/visualizations-shared/colorConstants\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///./src/common/gaugeUtils.ts","webpack:///external \"@splunk/visualizations-shared/colorConstants\""],"names":[],"mappings":"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","file":"gaugeUtils.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 = 78);\n","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"@splunk/ui-utils/i18n\");","import { chain, mapKeys, omit, uniqBy } from 'lodash';\nimport {\n SEMANTIC_SUCCESS,\n SEMANTIC_WARNING,\n SEMANTIC_ERROR,\n} from '@splunk/visualizations-shared/colorConstants';\nimport { _ } from '@splunk/ui-utils/i18n';\n\nexport const GAUGE_THICKNESS = 50;\nexport const FILL_THICKNESS = 38;\nconst GRADIENT_STOP_OFFSET_MIN = 0;\nconst GRADIENT_STOP_OFFSET_MAX = 100;\n\n/**\n * get width for the whole gauge viz for horizontal or vertical view\n * @method getGaugeWidth\n * @param {Object} input\n * @param {Number} containerWidth\n * @param {String} orientation\n * @return {Number} width\n */\nexport const getGaugeWidth = ({ containerWidth, orientation }) =>\n orientation === 'vertical' ? GAUGE_THICKNESS : containerWidth * 0.8;\n\n/**\n * get height for the whole gauge viz for horizontal or vertical view\n * @method getGaugeHeight\n * @param {Object} input\n * @param {Number} containerHeight\n * @param {String} orientation\n * @return {Number} height\n */\nexport const getGaugeHeight = ({ containerHeight, orientation }) =>\n orientation === 'vertical' ? containerHeight * 0.8 : GAUGE_THICKNESS;\n\n/**\n * get how long the gauge shoud be.\n * In horizontal view, gauge length equals to gauge width. In vertical view, it equals to gauge height.\n * @method getGaugeLength\n * @param {Object} input\n * @param {Number} input.containerWidth\n * @param {Number} input.containerHeight\n * @param {String} input.orientation\n * @return {Number} gaugeLength\n */\nexport const getGaugeLength = ({ containerWidth, containerHeight, orientation }) =>\n orientation === 'vertical'\n ? getGaugeHeight({ containerHeight, orientation })\n : getGaugeWidth({ containerWidth, orientation });\n\n/**\n * get start x and y for rendering gauge\n * @method getGaugeStartPosition\n * @param {Object} input\n * @param {Number} containerWidth\n * @param {Number} containerHeight\n * @param {Number} gaugeLength\n * @param {String} orientation\n * @return {Object} position\n * @return {Number} position.gaugeStartX\n * @return {Number} position.gaugeStartY\n */\nexport const getGaugeStartPosition = ({ containerWidth, containerHeight, gaugeLength, orientation }) => {\n // for horizontal view\n let gaugeStartX = (containerWidth - gaugeLength) / 2.0;\n let gaugeStartY = (containerHeight - GAUGE_THICKNESS) / 2.0;\n\n if (orientation === 'vertical') {\n gaugeStartX = (containerWidth - GAUGE_THICKNESS) / 2.0;\n gaugeStartY = (containerHeight - gaugeLength) / 2.0;\n }\n\n return { gaugeStartX, gaugeStartY };\n};\n\n/**\n * get dimensions for the whole gauge viz,\n * which can be useful to calculate background bar and major ticks positions.\n * @method getGaugeDimensions\n * @param {Object} input\n * @param {Number} input.containerWidth\n * @param {Number} input.containerHeight\n * @param {String} input.orientation 'horizontal' or 'vertical'\n * @return {Object} gaugeDimensions\n * @return {Number} gaugeDimensions.gaugeLength how long the gauge shoud be in horizontal or vertical orientation.\n * @return {Number} gaugeDimensions.gaugeStartX start x to render gauge\n * @return {Number} gaugeDimensions.gaugeStartY start y to render gauge\n * @return {Number} gaugeDimensions.gaugeWidth natural width of gauge\n * @return {Number} gaugeDimensions.gaugeHeight natural height of gauge\n */\nexport const getGaugeDimensions = ({ containerWidth, containerHeight, orientation }) => {\n const gaugeLength = getGaugeLength({ containerWidth, containerHeight, orientation });\n const { gaugeStartX, gaugeStartY } = getGaugeStartPosition({\n containerWidth,\n containerHeight,\n gaugeLength,\n orientation,\n });\n const gaugeWidth = getGaugeWidth({ containerWidth, orientation });\n const gaugeHeight = getGaugeHeight({ containerHeight, orientation });\n\n return {\n gaugeLength,\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n };\n};\n\n/**\n * if gaugeColor is not specified, auto assign a gauge color to the fill bar\n * based on how much percentage the value is taken between min and max\n * @method assignGaugeColor\n * @params\n * */\nexport const assignGaugeColor = ({ value, min, max }) => {\n const rate = (value - min) / (max - min);\n\n if (rate <= 0.3) {\n return SEMANTIC_SUCCESS;\n }\n if (rate > 0.3 && rate <= 0.6) {\n return SEMANTIC_WARNING;\n }\n\n return SEMANTIC_ERROR;\n};\n\n/**\n * get inner bar length in gauge\n * @method getGaugeBarLength\n * @param {Object} input\n * @param {Number} input.gaugeLength\n * @param {Number} input.value\n * @param {Number} input.min\n * @param {Number} input.max\n * @return {Number} gaugeBarLength\n */\nexport const getGaugeBarLength = ({ gaugeLength, value, min, max }) => {\n if (max < min) {\n return null;\n }\n\n if (value >= max) {\n return gaugeLength;\n }\n\n if (value < min) {\n return 0;\n }\n\n return (gaugeLength * (value - min)) / (max - min);\n};\n\n/**\n * get x and y position for rendering inner bar in gauge\n * @method getGaugeBarStartPositions\n * @param {Object} input\n * @param {Number} input.gaugeStartX\n * @param {Number} input.gaugeStartY\n * @param {Number} input.gaugeWidth\n * @param {Number} input.gaugeHeight\n * @param {Number} input.gaugeBarLength\n * @param {String} input.orientation\n * @return {Object} position\n * @return {Number} position.gaugeBarX\n * @return {Number} position.gaugeBarY\n */\nexport const getGaugeBarStartPositions = ({\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n gaugeBarLength,\n orientation,\n}) => {\n let gaugeBarX = gaugeStartX;\n let gaugeBarY = gaugeStartY;\n\n if (orientation === 'vertical') {\n gaugeBarX += (gaugeWidth - FILL_THICKNESS) / 2;\n gaugeBarY += gaugeHeight - gaugeBarLength;\n } else {\n gaugeBarY += (gaugeHeight - FILL_THICKNESS) / 2;\n }\n\n return {\n gaugeBarX,\n gaugeBarY,\n };\n};\n\n/**\n * get width of inner bar in gauge\n * @method getGaugeBarWidth\n * @param {Object} input\n * @param {Number} input.gaugeBarLength\n * @param {String} orientation\n * @return {Number} gaugeBarWidth\n */\nexport const getGaugeBarWidth = ({ gaugeBarLength, orientation }) =>\n orientation === 'vertical' ? FILL_THICKNESS : gaugeBarLength;\n\n/**\n * get height of inner bar in gauge\n * @method getGaugeBarWidth\n * @param {Object} input\n * @param {Number} input.gaugeBarLength\n * @param {String} orientation\n * @return {Number} gaugeBarHeight\n */\nexport const getGaugeBarHeight = ({ gaugeBarLength, orientation }) =>\n orientation === 'vertical' ? gaugeBarLength : FILL_THICKNESS;\n\n/**\n * get dimensions for the fill bar in the gauge\n * @method getFillBarDimensions\n * @param {Object} input\n * @param {Number} input.gaugeLength\n * @param {Number} input.gaugeStartX\n * @param {Number} input.gaugeStartY\n * @param {Number} input.gaugeWidth,\n * @param {Number} input.gaugeHeight,\n * @param {Number} input.value,\n * @param {Number} input.min,\n * @param {Number} input.max,\n * @param {String} input.orientation\n * @return {Object} fillBarDimensions\n * @return {Number} fillBarDimensions.fillBarLength\n * @return {Number} fillBarDimensions.fillBarX\n * @return {Number} fillBarDimensions.fillBarY\n * @return {Number} fillBarDimensions.fillBarWidth\n * @return {Number} fillBarDimensions.fillBarHeight\n */\nexport const getFillBarDimensions = ({\n gaugeLength,\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n value,\n min,\n max,\n orientation,\n}) => {\n const gaugeBarLength = getGaugeBarLength({ gaugeLength, value, max, min });\n const { gaugeBarX: fillBarX, gaugeBarY: fillBarY } = getGaugeBarStartPositions({\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n gaugeBarLength,\n orientation,\n });\n const fillBarWidth = getGaugeBarWidth({ gaugeBarLength, orientation });\n const fillBarHeight = getGaugeBarHeight({ gaugeBarLength, orientation });\n\n return {\n fillBarLength: gaugeBarLength,\n fillBarX,\n fillBarY,\n fillBarWidth,\n fillBarHeight,\n };\n};\n\n/**\n * get position x and y for value marker in filler gauge\n * @method getFillerGaugeValueMarkerPositions\n * @param {Object} input\n * @param {Number} input.fillBarX\n * @param {Number} input.fillBarY\n * @param {Number} input.fillBarLength\n * @param {String} input.orientation\n * @return {Object} position\n * @return {Number} position.valueMarkerX\n * @return {Number} position.valueMarkerY\n */\nexport const getFillerGaugeValueMarkerPositions = ({ fillBarX, fillBarY, fillBarLength, orientation }) => {\n let valueMarkerX = fillBarX;\n let valueMarkerY = fillBarY;\n\n if (orientation === 'vertical') {\n valueMarkerX -= (GAUGE_THICKNESS - FILL_THICKNESS) / 4;\n } else {\n valueMarkerX += fillBarLength;\n valueMarkerY -= (GAUGE_THICKNESS - FILL_THICKNESS) / 4;\n }\n\n return {\n valueMarkerX,\n valueMarkerY,\n };\n};\n\n/**\n * get dimensions for the marker bar in the gauge\n * @method getMarkerBarDimensions\n * @param {Object} input\n * @param {Number} input.gaugeLength\n * @param {Number} input.gaugeStartX\n * @param {Number} input.gaugeStartY\n * @param {Number} input.gaugeWidth,\n * @param {Number} input.gaugeHeight,\n * @param {String} input.orientation\n * @return {Object} markerBarDimensions\n * @return {Number} markerBarDimensions.markerBarLength\n * @return {Number} markerBarDimensions.markerBarX\n * @return {Number} markerBarDimensions.markerBarY\n * @return {Number} markerBarDimensions.markerBarWidth\n * @return {Number} markerBarDimensions.markerBarHeight\n */\nexport const getMarkerBarDimensions = ({\n gaugeLength,\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n orientation,\n}) => {\n const gaugeBarLength = gaugeLength; // For marker gauge, inner marker bar spans the entire gauge\n const { gaugeBarX: markerBarX, gaugeBarY: markerBarY } = getGaugeBarStartPositions({\n gaugeStartX,\n gaugeStartY,\n gaugeWidth,\n gaugeHeight,\n gaugeBarLength,\n orientation,\n });\n const markerBarWidth = getGaugeBarWidth({ gaugeBarLength, orientation });\n const markerBarHeight = getGaugeBarHeight({ gaugeBarLength, orientation });\n\n return {\n markerBarLength: gaugeBarLength,\n markerBarX,\n markerBarY,\n markerBarWidth,\n markerBarHeight,\n };\n};\n\n/**\n * get position x and y for value marker in marker gauge\n * @method getMarkerGaugeValueMarkerPositions\n * @param {Object} input\n * @param {Number} input.markerBarX\n * @param {Number} input.markerBarY\n * @param {Number} input.markerBarHeight\n * @param {Number} input.markerBarLength\n * @param {Number} input.value\n * @param {Number} input.min\n * @param {Number} input.max\n * @param {String} input.orientation\n * @return {Object} position\n * @return {Number} position.valueMarkerX\n * @return {Number} position.valueMarkerY\n */\nexport const getMarkerGaugeValueMarkerPositions = ({\n markerBarX,\n markerBarY,\n markerBarHeight,\n markerBarLength: gaugeLength,\n orientation,\n value,\n min,\n max,\n}) => {\n let valueMarkerX = markerBarX;\n let valueMarkerY = markerBarY;\n if (orientation === 'vertical') {\n valueMarkerY += markerBarHeight - getGaugeBarLength({ gaugeLength, value, max, min });\n valueMarkerX -= (GAUGE_THICKNESS - FILL_THICKNESS) / 4;\n } else {\n valueMarkerX += getGaugeBarLength({ gaugeLength, value, max, min });\n valueMarkerY -= (GAUGE_THICKNESS - FILL_THICKNESS) / 4;\n }\n\n return {\n valueMarkerX,\n valueMarkerY,\n };\n};\n\n/**\n * sort the ranges in ascending order\n * @method getSortedRanges\n * @param {Array} ranges\n * @return {Array} sortedRanges\n */\nexport const getSortedRanges = ranges => ranges.sort((a, b) => a.from - b.from);\n\n/**\n * validate whether ranges prop is valid - continuous ranges, range.to < range.from, range.from != range.to\n * @method validateRanges\n * @param {Array} ranges\n * @return {String} error\n */\nexport const validateRanges = ranges => {\n if (!ranges.length) {\n return _('Prop \"ranges\" is missing entries');\n }\n\n // check whether a range has \"from\" >= \"to\" eg: 10 - 10, 100 - 10, -20 - -10 are invalid\n if (ranges.some(range => range.from >= range.to)) {\n return _('Prop \"ranges\" has invalid entries: invalid range');\n }\n\n // check whether ranges have duplicate \"from/to\" eg: 0 - 50, 25 - 50\n if (ranges.length !== uniqBy(ranges, 'to').length || ranges.length !== uniqBy(ranges, 'from').length) {\n return _('Prop \"ranges\" has invalid entries: duplicate values');\n }\n\n const sortedRanges = getSortedRanges(ranges);\n\n // check whether ranges are continuous eg: 0 - 10, 10 - 20, 20 - 30\n for (let i = 1; i < sortedRanges.length; i += 1) {\n if (sortedRanges[i].from !== sortedRanges[i - 1].to) {\n return _('Prop \"ranges\" has invalid entries: discontinuous ranges');\n }\n }\n\n return null;\n};\n\n/**\n * calculate min and max value of gauge\n * @method getGaugeRange\n * @param {Array} ranges\n * @return {Object} gaugeRange\n * @return {Number} gaugeRange.min\n * @return {Number} gaugeRange.max\n */\nexport const getGaugeRange = ranges => {\n const min = Math.min(...ranges.map(range => range.from));\n const max = Math.max(...ranges.map(range => range.to));\n return { min, max };\n};\n\n/**\n * calculate stop offsets for linear gradient\n * @method getGradientStopOffsets\n * @param {Array} ranges\n * @param {String} orientation\n * @return {Array} cumulativeOffsets\n */\nexport const getGradientStopOffsets = ({ ranges, orientation }) => {\n const { min, max } = getGaugeRange(ranges);\n const offsetScale = (GRADIENT_STOP_OFFSET_MAX - GRADIENT_STOP_OFFSET_MIN) / (max - min);\n let offsets = ranges.map(range => Math.abs(range.from - range.to) * offsetScale);\n // When orientation is vertical, since the gauge starts from bottom to top, linear gradient should be reversed\n offsets = orientation === 'vertical' ? offsets.reverse() : offsets;\n const cumulativeOffsets = [];\n offsets.reduce((accumulator, currentValue, idx) => {\n cumulativeOffsets[idx] = accumulator + currentValue;\n return cumulativeOffsets[idx];\n }, 0);\n return cumulativeOffsets;\n};\n\n/**\n * calculate stop colors for linear gradient\n * @method getGradientStopColors\n * @param {Array} ranges\n * @param {String} orientation\n * @return {Array} stopColors\n */\nexport const getGradientStopColors = ({ ranges, orientation }) => {\n const stopColors = ranges.map(range => range.value);\n // When orientation is vertical, since the gauge starts from bottom to top, linear gradient should be reversed\n return orientation === 'vertical' ? stopColors.reverse() : stopColors;\n};\n\n/**\n * calculate linear gradient stops from ranges\n * @method getGradientStops\n * @param {Object} input\n * @param {Array} ranges\n * @param {String} orientation\n * @return {Array} stops\n */\nexport const getGradientStops = ({ ranges, orientation }) => {\n const stops = [];\n const offsets = getGradientStopOffsets({ ranges, orientation });\n const stopColors = getGradientStopColors({ ranges, orientation });\n // Initialize stops with the first color stop\n stops.push({ offset: `${offsets[0]}%`, stopColor: stopColors[0] });\n // Add the remaining color stops with gradient change at each stop\n for (let i = 1; i < ranges.length; i += 1) {\n stops.push({ offset: `${offsets[i - 1]}%`, stopColor: stopColors[i] });\n stops.push({ offset: `${offsets[i]}%`, stopColor: stopColors[i] });\n }\n return stops;\n};\n\n/**\n * calculate linear gradient dimensions\n * @method getGradientDimensions\n * @param {String} orientation\n * @return {Object} dimensions\n * @return {String} dimensions.x1\n * @return {String} dimensions.y1\n * @return {String} dimensions.x2\n * @return {String} dimensions.y2\n */\nexport const getGradientDimensions = orientation => {\n const x1 = '0%';\n const y1 = '0%';\n const x2 = orientation === 'horizontal' ? '100%' : '0%';\n const y2 = orientation === 'horizontal' ? '0%' : '100%';\n return { x1, y1, x2, y2 };\n};\n\ninterface GaugeOptions {\n [key: string]: any;\n}\n\n// map for new options names to old option names\nconst gaugeOptionsMapping = {\n majorTickInterval: 'majorUnit',\n gaugeRanges: 'ranges',\n};\n\n/**\n * Helper method to update the option names which can be mapped to pure component options\n * @method mapToOldKey\n * @param {Object} options\n * @returns {Object}\n */\nexport const mapToOldKey = (options: GaugeOptions): GaugeOptions =>\n mapKeys(options, (val, key) => (gaugeOptionsMapping[key] ? gaugeOptionsMapping[key] : key));\n\ntype LabelOrValue = 'label' | 'value';\n\n/**\n * Helper method to map labelDisplay and valueDisplay options to pure component option names\n * @method mapToOldKey\n * @param {string} labelOrValue\n * @param {Object} options\n * @returns {Object}\n */\nexport const mapValueLabelDisplay = (labelOrValue: LabelOrValue, options: GaugeOptions): GaugeOptions => {\n const rangeOrValue: string = labelOrValue === 'value' ? 'Value' : 'Range';\n const showKey: string = labelOrValue === 'value' ? 'showValue' : 'showLabels';\n const percentKey = `usePercentage${rangeOrValue}`;\n const optionString = `${labelOrValue}Display`;\n const newOptions = { ...options };\n if (newOptions[optionString]) {\n if (newOptions[optionString] === 'number') {\n newOptions[showKey] = true;\n newOptions[percentKey] = false;\n } else if (newOptions[optionString] === 'percentage') {\n newOptions[showKey] = true;\n newOptions[percentKey] = true;\n } else {\n newOptions[showKey] = false;\n newOptions[percentKey] = false;\n }\n }\n return omit(newOptions, [optionString]);\n};\n\n/**\n * Chained helper for mapping the option properties (and values) we expose in config.ts into property values that pure component accepts\n * This is for options that has new key name and can not directly be mapped with pure component props\n * @method convertToGaugeProperties\n * @param {Object} originalOptions\n * @returns {Object}\n */\nexport const convertToGaugeProperties = (originalOptions: GaugeOptions): GaugeOptions =>\n chain(mapToOldKey(originalOptions))\n .thru(options => mapValueLabelDisplay('label', options))\n .thru(options => mapValueLabelDisplay('value', options))\n .value();\n","module.exports = require(\"@splunk/visualizations-shared/colorConstants\");"],"sourceRoot":""}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Copyright © 2018 Splunk Inc.
2
+ * Copyright © 2024 Splunk Inc.
3
3
  * SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
4
4
  * in part without a valid written license from Splunk Inc. is PROHIBITED.
5
5
  */
@@ -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 = 72);
90
+ /******/ return __webpack_require__(__webpack_require__.s = 80);
91
91
  /******/ })
92
92
  /************************************************************************/
93
93
  /******/ ({
@@ -99,45 +99,53 @@ module.exports = require("styled-components");
99
99
 
100
100
  /***/ }),
101
101
 
102
- /***/ 23:
102
+ /***/ 3:
103
103
  /***/ (function(module, exports) {
104
104
 
105
- module.exports = require("@babel/runtime/helpers/taggedTemplateLiteral");
105
+ module.exports = require("lodash");
106
106
 
107
107
  /***/ }),
108
108
 
109
- /***/ 27:
109
+ /***/ 34:
110
110
  /***/ (function(module, exports) {
111
111
 
112
- module.exports = require("@splunk/themes/variables");
112
+ module.exports = require("@babel/runtime/helpers/taggedTemplateLiteral");
113
113
 
114
114
  /***/ }),
115
115
 
116
- /***/ 3:
116
+ /***/ 38:
117
117
  /***/ (function(module, exports) {
118
118
 
119
- module.exports = require("lodash");
119
+ module.exports = require("@splunk/themes/variables");
120
120
 
121
121
  /***/ }),
122
122
 
123
- /***/ 72:
123
+ /***/ 80:
124
124
  /***/ (function(module, exports, __webpack_require__) {
125
125
 
126
126
  "use strict";
127
127
 
128
128
 
129
- var _taggedTemplateLiteral = __webpack_require__(23);
129
+ var _taggedTemplateLiteral = __webpack_require__(34);
130
+
130
131
  var _templateObject;
132
+
131
133
  Object.defineProperty(exports, "__esModule", {
132
134
  value: true
133
135
  });
134
136
  exports.getStyledShape = exports.mapToOldKey = void 0;
137
+
135
138
  var lodash_1 = __webpack_require__(3);
139
+
136
140
  var styled_components_1 = __webpack_require__(2);
137
- var pick_1 = __webpack_require__(73);
138
- var variables_1 = __webpack_require__(27);
139
- var propUtils_1 = __webpack_require__(74);
140
- // map for new options names to old option names
141
+
142
+ var pick_1 = __webpack_require__(81);
143
+
144
+ var variables_1 = __webpack_require__(38);
145
+
146
+ var propUtils_1 = __webpack_require__(82); // map for new options names to old option names
147
+
148
+
141
149
  var shapeOptionsMapping = {
142
150
  fillColor: 'fill',
143
151
  strokeColor: 'stroke',
@@ -150,17 +158,20 @@ var shapeOptionsMapping = {
150
158
  * @param {Object} options
151
159
  * @returns {Object}
152
160
  */
161
+
153
162
  var mapToOldKey = function mapToOldKey(options) {
154
163
  return (0, lodash_1.mapKeys)(options, function (val, key) {
155
164
  return shapeOptionsMapping[key] ? shapeOptionsMapping[key] : key;
156
165
  });
157
166
  };
167
+
158
168
  exports.mapToOldKey = mapToOldKey;
159
169
  /**
160
170
  * Helper method to get styled component for ellipse or rectangle
161
171
  * @method mapToOldKey
162
172
  * @param {Shape} shape
163
173
  */
174
+
164
175
  var getStyledShape = function getStyledShape(shape) {
165
176
  return (0, styled_components_1.default)(shape)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n fill: ", ";\n stroke: ", ";\n cursor: ", ";\n"])), function (props) {
166
177
  return props.fill && (0, propUtils_1.formatColor)(props.fill) || (0, pick_1.default)({
@@ -182,18 +193,19 @@ var getStyledShape = function getStyledShape(shape) {
182
193
  return props.onClick ? 'pointer' : 'inherit';
183
194
  });
184
195
  };
196
+
185
197
  exports.getStyledShape = getStyledShape;
186
198
 
187
199
  /***/ }),
188
200
 
189
- /***/ 73:
201
+ /***/ 81:
190
202
  /***/ (function(module, exports) {
191
203
 
192
204
  module.exports = require("@splunk/themes/pick");
193
205
 
194
206
  /***/ }),
195
207
 
196
- /***/ 74:
208
+ /***/ 82:
197
209
  /***/ (function(module, exports) {
198
210
 
199
211
  module.exports = require("@splunk/visualizations-shared/propUtils");
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"styled-components\"","webpack:///external \"@babel/runtime/helpers/taggedTemplateLiteral\"","webpack:///external \"@splunk/themes/variables\"","webpack:///external \"lodash\"","webpack:///./src/common/shapeUtils.ts","webpack:///external \"@splunk/themes/pick\"","webpack:///external \"@splunk/visualizations-shared/propUtils\""],"names":["lodash_1","require","styled_components_1","pick_1","variables_1","propUtils_1","shapeOptionsMapping","fillColor","strokeColor","strokeDashStyle","strokeJoinStyle","mapToOldKey","options","mapKeys","val","key","exports","getStyledShape","shape","default","_templateObject","_taggedTemplateLiteral","props","fill","formatColor","enterprise","light","gray80","dark","gray25","prisma","backgroundColorSidebar","stroke","textColor","neutral500","onClick"],"mappings":";;;;;;;QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;AClFA,8C;;;;;;;ACAA,yE;;;;;;;ACAA,qD;;;;;;;ACAA,mC;;;;;;;;;;;;;;;;ACAA,IAAAA,QAAA,GAAAC,mBAAA;AACA,IAAAC,mBAAA,GAAAD,mBAAA;AACA,IAAAE,MAAA,GAAAF,mBAAA;AACA,IAAAG,WAAA,GAAAH,mBAAA;AACA,IAAAI,WAAA,GAAAJ,mBAAA;AAMA;AACA,IAAMK,mBAAmB,GAAG;EACxBC,SAAS,EAAE,MAAM;EACjBC,WAAW,EAAE,QAAQ;EACrBC,eAAe,EAAE,iBAAiB;EAClCC,eAAe,EAAE;CACpB;AAED;;;;;;AAMO,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAIC,OAAqB;EAAA,OAC7C,IAAAZ,QAAA,CAAAa,OAAO,EAACD,OAAO,EAAE,UAACE,GAAG,EAAEC,GAAG;IAAA,OAAMT,mBAAmB,CAACS,GAAG,CAAC,GAAGT,mBAAmB,CAACS,GAAG,CAAC,GAAGA,GAAG;EAAA,CAAC,CAAC;AAAA;AADlFC,OAAA,CAAAL,WAAW,GAAAA,WAAA;AAKxB;;;;;AAKO,IAAMM,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,KAAY;EAAA,OAAK,IAAAhB,mBAAA,CAAAiB,OAAM,EAACD,KAAK,CAAC,CAAAE,eAAA,KAAAA,eAAA,GAAAC,sBAAA,kEACjD,UAAAC,KAAK;IAAA,OACRA,KAAK,CAACC,IAAI,IAAI,IAAAlB,WAAA,CAAAmB,WAAW,EAACF,KAAK,CAACC,IAAI,CAAC,IACtC,IAAApB,MAAA,CAAAgB,OAAI,EAAC;MACDM,UAAU,EAAE;QACRC,KAAK,EAAEtB,WAAA,CAAAe,OAAS,CAACQ,MAAM;QACvBC,IAAI,EAAExB,WAAA,CAAAe,OAAS,CAACU;OACnB;MACDC,MAAM,EAAE1B,WAAA,CAAAe,OAAS,CAACY;KACrB,CAAC,CAACT,KAAK,CAAC;EAAA,GACH,UAAAA,KAAK;IAAA,OACVA,KAAK,CAACU,MAAM,IAAI,IAAA3B,WAAA,CAAAmB,WAAW,EAACF,KAAK,CAACU,MAAM,CAAC,IAC1C,IAAA7B,MAAA,CAAAgB,OAAI,EAAC;MACDM,UAAU,EAAE;QACRG,IAAI,EAAExB,WAAA,CAAAe,OAAS,CAACQ,MAAM;QACtBD,KAAK,EAAEtB,WAAA,CAAAe,OAAS,CAACc;OACpB;MACDH,MAAM,EAAE1B,WAAA,CAAAe,OAAS,CAACe;KACrB,CAAC,CAACZ,KAAK,CAAC;EAAA,GACH,UAAAA,KAAK;IAAA,OAAKA,KAAK,CAACa,OAAO,GAAG,SAAS,GAAG,SAAS;EAAA,CAAC;AAAA,CAC7D;AApBYnB,OAAA,CAAAC,cAAc,GAAAA,cAAA,C;;;;;;;AClC3B,gD;;;;;;;ACAA,oE","file":"shapeUtils.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 = 72);\n","module.exports = require(\"styled-components\");","module.exports = require(\"@babel/runtime/helpers/taggedTemplateLiteral\");","module.exports = require(\"@splunk/themes/variables\");","module.exports = require(\"lodash\");","import { mapKeys } from 'lodash';\nimport styled from 'styled-components';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { formatColor } from '@splunk/visualizations-shared/propUtils';\n\ninterface ShapeOptions {\n [key: string]: any;\n}\n\n// map for new options names to old option names\nconst shapeOptionsMapping = {\n fillColor: 'fill',\n strokeColor: 'stroke',\n strokeDashStyle: 'strokeDasharray',\n strokeJoinStyle: 'strokeLinejoin',\n};\n\n/**\n * Helper method to update the option names to old option names\n * @method mapToOldKey\n * @param {Object} options\n * @returns {Object}\n */\nexport const mapToOldKey = (options: ShapeOptions): ShapeOptions =>\n mapKeys(options, (val, key) => (shapeOptionsMapping[key] ? shapeOptionsMapping[key] : key));\n\ntype Shape = 'ellipse' | 'rect';\n\n/**\n * Helper method to get styled component for ellipse or rectangle\n * @method mapToOldKey\n * @param {Shape} shape\n */\nexport const getStyledShape = (shape: Shape) => styled(shape)`\n fill: ${props =>\n (props.fill && formatColor(props.fill)) ||\n pick({\n enterprise: {\n light: variables.gray80,\n dark: variables.gray25,\n },\n prisma: variables.backgroundColorSidebar,\n })(props)};\n stroke: ${props =>\n (props.stroke && formatColor(props.stroke)) ||\n pick({\n enterprise: {\n dark: variables.gray80,\n light: variables.textColor,\n },\n prisma: variables.neutral500,\n })(props)};\n cursor: ${props => (props.onClick ? 'pointer' : 'inherit')};\n`;\n","module.exports = require(\"@splunk/themes/pick\");","module.exports = require(\"@splunk/visualizations-shared/propUtils\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"styled-components\"","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/taggedTemplateLiteral\"","webpack:///external \"@splunk/themes/variables\"","webpack:///./src/common/shapeUtils.ts","webpack:///external \"@splunk/themes/pick\"","webpack:///external \"@splunk/visualizations-shared/propUtils\""],"names":[],"mappings":";;;;;;;QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;AClFA,8C;;;;;;;ACAA,mC;;;;;;;ACAA,yE;;;;;;;ACAA,qD;;;;;;;;;;;;;;;;;;;ACAA;;AACA;;AACA;;AACA;;AACA,0C,CAMA;;;AACA,IAAM,mBAAmB,GAAG;AACxB,WAAS,EAAE,MADa;AAExB,aAAW,EAAE,QAFW;AAGxB,iBAAe,EAAE,iBAHO;AAIxB,iBAAe,EAAE;AAJO,CAA5B;AAOA;;;;;AAKG;;AACI,IAAM,WAAW,GAAG,SAAd,WAAc,CAAC,OAAD;AAAA,SACvB,sBAAQ,OAAR,EAAiB,UAAC,GAAD,EAAM,GAAN;AAAA,WAAe,mBAAmB,CAAC,GAAD,CAAnB,GAA2B,mBAAmB,CAAC,GAAD,CAA9C,GAAsD,GAArE;AAAA,GAAjB,CADuB;AAAA,CAApB;;AAAM,sBAAW,WAAX;AAKb;;;;AAIG;;AACI,IAAM,cAAc,GAAG,SAAjB,cAAiB,CAAC,KAAD;AAAA,SAAkB,iCAAO,KAAP,CAAlB,+HAClB,eAAK;AAAA,WACR,KAAK,CAAC,IAAN,IAAc,6BAAY,KAAK,CAAC,IAAlB,CAAf,IACA,oBAAK;AACD,gBAAU,EAAE;AACR,aAAK,EAAE,oBAAU,MADT;AAER,YAAI,EAAE,oBAAU;AAFR,OADX;AAKD,YAAM,EAAE,oBAAU;AALjB,KAAL,EAMG,KANH,CAFS;AAAA,GADa,EAUhB,eAAK;AAAA,WACV,KAAK,CAAC,MAAN,IAAgB,6BAAY,KAAK,CAAC,MAAlB,CAAjB,IACA,oBAAK;AACD,gBAAU,EAAE;AACR,YAAI,EAAE,oBAAU,MADR;AAER,aAAK,EAAE,oBAAU;AAFT,OADX;AAKD,YAAM,EAAE,oBAAU;AALjB,KAAL,EAMG,KANH,CAFW;AAAA,GAVW,EAmBhB,eAAK;AAAA,WAAK,KAAK,CAAC,OAAN,GAAgB,SAAhB,GAA4B,SAAjC;AAAA,GAnBW;AAAA,CAAvB;;AAAM,yBAAc,cAAd,C;;;;;;;AClCb,gD;;;;;;;ACAA,oE","file":"shapeUtils.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 = 80);\n","module.exports = require(\"styled-components\");","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/taggedTemplateLiteral\");","module.exports = require(\"@splunk/themes/variables\");","import { mapKeys } from 'lodash';\nimport styled from 'styled-components';\nimport pick from '@splunk/themes/pick';\nimport variables from '@splunk/themes/variables';\nimport { formatColor } from '@splunk/visualizations-shared/propUtils';\n\ninterface ShapeOptions {\n [key: string]: any;\n}\n\n// map for new options names to old option names\nconst shapeOptionsMapping = {\n fillColor: 'fill',\n strokeColor: 'stroke',\n strokeDashStyle: 'strokeDasharray',\n strokeJoinStyle: 'strokeLinejoin',\n};\n\n/**\n * Helper method to update the option names to old option names\n * @method mapToOldKey\n * @param {Object} options\n * @returns {Object}\n */\nexport const mapToOldKey = (options: ShapeOptions): ShapeOptions =>\n mapKeys(options, (val, key) => (shapeOptionsMapping[key] ? shapeOptionsMapping[key] : key));\n\ntype Shape = 'ellipse' | 'rect';\n\n/**\n * Helper method to get styled component for ellipse or rectangle\n * @method mapToOldKey\n * @param {Shape} shape\n */\nexport const getStyledShape = (shape: Shape) => styled(shape)`\n fill: ${props =>\n (props.fill && formatColor(props.fill)) ||\n pick({\n enterprise: {\n light: variables.gray80,\n dark: variables.gray25,\n },\n prisma: variables.backgroundColorSidebar,\n })(props)};\n stroke: ${props =>\n (props.stroke && formatColor(props.stroke)) ||\n pick({\n enterprise: {\n dark: variables.gray80,\n light: variables.textColor,\n },\n prisma: variables.neutral500,\n })(props)};\n cursor: ${props => (props.onClick ? 'pointer' : 'inherit')};\n`;\n","module.exports = require(\"@splunk/themes/pick\");","module.exports = require(\"@splunk/visualizations-shared/propUtils\");"],"sourceRoot":""}
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Copyright © 2018 Splunk Inc.
2
+ * Copyright © 2024 Splunk Inc.
3
3
  * SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
4
4
  * in part without a valid written license from Splunk Inc. is PROHIBITED.
5
5
  */
@@ -126,24 +126,33 @@ module.exports = require("@babel/runtime/helpers/toConsumableArray");
126
126
 
127
127
 
128
128
  var _toConsumableArray = __webpack_require__(2);
129
+
129
130
  var _defineProperty = __webpack_require__(1);
131
+
130
132
  var __rest = this && this.__rest || function (s, e) {
131
133
  var t = {};
134
+
132
135
  for (var p in s) {
133
136
  if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
134
137
  }
138
+
135
139
  if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
136
140
  if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
137
141
  }
138
142
  return t;
139
143
  };
144
+
140
145
  Object.defineProperty(exports, "__esModule", {
141
146
  value: true
142
147
  });
143
148
  exports.insertLayout = exports.isDynamicOption = exports.uncollapseEditorConfig = exports.generatePrecisionValues = exports.getInitialPreset = exports.enhanceOptionsSchemaWithDynamicOptions = exports.enhanceConfig = void 0;
149
+
144
150
  var lodash_1 = __webpack_require__(0);
151
+
145
152
  var schemaUtils_1 = __webpack_require__(14);
153
+
146
154
  var VizBehavior_1 = __webpack_require__(15);
155
+
147
156
  var dynamicOptionsDSLType = {
148
157
  type: 'string',
149
158
  pattern: schemaUtils_1.DYNAMIC_OPTIONS_DSL_PATTERN
@@ -153,20 +162,22 @@ var dynamicOptionsDSLType = {
153
162
  * @param optionsSchema a visualization's options schema
154
163
  * @returns an updated options schema that additionally allows strings starting with > for each option
155
164
  */
165
+
156
166
  function enhanceOptionsSchemaWithDynamicOptions(optionsSchema) {
157
167
  var enhancedOptionsSchema = {};
158
168
  Object.keys(optionsSchema).forEach(function (key) {
159
169
  var _a = optionsSchema[key],
160
- title = _a.title,
161
- description = _a.description,
162
- readOnly = _a.readOnly,
163
- writeOnly = _a.writeOnly,
164
- examples = _a.examples,
165
- defaultValue = _a.default,
166
- type = _a.type,
167
- properties = _a.properties,
168
- patternProperties = _a.patternProperties,
169
- remainingSchemaEntry = __rest(_a, ["title", "description", "readOnly", "writeOnly", "examples", "default", "type", "properties", "patternProperties"]);
170
+ title = _a.title,
171
+ description = _a.description,
172
+ readOnly = _a.readOnly,
173
+ writeOnly = _a.writeOnly,
174
+ examples = _a.examples,
175
+ defaultValue = _a.default,
176
+ type = _a.type,
177
+ properties = _a.properties,
178
+ patternProperties = _a.patternProperties,
179
+ remainingSchemaEntry = __rest(_a, ["title", "description", "readOnly", "writeOnly", "examples", "default", "type", "properties", "patternProperties"]);
180
+
170
181
  var annotations = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, title !== undefined && {
171
182
  title: title
172
183
  }), description !== undefined && {
@@ -180,12 +191,14 @@ function enhanceOptionsSchemaWithDynamicOptions(optionsSchema) {
180
191
  }), defaultValue !== undefined && {
181
192
  default: defaultValue
182
193
  });
194
+
183
195
  if (type === 'object') {
184
196
  enhancedOptionsSchema[key] = Object.assign(Object.assign(Object.assign(Object.assign({}, remainingSchemaEntry), annotations), {
185
197
  type: type
186
198
  }), properties && {
187
199
  properties: enhanceOptionsSchemaWithDynamicOptions(properties)
188
200
  });
201
+
189
202
  if (patternProperties) {
190
203
  var enhancedPatternProperties = {};
191
204
  Object.keys(patternProperties).forEach(function (opt) {
@@ -203,6 +216,7 @@ function enhanceOptionsSchemaWithDynamicOptions(optionsSchema) {
203
216
  });
204
217
  return enhancedOptionsSchema;
205
218
  }
219
+
206
220
  exports.enhanceOptionsSchemaWithDynamicOptions = enhanceOptionsSchemaWithDynamicOptions;
207
221
  /**
208
222
  * Helper function to enhance a Visualization Config as needed based on behaviors specified in supports block
@@ -211,11 +225,14 @@ exports.enhanceOptionsSchemaWithDynamicOptions = enhanceOptionsSchemaWithDynamic
211
225
  * @returns an enhanced Visualization Config containing updated config entries based on behaviors it supports
212
226
  * and containing `open: false` for all editor panels in editorConfig
213
227
  */
228
+
214
229
  function enhanceConfig(vizConfig) {
215
230
  var enhancedConfig = Object.assign({}, vizConfig);
231
+
216
232
  if (vizConfig.supports.indexOf(VizBehavior_1.VizBehavior.DYNAMIC_OPTIONS) !== -1) {
217
233
  enhancedConfig.optionsSchema = enhanceOptionsSchemaWithDynamicOptions(vizConfig.optionsSchema);
218
234
  }
235
+
219
236
  enhancedConfig.editorConfig = vizConfig.editorConfig.map(function (config) {
220
237
  return Object.assign(Object.assign({}, config), {
221
238
  open: config.open || false
@@ -223,6 +240,7 @@ function enhanceConfig(vizConfig) {
223
240
  });
224
241
  return enhancedConfig;
225
242
  }
243
+
226
244
  exports.enhanceConfig = enhanceConfig;
227
245
  /**
228
246
  * Helper function to uncollapse all editor panels by adding `open: true` to the editorConfig
@@ -230,6 +248,7 @@ exports.enhanceConfig = enhanceConfig;
230
248
  * @param vizConfig a Visualization Config
231
249
  * @returns a Visualization Config containing `open: true` for all editor panels in editorConfig
232
250
  */
251
+
233
252
  function uncollapseEditorConfig(vizConfig) {
234
253
  var editorPanelUncollapsedConfig = Object.assign({}, vizConfig);
235
254
  editorPanelUncollapsedConfig.editorConfig = vizConfig.editorConfig.map(function (config) {
@@ -239,13 +258,16 @@ function uncollapseEditorConfig(vizConfig) {
239
258
  });
240
259
  return editorPanelUncollapsedConfig;
241
260
  }
261
+
242
262
  exports.uncollapseEditorConfig = uncollapseEditorConfig;
263
+
243
264
  function isDynamicOption(option) {
244
265
  return option && typeof option === 'string' && option.trim().startsWith('>') || false;
245
266
  }
246
- exports.isDynamicOption = isDynamicOption;
247
- // private helpers to improve readability of getInitialPreset
267
+
268
+ exports.isDynamicOption = isDynamicOption; // private helpers to improve readability of getInitialPreset
248
269
  // this shouldn't be tested since this util isn't something that we expect to use outside of getInitialPreset
270
+
249
271
  /**
250
272
  * this checks to make sure that all values within vizContext are compatible with the given preset's context to determine the initialPreset
251
273
  * 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
@@ -254,6 +276,7 @@ exports.isDynamicOption = isDynamicOption;
254
276
  *
255
277
  * Since the presetConfigs have explicit undefined keys to override the existing config, we need to explicitly check the undefined values
256
278
  */
279
+
257
280
  function hasCompatibleContexts(vizContext, presetContext) {
258
281
  var presetContextKeys = Object.keys(presetContext);
259
282
  return presetContextKeys.every(function (contextKey) {
@@ -263,6 +286,8 @@ function hasCompatibleContexts(vizContext, presetContext) {
263
286
  /**
264
287
  * Checks to make sure that dynamic (non-dynamic) options in a given preset are also dynamic (non-dynamic) in the vizOptions
265
288
  */
289
+
290
+
266
291
  function hasCompatibleOptions(vizOptions, presetOptions) {
267
292
  var presetOptionKeys = Object.keys(presetOptions);
268
293
  return presetOptionKeys.every(function (optionKey) {
@@ -277,18 +302,21 @@ function hasCompatibleOptions(vizOptions, presetOptions) {
277
302
  * @param {Object} vizOptions - the current vizOptions definition
278
303
  * @param {PresetEntry[]} presets - the list of presets, one of which can be considered an initialPreset
279
304
  */
305
+
306
+
280
307
  function getInitialPreset(vizContext, vizOptions, presets) {
281
308
  return presets.find(function (preset) {
282
309
  var presetContext = (0, lodash_1.get)(preset, ['value', 'context'], {});
283
310
  var presetOptions = (0, lodash_1.get)(preset, ['value', 'options'], {});
284
311
  var presetContextKeys = Object.keys(presetContext);
285
- var presetOptionKeys = Object.keys(presetOptions);
286
- // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)
312
+ var presetOptionKeys = Object.keys(presetOptions); // all presets have to explicitly specify which options to reset (i.e. need explicitly undefined keys)
287
313
  // if not, then the preset is invalid in config.ts
314
+
288
315
  if (presetContextKeys.length === 0 || presetOptionKeys.length === 0) return false;
289
316
  return hasCompatibleContexts(vizContext, presetContext) && hasCompatibleOptions(vizOptions, presetOptions);
290
317
  });
291
318
  }
319
+
292
320
  exports.getInitialPreset = getInitialPreset;
293
321
  /**
294
322
  * generates number precision values for a Select editor
@@ -296,6 +324,7 @@ exports.getInitialPreset = getInitialPreset;
296
324
  * @param {Number} numPrecisionValues - number of integer precision values to generate
297
325
  * @returns {{ label: string; value; string }[]} array of { label, value } tuples
298
326
  */
327
+
299
328
  function generatePrecisionValues(numPrecisionValues) {
300
329
  return (0, lodash_1.range)(0, numPrecisionValues + 1).map(function (i) {
301
330
  return {
@@ -304,6 +333,7 @@ function generatePrecisionValues(numPrecisionValues) {
304
333
  };
305
334
  });
306
335
  }
336
+
307
337
  exports.generatePrecisionValues = generatePrecisionValues;
308
338
  /**
309
339
  * insert layout in layout array, return a new layout array instead of updating the original
@@ -313,12 +343,15 @@ exports.generatePrecisionValues = generatePrecisionValues;
313
343
  * @param {EditorLayoutConfig[][]} layoutItems - the item(s) to insert
314
344
  * @returns {EditorLayoutConfig[][]} new editor layout with insertion
315
345
  */
346
+
316
347
  var insertLayout = function insertLayout(layout, index) {
317
348
  for (var _len = arguments.length, layoutItems = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
318
349
  layoutItems[_key - 2] = arguments[_key];
319
350
  }
351
+
320
352
  return [].concat(_toConsumableArray(layout.slice(0, index)), layoutItems, _toConsumableArray(layout.slice(index)));
321
353
  };
354
+
322
355
  exports.insertLayout = insertLayout;
323
356
 
324
357
  /***/ }),
@@ -339,6 +372,7 @@ Object.defineProperty(exports, "__esModule", {
339
372
  });
340
373
  exports.VizBehavior = void 0;
341
374
  var VizBehavior;
375
+
342
376
  (function (VizBehavior) {
343
377
  /**
344
378
  * Dynamic Options Behavior.
@@ -358,6 +392,7 @@ var VizBehavior;
358
392
  * missing.
359
393
  * @type {string}
360
394
  */
395
+
361
396
  VizBehavior["PLACEHOLDER"] = "placeholder";
362
397
  VizBehavior["PAGE_AND_SORT"] = "page-and-sort";
363
398
  VizBehavior["TRELLIS"] = "trellis";