@splunk/visualizations 24.4.0 → 24.5.2

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 (125) hide show
  1. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Area_Editor.png +0 -0
  2. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bar_Editor.png +0 -0
  3. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Bubble_Editor.png +0 -0
  4. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_ChoroplethSvg_Editor.png +0 -0
  5. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Column_Editor.png +0 -0
  6. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Ellipse_Editor.png +0 -0
  7. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_FillerGauge_Editor.png +0 -0
  8. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Image_Editor.png +0 -0
  9. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Line_Editor.png +0 -0
  10. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_LinkGraph_Editor.png +0 -0
  11. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Map_Editor.png +0 -0
  12. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Markdown_Editor.png +0 -0
  13. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_MarkerGauge_Editor.png +0 -0
  14. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Parallel_Coordinates_Editor.png +0 -0
  15. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Pie_Editor.png +0 -0
  16. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Punchcard_Editor.png +0 -0
  17. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Rectangle_Editor.png +0 -0
  18. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Sankey_Editor.png +0 -0
  19. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Scatter_Editor.png +0 -0
  20. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Editor.png +0 -0
  21. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Icon_Editor.png +0 -0
  22. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Single_Value_Radial_Editor.png +0 -0
  23. package/.loki/reference/chrome_docker_VisualizationEditors_Editors_Table_Editor.png +0 -0
  24. package/.loki/reference/chrome_docker_Visualizations_Choropleth_Svg_Choropleth_Svg_Placeholder_If_No_Svg_And_No_Data.png +0 -0
  25. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_GET_Dynamic_Coloring.png +0 -0
  26. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Internal_Fields.png +0 -0
  27. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_By_Mostly_null.png +0 -0
  28. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Bubble_Layer_Geostats_Dynamic_Coloring.png +0 -0
  29. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer.png +0 -0
  30. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer_Dynamic_coloring.png +0 -0
  31. package/.loki/reference/chrome_docker_Visualizations_Map_Map_Marker_layer_Result_Limit_Set_To_3.png +0 -0
  32. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Background_Color_af575a.png +0 -0
  33. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Basic_Markdown.png +0 -0
  34. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Begin_with_Text_Instead_of_Header.png +0 -0
  35. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Font_Color_purple.png +0 -0
  36. package/.loki/reference/chrome_docker_Visualizations_Markdown_Markdown_Font_Size_extraLarge.png +0 -0
  37. package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_empty_columns_and_fields.png +0 -0
  38. package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_invalid_label_data_specified.png +0 -0
  39. package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_invalid_value_data_specified.png +0 -0
  40. package/.loki/reference/chrome_docker_Visualizations_Pie_Pie_Placeholder_if_missing_column.png +0 -0
  41. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Icon_Single_Value_Icon_Use_Time_Type_Series_Data.png +0 -0
  42. package/.loki/reference/chrome_docker_Visualizations_Single_Value_Single_Value_Use_Time_Type_Series_Data.png +0 -0
  43. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Cell_Types.png +0 -0
  44. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Header_Visibility_fixed.png +0 -0
  45. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparkline.png +0 -0
  46. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparkline_Custom.png +0 -0
  47. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Sparklines_Adv.png +0 -0
  48. package/.loki/reference/chrome_docker_Visualizations_Table_Table_Time_Zone_Time_Formatting.png +0 -0
  49. package/Area.js +246 -218
  50. package/Area.js.map +1 -1
  51. package/Bar.js +238 -210
  52. package/Bar.js.map +1 -1
  53. package/Bubble.js +231 -203
  54. package/Bubble.js.map +1 -1
  55. package/ChoroplethSvg.js +230 -197
  56. package/ChoroplethSvg.js.map +1 -1
  57. package/Column.js +238 -210
  58. package/Column.js.map +1 -1
  59. package/Ellipse.js +203 -170
  60. package/Ellipse.js.map +1 -1
  61. package/FillerGauge.js +222 -189
  62. package/FillerGauge.js.map +1 -1
  63. package/Image.js +199 -164
  64. package/Image.js.map +1 -1
  65. package/Line.js +239 -211
  66. package/Line.js.map +1 -1
  67. package/LinkGraph.js +264 -223
  68. package/LinkGraph.js.map +1 -1
  69. package/Map.config.js +39 -25
  70. package/Map.config.js.map +1 -1
  71. package/Map.js +460 -334
  72. package/Map.js.map +1 -1
  73. package/Markdown.config.js +29 -1
  74. package/Markdown.config.js.map +1 -1
  75. package/Markdown.js +513 -267
  76. package/Markdown.js.map +1 -1
  77. package/MarkerGauge.js +941 -906
  78. package/MarkerGauge.js.map +1 -1
  79. package/ParallelCoordinates.js +230 -196
  80. package/ParallelCoordinates.js.map +1 -1
  81. package/Pie.js +309 -249
  82. package/Pie.js.map +1 -1
  83. package/Punchcard.js +263 -229
  84. package/Punchcard.js.map +1 -1
  85. package/Rectangle.js +217 -182
  86. package/Rectangle.js.map +1 -1
  87. package/Sankey.js +269 -230
  88. package/Sankey.js.map +1 -1
  89. package/Scatter.js +314 -286
  90. package/Scatter.js.map +1 -1
  91. package/SingleValue.js +398 -363
  92. package/SingleValue.js.map +1 -1
  93. package/SingleValueBasic.js +25 -25
  94. package/SingleValueBasic.js.map +1 -1
  95. package/SingleValueIcon.js +2821 -2653
  96. package/SingleValueIcon.js.map +1 -1
  97. package/SingleValueRadial.js +359 -324
  98. package/SingleValueRadial.js.map +1 -1
  99. package/Table.config.js +2 -1
  100. package/Table.config.js.map +1 -1
  101. package/Table.js +629 -347
  102. package/Table.js.map +1 -1
  103. package/common/Charting.js +21 -21
  104. package/common/Charting.js.map +1 -1
  105. package/common/ChartingApi.js +2 -2
  106. package/common/ChartingApi.js.map +1 -1
  107. package/common/EventsDoc.js +18 -18
  108. package/common/EventsDoc.js.map +1 -1
  109. package/common/GaugeMajorTicks.js +10 -10
  110. package/common/GaugeMajorTicks.js.map +1 -1
  111. package/common/GaugeValueMarker.js +10 -10
  112. package/common/GaugeValueMarker.js.map +1 -1
  113. package/common/OptionsDoc.js +217 -174
  114. package/common/OptionsDoc.js.map +1 -1
  115. package/common/SplunkVisualization.js +4 -4
  116. package/common/SplunkVisualization.js.map +1 -1
  117. package/common/ThemesDoc.js +26 -26
  118. package/common/ThemesDoc.js.map +1 -1
  119. package/common/chartingUtils.js +3 -3
  120. package/common/chartingUtils.js.map +1 -1
  121. package/common/gaugeUtils.js +2 -2
  122. package/common/shapeUtils.js +2 -2
  123. package/common/withDashboardViz.js +80 -48
  124. package/common/withDashboardViz.js.map +1 -1
  125. package/package.json +13 -11
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"@splunk/visualizations-shared/numberUtils\"","webpack:///external \"styled-components\"","webpack:///./src/common/GaugeMajorTicks.jsx","webpack:///external \"@babel/runtime/helpers/extends\""],"names":["DEFAULT_NUM_OF_TICKS","TICK_LENGTH_DELTA","TICK_LABEL_PADDING_FACTOR","MajorTickLine","styled","props","MajorTickLabel","MajorTick","index","x1","y1","x2","y2","showLabels","label","labelX","labelY","majorTickStrokeColor","majorTickFillColor","formatNumber","useThousandSeparators","useTrendUnits","T","string","positionMajorTick","width","height","startX","startY","orientation","numOfTicks","i","y","x","MajorTicks","min","max","majorUnit","usePercentageRange","range","Number","majorTicks","parseInt","extraNumOfTicks","Math"],"mappings":"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","file":"GaugeMajorTicks.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 = 49);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"@splunk/visualizations-shared/numberUtils\");","module.exports = require(\"styled-components\");","import React from 'react';\nimport T from 'prop-types';\nimport styled from 'styled-components';\nimport { isNumerial, formatNumber } from '@splunk/visualizations-shared/numberUtils';\n\nconst DEFAULT_NUM_OF_TICKS = 5;\nconst TICK_LENGTH_DELTA = 5;\nconst TICK_LABEL_PADDING_FACTOR = 3.2;\n\nconst MajorTickLine = styled.line`\n stroke: ${props => props.majorTickStrokeColor};\n stroke-width: 2px;\n stroke-dasharray: ${props => (props.index === 0 ? 0 : 3)};\n`;\n\nconst MajorTickLabel = styled.text`\n font-size: 12px;\n font-family: Splunk Platform Sans, sans-serif;\n line-height: 19px;\n fill: ${props => props.majorTickFillColor};\n text-anchor: middle;\n text-align: center;\n`;\n\nexport const MajorTick = ({\n index,\n x1,\n y1,\n x2,\n y2,\n showLabels,\n label,\n labelX,\n labelY,\n majorTickStrokeColor,\n majorTickFillColor,\n}) => (\n <g>\n <MajorTickLine\n index={index}\n x1={x1}\n y1={y1}\n x2={x2}\n y2={y2}\n majorTickStrokeColor={majorTickStrokeColor}\n />\n {showLabels && (\n <MajorTickLabel x={labelX} y={labelY} majorTickFillColor={majorTickFillColor}>\n {isNumerial(label)\n ? formatNumber(label, 0, {\n useThousandSeparators: true,\n useTrendUnits: true,\n })\n : label}\n </MajorTickLabel>\n )}\n </g>\n);\n\nMajorTick.propTypes = {\n index: T.number,\n x1: T.number,\n y1: T.number,\n x2: T.number,\n y2: T.number,\n showLabels: T.bool,\n label: T.oneOfType([T.string, T.number]),\n labelX: T.number,\n labelY: T.number,\n majorTickStrokeColor: T.string,\n majorTickFillColor: T.string,\n};\n\n/**\n * calculate position for each major tick\n * @method positionMajorTick\n * @param {Object} input\n * @param {Number} input.width\n * @param {Number} input.height\n * @param {Number} input.startX start x for rendering the first major tick\n * @param {Number} input.startY start y for rendering the first major tick\n * @param {String} input.orientation\n * @param {Number} input.numOfTicks how many ticks need to render\n * @param {Number} input.i index of major tick\n * @return {Object} MajorTick positions\n */\nexport const positionMajorTick = ({ width, height, startX, startY, orientation, numOfTicks, i }) => {\n let x1 = startX;\n let y1 = startY;\n let x2 = startX;\n let y2 = startY;\n let labelX = startX;\n let labelY;\n\n if (orientation === 'vertical') {\n const y = (height / numOfTicks) * (numOfTicks - i) + startY;\n x1 -= TICK_LENGTH_DELTA;\n y1 = y;\n x2 += width + TICK_LENGTH_DELTA;\n y2 = y;\n labelX += width + TICK_LENGTH_DELTA * TICK_LABEL_PADDING_FACTOR;\n labelY = y;\n } else {\n const x = (width / numOfTicks) * i + startX;\n x1 = x;\n y1 -= TICK_LENGTH_DELTA;\n x2 = x;\n y2 += height + TICK_LENGTH_DELTA;\n labelX = x;\n labelY = y2 + 16;\n }\n\n return { x1, y1, x2, y2, labelX, labelY };\n};\n\nconst MajorTicks = ({ ...props }) => {\n const {\n width,\n height,\n startX,\n startY,\n min,\n max,\n majorUnit,\n orientation,\n showLabels,\n usePercentageRange,\n majorTickFillColor,\n majorTickStrokeColor,\n } = props;\n\n const range = max - min;\n const numOfTicks =\n majorUnit === 'auto' || Number.isNaN(Number(majorUnit)) || majorUnit <= 0\n ? DEFAULT_NUM_OF_TICKS\n : range / majorUnit;\n const majorTicks = [];\n\n for (let i = 0; i <= numOfTicks; i += 1) {\n const { x1, y1, x2, y2, labelX, labelY } = positionMajorTick({\n width,\n height,\n startX,\n startY,\n orientation,\n numOfTicks,\n i,\n });\n const label = usePercentageRange\n ? `${parseInt((i / numOfTicks - min / range) * 100, 10)}%`\n : parseInt(min + (range / numOfTicks) * i, 10);\n\n majorTicks.push(\n <MajorTick\n key={i}\n index={i}\n x1={x1}\n y1={y1}\n x2={x2}\n y2={y2}\n showLabels={showLabels}\n label={label}\n labelX={labelX}\n labelY={labelY}\n majorTickFillColor={majorTickFillColor}\n majorTickStrokeColor={majorTickStrokeColor}\n />\n );\n }\n\n // if the gauge is not divided evenly, put the last tick at the end of the gauge\n if (!Number.isInteger(numOfTicks)) {\n const extraNumOfTicks = Math.ceil(numOfTicks);\n const { x1, y1, x2, y2, labelX, labelY } = positionMajorTick({\n width,\n height,\n startX,\n startY,\n orientation,\n numOfTicks: extraNumOfTicks,\n i: extraNumOfTicks,\n });\n\n majorTicks.push(\n <MajorTick\n key={extraNumOfTicks}\n id={extraNumOfTicks}\n x1={x1}\n y1={y1}\n x2={x2}\n y2={y2}\n showLabels={showLabels}\n label={usePercentageRange ? '100%' : max}\n labelX={labelX}\n labelY={labelY}\n majorTickFillColor={majorTickFillColor}\n majorTickStrokeColor={majorTickStrokeColor}\n />\n );\n }\n\n return <g>{majorTicks}</g>;\n};\n\nMajorTicks.propTypes = {\n width: T.number,\n height: T.number,\n startX: T.number,\n startY: T.number,\n min: T.number,\n max: T.number,\n majorUnit: T.oneOfType([T.string, T.number]),\n orientation: T.string,\n showLabels: T.bool,\n usePercentageRange: T.bool,\n majorTickFillColor: T.string,\n majorTickStrokeColor: T.string,\n};\n\nMajorTicks.defaultProps = {\n min: 0,\n max: 100,\n majorUnit: 'auto',\n orientation: 'horizontal',\n showLabels: true,\n usePercentageRange: false,\n};\n\nexport default MajorTicks;\n","module.exports = require(\"@babel/runtime/helpers/extends\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"@babel/runtime/helpers/extends\"","webpack:///external \"@splunk/visualizations-shared/numberUtils\"","webpack:///external \"styled-components\"","webpack:///./src/common/GaugeMajorTicks.jsx"],"names":["DEFAULT_NUM_OF_TICKS","TICK_LENGTH_DELTA","TICK_LABEL_PADDING_FACTOR","MajorTickLine","styled","props","MajorTickLabel","MajorTick","index","x1","y1","x2","y2","showLabels","label","labelX","labelY","majorTickStrokeColor","majorTickFillColor","formatNumber","useThousandSeparators","useTrendUnits","T","string","positionMajorTick","width","height","startX","startY","orientation","numOfTicks","i","y","x","MajorTicks","min","max","majorUnit","usePercentageRange","range","Number","majorTicks","parseInt","extraNumOfTicks","Math"],"mappings":"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","file":"GaugeMajorTicks.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 = 49);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"@babel/runtime/helpers/extends\");","module.exports = require(\"@splunk/visualizations-shared/numberUtils\");","module.exports = require(\"styled-components\");","import React from 'react';\nimport T from 'prop-types';\nimport styled from 'styled-components';\nimport { isNumerial, formatNumber } from '@splunk/visualizations-shared/numberUtils';\n\nconst DEFAULT_NUM_OF_TICKS = 5;\nconst TICK_LENGTH_DELTA = 5;\nconst TICK_LABEL_PADDING_FACTOR = 3.2;\n\nconst MajorTickLine = styled.line`\n stroke: ${props => props.majorTickStrokeColor};\n stroke-width: 2px;\n stroke-dasharray: ${props => (props.index === 0 ? 0 : 3)};\n`;\n\nconst MajorTickLabel = styled.text`\n font-size: 12px;\n font-family: Splunk Platform Sans, sans-serif;\n line-height: 19px;\n fill: ${props => props.majorTickFillColor};\n text-anchor: middle;\n text-align: center;\n`;\n\nexport const MajorTick = ({\n index,\n x1,\n y1,\n x2,\n y2,\n showLabels,\n label,\n labelX,\n labelY,\n majorTickStrokeColor,\n majorTickFillColor,\n}) => (\n <g>\n <MajorTickLine\n index={index}\n x1={x1}\n y1={y1}\n x2={x2}\n y2={y2}\n majorTickStrokeColor={majorTickStrokeColor}\n />\n {showLabels && (\n <MajorTickLabel x={labelX} y={labelY} majorTickFillColor={majorTickFillColor}>\n {isNumerial(label)\n ? formatNumber(label, 0, {\n useThousandSeparators: true,\n useTrendUnits: true,\n })\n : label}\n </MajorTickLabel>\n )}\n </g>\n);\n\nMajorTick.propTypes = {\n index: T.number,\n x1: T.number,\n y1: T.number,\n x2: T.number,\n y2: T.number,\n showLabels: T.bool,\n label: T.oneOfType([T.string, T.number]),\n labelX: T.number,\n labelY: T.number,\n majorTickStrokeColor: T.string,\n majorTickFillColor: T.string,\n};\n\n/**\n * calculate position for each major tick\n * @method positionMajorTick\n * @param {Object} input\n * @param {Number} input.width\n * @param {Number} input.height\n * @param {Number} input.startX start x for rendering the first major tick\n * @param {Number} input.startY start y for rendering the first major tick\n * @param {String} input.orientation\n * @param {Number} input.numOfTicks how many ticks need to render\n * @param {Number} input.i index of major tick\n * @return {Object} MajorTick positions\n */\nexport const positionMajorTick = ({ width, height, startX, startY, orientation, numOfTicks, i }) => {\n let x1 = startX;\n let y1 = startY;\n let x2 = startX;\n let y2 = startY;\n let labelX = startX;\n let labelY;\n\n if (orientation === 'vertical') {\n const y = (height / numOfTicks) * (numOfTicks - i) + startY;\n x1 -= TICK_LENGTH_DELTA;\n y1 = y;\n x2 += width + TICK_LENGTH_DELTA;\n y2 = y;\n labelX += width + TICK_LENGTH_DELTA * TICK_LABEL_PADDING_FACTOR;\n labelY = y;\n } else {\n const x = (width / numOfTicks) * i + startX;\n x1 = x;\n y1 -= TICK_LENGTH_DELTA;\n x2 = x;\n y2 += height + TICK_LENGTH_DELTA;\n labelX = x;\n labelY = y2 + 16;\n }\n\n return { x1, y1, x2, y2, labelX, labelY };\n};\n\nconst MajorTicks = ({ ...props }) => {\n const {\n width,\n height,\n startX,\n startY,\n min,\n max,\n majorUnit,\n orientation,\n showLabels,\n usePercentageRange,\n majorTickFillColor,\n majorTickStrokeColor,\n } = props;\n\n const range = max - min;\n const numOfTicks =\n majorUnit === 'auto' || Number.isNaN(Number(majorUnit)) || majorUnit <= 0\n ? DEFAULT_NUM_OF_TICKS\n : range / majorUnit;\n const majorTicks = [];\n\n for (let i = 0; i <= numOfTicks; i += 1) {\n const { x1, y1, x2, y2, labelX, labelY } = positionMajorTick({\n width,\n height,\n startX,\n startY,\n orientation,\n numOfTicks,\n i,\n });\n const label = usePercentageRange\n ? `${parseInt((i / numOfTicks - min / range) * 100, 10)}%`\n : parseInt(min + (range / numOfTicks) * i, 10);\n\n majorTicks.push(\n <MajorTick\n key={i}\n index={i}\n x1={x1}\n y1={y1}\n x2={x2}\n y2={y2}\n showLabels={showLabels}\n label={label}\n labelX={labelX}\n labelY={labelY}\n majorTickFillColor={majorTickFillColor}\n majorTickStrokeColor={majorTickStrokeColor}\n />\n );\n }\n\n // if the gauge is not divided evenly, put the last tick at the end of the gauge\n if (!Number.isInteger(numOfTicks)) {\n const extraNumOfTicks = Math.ceil(numOfTicks);\n const { x1, y1, x2, y2, labelX, labelY } = positionMajorTick({\n width,\n height,\n startX,\n startY,\n orientation,\n numOfTicks: extraNumOfTicks,\n i: extraNumOfTicks,\n });\n\n majorTicks.push(\n <MajorTick\n key={extraNumOfTicks}\n id={extraNumOfTicks}\n x1={x1}\n y1={y1}\n x2={x2}\n y2={y2}\n showLabels={showLabels}\n label={usePercentageRange ? '100%' : max}\n labelX={labelX}\n labelY={labelY}\n majorTickFillColor={majorTickFillColor}\n majorTickStrokeColor={majorTickStrokeColor}\n />\n );\n }\n\n return <g>{majorTicks}</g>;\n};\n\nMajorTicks.propTypes = {\n width: T.number,\n height: T.number,\n startX: T.number,\n startY: T.number,\n min: T.number,\n max: T.number,\n majorUnit: T.oneOfType([T.string, T.number]),\n orientation: T.string,\n showLabels: T.bool,\n usePercentageRange: T.bool,\n majorTickFillColor: T.string,\n majorTickStrokeColor: T.string,\n};\n\nMajorTicks.defaultProps = {\n min: 0,\n max: 100,\n majorUnit: 'auto',\n orientation: 'horizontal',\n showLabels: true,\n usePercentageRange: false,\n};\n\nexport default MajorTicks;\n"],"sourceRoot":""}
@@ -106,7 +106,14 @@ module.exports = require("prop-types");
106
106
 
