@splunk/visualizations 26.0.0 → 26.1.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 (150) hide show
  1. package/Area.config.js +102 -18
  2. package/Area.config.js.map +1 -1
  3. package/Area.js +618 -221
  4. package/Area.js.map +1 -1
  5. package/Bar.config.js +104 -20
  6. package/Bar.config.js.map +1 -1
  7. package/Bar.js +624 -219
  8. package/Bar.js.map +1 -1
  9. package/Bubble.config.js +94 -20
  10. package/Bubble.config.js.map +1 -1
  11. package/Bubble.js +606 -211
  12. package/Bubble.js.map +1 -1
  13. package/ChoroplethSvg.config.js +65 -14
  14. package/ChoroplethSvg.config.js.map +1 -1
  15. package/ChoroplethSvg.js +550 -183
  16. package/ChoroplethSvg.js.map +1 -1
  17. package/Column.config.js +103 -18
  18. package/Column.config.js.map +1 -1
  19. package/Column.js +637 -221
  20. package/Column.js.map +1 -1
  21. package/Ellipse.config.js +82 -17
  22. package/Ellipse.config.js.map +1 -1
  23. package/Ellipse.js +425 -148
  24. package/Ellipse.js.map +1 -1
  25. package/Events.config.js +100 -18
  26. package/Events.config.js.map +1 -1
  27. package/Events.js +752 -293
  28. package/Events.js.map +1 -1
  29. package/FillerGauge.config.js +96 -27
  30. package/FillerGauge.config.js.map +1 -1
  31. package/FillerGauge.js +759 -374
  32. package/FillerGauge.js.map +1 -1
  33. package/Image.config.js +62 -18
  34. package/Image.config.js.map +1 -1
  35. package/Image.js +419 -154
  36. package/Image.js.map +1 -1
  37. package/Line.config.js +106 -22
  38. package/Line.config.js.map +1 -1
  39. package/Line.js +631 -223
  40. package/Line.js.map +1 -1
  41. package/LinkGraph.config.js +72 -22
  42. package/LinkGraph.config.js.map +1 -1
  43. package/LinkGraph.js +632 -219
  44. package/LinkGraph.js.map +1 -1
  45. package/MIGRATION.md +1082 -0
  46. package/Map.config.js +241 -97
  47. package/Map.config.js.map +1 -1
  48. package/Map.js +1195 -595
  49. package/Map.js.map +1 -1
  50. package/Markdown.config.js +70 -20
  51. package/Markdown.config.js.map +1 -1
  52. package/Markdown.js +460 -195
  53. package/Markdown.js.map +1 -1
  54. package/MarkerGauge.config.js +79 -21
  55. package/MarkerGauge.config.js.map +1 -1
  56. package/MarkerGauge.js +802 -411
  57. package/MarkerGauge.js.map +1 -1
  58. package/ParallelCoordinates.config.js +72 -18
  59. package/ParallelCoordinates.config.js.map +1 -1
  60. package/ParallelCoordinates.js +853 -484
  61. package/ParallelCoordinates.js.map +1 -1
  62. package/Pie.config.js +75 -22
  63. package/Pie.config.js.map +1 -1
  64. package/Pie.js +612 -212
  65. package/Pie.js.map +1 -1
  66. package/Punchcard.config.js +81 -29
  67. package/Punchcard.config.js.map +1 -1
  68. package/Punchcard.js +844 -379
  69. package/Punchcard.js.map +1 -1
  70. package/Rectangle.config.js +85 -19
  71. package/Rectangle.config.js.map +1 -1
  72. package/Rectangle.js +432 -152
  73. package/Rectangle.js.map +1 -1
  74. package/Sankey.config.js +84 -22
  75. package/Sankey.config.js.map +1 -1
  76. package/Sankey.js +878 -342
  77. package/Sankey.js.map +1 -1
  78. package/Scatter.config.js +96 -22
  79. package/Scatter.config.js.map +1 -1
  80. package/Scatter.js +607 -212
  81. package/Scatter.js.map +1 -1
  82. package/SingleValue.config.js +94 -24
  83. package/SingleValue.config.js.map +1 -1
  84. package/SingleValue.js +1182 -650
  85. package/SingleValue.js.map +1 -1
  86. package/SingleValueBasic.js +286 -225
  87. package/SingleValueBasic.js.map +1 -1
  88. package/SingleValueIcon.config.js +92 -22
  89. package/SingleValueIcon.config.js.map +1 -1
  90. package/SingleValueIcon.js +965 -506
  91. package/SingleValueIcon.js.map +1 -1
  92. package/SingleValueRadial.config.js +99 -26
  93. package/SingleValueRadial.config.js.map +1 -1
  94. package/SingleValueRadial.js +1167 -616
  95. package/SingleValueRadial.js.map +1 -1
  96. package/SparkLine.js +126 -67
  97. package/SparkLine.js.map +1 -1
  98. package/Table.config.js +73 -20
  99. package/Table.config.js.map +1 -1
  100. package/Table.js +810 -322
  101. package/Table.js.map +1 -1
  102. package/common/Charting.js +107 -35
  103. package/common/Charting.js.map +1 -1
  104. package/common/ChartingApi.js +18 -7
  105. package/common/ChartingApi.js.map +1 -1
  106. package/common/EventsDoc.js +76 -22
  107. package/common/EventsDoc.js.map +1 -1
  108. package/common/GaugeMajorTicks.js +68 -58
  109. package/common/GaugeMajorTicks.js.map +1 -1
  110. package/common/GaugeValueMarker.js +43 -34
  111. package/common/GaugeValueMarker.js.map +1 -1
  112. package/common/OptionsDoc.js +156 -65
  113. package/common/OptionsDoc.js.map +1 -1
  114. package/common/OverviewDoc.js +33 -5
  115. package/common/OverviewDoc.js.map +1 -1
  116. package/common/SplunkVisualization.js +31 -4
  117. package/common/SplunkVisualization.js.map +1 -1
  118. package/common/SplunkVisualizationApi.js +8 -2
  119. package/common/SplunkVisualizationApi.js.map +1 -1
  120. package/common/ThemesDoc.js +27 -14
  121. package/common/ThemesDoc.js.map +1 -1
  122. package/common/chartingUtils.js +44 -12
  123. package/common/chartingUtils.js.map +1 -1
  124. package/common/docUtils.js +11 -1
  125. package/common/docUtils.js.map +1 -1
  126. package/common/gaugeUtils.js +173 -90
  127. package/common/gaugeUtils.js.map +1 -1
  128. package/common/shapeUtils.js +14 -2
  129. package/common/shapeUtils.js.map +1 -1
  130. package/common/utils/configUtils.js +49 -14
  131. package/common/utils/configUtils.js.map +1 -1
  132. package/common/utils/dataUtils.js +7 -2
  133. package/common/utils/dataUtils.js.map +1 -1
  134. package/common/utils/hocUtils.js +3 -1
  135. package/common/utils/hocUtils.js.map +1 -1
  136. package/common/utils/layoutUtils.js +1 -0
  137. package/common/utils/layoutUtils.js.map +1 -1
  138. package/common/utils/mapUtils.js +287 -127
  139. package/common/utils/mapUtils.js.map +1 -1
  140. package/common/utils/singleValueUtils.js +241 -196
  141. package/common/utils/singleValueUtils.js.map +1 -1
  142. package/common/utils/testHelper.js +9 -0
  143. package/common/utils/testHelper.js.map +1 -1
  144. package/common/utils/trellisUtils.js +61 -0
  145. package/common/utils/trellisUtils.js.map +1 -1
  146. package/common/utils/urlUtils.js +2 -0
  147. package/common/utils/urlUtils.js.map +1 -1
  148. package/common/withDashboardViz.js +274 -95
  149. package/common/withDashboardViz.js.map +1 -1
  150. package/package.json +16 -18
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"prop-types\"","webpack:///./src/common/SplunkVisualization.tsx","webpack:///./src/common/interfaces/VizActionHandler.ts","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\""],"names":["T","require","lodash_1","VizActionHandler_1","exports","INITIAL_WIDTH","INITIAL_HEIGHT","SplunkVisualization","_classCallCheck","propTypes","mode","oneOf","isRequired","width","oneOfType","string","number","height","context","object","options","onOptionsChange","func","dataSources","objectOf","shape","requestParams","data","fields","array","columns","error","level","message","meta","onEventTrigger","hasEventHandlers","bool","onComputedProps","vizActionHandlerRef","loading","theme","onRequestParamsChange","defaultProps","DefaultVizActionHandler","noop","default","_createClass","key","value","focus","snapshot"],"mappings":"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","file":"SplunkVisualization.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 = 24);\n","module.exports = require(\"prop-types\");","/* eslint-disable react/no-unused-prop-types,react/prefer-stateless-function */\nimport * as T from 'prop-types';\nimport { noop } from 'lodash';\nimport { DashboardVizProps } from './interfaces/DashboardVizProps';\nimport { DefaultVizActionHandler } from './interfaces/VizActionHandler';\n\n// this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations\nexport const INITIAL_WIDTH = 250;\nexport const INITIAL_HEIGHT = 250;\n\n/**\n * A Splunk visualization\n */\nclass SplunkVisualization {\n static propTypes: Record<keyof DashboardVizProps, T.Validator<any>> = {\n /**\n * display mode\n */\n mode: T.oneOf(['view', 'edit', 'export']).isRequired,\n /**\n * width in pixel or string, defaults to 100%\n */\n width: T.oneOfType([T.string, T.number]).isRequired,\n /**\n * height in pixel or string\n */\n height: T.oneOfType([T.string, T.number]).isRequired,\n /**\n * visualization context used for dynamic option evaluation\n */\n context: T.object,\n /**\n * visualization formatting options\n */\n options: T.object,\n /**\n * A callback to update formatting options\n */\n onOptionsChange: T.func,\n /**\n * datasource state which include data and request params, object key indicate the datasource type.\n */\n dataSources: T.objectOf(\n T.shape({\n /**\n * current request params\n */\n requestParams: T.object,\n /**\n * current dataset\n */\n data: T.shape({\n fields: T.array,\n columns: T.array,\n }),\n /**\n * error\n */\n error: T.shape({\n level: T.string,\n message: T.string,\n }),\n /**\n * meta data that came with the dataset\n */\n meta: T.object,\n })\n ),\n /**\n * A callback to trigger event\n */\n onEventTrigger: T.func,\n /**\n * Inform viz if there are handlers listening to events\n */\n hasEventHandlers: T.bool,\n /**\n * A callback to communicate computed props to a consumer\n */\n onComputedProps: T.func,\n /**\n * A callback to obtain visualization api\n */\n vizActionHandlerRef: T.func,\n\n loading: T.bool,\n theme: T.object,\n /**\n * A callback to request new data with updated request params\n */\n onRequestParamsChange: T.func,\n };\n\n /**\n *\n */\n static defaultProps: DashboardVizProps = {\n // BaseVisualization in dashboard-visualizations uses 100% for width but 250 for height\n width: '100%',\n height: INITIAL_HEIGHT,\n dataSources: {},\n onEventTrigger: (): Record<string, unknown> => ({}),\n mode: 'view',\n hasEventHandlers: false,\n options: {},\n context: {},\n onOptionsChange: (): Record<string, unknown> => ({}),\n vizActionHandlerRef: (): DefaultVizActionHandler => new DefaultVizActionHandler(),\n onComputedProps: (): Record<string, unknown> => ({}),\n loading: false,\n onRequestParamsChange: noop,\n };\n}\n\nexport default SplunkVisualization;\n","/* eslint-disable class-methods-use-this */\nexport interface VizActionHandler {\n /**\n * put focus on the visualization\n */\n focus(): void;\n\n /**\n * compute snapshot of this visualization\n */\n snapshot(): Record<string, unknown>; // (This is for pdf export)\n}\n\nexport class DefaultVizActionHandler {\n focus(): void {\n // noop\n }\n\n snapshot(): Record<string, unknown> {\n return null; // noop\n }\n}\n","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"prop-types\"","webpack:///./src/common/SplunkVisualization.tsx","webpack:///./src/common/interfaces/VizActionHandler.ts","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\""],"names":[],"mappings":"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","file":"SplunkVisualization.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 = 24);\n","module.exports = require(\"prop-types\");","/* eslint-disable react/no-unused-prop-types,react/prefer-stateless-function */\nimport * as T from 'prop-types';\nimport { noop } from 'lodash';\nimport { DashboardVizProps } from './interfaces/DashboardVizProps';\nimport { DefaultVizActionHandler } from './interfaces/VizActionHandler';\n\n// this is identical to the initial height and width we use in BaseVisualization in dashboard-visualizations\nexport const INITIAL_WIDTH = 250;\nexport const INITIAL_HEIGHT = 250;\n\n/**\n * A Splunk visualization\n */\nclass SplunkVisualization {\n static propTypes: Record<keyof DashboardVizProps, T.Validator<any>> = {\n /**\n * display mode\n */\n mode: T.oneOf(['view', 'edit', 'export']).isRequired,\n /**\n * width in pixel or string, defaults to 100%\n */\n width: T.oneOfType([T.string, T.number]).isRequired,\n /**\n * height in pixel or string\n */\n height: T.oneOfType([T.string, T.number]).isRequired,\n /**\n * visualization context used for dynamic option evaluation\n */\n context: T.object,\n /**\n * visualization formatting options\n */\n options: T.object,\n /**\n * A callback to update formatting options\n */\n onOptionsChange: T.func,\n /**\n * datasource state which include data and request params, object key indicate the datasource type.\n */\n dataSources: T.objectOf(\n T.shape({\n /**\n * current request params\n */\n requestParams: T.object,\n /**\n * current dataset\n */\n data: T.shape({\n fields: T.array,\n columns: T.array,\n }),\n /**\n * error\n */\n error: T.shape({\n level: T.string,\n message: T.string,\n }),\n /**\n * meta data that came with the dataset\n */\n meta: T.object,\n })\n ),\n /**\n * A callback to trigger event\n */\n onEventTrigger: T.func,\n /**\n * Inform viz if there are handlers listening to events\n */\n hasEventHandlers: T.bool,\n /**\n * A callback to communicate computed props to a consumer\n */\n onComputedProps: T.func,\n /**\n * A callback to obtain visualization api\n */\n vizActionHandlerRef: T.func,\n\n loading: T.bool,\n theme: T.object,\n /**\n * A callback to request new data with updated request params\n */\n onRequestParamsChange: T.func,\n };\n\n /**\n *\n */\n static defaultProps: DashboardVizProps = {\n // BaseVisualization in dashboard-visualizations uses 100% for width but 250 for height\n width: '100%',\n height: INITIAL_HEIGHT,\n dataSources: {},\n onEventTrigger: (): Record<string, unknown> => ({}),\n mode: 'view',\n hasEventHandlers: false,\n options: {},\n context: {},\n onOptionsChange: (): Record<string, unknown> => ({}),\n vizActionHandlerRef: (): DefaultVizActionHandler => new DefaultVizActionHandler(),\n onComputedProps: (): Record<string, unknown> => ({}),\n loading: false,\n onRequestParamsChange: noop,\n };\n}\n\nexport default SplunkVisualization;\n","/* eslint-disable class-methods-use-this */\nexport interface VizActionHandler {\n /**\n * put focus on the visualization\n */\n focus(): void;\n\n /**\n * compute snapshot of this visualization\n */\n snapshot(): Record<string, unknown>; // (This is for pdf export)\n}\n\nexport class DefaultVizActionHandler {\n focus(): void {\n // noop\n }\n\n snapshot(): Record<string, unknown> {\n return null; // noop\n }\n}\n","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");"],"sourceRoot":""}
@@ -113,37 +113,43 @@ module.exports = require("@babel/runtime/helpers/createClass");
113
113
 
