@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,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 = 50);
90
+ /******/ return __webpack_require__(__webpack_require__.s = 61);
91
91
  /******/ })
92
92
  /************************************************************************/
93
93
  /******/ ({
@@ -106,6 +106,13 @@ module.exports = require("prop-types");
106
106
 
107
107
  /***/ }),
108
108
 
109
+ /***/ 10:
110
+ /***/ (function(module, exports) {
111
+
112
+ module.exports = require("@babel/runtime/helpers/extends");
113
+
114
+ /***/ }),
115
+
109
116
  /***/ 16:
110
117
  /***/ (function(module, exports) {
111
118
 
@@ -120,14 +127,14 @@ module.exports = require("styled-components");
120
127
 
121
128
  /***/ }),
122
129
 
123
- /***/ 50:
130
+ /***/ 61:
124
131
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
125
132
 
126
133
  "use strict";
127
134
  __webpack_require__.r(__webpack_exports__);
128
135
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MajorTick", function() { return MajorTick; });
129
136
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "positionMajorTick", function() { return positionMajorTick; });
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__);
@@ -161,16 +168,16 @@ var MajorTickLabel = styled_components__WEBPACK_IMPORTED_MODULE_3___default.a.te
161
168
  });
162
169
  var MajorTick = function MajorTick(_ref) {
163
170
  var index = _ref.index,
164
- x1 = _ref.x1,
165
- y1 = _ref.y1,
166
- x2 = _ref.x2,
167
- y2 = _ref.y2,
168
- showLabels = _ref.showLabels,
169
- label = _ref.label,
170
- labelX = _ref.labelX,
171
- labelY = _ref.labelY,
172
- majorTickStrokeColor = _ref.majorTickStrokeColor,
173
- majorTickFillColor = _ref.majorTickFillColor;
171
+ x1 = _ref.x1,
172
+ y1 = _ref.y1,
173
+ x2 = _ref.x2,
174
+ y2 = _ref.y2,
175
+ showLabels = _ref.showLabels,
176
+ label = _ref.label,
177
+ labelX = _ref.labelX,
178
+ labelY = _ref.labelY,
179
+ majorTickStrokeColor = _ref.majorTickStrokeColor,
180
+ majorTickFillColor = _ref.majorTickFillColor;
174
181
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("g", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MajorTickLine, {
175
182
  index: index,
176
183
  x1: x1,
@@ -200,7 +207,6 @@ MajorTick.propTypes = {
200
207
  majorTickStrokeColor: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string,
201
208
  majorTickFillColor: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string
202
209
  };
203
-
204
210
  /**
205
211
  * calculate position for each major tick
206
212
  * @method positionMajorTick
@@ -214,20 +220,22 @@ MajorTick.propTypes = {
214
220
  * @param {Number} input.i index of major tick
215
221
  * @return {Object} MajorTick positions
216
222
  */
223
+
217
224
  var positionMajorTick = function positionMajorTick(_ref2) {
218
225
  var width = _ref2.width,
219
- height = _ref2.height,
220
- startX = _ref2.startX,
221
- startY = _ref2.startY,
222
- orientation = _ref2.orientation,
223
- numOfTicks = _ref2.numOfTicks,
224
- i = _ref2.i;
226
+ height = _ref2.height,
227
+ startX = _ref2.startX,
228
+ startY = _ref2.startY,
229
+ orientation = _ref2.orientation,
230
+ numOfTicks = _ref2.numOfTicks,
231
+ i = _ref2.i;
225
232
  var x1 = startX;
226
233
  var y1 = startY;
227
234
  var x2 = startX;
228
235
  var y2 = startY;
229
236
  var labelX = startX;
230
237
  var labelY;
238
+
231
239
  if (orientation === 'vertical') {
232
240
  var y = height / numOfTicks * (numOfTicks - i) + startY;
233
241
  x1 -= TICK_LENGTH_DELTA;
@@ -245,6 +253,7 @@ var positionMajorTick = function positionMajorTick(_ref2) {
245
253
  labelX = x;
246
254
  labelY = y2 + 16;
247
255
  }
256
+
248
257
  return {
249
258
  x1: x1,
250
259
  y1: y1,
@@ -254,39 +263,43 @@ var positionMajorTick = function positionMajorTick(_ref2) {
254
263
  labelY: labelY
255
264
  };
256
265
  };
266
+
257
267
  var MajorTicks = function MajorTicks(_ref3) {
258
268
  var props = _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, _ref3);
269
+
259
270
  var width = props.width,
260
- height = props.height,
261
- startX = props.startX,
262
- startY = props.startY,
263
- min = props.min,
264
- max = props.max,
265
- majorUnit = props.majorUnit,
266
- orientation = props.orientation,
267
- showLabels = props.showLabels,
268
- usePercentageRange = props.usePercentageRange,
269
- majorTickFillColor = props.majorTickFillColor,
270
- majorTickStrokeColor = props.majorTickStrokeColor;
271
+ height = props.height,
272
+ startX = props.startX,
273
+ startY = props.startY,
274
+ min = props.min,
275
+ max = props.max,
276
+ majorUnit = props.majorUnit,
277
+ orientation = props.orientation,
278
+ showLabels = props.showLabels,
279
+ usePercentageRange = props.usePercentageRange,
280
+ majorTickFillColor = props.majorTickFillColor,
281
+ majorTickStrokeColor = props.majorTickStrokeColor;
271
282
  var range = max - min;
272
283
  var numOfTicks = majorUnit === 'auto' || Number.isNaN(Number(majorUnit)) || majorUnit <= 0 ? DEFAULT_NUM_OF_TICKS : range / majorUnit;
273
284
  var majorTicks = [];
285
+
274
286
  for (var i = 0; i <= numOfTicks; i += 1) {
275
287
  var _positionMajorTick = positionMajorTick({
276
- width: width,
277
- height: height,
278
- startX: startX,
279
- startY: startY,
280
- orientation: orientation,
281
- numOfTicks: numOfTicks,
282
- i: i
283
- }),
284
- x1 = _positionMajorTick.x1,
285
- y1 = _positionMajorTick.y1,
286
- x2 = _positionMajorTick.x2,
287
- y2 = _positionMajorTick.y2,
288
- labelX = _positionMajorTick.labelX,
289
- labelY = _positionMajorTick.labelY;
288
+ width: width,
289
+ height: height,
290
+ startX: startX,
291
+ startY: startY,
292
+ orientation: orientation,
293
+ numOfTicks: numOfTicks,
294
+ i: i
295
+ }),
296
+ x1 = _positionMajorTick.x1,
297
+ y1 = _positionMajorTick.y1,
298
+ x2 = _positionMajorTick.x2,
299
+ y2 = _positionMajorTick.y2,
300
+ labelX = _positionMajorTick.labelX,
301
+ labelY = _positionMajorTick.labelY;
302
+
290
303
  var label = usePercentageRange ? "".concat(parseInt((i / numOfTicks - min / range) * 100, 10), "%") : parseInt(min + range / numOfTicks * i, 10);
291
304
  majorTicks.push( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MajorTick, {
292
305
  key: i,
@@ -302,26 +315,28 @@ var MajorTicks = function MajorTicks(_ref3) {
302
315
  majorTickFillColor: majorTickFillColor,
303
316
  majorTickStrokeColor: majorTickStrokeColor
304
317
  }));
305
- }
318
+ } // if the gauge is not divided evenly, put the last tick at the end of the gauge
319
+
306
320
 
307
- // if the gauge is not divided evenly, put the last tick at the end of the gauge
308
321
  if (!Number.isInteger(numOfTicks)) {
309
322
  var extraNumOfTicks = Math.ceil(numOfTicks);
323
+
310
324
  var _positionMajorTick2 = positionMajorTick({
311
- width: width,
312
- height: height,
313
- startX: startX,
314
- startY: startY,
315
- orientation: orientation,
316
- numOfTicks: extraNumOfTicks,
317
- i: extraNumOfTicks
318
- }),
319
- _x = _positionMajorTick2.x1,
320
- _y = _positionMajorTick2.y1,
321
- _x2 = _positionMajorTick2.x2,
322
- _y2 = _positionMajorTick2.y2,
323
- _labelX = _positionMajorTick2.labelX,
324
- _labelY = _positionMajorTick2.labelY;
325
+ width: width,
326
+ height: height,
327
+ startX: startX,
328
+ startY: startY,
329
+ orientation: orientation,
330
+ numOfTicks: extraNumOfTicks,
331
+ i: extraNumOfTicks
332
+ }),
333
+ _x = _positionMajorTick2.x1,
334
+ _y = _positionMajorTick2.y1,
335
+ _x2 = _positionMajorTick2.x2,
336
+ _y2 = _positionMajorTick2.y2,
337
+ _labelX = _positionMajorTick2.labelX,
338
+ _labelY = _positionMajorTick2.labelY;
339
+
325
340
  majorTicks.push( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MajorTick, {
326
341
  key: extraNumOfTicks,
327
342
  id: extraNumOfTicks,
@@ -337,8 +352,10 @@ var MajorTicks = function MajorTicks(_ref3) {
337
352
  majorTickStrokeColor: majorTickStrokeColor
338
353
  }));
339
354
  }
