@splunk/visualizations 23.2.0 → 23.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/Area.config.js +36 -30
  2. package/Area.config.js.map +1 -1
  3. package/Area.js +243 -203
  4. package/Area.js.map +1 -1
  5. package/Bar.config.js +29 -23
  6. package/Bar.config.js.map +1 -1
  7. package/Bar.js +233 -193
  8. package/Bar.js.map +1 -1
  9. package/Bubble.config.js +36 -23
  10. package/Bubble.config.js.map +1 -1
  11. package/Bubble.js +247 -196
  12. package/Bubble.js.map +1 -1
  13. package/ChoroplethSvg.config.js +15 -12
  14. package/ChoroplethSvg.config.js.map +1 -1
  15. package/ChoroplethSvg.js +201 -148
  16. package/ChoroplethSvg.js.map +1 -1
  17. package/Column.config.js +29 -23
  18. package/Column.config.js.map +1 -1
  19. package/Column.js +235 -194
  20. package/Column.js.map +1 -1
  21. package/Ellipse.config.js +23 -20
  22. package/Ellipse.config.js.map +1 -1
  23. package/Ellipse.js +176 -123
  24. package/Ellipse.js.map +1 -1
  25. package/FillerGauge.config.js +803 -0
  26. package/FillerGauge.config.js.map +1 -0
  27. package/FillerGauge.js +3634 -0
  28. package/FillerGauge.js.map +1 -0
  29. package/Image.config.js +13 -6
  30. package/Image.config.js.map +1 -1
  31. package/Image.js +260 -200
  32. package/Image.js.map +1 -1
  33. package/LICENSE.md +14 -0
  34. package/Line.config.js +40 -31
  35. package/Line.config.js.map +1 -1
  36. package/Line.js +248 -202
  37. package/Line.js.map +1 -1
  38. package/LinkGraph.config.js +107 -123
  39. package/LinkGraph.config.js.map +1 -1
  40. package/LinkGraph.js +241 -193
  41. package/LinkGraph.js.map +1 -1
  42. package/Markdown.config.js +95 -3
  43. package/Markdown.config.js.map +1 -1
  44. package/Markdown.js +272 -118
  45. package/Markdown.js.map +1 -1
  46. package/MarkerGauge.config.js +750 -0
  47. package/MarkerGauge.config.js.map +1 -0
  48. package/MarkerGauge.js +3758 -0
  49. package/MarkerGauge.js.map +1 -0
  50. package/ParallelCoordinates.config.js +52 -46
  51. package/ParallelCoordinates.config.js.map +1 -1
  52. package/ParallelCoordinates.js +257 -164
  53. package/ParallelCoordinates.js.map +1 -1
  54. package/Pie.config.js +61 -46
  55. package/Pie.config.js.map +1 -1
  56. package/Pie.js +254 -186
  57. package/Pie.js.map +1 -1
  58. package/Punchcard.config.js +279 -39
  59. package/Punchcard.config.js.map +1 -1
  60. package/Punchcard.js +825 -193
  61. package/Punchcard.js.map +1 -1
  62. package/README.external.md +45 -0
  63. package/README.md +18 -3
  64. package/Rectangle.config.js +89 -107
  65. package/Rectangle.config.js.map +1 -1
  66. package/Rectangle.js +204 -145
  67. package/Rectangle.js.map +1 -1
  68. package/Sankey.config.js +29 -22
  69. package/Sankey.config.js.map +1 -1
  70. package/Sankey.js +250 -186
  71. package/Sankey.js.map +1 -1
  72. package/Scatter.config.js +39 -28
  73. package/Scatter.config.js.map +1 -1
  74. package/Scatter.js +2375 -2434
  75. package/Scatter.js.map +1 -1
  76. package/SingleValue.config.js +37 -29
  77. package/SingleValue.config.js.map +1 -1
  78. package/SingleValue.js +3108 -3174
  79. package/SingleValue.js.map +1 -1
  80. package/SingleValueBasic.js +37 -23
  81. package/SingleValueBasic.js.map +1 -1
  82. package/SingleValueIcon.config.js +36 -28
  83. package/SingleValueIcon.config.js.map +1 -1
  84. package/SingleValueIcon.js +279 -210
  85. package/SingleValueIcon.js.map +1 -1
  86. package/SingleValueRadial.config.js +15 -13
  87. package/SingleValueRadial.config.js.map +1 -1
  88. package/SingleValueRadial.js +299 -253
  89. package/SingleValueRadial.js.map +1 -1
  90. package/Table.config.js +26 -10
  91. package/Table.config.js.map +1 -1
  92. package/Table.js +382 -265
  93. package/Table.js.map +1 -1
  94. package/common/Charting.js +33 -30
  95. package/common/Charting.js.map +1 -1
  96. package/common/ChartingApi.js +4 -4
  97. package/common/ChartingApi.js.map +1 -1
  98. package/common/EventsDoc.js +36 -34
  99. package/common/EventsDoc.js.map +1 -1
  100. package/common/GaugeMajorTicks.js +386 -0
  101. package/common/GaugeMajorTicks.js.map +1 -0
  102. package/common/GaugeValueMarker.js +333 -0
  103. package/common/GaugeValueMarker.js.map +1 -0
  104. package/common/OptionsDoc.js +47 -33
  105. package/common/OptionsDoc.js.map +1 -1
  106. package/common/OverviewDoc.js +376 -0
  107. package/common/OverviewDoc.js.map +1 -0
  108. package/common/SplunkVisualization.js +6 -6
  109. package/common/SplunkVisualization.js.map +1 -1
  110. package/common/SplunkVisualizationApi.js +10 -10
  111. package/common/SplunkVisualizationApi.js.map +1 -1
  112. package/common/ThemesDoc.js +55 -72
  113. package/common/ThemesDoc.js.map +1 -1
  114. package/common/chartingUtils.js +15 -13
  115. package/common/chartingUtils.js.map +1 -1
  116. package/common/docUtils.js +4 -4
  117. package/common/docUtils.js.map +1 -1
  118. package/common/gaugeUtils.js +893 -0
  119. package/common/gaugeUtils.js.map +1 -0
  120. package/common/shapeUtils.js +8 -8
  121. package/common/shapeUtils.js.map +1 -1
  122. package/common/utils/JSONSchemaUtils.js.map +1 -1
  123. package/common/utils/configUtils.js.map +1 -1
  124. package/common/utils/hocUtils.js +57 -3
  125. package/common/utils/hocUtils.js.map +1 -1
  126. package/common/utils/singleValueUtils.js +24 -10
  127. package/common/utils/singleValueUtils.js.map +1 -1
  128. package/common/withDashboardViz.js +158 -95
  129. package/common/withDashboardViz.js.map +1 -1
  130. package/package.json +18 -14
  131. package/common/utils/eventUtils.js +0 -115
  132. package/common/utils/eventUtils.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"styled-components\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@splunk/react-ui/Heading\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///external \"@splunk/react-ui/Markdown\"","webpack:///external \"@babel/runtime/helpers/inherits\"","webpack:///external \"@babel/runtime/helpers/getPrototypeOf\"","webpack:///external \"@babel/runtime/helpers/extends\"","webpack:///external \"@babel/runtime/helpers/assertThisInitialized\"","webpack:///external \"@babel/runtime/helpers/possibleConstructorReturn\"","webpack:///external \"@splunk/react-ui/JSONTree\"","webpack:///./src/common/EventsDoc.jsx"],"names":["EventTester","styled","Event","EventName","EventItem","name","desc","marginLeft","T","string","EventsDesc","events","Object","description","isRequired","VisExample","options","Visualization","dsState","onEventTrigger","PureComponent","func","EventExample","event","eventToDisplay","object","EventsDoc","e","handleEvent","Component","any"],"mappings":"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","file":"EventsDoc.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 = 44);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"styled-components\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@splunk/react-ui/Heading\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"@splunk/react-ui/Markdown\");","module.exports = require(\"@babel/runtime/helpers/inherits\");","module.exports = require(\"@babel/runtime/helpers/getPrototypeOf\");","module.exports = require(\"@babel/runtime/helpers/extends\");","module.exports = require(\"@babel/runtime/helpers/assertThisInitialized\");","module.exports = require(\"@babel/runtime/helpers/possibleConstructorReturn\");","module.exports = require(\"@splunk/react-ui/JSONTree\");","/* eslint-disable react/no-multi-comp */\n/* eslint-disable max-classes-per-file */\nimport React, { Component, PureComponent } from 'react';\nimport T from 'prop-types';\nimport Heading from '@splunk/react-ui/Heading';\nimport Markdown from '@splunk/react-ui/Markdown';\nimport JSONTree from '@splunk/react-ui/JSONTree';\nimport styled from 'styled-components';\n\nconst EventTester = styled.div`\n margin-top: 50px;\n`;\n\nconst Event = styled.div`\n margin-top: 20px;\n`;\nconst EventName = styled.div`\n color: #5ca300;\n padding-bottom: 5px;\n`;\n\nconst EventItem = ({ name, desc }) => (\n <Event>\n <EventName>{name}</EventName>\n <Markdown style={{ marginLeft: 40 }} text={desc} />\n </Event>\n);\n\nEventItem.propTypes = {\n name: T.string,\n desc: T.string,\n};\n\nconst EventsDesc = ({ events }) => (\n <div>\n <Heading level={4}>{Object.keys(events).length === 0 ? 'No Events' : 'Events'}</Heading>\n {Object.keys(events).map(eventName => (\n <EventItem key={eventName} name={eventName} desc={events[eventName].description} />\n ))}\n </div>\n);\n\nEventsDesc.propTypes = {\n events: T.object.isRequired,\n};\n\nclass VisExample extends PureComponent {\n render() {\n const { options = {}, Visualization, dsState, onEventTrigger } = this.props;\n return (\n <EventTester>\n <Heading level={4}>Test Visualization</Heading>\n <Visualization\n options={options}\n dataSources={dsState}\n onEventTrigger={onEventTrigger}\n hasEventHandlers\n />\n </EventTester>\n );\n }\n}\n\nVisExample.propTypes = {\n options: T.object,\n Visualization: T.any,\n dsState: T.object,\n onEventTrigger: T.func,\n};\n\nconst EventExample = ({ event }) => {\n const eventToDisplay = {\n ...event,\n };\n if (eventToDisplay.originalEvent != null) {\n eventToDisplay.originalEvent = '...Original Event instance...';\n }\n\n return (\n <React.Fragment>\n <Heading level={4}>Event Monitor</Heading>\n <div>\n <JSONTree json={eventToDisplay} expandChildren />\n </div>\n </React.Fragment>\n );\n};\n\nEventExample.propTypes = {\n event: T.object,\n};\n\nclass EventsDoc extends Component {\n constructor(props, context) {\n super(props, context);\n this.state = {\n e: null,\n };\n }\n\n handleEvent = e => {\n this.setState({\n e,\n });\n };\n\n render() {\n return (\n <div>\n <EventsDesc events={this.props.events} />\n <VisExample {...this.props} onEventTrigger={this.handleEvent} />\n <EventExample event={this.state.e} />\n </div>\n );\n }\n}\n\nEventsDoc.propTypes = {\n options: T.object,\n events: T.object,\n dsState: T.object,\n Visualization: T.any,\n};\n\nexport default EventsDoc;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"styled-components\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@splunk/react-ui/Heading\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@babel/runtime/helpers/defineProperty\"","webpack:///external \"@babel/runtime/helpers/extends\"","webpack:///external \"@splunk/react-ui/Markdown\"","webpack:///external \"@babel/runtime/helpers/inherits\"","webpack:///external \"@babel/runtime/helpers/getPrototypeOf\"","webpack:///external \"@babel/runtime/helpers/assertThisInitialized\"","webpack:///external \"@babel/runtime/helpers/possibleConstructorReturn\"","webpack:///external \"@splunk/react-ui/JSONTree\"","webpack:///./src/common/EventsDoc.jsx"],"names":["EventTester","styled","Event","EventName","EventItem","name","desc","marginLeft","T","string","EventsDesc","events","Object","description","isRequired","VisExample","options","Visualization","dsState","onEventTrigger","PureComponent","func","EventExample","event","eventToDisplay","object","EventsDoc","e","handleEvent","Component","any"],"mappings":"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","file":"EventsDoc.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 = 46);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"styled-components\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@splunk/react-ui/Heading\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");","module.exports = require(\"@babel/runtime/helpers/extends\");","module.exports = require(\"@splunk/react-ui/Markdown\");","module.exports = require(\"@babel/runtime/helpers/inherits\");","module.exports = require(\"@babel/runtime/helpers/getPrototypeOf\");","module.exports = require(\"@babel/runtime/helpers/assertThisInitialized\");","module.exports = require(\"@babel/runtime/helpers/possibleConstructorReturn\");","module.exports = require(\"@splunk/react-ui/JSONTree\");","/* eslint-disable react/no-multi-comp */\n/* eslint-disable max-classes-per-file */\nimport React, { Component, PureComponent } from 'react';\nimport T from 'prop-types';\nimport Heading from '@splunk/react-ui/Heading';\nimport Markdown from '@splunk/react-ui/Markdown';\nimport JSONTree from '@splunk/react-ui/JSONTree';\nimport styled from 'styled-components';\n\nconst EventTester = styled.div`\n margin-top: 50px;\n`;\n\nconst Event = styled.div`\n margin-top: 20px;\n`;\nconst EventName = styled.div`\n color: #5ca300;\n padding-bottom: 5px;\n`;\n\nconst EventItem = ({ name, desc }) => (\n <Event>\n <EventName>{name}</EventName>\n <Markdown style={{ marginLeft: 40 }} text={desc} />\n </Event>\n);\n\nEventItem.propTypes = {\n name: T.string,\n desc: T.string,\n};\n\nconst EventsDesc = ({ events }) => (\n <div>\n <Heading level={4}>{Object.keys(events).length === 0 ? 'No Events' : 'Events'}</Heading>\n {Object.keys(events).map(eventName => (\n <EventItem key={eventName} name={eventName} desc={events[eventName].description} />\n ))}\n </div>\n);\n\nEventsDesc.propTypes = {\n events: T.object.isRequired,\n};\n\nclass VisExample extends PureComponent {\n render() {\n const { options = {}, Visualization, dsState, onEventTrigger } = this.props;\n return (\n <EventTester>\n <Heading level={4}>Test Visualization</Heading>\n <Visualization\n options={options}\n dataSources={dsState}\n onEventTrigger={onEventTrigger}\n hasEventHandlers\n />\n </EventTester>\n );\n }\n}\n\nVisExample.propTypes = {\n options: T.object,\n Visualization: T.any,\n dsState: T.object,\n onEventTrigger: T.func,\n};\n\nconst EventExample = ({ event }) => {\n const eventToDisplay = {\n ...event,\n };\n if (eventToDisplay.originalEvent != null) {\n eventToDisplay.originalEvent = '...Original Event instance...';\n }\n\n return (\n <React.Fragment>\n <Heading level={4}>Event Monitor</Heading>\n <div>\n <JSONTree json={eventToDisplay} expandChildren />\n </div>\n </React.Fragment>\n );\n};\n\nEventExample.propTypes = {\n event: T.object,\n};\n\nclass EventsDoc extends Component {\n constructor(props, context) {\n super(props, context);\n this.state = {\n e: null,\n };\n }\n\n handleEvent = e => {\n this.setState({\n e,\n });\n };\n\n render() {\n return (\n <div>\n <EventsDesc events={this.props.events} />\n <VisExample {...this.props} onEventTrigger={this.handleEvent} />\n <EventExample event={this.state.e} />\n </div>\n );\n }\n}\n\nEventsDoc.propTypes = {\n options: T.object,\n events: T.object,\n dsState: T.object,\n Visualization: T.any,\n};\n\nexport default EventsDoc;\n"],"sourceRoot":""}