114
114
 
115
115
  var _classCallCheck = __webpack_require__(4);
116
+
116
117
  var _createClass = __webpack_require__(6);
118
+
117
119
  Object.defineProperty(exports, "__esModule", {
118
120
  value: true
119
121
  });
120
122
  /**
121
123
  *
122
124
  */
125
+
123
126
  var DashboardVisualizationApi = /*#__PURE__*/function () {
124
127
  function DashboardVisualizationApi() {
125
128
  _classCallCheck(this, DashboardVisualizationApi);
126
129
  }
130
+
127
131
  _createClass(DashboardVisualizationApi, [{
128
132
  key: "focus",
129
133
  value:
130
134
  /**
131
135
  * put focus on the visualization
132
136
  */
133
- function focus() {
134
- // do nothing
137
+ function focus() {// do nothing
135
138
  }
136
139
  /**
137
140
  * compute snapshot of this visualization
138
141
  */
142
+
139
143
  }, {
140
144
  key: "snapshot",
141
145
  value: function snapshot() {
142
146
  return {};
143
147
  }
144
148
  }]);
149
+
145
150
  return DashboardVisualizationApi;
146
151
  }();
152
+
147
153
  exports.default = DashboardVisualizationApi;
148
154
 
149
155
  /***/ })
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///./src/common/SplunkVisualizationApi.ts"],"names":["DashboardVisualizationApi","_classCallCheck","_createClass","key","value","focus","snapshot","exports","default"],"mappings":";;;;;;;QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;AClFA,kE;;;;;;;ACAA,+D;;;;;;;;;;;;;;;ACGA;;;AAAA,IAGMA,yBAAyB;EAAA,SAAAA,0BAAA;IAAAC,eAAA,OAAAD,yBAAA;EAAA;EAAAE,YAAA,CAAAF,yBAAA;IAAAG,GAAA;IAAAC,KAAA;IAC3B;;;IAGA,SAAAC,MAAA,EAAK;MACD;IAAA;IAGJ;;;EAAA;IAAAF,GAAA;IAAAC,KAAA,EAGA,SAAAE,SAAA,EAAQ;MACJ,OAAO,EAAE;IACb;EAAC;EAAA,OAAAN,yBAAA;AAAA;AAGLO,OAAA,CAAAC,OAAA,GAAeR,yBAAyB,C","file":"SplunkVisualizationApi.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 = 65);\n","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","/* eslint-disable class-methods-use-this */\nimport { VizActionHandler } from './interfaces/VizActionHandler';\n\n/**\n *\n */\nclass DashboardVisualizationApi implements VizActionHandler {\n /**\n * put focus on the visualization\n */\n focus() {\n // do nothing\n }\n\n /**\n * compute snapshot of this visualization\n */\n snapshot() {\n return {};\n }\n}\n\nexport default DashboardVisualizationApi;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///./src/common/SplunkVisualizationApi.ts"],"names":[],"mappings":";;;;;;;QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;AClFA,kE;;;;;;;ACAA,+D;;;;;;;;;;;;;;;;;ACGA;;AAEG;;IACG,yB;;;;;;;;AACF;;AAEG;AACH,qBAAK,CACD;AACH;AAED;;AAEG;;;;WACH,oBAAQ;AACJ,aAAO,EAAP;AACH;;;;;;AAGL,kBAAe,yBAAf,C","file":"SplunkVisualizationApi.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 = 65);\n","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","/* eslint-disable class-methods-use-this */\nimport { VizActionHandler } from './interfaces/VizActionHandler';\n\n/**\n *\n */\nclass DashboardVisualizationApi implements VizActionHandler {\n /**\n * put focus on the visualization\n */\n focus() {\n // do nothing\n }\n\n /**\n * compute snapshot of this visualization\n */\n snapshot() {\n return {};\n }\n}\n\nexport default DashboardVisualizationApi;\n"],"sourceRoot":""}
@@ -248,6 +248,7 @@ __webpack_require__.r(__webpack_exports__);
248
248
 