355
+
340
356
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("g", null, majorTicks);
341
357
  };
358
+
342
359
  MajorTicks.propTypes = {
343
360
  width: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
344
361
  height: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
@@ -363,13 +380,6 @@ MajorTicks.defaultProps = {
363
380
  };
364
381
  /* harmony default export */ __webpack_exports__["default"] = (MajorTicks);
365
382
 
366
- /***/ }),
367
-
368
- /***/ 9:
369
- /***/ (function(module, exports) {
370
-
371
- module.exports = require("@babel/runtime/helpers/extends");
372
-
373
383
  /***/ })
374
384
 
375
385
  /******/ });
@@ -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","line","withConfig","displayName","componentId","props","majorTickStrokeColor","index","MajorTickLabel","text","majorTickFillColor","MajorTick","_ref","x1","y1","x2","y2","showLabels","label","labelX","labelY","React","createElement","x","y","isNumerial","formatNumber","useThousandSeparators","useTrendUnits","propTypes","T","number","bool","oneOfType","string","positionMajorTick","_ref2","width","height","startX","startY","orientation","numOfTicks","i","MajorTicks","_ref3","_extends","min","max","majorUnit","usePercentageRange","range","Number","isNaN","majorTicks","_positionMajorTick","concat","parseInt","push","key","isInteger","extraNumOfTicks","Math","ceil","_positionMajorTick2","_x","_y","_x2","_y2","_labelX","_labelY","id","defaultProps"],"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 = 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 { 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 = 61);\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":""}
@@ -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 = 51);
90
+ /******/ return __webpack_require__(__webpack_require__.s = 62);
91
91
  /******/ })