107
107
  /***/ }),
108
108
 
109
- /***/ 13:
109
+ /***/ 10:
110
+ /***/ (function(module, exports) {
111
+
112
+ module.exports = require("@babel/runtime/helpers/extends");
113
+
114
+ /***/ }),
115
+
116
+ /***/ 14:
110
117
  /***/ (function(module, exports) {
111
118
 
112
119
  module.exports = require("@splunk/visualizations-shared/numberUtils");
@@ -127,7 +134,7 @@ module.exports = require("styled-components");
127
134
  __webpack_require__.r(__webpack_exports__);
128
135
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "positionValueMarkerRect", function() { return positionValueMarkerRect; });
129
136
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "positionLabel", function() { return positionLabel; });
130
- /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9);
137
+ /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(10);
131
138
  /* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
132
139
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
133
140
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
@@ -135,7 +142,7 @@ __webpack_require__.r(__webpack_exports__);
135
142
  /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);
136
143
  /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2);
137
144
  /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(styled_components__WEBPACK_IMPORTED_MODULE_3__);
138
- /* harmony import */ var _splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(13);
145
+ /* harmony import */ var _splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(14);
139
146
  /* harmony import */ var _splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_4__);
140
147
 
141
148
 
@@ -320,13 +327,6 @@ ValueMarker.defaultProps = {
320
327
  };