249
249
 
250
250
 
251
+
251
252
  var ThemeVar = styled_components__WEBPACK_IMPORTED_MODULE_5___default.a.div.withConfig({
252
253
  displayName: "ThemesDoc__ThemeVar",
253
254
  componentId: "ycgc2f-0"
@@ -272,13 +273,15 @@ var ColorPreview = styled_components__WEBPACK_IMPORTED_MODULE_5___default.a.div.
272
273
  })(["width:20px;height:20px;background:", ";display:inline-block;vertical-align:bottom;margin-right:5px;border:1px solid rgba(0,0,0,0.3);border-radius:5px;"], function (props) {
273
274
  return props.color;
274
275
  });
276
+
275
277
  var Pair = function Pair(_ref) {
276
278
  var title = _ref.title,
277
- text = _ref.text;
279
+ text = _ref.text;
278
280
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(PairContainer, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(PairTitle, null, "".concat(title, ":")), Object(_splunk_visualizations_shared_colorUtils__WEBPACK_IMPORTED_MODULE_13__["isColor"])(text) && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(ColorPreview, {
279
281
  color: text
280
282
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("samp", null, text));
281
283
  };
284
+
282
285
  Pair.propTypes = {
283
286
  title: prop_types__WEBPACK_IMPORTED_MODULE_3___default.a.string,
284
287
  text: prop_types__WEBPACK_IMPORTED_MODULE_3___default.a.string
@@ -347,25 +350,30 @@ var themeIdToVariant = {
347
350
  label: 'Prisma Dark Compact'
348
351
  }
349
352
  };
353
+
350
354
  var ThemesDoc = function ThemesDoc(props) {
351
355
  var renderVisualization = props.renderVisualization,
352
- themeVars = props.themes;
356
+ themeVars = props.themes;
357
+
353
358
  var _useState = Object(react__WEBPACK_IMPORTED_MODULE_2__["useState"])(''),
354
- _useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),
355
- highlightedThemeVariable = _useState2[0],
356
- setHighlightedThemeVariable = _useState2[1];
359
+ _useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),
360
+ highlightedThemeVariable = _useState2[0],
361
+ setHighlightedThemeVariable = _useState2[1];
362
+
357
363
  var _useState3 = Object(react__WEBPACK_IMPORTED_MODULE_2__["useState"])(themeIdToVariant.enterpriseLightComfortable),
358
- _useState4 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_useState3, 2),
359
- selectedTheme = _useState4[0],
360
- setSelectedTheme = _useState4[1];
361
- var previewTheme = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_7___default()(themeVars);
362
- // if the highlighted theme variable is a color, color it red
364
+ _useState4 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1___default()(_useState3, 2),
365
+ selectedTheme = _useState4[0],
366
+ setSelectedTheme = _useState4[1];
367
+
368
+ var previewTheme = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_7___default()(themeVars); // if the highlighted theme variable is a color, color it red
363
369
  // TODO(fkurniawan): fix red highlighting. this broke ~v20.7.0, and approach needs to be modified again owing to SUI upgrade
370
+
364
371
  if (Object(_splunk_visualizations_shared_colorUtils__WEBPACK_IMPORTED_MODULE_13__["isColor"])(themeVars[highlightedThemeVariable])) {
365
372
  previewTheme[highlightedThemeVariable] = function () {
366
373
  return 'red';
367
374
  };
368
375
  }
376
+
369
377
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(_splunk_react_ui_ColumnLayout__WEBPACK_IMPORTED_MODULE_8___default.a, {
370
378
  style: {
371
379
  marginTop: -20
@@ -408,19 +416,23 @@ var ThemesDoc = function ThemesDoc(props) {
408
416
  level: 4
409
417
  }, "Variables"), Object.keys(previewTheme).map(function (varKey) {
410
418
  var _sharedThemeVariables, _themeFamilyMapping$s;
419
+
411
420
  var themeValue = previewTheme[varKey]({
412
421
  theme: {
413
422
  splunkThemeV1: lodash_omit__WEBPACK_IMPORTED_MODULE_6___default()(selectedTheme, ['label'])
414
423
  }
415
- });
416
- // if a theme variable is in @splunk/visualization-themes and it has the same value
424
+ }); // if a theme variable is in @splunk/visualization-themes and it has the same value
417
425
  // we assume we used the shared variable.
418
- var isFromSharedVariables = (_splunk_visualization_themes_variables__WEBPACK_IMPORTED_MODULE_14__ === null || _splunk_visualization_themes_variables__WEBPACK_IMPORTED_MODULE_14__ === void 0 ? void 0 : (_sharedThemeVariables = _splunk_visualization_themes_variables__WEBPACK_IMPORTED_MODULE_14__[themeFamilyMapping === null || themeFamilyMapping === void 0 ? void 0 : (_themeFamilyMapping$s = themeFamilyMapping[selectedTheme.family]) === null || _themeFamilyMapping$s === void 0 ? void 0 : _themeFamilyMapping$s[selectedTheme.colorScheme]]) === null || _sharedThemeVariables === void 0 ? void 0 : _sharedThemeVariables[varKey]) === themeValue;
419
- // for now we only show simple theme values (nested theme objects shouldn't have been introduced in the first place)
426
+
427
+ var isFromSharedVariables = (_splunk_visualization_themes_variables__WEBPACK_IMPORTED_MODULE_14__ === null || _splunk_visualization_themes_variables__WEBPACK_IMPORTED_MODULE_14__ === void 0 ? void 0 : (_sharedThemeVariables = _splunk_visualization_themes_variables__WEBPACK_IMPORTED_MODULE_14__[themeFamilyMapping === null || themeFamilyMapping === void 0 ? void 0 : (_themeFamilyMapping$s = themeFamilyMapping[selectedTheme.family]) === null || _themeFamilyMapping$s === void 0 ? void 0 : _themeFamilyMapping$s[selectedTheme.colorScheme]]) === null || _sharedThemeVariables === void 0 ? void 0 : _sharedThemeVariables[varKey]) === themeValue; // for now we only show simple theme values (nested theme objects shouldn't have been introduced in the first place)
428
+
420
429
  var isJSON;
430
+
421
431
  try {
422
432
  isJSON = _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(JSON.parse(themeValue)) === 'object';
423
433
  } catch (e) {} // eslint-disable-line no-empty
434
+
435
+
424
436
  return !isJSON && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(ThemeVar, {
425
437
  key: varKey,
426
438
  onMouseOver: function onMouseOver() {
@@ -439,6 +451,7 @@ var ThemesDoc = function ThemesDoc(props) {
439
451
  }));
440
452
  }))));
441
453
  };
