@splunk/visualizations 25.8.1 → 25.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/Area.config.js +2 -2
  2. package/Area.config.js.map +1 -1
  3. package/Area.js +25 -9
  4. package/Area.js.map +1 -1
  5. package/Bar.config.js +3 -3
  6. package/Bar.config.js.map +1 -1
  7. package/Bar.js +26 -10
  8. package/Bar.js.map +1 -1
  9. package/Bubble.js +23 -7
  10. package/Bubble.js.map +1 -1
  11. package/ChoroplethSvg.js +20 -6
  12. package/ChoroplethSvg.js.map +1 -1
  13. package/Column.config.js +4 -4
  14. package/Column.config.js.map +1 -1
  15. package/Column.js +27 -11
  16. package/Column.js.map +1 -1
  17. package/Ellipse.js +20 -6
  18. package/Ellipse.js.map +1 -1
  19. package/Events.js +20 -6
  20. package/Events.js.map +1 -1
  21. package/FillerGauge.config.js +1 -1
  22. package/FillerGauge.config.js.map +1 -1
  23. package/FillerGauge.js +21 -7
  24. package/FillerGauge.js.map +1 -1
  25. package/Image.js +20 -6
  26. package/Image.js.map +1 -1
  27. package/Line.config.js +13 -4
  28. package/Line.config.js.map +1 -1
  29. package/Line.js +38 -12
  30. package/Line.js.map +1 -1
  31. package/LinkGraph.js +2117 -2472
  32. package/LinkGraph.js.map +1 -1
  33. package/Map.js +114 -93
  34. package/Map.js.map +1 -1
  35. package/Markdown.config.js +1 -0
  36. package/Markdown.config.js.map +1 -1
  37. package/Markdown.js +40 -25
  38. package/Markdown.js.map +1 -1
  39. package/MarkerGauge.config.js +1 -1
  40. package/MarkerGauge.config.js.map +1 -1
  41. package/MarkerGauge.js +29 -15
  42. package/MarkerGauge.js.map +1 -1
  43. package/ParallelCoordinates.js +49 -35
  44. package/ParallelCoordinates.js.map +1 -1
  45. package/Pie.config.js +1 -1
  46. package/Pie.config.js.map +1 -1
  47. package/Pie.js +32 -16
  48. package/Pie.js.map +1 -1
  49. package/Punchcard.js +143 -129
  50. package/Punchcard.js.map +1 -1
  51. package/README.internal.md +15 -5
  52. package/README.md +3 -1
  53. package/Rectangle.js +61 -47
  54. package/Rectangle.js.map +1 -1
  55. package/Sankey.js +34 -20
  56. package/Sankey.js.map +1 -1
  57. package/Scatter.js +74 -58
  58. package/Scatter.js.map +1 -1
  59. package/SingleValue.config.js +6 -6
  60. package/SingleValue.config.js.map +1 -1
  61. package/SingleValue.js +41 -25
  62. package/SingleValue.js.map +1 -1
  63. package/SingleValueBasic.js +4 -4
  64. package/SingleValueBasic.js.map +1 -1
  65. package/SingleValueIcon.config.js +10 -8
  66. package/SingleValueIcon.config.js.map +1 -1
  67. package/SingleValueIcon.js +86 -70
  68. package/SingleValueIcon.js.map +1 -1
  69. package/SingleValueRadial.config.js +10 -8
  70. package/SingleValueRadial.config.js.map +1 -1
  71. package/SingleValueRadial.js +85 -69
  72. package/SingleValueRadial.js.map +1 -1
  73. package/Table.config.js +1 -1
  74. package/Table.config.js.map +1 -1
  75. package/Table.js +54 -36
  76. package/Table.js.map +1 -1
  77. package/common/Charting.js +3 -1
  78. package/common/Charting.js.map +1 -1
  79. package/common/OptionsDoc.js +9 -6
  80. package/common/OptionsDoc.js.map +1 -1
  81. package/common/OverviewDoc.js +5 -5
  82. package/common/OverviewDoc.js.map +1 -1
  83. package/common/withDashboardViz.js +20 -6
  84. package/common/withDashboardViz.js.map +1 -1
  85. package/package.json +23 -23
@@ -508,7 +508,9 @@ var Charting = function Charting(props) {
508
508
  chart.current.prepareAndDraw(chartData, updatedOptions, function () {});
509
509
  }
510
510
  if (chart.current) {
511
- chart.current.resize(computedWidth, computedHeight);
511
+ if (Math.round(chart.current.height) !== Math.round(computedHeight) || Math.round(chart.current.width) !== Math.round(computedWidth)) {
512
+ chart.current.resize(computedWidth, computedHeight);
513
+ }
512
514
  }
513
515
  needsInit.current = false;