92
92
  /************************************************************************/
93
93
  /******/ ({
@@ -106,6 +106,13 @@ module.exports = require("prop-types");
106
106
 
107
107
  /***/ }),
108
108
 
109
+ /***/ 10:
110
+ /***/ (function(module, exports) {
111
+
112
+ module.exports = require("@babel/runtime/helpers/extends");
113
+
114
+ /***/ }),
115
+
109
116
  /***/ 16:
110
117
  /***/ (function(module, exports) {
111
118
 
@@ -120,14 +127,14 @@ module.exports = require("styled-components");
120
127
 
121
128
  /***/ }),
122
129
 
123
- /***/ 51:
130
+ /***/ 62:
124
131
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
125
132
 
126
133
  "use strict";
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__);
@@ -166,7 +173,6 @@ var ValueMarkerLabel = styled_components__WEBPACK_IMPORTED_MODULE_3___default.a.
166
173
  })(["fill:", ";font-size:14px;font-family:Splunk Platform Sans,sans-serif;line-height:16px;text-anchor:middle;text-align:center;dominant-baseline:middle;"], function (props) {
167
174
  return props.valueMarkerLabelFillColor;
168
175
  });
169
-
170
176
  /**
171
177
  * calculate the path of Value Marker shape
172
178
  * @method positionValueMarkerRect
@@ -177,13 +183,14 @@ var ValueMarkerLabel = styled_components__WEBPACK_IMPORTED_MODULE_3___default.a.
177
183
  * @param {Number} input.valueMarkerRectLength
178
184
  * @return {String} d containing a series of path commands that define the path to be
179
185
  */