454
+
442
455
  ThemesDoc.propTypes = {
443
456
  themes: prop_types__WEBPACK_IMPORTED_MODULE_3___default.a.object.isRequired,
444
457
  // @TODO: replace with themes object from viz config when we add docs/descs to theme vars
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"@babel/runtime/helpers/slicedToArray\"","webpack:///external \"@splunk/react-ui/ColumnLayout\"","webpack:///external \"@babel/runtime/helpers/typeof\"","webpack:///external \"@splunk/visualizations-shared/colorUtils\"","webpack:///external \"@splunk/visualization-themes/variables\"","webpack:///external \"styled-components\"","webpack:///external \"@splunk/react-ui/Select\"","webpack:///external \"lodash/omit\"","webpack:///external \"lodash/cloneDeep\"","webpack:///external \"@splunk/react-ui/Message\"","webpack:///external \"@splunk/react-ui/Tooltip\"","webpack:///external \"@splunk/themes/SplunkThemeProvider\"","webpack:///external \"@splunk/react-ui/Heading\"","webpack:///./src/common/ThemesDoc.jsx"],"names":["ThemeVar","styled","div","withConfig","displayName","componentId","ThemeVarName","props","highlighted","PairContainer","PairTitle","span","ColorPreview","color","Pair","_ref","title","text","React","createElement","concat","isColor","propTypes","T","string","themeFamilyMapping","enterprise","colorScheme","dark","light","prisma","themeIdToVariant","enterpriseLightComfortable","density","family","label","enterpriseLightCompact","enterpriseDarkComfortable","enterpriseDarkCompact","prismaLightComfortable","prismaLightCompact","prismaDarkComfortable","prismaDarkCompact","ThemesDoc","renderVisualization","themeVars","themes","_useState","useState","_useState2","_slicedToArray","highlightedThemeVariable","setHighlightedThemeVariable","_useState3","_useState4","selectedTheme","setSelectedTheme","previewTheme","cloneDeep","ColumnLayout","style","marginTop","Row","Column","Heading","level","Select","value","onChange","e","_ref2","Object","keys","map","themeId","Option","key","colStyle","padding","SplunkThemeProvider","Message","type","varKey","_sharedThemeVariables","_themeFamilyMapping$s","themeValue","theme","splunkThemeV1","omit","isFromSharedVariables","sharedThemeVariables","isJSON","_typeof","JSON","parse","onMouseOver","onMouseOut","Tooltip","content","object","isRequired","func"],"mappings":"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","file":"ThemesDoc.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 66);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"@babel/runtime/helpers/slicedToArray\");","module.exports = require(\"@splunk/react-ui/ColumnLayout\");","module.exports = require(\"@babel/runtime/helpers/typeof\");","module.exports = require(\"@splunk/visualizations-shared/colorUtils\");","module.exports = require(\"@splunk/visualization-themes/variables\");","module.exports = require(\"styled-components\");","module.exports = require(\"@splunk/react-ui/Select\");","module.exports = require(\"lodash/omit\");","module.exports = require(\"lodash/cloneDeep\");","module.exports = require(\"@splunk/react-ui/Message\");","module.exports = require(\"@splunk/react-ui/Tooltip\");","module.exports = require(\"@splunk/themes/SplunkThemeProvider\");","module.exports = require(\"@splunk/react-ui/Heading\");","/* eslint-disable react/no-multi-comp */\nimport React, { useState } from 'react';\nimport T from 'prop-types';\nimport Heading from '@splunk/react-ui/Heading';\nimport styled from 'styled-components';\nimport omit from 'lodash/omit';\nimport cloneDeep from 'lodash/cloneDeep';\nimport ColumnLayout from '@splunk/react-ui/ColumnLayout';\nimport Select from '@splunk/react-ui/Select';\nimport Message from '@splunk/react-ui/Message';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport SplunkThemeProvider from '@splunk/themes/SplunkThemeProvider';\nimport { isColor } from '@splunk/visualizations-shared/colorUtils';\nimport * as sharedThemeVariables from '@splunk/visualization-themes/variables';\n\nconst ThemeVar = styled.div`\n margin-top: 20px;\n cursor: pointer;\n`;\nconst ThemeVarName = styled.div`\n color: #5ca300;\n padding-bottom: 5px;\n display: inline-block;\n padding-right: 5px;\n font-weight: ${props => (props.highlighted ? 'bold' : 'normal')};\n`;\nconst PairContainer = styled.div`\n margin-left: 40px;\n margin-top: 10px;\n`;\nconst PairTitle = styled.span`\n display: inline-block;\n color: #8293a7;\n width: 80px;\n`;\nconst ColorPreview = styled.div`\n width: 20px;\n height: 20px;\n background: ${props => props.color};\n display: inline-block;\n vertical-align: bottom;\n margin-right: 5px;\n border: 1px solid rgba(0, 0, 0, 0.3);\n border-radius: 5px;\n`;\n\nconst Pair = ({ title, text }) => (\n <PairContainer>\n <PairTitle>{`${title}:`}</PairTitle>\n {isColor(text) && <ColorPreview color={text} />}\n <samp>{text}</samp>\n </PairContainer>\n);\nPair.propTypes = {\n title: T.string,\n text: T.string,\n};\n\nconst themeFamilyMapping = {\n enterprise: {\n colorScheme: {\n dark: 'enterpriseDark',\n light: 'enterprise',\n },\n },\n prisma: {\n colorScheme: {\n dark: 'scp',\n light: 'enterprise',\n },\n },\n};\n\nconst themeIdToVariant = {\n enterpriseLightComfortable: {\n colorScheme: 'light',\n density: 'comfortable',\n family: 'enterprise',\n label: 'Enterprise Light Comfortable',\n },\n enterpriseLightCompact: {\n colorScheme: 'light',\n density: 'compact',\n family: 'enterprise',\n label: 'Enterprise Light Compact',\n },\n enterpriseDarkComfortable: {\n colorScheme: 'dark',\n density: 'comfortable',\n family: 'enterprise',\n label: 'Enterprise Dark Comfortable',\n },\n enterpriseDarkCompact: {\n colorScheme: 'dark',\n density: 'compact',\n family: 'enterprise',\n label: 'Enterprise Dark Compact',\n },\n prismaLightComfortable: {\n colorScheme: 'light',\n density: 'comfortable',\n family: 'prisma',\n label: 'Prisma Light Comfortable',\n },\n prismaLightCompact: {\n colorScheme: 'light',\n density: 'compact',\n family: 'prisma',\n label: 'Prisma Light Compact',\n },\n prismaDarkComfortable: {\n colorScheme: 'dark',\n density: 'comfortable',\n family: 'prisma',\n label: 'Prisma Dark Comfortable',\n },\n prismaDarkCompact: {\n colorScheme: 'dark',\n density: 'compact',\n family: 'prisma',\n label: 'Prisma Dark Compact',\n },\n};\n\nconst ThemesDoc = props => {\n const { renderVisualization, themes: themeVars } = props;\n const [highlightedThemeVariable, setHighlightedThemeVariable] = useState('');\n const [selectedTheme, setSelectedTheme] = useState(themeIdToVariant.enterpriseLightComfortable);\n const previewTheme = cloneDeep(themeVars);\n // if the highlighted theme variable is a color, color it red\n // TODO(fkurniawan): fix red highlighting. this broke ~v20.7.0, and approach needs to be modified again owing to SUI upgrade\n if (isColor(themeVars[highlightedThemeVariable])) {\n previewTheme[highlightedThemeVariable] = () => 'red';\n }\n return (\n <ColumnLayout style={{ marginTop: -20 }}>\n <ColumnLayout.Row>\n <ColumnLayout.Column span={12}>\n <Heading level={4}>Theme</Heading>\n <Select value={selectedTheme} onChange={(e, { value }) => setSelectedTheme(value)}>\n {Object.keys(themeIdToVariant).map(themeId => (\n <Select.Option\n key={themeId}\n label={themeIdToVariant[themeId].label}\n value={themeIdToVariant[themeId]}\n />\n ))}\n </Select>\n </ColumnLayout.Column>\n </ColumnLayout.Row>\n <ColumnLayout.Row>\n <ColumnLayout.Column colStyle={{ padding: 10 }} span={4}>\n <Heading level={4}>Preview</Heading>\n <SplunkThemeProvider\n family={selectedTheme.family}\n colorScheme={selectedTheme.colorScheme}\n density={selectedTheme.density}\n >\n {renderVisualization()}\n </SplunkThemeProvider>\n <Message type=\"info\">\n This preview may differ from the visualization&apos;s default look and feel. <br />\n It exists to show areas affected by theme variables.\n </Message>\n </ColumnLayout.Column>\n <ColumnLayout.Column colStyle={{ padding: 10 }} span={8}>\n <Heading level={4}>Variables</Heading>\n {Object.keys(previewTheme).map(varKey => {\n const themeValue = previewTheme[varKey]({\n theme: { splunkThemeV1: omit(selectedTheme, ['label']) },\n });\n // if a theme variable is in @splunk/visualization-themes and it has the same value\n // we assume we used the shared variable.\n const isFromSharedVariables =\n sharedThemeVariables?.[\n themeFamilyMapping?.[selectedTheme.family]?.[selectedTheme.colorScheme]\n ]?.[varKey] === themeValue;\n // for now we only show simple theme values (nested theme objects shouldn't have been introduced in the first place)\n let isJSON;\n try {\n isJSON = typeof JSON.parse(themeValue) === 'object';\n } catch (e) {} // eslint-disable-line no-empty\n return (\n !isJSON && (\n <ThemeVar\n key={varKey}\n onMouseOver={() => setHighlightedThemeVariable(varKey)}\n onMouseOut={() => setHighlightedThemeVariable('')}\n >\n <ThemeVarName\n highlighted={varKey === highlightedThemeVariable}\n >{`${varKey}`}</ThemeVarName>\n {isFromSharedVariables && (\n <Tooltip content=\"This is a shared theme variable from @splunk/visualization-themes\" />\n )}\n <Pair title=\"Value\" text={themeValue} />\n </ThemeVar>\n )\n );\n })}\n </ColumnLayout.Column>\n </ColumnLayout.Row>\n </ColumnLayout>\n );\n};\n\nThemesDoc.propTypes = {\n themes: T.object.isRequired, // @TODO: replace with themes object from viz config when we add docs/descs to theme vars\n renderVisualization: T.func.isRequired,\n};\n\nexport default ThemesDoc;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"@babel/runtime/helpers/slicedToArray\"","webpack:///external \"@splunk/react-ui/ColumnLayout\"","webpack:///external \"@babel/runtime/helpers/typeof\"","webpack:///external \"@splunk/visualizations-shared/colorUtils\"","webpack:///external \"@splunk/visualization-themes/variables\"","webpack:///external \"styled-components\"","webpack:///external \"@splunk/react-ui/Select\"","webpack:///external \"lodash/omit\"","webpack:///external \"lodash/cloneDeep\"","webpack:///external \"@splunk/react-ui/Message\"","webpack:///external \"@splunk/react-ui/Tooltip\"","webpack:///external \"@splunk/themes/SplunkThemeProvider\"","webpack:///external \"@splunk/react-ui/Heading\"","webpack:///./src/common/ThemesDoc.jsx"],"names":["ThemeVar","styled","ThemeVarName","props","PairContainer","PairTitle","ColorPreview","Pair","title","text","isColor","T","string","themeFamilyMapping","enterprise","colorScheme","dark","light","prisma","themeIdToVariant","enterpriseLightComfortable","density","family","label","enterpriseLightCompact","enterpriseDarkComfortable","enterpriseDarkCompact","prismaLightComfortable","prismaLightCompact","prismaDarkComfortable","prismaDarkCompact","ThemesDoc","renderVisualization","themeVars","useState","highlightedThemeVariable","setHighlightedThemeVariable","selectedTheme","setSelectedTheme","previewTheme","cloneDeep","marginTop","value","padding","themeValue","theme","splunkThemeV1","omit","isFromSharedVariables","isJSON","JSON","varKey","themes","isRequired"],"mappings":"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","file":"ThemesDoc.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 66);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"@babel/runtime/helpers/slicedToArray\");","module.exports = require(\"@splunk/react-ui/ColumnLayout\");","module.exports = require(\"@babel/runtime/helpers/typeof\");","module.exports = require(\"@splunk/visualizations-shared/colorUtils\");","module.exports = require(\"@splunk/visualization-themes/variables\");","module.exports = require(\"styled-components\");","module.exports = require(\"@splunk/react-ui/Select\");","module.exports = require(\"lodash/omit\");","module.exports = require(\"lodash/cloneDeep\");","module.exports = require(\"@splunk/react-ui/Message\");","module.exports = require(\"@splunk/react-ui/Tooltip\");","module.exports = require(\"@splunk/themes/SplunkThemeProvider\");","module.exports = require(\"@splunk/react-ui/Heading\");","/* eslint-disable react/no-multi-comp */\nimport React, { useState } from 'react';\nimport T from 'prop-types';\nimport Heading from '@splunk/react-ui/Heading';\nimport styled from 'styled-components';\nimport omit from 'lodash/omit';\nimport cloneDeep from 'lodash/cloneDeep';\nimport ColumnLayout from '@splunk/react-ui/ColumnLayout';\nimport Select from '@splunk/react-ui/Select';\nimport Message from '@splunk/react-ui/Message';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport SplunkThemeProvider from '@splunk/themes/SplunkThemeProvider';\nimport { isColor } from '@splunk/visualizations-shared/colorUtils';\nimport * as sharedThemeVariables from '@splunk/visualization-themes/variables';\n\nconst ThemeVar = styled.div`\n margin-top: 20px;\n cursor: pointer;\n`;\nconst ThemeVarName = styled.div`\n color: #5ca300;\n padding-bottom: 5px;\n display: inline-block;\n padding-right: 5px;\n font-weight: ${props => (props.highlighted ? 'bold' : 'normal')};\n`;\nconst PairContainer = styled.div`\n margin-left: 40px;\n margin-top: 10px;\n`;\nconst PairTitle = styled.span`\n display: inline-block;\n color: #8293a7;\n width: 80px;\n`;\nconst ColorPreview = styled.div`\n width: 20px;\n height: 20px;\n background: ${props => props.color};\n display: inline-block;\n vertical-align: bottom;\n margin-right: 5px;\n border: 1px solid rgba(0, 0, 0, 0.3);\n border-radius: 5px;\n`;\n\nconst Pair = ({ title, text }) => (\n <PairContainer>\n <PairTitle>{`${title}:`}</PairTitle>\n {isColor(text) && <ColorPreview color={text} />}\n <samp>{text}</samp>\n </PairContainer>\n);\nPair.propTypes = {\n title: T.string,\n text: T.string,\n};\n\nconst themeFamilyMapping = {\n enterprise: {\n colorScheme: {\n dark: 'enterpriseDark',\n light: 'enterprise',\n },\n },\n prisma: {\n colorScheme: {\n dark: 'scp',\n light: 'enterprise',\n },\n },\n};\n\nconst themeIdToVariant = {\n enterpriseLightComfortable: {\n colorScheme: 'light',\n density: 'comfortable',\n family: 'enterprise',\n label: 'Enterprise Light Comfortable',\n },\n enterpriseLightCompact: {\n colorScheme: 'light',\n density: 'compact',\n family: 'enterprise',\n label: 'Enterprise Light Compact',\n },\n enterpriseDarkComfortable: {\n colorScheme: 'dark',\n density: 'comfortable',\n family: 'enterprise',\n label: 'Enterprise Dark Comfortable',\n },\n enterpriseDarkCompact: {\n colorScheme: 'dark',\n density: 'compact',\n family: 'enterprise',\n label: 'Enterprise Dark Compact',\n },\n prismaLightComfortable: {\n colorScheme: 'light',\n density: 'comfortable',\n family: 'prisma',\n label: 'Prisma Light Comfortable',\n },\n prismaLightCompact: {\n colorScheme: 'light',\n density: 'compact',\n family: 'prisma',\n label: 'Prisma Light Compact',\n },\n prismaDarkComfortable: {\n colorScheme: 'dark',\n density: 'comfortable',\n family: 'prisma',\n label: 'Prisma Dark Comfortable',\n },\n prismaDarkCompact: {\n colorScheme: 'dark',\n density: 'compact',\n family: 'prisma',\n label: 'Prisma Dark Compact',\n },\n};\n\nconst ThemesDoc = props => {\n const { renderVisualization, themes: themeVars } = props;\n const [highlightedThemeVariable, setHighlightedThemeVariable] = useState('');\n const [selectedTheme, setSelectedTheme] = useState(themeIdToVariant.enterpriseLightComfortable);\n const previewTheme = cloneDeep(themeVars);\n // if the highlighted theme variable is a color, color it red\n // TODO(fkurniawan): fix red highlighting. this broke ~v20.7.0, and approach needs to be modified again owing to SUI upgrade\n if (isColor(themeVars[highlightedThemeVariable])) {\n previewTheme[highlightedThemeVariable] = () => 'red';\n }\n return (\n <ColumnLayout style={{ marginTop: -20 }}>\n <ColumnLayout.Row>\n <ColumnLayout.Column span={12}>\n <Heading level={4}>Theme</Heading>\n <Select value={selectedTheme} onChange={(e, { value }) => setSelectedTheme(value)}>\n {Object.keys(themeIdToVariant).map(themeId => (\n <Select.Option\n key={themeId}\n label={themeIdToVariant[themeId].label}\n value={themeIdToVariant[themeId]}\n />\n ))}\n </Select>\n </ColumnLayout.Column>\n </ColumnLayout.Row>\n <ColumnLayout.Row>\n <ColumnLayout.Column colStyle={{ padding: 10 }} span={4}>\n <Heading level={4}>Preview</Heading>\n <SplunkThemeProvider\n family={selectedTheme.family}\n colorScheme={selectedTheme.colorScheme}\n density={selectedTheme.density}\n >\n {renderVisualization()}\n </SplunkThemeProvider>\n <Message type=\"info\">\n This preview may differ from the visualization&apos;s default look and feel. <br />\n It exists to show areas affected by theme variables.\n </Message>\n </ColumnLayout.Column>\n <ColumnLayout.Column colStyle={{ padding: 10 }} span={8}>\n <Heading level={4}>Variables</Heading>\n {Object.keys(previewTheme).map(varKey => {\n const themeValue = previewTheme[varKey]({\n theme: { splunkThemeV1: omit(selectedTheme, ['label']) },\n });\n // if a theme variable is in @splunk/visualization-themes and it has the same value\n // we assume we used the shared variable.\n const isFromSharedVariables =\n sharedThemeVariables?.[\n themeFamilyMapping?.[selectedTheme.family]?.[selectedTheme.colorScheme]\n ]?.[varKey] === themeValue;\n // for now we only show simple theme values (nested theme objects shouldn't have been introduced in the first place)\n let isJSON;\n try {\n isJSON = typeof JSON.parse(themeValue) === 'object';\n } catch (e) {} // eslint-disable-line no-empty\n return (\n !isJSON && (\n <ThemeVar\n key={varKey}\n onMouseOver={() => setHighlightedThemeVariable(varKey)}\n onMouseOut={() => setHighlightedThemeVariable('')}\n >\n <ThemeVarName\n highlighted={varKey === highlightedThemeVariable}\n >{`${varKey}`}</ThemeVarName>\n {isFromSharedVariables && (\n <Tooltip content=\"This is a shared theme variable from @splunk/visualization-themes\" />\n )}\n <Pair title=\"Value\" text={themeValue} />\n </ThemeVar>\n )\n );\n })}\n </ColumnLayout.Column>\n </ColumnLayout.Row>\n </ColumnLayout>\n );\n};\n\nThemesDoc.propTypes = {\n themes: T.object.isRequired, // @TODO: replace with themes object from viz config when we add docs/descs to theme vars\n renderVisualization: T.func.isRequired,\n};\n\nexport default ThemesDoc;\n"],"sourceRoot":""}
@@ -113,20 +113,25 @@ module.exports = require("lodash");
113
113
 