514
516
  needsRedraw.current = false;
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"styled-components\"","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@splunk/visualizations-shared/Message\"","webpack:///external \"@splunk/visualization-context/TimezoneContext\"","webpack:///external \"@splunk/visualizations-shared/style\"","webpack:///./src/common/ChartingApi.ts","webpack:///./src/common/Charting.tsx","webpack:///external \"@splunk/visualization-color-palettes\"","webpack:///external \"react-event-listener\"","webpack:///external \"@splunk/visualizations-shared/i18n\"","webpack:///external \"@splunk/charting-bundle\"","webpack:///external \"@splunk/themes/useSplunkTheme\"","webpack:///external \"@splunk/visualizations-shared/themeUtils\""],"names":["ChartingApiFunctional","chartRef","_classCallCheck","_createClass","key","value","highlight","_ref","arguments","length","undefined","xValue","seriesName","getChart","unHighlight","_a","current","exports","lodash_1","require","i18n_1","visualization_color_palettes_1","react_1","React","T","react_event_listener_1","charting_bundle_1","TimezoneContext_1","style_1","styled_components_1","Message_1","useSplunkTheme_1","themeUtils_1","ChartingApi_1","NO_INPLACE_PROPS","changedOptions","curOptions","nextOptions","Object","keys","filter","concat","default","enableScaledEvents","usePrevious","ref","useRef","useEffect","canUpdateInPlace","some","p","toLowerCase","endsWith","updateRowPayload","chartEventRowContext","payload","forEach","VizChartEventType","ChartingContainer","div","attrs","props","width","height","withConfig","displayName","componentId","toDimension","pick","propTypes","oneOfType","string","number","options","object","chartData","onEventTrigger","func","onClick","onSelect","onPointMouseOver","onPointMouseOut","style","colorPalette","array","visualizationApiRef","themeKey","Charting","container","needsInit","chart","needsRedraw","api","timezone","useContext","computeChartingSize","rect","getBoundingClientRect","splunkTheme","getChartingThemeKey","splunkThemeV1","prevOptions","prevTimezone","handleClick","chartEvent","type","name","name2","POINT_CLICK","value2","rowContext","originalEvent","destroyChart","destroy","handleSelect","handlePointMouseOut","handlePointMouseOver","drawChart","updatedOptions","assign","shouldColorizeTooltipData","computedChartSize","computedWidth","computedHeight","serializedTimezone","ianaTimezone","utcOffset","setTheme","setColorPalette","createChart","drilldown","on","e","POINT_MOUSE_OVER","POINT_MOUSE_OUT","LEGEND_CLICK","prepareAndDraw","resize","window","console","error","debouncedDrawChart","debounce","onContainerMount","chartingContainer","prevTheme","prevOnClick","JSON","stringify","toJSON","annotations","createElement","target","onResize","defaultProps","noop","VIZ_CATEGORICAL","withEmptyChartMessage","Chart","Wrapper","message","_","level"],"mappings":"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","file":"Charting.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 = 41);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"styled-components\");","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@splunk/visualizations-shared/Message\");","module.exports = require(\"@splunk/visualization-context/TimezoneContext\");","module.exports = require(\"@splunk/visualizations-shared/style\");","import jsCharting from '@splunk/charting-bundle';\n\ninterface Point {\n /**\n * Valid xValue of the chart\n *\n * @type {string|number}\n * @memberof Point\n */\n xValue?: string | number;\n\n /**\n * Valid seriesName for a chart\n *\n * @type {string}\n * @memberof Point\n */\n seriesName?: string;\n}\n\nexport class ChartingApiFunctional {\n // eslint-disable-next-line no-useless-constructor\n constructor(private chartRef: any) {}\n\n /**\n * Allows users to programmatically highlight a point on the chart\n *\n * @memberof ChartingApiFunctional\n */\n highlight({ xValue, seriesName }: Point = { xValue: '', seriesName: '' }): void {\n this.getChart().highlight(xValue, seriesName);\n }\n\n /**\n * Allows users to programmatically unhighlight all points on the chart\n *\n * @memberof ChartingApiFunctional\n */\n unHighlight(): void {\n this.getChart().unHighlight();\n }\n\n // returns chart object\n getChart(): jsCharting {\n return this.chartRef?.current;\n }\n}\n","/* eslint-disable react/no-unused-prop-types */\nimport { pick, debounce, noop } from 'lodash';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { VIZ_CATEGORICAL } from '@splunk/visualization-color-palettes';\nimport { useEffect, useRef, useContext } from 'react';\nimport * as React from 'react';\nimport * as T from 'prop-types';\nimport EventListener from 'react-event-listener';\nimport '@splunk/visualizations-shared/i18n'; // fixme, @splunk/charting should be refactor to use locale & timezone instead of i18n functions\nimport jsCharting from '@splunk/charting-bundle';\nimport TimezoneContext, { TimezoneContextInterface } from '@splunk/visualization-context/TimezoneContext';\nimport { toDimension } from '@splunk/visualizations-shared/style';\nimport styled from 'styled-components';\nimport Message from '@splunk/visualizations-shared/Message';\nimport useSplunkTheme from '@splunk/themes/useSplunkTheme';\nimport { getChartingThemeKey } from '@splunk/visualizations-shared/themeUtils';\nimport { ChartingApiFunctional } from './ChartingApi';\n\nexport const NO_INPLACE_PROPS = [\n 'chart',\n 'chart.orientation',\n 'layout.splitSeries',\n 'chart.style',\n 'legend.placement',\n];\n\nexport const changedOptions = (curOptions: Record<string, any>, nextOptions: Record<string, any>): string[] =>\n Object.keys(curOptions)\n .filter(key => !(key in nextOptions))\n .concat(\n Object.keys(nextOptions).filter(\n key => !(key in curOptions) || curOptions[key] !== nextOptions[key]\n )\n );\n\njsCharting.enableScaledEvents();\n\nfunction usePrevious(value): Record<string, any> {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n}\n\nexport const canUpdateInPlace = (\n curOptions: Record<string, any>,\n nextOptions: Record<string, any>\n): boolean => {\n // if either of the options are undefined\n // it cannot update in place.\n if (!curOptions || !nextOptions) {\n return false;\n }\n return (\n !NO_INPLACE_PROPS.some(p => curOptions[p] !== nextOptions[p]) &&\n !changedOptions(curOptions, nextOptions).some(p => p.toLowerCase().endsWith('color'))\n );\n};\n\n// create 'row' payloads from 'rowContext' in the flattened format:\n// row.<fieldname>.value\nexport const updateRowPayload = (\n chartEventRowContext: Record<string, any>,\n payload: Record<string, any>\n): Record<string, any> => {\n Object.keys(chartEventRowContext || {}).forEach(key => {\n // eslint-disable-next-line no-param-reassign\n payload[`${key}.value`] = chartEventRowContext[key];\n });\n\n return payload;\n};\n\nexport interface ContainerProps {\n width: string | number;\n height: string | number;\n}\n\ntype ChartEventType = 'pointClick' | 'pointMouseOver' | 'pointMouseOut' | 'chartRangeSelect' | 'legendClick';\nenum VizChartEventType {\n POINT_CLICK = 'point.click',\n POINT_MOUSE_OUT = 'point.mouseout',\n POINT_MOUSE_OVER = 'point.mouseover',\n LEGEND_CLICK = 'legend.click',\n}\n\ninterface ChartEvent<T extends ChartEventType> extends Event {\n name: string;\n name2: string;\n value?: unknown;\n value2?: unknown;\n rowContext?: Record<string, any>;\n span?: number;\n type: T;\n}\n\n// @TODO(pwied): remove after HC upgrade to 8+\n// .highcharts-a11y-proxy-container rule addresses a HighCharts < 8 bug\n// caused by the accessibility plugin\n// https://github.com/highcharts/highcharts/issues/12883\nconst ChartingContainer = styled.div.attrs((props: ContainerProps) => ({\n 'data-test': 'charting-container',\n width: props.width,\n height: props.height,\n}))`\n & .highcharts-a11y-proxy-container {\n pointer-events: none;\n }\n overflow: hidden;\n position: relative;\n ${props => toDimension(pick(props, ['width', 'height']))};\n`;\n\nexport interface ChartingProps {\n // width in pixel or string, defaults to 100%\n width: string | number;\n // height in pixel or string\n height: string | number;\n // visualization formatting options\n options?: Record<string, any>;\n // charting dataset from jsCharting.extractChartReadyData\n chartData: Record<string, any>;\n // callbacks to trigger event\n onEventTrigger?: (...args: any[]) => void;\n onSelect?: (...args: any[]) => void;\n onClick?: (...args: any[]) => void;\n onPointMouseOver?: (...args: any[]) => void;\n onPointMouseOut?: (...args: any[]) => void;\n // Custom style on visualization\n style?: Record<string, any>;\n colorPalette?: Array<string>;\n visualizationApiRef?: (...args: any[]) => void;\n themeKey?: string;\n}\n\nconst propTypes: Record<keyof ChartingProps, T.Validator<any>> = {\n width: T.oneOfType([T.string, T.number]),\n height: T.oneOfType([T.string, T.number]),\n options: T.object,\n chartData: T.object,\n onEventTrigger: T.func,\n onClick: T.func,\n onSelect: T.func,\n onPointMouseOver: T.func,\n onPointMouseOut: T.func,\n style: T.object,\n colorPalette: T.array,\n visualizationApiRef: T.func,\n themeKey: T.string,\n};\n\nconst Charting = (props: ChartingProps): React.ReactElement => {\n const container = useRef<HTMLDivElement>(null);\n const needsInit = useRef<boolean>(true);\n const chart = useRef<jsCharting>();\n const needsRedraw = useRef<boolean>(true);\n const api = useRef(new ChartingApiFunctional(chart));\n const timezone = useContext<TimezoneContextInterface>(TimezoneContext);\n\n const computeChartingSize = () => {\n if (container.current) {\n const rect = container.current.getBoundingClientRect();\n return {\n height: rect.height,\n width: rect.width,\n };\n }\n return {};\n };\n const splunkTheme = useSplunkTheme();\n const themeKey = props.themeKey ? props.themeKey : getChartingThemeKey({ splunkThemeV1: splunkTheme });\n const {\n width,\n height,\n style,\n chartData,\n options,\n colorPalette,\n onClick,\n onSelect,\n onPointMouseOut,\n onPointMouseOver,\n onEventTrigger,\n } = props;\n const prevOptions = usePrevious(options);\n const prevTimezone = usePrevious(timezone);\n\n const handleClick = (\n chartEvent: ChartEvent<'pointClick' | 'legendClick'>,\n type: VizChartEventType\n ): void => {\n let payload: Partial<ChartEvent<'pointClick' | 'legendClick'>> = pick(\n chartEvent,\n 'name2',\n 'value2',\n '_span',\n 'modifierKey'\n );\n\n payload.name = payload.name2;\n delete payload.name2;\n\n if (type === VizChartEventType.POINT_CLICK) {\n payload.value = payload.value2;\n delete payload.value2;\n\n payload = updateRowPayload(chartEvent.rowContext, payload);\n }\n\n onClick({\n type,\n originalEvent: chartEvent,\n payload,\n });\n };\n\n const destroyChart = (): void => {\n if (chart.current) {\n chart.current.destroy();\n chart.current = null;\n }\n needsRedraw.current = true;\n needsInit.current = true;\n };\n\n const handleSelect = (chartEvent: ChartEvent<'chartRangeSelect'>): void => {\n // todo: need change this after breaking all visualizations\n if (onSelect && typeof onSelect === 'function') {\n onSelect({\n type: 'range.select',\n originalEvent: chartEvent,\n payload: pick(chartEvent, 'startXIndex', 'endXIndex', 'startXValue', 'endXValue'),\n });\n\n return;\n }\n\n // the chartEvent here is a jQuery event\n onEventTrigger({\n type: 'range.select',\n originalEvent: chartEvent,\n payload: pick(chartEvent, 'startXIndex', 'endXIndex', 'startXValue', 'endXValue'),\n });\n };\n\n const handlePointMouseOut = (chartEvent: ChartEvent<'pointMouseOut'>, type: VizChartEventType): void => {\n let payload: Partial<ChartEvent<'pointMouseOut'>> = pick(\n chartEvent,\n 'name2',\n 'value2',\n '_span',\n 'modifierKey',\n 'tooltipContext'\n );\n\n payload.name = payload.name2;\n delete payload.name2;\n payload.value = payload.value2;\n delete payload.value2;\n\n payload = updateRowPayload(chartEvent.rowContext, payload);\n\n onPointMouseOut({\n type,\n originalEvent: chartEvent,\n payload,\n });\n };\n\n const handlePointMouseOver = (\n chartEvent: ChartEvent<'pointMouseOver'>,\n type: VizChartEventType\n ): void => {\n let payload: Partial<ChartEvent<'pointMouseOver'>> = pick(\n chartEvent,\n 'name2',\n 'value2',\n '_span',\n 'modifierKey',\n 'tooltipContext'\n );\n\n payload.name = payload.name2;\n delete payload.name2;\n payload.value = payload.value2;\n delete payload.value2;\n\n payload = updateRowPayload(chartEvent.rowContext, payload);\n\n onPointMouseOver({\n type,\n originalEvent: chartEvent,\n payload,\n });\n };\n\n const drawChart = (): void => {\n const updatedOptions = { ...options, shouldColorizeTooltipData: false };\n const computedChartSize = computeChartingSize();\n const computedWidth = computedChartSize.width;\n const computedHeight = computedChartSize.height;\n const serializedTimezone = timezone?.serializedTimezone;\n const ianaTimezone = timezone?.ianaTimezone;\n const utcOffset = timezone?.utcOffset;\n if (!computedWidth || !computedHeight) {\n return;\n }\n if (!chartData || !Object.keys(chartData).length) {\n return;\n }\n\n // splunk-charting layers configuration option updates.\n // when an option is removed it needs to be set to an empty string\n // to override the previous configuration\n if (prevOptions) {\n Object.keys(prevOptions).forEach(key => {\n if (updatedOptions[key] === undefined) {\n updatedOptions[key] = '';\n }\n });\n }\n\n try {\n if (needsInit.current) {\n destroyChart();\n jsCharting.setTheme(themeKey);\n if (colorPalette.length > 0) {\n jsCharting.setColorPalette(colorPalette);\n }\n chart.current = jsCharting.createChart(container.current, {\n ...updatedOptions,\n drilldown: 'all',\n ...(typeof serializedTimezone === 'string' && {\n 'time.serializedTz': serializedTimezone,\n }),\n ...(typeof ianaTimezone === 'string' && {\n 'time.ianaTimezone': ianaTimezone,\n }),\n ...(typeof utcOffset === 'number' && {\n 'time.timezoneOffset': utcOffset,\n }),\n });\n // bind event handlers\n chart.current.on('pointClick', e => {\n handleClick(e, VizChartEventType.POINT_CLICK);\n });\n chart.current.on('pointMouseOver', e => {\n handlePointMouseOver(e, VizChartEventType.POINT_MOUSE_OVER);\n });\n chart.current.on('pointMouseOut', e => {\n handlePointMouseOut(e, VizChartEventType.POINT_MOUSE_OUT);\n });\n chart.current.on('legendClick', e => {\n handleClick(e, VizChartEventType.LEGEND_CLICK);\n });\n chart.current.on('chartRangeSelect', handleSelect);\n }\n if (needsRedraw.current) {\n jsCharting.setTheme(themeKey);\n if (colorPalette.length > 0) {\n jsCharting.setColorPalette(colorPalette);\n }\n chart.current.prepareAndDraw(chartData, updatedOptions, () => {});\n }\n if (chart.current) {\n chart.current.resize(computedWidth, computedHeight);\n }\n needsInit.current = false;\n needsRedraw.current = false;\n } catch (e) {\n window.console.error('Caught error rendering chart:', e);\n }\n };\n\n const debouncedDrawChart = debounce(drawChart, 5);\n\n const onContainerMount = chartingContainer => {\n container.current = chartingContainer;\n debouncedDrawChart();\n };\n\n const prevTheme = usePrevious(themeKey);\n const prevOnClick = usePrevious(onClick);\n\n useEffect(() => {\n debouncedDrawChart();\n props.visualizationApiRef(api.current);\n return () => {\n props.visualizationApiRef(null);\n destroyChart();\n };\n }, []);\n\n useEffect(() => {\n // TODO: figure out why re-init is needed for functional components (i.e. PlatformViz) when changing theme\n // seems like redraw doesn't suffice to update the background colors\n if (\n !chart.current ||\n !canUpdateInPlace(prevOptions, options) ||\n // timezone is a simple object so this comparison should be fast\n JSON.stringify(prevTimezone) !== JSON.stringify(timezone) ||\n (!props.themeKey && prevTheme !== themeKey) ||\n prevOnClick !== onClick\n ) {\n needsInit.current = true;\n }\n needsRedraw.current = true;\n // need to immediately call drawChart upon an option or chartData change\n // otherwise a noop would occur if the onContainerMount drawChart is re-invoked when dimensions change\n drawChart();\n }, [\n JSON.stringify(options),\n JSON.stringify(chartData.toJSON()),\n JSON.stringify(chartData.annotations),\n timezone?.ianaTimezone,\n timezone?.utcOffset,\n timezone?.serializedTimezone,\n themeKey,\n onClick,\n ]);\n return (\n <ChartingContainer style={style} ref={onContainerMount} width={width} height={height}>\n <EventListener target={window} onResize={debouncedDrawChart} />\n </ChartingContainer>\n );\n};\n\nconst defaultProps: Record<keyof ChartingProps, any> = {\n width: '100%',\n height: 250,\n options: {},\n style: {},\n // todo: need remove it\n onEventTrigger: noop,\n onClick: noop,\n onSelect: noop,\n onPointMouseOver: noop,\n onPointMouseOut: noop,\n colorPalette: VIZ_CATEGORICAL,\n visualizationApiRef: noop,\n chartData: null,\n themeKey: null,\n};\n\nCharting.propTypes = propTypes;\nCharting.defaultProps = defaultProps;\n\n// allow for early return in case of empty chartData while still following hook rules\nconst withEmptyChartMessage = (Chart): React.FunctionComponent<ChartingProps> => {\n const Wrapper = (props: ChartingProps): React.ReactElement => {\n const { chartData } = props;\n\n if (!chartData) {\n return <Message message={_('No DataSource')} level=\"warning\" />;\n }\n\n if (chartData && !Object.keys(chartData).length) {\n return <Message message={_('No Result')} level=\"info\" />;\n }\n\n return <Chart {...props} />;\n };\n\n Wrapper.displayName = 'ChartingWrapper';\n Wrapper.propTypes = propTypes;\n Wrapper.defaultProps = defaultProps;\n return Wrapper;\n};\n\n// export default Charting;\nexport default withEmptyChartMessage(Charting as any);\n","module.exports = require(\"@splunk/visualization-color-palettes\");","module.exports = require(\"react-event-listener\");","module.exports = require(\"@splunk/visualizations-shared/i18n\");","module.exports = require(\"@splunk/charting-bundle\");","module.exports = require(\"@splunk/themes/useSplunkTheme\");","module.exports = require(\"@splunk/visualizations-shared/themeUtils\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"styled-components\"","webpack:///external \"lodash\"","webpack:///external \"@babel/runtime/helpers/classCallCheck\"","webpack:///external \"@babel/runtime/helpers/createClass\"","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@splunk/visualizations-shared/Message\"","webpack:///external \"@splunk/visualization-context/TimezoneContext\"","webpack:///external \"@splunk/visualizations-shared/style\"","webpack:///./src/common/ChartingApi.ts","webpack:///./src/common/Charting.tsx","webpack:///external \"@splunk/visualization-color-palettes\"","webpack:///external \"react-event-listener\"","webpack:///external \"@splunk/visualizations-shared/i18n\"","webpack:///external \"@splunk/charting-bundle\"","webpack:///external \"@splunk/themes/useSplunkTheme\"","webpack:///external \"@splunk/visualizations-shared/themeUtils\""],"names":["ChartingApiFunctional","chartRef","_classCallCheck","_createClass","key","value","highlight","_ref","arguments","length","undefined","xValue","seriesName","getChart","unHighlight","_a","current","exports","lodash_1","require","i18n_1","visualization_color_palettes_1","react_1","React","T","react_event_listener_1","charting_bundle_1","TimezoneContext_1","style_1","styled_components_1","Message_1","useSplunkTheme_1","themeUtils_1","ChartingApi_1","NO_INPLACE_PROPS","changedOptions","curOptions","nextOptions","Object","keys","filter","concat","default","enableScaledEvents","usePrevious","ref","useRef","useEffect","canUpdateInPlace","some","p","toLowerCase","endsWith","updateRowPayload","chartEventRowContext","payload","forEach","VizChartEventType","ChartingContainer","div","attrs","props","width","height","withConfig","displayName","componentId","toDimension","pick","propTypes","oneOfType","string","number","options","object","chartData","onEventTrigger","func","onClick","onSelect","onPointMouseOver","onPointMouseOut","style","colorPalette","array","visualizationApiRef","themeKey","Charting","container","needsInit","chart","needsRedraw","api","timezone","useContext","computeChartingSize","rect","getBoundingClientRect","splunkTheme","getChartingThemeKey","splunkThemeV1","prevOptions","prevTimezone","handleClick","chartEvent","type","name","name2","POINT_CLICK","value2","rowContext","originalEvent","destroyChart","destroy","handleSelect","handlePointMouseOut","handlePointMouseOver","drawChart","updatedOptions","assign","shouldColorizeTooltipData","computedChartSize","computedWidth","computedHeight","serializedTimezone","ianaTimezone","utcOffset","setTheme","setColorPalette","createChart","drilldown","on","e","POINT_MOUSE_OVER","POINT_MOUSE_OUT","LEGEND_CLICK","prepareAndDraw","Math","round","resize","window","console","error","debouncedDrawChart","debounce","onContainerMount","chartingContainer","prevTheme","prevOnClick","JSON","stringify","toJSON","annotations","createElement","target","onResize","defaultProps","noop","VIZ_CATEGORICAL","withEmptyChartMessage","Chart","Wrapper","message","_","level"],"mappings":"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","file":"Charting.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 = 41);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"styled-components\");","module.exports = require(\"lodash\");","module.exports = require(\"@babel/runtime/helpers/classCallCheck\");","module.exports = require(\"@babel/runtime/helpers/createClass\");","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@splunk/visualizations-shared/Message\");","module.exports = require(\"@splunk/visualization-context/TimezoneContext\");","module.exports = require(\"@splunk/visualizations-shared/style\");","import jsCharting from '@splunk/charting-bundle';\n\ninterface Point {\n /**\n * Valid xValue of the chart\n *\n * @type {string|number}\n * @memberof Point\n */\n xValue?: string | number;\n\n /**\n * Valid seriesName for a chart\n *\n * @type {string}\n * @memberof Point\n */\n seriesName?: string;\n}\n\nexport class ChartingApiFunctional {\n // eslint-disable-next-line no-useless-constructor\n constructor(private chartRef: any) {}\n\n /**\n * Allows users to programmatically highlight a point on the chart\n *\n * @memberof ChartingApiFunctional\n */\n highlight({ xValue, seriesName }: Point = { xValue: '', seriesName: '' }): void {\n this.getChart().highlight(xValue, seriesName);\n }\n\n /**\n * Allows users to programmatically unhighlight all points on the chart\n *\n * @memberof ChartingApiFunctional\n */\n unHighlight(): void {\n this.getChart().unHighlight();\n }\n\n // returns chart object\n getChart(): jsCharting {\n return this.chartRef?.current;\n }\n}\n","/* eslint-disable react/no-unused-prop-types */\nimport { pick, debounce, noop } from 'lodash';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { VIZ_CATEGORICAL } from '@splunk/visualization-color-palettes';\nimport { useEffect, useRef, useContext } from 'react';\nimport * as React from 'react';\nimport * as T from 'prop-types';\nimport EventListener from 'react-event-listener';\nimport '@splunk/visualizations-shared/i18n'; // fixme, @splunk/charting should be refactor to use locale & timezone instead of i18n functions\nimport jsCharting from '@splunk/charting-bundle';\nimport TimezoneContext, { TimezoneContextInterface } from '@splunk/visualization-context/TimezoneContext';\nimport { toDimension } from '@splunk/visualizations-shared/style';\nimport styled from 'styled-components';\nimport Message from '@splunk/visualizations-shared/Message';\nimport useSplunkTheme from '@splunk/themes/useSplunkTheme';\nimport { getChartingThemeKey } from '@splunk/visualizations-shared/themeUtils';\nimport { ChartingApiFunctional } from './ChartingApi';\n\nexport const NO_INPLACE_PROPS = [\n 'chart',\n 'chart.orientation',\n 'layout.splitSeries',\n 'chart.style',\n 'legend.placement',\n];\n\nexport const changedOptions = (curOptions: Record<string, any>, nextOptions: Record<string, any>): string[] =>\n Object.keys(curOptions)\n .filter(key => !(key in nextOptions))\n .concat(\n Object.keys(nextOptions).filter(\n key => !(key in curOptions) || curOptions[key] !== nextOptions[key]\n )\n );\n\njsCharting.enableScaledEvents();\n\nfunction usePrevious(value): Record<string, any> {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n });\n return ref.current;\n}\n\nexport const canUpdateInPlace = (\n curOptions: Record<string, any>,\n nextOptions: Record<string, any>\n): boolean => {\n // if either of the options are undefined\n // it cannot update in place.\n if (!curOptions || !nextOptions) {\n return false;\n }\n return (\n !NO_INPLACE_PROPS.some(p => curOptions[p] !== nextOptions[p]) &&\n !changedOptions(curOptions, nextOptions).some(p => p.toLowerCase().endsWith('color'))\n );\n};\n\n// create 'row' payloads from 'rowContext' in the flattened format:\n// row.<fieldname>.value\nexport const updateRowPayload = (\n chartEventRowContext: Record<string, any>,\n payload: Record<string, any>\n): Record<string, any> => {\n Object.keys(chartEventRowContext || {}).forEach(key => {\n // eslint-disable-next-line no-param-reassign\n payload[`${key}.value`] = chartEventRowContext[key];\n });\n\n return payload;\n};\n\nexport interface ContainerProps {\n width: string | number;\n height: string | number;\n}\n\ntype ChartEventType = 'pointClick' | 'pointMouseOver' | 'pointMouseOut' | 'chartRangeSelect' | 'legendClick';\nenum VizChartEventType {\n POINT_CLICK = 'point.click',\n POINT_MOUSE_OUT = 'point.mouseout',\n POINT_MOUSE_OVER = 'point.mouseover',\n LEGEND_CLICK = 'legend.click',\n}\n\ninterface ChartEvent<T extends ChartEventType> extends Event {\n name: string;\n name2: string;\n value?: unknown;\n value2?: unknown;\n rowContext?: Record<string, any>;\n span?: number;\n type: T;\n}\n\n// @TODO(pwied): remove after HC upgrade to 8+\n// .highcharts-a11y-proxy-container rule addresses a HighCharts < 8 bug\n// caused by the accessibility plugin\n// https://github.com/highcharts/highcharts/issues/12883\nconst ChartingContainer = styled.div.attrs((props: ContainerProps) => ({\n 'data-test': 'charting-container',\n width: props.width,\n height: props.height,\n}))`\n & .highcharts-a11y-proxy-container {\n pointer-events: none;\n }\n overflow: hidden;\n position: relative;\n ${props => toDimension(pick(props, ['width', 'height']))};\n`;\n\nexport interface ChartingProps {\n // width in pixel or string, defaults to 100%\n width: string | number;\n // height in pixel or string\n height: string | number;\n // visualization formatting options\n options?: Record<string, any>;\n // charting dataset from jsCharting.extractChartReadyData\n chartData: Record<string, any>;\n // callbacks to trigger event\n onEventTrigger?: (...args: any[]) => void;\n onSelect?: (...args: any[]) => void;\n onClick?: (...args: any[]) => void;\n onPointMouseOver?: (...args: any[]) => void;\n onPointMouseOut?: (...args: any[]) => void;\n // Custom style on visualization\n style?: Record<string, any>;\n colorPalette?: Array<string>;\n visualizationApiRef?: (...args: any[]) => void;\n themeKey?: string;\n}\n\nconst propTypes: Record<keyof ChartingProps, T.Validator<any>> = {\n width: T.oneOfType([T.string, T.number]),\n height: T.oneOfType([T.string, T.number]),\n options: T.object,\n chartData: T.object,\n onEventTrigger: T.func,\n onClick: T.func,\n onSelect: T.func,\n onPointMouseOver: T.func,\n onPointMouseOut: T.func,\n style: T.object,\n colorPalette: T.array,\n visualizationApiRef: T.func,\n themeKey: T.string,\n};\n\nconst Charting = (props: ChartingProps): React.ReactElement => {\n const container = useRef<HTMLDivElement>(null);\n const needsInit = useRef<boolean>(true);\n const chart = useRef<jsCharting>();\n const needsRedraw = useRef<boolean>(true);\n const api = useRef(new ChartingApiFunctional(chart));\n const timezone = useContext<TimezoneContextInterface>(TimezoneContext);\n\n const computeChartingSize = () => {\n if (container.current) {\n const rect = container.current.getBoundingClientRect();\n return {\n height: rect.height,\n width: rect.width,\n };\n }\n return {};\n };\n const splunkTheme = useSplunkTheme();\n const themeKey = props.themeKey ? props.themeKey : getChartingThemeKey({ splunkThemeV1: splunkTheme });\n const {\n width,\n height,\n style,\n chartData,\n options,\n colorPalette,\n onClick,\n onSelect,\n onPointMouseOut,\n onPointMouseOver,\n onEventTrigger,\n } = props;\n const prevOptions = usePrevious(options);\n const prevTimezone = usePrevious(timezone);\n\n const handleClick = (\n chartEvent: ChartEvent<'pointClick' | 'legendClick'>,\n type: VizChartEventType\n ): void => {\n let payload: Partial<ChartEvent<'pointClick' | 'legendClick'>> = pick(\n chartEvent,\n 'name2',\n 'value2',\n '_span',\n 'modifierKey'\n );\n\n payload.name = payload.name2;\n delete payload.name2;\n\n if (type === VizChartEventType.POINT_CLICK) {\n payload.value = payload.value2;\n delete payload.value2;\n\n payload = updateRowPayload(chartEvent.rowContext, payload);\n }\n\n onClick({\n type,\n originalEvent: chartEvent,\n payload,\n });\n };\n\n const destroyChart = (): void => {\n if (chart.current) {\n chart.current.destroy();\n chart.current = null;\n }\n needsRedraw.current = true;\n needsInit.current = true;\n };\n\n const handleSelect = (chartEvent: ChartEvent<'chartRangeSelect'>): void => {\n // todo: need change this after breaking all visualizations\n if (onSelect && typeof onSelect === 'function') {\n onSelect({\n type: 'range.select',\n originalEvent: chartEvent,\n payload: pick(chartEvent, 'startXIndex', 'endXIndex', 'startXValue', 'endXValue'),\n });\n\n return;\n }\n\n // the chartEvent here is a jQuery event\n onEventTrigger({\n type: 'range.select',\n originalEvent: chartEvent,\n payload: pick(chartEvent, 'startXIndex', 'endXIndex', 'startXValue', 'endXValue'),\n });\n };\n\n const handlePointMouseOut = (chartEvent: ChartEvent<'pointMouseOut'>, type: VizChartEventType): void => {\n let payload: Partial<ChartEvent<'pointMouseOut'>> = pick(\n chartEvent,\n 'name2',\n 'value2',\n '_span',\n 'modifierKey',\n 'tooltipContext'\n );\n\n payload.name = payload.name2;\n delete payload.name2;\n payload.value = payload.value2;\n delete payload.value2;\n\n payload = updateRowPayload(chartEvent.rowContext, payload);\n\n onPointMouseOut({\n type,\n originalEvent: chartEvent,\n payload,\n });\n };\n\n const handlePointMouseOver = (\n chartEvent: ChartEvent<'pointMouseOver'>,\n type: VizChartEventType\n ): void => {\n let payload: Partial<ChartEvent<'pointMouseOver'>> = pick(\n chartEvent,\n 'name2',\n 'value2',\n '_span',\n 'modifierKey',\n 'tooltipContext'\n );\n\n payload.name = payload.name2;\n delete payload.name2;\n payload.value = payload.value2;\n delete payload.value2;\n\n payload = updateRowPayload(chartEvent.rowContext, payload);\n\n onPointMouseOver({\n type,\n originalEvent: chartEvent,\n payload,\n });\n };\n\n const drawChart = (): void => {\n const updatedOptions = { ...options, shouldColorizeTooltipData: false };\n const computedChartSize = computeChartingSize();\n const computedWidth = computedChartSize.width;\n const computedHeight = computedChartSize.height;\n const serializedTimezone = timezone?.serializedTimezone;\n const ianaTimezone = timezone?.ianaTimezone;\n const utcOffset = timezone?.utcOffset;\n if (!computedWidth || !computedHeight) {\n return;\n }\n if (!chartData || !Object.keys(chartData).length) {\n return;\n }\n\n // splunk-charting layers configuration option updates.\n // when an option is removed it needs to be set to an empty string\n // to override the previous configuration\n if (prevOptions) {\n Object.keys(prevOptions).forEach(key => {\n if (updatedOptions[key] === undefined) {\n updatedOptions[key] = '';\n }\n });\n }\n\n try {\n if (needsInit.current) {\n destroyChart();\n jsCharting.setTheme(themeKey);\n if (colorPalette.length > 0) {\n jsCharting.setColorPalette(colorPalette);\n }\n chart.current = jsCharting.createChart(container.current, {\n ...updatedOptions,\n drilldown: 'all',\n ...(typeof serializedTimezone === 'string' && {\n 'time.serializedTz': serializedTimezone,\n }),\n ...(typeof ianaTimezone === 'string' && {\n 'time.ianaTimezone': ianaTimezone,\n }),\n ...(typeof utcOffset === 'number' && {\n 'time.timezoneOffset': utcOffset,\n }),\n });\n // bind event handlers\n chart.current.on('pointClick', e => {\n handleClick(e, VizChartEventType.POINT_CLICK);\n });\n chart.current.on('pointMouseOver', e => {\n handlePointMouseOver(e, VizChartEventType.POINT_MOUSE_OVER);\n });\n chart.current.on('pointMouseOut', e => {\n handlePointMouseOut(e, VizChartEventType.POINT_MOUSE_OUT);\n });\n chart.current.on('legendClick', e => {\n handleClick(e, VizChartEventType.LEGEND_CLICK);\n });\n chart.current.on('chartRangeSelect', handleSelect);\n }\n if (needsRedraw.current) {\n jsCharting.setTheme(themeKey);\n if (colorPalette.length > 0) {\n jsCharting.setColorPalette(colorPalette);\n }\n chart.current.prepareAndDraw(chartData, updatedOptions, () => {});\n }\n if (chart.current) {\n if (\n Math.round(chart.current.height) !== Math.round(computedHeight) ||\n Math.round(chart.current.width) !== Math.round(computedWidth)\n ) {\n chart.current.resize(computedWidth, computedHeight);\n }\n }\n needsInit.current = false;\n needsRedraw.current = false;\n } catch (e) {\n window.console.error('Caught error rendering chart:', e);\n }\n };\n\n const debouncedDrawChart = debounce(drawChart, 5);\n\n const onContainerMount = chartingContainer => {\n container.current = chartingContainer;\n debouncedDrawChart();\n };\n\n const prevTheme = usePrevious(themeKey);\n const prevOnClick = usePrevious(onClick);\n\n useEffect(() => {\n debouncedDrawChart();\n props.visualizationApiRef(api.current);\n return () => {\n props.visualizationApiRef(null);\n destroyChart();\n };\n }, []);\n\n useEffect(() => {\n // TODO: figure out why re-init is needed for functional components (i.e. PlatformViz) when changing theme\n // seems like redraw doesn't suffice to update the background colors\n if (\n !chart.current ||\n !canUpdateInPlace(prevOptions, options) ||\n // timezone is a simple object so this comparison should be fast\n JSON.stringify(prevTimezone) !== JSON.stringify(timezone) ||\n (!props.themeKey && prevTheme !== themeKey) ||\n prevOnClick !== onClick\n ) {\n needsInit.current = true;\n }\n needsRedraw.current = true;\n // need to immediately call drawChart upon an option or chartData change\n // otherwise a noop would occur if the onContainerMount drawChart is re-invoked when dimensions change\n drawChart();\n }, [\n JSON.stringify(options),\n JSON.stringify(chartData.toJSON()),\n JSON.stringify(chartData.annotations),\n timezone?.ianaTimezone,\n timezone?.utcOffset,\n timezone?.serializedTimezone,\n themeKey,\n onClick,\n ]);\n return (\n <ChartingContainer style={style} ref={onContainerMount} width={width} height={height}>\n <EventListener target={window} onResize={debouncedDrawChart} />\n </ChartingContainer>\n );\n};\n\nconst defaultProps: Record<keyof ChartingProps, any> = {\n width: '100%',\n height: 250,\n options: {},\n style: {},\n // todo: need remove it\n onEventTrigger: noop,\n onClick: noop,\n onSelect: noop,\n onPointMouseOver: noop,\n onPointMouseOut: noop,\n colorPalette: VIZ_CATEGORICAL,\n visualizationApiRef: noop,\n chartData: null,\n themeKey: null,\n};\n\nCharting.propTypes = propTypes;\nCharting.defaultProps = defaultProps;\n\n// allow for early return in case of empty chartData while still following hook rules\nconst withEmptyChartMessage = (Chart): React.FunctionComponent<ChartingProps> => {\n const Wrapper = (props: ChartingProps): React.ReactElement => {\n const { chartData } = props;\n\n if (!chartData) {\n return <Message message={_('No DataSource')} level=\"warning\" />;\n }\n\n if (chartData && !Object.keys(chartData).length) {\n return <Message message={_('No Result')} level=\"info\" />;\n }\n\n return <Chart {...props} />;\n };\n\n Wrapper.displayName = 'ChartingWrapper';\n Wrapper.propTypes = propTypes;\n Wrapper.defaultProps = defaultProps;\n return Wrapper;\n};\n\n// export default Charting;\nexport default withEmptyChartMessage(Charting as any);\n","module.exports = require(\"@splunk/visualization-color-palettes\");","module.exports = require(\"react-event-listener\");","module.exports = require(\"@splunk/visualizations-shared/i18n\");","module.exports = require(\"@splunk/charting-bundle\");","module.exports = require(\"@splunk/themes/useSplunkTheme\");","module.exports = require(\"@splunk/visualizations-shared/themeUtils\");"],"sourceRoot":""}
@@ -812,7 +812,7 @@ var OptionsDoc = function OptionsDoc(_ref4) {
812
812
  }, " No Options") : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(_splunk_react_ui_Heading__WEBPACK_IMPORTED_MODULE_7___default.a, {
813
813
  level: 4
814
814
  }, "Options"), description && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", null, description), Object.entries(options).map(function (_ref5) {