186
+
180
187
  var positionValueMarkerRect = function positionValueMarkerRect(_ref) {
181
188
  var x = _ref.x,
182
- y = _ref.y,
183
- orientation = _ref.orientation,
184
- valueMarkerRectLength = _ref.valueMarkerRectLength,
185
- _ref$alignCenter = _ref.alignCenter,
186
- alignCenter = _ref$alignCenter === void 0 ? false : _ref$alignCenter;
189
+ y = _ref.y,
190
+ orientation = _ref.orientation,
191
+ valueMarkerRectLength = _ref.valueMarkerRectLength,
192
+ _ref$alignCenter = _ref.alignCenter,
193
+ alignCenter = _ref$alignCenter === void 0 ? false : _ref$alignCenter;
187
194
  var hLength = MARKER_THICKNESS;
188
195
  var vLength = valueMarkerRectLength;
189
196
  var markerStartX = alignCenter ? x - MARKER_THICKNESS / 2 : x - MARKER_THICKNESS;
@@ -192,6 +199,7 @@ var positionValueMarkerRect = function positionValueMarkerRect(_ref) {
192
199
  var innerVLength = MARKER_INNER_LENGTH;
193
200
  var innerStartX = markerStartX + innerHLength;
194
201
  var innerStartY = markerStartY + 7;
202
+
195
203
  if (orientation === 'vertical') {
196
204
  hLength = valueMarkerRectLength;
197
205
  vLength = MARKER_THICKNESS;
@@ -202,9 +210,9 @@ var positionValueMarkerRect = function positionValueMarkerRect(_ref) {
202
210
  innerStartX = markerStartX + 7;
203
211
  innerStartY = markerStartY + innerVLength;
204
212
  }
213
+
205
214
  return "M".concat(markerStartX, ",").concat(markerStartY, "h").concat(hLength, "a").concat(RADIUS, ",").concat(RADIUS, " 0 0 1 ").concat(RADIUS, ",").concat(RADIUS, "v").concat(vLength - 2 * RADIUS, "a").concat(RADIUS, ",").concat(RADIUS, " 0 0 1 ").concat(-RADIUS, ",").concat(RADIUS, "h").concat(-hLength, "a").concat(RADIUS, ",").concat(RADIUS, " 0 0 1 ").concat(-RADIUS, ",").concat(-RADIUS, "v").concat(2 * RADIUS - vLength, "a").concat(RADIUS, ",").concat(RADIUS, " 0 0 1 ").concat(RADIUS, ",").concat(-RADIUS, "z") + "M".concat(innerStartX, ",").concat(innerStartY, "v").concat(innerVLength - RADIUS, "a").concat(RADIUS, ",").concat(RADIUS, " 0 0 0 ").concat(RADIUS, ",").concat(RADIUS, "h").concat(innerHLength - 2 * RADIUS, "a").concat(RADIUS, ",").concat(RADIUS, " 0 0 0 ").concat(RADIUS, ",").concat(-RADIUS, "v").concat(RADIUS - innerVLength, "a").concat(RADIUS, ",").concat(RADIUS, " 0 0 0 ").concat(-RADIUS, ",").concat(-RADIUS, "h").concat(2 * RADIUS - innerHLength, "a").concat(RADIUS, ",").concat(RADIUS, " 0 0 0 ").concat(-RADIUS, ",").concat(RADIUS, "z");
206
215
  };
207
-
208
216
  /**
209
217
  * calculate the position of value marker label
210
218
  * @method positionLabel
@@ -219,20 +227,23 @@ var positionValueMarkerRect = function positionValueMarkerRect(_ref) {
219
227
  * @return {Number} positions.labelX x of value marker label text
220
228
  * @return {Number} positions.labelY y of value marker label text
221
229
  */
230
+
222
231
  var positionLabel = function positionLabel(_ref2) {
223
232
  var x = _ref2.x,
224
- y = _ref2.y,
225
- length = _ref2.length,
226
- orientation = _ref2.orientation,
227
- _ref2$alignCenter = _ref2.alignCenter,
228
- alignCenter = _ref2$alignCenter === void 0 ? false : _ref2$alignCenter;
229
- // for horizontal view
233
+ y = _ref2.y,
234
+ length = _ref2.length,
235
+ orientation = _ref2.orientation,
236
+ _ref2$alignCenter = _ref2.alignCenter,
237
+ alignCenter = _ref2$alignCenter === void 0 ? false : _ref2$alignCenter; // for horizontal view
238
+
230
239
  var labelRectX = alignCenter ? x - MARKER_LABEL_WIDTH / 2 : x - MARKER_THICKNESS / 2 - MARKER_LABEL_WIDTH / 2;
231
240
  var labelRectY = y + length;
241
+
232
242
  if (orientation === 'vertical') {
233
243
  labelRectX = x + length;
234
244
  labelRectY = alignCenter ? y - MARKER_LABEL_HEIGHT / 2 : y - (MARKER_LABEL_HEIGHT - MARKER_THICKNESS) / 2;
235
245
  }
246
+
236
247
  var labelX = labelRectX + MARKER_LABEL_WIDTH / 2;
237
248
  var labelY = labelRectY + MARKER_LABEL_HEIGHT / 2;
238
249
  return {
@@ -242,32 +253,36 @@ var positionLabel = function positionLabel(_ref2) {
242
253
  labelY: labelY
243
254
  };
244
255
  };
256
+
245
257
  var ValueMarker = function ValueMarker(_ref3) {
246
258
  var props = _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, _ref3);
259
+
247
260
  var x = props.x,
248
- y = props.y,
249
- length = props.length,
250
- min = props.min,
251
- max = props.max,
252
- value = props.value,
253
- orientation = props.orientation,
254
- showValue = props.showValue,
255
- usePercentageValue = props.usePercentageValue,
256
- valueMarkerFillColor = props.valueMarkerFillColor,
257
- valueMarkerLabelFillColor = props.valueMarkerLabelFillColor,
258
- alignCenter = props.alignCenter;
261
+ y = props.y,
262
+ length = props.length,
263
+ min = props.min,
264
+ max = props.max,
265
+ value = props.value,
266
+ orientation = props.orientation,
267
+ showValue = props.showValue,
268
+ usePercentageValue = props.usePercentageValue,
269
+ valueMarkerFillColor = props.valueMarkerFillColor,
270
+ valueMarkerLabelFillColor = props.valueMarkerLabelFillColor,
271
+ alignCenter = props.alignCenter;
259
272
  var valueMarkerRectLength = length + DELTA_LENGTH;
273
+
260
274
  var _positionLabel = positionLabel({
261
- x: x,
262
- y: y,
263
- length: length,
264
- orientation: orientation,
265
- alignCenter: alignCenter
266
- }),
267
- labelRectX = _positionLabel.labelRectX,
268
- labelRectY = _positionLabel.labelRectY,
269
- labelX = _positionLabel.labelX,
270
- labelY = _positionLabel.labelY;
275
+ x: x,
276
+ y: y,
277
+ length: length,
278
+ orientation: orientation,
279
+ alignCenter: alignCenter
280
+ }),
281
+ labelRectX = _positionLabel.labelRectX,
282
+ labelRectY = _positionLabel.labelRectY,
283
+ labelX = _positionLabel.labelX,
284
+ labelY = _positionLabel.labelY;
285
+
271
286
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("g", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(ValueMarkerRect, {
272
287
  "data-test": "value-marker-rect",
273
288
  d: positionValueMarkerRect({
@@ -297,6 +312,7 @@ var ValueMarker = function ValueMarker(_ref3) {
297
312
  useTrendUnits: true
298
313
  }))));
299
314
  };
315
+
300
316
  ValueMarker.propTypes = {
301
317
  x: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
302
318
  y: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
@@ -321,13 +337,6 @@ ValueMarker.defaultProps = {
321
337
  };
322
338
  /* harmony default export */ __webpack_exports__["default"] = (ValueMarker);
323
339
 
324
- /***/ }),
325
-
326
- /***/ 9:
327
- /***/ (function(module, exports) {
328
-
329
- module.exports = require("@babel/runtime/helpers/extends");
330
-
331
340
  /***/ })