@@ -0,0 +1,386 @@
1
+ /*!
2
+ * Copyright © 2018 Splunk Inc.
3
+ * SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
4
+ * in part without a valid written license from Splunk Inc. is PROHIBITED.
5
+ */
6
+ module.exports =
7
+ /******/ (function(modules) { // webpackBootstrap
8
+ /******/ // The module cache
9
+ /******/ var installedModules = {};
10
+ /******/
11
+ /******/ // The require function
12
+ /******/ function __webpack_require__(moduleId) {
13
+ /******/
14
+ /******/ // Check if module is in cache
15
+ /******/ if(installedModules[moduleId]) {
16
+ /******/ return installedModules[moduleId].exports;
17
+ /******/ }
18
+ /******/ // Create a new module (and put it into the cache)
19
+ /******/ var module = installedModules[moduleId] = {
20
+ /******/ i: moduleId,
21
+ /******/ l: false,
22
+ /******/ exports: {}
23
+ /******/ };
24
+ /******/
25
+ /******/ // Execute the module function
26
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
27
+ /******/
28
+ /******/ // Flag the module as loaded
29
+ /******/ module.l = true;
30
+ /******/
31
+ /******/ // Return the exports of the module
32
+ /******/ return module.exports;
33
+ /******/ }
34
+ /******/
35
+ /******/
36
+ /******/ // expose the modules object (__webpack_modules__)
37
+ /******/ __webpack_require__.m = modules;
38
+ /******/
39
+ /******/ // expose the module cache
40
+ /******/ __webpack_require__.c = installedModules;
41
+ /******/
42
+ /******/ // define getter function for harmony exports
43
+ /******/ __webpack_require__.d = function(exports, name, getter) {
44
+ /******/ if(!__webpack_require__.o(exports, name)) {
45
+ /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
46
+ /******/ }
47
+ /******/ };
48
+ /******/
49
+ /******/ // define __esModule on exports
50
+ /******/ __webpack_require__.r = function(exports) {
51
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
52
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
53
+ /******/ }
54
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
55
+ /******/ };
56
+ /******/
57
+ /******/ // create a fake namespace object
58
+ /******/ // mode & 1: value is a module id, require it
59
+ /******/ // mode & 2: merge all properties of value into the ns
60
+ /******/ // mode & 4: return value when already ns object
61
+ /******/ // mode & 8|1: behave like require
62
+ /******/ __webpack_require__.t = function(value, mode) {
63
+ /******/ if(mode & 1) value = __webpack_require__(value);
64
+ /******/ if(mode & 8) return value;
65
+ /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
66
+ /******/ var ns = Object.create(null);
67
+ /******/ __webpack_require__.r(ns);
68
+ /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
69
+ /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
70
+ /******/ return ns;
71
+ /******/ };
72
+ /******/
73
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
74
+ /******/ __webpack_require__.n = function(module) {
75
+ /******/ var getter = module && module.__esModule ?
76
+ /******/ function getDefault() { return module['default']; } :
77
+ /******/ function getModuleExports() { return module; };
78
+ /******/ __webpack_require__.d(getter, 'a', getter);
79
+ /******/ return getter;
80
+ /******/ };
81
+ /******/
82
+ /******/ // Object.prototype.hasOwnProperty.call
83
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
84
+ /******/
85
+ /******/ // __webpack_public_path__
86
+ /******/ __webpack_require__.p = "";
87
+ /******/
88
+ /******/
89
+ /******/ // Load entry module and return exports
90
+ /******/ return __webpack_require__(__webpack_require__.s = 47);
91
+ /******/ })
92
+ /************************************************************************/
93
+ /******/ ({
94
+
95
+ /***/ 0:
96
+ /***/ (function(module, exports) {
97
+
98
+ module.exports = require("react");
99
+
100
+ /***/ }),
101
+
102
+ /***/ 1:
103
+ /***/ (function(module, exports) {
104
+
105
+ module.exports = require("prop-types");
106
+
107
+ /***/ }),
108
+
109
+ /***/ 13:
110
+ /***/ (function(module, exports) {
111
+
112
+ module.exports = require("@splunk/visualizations-shared/numberUtils");
113
+
114
+ /***/ }),
115
+
116
+ /***/ 2:
117
+ /***/ (function(module, exports) {
118
+
119
+ module.exports = require("styled-components");
120
+
121
+ /***/ }),
122
+
123
+ /***/ 47:
124
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
125
+
126
+ "use strict";
127
+ __webpack_require__.r(__webpack_exports__);
128
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MajorTick", function() { return MajorTick; });
129
+ /* 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);
131
+ /* 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
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
133
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
134
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(1);
135
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);
136
+ /* harmony import */ var styled_components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2);
137
+ /* 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);
139
+ /* 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
+
141
+
142
+
143
+
144
+
145
+ var DEFAULT_NUM_OF_TICKS = 5;
146
+ var TICK_LENGTH_DELTA = 5;
147
+ var TICK_LABEL_PADDING_FACTOR = 3.2;
148
+ var MajorTickLine = styled_components__WEBPACK_IMPORTED_MODULE_3___default.a.line.withConfig({
149
+ displayName: "GaugeMajorTicks__MajorTickLine",
150
+ componentId: "mchiad-0"
151
+ })(["stroke:", ";stroke-width:2px;stroke-dasharray:", ";"], function (props) {
152
+ return props.majorTickStrokeColor;
153
+ }, function (props) {
154
+ return props.index === 0 ? 0 : 3;
155
+ });
156
+ var MajorTickLabel = styled_components__WEBPACK_IMPORTED_MODULE_3___default.a.text.withConfig({
157
+ displayName: "GaugeMajorTicks__MajorTickLabel",
158
+ componentId: "mchiad-1"
159
+ })(["font-size:12px;font-family:Splunk Platform Sans,sans-serif;line-height:19px;fill:", ";text-anchor:middle;text-align:center;"], function (props) {
160
+ return props.majorTickFillColor;
161
+ });
162
+ var MajorTick = function MajorTick(_ref) {
163
+ 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;
174
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("g", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MajorTickLine, {
175
+ index: index,
176
+ x1: x1,
177
+ y1: y1,
178
+ x2: x2,
179
+ y2: y2,
180
+ majorTickStrokeColor: majorTickStrokeColor
181
+ }), showLabels && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MajorTickLabel, {
182
+ x: labelX,
183
+ y: labelY,
184
+ majorTickFillColor: majorTickFillColor
185
+ }, Object(_splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_4__["isNumerial"])(label) ? Object(_splunk_visualizations_shared_numberUtils__WEBPACK_IMPORTED_MODULE_4__["formatNumber"])(label, 0, {
186
+ useThousandSeparators: true,
187
+ useTrendUnits: true
188
+ }) : label));
189
+ };
190
+ MajorTick.propTypes = {
191
+ index: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
192
+ x1: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
193
+ y1: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
194
+ x2: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
195
+ y2: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
196
+ showLabels: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.bool,
197
+ label: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number]),
198
+ labelX: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
199
+ labelY: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
200
+ majorTickStrokeColor: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string,
201
+ majorTickFillColor: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string
202
+ };
203
+ /**
204
+ * calculate position for each major tick
205
+ * @method positionMajorTick
206
+ * @param {Object} input
207
+ * @param {Number} input.width
208
+ * @param {Number} input.height
209
+ * @param {Number} input.startX start x for rendering the first major tick
210
+ * @param {Number} input.startY start y for rendering the first major tick
211
+ * @param {String} input.orientation
212
+ * @param {Number} input.numOfTicks how many ticks need to render
213
+ * @param {Number} input.i index of major tick
214
+ * @return {Object} MajorTick positions
215
+ */
216
+
217
+ var positionMajorTick = function positionMajorTick(_ref2) {
218
+ 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;
225
+ var x1 = startX;
226
+ var y1 = startY;
227
+ var x2 = startX;
228
+ var y2 = startY;
229
+ var labelX = startX;
230
+ var labelY;
231
+
232
+ if (orientation === 'vertical') {
233
+ var y = height / numOfTicks * (numOfTicks - i) + startY;
234
+ x1 -= TICK_LENGTH_DELTA;
235
+ y1 = y;
236
+ x2 += width + TICK_LENGTH_DELTA;
237
+ y2 = y;
238
+ labelX += width + TICK_LENGTH_DELTA * TICK_LABEL_PADDING_FACTOR;
239
+ labelY = y;
240
+ } else {
241
+ var x = width / numOfTicks * i + startX;
242
+ x1 = x;
243
+ y1 -= TICK_LENGTH_DELTA;
244
+ x2 = x;
245
+ y2 += height + TICK_LENGTH_DELTA;
246
+ labelX = x;
247
+ labelY = y2 + 16;
248
+ }
249
+
250
+ return {
251
+ x1: x1,
252
+ y1: y1,
253
+ x2: x2,
254
+ y2: y2,
255
+ labelX: labelX,
256
+ labelY: labelY
257
+ };
258
+ };
259
+
260
+ var MajorTicks = function MajorTicks(_ref3) {
261
+ var props = _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, _ref3);
262
+
263
+ var width = props.width,
264
+ height = props.height,
265
+ startX = props.startX,
266
+ startY = props.startY,
267
+ min = props.min,
268
+ max = props.max,
269
+ majorUnit = props.majorUnit,
270
+ orientation = props.orientation,
271
+ showLabels = props.showLabels,
272
+ usePercentageRange = props.usePercentageRange,
273
+ majorTickFillColor = props.majorTickFillColor,
274
+ majorTickStrokeColor = props.majorTickStrokeColor;
275
+ var range = max - min;
276
+ var numOfTicks = majorUnit === 'auto' || Number.isNaN(Number(majorUnit)) || majorUnit <= 0 ? DEFAULT_NUM_OF_TICKS : range / majorUnit;
277
+ var majorTicks = [];
278
+
279
+ for (var i = 0; i <= numOfTicks; i += 1) {
280
+ var _positionMajorTick = positionMajorTick({
281
+ width: width,
282
+ height: height,
283
+ startX: startX,
284
+ startY: startY,
285
+ orientation: orientation,
286
+ numOfTicks: numOfTicks,
287
+ i: i
288
+ }),
289
+ x1 = _positionMajorTick.x1,
290
+ y1 = _positionMajorTick.y1,
291
+ x2 = _positionMajorTick.x2,
292
+ y2 = _positionMajorTick.y2,
293
+ labelX = _positionMajorTick.labelX,
294
+ labelY = _positionMajorTick.labelY;
295
+
296
+ var label = usePercentageRange ? "".concat(parseInt((i / numOfTicks - min / range) * 100, 10), "%") : parseInt(min + range / numOfTicks * i, 10);
297
+ majorTicks.push( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MajorTick, {
298
+ key: i,
299
+ index: i,
300
+ x1: x1,
301
+ y1: y1,
302
+ x2: x2,
303
+ y2: y2,
304
+ showLabels: showLabels,
305
+ label: label,
306
+ labelX: labelX,
307
+ labelY: labelY,
308
+ majorTickFillColor: majorTickFillColor,
309
+ majorTickStrokeColor: majorTickStrokeColor
310
+ }));
311
+ } // if the gauge is not divided evenly, put the last tick at the end of the gauge
312
+
313
+
314
+ if (!Number.isInteger(numOfTicks)) {
315
+ var extraNumOfTicks = Math.ceil(numOfTicks);
316
+
317
+ var _positionMajorTick2 = positionMajorTick({
318
+ width: width,
319
+ height: height,
320
+ startX: startX,
321
+ startY: startY,
322
+ orientation: orientation,
323
+ numOfTicks: extraNumOfTicks,
324
+ i: extraNumOfTicks
325
+ }),
326
+ _x = _positionMajorTick2.x1,
327
+ _y = _positionMajorTick2.y1,
328
+ _x2 = _positionMajorTick2.x2,
329
+ _y2 = _positionMajorTick2.y2,
330
+ _labelX = _positionMajorTick2.labelX,
331
+ _labelY = _positionMajorTick2.labelY;
332
+
333
+ majorTicks.push( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(MajorTick, {
334
+ key: extraNumOfTicks,
335
+ id: extraNumOfTicks,
336
+ x1: _x,
337
+ y1: _y,
338
+ x2: _x2,
339
+ y2: _y2,
340
+ showLabels: showLabels,
341
+ label: usePercentageRange ? '100%' : max,
342
+ labelX: _labelX,
343
+ labelY: _labelY,
344
+ majorTickFillColor: majorTickFillColor,
345
+ majorTickStrokeColor: majorTickStrokeColor
346
+ }));
347
+ }
348
+
349
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("g", null, majorTicks);
350
+ };
351
+
352
+ MajorTicks.propTypes = {
353
+ width: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
354
+ height: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
355
+ startX: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
356
+ startY: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
357
+ min: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
358
+ max: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number,
359
+ majorUnit: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string, prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.number]),
360
+ orientation: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string,
361
+ showLabels: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.bool,
362
+ usePercentageRange: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.bool,
363
+ majorTickFillColor: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string,
364
+ majorTickStrokeColor: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string
365
+ };
366
+ MajorTicks.defaultProps = {
367
+ min: 0,
368
+ max: 100,
369
+ majorUnit: 'auto',
370
+ orientation: 'horizontal',
371
+ showLabels: true,
372
+ usePercentageRange: false
373
+ };
374
+ /* harmony default export */ __webpack_exports__["default"] = (MajorTicks);
375
+
376
+ /***/ }),
377
+
378
+ /***/ 9:
379
+ /***/ (function(module, exports) {
380
+
381
+ module.exports = require("@babel/runtime/helpers/extends");
382
+
383
+ /***/ })
384
+
385
+ /******/ });
386
+ //# sourceMappingURL=GaugeMajorTicks.js.map
@@ -0,0 +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 = 47);\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":""}