114
114
 
115
115
  var _toConsumableArray = __webpack_require__(26);
116
+
116
117
  var __rest = this && this.__rest || function (s, e) {
117
118
  var t = {};
119
+
118
120
  for (var p in s) {
119
121
  if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
120
122
  }
123
+
121
124
  if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
122
125
  if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
123
126
  }
124
127
  return t;
125
128
  };
129
+
126
130
  Object.defineProperty(exports, "__esModule", {
127
131
  value: true
128
132
  });
129
133
  exports.constructFieldsAndColumns = exports.toArrayForSeries = exports.isMultiSeriesData = exports.convertOverlayFields = exports.convertY2AxisOptions = exports.mapToValues = exports.truncateData = exports.getAnnotations = void 0;
134
+
130
135
  var lodash_1 = __webpack_require__(3);
131
136
  /**
132
137
  * Get formatted annotations
@@ -137,10 +142,12 @@ var lodash_1 = __webpack_require__(3);
137
142
  * @param {Array} options.annotationLabel
138
143
  * @returns {Array}
139
144
  */
145
+
146
+
140
147
  var getAnnotations = function getAnnotations(_ref) {
141
148
  var annotationX = _ref.annotationX,
142
- annotationColor = _ref.annotationColor,
143
- annotationLabel = _ref.annotationLabel;
149
+ annotationColor = _ref.annotationColor,
150
+ annotationLabel = _ref.annotationLabel;
144
151
  return annotationX && annotationX.length ? annotationX.map(function (timestamp, i) {
145
152
  return {
146
153
  color: annotationColor && annotationColor[i],
@@ -149,6 +156,7 @@ var getAnnotations = function getAnnotations(_ref) {
149
156
  };
150
157
  }) : [];
151
158
  };
159
+
152
160
  exports.getAnnotations = getAnnotations;
153
161
  /**
154
162
  * Truncate the result set to given limit
@@ -157,20 +165,25 @@ exports.getAnnotations = getAnnotations;
157
165
  * @param {Number|String} truncationLimit - options['chart.resultTruncationLimit']
158
166
  * @returns {Object}
159
167
  */
168
+
160
169
  var truncateData = function truncateData(dataSet, truncationLimit) {
161
170
  if (!dataSet) {
162
171
  return null;
163
172
  }
173
+
164
174
  var limit = parseInt(truncationLimit, 10);
175
+
165
176
  if (!limit || limit <= 0) {
166
177
  return dataSet;
167
178
  }
179
+
168
180
  var truncatedData = Object.assign({}, dataSet);
169
181
  truncatedData.columns = truncatedData.columns.map(function (columnData) {
170
182
  return columnData && Array.isArray(columnData) ? columnData.slice(0, limit) : columnData;
171
183
  });
172
184
  return truncatedData;
173
185
  };
186
+
174
187
  exports.truncateData = truncateData;
175
188
  /**
176
189
  * Helper method to update the option values into the values that SC accepts
@@ -178,12 +191,14 @@ exports.truncateData = truncateData;
178
191
  * @param {Object} options
179
192
  * @returns {Object}
180
193
  */
194
+
181
195
  var mapToValues = function mapToValues(optionValuesSCMapping) {
182
196
  return function (options) {
183
197
  var convertedOptions = Object.assign({}, options);
184
198
  Object.keys(optionValuesSCMapping).forEach(function (key) {
185
199
  if ((0, lodash_1.has)(options, key)) {
186
200
  var updatedValue = optionValuesSCMapping[key][options[key]];
201
+
187
202
  if (!(0, lodash_1.isUndefined)(updatedValue)) {
188
203
  convertedOptions[key] = updatedValue;
189
204
  }
@@ -192,6 +207,7 @@ var mapToValues = function mapToValues(optionValuesSCMapping) {
192
207
  return convertedOptions;
193
208
  };
194
209
  };
210
+
195
211
  exports.mapToValues = mapToValues;
196
212
  /**
197
213
  * Helper method to process options related to y2Fields
@@ -199,18 +215,23 @@ exports.mapToValues = mapToValues;
199
215
  * @param {Object} originalOptions
200
216
  * @returns {Object}
201
217
  */
218
+
202
219
  var convertY2AxisOptions = function convertY2AxisOptions(_a) {
203
220
  var y2Fields = _a.y2Fields,
204
- originalOptions = __rest(_a, ["y2Fields"]);
221
+ originalOptions = __rest(_a, ["y2Fields"]);
222
+
205
223
  var convertedOptions = Object.assign({}, originalOptions);
224
+
206
225
  if (y2Fields) {
207
226
  convertedOptions['axisY2.enabled'] = true;
208
227
  convertedOptions['axisY2.fields'] = (0, lodash_1.isArray)(y2Fields) ? y2Fields.filter(function (name) {
209
228
  return name;
210
229
  }).join(',') : y2Fields;
211
230
  }
231
+
212
232
  return convertedOptions;
213
233
  };
234
+
214
235
  exports.convertY2AxisOptions = convertY2AxisOptions;
215
236
  /**
216
237
  * Helper method to format value for overlayFields
@@ -218,9 +239,11 @@ exports.convertY2AxisOptions = convertY2AxisOptions;
218
239
  * @param {Object} originalOptions
219
240
  * @returns {Object}
220
241
  */
242
+
221
243
  var convertOverlayFields = function convertOverlayFields(originalOptions) {
222
244
  var convertedOptions = Object.assign({}, originalOptions);
223
245
  var overlayFields = originalOptions.overlayFields;
246
+
224
247
  if (overlayFields) {
225
248
  convertedOptions.overlayFields = Array.isArray(overlayFields) ? overlayFields.filter(function (field) {
226
249
  return field;
@@ -228,17 +251,21 @@ var convertOverlayFields = function convertOverlayFields(originalOptions) {
228
251
  return field.trim();
229
252
  }).join(',') : overlayFields;
230
253
  }
254
+
231
255
  return convertedOptions;
232
256
  };
257
+
233
258
  exports.convertOverlayFields = convertOverlayFields;
234
259
  /**
235
260
  * checks whether data is multi series data
236
261
  * @param {array} data array
237
262
  * @return {Boolean}
238
263
  */
264
+
239
265
  var isMultiSeriesData = function isMultiSeriesData(data) {
240
266
  return Array.isArray(data) && Array.isArray(data[0]);
241
267
  };
268
+
242
269
  exports.isMultiSeriesData = isMultiSeriesData;
243
270
  /**
244
271
  * checks whether data is multi series data and returns value as array
@@ -246,19 +273,22 @@ exports.isMultiSeriesData = isMultiSeriesData;
246
273
  * @param {*} value to return as array
247
274
  * @return {array}
248
275
  */
276
+
249
277
  var toArrayForSeries = function toArrayForSeries(data, value) {
250
278
  return (0, exports.isMultiSeriesData)(data) ? value : [value];
251
279
  };
280
+
252
281
  exports.toArrayForSeries = toArrayForSeries;
282
+
253
283
  var constructFieldsAndColumns = function constructFieldsAndColumns(_ref2) {
254
284
  var _ref2$x = _ref2.x,
255
- x = _ref2$x === void 0 ? [] : _ref2$x,
256
- _ref2$y = _ref2.y,
257
- y = _ref2$y === void 0 ? [] : _ref2$y,
258
- xField = _ref2.xField,
259
- yFields = _ref2.yFields,
260
- y2 = _ref2.y2,
261
- y2Fields = _ref2.y2Fields;
285
+ x = _ref2$x === void 0 ? [] : _ref2$x,
286
+ _ref2$y = _ref2.y,
287
+ y = _ref2$y === void 0 ? [] : _ref2$y,
288
+ xField = _ref2.xField,
289
+ yFields = _ref2.yFields,
290
+ y2 = _ref2.y2,
291
+ y2Fields = _ref2.y2Fields;
262
292
  var columns = [x.map(String)].concat(_toConsumableArray((0, exports.toArrayForSeries)(y, y).map(function (series) {
263
293
  return series.map(String);
264
294
  })));
@@ -269,10 +299,10 @@ var constructFieldsAndColumns = function constructFieldsAndColumns(_ref2) {
269
299
  return {
270
300
  name: field
271
301
  };
272
- })));
273
- // splunk-charting requires y2 to be part of columns
302
+ }))); // splunk-charting requires y2 to be part of columns
274
303
  // when y & y2 options are configured with different (mutually exclusive) series