332
341
 
333
342
  /******/ });
@@ -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","path","withConfig","displayName","componentId","props","valueMarkerFillColor","ValueMarkerLabelRect","rect","ValueMarkerLabel","text","valueMarkerLabelFillColor","positionValueMarkerRect","_ref","x","y","orientation","valueMarkerRectLength","_ref$alignCenter","alignCenter","hLength","vLength","markerStartX","markerStartY","innerHLength","innerVLength","innerStartX","innerStartY","concat","positionLabel","_ref2","length","_ref2$alignCenter","labelRectX","labelRectY","labelX","labelY","ValueMarker","_ref3","_extends","min","max","value","showValue","usePercentageValue","_positionLabel","React","createElement","d","width","height","rx","ry","toFixed","formatNumber","useThousandSeparators","useTrendUnits","propTypes","T","number","string","bool","defaultProps"],"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 = 51);\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 = ({\n x,\n y,\n orientation,\n valueMarkerRectLength,\n alignCenter = false,\n}) => {\n let hLength = MARKER_THICKNESS;\n let vLength = valueMarkerRectLength;\n let markerStartX = alignCenter ? x - MARKER_THICKNESS / 2 : x - MARKER_THICKNESS;\n let 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 markerStartY = alignCenter ? y - MARKER_THICKNESS / 2 : y;\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, alignCenter = false }) => {\n // for horizontal view\n let labelRectX = alignCenter\n ? x - MARKER_LABEL_WIDTH / 2\n : x - MARKER_THICKNESS / 2 - MARKER_LABEL_WIDTH / 2;\n let labelRectY = y + length;\n if (orientation === 'vertical') {\n labelRectX = x + length;\n labelRectY = alignCenter\n ? y - MARKER_LABEL_HEIGHT / 2\n : 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 alignCenter,\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 alignCenter,\n });\n\n return (\n <g>\n <ValueMarkerRect\n data-test=\"value-marker-rect\"\n d={positionValueMarkerRect({ x, y, orientation, valueMarkerRectLength, alignCenter })}\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 alignCenter: T.bool,\n};\n\nValueMarker.defaultProps = {\n min: 0,\n max: 100,\n orientation: 'horizontal',\n showValue: true,\n usePercentageValue: false,\n alignCenter: 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","alignCenter","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","bool"],"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 = 62);\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 = ({\n x,\n y,\n orientation,\n valueMarkerRectLength,\n alignCenter = false,\n}) => {\n let hLength = MARKER_THICKNESS;\n let vLength = valueMarkerRectLength;\n let markerStartX = alignCenter ? x - MARKER_THICKNESS / 2 : x - MARKER_THICKNESS;\n let 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 markerStartY = alignCenter ? y - MARKER_THICKNESS / 2 : y;\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, alignCenter = false }) => {\n // for horizontal view\n let labelRectX = alignCenter\n ? x - MARKER_LABEL_WIDTH / 2\n : x - MARKER_THICKNESS / 2 - MARKER_LABEL_WIDTH / 2;\n let labelRectY = y + length;\n if (orientation === 'vertical') {\n labelRectX = x + length;\n labelRectY = alignCenter\n ? y - MARKER_LABEL_HEIGHT / 2\n : 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 alignCenter,\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 alignCenter,\n });\n\n return (\n <g>\n <ValueMarkerRect\n data-test=\"value-marker-rect\"\n d={positionValueMarkerRect({ x, y, orientation, valueMarkerRectLength, alignCenter })}\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 alignCenter: T.bool,\n};\n\nValueMarker.defaultProps = {\n min: 0,\n max: 100,\n orientation: 'horizontal',\n showValue: true,\n usePercentageValue: false,\n alignCenter: false,\n};\n\nexport default ValueMarker;\n"],"sourceRoot":""}