321
328
  /* harmony default export */ __webpack_exports__["default"] = (ValueMarker);
322
329
 
323
- /***/ }),
324
-
325
- /***/ 9:
326
- /***/ (function(module, exports) {
327
-
328
- module.exports = require("@babel/runtime/helpers/extends");
329
-
330
330
  /***/ })
331
331
 
332
332
  /******/ });
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"@splunk/visualizations-shared/numberUtils\"","webpack:///external \"styled-components\"","webpack:///./src/common/GaugeValueMarker.jsx","webpack:///external \"@babel/runtime/helpers/extends\""],"names":["MARKER_THICKNESS","MARKER_INNER_LENGTH","MARKER_LABEL_WIDTH","MARKER_LABEL_HEIGHT","RADIUS","DELTA_LENGTH","ValueMarkerRect","styled","props","ValueMarkerLabelRect","ValueMarkerLabel","positionValueMarkerRect","x","y","orientation","valueMarkerRectLength","hLength","vLength","markerStartX","markerStartY","innerHLength","innerVLength","innerStartX","innerStartY","positionLabel","length","labelRectX","labelRectY","labelX","labelY","ValueMarker","min","max","value","showValue","usePercentageValue","valueMarkerFillColor","valueMarkerLabelFillColor","formatNumber","useThousandSeparators","useTrendUnits","T","string"],"mappings":"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","file":"GaugeValueMarker.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 = 50);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"@splunk/visualizations-shared/numberUtils\");","module.exports = require(\"styled-components\");","import React from 'react';\nimport T from 'prop-types';\nimport styled from 'styled-components';\nimport { formatNumber } from '@splunk/visualizations-shared/numberUtils';\n\nconst MARKER_THICKNESS = 15;\nconst MARKER_INNER_LENGTH = 30;\n\nconst MARKER_LABEL_WIDTH = 60;\nconst MARKER_LABEL_HEIGHT = 25;\nconst RADIUS = 2;\nconst DELTA_LENGTH = 12;\n\nconst ValueMarkerRect = styled.path`\n stroke-width: 2px;\n fill: ${props => props.valueMarkerFillColor};\n`;\n\nconst ValueMarkerLabelRect = styled.rect`\n fill: ${props => props.valueMarkerFillColor};\n`;\n\nconst ValueMarkerLabel = styled.text`\n fill: ${props => props.valueMarkerLabelFillColor};\n font-size: 14px;\n font-family: Splunk Platform Sans, sans-serif;\n line-height: 16px;\n text-anchor: middle;\n text-align: center;\n dominant-baseline: middle;\n`;\n\n/**\n * calculate the path of Value Marker shape\n * @method positionValueMarkerRect\n * @param {Object} input\n * @param {Number} input.x\n * @param {Number} input.y\n * @param {String} input.orientation\n * @param {Number} input.valueMarkerRectLength\n * @return {String} d containing a series of path commands that define the path to be\n */\nexport const positionValueMarkerRect = ({ x, y, orientation, valueMarkerRectLength }) => {\n let hLength = MARKER_THICKNESS;\n let vLength = valueMarkerRectLength;\n let markerStartX = x - MARKER_THICKNESS;\n const markerStartY = y;\n\n let innerHLength = hLength / 3;\n let innerVLength = MARKER_INNER_LENGTH;\n let innerStartX = markerStartX + innerHLength;\n let innerStartY = markerStartY + 7;\n\n if (orientation === 'vertical') {\n hLength = valueMarkerRectLength;\n vLength = MARKER_THICKNESS;\n markerStartX = x;\n\n innerHLength = MARKER_INNER_LENGTH;\n innerVLength = vLength / 3;\n innerStartX = markerStartX + 7;\n innerStartY = markerStartY + innerVLength;\n }\n\n return (\n `M${markerStartX},${markerStartY}h${hLength}a${RADIUS},${RADIUS} 0 0 1 ${RADIUS},${RADIUS}v${\n vLength - 2 * RADIUS\n }a${RADIUS},${RADIUS} 0 0 1 ${-RADIUS},${RADIUS}h${-hLength}a${RADIUS},${RADIUS} 0 0 1 ${-RADIUS},${-RADIUS}v${\n 2 * RADIUS - vLength\n }a${RADIUS},${RADIUS} 0 0 1 ${RADIUS},${-RADIUS}z` +\n `M${innerStartX},${innerStartY}v${\n innerVLength - RADIUS\n }a${RADIUS},${RADIUS} 0 0 0 ${RADIUS},${RADIUS}h${\n innerHLength - 2 * RADIUS\n }a${RADIUS},${RADIUS} 0 0 0 ${RADIUS},${-RADIUS}v${\n RADIUS - innerVLength\n }a${RADIUS},${RADIUS} 0 0 0 ${-RADIUS},${-RADIUS}h${\n 2 * RADIUS - innerHLength\n }a${RADIUS},${RADIUS} 0 0 0 ${-RADIUS},${RADIUS}z`\n );\n};\n\n/**\n * calculate the position of value marker label\n * @method positionLabel\n * @param {Object} input\n * @param {Number} input.x\n * @param {Number} input.y\n * @param {Number} input.length gauge thickness\n * @param {String} input.orientation\n * @return {Object} positions\n * @return {Number} positions.labelRectX x of value marker label rect\n * @return {Number} positions.labelRectY y of value marker label rect\n * @return {Number} positions.labelX x of value marker label text\n * @return {Number} positions.labelY y of value marker label text\n */\nexport const positionLabel = ({ x, y, length, orientation }) => {\n // for horizontal view\n let labelRectX = x - MARKER_THICKNESS / 2 - MARKER_LABEL_WIDTH / 2;\n let labelRectY = y + length;\n if (orientation === 'vertical') {\n labelRectX = x + length;\n labelRectY = y - (MARKER_LABEL_HEIGHT - MARKER_THICKNESS) / 2;\n }\n const labelX = labelRectX + MARKER_LABEL_WIDTH / 2;\n const labelY = labelRectY + MARKER_LABEL_HEIGHT / 2;\n return { labelRectX, labelRectY, labelX, labelY };\n};\n\nconst ValueMarker = ({ ...props }) => {\n const {\n x,\n y,\n length,\n min,\n max,\n value,\n orientation,\n showValue,\n usePercentageValue,\n valueMarkerFillColor,\n valueMarkerLabelFillColor,\n } = props;\n\n const valueMarkerRectLength = length + DELTA_LENGTH;\n const { labelRectX, labelRectY, labelX, labelY } = positionLabel({\n x,\n y,\n length,\n orientation,\n });\n\n return (\n <g>\n <ValueMarkerRect\n data-test=\"value-marker-rect\"\n d={positionValueMarkerRect({ x, y, orientation, valueMarkerRectLength })}\n valueMarkerFillColor={valueMarkerFillColor}\n />\n {showValue && (\n <g>\n <ValueMarkerLabelRect\n data-test=\"value-marker-label-rect\"\n x={labelRectX}\n y={labelRectY}\n width={MARKER_LABEL_WIDTH}\n height={MARKER_LABEL_HEIGHT}\n rx={RADIUS}\n ry={RADIUS}\n valueMarkerFillColor={valueMarkerFillColor}\n />\n <ValueMarkerLabel\n data-test=\"value-marker-label\"\n x={labelX}\n y={labelY}\n valueMarkerLabelFillColor={valueMarkerLabelFillColor}\n >\n {usePercentageValue\n ? `${((value / (max - min)) * 100).toFixed(2)}%`\n : formatNumber(value, 0, {\n useThousandSeparators: true,\n useTrendUnits: true,\n })}\n </ValueMarkerLabel>\n </g>\n )}\n </g>\n );\n};\n\nValueMarker.propTypes = {\n x: T.number,\n y: T.number,\n length: T.number,\n min: T.number,\n max: T.number,\n value: T.number,\n orientation: T.string,\n showValue: T.bool,\n usePercentageValue: T.bool,\n valueMarkerFillColor: T.string,\n valueMarkerLabelFillColor: T.string,\n};\n\nValueMarker.defaultProps = {\n min: 0,\n max: 100,\n orientation: 'horizontal',\n showValue: true,\n usePercentageValue: false,\n};\n\nexport default ValueMarker;\n","module.exports = require(\"@babel/runtime/helpers/extends\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"@babel/runtime/helpers/extends\"","webpack:///external \"@splunk/visualizations-shared/numberUtils\"","webpack:///external \"styled-components\"","webpack:///./src/common/GaugeValueMarker.jsx"],"names":["MARKER_THICKNESS","MARKER_INNER_LENGTH","MARKER_LABEL_WIDTH","MARKER_LABEL_HEIGHT","RADIUS","DELTA_LENGTH","ValueMarkerRect","styled","props","ValueMarkerLabelRect","ValueMarkerLabel","positionValueMarkerRect","x","y","orientation","valueMarkerRectLength","hLength","vLength","markerStartX","markerStartY","innerHLength","innerVLength","innerStartX","innerStartY","positionLabel","length","labelRectX","labelRectY","labelX","labelY","ValueMarker","min","max","value","showValue","usePercentageValue","valueMarkerFillColor","valueMarkerLabelFillColor","formatNumber","useThousandSeparators","useTrendUnits","T","string"],"mappings":"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","file":"GaugeValueMarker.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 = 50);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"@babel/runtime/helpers/extends\");","module.exports = require(\"@splunk/visualizations-shared/numberUtils\");","module.exports = require(\"styled-components\");","import React from 'react';\nimport T from 'prop-types';\nimport styled from 'styled-components';\nimport { formatNumber } from '@splunk/visualizations-shared/numberUtils';\n\nconst MARKER_THICKNESS = 15;\nconst MARKER_INNER_LENGTH = 30;\n\nconst MARKER_LABEL_WIDTH = 60;\nconst MARKER_LABEL_HEIGHT = 25;\nconst RADIUS = 2;\nconst DELTA_LENGTH = 12;\n\nconst ValueMarkerRect = styled.path`\n stroke-width: 2px;\n fill: ${props => props.valueMarkerFillColor};\n`;\n\nconst ValueMarkerLabelRect = styled.rect`\n fill: ${props => props.valueMarkerFillColor};\n`;\n\nconst ValueMarkerLabel = styled.text`\n fill: ${props => props.valueMarkerLabelFillColor};\n font-size: 14px;\n font-family: Splunk Platform Sans, sans-serif;\n line-height: 16px;\n text-anchor: middle;\n text-align: center;\n dominant-baseline: middle;\n`;\n\n/**\n * calculate the path of Value Marker shape\n * @method positionValueMarkerRect\n * @param {Object} input\n * @param {Number} input.x\n * @param {Number} input.y\n * @param {String} input.orientation\n * @param {Number} input.valueMarkerRectLength\n * @return {String} d containing a series of path commands that define the path to be\n */\nexport const positionValueMarkerRect = ({ x, y, orientation, valueMarkerRectLength }) => {\n let hLength = MARKER_THICKNESS;\n let vLength = valueMarkerRectLength;\n let markerStartX = x - MARKER_THICKNESS;\n const markerStartY = y;\n\n let innerHLength = hLength / 3;\n let innerVLength = MARKER_INNER_LENGTH;\n let innerStartX = markerStartX + innerHLength;\n let innerStartY = markerStartY + 7;\n\n if (orientation === 'vertical') {\n hLength = valueMarkerRectLength;\n vLength = MARKER_THICKNESS;\n markerStartX = x;\n\n innerHLength = MARKER_INNER_LENGTH;\n innerVLength = vLength / 3;\n innerStartX = markerStartX + 7;\n innerStartY = markerStartY + innerVLength;\n }\n\n return (\n `M${markerStartX},${markerStartY}h${hLength}a${RADIUS},${RADIUS} 0 0 1 ${RADIUS},${RADIUS}v${\n vLength - 2 * RADIUS\n }a${RADIUS},${RADIUS} 0 0 1 ${-RADIUS},${RADIUS}h${-hLength}a${RADIUS},${RADIUS} 0 0 1 ${-RADIUS},${-RADIUS}v${\n 2 * RADIUS - vLength\n }a${RADIUS},${RADIUS} 0 0 1 ${RADIUS},${-RADIUS}z` +\n `M${innerStartX},${innerStartY}v${\n innerVLength - RADIUS\n }a${RADIUS},${RADIUS} 0 0 0 ${RADIUS},${RADIUS}h${\n innerHLength - 2 * RADIUS\n }a${RADIUS},${RADIUS} 0 0 0 ${RADIUS},${-RADIUS}v${\n RADIUS - innerVLength\n }a${RADIUS},${RADIUS} 0 0 0 ${-RADIUS},${-RADIUS}h${\n 2 * RADIUS - innerHLength\n }a${RADIUS},${RADIUS} 0 0 0 ${-RADIUS},${RADIUS}z`\n );\n};\n\n/**\n * calculate the position of value marker label\n * @method positionLabel\n * @param {Object} input\n * @param {Number} input.x\n * @param {Number} input.y\n * @param {Number} input.length gauge thickness\n * @param {String} input.orientation\n * @return {Object} positions\n * @return {Number} positions.labelRectX x of value marker label rect\n * @return {Number} positions.labelRectY y of value marker label rect\n * @return {Number} positions.labelX x of value marker label text\n * @return {Number} positions.labelY y of value marker label text\n */\nexport const positionLabel = ({ x, y, length, orientation }) => {\n // for horizontal view\n let labelRectX = x - MARKER_THICKNESS / 2 - MARKER_LABEL_WIDTH / 2;\n let labelRectY = y + length;\n if (orientation === 'vertical') {\n labelRectX = x + length;\n labelRectY = y - (MARKER_LABEL_HEIGHT - MARKER_THICKNESS) / 2;\n }\n const labelX = labelRectX + MARKER_LABEL_WIDTH / 2;\n const labelY = labelRectY + MARKER_LABEL_HEIGHT / 2;\n return { labelRectX, labelRectY, labelX, labelY };\n};\n\nconst ValueMarker = ({ ...props }) => {\n const {\n x,\n y,\n length,\n min,\n max,\n value,\n orientation,\n showValue,\n usePercentageValue,\n valueMarkerFillColor,\n valueMarkerLabelFillColor,\n } = props;\n\n const valueMarkerRectLength = length + DELTA_LENGTH;\n const { labelRectX, labelRectY, labelX, labelY } = positionLabel({\n x,\n y,\n length,\n orientation,\n });\n\n return (\n <g>\n <ValueMarkerRect\n data-test=\"value-marker-rect\"\n d={positionValueMarkerRect({ x, y, orientation, valueMarkerRectLength })}\n valueMarkerFillColor={valueMarkerFillColor}\n />\n {showValue && (\n <g>\n <ValueMarkerLabelRect\n data-test=\"value-marker-label-rect\"\n x={labelRectX}\n y={labelRectY}\n width={MARKER_LABEL_WIDTH}\n height={MARKER_LABEL_HEIGHT}\n rx={RADIUS}\n ry={RADIUS}\n valueMarkerFillColor={valueMarkerFillColor}\n />\n <ValueMarkerLabel\n data-test=\"value-marker-label\"\n x={labelX}\n y={labelY}\n valueMarkerLabelFillColor={valueMarkerLabelFillColor}\n >\n {usePercentageValue\n ? `${((value / (max - min)) * 100).toFixed(2)}%`\n : formatNumber(value, 0, {\n useThousandSeparators: true,\n useTrendUnits: true,\n })}\n </ValueMarkerLabel>\n </g>\n )}\n </g>\n );\n};\n\nValueMarker.propTypes = {\n x: T.number,\n y: T.number,\n length: T.number,\n min: T.number,\n max: T.number,\n value: T.number,\n orientation: T.string,\n showValue: T.bool,\n usePercentageValue: T.bool,\n valueMarkerFillColor: T.string,\n valueMarkerLabelFillColor: T.string,\n};\n\nValueMarker.defaultProps = {\n min: 0,\n max: 100,\n orientation: 'horizontal',\n showValue: true,\n usePercentageValue: false,\n};\n\nexport default ValueMarker;\n"],"sourceRoot":""}