275
304
  // y2 columns need to be added to columns
305
+
276
306
  if (y2Fields) {
277
307
  var y2FieldsArray = (0, exports.toArrayForSeries)(y2, y2Fields);
278
308
  var y2AsArray = (0, exports.toArrayForSeries)(y2, y2).map(function (series) {
@@ -287,11 +317,13 @@ var constructFieldsAndColumns = function constructFieldsAndColumns(_ref2) {
287
317
  }
288
318
  });
289
319
  }
320
+
290
321
  return {
291
322
  columns: columns,
292
323
  fields: fields
293
324
  };
294
325
  };
326
+
295
327
  exports.constructFieldsAndColumns = constructFieldsAndColumns;
296
328
 
297
329
  /***/ })
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"lodash\"","webpack:///./src/common/chartingUtils.ts"],"names":["lodash_1","require","getAnnotations","_ref","annotationX","annotationColor","annotationLabel","length","map","timestamp","i","color","label","time","exports","truncateData","dataSet","truncationLimit","limit","parseInt","truncatedData","Object","assign","columns","columnData","Array","isArray","slice","mapToValues","optionValuesSCMapping","options","convertedOptions","keys","forEach","key","has","updatedValue","isUndefined","convertY2AxisOptions","_a","y2Fields","originalOptions","__rest","filter","name","join","convertOverlayFields","overlayFields","field","trim","isMultiSeriesData","data","toArrayForSeries","value","constructFieldsAndColumns","_ref2","_ref2$x","x","_ref2$y","y","xField","yFields","y2","String","concat","_toConsumableArray","series","yFieldsArray","fields","y2FieldsArray","y2AsArray","y2Field","index","indexOf","push"],"mappings":"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","file":"chartingUtils.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 = 67);\n","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"lodash\");","import { has, isArray, isUndefined } from 'lodash';\nimport type { JsonColumnData } from './interfaces/DataSource';\n\ninterface ChartOptions {\n [key: string]: any;\n}\n\n/**\n * Get formatted annotations\n * @method getAnnotations\n * @param {Object} options\n * @param {Array} options.annotationX\n * @param {Array} options.annotationColor\n * @param {Array} options.annotationLabel\n * @returns {Array}\n */\nexport const getAnnotations = ({ annotationX, annotationColor, annotationLabel }) =>\n annotationX && annotationX.length\n ? annotationX.map((timestamp, i) => ({\n color: annotationColor && annotationColor[i],\n label: annotationLabel && annotationLabel[i],\n time: timestamp,\n }))\n : [];\n\n/**\n * Truncate the result set to given limit\n * @method truncateData\n * @param {Object} dataSet - dataSources.primary.data\n * @param {Number|String} truncationLimit - options['chart.resultTruncationLimit']\n * @returns {Object}\n */\nexport const truncateData = (dataSet, truncationLimit): Record<string, any[]> => {\n if (!dataSet) {\n return null;\n }\n\n const limit = parseInt(truncationLimit, 10);\n if (!limit || limit <= 0) {\n return dataSet;\n }\n\n const truncatedData: Record<string, Array<string[] | number[]>> = { ...dataSet };\n truncatedData.columns = truncatedData.columns.map(columnData =>\n columnData && Array.isArray(columnData) ? columnData.slice(0, limit) : columnData\n );\n return truncatedData;\n};\n\n/**\n * Helper method to update the option values into the values that SC accepts\n * @method mapToValues\n * @param {Object} options\n * @returns {Object}\n */\nexport const mapToValues = (optionValuesSCMapping: Record<string, any>) => options => {\n const convertedOptions: Record<string, any> = { ...options };\n Object.keys(optionValuesSCMapping).forEach(key => {\n if (has(options, key)) {\n const updatedValue = optionValuesSCMapping[key][options[key]];\n if (!isUndefined(updatedValue)) {\n convertedOptions[key] = updatedValue;\n }\n }\n });\n return convertedOptions;\n};\n\ninterface y2AxisOptions extends ChartOptions {\n y2Fields?: string | string[];\n}\n\n/**\n * Helper method to process options related to y2Fields\n * @method convertY2AxisOptions\n * @param {Object} originalOptions\n * @returns {Object}\n */\nexport const convertY2AxisOptions = ({\n y2Fields,\n ...originalOptions\n}: y2AxisOptions): Record<string, any> => {\n const convertedOptions: Record<string, any> = {\n ...originalOptions,\n };\n if (y2Fields) {\n convertedOptions['axisY2.enabled'] = true;\n convertedOptions['axisY2.fields'] = isArray(y2Fields)\n ? y2Fields.filter(name => name).join(',')\n : y2Fields;\n }\n return convertedOptions;\n};\n\n/**\n * Helper method to format value for overlayFields\n * @method convertOverlayFields\n * @param {Object} originalOptions\n * @returns {Object}\n */\nexport const convertOverlayFields = (originalOptions: ChartOptions): ChartOptions => {\n const convertedOptions: ChartOptions = {\n ...originalOptions,\n };\n const { overlayFields } = originalOptions;\n if (overlayFields) {\n convertedOptions.overlayFields = Array.isArray(overlayFields)\n ? overlayFields\n .filter(field => field)\n .map(field => field.trim())\n .join(',')\n : overlayFields;\n }\n return convertedOptions;\n};\n\n/**\n * checks whether data is multi series data\n * @param {array} data array\n * @return {Boolean}\n */\nexport const isMultiSeriesData = (data: string[] | string[][]): boolean =>\n Array.isArray(data) && Array.isArray(data[0]);\n/**\n * checks whether data is multi series data and returns value as array\n * @param {array} data array\n * @param {*} value to return as array\n * @return {array}\n */\nexport const toArrayForSeries = (data, value): any[] => (isMultiSeriesData(data) ? value : [value]);\n\ninterface ConstructFieldsAndColumnsParams {\n x: string[];\n y: string[] | string[][];\n xField: string;\n yFields: string | string[];\n y2?: string[] | string[][];\n y2Fields?: string | string[];\n}\nexport const constructFieldsAndColumns = ({\n x = [],\n y = [],\n xField,\n yFields,\n y2,\n y2Fields,\n}: ConstructFieldsAndColumnsParams): JsonColumnData => {\n const columns = [x.map(String), ...toArrayForSeries(y, y).map(series => series.map(String))];\n const yFieldsArray = toArrayForSeries(y, yFields);\n const fields = [{ name: xField }, ...yFieldsArray.map(field => ({ name: field }))];\n // splunk-charting requires y2 to be part of columns\n // when y & y2 options are configured with different (mutually exclusive) series\n // y2 columns need to be added to columns\n if (y2Fields) {\n const y2FieldsArray = toArrayForSeries(y2, y2Fields);\n const y2AsArray = toArrayForSeries(y2, y2).map(series => series?.map(String));\n y2FieldsArray.forEach((y2Field, index) => {\n if (yFieldsArray.indexOf(y2Field) === -1 && y2AsArray[index]) {\n fields.push({\n name: y2Field,\n });\n columns.push(y2AsArray[index]);\n }\n });\n }\n return {\n columns,\n fields,\n };\n};\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@babel/runtime/helpers/toConsumableArray\"","webpack:///external \"lodash\"","webpack:///./src/common/chartingUtils.ts"],"names":[],"mappings":";;;;;;;QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;AClFA,qE;;;;;;;ACAA,mC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AAOA;;;;;;;;AAQG;;;AACI,IAAM,cAAc,GAAG,SAAjB,cAAiB;AAAA,MAAG,WAAH,QAAG,WAAH;AAAA,MAAgB,eAAhB,QAAgB,eAAhB;AAAA,MAAiC,eAAjC,QAAiC,eAAjC;AAAA,SAC1B,WAAW,IAAI,WAAW,CAAC,MAA3B,GACM,WAAW,CAAC,GAAZ,CAAgB,UAAC,SAAD,EAAY,CAAZ;AAAA,WAAmB;AAC/B,WAAK,EAAE,eAAe,IAAI,eAAe,CAAC,CAAD,CADV;AAE/B,WAAK,EAAE,eAAe,IAAI,eAAe,CAAC,CAAD,CAFV;AAG/B,UAAI,EAAE;AAHyB,KAAnB;AAAA,GAAhB,CADN,GAMM,EAPoB;AAAA,CAAvB;;AAAM,yBAAc,cAAd;AASb;;;;;;AAMG;;AACI,IAAM,YAAY,GAAG,SAAf,YAAe,CAAC,OAAD,EAAU,eAAV,EAAoD;AAC5E,MAAI,CAAC,OAAL,EAAc;AACV,WAAO,IAAP;AACH;;AAED,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAD,EAAkB,EAAlB,CAAtB;;AACA,MAAI,CAAC,KAAD,IAAU,KAAK,IAAI,CAAvB,EAA0B;AACtB,WAAO,OAAP;AACH;;AAED,MAAM,aAAa,qBAAoD,OAApD,CAAnB;AACA,eAAa,CAAC,OAAd,GAAwB,aAAa,CAAC,OAAd,CAAsB,GAAtB,CAA0B,oBAAU;AAAA,WACxD,UAAU,IAAI,KAAK,CAAC,OAAN,CAAc,UAAd,CAAd,GAA0C,UAAU,CAAC,KAAX,CAAiB,CAAjB,EAAoB,KAApB,CAA1C,GAAuE,UADf;AAAA,GAApC,CAAxB;AAGA,SAAO,aAAP;AACH,CAfM;;AAAM,uBAAY,YAAZ;AAiBb;;;;;AAKG;;AACI,IAAM,WAAW,GAAG,SAAd,WAAc,CAAC,qBAAD;AAAA,SAAgD,iBAAO,EAAG;AACjF,QAAM,gBAAgB,qBAA6B,OAA7B,CAAtB;AACA,UAAM,CAAC,IAAP,CAAY,qBAAZ,EAAmC,OAAnC,CAA2C,aAAG,EAAG;AAC7C,UAAI,kBAAI,OAAJ,EAAa,GAAb,CAAJ,EAAuB;AACnB,YAAM,YAAY,GAAG,qBAAqB,CAAC,GAAD,CAArB,CAA2B,OAAO,CAAC,GAAD,CAAlC,CAArB;;AACA,YAAI,CAAC,0BAAY,YAAZ,CAAL,EAAgC;AAC5B,0BAAgB,CAAC,GAAD,CAAhB,GAAwB,YAAxB;AACH;AACJ;AACJ,KAPD;AAQA,WAAO,gBAAP;AACH,GAX0B;AAAA,CAApB;;AAAM,sBAAW,WAAX;AAiBb;;;;;AAKG;;AACI,IAAM,oBAAoB,GAAG,SAAvB,oBAAuB,CAAC,EAAD,EAGK;AAHJ,MACjC,QADiC,GACzB,EADyB,CACjC,QADiC;AAAA,MAE9B,eAF8B,GAEf,WAFe,YAEf,CAFe;;AAIjC,MAAM,gBAAgB,qBACf,eADe,CAAtB;;AAGA,MAAI,QAAJ,EAAc;AACV,oBAAgB,CAAC,gBAAD,CAAhB,GAAqC,IAArC;AACA,oBAAgB,CAAC,eAAD,CAAhB,GAAoC,sBAAQ,QAAR,IAC9B,QAAQ,CAAC,MAAT,CAAgB,cAAI;AAAA,aAAI,IAAJ;AAAA,KAApB,EAA8B,IAA9B,CAAmC,GAAnC,CAD8B,GAE9B,QAFN;AAGH;;AACD,SAAO,gBAAP;AACH,CAdM;;AAAM,+BAAoB,oBAApB;AAgBb;;;;;AAKG;;AACI,IAAM,oBAAoB,GAAG,SAAvB,oBAAuB,CAAC,eAAD,EAAgD;AAChF,MAAM,gBAAgB,qBACf,eADe,CAAtB;AADgF,MAIxE,aAJwE,GAItD,eAJsD,CAIxE,aAJwE;;AAKhF,MAAI,aAAJ,EAAmB;AACf,oBAAgB,CAAC,aAAjB,GAAiC,KAAK,CAAC,OAAN,CAAc,aAAd,IAC3B,aAAa,CACR,MADL,CACY,eAAK;AAAA,aAAI,KAAJ;AAAA,KADjB,EAEK,GAFL,CAES,eAAK;AAAA,aAAI,KAAK,CAAC,IAAN,EAAJ;AAAA,KAFd,EAGK,IAHL,CAGU,GAHV,CAD2B,GAK3B,aALN;AAMH;;AACD,SAAO,gBAAP;AACH,CAdM;;AAAM,+BAAoB,oBAApB;AAgBb;;;;AAIG;;AACI,IAAM,iBAAiB,GAAG,SAApB,iBAAoB,CAAC,IAAD;AAAA,SAC7B,KAAK,CAAC,OAAN,CAAc,IAAd,KAAuB,KAAK,CAAC,OAAN,CAAc,IAAI,CAAC,CAAD,CAAlB,CADM;AAAA,CAA1B;;AAAM,4BAAiB,iBAAjB;AAEb;;;;;AAKG;;AACI,IAAM,gBAAgB,GAAG,SAAnB,gBAAmB,CAAC,IAAD,EAAO,KAAP;AAAA,SAAyB,+BAAkB,IAAlB,IAA0B,KAA1B,GAAkC,CAAC,KAAD,CAA3D;AAAA,CAAzB;;AAAM,2BAAgB,gBAAhB;;AAUN,IAAM,yBAAyB,GAAG,SAA5B,yBAA4B,QAOa;AAAA,sBANlD,CAMkD;AAAA,MANlD,CAMkD,wBAN9C,EAM8C;AAAA,sBALlD,CAKkD;AAAA,MALlD,CAKkD,wBAL9C,EAK8C;AAAA,MAJlD,MAIkD,SAJlD,MAIkD;AAAA,MAHlD,OAGkD,SAHlD,OAGkD;AAAA,MAFlD,EAEkD,SAFlD,EAEkD;AAAA,MADlD,QACkD,SADlD,QACkD;AAClD,MAAM,OAAO,IAAI,CAAC,CAAC,GAAF,CAAM,MAAN,CAAJ,4BAAsB,8BAAiB,CAAjB,EAAoB,CAApB,EAAuB,GAAvB,CAA2B,gBAAM;AAAA,WAAI,MAAM,CAAC,GAAP,CAAW,MAAX,CAAJ;AAAA,GAAjC,CAAtB,EAAb;AACA,MAAM,YAAY,GAAG,8BAAiB,CAAjB,EAAoB,OAApB,CAArB;AACA,MAAM,MAAM,IAAI;AAAE,QAAI,EAAE;AAAR,GAAJ,4BAAyB,YAAY,CAAC,GAAb,CAAiB,eAAK;AAAA,WAAK;AAAE,UAAI,EAAE;AAAR,KAAL;AAAA,GAAtB,CAAzB,EAAZ,CAHkD,CAIlD;AACA;AACA;;AACA,MAAI,QAAJ,EAAc;AACV,QAAM,aAAa,GAAG,8BAAiB,EAAjB,EAAqB,QAArB,CAAtB;AACA,QAAM,SAAS,GAAG,8BAAiB,EAAjB,EAAqB,EAArB,EAAyB,GAAzB,CAA6B,gBAAM;AAAA,aAAI,MAAM,SAAN,UAAM,WAAN,GAAM,MAAN,SAAM,CAAE,GAAR,CAAY,MAAZ,CAAJ;AAAA,KAAnC,CAAlB;AACA,iBAAa,CAAC,OAAd,CAAsB,UAAC,OAAD,EAAU,KAAV,EAAmB;AACrC,UAAI,YAAY,CAAC,OAAb,CAAqB,OAArB,MAAkC,CAAC,CAAnC,IAAwC,SAAS,CAAC,KAAD,CAArD,EAA8D;AAC1D,cAAM,CAAC,IAAP,CAAY;AACR,cAAI,EAAE;AADE,SAAZ;AAGA,eAAO,CAAC,IAAR,CAAa,SAAS,CAAC,KAAD,CAAtB;AACH;AACJ,KAPD;AAQH;;AACD,SAAO;AACH,WAAO,EAAP,OADG;AAEH,UAAM,EAAN;AAFG,GAAP;AAIH,CA9BM;;AAAM,oCAAyB,yBAAzB,C","file":"chartingUtils.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 = 67);\n","module.exports = require(\"@babel/runtime/helpers/toConsumableArray\");","module.exports = require(\"lodash\");","import { has, isArray, isUndefined } from 'lodash';\nimport type { JsonColumnData } from './interfaces/DataSource';\n\ninterface ChartOptions {\n [key: string]: any;\n}\n\n/**\n * Get formatted annotations\n * @method getAnnotations\n * @param {Object} options\n * @param {Array} options.annotationX\n * @param {Array} options.annotationColor\n * @param {Array} options.annotationLabel\n * @returns {Array}\n */\nexport const getAnnotations = ({ annotationX, annotationColor, annotationLabel }) =>\n annotationX && annotationX.length\n ? annotationX.map((timestamp, i) => ({\n color: annotationColor && annotationColor[i],\n label: annotationLabel && annotationLabel[i],\n time: timestamp,\n }))\n : [];\n\n/**\n * Truncate the result set to given limit\n * @method truncateData\n * @param {Object} dataSet - dataSources.primary.data\n * @param {Number|String} truncationLimit - options['chart.resultTruncationLimit']\n * @returns {Object}\n */\nexport const truncateData = (dataSet, truncationLimit): Record<string, any[]> => {\n if (!dataSet) {\n return null;\n }\n\n const limit = parseInt(truncationLimit, 10);\n if (!limit || limit <= 0) {\n return dataSet;\n }\n\n const truncatedData: Record<string, Array<string[] | number[]>> = { ...dataSet };\n truncatedData.columns = truncatedData.columns.map(columnData =>\n columnData && Array.isArray(columnData) ? columnData.slice(0, limit) : columnData\n );\n return truncatedData;\n};\n\n/**\n * Helper method to update the option values into the values that SC accepts\n * @method mapToValues\n * @param {Object} options\n * @returns {Object}\n */\nexport const mapToValues = (optionValuesSCMapping: Record<string, any>) => options => {\n const convertedOptions: Record<string, any> = { ...options };\n Object.keys(optionValuesSCMapping).forEach(key => {\n if (has(options, key)) {\n const updatedValue = optionValuesSCMapping[key][options[key]];\n if (!isUndefined(updatedValue)) {\n convertedOptions[key] = updatedValue;\n }\n }\n });\n return convertedOptions;\n};\n\ninterface y2AxisOptions extends ChartOptions {\n y2Fields?: string | string[];\n}\n\n/**\n * Helper method to process options related to y2Fields\n * @method convertY2AxisOptions\n * @param {Object} originalOptions\n * @returns {Object}\n */\nexport const convertY2AxisOptions = ({\n y2Fields,\n ...originalOptions\n}: y2AxisOptions): Record<string, any> => {\n const convertedOptions: Record<string, any> = {\n ...originalOptions,\n };\n if (y2Fields) {\n convertedOptions['axisY2.enabled'] = true;\n convertedOptions['axisY2.fields'] = isArray(y2Fields)\n ? y2Fields.filter(name => name).join(',')\n : y2Fields;\n }\n return convertedOptions;\n};\n\n/**\n * Helper method to format value for overlayFields\n * @method convertOverlayFields\n * @param {Object} originalOptions\n * @returns {Object}\n */\nexport const convertOverlayFields = (originalOptions: ChartOptions): ChartOptions => {\n const convertedOptions: ChartOptions = {\n ...originalOptions,\n };\n const { overlayFields } = originalOptions;\n if (overlayFields) {\n convertedOptions.overlayFields = Array.isArray(overlayFields)\n ? overlayFields\n .filter(field => field)\n .map(field => field.trim())\n .join(',')\n : overlayFields;\n }\n return convertedOptions;\n};\n\n/**\n * checks whether data is multi series data\n * @param {array} data array\n * @return {Boolean}\n */\nexport const isMultiSeriesData = (data: string[] | string[][]): boolean =>\n Array.isArray(data) && Array.isArray(data[0]);\n/**\n * checks whether data is multi series data and returns value as array\n * @param {array} data array\n * @param {*} value to return as array\n * @return {array}\n */\nexport const toArrayForSeries = (data, value): any[] => (isMultiSeriesData(data) ? value : [value]);\n\ninterface ConstructFieldsAndColumnsParams {\n x: string[];\n y: string[] | string[][];\n xField: string;\n yFields: string | string[];\n y2?: string[] | string[][];\n y2Fields?: string | string[];\n}\nexport const constructFieldsAndColumns = ({\n x = [],\n y = [],\n xField,\n yFields,\n y2,\n y2Fields,\n}: ConstructFieldsAndColumnsParams): JsonColumnData => {\n const columns = [x.map(String), ...toArrayForSeries(y, y).map(series => series.map(String))];\n const yFieldsArray = toArrayForSeries(y, yFields);\n const fields = [{ name: xField }, ...yFieldsArray.map(field => ({ name: field }))];\n // splunk-charting requires y2 to be part of columns\n // when y & y2 options are configured with different (mutually exclusive) series\n // y2 columns need to be added to columns\n if (y2Fields) {\n const y2FieldsArray = toArrayForSeries(y2, y2Fields);\n const y2AsArray = toArrayForSeries(y2, y2).map(series => series?.map(String));\n y2FieldsArray.forEach((y2Field, index) => {\n if (yFieldsArray.indexOf(y2Field) === -1 && y2AsArray[index]) {\n fields.push({\n name: y2Field,\n });\n columns.push(y2AsArray[index]);\n }\n });\n }\n return {\n columns,\n fields,\n };\n};\n"],"sourceRoot":""}