815
- var _item$anyOf, _item$anyOf$, _item$anyOf2, _item$anyOf2$, _item$anyOf3, _item$anyOf3$, _enumerable;
815
+ var _item$anyOf, _item$anyOf$, _item$anyOf2, _item$anyOf2$, _item$anyOf4, _item$anyOf4$, _item$anyOf5, _item$anyOf5$, _enumerable;
816
816
  var _ref6 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0___default()(_ref5, 2),
817
817
  key = _ref6[0],
818
818
  item = _ref6[1];
@@ -823,16 +823,19 @@ var OptionsDoc = function OptionsDoc(_ref4) {
823
823
  // get oneOf property listing
824
824
  if (typeof ((_item$anyOf = item.anyOf) === null || _item$anyOf === void 0 ? void 0 : (_item$anyOf$ = _item$anyOf[0]) === null || _item$anyOf$ === void 0 ? void 0 : _item$anyOf$.pattern) === 'string') {
825
825
  enumerable = Object(_storybook_utils_storybookUtils__WEBPACK_IMPORTED_MODULE_11__["getPatternOptions"])(item.anyOf[0].pattern);
826
+ } else if ((_item$anyOf2 = item.anyOf) !== null && _item$anyOf2 !== void 0 && (_item$anyOf2$ = _item$anyOf2[0]) !== null && _item$anyOf2$ !== void 0 && _item$anyOf2$.enum) {
827
+ var _item$anyOf3, _item$anyOf3$;
828
+ enumerable = (_item$anyOf3 = item.anyOf) === null || _item$anyOf3 === void 0 ? void 0 : (_item$anyOf3$ = _item$anyOf3[0]) === null || _item$anyOf3$ === void 0 ? void 0 : _item$anyOf3$.enum;
826
829
  } else if (item.enum) {
827
830
  enumerable = item.enum;
828
831
  }
829
832
 
830
833
  // get the nested options inside {option}.items.anyof. e.g. 'layers' in Map
831
- if (((_item$anyOf2 = item.anyOf) === null || _item$anyOf2 === void 0 ? void 0 : (_item$anyOf2$ = _item$anyOf2[0]) === null || _item$anyOf2$ === void 0 ? void 0 : _item$anyOf2$.type) === 'array' && 'anyOf' in ((_item$anyOf3 = item.anyOf) === null || _item$anyOf3 === void 0 ? void 0 : (_item$anyOf3$ = _item$anyOf3[0]) === null || _item$anyOf3$ === void 0 ? void 0 : _item$anyOf3$.items)) {
832
- var _item$anyOf4, _item$anyOf4$, _item$anyOf4$$items;
834
+ if (((_item$anyOf4 = item.anyOf) === null || _item$anyOf4 === void 0 ? void 0 : (_item$anyOf4$ = _item$anyOf4[0]) === null || _item$anyOf4$ === void 0 ? void 0 : _item$anyOf4$.type) === 'array' && 'anyOf' in ((_item$anyOf5 = item.anyOf) === null || _item$anyOf5 === void 0 ? void 0 : (_item$anyOf5$ = _item$anyOf5[0]) === null || _item$anyOf5$ === void 0 ? void 0 : _item$anyOf5$.items)) {
835
+ var _item$anyOf6, _item$anyOf6$, _item$anyOf6$$items;
833
836
  type = Object(_storybook_utils_storybookUtils__WEBPACK_IMPORTED_MODULE_11__["getOptionDisplayType"])(item);
834
837
  var patternProperties = item.patternProperties; // merge the 3 objects together instead of showing the longest options in the array
835
- var option = (_item$anyOf4 = item.anyOf) === null || _item$anyOf4 === void 0 ? void 0 : (_item$anyOf4$ = _item$anyOf4[0]) === null || _item$anyOf4$ === void 0 ? void 0 : (_item$anyOf4$$items = _item$anyOf4$.items) === null || _item$anyOf4$$items === void 0 ? void 0 : _item$anyOf4$$items.anyOf;
838
+ var option = (_item$anyOf6 = item.anyOf) === null || _item$anyOf6 === void 0 ? void 0 : (_item$anyOf6$ = _item$anyOf6[0]) === null || _item$anyOf6$ === void 0 ? void 0 : (_item$anyOf6$$items = _item$anyOf6$.items) === null || _item$anyOf6$$items === void 0 ? void 0 : _item$anyOf6$$items.anyOf;
836
839
  var mergedOptions = option.reduce(function (prev, next) {
837
840
  return Object(lodash__WEBPACK_IMPORTED_MODULE_10__["merge"])(prev, next);
838
841
  }, {});
@@ -854,9 +857,9 @@ var OptionsDoc = function OptionsDoc(_ref4) {
854
857
  var _patternProperties = item.patternProperties;
855
858
  PropertiesSection = getPropertiesSection(_properties, _patternProperties);
856
859
  } else if ((_enumerable = enumerable) !== null && _enumerable !== void 0 && _enumerable.length) {
857
- var _item$anyOf5, _item$anyOf5$;
860
+ var _item$anyOf7, _item$anyOf7$;
858
861
  // use the JS types (e.g. string, number) of the property if the property is an enumerable
859
- type = (_item$anyOf5 = item.anyOf) === null || _item$anyOf5 === void 0 ? void 0 : (_item$anyOf5$ = _item$anyOf5[0]) === null || _item$anyOf5$ === void 0 ? void 0 : _item$anyOf5$.type;
862
+ type = (_item$anyOf7 = item.anyOf) === null || _item$anyOf7 === void 0 ? void 0 : (_item$anyOf7$ = _item$anyOf7[0]) === null || _item$anyOf7$ === void 0 ? void 0 : _item$anyOf7$.type;
860
863
  if (Array.isArray(type)) {
861
864
  type = type.join(' | ');
862
865
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"@babel/runtime/helpers/slicedToArray\"","webpack:///./.storybook/utils/storybookUtils.ts","webpack:///external \"@babel/runtime/helpers/typeof\"","webpack:///external \"@splunk/react-ui/Markdown\"","webpack:///external \"lodash/isEmpty\"","webpack:///external \"styled-components\"","webpack:///external \"lodash\"","webpack:///external \"@splunk/react-ui/Heading\"","webpack:///./src/common/OptionsDoc.jsx","webpack:///external \"@splunk/visualizations-shared/configUtils\"","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/helpers/defineProperty\""],"names":["lodash_1","require","configUtils_1","getPatternOptions","patternString","replace","split","slice","exports","getOptionDisplayType","option","oneOf","anyOf","type","en","enum","pattern","items","displayTypes","conditionalQuote","Array","isArray","map","e","enumQuote","concat","item","p","length","join","getOptionControl","optionKey","schema","maximum","minimum","isColorOption","RegExp","test","options","Object","assign","min","max","objectTableControl","control","disableTableControl","table","disable","platformOptionArgTypes","context","dataSources","dataSource","onEventTrigger","action","hasEventHandlers","optionsSchemaToArgTypes","_ref","_ref$options","_ref$requiredProps","requiredProps","_ref$isPlatformViz","isPlatformViz","_ref$subcategory","subcategory","validObjectTypeOptions","argTypes","keys","forEach","get","includes","properties","description","optionDefault","default","optionControl","required","defaultValue","isDynamicOption","name","optionType","summary","category","transformOptionType","value","expectedType","arguments","undefined","isStringValue","isString","toNumber","FieldsToStringify","getOptionsFromArgTypes","args","reduce","accum","val","_argTypes$option","controlledOption","JSON","parse","omit","flattenVizOptions","nonFlattenOptions","Set","_typeof","stringify","has","getStoriesToInclude","publishedStories","localStories","process","STORYBOOK_PUBLISH","componentStoriesToInclude","stories","includeStories","Option","styled","div","withConfig","displayName","componentId","OptionName","PairContainer","PairTitle","span","PairValue","PairValueJSON","PropertiesWrapper","props","isPatternProperty","PropertiesContainer","PropertiesContent","isOneOfJsonSchema","getOrType","res","one","getArrayType","isEmpty","filter","itemType","getType","values","v","getDefaultValue","toString","Pair","title","content","React","createElement","propTypes","T","string","oneOfType","arrayOf","object","PropertyItems","_ref2","_ref2$isPatternProper","propsItems","_","bool","array","OptionItem","_ref3","desc","enumerable","PropertiesSection","Markdown","style","marginLeft","text","entry","number","element","PropertiesItem","getPropertiesSection","patternProperties","allProperties","patternKey","propsInPattern","push","allPropsItems","pKey","_p$anyOf","_p$anyOf2","_p$anyOf3","_p$anyOf3$","_p$anyOf4","_p$anyOf4$","_p$anyOf4$$items","_p$anyOf4$$items$enum","_p$anyOf5","_p$anyOf5$","_p$anyOf5$$items","_p$anyOf5$$items$item","_p$anyOf5$$items$item2","_pEnumerable","pType","_objectSpread","pDefault","pEnumerable","_p$anyOf6","_p$anyOf6$","_p$anyOf7","_p$anyOf7$","key","OptionsDoc","_ref4","Heading","level","entries","_ref5","_item$anyOf","_item$anyOf$","_item$anyOf2","_item$anyOf2$","_item$anyOf3","_item$anyOf3$","_enumerable","_ref6","_slicedToArray","_item$anyOf4","_item$anyOf4$","_item$anyOf4$$items","mergedOptions","prev","next","merge","_properties","_patternProperties","_item$anyOf5","_item$anyOf5$","isRequired"],"mappings":"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","file":"OptionsDoc.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 51);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"@babel/runtime/helpers/slicedToArray\");","import { get, omit, reduce, toNumber, isString } from 'lodash';\nimport { OptionsSchema } from '../../src/common/interfaces/OptionsSchema';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\n\ninterface ArgTypeControl {\n type: string;\n options?: string[];\n min?: number;\n max?: number;\n}\n\ninterface ArgTypeEntry {\n description?: string;\n control: ArgTypeControl;\n name: string;\n defaultValue?: any;\n type: { required: boolean };\n optionType: string;\n table: {\n type: { summary: string };\n defaultValue?: { summary: any };\n category?: string;\n subcategory?: string;\n disable?: boolean;\n };\n}\n\nexport interface ArgTypes {\n [key: string]: ArgTypeEntry;\n}\n\ntype StoriesList = RegExp | string[];\n\n/**\n * Returns type options from pattern\n * @example\n * // returns ['fixed', 'absolute', 'off']\n * getPatternOptions('\\$(\\w+:)?([^$|:]+?)(\\|[|\\w]+)?\\$|^fixed$|^absolute$|^off$')\n * @example\n * // returns []\n * getPatternOptions('^>.*')\n * @param {string} patternString - visualization option type pattern\n * @return {string[]} array of type options\n */\nexport const getPatternOptions = (patternString): string[] =>\n patternString.replace(/\\$/g, '').split('|^').slice(1);\n\n/**\n * Returns Storybook display type for an option\n * @param {object} option - visualization option\n * @return {string} Storybook display type\n */\nexport const getOptionDisplayType = (option): string => {\n const { oneOf, anyOf, type, enum: en, pattern, items } = option;\n let displayTypes: string[] = [];\n\n // wrap values in quotes only if enum or pattern is string\n const conditionalQuote = type === 'string' ? '\"' : '';\n if (en && Array.isArray(en)) {\n displayTypes = en.map(e => {\n const enumQuote = typeof e === 'string' ? '\"' : '';\n return `${enumQuote}${e}${enumQuote}`;\n });\n } else if (type === 'array' && items) {\n return `${getOptionDisplayType(items)}[]`;\n } else if (anyOf && Array.isArray(anyOf)) {\n return getOptionDisplayType(anyOf[0]);\n } else if (oneOf && Array.isArray(oneOf)) {\n displayTypes = oneOf.map(item => getOptionDisplayType(item));\n } else if (Array.isArray(type)) {\n displayTypes = type;\n } else if (pattern) {\n displayTypes = getPatternOptions(pattern).map(p => `${conditionalQuote}${p}${conditionalQuote}`);\n }\n\n if (displayTypes.length > 0) {\n return `(${displayTypes.join(' | ')})`;\n }\n return type;\n};\n\n/**\n * Returns Storybook control type for an option\n * @param {object} option - visualization option\n * @param {string} optionKey - visualization option key\n * @return {ArgTypeControl} Storybook control object\n */\nexport const getOptionControl = (option, optionKey): ArgTypeControl => {\n const { anyOf } = option;\n const schema = Array.isArray(anyOf) && anyOf.length ? anyOf[0] : option;\n\n const type = Array.isArray(schema.type) ? schema.type[0] : schema.type;\n const { maximum, minimum, enum: en } = schema;\n\n const isColorOption = new RegExp(/color/, 'i').test(optionKey) && type !== 'array';\n\n if (isColorOption) {\n return { type: 'color' };\n } else if (en && Array.isArray(en)) {\n return { type: 'select', options: en };\n } else if (anyOf && type === 'string' && anyOf[0].pattern) {\n return { type: 'select', options: getPatternOptions(anyOf[0].pattern) };\n } else if (type === 'number' && (minimum || maximum)) {\n return {\n type: 'range',\n ...(typeof minimum === 'number' && { min: minimum }),\n ...(typeof maximum === 'number' && { max: maximum }),\n };\n } else if (type === 'string') {\n return { type: 'text' };\n }\n\n return { type };\n};\n\n/**\n * platform specific visualization option argTypes\n */\nconst objectTableControl = { control: { type: 'object' } };\nconst disableTableControl = { table: { disable: true } };\nexport const platformOptionArgTypes = {\n context: objectTableControl,\n dataSources: objectTableControl,\n dataSource: disableTableControl,\n options: disableTableControl,\n onEventTrigger: { action: 'eventTrigger', ...disableTableControl },\n hasEventHandlers: disableTableControl,\n};\n\n/**\n * Returns formatted Storybook argTypes for a visualization from its options schema\n * @param {OptionsSchema} options - visualization options\n * @param {string[]} requiredProps - required visualization props\n * @param {boolean} isPlatformViz - indicates if pure or platform visualization\n * @param {string} subcategory - nested property parent option name\n * @return {ArgTypes} Storybook argTypes\n */\nexport const optionsSchemaToArgTypes = ({\n options = {},\n requiredProps = [],\n isPlatformViz = false,\n subcategory = null,\n}: {\n options: OptionsSchema;\n requiredProps: string[];\n isPlatformViz?: boolean;\n subcategory?: string;\n}): ArgTypes => {\n const validObjectTypeOptions = [\n 'lineDashStylesByField',\n 'seriesColorsByField',\n 'fieldActions',\n 'highlightValuesByField',\n ];\n let argTypes: ArgTypes = {};\n Object.keys(options).forEach(optionKey => {\n const option = get(options, optionKey);\n if (option.type === 'object' && !validObjectTypeOptions.includes(optionKey)) {\n // do not support controls for patternProperties, only nested properties\n if (option.properties) {\n argTypes = {\n ...argTypes,\n ...optionsSchemaToArgTypes({\n options: option.properties as OptionsSchema,\n isPlatformViz,\n requiredProps,\n subcategory: optionKey,\n }),\n };\n }\n } else {\n const { description, default: optionDefault } = option;\n const optionControl = getOptionControl(option, optionKey);\n const control = isPlatformViz ? { type: 'text' } : optionControl;\n const required = requiredProps.includes(optionKey);\n\n let defaultValue = optionDefault;\n if (!isPlatformViz && isDynamicOption(optionDefault as string)) {\n defaultValue = null;\n }\n\n argTypes[optionKey] = {\n description,\n control,\n name: optionKey,\n defaultValue,\n type: { required },\n optionType: optionControl.type,\n table: {\n type: { summary: getOptionDisplayType(option) },\n defaultValue: { summary: defaultValue },\n ...(subcategory && {\n category: 'Nested Options',\n subcategory,\n }),\n },\n };\n }\n });\n\n if (isPlatformViz) {\n Object.assign(argTypes, platformOptionArgTypes);\n }\n return argTypes;\n};\n\n/**\n * Helper which converts string visualization options to their required type\n * @param {any} value - option values\n * @param {string} expectedType - expected option type\n * @return {any} correctly typed option value\n */\nexport const transformOptionType = (value, expectedType = 'string'): any => {\n const isStringValue = !isDynamicOption(value) && isString(value);\n if (isStringValue && expectedType === 'boolean') return value == 'true';\n else if (isStringValue && expectedType === 'number') return toNumber(value);\n return value;\n};\n\n// stringify these fields for storybook controls' support\nconst FieldsToStringify = [\n 'layers',\n 'center',\n 'eventActions',\n 'fieldActions',\n 'legendLabels',\n 'lineDashStylesByField',\n 'seriesColors',\n 'seriesColorsByField',\n 'footerFields',\n 'highlightValuesByField',\n];\n\n/**\n * Helper which returns platform visualization options from Storybook controls\n * Utilizes argTypes to determine valid and nested options\n * @param {object} args - visualization story args\n * @param {ArgTypes} argTypes - visualization argTypes\n * @return {object} visualization options\n */\nexport const getOptionsFromArgTypes = (args: Record<string, any>, argTypes: ArgTypes): Record<string, any> =>\n reduce(\n argTypes,\n (accum, val, option) => {\n const subcategory = get(val, 'table.subcategory');\n const { optionType, defaultValue } = argTypes[option];\n let controlledOption = transformOptionType(get(args, option), optionType);\n // filter options from react & json if set to default value or is undefined\n if (optionType && controlledOption != null && controlledOption !== defaultValue) {\n // parse the value if option is stringified as part of flattenVizOptions\n if (FieldsToStringify.includes(option)) {\n try {\n controlledOption = JSON.parse(controlledOption);\n } catch (e) {\n controlledOption = null;\n }\n }\n if (subcategory) {\n if (!accum[subcategory]) accum[subcategory] = {};\n accum[subcategory][option] = controlledOption;\n } else accum[option] = controlledOption;\n }\n return accum;\n },\n { ...omit(args.options, Object.keys(argTypes)) }\n );\n\n/**\n * Helper which flattens objects single depth level\n * @param {object} options - visualization options object\n * @return {object} flattened visualization options\n */\nexport const flattenVizOptions = (options: Record<string, any>): Record<string, any> => {\n const nonFlattenOptions = new Set([\n 'y2Fields',\n 'overlayFields',\n 'gaugeRanges',\n 'fieldActions',\n 'highlightValuesByField',\n ]);\n return reduce(\n options,\n (accum, val, option) => {\n if (!platformOptionArgTypes[option]) {\n if (typeof val === 'object' && FieldsToStringify.includes(option))\n accum[option] = JSON.stringify(val);\n else if (typeof val === 'object' && !nonFlattenOptions.has(option))\n accum = { ...accum, ...val };\n else accum[option] = val;\n }\n return accum;\n },\n {}\n );\n};\n/**\n * Returns value based on Storybook publishing status\n * @param {T} publishedStories - stories to include in published Storybook\n * @param {T} localStories - stories to include in local Storybook\n * @return {T} one of the two params\n */\nexport const getStoriesToInclude = <T>(publishedStories: T, localStories: T): T =>\n process.env.STORYBOOK_PUBLISH ? publishedStories : localStories;\n\n/**\n * Returns component level stories to include, defaults to innclude all stories\n * @param {StoriesList} stories - stories to include in published Storybook\n * @return {object} CSF includeStories config\n */\nexport const componentStoriesToInclude = (stories: StoriesList): object =>\n getStoriesToInclude({ includeStories: stories }, {});\n","module.exports = require(\"@babel/runtime/helpers/typeof\");","module.exports = require(\"@splunk/react-ui/Markdown\");","module.exports = require(\"lodash/isEmpty\");","module.exports = require(\"styled-components\");","module.exports = require(\"lodash\");","module.exports = require(\"@splunk/react-ui/Heading\");","import React from 'react';\nimport T from 'prop-types';\nimport isEmpty from 'lodash/isEmpty';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Heading from '@splunk/react-ui/Heading';\nimport Markdown from '@splunk/react-ui/Markdown';\nimport styled from 'styled-components';\nimport { merge } from 'lodash';\nimport { getOptionDisplayType, getPatternOptions } from '../../.storybook/utils/storybookUtils';\n\nconst Option = styled.div`\n margin-top: 20px;\n`;\nconst OptionName = styled.div`\n color: #5ca300;\n padding-bottom: 5px;\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`;\n\nconst PairValue = styled.span`\n font-family: 'Splunk Platform Mono', 'monospace';\n white-space: pre;\n`;\n\nconst PairValueJSON = styled.div`\n margin-left: 80px;\n pre {\n margin: 0;\n }\n code {\n font-size: 12px;\n font-family: 'Splunk Platform Mono', 'monospace';\n }\n`;\n\nconst PropertiesWrapper = styled.div`\n margin-left: ${props => (props.isPatternProperty ? 0 : 40)}px;\n margin-top: 20px;\n`;\n\nconst PropertiesContainer = styled.div`\n margin-left: ${props => (props.isPatternProperty ? 40 : 0)}px;\n margin-top: 10px;\n`;\n\nconst PropertiesContent = styled.div`\n margin-left: ${props => (props.isPatternProperty ? 40 : 0)}px;\n`;\n\n/**\n * @method isOneOfJsonSchema\n * @param {object} item\n * @returns {boolean}\n */\nconst isOneOfJsonSchema = item => item.oneOf && Array.isArray(item.oneOf);\n\n/**\n * get Or type as string\n * @method getOrType\n * @param {object} item\n * @param {string} res\n * @returns {string} res eg: (string | number)\n */\nconst getOrType = item => {\n let res = '';\n\n if (isOneOfJsonSchema(item)) {\n res = item.oneOf\n .map(one => {\n if (one.type !== 'array') {\n return one.type;\n }\n // eslint-disable-next-line no-use-before-define\n return getArrayType(one, '');\n })\n .join(' | ');\n } else if (Array.isArray(item.type)) {\n if (isEmpty(item.default)) {\n return item.type.join(' | ');\n }\n\n res = item.type.filter(itemType => itemType !== 'string').join(' | ');\n res += ' | ';\n res += `\"${item.default}\"`;\n }\n\n return res;\n};\n\n/**\n * get the array type as string\n * @method getArrayType\n * @param {object} item\n * @param {string} res\n * @returns {string} res eg: arrayOf(arrayOf(string | number | arrayOf(string | number)))\n */\nconst getArrayType = (item, res = '') => {\n if (item.type !== 'array') {\n if (Array.isArray(item.type) || isOneOfJsonSchema(item)) {\n return getOrType(item);\n }\n\n return item.type;\n }\n\n if (item.type === 'array') {\n res += 'arrayOf('; // eslint-disable-line no-param-reassign\n }\n res += getArrayType(item.items, ''); // eslint-disable-line no-param-reassign\n res += ')'; // eslint-disable-line no-param-reassign\n return res;\n};\n\n/**\n * get the type of this option item\n * @method getType\n * @param {ojbect} item option item\n * @returns {string} type\n */\nexport const getType = item => {\n if (isOneOfJsonSchema(item)) {\n return `oneOf(${getOrType(item)})`;\n }\n if (item.enum && Array.isArray(item.enum)) {\n const values =\n !isEmpty(item.enum) && typeof item.enum[0] === 'string'\n ? item.enum.map(v => `\"${v}\"`).join(', ')\n : item.enum.join(', ');\n\n return `oneOf([${values}])`;\n }\n\n if (Array.isArray(item.type)) {\n return getOrType(item);\n }\n\n if (item.type === 'array') {\n if ('items' in item) {\n return `arrayOf(${getType(item.items)})`;\n }\n return 'array';\n }\n return item.type;\n};\n\n/**\n * get the default value as string\n * @method getDefaultValue\n * @param {object | boolean | number | string} defaultValue\n * @returns {string | object[]} default value\n */\nconst getDefaultValue = defaultValue => {\n if (typeof defaultValue === 'boolean' || typeof defaultValue === 'number') {\n return defaultValue.toString();\n }\n if (Array.isArray(defaultValue)) {\n if (defaultValue.length > 1 && typeof defaultValue[0] === 'object') {\n // return the array only if the defaultValue is an object array\n return defaultValue;\n }\n const values = defaultValue.map(v => JSON.stringify(v)).join(', ');\n return `[${values}]`;\n }\n return defaultValue;\n};\n\nconst Pair = ({ title, content }) => (\n <PairContainer>\n <PairTitle>{`${title}:`}</PairTitle>\n {Array.isArray(content) ? (\n <PairValueJSON>\n <pre>\n <code>{JSON.stringify(content, null, 2)}</code>\n </pre>\n </PairValueJSON>\n ) : (\n <PairValue>{content}</PairValue>\n )}\n </PairContainer>\n);\n\nPair.propTypes = {\n title: T.string,\n content: T.oneOfType([T.string, T.arrayOf(T.object)]),\n};\n\nconst PropertyItems = ({ isPatternProperty = false, propsItems }) => (\n <PropertiesContainer isPatternProperty={isPatternProperty}>\n {isPatternProperty ? <PairTitle>{_('[fieldName]:')}</PairTitle> : null}\n <PropertiesContent isPatternProperty={isPatternProperty}>{propsItems}</PropertiesContent>\n </PropertiesContainer>\n);\n\nPropertyItems.propTypes = {\n isPatternProperty: T.bool,\n propsItems: T.array,\n};\n\nconst OptionItem = ({ name, type, desc, defaultValue, enumerable, PropertiesSection }) => (\n <Option>\n <OptionName>{name}</OptionName>\n {desc ? <Markdown style={{ marginLeft: 40 }} text={desc} /> : null}\n <Pair title={_('Type')} content={type} />\n {enumerable?.length > 0 && (\n <Pair\n title={_('oneOf')}\n content={`(${enumerable\n .map(\n entry =>\n `${typeof entry === 'string' ? '\"' : ''}${entry}${\n typeof entry === 'string' ? '\"' : ''\n }`\n )\n .join(' | ')})`}\n />\n )}\n {defaultValue && <Pair title={_('Default')} content={defaultValue} />}\n {PropertiesSection}\n </Option>\n);\n\nOptionItem.propTypes = {\n name: T.string,\n type: T.string,\n desc: T.string,\n enumerable: T.arrayOf(T.oneOfType([T.string, T.number])),\n defaultValue: T.oneOfType([T.string, T.arrayOf(T.object)]),\n PropertiesSection: T.element,\n};\n\nOptionItem.default = {\n PropertiesItem: null,\n};\n\nconst getPropertiesSection = (properties, patternProperties) => {\n let allProperties = [];\n let isPatternProperty = false;\n\n // the properties either comes from property field of the option schema item\n // or from the property field of each patternProperties of the option schema item\n // can check table tableFormat and columnFormat as examples\n if (!isEmpty(properties)) {\n allProperties = [properties];\n } else if (!isEmpty(patternProperties)) {\n Object.keys(patternProperties).forEach(patternKey => {\n const propsInPattern = patternProperties[patternKey].properties;\n if (propsInPattern) {\n allProperties.push(propsInPattern);\n }\n });\n\n isPatternProperty = true;\n }\n\n if (allProperties.length) {\n const allPropsItems = allProperties.map(props => {\n const propsItems = Object.keys(props).map(pKey => {\n const p = props[pKey];\n let pType = p.anyOf?.[0]\n ? getOptionDisplayType({ ...p.anyOf?.[0], enum: p.enum })\n : getOptionDisplayType({ ...p, enum: p.enum });\n const pDefault = getDefaultValue(p.default);\n\n let pEnumerable;\n // get nested oneOf property listing\n if (typeof p.anyOf?.[0]?.pattern === 'string') {\n pEnumerable = getPatternOptions(p.anyOf[0].pattern);\n } else if (p.anyOf?.[0]?.items?.enum?.length > 0) {\n // quick fix for nested `columnFormat` enumerables that replaces enums within brackets with raw JS types\n pType = pType.replace(/\\((.+?)\\)/g, 'string');\n pEnumerable = p.anyOf[0].items.enum;\n } else if (p.anyOf?.[0]?.items?.items?.enum?.length > 0) {\n // quick fix for nested `tableFormat` enumerables that replaces enums within brackets with raw JS types\n pType = pType.replace(/\\((.+?)\\)/g, 'string');\n pEnumerable = p.anyOf[0].items.items.enum;\n } else if (p.enum) {\n pEnumerable = p.enum;\n }\n\n // use the JS types (e.g. string, number) of the nested property if the nested property is an enumerable\n if (pEnumerable?.length) {\n pType = p.anyOf?.[0]?.type !== 'array' ? p.anyOf?.[0]?.type : pType;\n if (Array.isArray(pType)) {\n pType = pType.join(' | ');\n }\n }\n\n return (\n <OptionItem\n key={pKey}\n name={pKey}\n type={pType}\n enumerable={pEnumerable}\n desc={p.description}\n defaultValue={pDefault}\n />\n );\n });\n return (\n <PropertyItems\n key={propsItems}\n isPatternProperty={isPatternProperty}\n propsItems={propsItems}\n />\n );\n });\n\n return <PropertiesWrapper isPatternProperty={isPatternProperty}>{allPropsItems}</PropertiesWrapper>;\n }\n return null;\n};\n\nconst OptionsDoc = ({ options, description }) => (\n <div>\n {options.length === 0 ? (\n <Heading level={4}> No Options</Heading>\n ) : (\n <Heading level={4}>Options</Heading>\n )}\n {description && <div>{description}</div>}\n {Object.entries(options).map(([key, item]) => {\n let type;\n let enumerable = [];\n let PropertiesSection = null;\n\n // get oneOf property listing\n if (typeof item.anyOf?.[0]?.pattern === 'string') {\n enumerable = getPatternOptions(item.anyOf[0].pattern);\n } else if (item.enum) {\n enumerable = item.enum;\n }\n\n // get the nested options inside {option}.items.anyof. e.g. 'layers' in Map\n if (item.anyOf?.[0]?.type === 'array' && 'anyOf' in item.anyOf?.[0]?.items) {\n type = getOptionDisplayType(item);\n const { patternProperties } = item;\n // merge the 3 objects together instead of showing the longest options in the array\n const option = item.anyOf?.[0]?.items?.anyOf;\n const mergedOptions = option.reduce((prev, next) => merge(prev, next), {});\n const { properties } = mergedOptions;\n PropertiesSection = getPropertiesSection(properties, patternProperties);\n return (\n <OptionItem\n key={key}\n name={key}\n type={type}\n enumerable={enumerable}\n desc={item.description}\n PropertiesSection={PropertiesSection}\n />\n );\n }\n\n if (item.type === 'object') {\n // get properties for object type\n type = item.type;\n const { properties } = item;\n const { patternProperties } = item;\n PropertiesSection = getPropertiesSection(properties, patternProperties);\n } else if (enumerable?.length) {\n // use the JS types (e.g. string, number) of the property if the property is an enumerable\n type = item.anyOf?.[0]?.type;\n if (Array.isArray(type)) {\n type = type.join(' | ');\n }\n } else {\n type = getOptionDisplayType({ ...item.anyOf[0], enum: item.enum });\n }\n\n return (\n <OptionItem\n key={key}\n name={key}\n // item.anyOf in the config.ts is a tuple which holds [{ type, pattern, items }, { type, pattern: DYNAMIC_OPTIONS_PATTERN }]\n type={type}\n enumerable={enumerable}\n desc={item.description}\n defaultValue={getDefaultValue(item.default)}\n PropertiesSection={PropertiesSection}\n />\n );\n })}\n </div>\n);\n\nOptionsDoc.propTypes = {\n options: T.object.isRequired,\n description: T.string,\n};\n\nexport default OptionsDoc;\n","module.exports = require(\"@splunk/visualizations-shared/configUtils\");","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"react\"","webpack:///external \"prop-types\"","webpack:///external \"@babel/runtime/helpers/slicedToArray\"","webpack:///./.storybook/utils/storybookUtils.ts","webpack:///external \"@babel/runtime/helpers/typeof\"","webpack:///external \"@splunk/react-ui/Markdown\"","webpack:///external \"lodash/isEmpty\"","webpack:///external \"styled-components\"","webpack:///external \"lodash\"","webpack:///external \"@splunk/react-ui/Heading\"","webpack:///./src/common/OptionsDoc.jsx","webpack:///external \"@splunk/visualizations-shared/configUtils\"","webpack:///external \"@splunk/ui-utils/i18n\"","webpack:///external \"@babel/runtime/helpers/defineProperty\""],"names":["lodash_1","require","configUtils_1","getPatternOptions","patternString","replace","split","slice","exports","getOptionDisplayType","option","oneOf","anyOf","type","en","enum","pattern","items","displayTypes","conditionalQuote","Array","isArray","map","e","enumQuote","concat","item","p","length","join","getOptionControl","optionKey","schema","maximum","minimum","isColorOption","RegExp","test","options","Object","assign","min","max","objectTableControl","control","disableTableControl","table","disable","platformOptionArgTypes","context","dataSources","dataSource","onEventTrigger","action","hasEventHandlers","optionsSchemaToArgTypes","_ref","_ref$options","_ref$requiredProps","requiredProps","_ref$isPlatformViz","isPlatformViz","_ref$subcategory","subcategory","validObjectTypeOptions","argTypes","keys","forEach","get","includes","properties","description","optionDefault","default","optionControl","required","defaultValue","isDynamicOption","name","optionType","summary","category","transformOptionType","value","expectedType","arguments","undefined","isStringValue","isString","toNumber","FieldsToStringify","getOptionsFromArgTypes","args","reduce","accum","val","_argTypes$option","controlledOption","JSON","parse","omit","flattenVizOptions","nonFlattenOptions","Set","_typeof","stringify","has","getStoriesToInclude","publishedStories","localStories","process","STORYBOOK_PUBLISH","componentStoriesToInclude","stories","includeStories","Option","styled","div","withConfig","displayName","componentId","OptionName","PairContainer","PairTitle","span","PairValue","PairValueJSON","PropertiesWrapper","props","isPatternProperty","PropertiesContainer","PropertiesContent","isOneOfJsonSchema","getOrType","res","one","getArrayType","isEmpty","filter","itemType","getType","values","v","getDefaultValue","toString","Pair","title","content","React","createElement","propTypes","T","string","oneOfType","arrayOf","object","PropertyItems","_ref2","_ref2$isPatternProper","propsItems","_","bool","array","OptionItem","_ref3","desc","enumerable","PropertiesSection","Markdown","style","marginLeft","text","entry","number","element","PropertiesItem","getPropertiesSection","patternProperties","allProperties","patternKey","propsInPattern","push","allPropsItems","pKey","_p$anyOf","_p$anyOf2","_p$anyOf3","_p$anyOf3$","_p$anyOf4","_p$anyOf4$","_p$anyOf4$$items","_p$anyOf4$$items$enum","_p$anyOf5","_p$anyOf5$","_p$anyOf5$$items","_p$anyOf5$$items$item","_p$anyOf5$$items$item2","_pEnumerable","pType","_objectSpread","pDefault","pEnumerable","_p$anyOf6","_p$anyOf6$","_p$anyOf7","_p$anyOf7$","key","OptionsDoc","_ref4","Heading","level","entries","_ref5","_item$anyOf","_item$anyOf$","_item$anyOf2","_item$anyOf2$","_item$anyOf4","_item$anyOf4$","_item$anyOf5","_item$anyOf5$","_enumerable","_ref6","_slicedToArray","_item$anyOf3","_item$anyOf3$","_item$anyOf6","_item$anyOf6$","_item$anyOf6$$items","mergedOptions","prev","next","merge","_properties","_patternProperties","_item$anyOf7","_item$anyOf7$","isRequired"],"mappings":"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","file":"OptionsDoc.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 51);\n","module.exports = require(\"react\");","module.exports = require(\"prop-types\");","module.exports = require(\"@babel/runtime/helpers/slicedToArray\");","import { get, omit, reduce, toNumber, isString } from 'lodash';\nimport { OptionsSchema } from '../../src/common/interfaces/OptionsSchema';\nimport { isDynamicOption } from '@splunk/visualizations-shared/configUtils';\n\ninterface ArgTypeControl {\n type: string;\n options?: string[];\n min?: number;\n max?: number;\n}\n\ninterface ArgTypeEntry {\n description?: string;\n control: ArgTypeControl;\n name: string;\n defaultValue?: any;\n type: { required: boolean };\n optionType: string;\n table: {\n type: { summary: string };\n defaultValue?: { summary: any };\n category?: string;\n subcategory?: string;\n disable?: boolean;\n };\n}\n\nexport interface ArgTypes {\n [key: string]: ArgTypeEntry;\n}\n\ntype StoriesList = RegExp | string[];\n\n/**\n * Returns type options from pattern\n * @example\n * // returns ['fixed', 'absolute', 'off']\n * getPatternOptions('\\$(\\w+:)?([^$|:]+?)(\\|[|\\w]+)?\\$|^fixed$|^absolute$|^off$')\n * @example\n * // returns []\n * getPatternOptions('^>.*')\n * @param {string} patternString - visualization option type pattern\n * @return {string[]} array of type options\n */\nexport const getPatternOptions = (patternString): string[] =>\n patternString.replace(/\\$/g, '').split('|^').slice(1);\n\n/**\n * Returns Storybook display type for an option\n * @param {object} option - visualization option\n * @return {string} Storybook display type\n */\nexport const getOptionDisplayType = (option): string => {\n const { oneOf, anyOf, type, enum: en, pattern, items } = option;\n let displayTypes: string[] = [];\n\n // wrap values in quotes only if enum or pattern is string\n const conditionalQuote = type === 'string' ? '\"' : '';\n if (en && Array.isArray(en)) {\n displayTypes = en.map(e => {\n const enumQuote = typeof e === 'string' ? '\"' : '';\n return `${enumQuote}${e}${enumQuote}`;\n });\n } else if (type === 'array' && items) {\n return `${getOptionDisplayType(items)}[]`;\n } else if (anyOf && Array.isArray(anyOf)) {\n return getOptionDisplayType(anyOf[0]);\n } else if (oneOf && Array.isArray(oneOf)) {\n displayTypes = oneOf.map(item => getOptionDisplayType(item));\n } else if (Array.isArray(type)) {\n displayTypes = type;\n } else if (pattern) {\n displayTypes = getPatternOptions(pattern).map(p => `${conditionalQuote}${p}${conditionalQuote}`);\n }\n\n if (displayTypes.length > 0) {\n return `(${displayTypes.join(' | ')})`;\n }\n return type;\n};\n\n/**\n * Returns Storybook control type for an option\n * @param {object} option - visualization option\n * @param {string} optionKey - visualization option key\n * @return {ArgTypeControl} Storybook control object\n */\nexport const getOptionControl = (option, optionKey): ArgTypeControl => {\n const { anyOf } = option;\n const schema = Array.isArray(anyOf) && anyOf.length ? anyOf[0] : option;\n\n const type = Array.isArray(schema.type) ? schema.type[0] : schema.type;\n const { maximum, minimum, enum: en } = schema;\n\n const isColorOption = new RegExp(/color/, 'i').test(optionKey) && type !== 'array';\n\n if (isColorOption) {\n return { type: 'color' };\n } else if (en && Array.isArray(en)) {\n return { type: 'select', options: en };\n } else if (anyOf && type === 'string' && anyOf[0].pattern) {\n return { type: 'select', options: getPatternOptions(anyOf[0].pattern) };\n } else if (type === 'number' && (minimum || maximum)) {\n return {\n type: 'range',\n ...(typeof minimum === 'number' && { min: minimum }),\n ...(typeof maximum === 'number' && { max: maximum }),\n };\n } else if (type === 'string') {\n return { type: 'text' };\n }\n\n return { type };\n};\n\n/**\n * platform specific visualization option argTypes\n */\nconst objectTableControl = { control: { type: 'object' } };\nconst disableTableControl = { table: { disable: true } };\nexport const platformOptionArgTypes = {\n context: objectTableControl,\n dataSources: objectTableControl,\n dataSource: disableTableControl,\n options: disableTableControl,\n onEventTrigger: { action: 'eventTrigger', ...disableTableControl },\n hasEventHandlers: disableTableControl,\n};\n\n/**\n * Returns formatted Storybook argTypes for a visualization from its options schema\n * @param {OptionsSchema} options - visualization options\n * @param {string[]} requiredProps - required visualization props\n * @param {boolean} isPlatformViz - indicates if pure or platform visualization\n * @param {string} subcategory - nested property parent option name\n * @return {ArgTypes} Storybook argTypes\n */\nexport const optionsSchemaToArgTypes = ({\n options = {},\n requiredProps = [],\n isPlatformViz = false,\n subcategory = null,\n}: {\n options: OptionsSchema;\n requiredProps: string[];\n isPlatformViz?: boolean;\n subcategory?: string;\n}): ArgTypes => {\n const validObjectTypeOptions = [\n 'lineDashStylesByField',\n 'seriesColorsByField',\n 'fieldActions',\n 'highlightValuesByField',\n ];\n let argTypes: ArgTypes = {};\n Object.keys(options).forEach(optionKey => {\n const option = get(options, optionKey);\n if (option.type === 'object' && !validObjectTypeOptions.includes(optionKey)) {\n // do not support controls for patternProperties, only nested properties\n if (option.properties) {\n argTypes = {\n ...argTypes,\n ...optionsSchemaToArgTypes({\n options: option.properties as OptionsSchema,\n isPlatformViz,\n requiredProps,\n subcategory: optionKey,\n }),\n };\n }\n } else {\n const { description, default: optionDefault } = option;\n const optionControl = getOptionControl(option, optionKey);\n const control = isPlatformViz ? { type: 'text' } : optionControl;\n const required = requiredProps.includes(optionKey);\n\n let defaultValue = optionDefault;\n if (!isPlatformViz && isDynamicOption(optionDefault as string)) {\n defaultValue = null;\n }\n\n argTypes[optionKey] = {\n description,\n control,\n name: optionKey,\n defaultValue,\n type: { required },\n optionType: optionControl.type,\n table: {\n type: { summary: getOptionDisplayType(option) },\n defaultValue: { summary: defaultValue },\n ...(subcategory && {\n category: 'Nested Options',\n subcategory,\n }),\n },\n };\n }\n });\n\n if (isPlatformViz) {\n Object.assign(argTypes, platformOptionArgTypes);\n }\n return argTypes;\n};\n\n/**\n * Helper which converts string visualization options to their required type\n * @param {any} value - option values\n * @param {string} expectedType - expected option type\n * @return {any} correctly typed option value\n */\nexport const transformOptionType = (value, expectedType = 'string'): any => {\n const isStringValue = !isDynamicOption(value) && isString(value);\n if (isStringValue && expectedType === 'boolean') return value == 'true';\n else if (isStringValue && expectedType === 'number') return toNumber(value);\n return value;\n};\n\n// stringify these fields for storybook controls' support\nconst FieldsToStringify = [\n 'layers',\n 'center',\n 'eventActions',\n 'fieldActions',\n 'legendLabels',\n 'lineDashStylesByField',\n 'seriesColors',\n 'seriesColorsByField',\n 'footerFields',\n 'highlightValuesByField',\n];\n\n/**\n * Helper which returns platform visualization options from Storybook controls\n * Utilizes argTypes to determine valid and nested options\n * @param {object} args - visualization story args\n * @param {ArgTypes} argTypes - visualization argTypes\n * @return {object} visualization options\n */\nexport const getOptionsFromArgTypes = (args: Record<string, any>, argTypes: ArgTypes): Record<string, any> =>\n reduce(\n argTypes,\n (accum, val, option) => {\n const subcategory = get(val, 'table.subcategory');\n const { optionType, defaultValue } = argTypes[option];\n let controlledOption = transformOptionType(get(args, option), optionType);\n // filter options from react & json if set to default value or is undefined\n if (optionType && controlledOption != null && controlledOption !== defaultValue) {\n // parse the value if option is stringified as part of flattenVizOptions\n if (FieldsToStringify.includes(option)) {\n try {\n controlledOption = JSON.parse(controlledOption);\n } catch (e) {\n controlledOption = null;\n }\n }\n if (subcategory) {\n if (!accum[subcategory]) accum[subcategory] = {};\n accum[subcategory][option] = controlledOption;\n } else accum[option] = controlledOption;\n }\n return accum;\n },\n { ...omit(args.options, Object.keys(argTypes)) }\n );\n\n/**\n * Helper which flattens objects single depth level\n * @param {object} options - visualization options object\n * @return {object} flattened visualization options\n */\nexport const flattenVizOptions = (options: Record<string, any>): Record<string, any> => {\n const nonFlattenOptions = new Set([\n 'y2Fields',\n 'overlayFields',\n 'gaugeRanges',\n 'fieldActions',\n 'highlightValuesByField',\n ]);\n return reduce(\n options,\n (accum, val, option) => {\n if (!platformOptionArgTypes[option]) {\n if (typeof val === 'object' && FieldsToStringify.includes(option))\n accum[option] = JSON.stringify(val);\n else if (typeof val === 'object' && !nonFlattenOptions.has(option))\n accum = { ...accum, ...val };\n else accum[option] = val;\n }\n return accum;\n },\n {}\n );\n};\n/**\n * Returns value based on Storybook publishing status\n * @param {T} publishedStories - stories to include in published Storybook\n * @param {T} localStories - stories to include in local Storybook\n * @return {T} one of the two params\n */\nexport const getStoriesToInclude = <T>(publishedStories: T, localStories: T): T =>\n process.env.STORYBOOK_PUBLISH ? publishedStories : localStories;\n\n/**\n * Returns component level stories to include, defaults to innclude all stories\n * @param {StoriesList} stories - stories to include in published Storybook\n * @return {object} CSF includeStories config\n */\nexport const componentStoriesToInclude = (stories: StoriesList): object =>\n getStoriesToInclude({ includeStories: stories }, {});\n","module.exports = require(\"@babel/runtime/helpers/typeof\");","module.exports = require(\"@splunk/react-ui/Markdown\");","module.exports = require(\"lodash/isEmpty\");","module.exports = require(\"styled-components\");","module.exports = require(\"lodash\");","module.exports = require(\"@splunk/react-ui/Heading\");","import React from 'react';\nimport T from 'prop-types';\nimport isEmpty from 'lodash/isEmpty';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Heading from '@splunk/react-ui/Heading';\nimport Markdown from '@splunk/react-ui/Markdown';\nimport styled from 'styled-components';\nimport { merge } from 'lodash';\nimport { getOptionDisplayType, getPatternOptions } from '../../.storybook/utils/storybookUtils';\n\nconst Option = styled.div`\n margin-top: 20px;\n`;\nconst OptionName = styled.div`\n color: #5ca300;\n padding-bottom: 5px;\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`;\n\nconst PairValue = styled.span`\n font-family: 'Splunk Platform Mono', 'monospace';\n white-space: pre;\n`;\n\nconst PairValueJSON = styled.div`\n margin-left: 80px;\n pre {\n margin: 0;\n }\n code {\n font-size: 12px;\n font-family: 'Splunk Platform Mono', 'monospace';\n }\n`;\n\nconst PropertiesWrapper = styled.div`\n margin-left: ${props => (props.isPatternProperty ? 0 : 40)}px;\n margin-top: 20px;\n`;\n\nconst PropertiesContainer = styled.div`\n margin-left: ${props => (props.isPatternProperty ? 40 : 0)}px;\n margin-top: 10px;\n`;\n\nconst PropertiesContent = styled.div`\n margin-left: ${props => (props.isPatternProperty ? 40 : 0)}px;\n`;\n\n/**\n * @method isOneOfJsonSchema\n * @param {object} item\n * @returns {boolean}\n */\nconst isOneOfJsonSchema = item => item.oneOf && Array.isArray(item.oneOf);\n\n/**\n * get Or type as string\n * @method getOrType\n * @param {object} item\n * @param {string} res\n * @returns {string} res eg: (string | number)\n */\nconst getOrType = item => {\n let res = '';\n\n if (isOneOfJsonSchema(item)) {\n res = item.oneOf\n .map(one => {\n if (one.type !== 'array') {\n return one.type;\n }\n // eslint-disable-next-line no-use-before-define\n return getArrayType(one, '');\n })\n .join(' | ');\n } else if (Array.isArray(item.type)) {\n if (isEmpty(item.default)) {\n return item.type.join(' | ');\n }\n\n res = item.type.filter(itemType => itemType !== 'string').join(' | ');\n res += ' | ';\n res += `\"${item.default}\"`;\n }\n\n return res;\n};\n\n/**\n * get the array type as string\n * @method getArrayType\n * @param {object} item\n * @param {string} res\n * @returns {string} res eg: arrayOf(arrayOf(string | number | arrayOf(string | number)))\n */\nconst getArrayType = (item, res = '') => {\n if (item.type !== 'array') {\n if (Array.isArray(item.type) || isOneOfJsonSchema(item)) {\n return getOrType(item);\n }\n\n return item.type;\n }\n\n if (item.type === 'array') {\n res += 'arrayOf('; // eslint-disable-line no-param-reassign\n }\n res += getArrayType(item.items, ''); // eslint-disable-line no-param-reassign\n res += ')'; // eslint-disable-line no-param-reassign\n return res;\n};\n\n/**\n * get the type of this option item\n * @method getType\n * @param {ojbect} item option item\n * @returns {string} type\n */\nexport const getType = item => {\n if (isOneOfJsonSchema(item)) {\n return `oneOf(${getOrType(item)})`;\n }\n if (item.enum && Array.isArray(item.enum)) {\n const values =\n !isEmpty(item.enum) && typeof item.enum[0] === 'string'\n ? item.enum.map(v => `\"${v}\"`).join(', ')\n : item.enum.join(', ');\n\n return `oneOf([${values}])`;\n }\n\n if (Array.isArray(item.type)) {\n return getOrType(item);\n }\n\n if (item.type === 'array') {\n if ('items' in item) {\n return `arrayOf(${getType(item.items)})`;\n }\n return 'array';\n }\n return item.type;\n};\n\n/**\n * get the default value as string\n * @method getDefaultValue\n * @param {object | boolean | number | string} defaultValue\n * @returns {string | object[]} default value\n */\nconst getDefaultValue = defaultValue => {\n if (typeof defaultValue === 'boolean' || typeof defaultValue === 'number') {\n return defaultValue.toString();\n }\n if (Array.isArray(defaultValue)) {\n if (defaultValue.length > 1 && typeof defaultValue[0] === 'object') {\n // return the array only if the defaultValue is an object array\n return defaultValue;\n }\n const values = defaultValue.map(v => JSON.stringify(v)).join(', ');\n return `[${values}]`;\n }\n return defaultValue;\n};\n\nconst Pair = ({ title, content }) => (\n <PairContainer>\n <PairTitle>{`${title}:`}</PairTitle>\n {Array.isArray(content) ? (\n <PairValueJSON>\n <pre>\n <code>{JSON.stringify(content, null, 2)}</code>\n </pre>\n </PairValueJSON>\n ) : (\n <PairValue>{content}</PairValue>\n )}\n </PairContainer>\n);\n\nPair.propTypes = {\n title: T.string,\n content: T.oneOfType([T.string, T.arrayOf(T.object)]),\n};\n\nconst PropertyItems = ({ isPatternProperty = false, propsItems }) => (\n <PropertiesContainer isPatternProperty={isPatternProperty}>\n {isPatternProperty ? <PairTitle>{_('[fieldName]:')}</PairTitle> : null}\n <PropertiesContent isPatternProperty={isPatternProperty}>{propsItems}</PropertiesContent>\n </PropertiesContainer>\n);\n\nPropertyItems.propTypes = {\n isPatternProperty: T.bool,\n propsItems: T.array,\n};\n\nconst OptionItem = ({ name, type, desc, defaultValue, enumerable, PropertiesSection }) => (\n <Option>\n <OptionName>{name}</OptionName>\n {desc ? <Markdown style={{ marginLeft: 40 }} text={desc} /> : null}\n <Pair title={_('Type')} content={type} />\n {enumerable?.length > 0 && (\n <Pair\n title={_('oneOf')}\n content={`(${enumerable\n .map(\n entry =>\n `${typeof entry === 'string' ? '\"' : ''}${entry}${\n typeof entry === 'string' ? '\"' : ''\n }`\n )\n .join(' | ')})`}\n />\n )}\n {defaultValue && <Pair title={_('Default')} content={defaultValue} />}\n {PropertiesSection}\n </Option>\n);\n\nOptionItem.propTypes = {\n name: T.string,\n type: T.string,\n desc: T.string,\n enumerable: T.arrayOf(T.oneOfType([T.string, T.number])),\n defaultValue: T.oneOfType([T.string, T.arrayOf(T.object)]),\n PropertiesSection: T.element,\n};\n\nOptionItem.default = {\n PropertiesItem: null,\n};\n\nconst getPropertiesSection = (properties, patternProperties) => {\n let allProperties = [];\n let isPatternProperty = false;\n\n // the properties either comes from property field of the option schema item\n // or from the property field of each patternProperties of the option schema item\n // can check table tableFormat and columnFormat as examples\n if (!isEmpty(properties)) {\n allProperties = [properties];\n } else if (!isEmpty(patternProperties)) {\n Object.keys(patternProperties).forEach(patternKey => {\n const propsInPattern = patternProperties[patternKey].properties;\n if (propsInPattern) {\n allProperties.push(propsInPattern);\n }\n });\n\n isPatternProperty = true;\n }\n\n if (allProperties.length) {\n const allPropsItems = allProperties.map(props => {\n const propsItems = Object.keys(props).map(pKey => {\n const p = props[pKey];\n let pType = p.anyOf?.[0]\n ? getOptionDisplayType({ ...p.anyOf?.[0], enum: p.enum })\n : getOptionDisplayType({ ...p, enum: p.enum });\n const pDefault = getDefaultValue(p.default);\n\n let pEnumerable;\n // get nested oneOf property listing\n if (typeof p.anyOf?.[0]?.pattern === 'string') {\n pEnumerable = getPatternOptions(p.anyOf[0].pattern);\n } else if (p.anyOf?.[0]?.items?.enum?.length > 0) {\n // quick fix for nested `columnFormat` enumerables that replaces enums within brackets with raw JS types\n pType = pType.replace(/\\((.+?)\\)/g, 'string');\n pEnumerable = p.anyOf[0].items.enum;\n } else if (p.anyOf?.[0]?.items?.items?.enum?.length > 0) {\n // quick fix for nested `tableFormat` enumerables that replaces enums within brackets with raw JS types\n pType = pType.replace(/\\((.+?)\\)/g, 'string');\n pEnumerable = p.anyOf[0].items.items.enum;\n } else if (p.enum) {\n pEnumerable = p.enum;\n }\n\n // use the JS types (e.g. string, number) of the nested property if the nested property is an enumerable\n if (pEnumerable?.length) {\n pType = p.anyOf?.[0]?.type !== 'array' ? p.anyOf?.[0]?.type : pType;\n if (Array.isArray(pType)) {\n pType = pType.join(' | ');\n }\n }\n\n return (\n <OptionItem\n key={pKey}\n name={pKey}\n type={pType}\n enumerable={pEnumerable}\n desc={p.description}\n defaultValue={pDefault}\n />\n );\n });\n return (\n <PropertyItems\n key={propsItems}\n isPatternProperty={isPatternProperty}\n propsItems={propsItems}\n />\n );\n });\n\n return <PropertiesWrapper isPatternProperty={isPatternProperty}>{allPropsItems}</PropertiesWrapper>;\n }\n return null;\n};\n\nconst OptionsDoc = ({ options, description }) => (\n <div>\n {options.length === 0 ? (\n <Heading level={4}> No Options</Heading>\n ) : (\n <Heading level={4}>Options</Heading>\n )}\n {description && <div>{description}</div>}\n {Object.entries(options).map(([key, item]) => {\n let type;\n let enumerable = [];\n let PropertiesSection = null;\n\n // get oneOf property listing\n if (typeof item.anyOf?.[0]?.pattern === 'string') {\n enumerable = getPatternOptions(item.anyOf[0].pattern);\n } else if (item.anyOf?.[0]?.enum) {\n enumerable = item.anyOf?.[0]?.enum;\n } else if (item.enum) {\n enumerable = item.enum;\n }\n\n // get the nested options inside {option}.items.anyof. e.g. 'layers' in Map\n if (item.anyOf?.[0]?.type === 'array' && 'anyOf' in item.anyOf?.[0]?.items) {\n type = getOptionDisplayType(item);\n const { patternProperties } = item;\n // merge the 3 objects together instead of showing the longest options in the array\n const option = item.anyOf?.[0]?.items?.anyOf;\n const mergedOptions = option.reduce((prev, next) => merge(prev, next), {});\n const { properties } = mergedOptions;\n PropertiesSection = getPropertiesSection(properties, patternProperties);\n return (\n <OptionItem\n key={key}\n name={key}\n type={type}\n enumerable={enumerable}\n desc={item.description}\n PropertiesSection={PropertiesSection}\n />\n );\n }\n\n if (item.type === 'object') {\n // get properties for object type\n type = item.type;\n const { properties } = item;\n const { patternProperties } = item;\n PropertiesSection = getPropertiesSection(properties, patternProperties);\n } else if (enumerable?.length) {\n // use the JS types (e.g. string, number) of the property if the property is an enumerable\n type = item.anyOf?.[0]?.type;\n if (Array.isArray(type)) {\n type = type.join(' | ');\n }\n } else {\n type = getOptionDisplayType({ ...item.anyOf[0], enum: item.enum });\n }\n\n return (\n <OptionItem\n key={key}\n name={key}\n // item.anyOf in the config.ts is a tuple which holds [{ type, pattern, items }, { type, pattern: DYNAMIC_OPTIONS_PATTERN }]\n type={type}\n enumerable={enumerable}\n desc={item.description}\n defaultValue={getDefaultValue(item.default)}\n PropertiesSection={PropertiesSection}\n />\n );\n })}\n </div>\n);\n\nOptionsDoc.propTypes = {\n options: T.object.isRequired,\n description: T.string,\n};\n\nexport default OptionsDoc;\n","module.exports = require(\"@splunk/visualizations-shared/configUtils\");","module.exports = require(\"@splunk/ui-utils/i18n\");","module.exports = require(\"@babel/runtime/helpers/defineProperty\");"],"sourceRoot":""}
@@ -278,35 +278,35 @@ module.exports = require("@splunk/react-ui/Chip");
278
278
  /***/ 58:
279
279
  /***/ (function(module, exports) {
280
280
 
281
- module.exports = require("@splunk/react-icons/ChartLine");
281
+ module.exports = require("@splunk/react-icons/enterprise/ChartLine");
282
282
 
283
283
  /***/ }),
284
284
 
285
285
  /***/ 59:
286
286
  /***/ (function(module, exports) {
287
287
 
288
- module.exports = require("@splunk/react-icons/ChartBar");
288
+ module.exports = require("@splunk/react-icons/enterprise/ChartBar");
289
289
 
290
290
  /***/ }),
291
291
 
292
292
  /***/ 60:
293
293
  /***/ (function(module, exports) {
294
294
 
295
- module.exports = require("@splunk/react-icons/ChartScatter");
295
+ module.exports = require("@splunk/react-icons/enterprise/ChartScatter");
296
296
 
297
297
  /***/ }),
298
298
 
299
299
  /***/ 61:
300
300
  /***/ (function(module, exports) {
301
301
 
302
- module.exports = require("@splunk/react-icons/ChoroplethMap");
302
+ module.exports = require("@splunk/react-icons/enterprise/ChoroplethMap");
303
303
 
304
304
  /***/ }),
305
305
 
306
306
  /***/ 62:
307
307
  /***/ (function(module, exports) {
308
308
 
309
- module.exports = require("@splunk/react-icons/SplitBy");
309
+ module.exports = require("@splunk/react-icons/enterprise/SplitBy");
310
310
 
311
311
  /***/ }),
312
312