@carbon/charts 0.41.44 → 0.41.48
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.
- package/CHANGELOG.md +20 -11
- package/build/demo/data/combo.d.ts +0 -11
- package/build/demo/data/index.d.ts +14 -14
- package/build/src/axis-chart.d.ts +1 -1
- package/build/src/chart.d.ts +1 -1
- package/build/src/interfaces/components.d.ts +2 -0
- package/bundle.js +1 -1
- package/components/axes/grid.js +32 -6
- package/components/axes/grid.js.map +1 -1
- package/components/graphs/area.js +11 -2
- package/components/graphs/area.js.map +1 -1
- package/configuration.js +2 -0
- package/configuration.js.map +1 -1
- package/demo/data/bundle.js +1 -1
- package/demo/data/combo.d.ts +0 -11
- package/demo/data/combo.js +0 -11
- package/demo/data/combo.js.map +1 -1
- package/demo/data/index.d.ts +14 -14
- package/demo/data/index.js +84 -44
- package/demo/data/index.js.map +1 -1
- package/demo/tsconfig.tsbuildinfo +6 -6
- package/interfaces/components.d.ts +2 -0
- package/interfaces/components.js.map +1 -1
- package/package.json +1 -1
- package/services/scales-cartesian.js +2 -2
- package/services/scales-cartesian.js.map +1 -1
- package/tsconfig.tsbuildinfo +6 -6
package/demo/data/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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","sourcesContent":["import * as areaDemos from './area';\nimport * as barDemos from './bar';\nimport * as boxplotDemos from './boxplot';\nimport * as bubbleDemos from './bubble';\nimport * as donutDemos from './donut';\nimport * as lineDemos from './line';\nimport * as pieDemos from './pie';\nimport * as gaugeDemos from './gauge';\nimport * as scatterDemos from './scatter';\nimport * as lollipopDemos from './lollipop';\nimport * as stepDemos from './step';\nimport * as meterDemos from './meter';\nimport * as timeSeriesAxisDemos from './time-series-axis';\nimport * as radarDemos from './radar';\nimport * as treemapDemos from './treemap';\nimport * as toolbarDemos from './toolbar';\nimport * as zoomBarDemos from './zoom-bar';\nimport * as comboDemos from './combo';\nimport * as highScaleDemos from './high-scale';\n\nexport * from './area';\nexport * from './bar';\nexport * from './boxplot';\nexport * from './bubble';\nexport * from './donut';\nexport * from './line';\nexport * from './meter';\nexport * from './pie';\nexport * from './gauge';\nexport * from './scatter';\nexport * from './step';\nexport * from './radar';\nexport * from './combo';\nexport * from './treemap';\n\nimport {\n\tcreateChartSandbox,\n\tcreateReactChartApp,\n\tcreateAngularChartApp,\n\tcreateVueChartApp,\n\tcreateVanillaChartApp,\n\tcreateSvelteChartApp,\n} from '../create-codesandbox';\n\nimport { Tools } from '@carbon/charts/tools';\n\nexport const chartTypes = {\n\tAreaChart: {\n\t\tvanilla: 'AreaChart',\n\t\tangular: 'ibm-area-chart',\n\t\tvue: 'ccv-area-chart',\n\t},\n\tSimpleBarChart: {\n\t\tvanilla: 'SimpleBarChart',\n\t\tangular: 'ibm-simple-bar-chart',\n\t\tvue: 'ccv-simple-bar-chart',\n\t},\n\tGroupedBarChart: {\n\t\tvanilla: 'GroupedBarChart',\n\t\tangular: 'ibm-grouped-bar-chart',\n\t\tvue: 'ccv-grouped-bar-chart',\n\t},\n\tStackedBarChart: {\n\t\tvanilla: 'StackedBarChart',\n\t\tangular: 'ibm-stacked-bar-chart',\n\t\tvue: 'ccv-stacked-bar-chart',\n\t},\n\tBoxplotChart: {\n\t\tvanilla: 'BoxplotChart',\n\t\tangular: 'ibm-boxplot-chart',\n\t\tvue: 'ccv-boxplot-chart',\n\t},\n\tBubbleChart: {\n\t\tvanilla: 'BubbleChart',\n\t\tangular: 'ibm-bubble-chart',\n\t\tvue: 'ccv-bubble-chart',\n\t},\n\tLineChart: {\n\t\tvanilla: 'LineChart',\n\t\tangular: 'ibm-line-chart',\n\t\tvue: 'ccv-line-chart',\n\t},\n\tStackedAreaChart: {\n\t\tvanilla: 'StackedAreaChart',\n\t\tangular: 'ibm-stacked-area-chart',\n\t\tvue: 'ccv-stacked-area-chart',\n\t},\n\tScatterChart: {\n\t\tvanilla: 'ScatterChart',\n\t\tangular: 'ibm-scatter-chart',\n\t\tvue: 'ccv-scatter-chart',\n\t},\n\tLollipopChart: {\n\t\tvanilla: 'LollipopChart',\n\t\tangular: 'ibm-lollipop-chart',\n\t\tvue: 'ccv-lollipop-chart',\n\t},\n\tPieChart: {\n\t\tvanilla: 'PieChart',\n\t\tangular: 'ibm-pie-chart',\n\t\tvue: 'ccv-pie-chart',\n\t},\n\tGaugeChart: {\n\t\tvanilla: 'GaugeChart',\n\t\tangular: 'ibm-gauge-chart',\n\t\tvue: 'ccv-gauge-chart',\n\t},\n\tDonutChart: {\n\t\tvanilla: 'DonutChart',\n\t\tangular: 'ibm-donut-chart',\n\t\tvue: 'ccv-donut-chart',\n\t},\n\tMeterChart: {\n\t\tvanilla: 'MeterChart',\n\t\tangular: 'ibm-meter-chart',\n\t\tvue: 'ccv-meter-chart',\n\t},\n\tRadarChart: {\n\t\tvanilla: 'RadarChart',\n\t\tangular: 'ibm-radar-chart',\n\t\tvue: 'ccv-radar-chart',\n\t},\n\tComboChart: {\n\t\tvanilla: 'ComboChart',\n\t\tangular: 'ibm-combo-chart',\n\t\tvue: 'ccv-combo-chart',\n\t},\n\tTreemapChart: {\n\t\tvanilla: 'TreemapChart',\n\t\tangular: 'ibm-treemap-chart',\n\t\tvue: 'ccv-treemap-chart',\n\t},\n};\n\nlet allDemoGroups = [\n\t{\n\t\ttitle: 'Area',\n\t\tdescription:\n\t\t\t'Area charts are similar to line charts, but the areas below the lines are filled with colors or patterns. Stacked charts are useful for comparing proportional contributions within a category. They plot the relative value that each data series contributes to the total.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaTimeSeriesCurvedOptions,\n\t\t\t\tdata: areaDemos.areaTimeSeriesCurvedData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.areaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaDiscreteDomainOptions,\n\t\t\t\tdata: areaDemos.areaDiscreteDomain,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaTimeSeriesUnevenDataOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesUnevenData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaPercentageTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.sparklineOptions,\n\t\t\t\tdata: areaDemos.sparklineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.boundedAreaTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.boundedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaSkeletonOptions,\n\t\t\t\tdata: areaDemos.areaSkeletonData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaEmptyOptions,\n\t\t\t\tdata: areaDemos.areaEmptyData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaPercentageTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Bar (vertical)',\n\t\tdescription:\n\t\t\t'Bar charts use vertical or horizontal data markers to compare individual values. You can use them to compare discrete data or show trends over time.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarOptions,\n\t\t\t\tdata: barDemos.simpleBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarColorOverrideOptions,\n\t\t\t\tdata: barDemos.simpleBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarOptionsCustomTicks,\n\t\t\t\tdata: barDemos.simpleBarDataCustomTicks,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarCustomLegendOrderOptions,\n\t\t\t\tdata: barDemos.simpleBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarCenteredLegendOptions,\n\t\t\t\tdata: barDemos.simpleBarCenteredLegendData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarLongLabelOptions,\n\t\t\t\tdata: barDemos.simpleBarLongLabelData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarFixedDomainOptions,\n\t\t\t\tdata: barDemos.simpleBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarTimeSeriesDenseOptions,\n\t\t\t\tdata: barDemos.simpleBarTimeSeriesDenseData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarTimeSeriesOptions,\n\t\t\t\tdata: barDemos.simpleBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.simpleBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarSkeletonOptions,\n\t\t\t\tdata: barDemos.simpleBarSkeletonData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdescription:\n\t\t\t\t\t'A grouped bar chart, also known as a clustered bar graph, multi-set bar chart, or grouped column chart, is a type of bar graph that is used to compare values across multiple categories.',\n\t\t\t\toptions: barDemos.groupedBarOptions,\n\t\t\t\tdata: barDemos.groupedBarData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedBarSelectedGroupsOptions,\n\t\t\t\tdata: barDemos.groupedBarSelectedGroupsData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.groupedBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedBarSkeletonOptions,\n\t\t\t\tdata: barDemos.groupedBarSkeletonData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdescription:\n\t\t\t\t\t'Stacked bar charts are useful for comparing proportional contributions within a category. They plot the relative value that each data series contributes to the total.',\n\t\t\t\toptions: barDemos.stackedBarOptions,\n\t\t\t\tdata: barDemos.stackedBarData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedBarTimeSeriesOptions,\n\t\t\t\tdata: barDemos.stackedBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedBarTimeSeriesOptionsCustomTicks,\n\t\t\t\tdata: barDemos.stackedBarTimeSeriesDataCustomTicks,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.stackedBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedBarSkeletonOptions,\n\t\t\t\tdata: barDemos.stackedBarSkeletonData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Bar (horizontal)',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarCenteredLegendOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarCenteredLegendData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarLongLabelOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarLongLabelData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarTimeSeriesOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarSkeletonOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarSkeletonData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedHorizontalBarOptions,\n\t\t\t\tdata: barDemos.groupedHorizontalBarData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedHorizontalBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.groupedHorizontalBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedHorizontalBarSkeletonOptions,\n\t\t\t\tdata: barDemos.groupedHorizontalBarSkeletonData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedHorizontalBarOptions,\n\t\t\t\tdata: barDemos.stackedHorizontalBarData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedHorizontalBarTimeSeriesOptions,\n\t\t\t\tdata: barDemos.stackedHorizontalBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedHorizontalBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.stackedHorizontalBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedHorizontalBarSkeletonOptions,\n\t\t\t\tdata: barDemos.stackedHorizontalBarSkeletonData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Boxplot',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: boxplotDemos.simpleBoxplotOptions,\n\t\t\t\tdata: boxplotDemos.simpleBoxplotData,\n\t\t\t\tchartType: chartTypes.BoxplotChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: boxplotDemos.simpleVerticalBoxplotOptions,\n\t\t\t\tdata: boxplotDemos.simpleVerticalBoxplotData,\n\t\t\t\tchartType: chartTypes.BoxplotChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Bubble',\n\t\tdescription:\n\t\t\t'Bubble charts use data points and bubbles to plot measures anywhere along a scale. One measure is plotted along each axis. The size of the bubble represents the third measure. You can use bubble charts to represent financial data or any data where measured values are related.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleDoubleLinearOptions,\n\t\t\t\tdata: bubbleDemos.bubbleDoubleLinearData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleTimeSeriesOptions,\n\t\t\t\tdata: bubbleDemos.bubbleTimeSeriesData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleDiscreteOptions,\n\t\t\t\tdata: bubbleDemos.bubbleDiscreteData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleEmptyStateOptions,\n\t\t\t\tdata: bubbleDemos.bubbleEmptyStateData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleSkeletonOptions,\n\t\t\t\tdata: bubbleDemos.bubbleSkeletonData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleDualDiscreteOptions,\n\t\t\t\tdata: bubbleDemos.bubbleDualDiscreteData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Combo',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboSimpleOptions,\n\t\t\t\tdata: comboDemos.comboSimpleData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboStackedOptions,\n\t\t\t\tdata: comboDemos.comboStackedData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboGroupedOptions,\n\t\t\t\tdata: comboDemos.comboGroupedData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboGroupedHorizontalOptions,\n\t\t\t\tdata: comboDemos.comboGroupedHorizontalData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboHorizontalOptions,\n\t\t\t\tdata: comboDemos.comboHorizontalData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboAreaLineOptions,\n\t\t\t\tdata: comboDemos.comboAreaLineData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboStackedAreaLineOptions,\n\t\t\t\tdata: comboDemos.comboStackedAreaLine,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboLineScatterOptions,\n\t\t\t\tdata: comboDemos.comboLineScatterData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboAreaLineTimeSeriesOptions,\n\t\t\t\tdata: comboDemos.comboAreaLineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboEmptyOptions,\n\t\t\t\tdata: comboDemos.comboEmptyData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboLoadingOptions,\n\t\t\t\tdata: comboDemos.comboLoadingData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Donut',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: donutDemos.donutOptions,\n\t\t\t\tdata: donutDemos.donutData,\n\t\t\t\tchartType: chartTypes.DonutChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: donutDemos.donutCenteredOptions,\n\t\t\t\tdata: donutDemos.donutCenteredData,\n\t\t\t\tchartType: chartTypes.DonutChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: donutDemos.donutEmptyStateOptions,\n\t\t\t\tdata: donutDemos.donutEmptyStateData,\n\t\t\t\tchartType: chartTypes.DonutChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: donutDemos.donutSkeletonOptions,\n\t\t\t\tdata: donutDemos.donutSkeletonData,\n\t\t\t\tchartType: chartTypes.DonutChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Line',\n\t\tdescription:\n\t\t\t'Line charts plot data at regular intervals connected by lines. You can use line visualizations to show trends over time and compare several data sets.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineOptions,\n\t\t\t\tdata: lineDemos.lineData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineCustomColorOptions,\n\t\t\t\tdata: lineDemos.lineData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineCenteredLegendOptions,\n\t\t\t\tdata: lineDemos.lineCenteredLegendData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineLongLabelOptions,\n\t\t\t\tdata: lineDemos.lineLongLabelData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineCustomDomainOptions,\n\t\t\t\tdata: lineDemos.lineData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineSelectedGroupsOptions,\n\t\t\t\tdata: lineDemos.lineSelectedGroupsData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesCustomDomainOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesDenseOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesDenseData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesRotatedTicksOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesDataRotatedTicks,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineHorizontalOptions,\n\t\t\t\tdata: lineDemos.lineData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesHorizontalOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesWithThresholdsOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineEmptyStateOptions,\n\t\t\t\tdata: lineDemos.lineEmptyStateData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineSkeletonOptions,\n\t\t\t\tdata: lineDemos.lineSkeletonData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.dualLine,\n\t\t\t\tdata: lineDemos.lineTimeSeriesDualAxesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.sparklineLoadingOptions,\n\t\t\t\tdata: lineDemos.lineSkeletonData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Pie',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: pieDemos.pieOptions,\n\t\t\t\tdata: pieDemos.pieData,\n\t\t\t\tchartType: chartTypes.PieChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: pieDemos.pieCenteredOptions,\n\t\t\t\tdata: pieDemos.pieCenteredData,\n\t\t\t\tchartType: chartTypes.PieChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: pieDemos.pieEmptyStateOptions,\n\t\t\t\tdata: pieDemos.pieEmptyStateData,\n\t\t\t\tchartType: chartTypes.PieChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: pieDemos.pieSkeletonOptions,\n\t\t\t\tdata: pieDemos.pieSkeletonData,\n\t\t\t\tchartType: chartTypes.PieChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Meter',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: meterDemos.meterOptionsWithStatus,\n\t\t\t\tdata: meterDemos.meterData,\n\t\t\t\tchartType: chartTypes.MeterChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: meterDemos.meterOptionsCustomColor,\n\t\t\t\tdata: meterDemos.meterData,\n\t\t\t\tchartType: chartTypes.MeterChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: meterDemos.meterOptionsNoStatus,\n\t\t\t\tdata: meterDemos.meterData,\n\t\t\t\tchartType: chartTypes.MeterChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Radar',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\tdata: radarDemos.radarData,\n\t\t\t\toptions: radarDemos.radarOptions,\n\t\t\t\tchartType: chartTypes.RadarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: radarDemos.radarCenteredData,\n\t\t\t\toptions: radarDemos.radarCenteredOptions,\n\t\t\t\tchartType: chartTypes.RadarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: radarDemos.radarWithMissingDataData,\n\t\t\t\toptions: radarDemos.radarWithMissingDataOptions,\n\t\t\t\tchartType: chartTypes.RadarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: radarDemos.radarDenseData,\n\t\t\t\toptions: radarDemos.radarDenseOptions,\n\t\t\t\tchartType: chartTypes.RadarChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Scatter',\n\t\tdescription:\n\t\t\t'Scatter plot visualizations use data points to plot two measures anywhere along a scale, not only at regular tick marks. You can use scatter plots to explore correlations between different measures.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: scatterDemos.doubleLinearScatterOptions,\n\t\t\t\tdata: scatterDemos.doubleLinearScatterData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterTimeSeriesOptions,\n\t\t\t\tdata: scatterDemos.scatterTimeSeriesData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterDiscreteOptions,\n\t\t\t\tdata: scatterDemos.scatterDiscreteData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterLongLabelDiscreteOptions,\n\t\t\t\tdata: scatterDemos.scatterLongLabelDiscreteData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterEmptyStateOptions,\n\t\t\t\tdata: scatterDemos.scatterEmptyStateData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterSkeletonOptions,\n\t\t\t\tdata: scatterDemos.scatterSkeletonData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterDualAxesOptions,\n\t\t\t\tdata: scatterDemos.scatterDualAxesData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Step',\n\t\tdescription:\n\t\t\t'Stepped line charts plot data at regular intervals, forming a series of steps between data points. You can use line visualizations to show trends over time and compare several data sets.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: stepDemos.stepOptions,\n\t\t\t\tdata: stepDemos.stepData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: stepDemos.stepTimeSeriesOptions,\n\t\t\t\tdata: stepDemos.stepTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: stepDemos.stepEmptyStateOptions,\n\t\t\t\tdata: stepDemos.stepEmptyStateData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: stepDemos.stepSkeletonOptions,\n\t\t\t\tdata: stepDemos.stepSkeletonData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Time series axis',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeries15secondsOptions,\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesData15seconds,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesMinuteOptions,\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataMinute,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeries30minutesOptions,\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesData30minutes,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesHourlyDefaultLocaleOptions,\n\t\t\t\tdata:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesDataHourlyDefaultTicksFormats,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesHourlyCustomTicksFormatsOptions,\n\t\t\t\tdata:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesDataHourlyCustomTicksFormats,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataDaily,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesDailyOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataWeekly,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesWeeklyOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesDataMonthlyDefaultLocale,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesMonthlyDefaultLocaleOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataMonthlyCustomLocale,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesMonthlyCustomLocaleOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataQuarterly,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesQuarterlyOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataYearly,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesYearlyOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataSingleDatum,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesSingleDatumOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesNoExtendedDomainData,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesNoExtendedDomainOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataTwoIdenticalLabels,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesTwoIdenticalLabelsOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesDataAllLabelsInPrimaryFormat,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesAllLabelsInPrimaryFormatOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Treemap',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\tdata: treemapDemos.treemapData,\n\t\t\t\toptions: treemapDemos.treemapOptions,\n\t\t\t\tchartType: chartTypes.TreemapChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Toolbar (alpha)',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: toolbarDemos.toolbarStackedBarTimeSeriesOptions,\n\t\t\t\tdata: toolbarDemos.toolbarStackedBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: toolbarDemos.toolbarLineTimeSeriesOptions,\n\t\t\t\tdata: toolbarDemos.toolbarLineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Zoom bar (alpha)',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarStackedAreaTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarStackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarSimpleBarTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarSimpleBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarStackedBarTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarStackedBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.definedZoomBarStackedBarTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.definedZoomBarStackedBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarBubbleTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarBubbleTimeSeriesData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarLineTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarLineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarScatterTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarScatterTimeSeriesData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarStepTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarStepTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarLineTimeSeries15secondsOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarLineTimeSeries15secondsData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarLineTimeSeriesInitDomainOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarLineTimeSeriesInitDomainData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarStringDateOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarStringDateData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarLockedOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarLockedData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarSkeletonOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarSkeletonData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n] as any;\n\nconst devOnlyDemoGroups = [\n\t{\n\t\ttitle: 'High scale tests (DEV)',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: highScaleDemos.zoomBarHighScaleLineTimeSeriesOptions,\n\t\t\t\tdata: [],\n\t\t\t\tisHighScale: true,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n] as any;\n\nconst formatTitleString = (str) =>\n\tstr\n\t\t.replace(/[^\\w\\s]/gi, '')\n\t\t.replace(/\\s\\s+/g, ' ')\n\t\t.toLowerCase()\n\t\t.replace(/\\s+/g, '-');\n\nconst mapDemoGroups = (demoGroups) =>\n\tdemoGroups.map((demoGroup) => {\n\t\tdemoGroup.demos = demoGroup.demos.map((demo) => {\n\t\t\tdemo.title = demo.options.title;\n\t\t\tdemo.id = `${formatTitleString(\n\t\t\t\tdemoGroup.title\n\t\t\t)}--${formatTitleString(demo.options.title)}`;\n\n\t\t\t// if there isnt a height set in the chart options, use 400\n\t\t\tdemo.options.height = demo.options.height ?? '400px';\n\n\t\t\tif (!demo.codesandbox) {\n\t\t\t\tdemo.codesandbox = {};\n\t\t\t}\n\t\t\tdemo.codesandbox.react = createChartSandbox(\n\t\t\t\tcreateReactChartApp(demo)\n\t\t\t);\n\t\t\tdemo.codesandbox.vue = createChartSandbox(createVueChartApp(demo));\n\t\t\tdemo.codesandbox.vanilla = createChartSandbox(\n\t\t\t\tcreateVanillaChartApp(demo)\n\t\t\t);\n\t\t\tdemo.codesandbox.svelte = createChartSandbox(\n\t\t\t\tcreateSvelteChartApp(demo)\n\t\t\t);\n\n\t\t\tif (!demo.code) {\n\t\t\t\tdemo.code = {};\n\t\t\t}\n\t\t\tdemo.code.angular = createAngularChartApp(demo);\n\n\t\t\treturn demo;\n\t\t});\n\n\t\treturn demoGroup;\n\t});\n// add codesandbox and code to demos\nallDemoGroups = mapDemoGroups(allDemoGroups);\n\n// Only add the high-scale testcases in dev\nif (process.env.NODE_ENV !== 'production') {\n\tallDemoGroups = allDemoGroups.concat(mapDemoGroups(devOnlyDemoGroups));\n}\n\n// in the storybook we want to show all the demos\nexport const storybookDemoGroups = allDemoGroups;\n\n// in the demo page we want to show only demos with isDemoExample = true\nexport const demoGroups = Tools.clone(allDemoGroups)\n\t// remove demoGroup if its children don't have any demo examples\n\t.filter(\n\t\t(demoGroup) =>\n\t\t\tdemoGroup.demos.filter((demo) => demo.isDemoExample !== false)\n\t\t\t\t.length > 0\n\t)\n\t.map((demoGroup) => {\n\t\tdemoGroup.demos = demoGroup.demos.filter(\n\t\t\t(demo) => demo.isDemoExample !== false\n\t\t);\n\t\treturn demoGroup;\n\t});\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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","sourcesContent":["import * as areaDemos from './area';\nimport * as barDemos from './bar';\nimport * as boxplotDemos from './boxplot';\nimport * as bubbleDemos from './bubble';\nimport * as donutDemos from './donut';\nimport * as lineDemos from './line';\nimport * as pieDemos from './pie';\nimport * as gaugeDemos from './gauge';\nimport * as scatterDemos from './scatter';\nimport * as lollipopDemos from './lollipop';\nimport * as stepDemos from './step';\nimport * as meterDemos from './meter';\nimport * as timeSeriesAxisDemos from './time-series-axis';\nimport * as radarDemos from './radar';\nimport * as treemapDemos from './treemap';\nimport * as toolbarDemos from './toolbar';\nimport * as zoomBarDemos from './zoom-bar';\nimport * as comboDemos from './combo';\nimport * as highScaleDemos from './high-scale';\n\nexport * from './area';\nexport * from './bar';\nexport * from './boxplot';\nexport * from './bubble';\nexport * from './donut';\nexport * from './line';\nexport * from './meter';\nexport * from './pie';\nexport * from './gauge';\nexport * from './scatter';\nexport * from './step';\nexport * from './radar';\nexport * from './combo';\nexport * from './treemap';\n\nimport {\n\tcreateChartSandbox,\n\tcreateReactChartApp,\n\tcreateAngularChartApp,\n\tcreateVueChartApp,\n\tcreateVanillaChartApp,\n\tcreateSvelteChartApp,\n} from '../create-codesandbox';\n\nimport { Tools } from '@carbon/charts/tools';\n\nexport const chartTypes = {\n\tAreaChart: {\n\t\tvanilla: 'AreaChart',\n\t\tangular: 'ibm-area-chart',\n\t\tvue: 'ccv-area-chart',\n\t},\n\tBoxplotChart: {\n\t\tvanilla: 'BoxplotChart',\n\t\tangular: 'ibm-boxplot-chart',\n\t\tvue: 'ccv-boxplot-chart',\n\t},\n\tBubbleChart: {\n\t\tvanilla: 'BubbleChart',\n\t\tangular: 'ibm-bubble-chart',\n\t\tvue: 'ccv-bubble-chart',\n\t},\n\tComboChart: {\n\t\tvanilla: 'ComboChart',\n\t\tangular: 'ibm-combo-chart',\n\t\tvue: 'ccv-combo-chart',\n\t},\n\tDonutChart: {\n\t\tvanilla: 'DonutChart',\n\t\tangular: 'ibm-donut-chart',\n\t\tvue: 'ccv-donut-chart',\n\t},\n\tGaugeChart: {\n\t\tvanilla: 'GaugeChart',\n\t\tangular: 'ibm-gauge-chart',\n\t\tvue: 'ccv-gauge-chart',\n\t},\n\tGroupedBarChart: {\n\t\tvanilla: 'GroupedBarChart',\n\t\tangular: 'ibm-grouped-bar-chart',\n\t\tvue: 'ccv-grouped-bar-chart',\n\t},\n\tLineChart: {\n\t\tvanilla: 'LineChart',\n\t\tangular: 'ibm-line-chart',\n\t\tvue: 'ccv-line-chart',\n\t},\n\tLollipopChart: {\n\t\tvanilla: 'LollipopChart',\n\t\tangular: 'ibm-lollipop-chart',\n\t\tvue: 'ccv-lollipop-chart',\n\t},\n\tMeterChart: {\n\t\tvanilla: 'MeterChart',\n\t\tangular: 'ibm-meter-chart',\n\t\tvue: 'ccv-meter-chart',\n\t},\n\tPieChart: {\n\t\tvanilla: 'PieChart',\n\t\tangular: 'ibm-pie-chart',\n\t\tvue: 'ccv-pie-chart',\n\t},\n\tRadarChart: {\n\t\tvanilla: 'RadarChart',\n\t\tangular: 'ibm-radar-chart',\n\t\tvue: 'ccv-radar-chart',\n\t},\n\tScatterChart: {\n\t\tvanilla: 'ScatterChart',\n\t\tangular: 'ibm-scatter-chart',\n\t\tvue: 'ccv-scatter-chart',\n\t},\n\tSimpleBarChart: {\n\t\tvanilla: 'SimpleBarChart',\n\t\tangular: 'ibm-simple-bar-chart',\n\t\tvue: 'ccv-simple-bar-chart',\n\t},\n\tStackedAreaChart: {\n\t\tvanilla: 'StackedAreaChart',\n\t\tangular: 'ibm-stacked-area-chart',\n\t\tvue: 'ccv-stacked-area-chart',\n\t},\n\tStackedBarChart: {\n\t\tvanilla: 'StackedBarChart',\n\t\tangular: 'ibm-stacked-bar-chart',\n\t\tvue: 'ccv-stacked-bar-chart',\n\t},\n\tTreemapChart: {\n\t\tvanilla: 'TreemapChart',\n\t\tangular: 'ibm-treemap-chart',\n\t\tvue: 'ccv-treemap-chart',\n\t},\n};\n\nlet allDemoGroups = [\n\t{\n\t\ttitle: 'Area',\n\t\tdescription:\n\t\t\t'Area charts are similar to line charts, but the areas below the lines are filled with colors or patterns. Stacked charts are useful for comparing proportional contributions within a category. They plot the relative value that each data series contributes to the total.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaTimeSeriesCurvedOptions,\n\t\t\t\tdata: areaDemos.areaTimeSeriesCurvedData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.areaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaDiscreteDomainOptions,\n\t\t\t\tdata: areaDemos.areaDiscreteDomain,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaTimeSeriesUnevenDataOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesUnevenData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaPercentageTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.sparklineOptions,\n\t\t\t\tdata: areaDemos.sparklineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.boundedAreaTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.boundedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaSkeletonOptions,\n\t\t\t\tdata: areaDemos.areaSkeletonData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.areaEmptyOptions,\n\t\t\t\tdata: areaDemos.areaEmptyData,\n\t\t\t\tchartType: chartTypes.AreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: areaDemos.stackedAreaPercentageTimeSeriesOptions,\n\t\t\t\tdata: areaDemos.stackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Bar (vertical)',\n\t\tdescription:\n\t\t\t'Bar charts use vertical or horizontal data markers to compare individual values. You can use them to compare discrete data or show trends over time.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarOptions,\n\t\t\t\tdata: barDemos.simpleBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarColorOverrideOptions,\n\t\t\t\tdata: barDemos.simpleBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarOptionsCustomTicks,\n\t\t\t\tdata: barDemos.simpleBarDataCustomTicks,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarCustomLegendOrderOptions,\n\t\t\t\tdata: barDemos.simpleBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarCenteredLegendOptions,\n\t\t\t\tdata: barDemos.simpleBarCenteredLegendData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarLongLabelOptions,\n\t\t\t\tdata: barDemos.simpleBarLongLabelData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarFixedDomainOptions,\n\t\t\t\tdata: barDemos.simpleBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarTimeSeriesDenseOptions,\n\t\t\t\tdata: barDemos.simpleBarTimeSeriesDenseData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarTimeSeriesOptions,\n\t\t\t\tdata: barDemos.simpleBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.simpleBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleBarSkeletonOptions,\n\t\t\t\tdata: barDemos.simpleBarSkeletonData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdescription:\n\t\t\t\t\t'A grouped bar chart, also known as a clustered bar graph, multi-set bar chart, or grouped column chart, is a type of bar graph that is used to compare values across multiple categories.',\n\t\t\t\toptions: barDemos.groupedBarOptions,\n\t\t\t\tdata: barDemos.groupedBarData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedBarSelectedGroupsOptions,\n\t\t\t\tdata: barDemos.groupedBarSelectedGroupsData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.groupedBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedBarSkeletonOptions,\n\t\t\t\tdata: barDemos.groupedBarSkeletonData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdescription:\n\t\t\t\t\t'Stacked bar charts are useful for comparing proportional contributions within a category. They plot the relative value that each data series contributes to the total.',\n\t\t\t\toptions: barDemos.stackedBarOptions,\n\t\t\t\tdata: barDemos.stackedBarData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedBarTimeSeriesOptions,\n\t\t\t\tdata: barDemos.stackedBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedBarTimeSeriesOptionsCustomTicks,\n\t\t\t\tdata: barDemos.stackedBarTimeSeriesDataCustomTicks,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.stackedBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedBarSkeletonOptions,\n\t\t\t\tdata: barDemos.stackedBarSkeletonData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Bar (horizontal)',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarCenteredLegendOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarCenteredLegendData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarLongLabelOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarLongLabelData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarTimeSeriesOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.simpleHorizontalBarSkeletonOptions,\n\t\t\t\tdata: barDemos.simpleHorizontalBarSkeletonData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedHorizontalBarOptions,\n\t\t\t\tdata: barDemos.groupedHorizontalBarData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedHorizontalBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.groupedHorizontalBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.groupedHorizontalBarSkeletonOptions,\n\t\t\t\tdata: barDemos.groupedHorizontalBarSkeletonData,\n\t\t\t\tchartType: chartTypes.GroupedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedHorizontalBarOptions,\n\t\t\t\tdata: barDemos.stackedHorizontalBarData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedHorizontalBarTimeSeriesOptions,\n\t\t\t\tdata: barDemos.stackedHorizontalBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedHorizontalBarEmptyStateOptions,\n\t\t\t\tdata: barDemos.stackedHorizontalBarEmptyStateData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: barDemos.stackedHorizontalBarSkeletonOptions,\n\t\t\t\tdata: barDemos.stackedHorizontalBarSkeletonData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Boxplot',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: boxplotDemos.simpleBoxplotOptions,\n\t\t\t\tdata: boxplotDemos.simpleBoxplotData,\n\t\t\t\tchartType: chartTypes.BoxplotChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: boxplotDemos.simpleVerticalBoxplotOptions,\n\t\t\t\tdata: boxplotDemos.simpleVerticalBoxplotData,\n\t\t\t\tchartType: chartTypes.BoxplotChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Bubble',\n\t\tdescription:\n\t\t\t'Bubble charts use data points and bubbles to plot measures anywhere along a scale. One measure is plotted along each axis. The size of the bubble represents the third measure. You can use bubble charts to represent financial data or any data where measured values are related.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleDoubleLinearOptions,\n\t\t\t\tdata: bubbleDemos.bubbleDoubleLinearData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleTimeSeriesOptions,\n\t\t\t\tdata: bubbleDemos.bubbleTimeSeriesData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleDiscreteOptions,\n\t\t\t\tdata: bubbleDemos.bubbleDiscreteData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleEmptyStateOptions,\n\t\t\t\tdata: bubbleDemos.bubbleEmptyStateData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleSkeletonOptions,\n\t\t\t\tdata: bubbleDemos.bubbleSkeletonData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: bubbleDemos.bubbleDualDiscreteOptions,\n\t\t\t\tdata: bubbleDemos.bubbleDualDiscreteData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Combo',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboSimpleOptions,\n\t\t\t\tdata: comboDemos.comboSimpleData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboStackedOptions,\n\t\t\t\tdata: comboDemos.comboStackedData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboGroupedOptions,\n\t\t\t\tdata: comboDemos.comboGroupedData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboGroupedHorizontalOptions,\n\t\t\t\tdata: comboDemos.comboGroupedHorizontalData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboHorizontalOptions,\n\t\t\t\tdata: comboDemos.comboHorizontalData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboAreaLineOptions,\n\t\t\t\tdata: comboDemos.comboAreaLineData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboStackedAreaLineOptions,\n\t\t\t\tdata: comboDemos.comboStackedAreaLine,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboLineScatterOptions,\n\t\t\t\tdata: comboDemos.comboLineScatterData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboAreaLineTimeSeriesOptions,\n\t\t\t\tdata: comboDemos.comboAreaLineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboEmptyOptions,\n\t\t\t\tdata: comboDemos.comboEmptyData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: comboDemos.comboLoadingOptions,\n\t\t\t\tdata: comboDemos.comboLoadingData,\n\t\t\t\tchartType: chartTypes.ComboChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Donut',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: donutDemos.donutOptions,\n\t\t\t\tdata: donutDemos.donutData,\n\t\t\t\tchartType: chartTypes.DonutChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: donutDemos.donutCenteredOptions,\n\t\t\t\tdata: donutDemos.donutCenteredData,\n\t\t\t\tchartType: chartTypes.DonutChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: donutDemos.donutEmptyStateOptions,\n\t\t\t\tdata: donutDemos.donutEmptyStateData,\n\t\t\t\tchartType: chartTypes.DonutChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: donutDemos.donutSkeletonOptions,\n\t\t\t\tdata: donutDemos.donutSkeletonData,\n\t\t\t\tchartType: chartTypes.DonutChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Gauge',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: gaugeDemos.gaugeOptionsSemi,\n\t\t\t\tdata: gaugeDemos.gaugeData,\n\t\t\t\tchartType: chartTypes.GaugeChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: gaugeDemos.gaugeOptionsCircular,\n\t\t\t\tdata: gaugeDemos.gaugeData,\n\t\t\t\tchartType: chartTypes.GaugeChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: gaugeDemos.gaugeOptionsCircularNoDelta,\n\t\t\t\tdata: gaugeDemos.gaugeDataNoDelta,\n\t\t\t\tchartType: chartTypes.GaugeChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Line',\n\t\tdescription:\n\t\t\t'Line charts plot data at regular intervals connected by lines. You can use line visualizations to show trends over time and compare several data sets.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineOptions,\n\t\t\t\tdata: lineDemos.lineData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineCustomColorOptions,\n\t\t\t\tdata: lineDemos.lineData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineCenteredLegendOptions,\n\t\t\t\tdata: lineDemos.lineCenteredLegendData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineLongLabelOptions,\n\t\t\t\tdata: lineDemos.lineLongLabelData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineCustomDomainOptions,\n\t\t\t\tdata: lineDemos.lineData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineSelectedGroupsOptions,\n\t\t\t\tdata: lineDemos.lineSelectedGroupsData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesCustomDomainOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesDenseOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesDenseData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesRotatedTicksOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesDataRotatedTicks,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineHorizontalOptions,\n\t\t\t\tdata: lineDemos.lineData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesHorizontalOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineTimeSeriesWithThresholdsOptions,\n\t\t\t\tdata: lineDemos.lineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineEmptyStateOptions,\n\t\t\t\tdata: lineDemos.lineEmptyStateData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.lineSkeletonOptions,\n\t\t\t\tdata: lineDemos.lineSkeletonData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.dualLine,\n\t\t\t\tdata: lineDemos.lineTimeSeriesDualAxesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lineDemos.sparklineLoadingOptions,\n\t\t\t\tdata: lineDemos.lineSkeletonData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Lollipop',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: lollipopDemos.lollipopDiscreteOptions,\n\t\t\t\tdata: lollipopDemos.lollipopDiscreteData,\n\t\t\t\tchartType: chartTypes.LollipopChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: lollipopDemos.lollipopDiscretePresentationOptions,\n\t\t\t\tdata: lollipopDemos.lollipopDiscretePresentationData,\n\t\t\t\tchartType: chartTypes.LollipopChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Pie',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: pieDemos.pieOptions,\n\t\t\t\tdata: pieDemos.pieData,\n\t\t\t\tchartType: chartTypes.PieChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: pieDemos.pieCenteredOptions,\n\t\t\t\tdata: pieDemos.pieCenteredData,\n\t\t\t\tchartType: chartTypes.PieChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: pieDemos.pieEmptyStateOptions,\n\t\t\t\tdata: pieDemos.pieEmptyStateData,\n\t\t\t\tchartType: chartTypes.PieChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: pieDemos.pieSkeletonOptions,\n\t\t\t\tdata: pieDemos.pieSkeletonData,\n\t\t\t\tchartType: chartTypes.PieChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Meter',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: meterDemos.meterOptionsWithStatus,\n\t\t\t\tdata: meterDemos.meterData,\n\t\t\t\tchartType: chartTypes.MeterChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: meterDemos.meterOptionsCustomColor,\n\t\t\t\tdata: meterDemos.meterData,\n\t\t\t\tchartType: chartTypes.MeterChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: meterDemos.meterOptionsNoStatus,\n\t\t\t\tdata: meterDemos.meterData,\n\t\t\t\tchartType: chartTypes.MeterChart,\n\t\t\t\tisDemoExample: true,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Radar',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\tdata: radarDemos.radarData,\n\t\t\t\toptions: radarDemos.radarOptions,\n\t\t\t\tchartType: chartTypes.RadarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: radarDemos.radarCenteredData,\n\t\t\t\toptions: radarDemos.radarCenteredOptions,\n\t\t\t\tchartType: chartTypes.RadarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: radarDemos.radarWithMissingDataData,\n\t\t\t\toptions: radarDemos.radarWithMissingDataOptions,\n\t\t\t\tchartType: chartTypes.RadarChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: radarDemos.radarDenseData,\n\t\t\t\toptions: radarDemos.radarDenseOptions,\n\t\t\t\tchartType: chartTypes.RadarChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Scatter',\n\t\tdescription:\n\t\t\t'Scatter plot visualizations use data points to plot two measures anywhere along a scale, not only at regular tick marks. You can use scatter plots to explore correlations between different measures.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: scatterDemos.doubleLinearScatterOptions,\n\t\t\t\tdata: scatterDemos.doubleLinearScatterData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterTimeSeriesOptions,\n\t\t\t\tdata: scatterDemos.scatterTimeSeriesData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterDiscreteOptions,\n\t\t\t\tdata: scatterDemos.scatterDiscreteData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterLongLabelDiscreteOptions,\n\t\t\t\tdata: scatterDemos.scatterLongLabelDiscreteData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterEmptyStateOptions,\n\t\t\t\tdata: scatterDemos.scatterEmptyStateData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterSkeletonOptions,\n\t\t\t\tdata: scatterDemos.scatterSkeletonData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: scatterDemos.scatterDualAxesOptions,\n\t\t\t\tdata: scatterDemos.scatterDualAxesData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Step',\n\t\tdescription:\n\t\t\t'Stepped line charts plot data at regular intervals, forming a series of steps between data points. You can use line visualizations to show trends over time and compare several data sets.',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: stepDemos.stepOptions,\n\t\t\t\tdata: stepDemos.stepData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: stepDemos.stepTimeSeriesOptions,\n\t\t\t\tdata: stepDemos.stepTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: stepDemos.stepEmptyStateOptions,\n\t\t\t\tdata: stepDemos.stepEmptyStateData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: stepDemos.stepSkeletonOptions,\n\t\t\t\tdata: stepDemos.stepSkeletonData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Time series axis',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeries15secondsOptions,\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesData15seconds,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesMinuteOptions,\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataMinute,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeries30minutesOptions,\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesData30minutes,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesHourlyDefaultLocaleOptions,\n\t\t\t\tdata:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesDataHourlyDefaultTicksFormats,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesHourlyCustomTicksFormatsOptions,\n\t\t\t\tdata:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesDataHourlyCustomTicksFormats,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataDaily,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesDailyOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataWeekly,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesWeeklyOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesDataMonthlyDefaultLocale,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesMonthlyDefaultLocaleOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataMonthlyCustomLocale,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesMonthlyCustomLocaleOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataQuarterly,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesQuarterlyOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataYearly,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesYearlyOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataSingleDatum,\n\t\t\t\toptions: timeSeriesAxisDemos.lineTimeSeriesSingleDatumOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesNoExtendedDomainData,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesNoExtendedDomainOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata: timeSeriesAxisDemos.lineTimeSeriesDataTwoIdenticalLabels,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesTwoIdenticalLabelsOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\tdata:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesDataAllLabelsInPrimaryFormat,\n\t\t\t\toptions:\n\t\t\t\t\ttimeSeriesAxisDemos.lineTimeSeriesAllLabelsInPrimaryFormatOptions,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Treemap',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\tdata: treemapDemos.treemapData,\n\t\t\t\toptions: treemapDemos.treemapOptions,\n\t\t\t\tchartType: chartTypes.TreemapChart,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Toolbar (alpha)',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: toolbarDemos.toolbarStackedBarTimeSeriesOptions,\n\t\t\t\tdata: toolbarDemos.toolbarStackedBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: toolbarDemos.toolbarLineTimeSeriesOptions,\n\t\t\t\tdata: toolbarDemos.toolbarLineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\ttitle: 'Zoom bar (alpha)',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarStackedAreaTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarStackedAreaTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedAreaChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarSimpleBarTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarSimpleBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.SimpleBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarStackedBarTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarStackedBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.definedZoomBarStackedBarTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.definedZoomBarStackedBarTimeSeriesData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarBubbleTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarBubbleTimeSeriesData,\n\t\t\t\tchartType: chartTypes.BubbleChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarLineTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarLineTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarScatterTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarScatterTimeSeriesData,\n\t\t\t\tchartType: chartTypes.ScatterChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarStepTimeSeriesOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarStepTimeSeriesData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarLineTimeSeries15secondsOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarLineTimeSeries15secondsData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarLineTimeSeriesInitDomainOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarLineTimeSeriesInitDomainData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarStringDateOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarStringDateData,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarLockedOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarLockedData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\toptions: zoomBarDemos.zoomBarSkeletonOptions,\n\t\t\t\tdata: zoomBarDemos.zoomBarSkeletonData,\n\t\t\t\tchartType: chartTypes.StackedBarChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n] as any;\n\nconst devOnlyDemoGroups = [\n\t{\n\t\ttitle: 'High scale tests (DEV)',\n\t\tdemos: [\n\t\t\t{\n\t\t\t\toptions: highScaleDemos.zoomBarHighScaleLineTimeSeriesOptions,\n\t\t\t\tdata: [],\n\t\t\t\tisHighScale: true,\n\t\t\t\tchartType: chartTypes.LineChart,\n\t\t\t\tisDemoExample: false,\n\t\t\t},\n\t\t],\n\t},\n] as any;\n\nconst formatTitleString = (str) =>\n\tstr\n\t\t.replace(/[^\\w\\s]/gi, '')\n\t\t.replace(/\\s\\s+/g, ' ')\n\t\t.toLowerCase()\n\t\t.replace(/\\s+/g, '-');\n\nconst mapDemoGroups = (demoGroups) =>\n\tdemoGroups.map((demoGroup) => {\n\t\tdemoGroup.demos = demoGroup.demos.map((demo) => {\n\t\t\tdemo.title = demo.options.title;\n\t\t\tdemo.id = `${formatTitleString(\n\t\t\t\tdemoGroup.title\n\t\t\t)}--${formatTitleString(demo.options.title)}`;\n\n\t\t\t// if there isnt a height set in the chart options, use 400\n\t\t\tdemo.options.height = demo.options.height ?? '400px';\n\n\t\t\tif (!demo.codesandbox) {\n\t\t\t\tdemo.codesandbox = {};\n\t\t\t}\n\t\t\tdemo.codesandbox.react = createChartSandbox(\n\t\t\t\tcreateReactChartApp(demo)\n\t\t\t);\n\t\t\tdemo.codesandbox.vue = createChartSandbox(createVueChartApp(demo));\n\t\t\tdemo.codesandbox.vanilla = createChartSandbox(\n\t\t\t\tcreateVanillaChartApp(demo)\n\t\t\t);\n\t\t\tdemo.codesandbox.svelte = createChartSandbox(\n\t\t\t\tcreateSvelteChartApp(demo)\n\t\t\t);\n\n\t\t\tif (!demo.code) {\n\t\t\t\tdemo.code = {};\n\t\t\t}\n\t\t\tdemo.code.angular = createAngularChartApp(demo);\n\n\t\t\treturn demo;\n\t\t});\n\n\t\treturn demoGroup;\n\t});\n// add codesandbox and code to demos\nallDemoGroups = mapDemoGroups(allDemoGroups);\n\n// Only add the high-scale testcases in dev\nif (process.env.NODE_ENV !== 'production') {\n\tallDemoGroups = allDemoGroups.concat(mapDemoGroups(devOnlyDemoGroups));\n}\n\n// in the storybook we want to show all the demos\nexport const storybookDemoGroups = allDemoGroups;\n\n// in the demo page we want to show only demos with isDemoExample = true\nexport const demoGroups = Tools.clone(allDemoGroups)\n\t// remove demoGroup if its children don't have any demo examples\n\t.filter(\n\t\t(demoGroup) =>\n\t\t\tdemoGroup.demos.filter((demo) => demo.isDemoExample !== false)\n\t\t\t\t.length > 0\n\t)\n\t.map((demoGroup) => {\n\t\tdemoGroup.demos = demoGroup.demos.filter(\n\t\t\t(demo) => demo.isDemoExample !== false\n\t\t);\n\t\treturn demoGroup;\n\t});\n"]}
|
|
@@ -282,8 +282,8 @@
|
|
|
282
282
|
"signature": "5f971e9544c4c5f5f7c2b82e997d49bfb78c1834bbab909f0a21c5dace641fef"
|
|
283
283
|
},
|
|
284
284
|
"../../demo/data/combo.ts": {
|
|
285
|
-
"version": "
|
|
286
|
-
"signature": "
|
|
285
|
+
"version": "ded18a521aee8b3a6712313b332a5d2d6b858fb4204ab5b2dd2888b350f4ae8b",
|
|
286
|
+
"signature": "80d504fdbd701cabe046f736da36adb60b2e7fae656016a3190cad11797fd27a"
|
|
287
287
|
},
|
|
288
288
|
"../../demo/data/pie.ts": {
|
|
289
289
|
"version": "112e7eefe70adc6e8e3b221a4cb373bd40f04ad2b24bade565181a38bd37ac81",
|
|
@@ -366,8 +366,8 @@
|
|
|
366
366
|
"signature": "e13ca1760c1d894f0cbb054be895f12207ff8a8708be12a18944832c02dd7ab2"
|
|
367
367
|
},
|
|
368
368
|
"../../src/interfaces/components.ts": {
|
|
369
|
-
"version": "
|
|
370
|
-
"signature": "
|
|
369
|
+
"version": "8b229f443a4932bebcaa4dd283276b8f676933cdbfcf6790549323b71c06ff59",
|
|
370
|
+
"signature": "8b229f443a4932bebcaa4dd283276b8f676933cdbfcf6790549323b71c06ff59"
|
|
371
371
|
},
|
|
372
372
|
"../../src/interfaces/axis-scales.ts": {
|
|
373
373
|
"version": "5c97b5470761d6a1efca59cf6e995e6e6e4cd5bb3054bc6b71c366049464ce5d",
|
|
@@ -394,8 +394,8 @@
|
|
|
394
394
|
"signature": "b766c38614e2a36e1261b020b9b9b8ff8ccb7fb756c1de28bbbbcd0f606bd741"
|
|
395
395
|
},
|
|
396
396
|
"../../demo/data/index.ts": {
|
|
397
|
-
"version": "
|
|
398
|
-
"signature": "
|
|
397
|
+
"version": "45a28526a2ee03c138fc0f41c6e99cace68ca349b4401d96bec17492ab1d7150",
|
|
398
|
+
"signature": "879a5b4b65fd57eca81ceaf398b3735e8cd21273b4e0e7228316440a9e03f9ce"
|
|
399
399
|
},
|
|
400
400
|
"../../node_modules/@types/node/globals.d.ts": {
|
|
401
401
|
"version": "6cf62fbc792aa81fa62f99dab5cc692c5315ecd5da09dd35f1ccc82778c4d5bc",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.js","sourceRoot":"","sources":["components.ts"],"names":[],"mappings":"","sourcesContent":["import {\n\tLayoutGrowth,\n\tLegendPositions,\n\tAlignments,\n\tToolbarControlTypes,\n\tZoomBarTypes,\n} from './enums';\nimport { Component } from '../components/component';\nimport { TruncationOptions } from './truncation';\n\n/**\n * customize the overlay contents\n */\nexport interface LayoutComponentChild {\n\tid: string;\n\t/**\n\t * the component that'll be rendered inside layout child\n\t */\n\tcomponents: Component[];\n\t/**\n\t * size of the layout child\n\t */\n\tsize?: number;\n\t/**\n\t * how the layout child will grow or shrink in x & y directions\n\t */\n\tgrowth?: {\n\t\tx: LayoutGrowth;\n\t\ty: LayoutGrowth;\n\t};\n}\n\n/**\n * customize the legend component\n */\nexport interface LegendOptions {\n\tenabled?: boolean;\n\tposition?: LegendPositions;\n\t/**\n\t * the clickability of legend items\n\t */\n\tclickable?: boolean;\n\ttruncation?: TruncationOptions;\n\talignment?: Alignments;\n\torder?: string[];\n}\n\nexport interface TooltipOptions {\n\t/**\n\t * enable or disable tooltip\n\t */\n\tenabled?: boolean;\n\t/**\n\t * a function to format the tooltip values\n\t */\n\tvalueFormatter?: Function;\n\t/**\n\t * custom function for returning tooltip HTML\n\t * passed an array or object with the data, and then the default tooltip markup\n\t */\n\tcustomHTML?: Function;\n\t/**\n\t * customizes the `Group` label shown inside tooltips\n\t */\n\tgroupLabel?: string;\n\t/**\n\t * show total of items\n\t */\n\tshowTotal?: boolean;\n\t/**\n\t * customizes the `Total` label shown inside tooltips\n\t */\n\ttotalLabel?: string;\n\ttruncation?: TruncationOptions;\n}\n\n/**\n * Threshold options\n */\nexport interface ThresholdOptions {\n\t/**\n\t * threshold value\n\t */\n\tvalue: number | Date;\n\t/**\n\t * a function to format the threshold values\n\t */\n\tvalueFormatter?: Function;\n\t/**\n\t * hex threshold line color\n\t */\n\tfillColor: string;\n\t/**\n\t * threshold label\n\t */\n\tlabel: string;\n}\n\nexport interface GridOptions {\n\ty?: {\n\t\tenabled?: boolean;\n\t\tnumberOfTicks?: number;\n\t};\n\tx?: {\n\t\tenabled?: boolean;\n\t\tnumberOfTicks?: number;\n\t};\n}\n\n/**\n * Ruler options\n */\nexport interface RulerOptions {\n\tenabled?: boolean;\n}\n\nexport interface BarOptions {\n\twidth?: number;\n\tmaxWidth?: number;\n}\n\nexport interface StackedBarOptions extends BarOptions {\n\tdividerSize?: number;\n}\n\n/**\n * customize the Toolbar component\n */\nexport interface ToolbarOptions {\n\t/**\n\t * is the toolbar visible or not\n\t */\n\tenabled?: boolean;\n\t/**\n\t * the maximum toolbar controls to be displayed as icons\n\t * controls more than this number will appear in the overflow menu\n\t * minimum is 1. (all toolbar controls are in overflow menu)\n\t */\n\tnumberOfIcons?: number;\n\t/**\n\t * toolbar controls which will be displayed following the array order\n\t */\n\tcontrols?: ToolbarControl[];\n}\n\n/**\n * options for each toolbar control\n */\nexport interface ToolbarControl {\n\t/**\n\t * the toolbar control type\n\t */\n\ttype: ToolbarControlTypes;\n\t/**\n\t * the text to display (if this control is displayed in overflow menu)\n\t * type value will be displayed if text is not available\n\t */\n\ttext?: string;\n}\n\n/**\n * customize the ZoomBars in a chart\n */\nexport interface ZoomBarsOptions {\n\t/**\n\t * a variable to handle default zoom in ratio (0 ~ 1.0)\n\t * ex: shift click zoom in ratio\n\t */\n\tzoomRatio?: number;\n\t/**\n\t * a variable to define the minimum zoom ratio (0 ~ 1.0)\n\t * If ( zoom domain / max domain ) < minZoomRatio, zoom-in functions will be disabled\n\t */\n\tminZoomRatio?: number;\n\t/**\n\t * currently only the top position is supported\n\t */\n\ttop?: ZoomBarOptions;\n\t/**\n\t * whether keep updating range axis in real time while zoom domain is changing\n\t */\n\tupdateRangeAxis?: boolean;\n}\n\n/**\n * customize the ZoomBar component\n */\nexport interface ZoomBarOptions {\n\t/**\n\t * is the zoom-bar visible or not\n\t */\n\tenabled?: boolean;\n\t/**\n\t * is the zoom-bar in loading state\n\t */\n\tloading?: boolean;\n\t/**\n\t * is the zoom-bar in locked state\n\t */\n\tlocked?: boolean;\n\t/**\n\t * whether the zoom bar is showing a slider view or a graph view etc.\n\t */\n\ttype?: ZoomBarTypes;\n\t/**\n\t * an two element array which represents the initial zoom domain\n\t */\n\tinitialZoomDomain?: Object[];\n\t/**\n\t * options related to zoom bar data\n\t */\n\tdata?: Object[];\n}\n"]}
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["components.ts"],"names":[],"mappings":"","sourcesContent":["import {\n\tLayoutGrowth,\n\tLegendPositions,\n\tAlignments,\n\tToolbarControlTypes,\n\tZoomBarTypes,\n} from './enums';\nimport { Component } from '../components/component';\nimport { TruncationOptions } from './truncation';\n\n/**\n * customize the overlay contents\n */\nexport interface LayoutComponentChild {\n\tid: string;\n\t/**\n\t * the component that'll be rendered inside layout child\n\t */\n\tcomponents: Component[];\n\t/**\n\t * size of the layout child\n\t */\n\tsize?: number;\n\t/**\n\t * how the layout child will grow or shrink in x & y directions\n\t */\n\tgrowth?: {\n\t\tx: LayoutGrowth;\n\t\ty: LayoutGrowth;\n\t};\n}\n\n/**\n * customize the legend component\n */\nexport interface LegendOptions {\n\tenabled?: boolean;\n\tposition?: LegendPositions;\n\t/**\n\t * the clickability of legend items\n\t */\n\tclickable?: boolean;\n\ttruncation?: TruncationOptions;\n\talignment?: Alignments;\n\torder?: string[];\n}\n\nexport interface TooltipOptions {\n\t/**\n\t * enable or disable tooltip\n\t */\n\tenabled?: boolean;\n\t/**\n\t * a function to format the tooltip values\n\t */\n\tvalueFormatter?: Function;\n\t/**\n\t * custom function for returning tooltip HTML\n\t * passed an array or object with the data, and then the default tooltip markup\n\t */\n\tcustomHTML?: Function;\n\t/**\n\t * customizes the `Group` label shown inside tooltips\n\t */\n\tgroupLabel?: string;\n\t/**\n\t * show total of items\n\t */\n\tshowTotal?: boolean;\n\t/**\n\t * customizes the `Total` label shown inside tooltips\n\t */\n\ttotalLabel?: string;\n\ttruncation?: TruncationOptions;\n}\n\n/**\n * Threshold options\n */\nexport interface ThresholdOptions {\n\t/**\n\t * threshold value\n\t */\n\tvalue: number | Date;\n\t/**\n\t * a function to format the threshold values\n\t */\n\tvalueFormatter?: Function;\n\t/**\n\t * hex threshold line color\n\t */\n\tfillColor: string;\n\t/**\n\t * threshold label\n\t */\n\tlabel: string;\n}\n\nexport interface GridOptions {\n\ty?: {\n\t\tenabled?: boolean;\n\t\tnumberOfTicks?: number;\n\t\talignWithAxisTicks?: boolean;\n\t};\n\tx?: {\n\t\tenabled?: boolean;\n\t\tnumberOfTicks?: number;\n\t\talignWithAxisTicks?: boolean;\n\t};\n}\n\n/**\n * Ruler options\n */\nexport interface RulerOptions {\n\tenabled?: boolean;\n}\n\nexport interface BarOptions {\n\twidth?: number;\n\tmaxWidth?: number;\n}\n\nexport interface StackedBarOptions extends BarOptions {\n\tdividerSize?: number;\n}\n\n/**\n * customize the Toolbar component\n */\nexport interface ToolbarOptions {\n\t/**\n\t * is the toolbar visible or not\n\t */\n\tenabled?: boolean;\n\t/**\n\t * the maximum toolbar controls to be displayed as icons\n\t * controls more than this number will appear in the overflow menu\n\t * minimum is 1. (all toolbar controls are in overflow menu)\n\t */\n\tnumberOfIcons?: number;\n\t/**\n\t * toolbar controls which will be displayed following the array order\n\t */\n\tcontrols?: ToolbarControl[];\n}\n\n/**\n * options for each toolbar control\n */\nexport interface ToolbarControl {\n\t/**\n\t * the toolbar control type\n\t */\n\ttype: ToolbarControlTypes;\n\t/**\n\t * the text to display (if this control is displayed in overflow menu)\n\t * type value will be displayed if text is not available\n\t */\n\ttext?: string;\n}\n\n/**\n * customize the ZoomBars in a chart\n */\nexport interface ZoomBarsOptions {\n\t/**\n\t * a variable to handle default zoom in ratio (0 ~ 1.0)\n\t * ex: shift click zoom in ratio\n\t */\n\tzoomRatio?: number;\n\t/**\n\t * a variable to define the minimum zoom ratio (0 ~ 1.0)\n\t * If ( zoom domain / max domain ) < minZoomRatio, zoom-in functions will be disabled\n\t */\n\tminZoomRatio?: number;\n\t/**\n\t * currently only the top position is supported\n\t */\n\ttop?: ZoomBarOptions;\n\t/**\n\t * whether keep updating range axis in real time while zoom domain is changing\n\t */\n\tupdateRangeAxis?: boolean;\n}\n\n/**\n * customize the ZoomBar component\n */\nexport interface ZoomBarOptions {\n\t/**\n\t * is the zoom-bar visible or not\n\t */\n\tenabled?: boolean;\n\t/**\n\t * is the zoom-bar in loading state\n\t */\n\tloading?: boolean;\n\t/**\n\t * is the zoom-bar in locked state\n\t */\n\tlocked?: boolean;\n\t/**\n\t * whether the zoom bar is showing a slider view or a graph view etc.\n\t */\n\ttype?: ZoomBarTypes;\n\t/**\n\t * an two element array which represents the initial zoom domain\n\t */\n\tinitialZoomDomain?: Object[];\n\t/**\n\t * options related to zoom bar data\n\t */\n\tdata?: Object[];\n}\n"]}
|
package/package.json
CHANGED
|
@@ -237,10 +237,10 @@ var CartesianScales = /** @class */ (function (_super) {
|
|
|
237
237
|
var mapsTo = axisOptions.mapsTo;
|
|
238
238
|
var value = datum[mapsTo] !== undefined ? datum[mapsTo] : datum;
|
|
239
239
|
var boundedValues = [
|
|
240
|
-
scale(datum
|
|
240
|
+
scale(Tools.getProperty(datum, bounds.upperBoundMapsTo) !== null
|
|
241
241
|
? datum[bounds.upperBoundMapsTo]
|
|
242
242
|
: value),
|
|
243
|
-
scale(datum
|
|
243
|
+
scale(Tools.getProperty(datum, bounds.lowerBoundMapsTo) !== null
|
|
244
244
|
? datum[bounds.lowerBoundMapsTo]
|
|
245
245
|
: value),
|
|
246
246
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scales-cartesian.js","sourceRoot":"","sources":["scales-cartesian.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport * as Configuration from '../configuration';\nimport { Service } from './service';\nimport {\n\tAxisPositions,\n\tCartesianOrientations,\n\tScaleTypes,\n\tThresholdOptions,\n} from '../interfaces';\nimport { Tools } from '../tools';\n\n// D3 Imports\nimport { scaleBand, scaleLinear, scaleTime, scaleLog } from 'd3-scale';\nimport { extent, sum } from 'd3-array';\nimport { map, values } from 'd3-collection';\n\n// Misc\nimport {\n\tdifferenceInYears,\n\taddYears,\n\tsubYears,\n\tdifferenceInMonths,\n\taddMonths,\n\tsubMonths,\n\tdifferenceInDays,\n\taddDays,\n\tsubDays,\n\tdifferenceInHours,\n\taddHours,\n\tsubHours,\n\tdifferenceInMinutes,\n\taddMinutes,\n\tsubMinutes,\n\tdifferenceInSeconds,\n\tsubSeconds,\n\taddSeconds,\n} from 'date-fns';\n\nexport class CartesianScales extends Service {\n\tprotected scaleTypes = {\n\t\ttop: null,\n\t\tright: null,\n\t\tbottom: null,\n\t\tleft: null,\n\t};\n\n\tprotected scales = {\n\t\ttop: null,\n\t\tright: null,\n\t\tbottom: null,\n\t\tleft: null,\n\t};\n\n\tprotected domainAxisPosition: AxisPositions;\n\tprotected rangeAxisPosition: AxisPositions;\n\tprotected secondaryDomainAxisPosition: AxisPositions;\n\tprotected secondaryRangeAxisPosition: AxisPositions;\n\n\tprotected dualAxes: Boolean;\n\n\tprotected orientation: CartesianOrientations;\n\n\tgetDomainAxisPosition({ datum = null } = {}) {\n\t\tif (this.dualAxes && datum) {\n\t\t\tconst options = this.model.getOptions();\n\t\t\tconst { groupMapsTo } = options.data;\n\t\t\tconst axesOptions = Tools.getProperty(\n\t\t\t\toptions,\n\t\t\t\t'axes',\n\t\t\t\tthis.secondaryDomainAxisPosition\n\t\t\t);\n\t\t\tconst dataset = datum[groupMapsTo];\n\t\t\tif (\n\t\t\t\taxesOptions?.correspondingDatasets &&\n\t\t\t\taxesOptions.correspondingDatasets.includes(dataset)\n\t\t\t) {\n\t\t\t\treturn this.secondaryDomainAxisPosition;\n\t\t\t}\n\t\t}\n\t\treturn this.domainAxisPosition;\n\t}\n\n\tgetRangeAxisPosition({ datum = null, groups = null } = {}) {\n\t\tif (this.dualAxes) {\n\t\t\tconst options = this.model.getOptions();\n\t\t\tconst { groupMapsTo } = options.data;\n\t\t\tconst axisOptions = Tools.getProperty(\n\t\t\t\toptions,\n\t\t\t\t'axes',\n\t\t\t\tthis.secondaryRangeAxisPosition\n\t\t\t);\n\t\t\tlet dataset;\n\t\t\tif (datum !== null) {\n\t\t\t\tdataset = datum[groupMapsTo];\n\t\t\t} else if (groups && groups.length > 0) {\n\t\t\t\tdataset = groups[0];\n\t\t\t}\n\t\t\tif (\n\t\t\t\taxisOptions?.correspondingDatasets &&\n\t\t\t\taxisOptions.correspondingDatasets.includes(dataset)\n\t\t\t) {\n\t\t\t\treturn this.secondaryRangeAxisPosition;\n\t\t\t}\n\t\t}\n\t\treturn this.rangeAxisPosition;\n\t}\n\n\tgetAxisOptions(position: AxisPositions) {\n\t\treturn Tools.getProperty(this.model.getOptions(), 'axes', position);\n\t}\n\n\tgetDomainAxisOptions() {\n\t\tconst domainAxisPosition = this.getDomainAxisPosition();\n\t\treturn this.getAxisOptions(domainAxisPosition);\n\t}\n\n\tgetRangeAxisOptions() {\n\t\tconst rangeAxisPosition = this.getRangeAxisPosition();\n\t\treturn this.getAxisOptions(rangeAxisPosition);\n\t}\n\n\tupdate(animate = true) {\n\t\tthis.determineAxisDuality();\n\t\tthis.findDomainAndRangeAxes();\n\t\tthis.determineOrientation();\n\t\tconst axisPositions = Object.keys(AxisPositions).map(\n\t\t\t(axisPositionKey) => AxisPositions[axisPositionKey]\n\t\t);\n\t\taxisPositions.forEach((axisPosition) => {\n\t\t\tthis.scales[axisPosition] = this.createScale(axisPosition);\n\t\t});\n\t}\n\n\tfindDomainAndRangeAxes() {\n\t\t// find main axes between (left & right) && (bottom & top)\n\t\tconst verticalAxesPositions = this.findVerticalAxesPositions();\n\t\tconst horizontalAxesPositions = this.findHorizontalAxesPositions();\n\n\t\t// Now we have horizontal & vertical main axes to choose domain & range axes from\n\t\tconst domainAndRangeAxesPositions = this.findDomainAndRangeAxesPositions(\n\t\t\tverticalAxesPositions,\n\t\t\thorizontalAxesPositions\n\t\t);\n\n\t\tthis.domainAxisPosition =\n\t\t\tdomainAndRangeAxesPositions.primaryDomainAxisPosition;\n\t\tthis.rangeAxisPosition =\n\t\t\tdomainAndRangeAxesPositions.primaryRangeAxisPosition;\n\n\t\tif (this.isDualAxes()) {\n\t\t\tthis.secondaryDomainAxisPosition =\n\t\t\t\tdomainAndRangeAxesPositions.secondaryDomainAxisPosition;\n\t\t\tthis.secondaryRangeAxisPosition =\n\t\t\t\tdomainAndRangeAxesPositions.secondaryRangeAxisPosition;\n\t\t}\n\t}\n\n\tdetermineOrientation() {\n\t\tif (\n\t\t\t(this.rangeAxisPosition === AxisPositions.LEFT ||\n\t\t\t\tthis.rangeAxisPosition === AxisPositions.RIGHT) &&\n\t\t\t(this.domainAxisPosition === AxisPositions.BOTTOM ||\n\t\t\t\tthis.domainAxisPosition === AxisPositions.TOP)\n\t\t) {\n\t\t\tthis.orientation = CartesianOrientations.VERTICAL;\n\t\t} else {\n\t\t\tthis.orientation = CartesianOrientations.HORIZONTAL;\n\t\t}\n\t}\n\n\tisDualAxes() {\n\t\treturn this.dualAxes;\n\t}\n\n\t// if any of the axes objects have correspondingDatasets [] asserted we flag the chart as dual axes\n\t// it does not count as dual axes if it just has another axis turned on but is not actually using it to map a dataset\n\tdetermineAxisDuality() {\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\n\t\tif (\n\t\t\t(axesOptions[AxisPositions.LEFT]?.correspondingDatasets &&\n\t\t\t\taxesOptions[AxisPositions.RIGHT]) ||\n\t\t\t(axesOptions[AxisPositions.RIGHT]?.correspondingDatasets &&\n\t\t\t\taxesOptions[AxisPositions.LEFT]) ||\n\t\t\t(axesOptions[AxisPositions.TOP]?.correspondingDatasets &&\n\t\t\t\taxesOptions[AxisPositions.BOTTOM]) ||\n\t\t\t(axesOptions[AxisPositions.BOTTOM]?.correspondingDatasets &&\n\t\t\t\taxesOptions[AxisPositions.TOP])\n\t\t) {\n\t\t\tthis.dualAxes = true;\n\t\t}\n\t}\n\n\tgetOrientation() {\n\t\treturn this.orientation;\n\t}\n\n\tgetScaleByPosition(axisPosition: AxisPositions) {\n\t\treturn this.scales[axisPosition];\n\t}\n\n\tgetScaleTypeByPosition(axisPosition: AxisPositions) {\n\t\treturn this.scaleTypes[axisPosition];\n\t}\n\n\tgetDomainAxisScaleType() {\n\t\tconst domainAxisPosition = this.getDomainAxisPosition();\n\t\treturn this.getScaleTypeByPosition(domainAxisPosition);\n\t}\n\n\tgetRangeAxisScaleType() {\n\t\tconst rangeAxisPosition = this.getRangeAxisPosition();\n\t\treturn this.getScaleTypeByPosition(rangeAxisPosition);\n\t}\n\n\tgetDomainScale() {\n\t\treturn this.scales[this.domainAxisPosition];\n\t}\n\n\tgetRangeScale() {\n\t\treturn this.scales[this.rangeAxisPosition];\n\t}\n\n\t// Find the main x-axis out of the 2 x-axis on the chart (when 2D axis is used)\n\tgetMainXAxisPosition() {\n\t\tconst possibleXAxisPositions = [\n\t\t\tAxisPositions.BOTTOM,\n\t\t\tAxisPositions.TOP,\n\t\t];\n\n\t\treturn [this.domainAxisPosition, this.rangeAxisPosition].find(\n\t\t\t(position) => possibleXAxisPositions.indexOf(position) > -1\n\t\t);\n\t}\n\n\t// Find the main y-axis out of the 2 y-axis on the chart (when 2D axis is used)\n\tgetMainYAxisPosition() {\n\t\tconst possibleYAxisPositions = [\n\t\t\tAxisPositions.LEFT,\n\t\t\tAxisPositions.RIGHT,\n\t\t];\n\n\t\treturn [this.domainAxisPosition, this.rangeAxisPosition].find(\n\t\t\t(position) => possibleYAxisPositions.indexOf(position) > -1\n\t\t);\n\t}\n\n\tgetMainXScale() {\n\t\treturn this.scales[this.getMainXAxisPosition()];\n\t}\n\n\tgetMainYScale() {\n\t\treturn this.scales[this.getMainYAxisPosition()];\n\t}\n\n\tgetValueFromScale(\n\t\tscale: any,\n\t\tscaleType: ScaleTypes,\n\t\taxisPosition: AxisPositions,\n\t\tdatum: any,\n\t\tindex?: number\n\t) {\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\t\tconst axisOptions = axesOptions[axisPosition];\n\t\tconst { mapsTo } = axisOptions;\n\t\tconst value = datum[mapsTo] !== undefined ? datum[mapsTo] : datum;\n\t\tlet scaledValue;\n\t\tswitch (scaleType) {\n\t\t\tcase ScaleTypes.LABELS:\n\t\t\t\tscaledValue = scale(value) + scale.step() / 2;\n\t\t\t\tbreak;\n\t\t\tcase ScaleTypes.TIME:\n\t\t\t\tscaledValue = scale(new Date(value));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tscaledValue = scale(value);\n\t\t}\n\t\treturn scaledValue;\n\t}\n\n\tgetBoundedScaledValues(datum: any, index?: number) {\n\t\tconst { bounds } = this.model.getOptions();\n\t\tconst scale = this.scales[this.rangeAxisPosition];\n\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\t\tconst axisOptions = axesOptions[this.rangeAxisPosition];\n\t\tconst { mapsTo } = axisOptions;\n\t\tconst value = datum[mapsTo] !== undefined ? datum[mapsTo] : datum;\n\n\t\tconst boundedValues = [\n\t\t\tscale(\n\t\t\t\tdatum[bounds.upperBoundMapsTo]\n\t\t\t\t\t? datum[bounds.upperBoundMapsTo]\n\t\t\t\t\t: value\n\t\t\t),\n\t\t\tscale(\n\t\t\t\tdatum[bounds.lowerBoundMapsTo]\n\t\t\t\t\t? datum[bounds.lowerBoundMapsTo]\n\t\t\t\t\t: value\n\t\t\t),\n\t\t];\n\n\t\treturn boundedValues;\n\t}\n\n\tgetValueThroughAxisPosition(\n\t\taxisPosition: AxisPositions,\n\t\tdatum: any,\n\t\tindex?: number\n\t) {\n\t\tconst scaleType = this.scaleTypes[axisPosition];\n\t\tconst scale = this.scales[axisPosition];\n\n\t\treturn this.getValueFromScale(\n\t\t\tscale,\n\t\t\tscaleType,\n\t\t\taxisPosition,\n\t\t\tdatum,\n\t\t\tindex\n\t\t);\n\t}\n\n\tgetDomainValue(d, i) {\n\t\tconst axisPosition = this.getDomainAxisPosition({ datum: d });\n\t\treturn this.getValueThroughAxisPosition(axisPosition, d, i);\n\t}\n\n\tgetRangeValue(d, i) {\n\t\tconst axisPosition = this.getRangeAxisPosition({ datum: d });\n\t\treturn this.getValueThroughAxisPosition(axisPosition, d, i);\n\t}\n\n\tgetMainXScaleType() {\n\t\treturn this.getScaleTypeByPosition(this.getMainXAxisPosition());\n\t}\n\n\tgetMainYScaleType() {\n\t\treturn this.getScaleTypeByPosition(this.getMainYAxisPosition());\n\t}\n\n\tgetDomainIdentifier(datum?: any) {\n\t\tconst options = this.model.getOptions();\n\t\treturn Tools.getProperty(\n\t\t\toptions,\n\t\t\t'axes',\n\t\t\tthis.getDomainAxisPosition({ datum: datum }),\n\t\t\t'mapsTo'\n\t\t);\n\t}\n\n\tgetRangeIdentifier(datum?: any) {\n\t\tconst options = this.model.getOptions();\n\t\treturn Tools.getProperty(\n\t\t\toptions,\n\t\t\t'axes',\n\t\t\tthis.getRangeAxisPosition({ datum: datum }),\n\t\t\t'mapsTo'\n\t\t);\n\t}\n\n\textendsDomain(axisPosition: AxisPositions, domain: any) {\n\t\tconst options = this.model.getOptions();\n\t\tconst axisOptions = Tools.getProperty(options, 'axes', axisPosition);\n\t\tif (axisOptions.scaleType === ScaleTypes.TIME) {\n\t\t\tconst spaceToAddToEdges = Tools.getProperty(\n\t\t\t\toptions,\n\t\t\t\t'timeScale',\n\t\t\t\t'addSpaceOnEdges'\n\t\t\t);\n\t\t\treturn addSpacingToTimeDomain(domain, spaceToAddToEdges);\n\t\t} else {\n\t\t\treturn addSpacingToContinuousDomain(\n\t\t\t\tdomain,\n\t\t\t\tConfiguration.axis.paddingRatio\n\t\t\t);\n\t\t}\n\t}\n\n\tprotected findVerticalAxesPositions() {\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\t\tconst dualAxes = this.isDualAxes();\n\n\t\t// If right axis has been specified as `main`\n\t\tif (\n\t\t\t(Tools.getProperty(axesOptions, AxisPositions.LEFT) === null &&\n\t\t\t\tTools.getProperty(axesOptions, AxisPositions.RIGHT) !== null) ||\n\t\t\tTools.getProperty(axesOptions, AxisPositions.RIGHT, 'main') ===\n\t\t\t\ttrue ||\n\t\t\t(dualAxes &&\n\t\t\t\tTools.getProperty(\n\t\t\t\t\taxesOptions,\n\t\t\t\t\tAxisPositions.LEFT,\n\t\t\t\t\t'correspondingDatasets'\n\t\t\t\t))\n\t\t) {\n\t\t\treturn {\n\t\t\t\tprimary: AxisPositions.RIGHT,\n\t\t\t\tsecondary: AxisPositions.LEFT,\n\t\t\t};\n\t\t}\n\n\t\treturn { primary: AxisPositions.LEFT, secondary: AxisPositions.RIGHT };\n\t}\n\n\tprotected findHorizontalAxesPositions() {\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\t\tconst dualAxes = this.isDualAxes();\n\n\t\t// If top axis has been specified as `main`\n\t\tif (\n\t\t\t(Tools.getProperty(axesOptions, AxisPositions.BOTTOM) === null &&\n\t\t\t\tTools.getProperty(axesOptions, AxisPositions.TOP) !== null) ||\n\t\t\tTools.getProperty(axesOptions, AxisPositions.TOP, 'main') ===\n\t\t\t\ttrue ||\n\t\t\t(dualAxes &&\n\t\t\t\tTools.getProperty(\n\t\t\t\t\taxesOptions,\n\t\t\t\t\tAxisPositions.BOTTOM,\n\t\t\t\t\t'correspondingDatasets'\n\t\t\t\t))\n\t\t) {\n\t\t\treturn {\n\t\t\t\tprimary: AxisPositions.TOP,\n\t\t\t\tsecondary: AxisPositions.BOTTOM,\n\t\t\t};\n\t\t}\n\n\t\treturn { primary: AxisPositions.BOTTOM, secondary: AxisPositions.TOP };\n\t}\n\n\tprotected findDomainAndRangeAxesPositions(\n\t\tverticalAxesPositions,\n\t\thorizontalAxesPositions\n\t) {\n\t\tconst options = this.model.getOptions();\n\n\t\tconst mainVerticalAxisOptions = Tools.getProperty(\n\t\t\toptions,\n\t\t\t'axes',\n\t\t\tverticalAxesPositions.primary\n\t\t);\n\t\tconst mainHorizontalAxisOptions = Tools.getProperty(\n\t\t\toptions,\n\t\t\t'axes',\n\t\t\thorizontalAxesPositions.primary\n\t\t);\n\n\t\tconst mainVerticalScaleType =\n\t\t\tmainVerticalAxisOptions.scaleType || ScaleTypes.LINEAR;\n\t\tconst mainHorizontalScaleType =\n\t\t\tmainHorizontalAxisOptions.scaleType || ScaleTypes.LINEAR;\n\n\t\tconst result = {\n\t\t\tprimaryDomainAxisPosition: null,\n\t\t\tsecondaryDomainAxisPosition: null,\n\t\t\tprimaryRangeAxisPosition: null,\n\t\t\tsecondaryRangeAxisPosition: null,\n\t\t};\n\n\t\t// assign to to be a vertical chart by default\n\t\tresult.primaryDomainAxisPosition = horizontalAxesPositions.primary;\n\t\tresult.primaryRangeAxisPosition = verticalAxesPositions.primary;\n\t\t// secondary axes\n\t\tresult.secondaryDomainAxisPosition = horizontalAxesPositions.secondary;\n\t\tresult.secondaryRangeAxisPosition = verticalAxesPositions.secondary;\n\n\t\t// if neither the horizontal axes are label or time\n\t\t// and atleast one of the main vertical ones are labels or time then it should be horizontal\n\t\tif (\n\t\t\t(!(\n\t\t\t\tmainHorizontalScaleType === ScaleTypes.LABELS ||\n\t\t\t\tmainHorizontalScaleType === ScaleTypes.TIME\n\t\t\t) &&\n\t\t\t\tmainVerticalScaleType === ScaleTypes.LABELS) ||\n\t\t\tmainVerticalScaleType === ScaleTypes.TIME\n\t\t) {\n\t\t\tresult.primaryDomainAxisPosition = verticalAxesPositions.primary;\n\t\t\tresult.primaryRangeAxisPosition = horizontalAxesPositions.primary;\n\t\t\t// secondary axes\n\t\t\tresult.secondaryDomainAxisPosition =\n\t\t\t\tverticalAxesPositions.secondary;\n\t\t\tresult.secondaryRangeAxisPosition =\n\t\t\t\thorizontalAxesPositions.secondary;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tprotected getScaleDomain(axisPosition: AxisPositions) {\n\t\tconst options = this.model.getOptions();\n\t\tconst axisOptions = Tools.getProperty(options, 'axes', axisPosition);\n\t\tconst bounds = Tools.getProperty(options, 'bounds');\n\t\tconst { includeZero } = axisOptions;\n\t\tconst scaleType =\n\t\t\tTools.getProperty(axisOptions, 'scaleType') || ScaleTypes.LINEAR;\n\n\t\tif (this.model.isDataEmpty()) {\n\t\t\treturn [];\n\t\t}\n\n\t\tconst displayData = this.model.getDisplayData();\n\t\tconst { mapsTo, percentage } = axisOptions;\n\n\t\t// If domain is specified return that domain\n\t\tif (axisOptions.domain) {\n\t\t\tif (scaleType === ScaleTypes.LABELS) {\n\t\t\t\treturn axisOptions.domain;\n\t\t\t} else if (scaleType === ScaleTypes.TIME) {\n\t\t\t\taxisOptions.domain = axisOptions.domain.map((d) =>\n\t\t\t\t\td.getTime === undefined ? new Date(d) : d\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn this.extendsDomain(axisPosition, axisOptions.domain);\n\t\t}\n\n\t\t// Return [0, 100] for percentage axis scale\n\t\tif (percentage) {\n\t\t\treturn [0, 100];\n\t\t}\n\n\t\t// If scale is a LABELS scale, return some labels as the domain\n\t\tif (axisOptions && scaleType === ScaleTypes.LABELS) {\n\t\t\t// Get unique values\n\t\t\treturn map(displayData, (d) => d[mapsTo]).keys();\n\t\t}\n\n\t\t// Get the extent of the domain\n\t\tlet domain;\n\t\tlet allDataValues;\n\t\tconst dataGroupNames = this.model.getDataGroupNames();\n\n\t\tif (scaleType === ScaleTypes.TIME) {\n\t\t\tallDataValues = displayData.map(\n\t\t\t\t(datum) => +new Date(datum[mapsTo])\n\t\t\t);\n\t\t} else if (bounds && options.axes) {\n\t\t\tallDataValues = [];\n\n\t\t\tdisplayData.forEach((datum) => {\n\t\t\t\tallDataValues.push(datum[mapsTo]);\n\t\t\t\tif (datum[bounds.upperBoundMapsTo]) {\n\t\t\t\t\tallDataValues.push(datum[bounds.upperBoundMapsTo]);\n\t\t\t\t}\n\t\t\t\tif (datum[bounds.lowerBoundMapsTo]) {\n\t\t\t\t\tallDataValues.push(datum[bounds.lowerBoundMapsTo]);\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (\n\t\t\taxisOptions.stacked === true &&\n\t\t\tdataGroupNames &&\n\t\t\taxisPosition === this.getRangeAxisPosition()\n\t\t) {\n\t\t\tconst { groupMapsTo } = options.data;\n\t\t\tconst dataValuesGroupedByKeys = this.model.getDataValuesGroupedByKeys(\n\t\t\t\tdataGroupNames\n\t\t\t);\n\t\t\tconst nonStackedGroupsData = displayData.filter(\n\t\t\t\t(datum) => !dataGroupNames.includes(datum[groupMapsTo])\n\t\t\t);\n\t\t\tconst stackedValues = dataValuesGroupedByKeys.map((dataValues) => {\n\t\t\t\tconst { sharedStackKey, ...numericalValues } = dataValues;\n\t\t\t\treturn sum(values(numericalValues) as number[]);\n\t\t\t});\n\n\t\t\tallDataValues = [\n\t\t\t\t...stackedValues,\n\t\t\t\t...nonStackedGroupsData.map((datum) => datum[mapsTo]),\n\t\t\t];\n\t\t} else {\n\t\t\tallDataValues = displayData.map((datum) => datum[mapsTo]);\n\t\t}\n\n\t\tif (scaleType !== ScaleTypes.TIME && includeZero) {\n\t\t\tallDataValues.push(0);\n\t\t}\n\n\t\tdomain = extent(allDataValues);\n\t\tdomain = this.extendsDomain(axisPosition, domain);\n\n\t\treturn domain;\n\t}\n\n\tprotected createScale(axisPosition: AxisPositions) {\n\t\tconst options = this.model.getOptions();\n\t\tconst axisOptions = Tools.getProperty(options, 'axes', axisPosition);\n\n\t\tif (!axisOptions) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst scaleType =\n\t\t\tTools.getProperty(axisOptions, 'scaleType') || ScaleTypes.LINEAR;\n\t\tthis.scaleTypes[axisPosition] = scaleType;\n\n\t\tlet scale;\n\t\tif (scaleType === ScaleTypes.TIME) {\n\t\t\tscale = scaleTime();\n\t\t} else if (scaleType === ScaleTypes.LOG) {\n\t\t\tscale = scaleLog().base(axisOptions.base || 10);\n\t\t} else if (scaleType === ScaleTypes.LABELS) {\n\t\t\tscale = scaleBand();\n\t\t} else {\n\t\t\tscale = scaleLinear();\n\t\t}\n\n\t\tscale.domain(this.getScaleDomain(axisPosition));\n\n\t\treturn scale;\n\t}\n\n\tprotected getHighestDomainThreshold(): null | {\n\t\tthreshold: ThresholdOptions;\n\t\tscaleValue: number;\n\t} {\n\t\tconst axesOptions = Tools.getProperty(this.model.getOptions(), 'axes');\n\t\tconst domainAxisPosition = this.getDomainAxisPosition();\n\n\t\tconst { thresholds } = axesOptions[domainAxisPosition];\n\n\t\tif (!thresholds) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst domainScale = this.getDomainScale();\n\t\t// Find the highest threshold for the domain\n\t\tconst highestThreshold = thresholds.sort(\n\t\t\t(a, b) => b.value - a.value\n\t\t)[0];\n\n\t\tconst scaleType = this.getScaleTypeByPosition(domainAxisPosition);\n\t\tif (\n\t\t\tscaleType === ScaleTypes.TIME &&\n\t\t\t(typeof highestThreshold.value === 'string' ||\n\t\t\t\thighestThreshold.value.getTime === undefined)\n\t\t) {\n\t\t\thighestThreshold.value = new Date(highestThreshold.value);\n\t\t}\n\n\t\treturn {\n\t\t\tthreshold: highestThreshold,\n\t\t\tscaleValue: domainScale(highestThreshold.value),\n\t\t};\n\t}\n\n\tprotected getHighestRangeThreshold(): null | {\n\t\tthreshold: ThresholdOptions;\n\t\tscaleValue: number;\n\t} {\n\t\tconst axesOptions = Tools.getProperty(this.model.getOptions(), 'axes');\n\t\tconst rangeAxisPosition = this.getRangeAxisPosition();\n\n\t\tconst { thresholds } = axesOptions[rangeAxisPosition];\n\n\t\tif (!thresholds) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst rangeScale = this.getRangeScale();\n\t\t// Find the highest threshold for the range\n\t\tconst highestThreshold = thresholds.sort(\n\t\t\t(a, b) => b.value - a.value\n\t\t)[0];\n\n\t\treturn {\n\t\t\tthreshold: highestThreshold,\n\t\t\tscaleValue: rangeScale(highestThreshold.value),\n\t\t};\n\t}\n}\n\nfunction addSpacingToTimeDomain(domain: any, spaceToAddToEdges: number) {\n\tconst startDate = new Date(domain[0]);\n\tconst endDate = new Date(domain[1]);\n\n\tif (differenceInYears(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubYears(startDate, spaceToAddToEdges),\n\t\t\taddYears(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInMonths(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubMonths(startDate, spaceToAddToEdges),\n\t\t\taddMonths(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInDays(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubDays(startDate, spaceToAddToEdges),\n\t\t\taddDays(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInHours(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubHours(startDate, spaceToAddToEdges),\n\t\t\taddHours(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInMinutes(endDate, startDate) > 30) {\n\t\treturn [\n\t\t\tsubMinutes(startDate, spaceToAddToEdges * 30),\n\t\t\taddMinutes(endDate, spaceToAddToEdges * 30),\n\t\t];\n\t}\n\n\tif (differenceInMinutes(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubMinutes(startDate, spaceToAddToEdges),\n\t\t\taddMinutes(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInSeconds(endDate, startDate) > 15) {\n\t\treturn [\n\t\t\tsubSeconds(startDate, spaceToAddToEdges * 15),\n\t\t\taddSeconds(endDate, spaceToAddToEdges * 15),\n\t\t];\n\t}\n\n\tif (differenceInSeconds(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubSeconds(startDate, spaceToAddToEdges),\n\t\t\taddSeconds(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\treturn [startDate, endDate];\n}\n\nfunction addSpacingToContinuousDomain(\n\t[lower, upper]: number[],\n\tpaddingRatio: number\n) {\n\tconst domainLength = upper - lower;\n\tconst padding = domainLength * paddingRatio;\n\n\t// If padding crosses 0, keep 0 as new upper bound\n\tconst newUpper = upper <= 0 && upper + padding > 0 ? 0 : upper + padding;\n\t// If padding crosses 0, keep 0 as new lower bound\n\tconst newLower = lower >= 0 && lower - padding < 0 ? 0 : lower - padding;\n\n\treturn [newLower, newUpper];\n}\n"]}
|
|
1
|
+
{"version":3,"file":"scales-cartesian.js","sourceRoot":"","sources":["scales-cartesian.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport * as Configuration from '../configuration';\nimport { Service } from './service';\nimport {\n\tAxisPositions,\n\tCartesianOrientations,\n\tScaleTypes,\n\tThresholdOptions,\n} from '../interfaces';\nimport { Tools } from '../tools';\n\n// D3 Imports\nimport { scaleBand, scaleLinear, scaleTime, scaleLog } from 'd3-scale';\nimport { extent, sum } from 'd3-array';\nimport { map, values } from 'd3-collection';\n\n// Misc\nimport {\n\tdifferenceInYears,\n\taddYears,\n\tsubYears,\n\tdifferenceInMonths,\n\taddMonths,\n\tsubMonths,\n\tdifferenceInDays,\n\taddDays,\n\tsubDays,\n\tdifferenceInHours,\n\taddHours,\n\tsubHours,\n\tdifferenceInMinutes,\n\taddMinutes,\n\tsubMinutes,\n\tdifferenceInSeconds,\n\tsubSeconds,\n\taddSeconds,\n} from 'date-fns';\n\nexport class CartesianScales extends Service {\n\tprotected scaleTypes = {\n\t\ttop: null,\n\t\tright: null,\n\t\tbottom: null,\n\t\tleft: null,\n\t};\n\n\tprotected scales = {\n\t\ttop: null,\n\t\tright: null,\n\t\tbottom: null,\n\t\tleft: null,\n\t};\n\n\tprotected domainAxisPosition: AxisPositions;\n\tprotected rangeAxisPosition: AxisPositions;\n\tprotected secondaryDomainAxisPosition: AxisPositions;\n\tprotected secondaryRangeAxisPosition: AxisPositions;\n\n\tprotected dualAxes: Boolean;\n\n\tprotected orientation: CartesianOrientations;\n\n\tgetDomainAxisPosition({ datum = null } = {}) {\n\t\tif (this.dualAxes && datum) {\n\t\t\tconst options = this.model.getOptions();\n\t\t\tconst { groupMapsTo } = options.data;\n\t\t\tconst axesOptions = Tools.getProperty(\n\t\t\t\toptions,\n\t\t\t\t'axes',\n\t\t\t\tthis.secondaryDomainAxisPosition\n\t\t\t);\n\t\t\tconst dataset = datum[groupMapsTo];\n\t\t\tif (\n\t\t\t\taxesOptions?.correspondingDatasets &&\n\t\t\t\taxesOptions.correspondingDatasets.includes(dataset)\n\t\t\t) {\n\t\t\t\treturn this.secondaryDomainAxisPosition;\n\t\t\t}\n\t\t}\n\t\treturn this.domainAxisPosition;\n\t}\n\n\tgetRangeAxisPosition({ datum = null, groups = null } = {}) {\n\t\tif (this.dualAxes) {\n\t\t\tconst options = this.model.getOptions();\n\t\t\tconst { groupMapsTo } = options.data;\n\t\t\tconst axisOptions = Tools.getProperty(\n\t\t\t\toptions,\n\t\t\t\t'axes',\n\t\t\t\tthis.secondaryRangeAxisPosition\n\t\t\t);\n\t\t\tlet dataset;\n\t\t\tif (datum !== null) {\n\t\t\t\tdataset = datum[groupMapsTo];\n\t\t\t} else if (groups && groups.length > 0) {\n\t\t\t\tdataset = groups[0];\n\t\t\t}\n\t\t\tif (\n\t\t\t\taxisOptions?.correspondingDatasets &&\n\t\t\t\taxisOptions.correspondingDatasets.includes(dataset)\n\t\t\t) {\n\t\t\t\treturn this.secondaryRangeAxisPosition;\n\t\t\t}\n\t\t}\n\t\treturn this.rangeAxisPosition;\n\t}\n\n\tgetAxisOptions(position: AxisPositions) {\n\t\treturn Tools.getProperty(this.model.getOptions(), 'axes', position);\n\t}\n\n\tgetDomainAxisOptions() {\n\t\tconst domainAxisPosition = this.getDomainAxisPosition();\n\t\treturn this.getAxisOptions(domainAxisPosition);\n\t}\n\n\tgetRangeAxisOptions() {\n\t\tconst rangeAxisPosition = this.getRangeAxisPosition();\n\t\treturn this.getAxisOptions(rangeAxisPosition);\n\t}\n\n\tupdate(animate = true) {\n\t\tthis.determineAxisDuality();\n\t\tthis.findDomainAndRangeAxes();\n\t\tthis.determineOrientation();\n\t\tconst axisPositions = Object.keys(AxisPositions).map(\n\t\t\t(axisPositionKey) => AxisPositions[axisPositionKey]\n\t\t);\n\t\taxisPositions.forEach((axisPosition) => {\n\t\t\tthis.scales[axisPosition] = this.createScale(axisPosition);\n\t\t});\n\t}\n\n\tfindDomainAndRangeAxes() {\n\t\t// find main axes between (left & right) && (bottom & top)\n\t\tconst verticalAxesPositions = this.findVerticalAxesPositions();\n\t\tconst horizontalAxesPositions = this.findHorizontalAxesPositions();\n\n\t\t// Now we have horizontal & vertical main axes to choose domain & range axes from\n\t\tconst domainAndRangeAxesPositions = this.findDomainAndRangeAxesPositions(\n\t\t\tverticalAxesPositions,\n\t\t\thorizontalAxesPositions\n\t\t);\n\n\t\tthis.domainAxisPosition =\n\t\t\tdomainAndRangeAxesPositions.primaryDomainAxisPosition;\n\t\tthis.rangeAxisPosition =\n\t\t\tdomainAndRangeAxesPositions.primaryRangeAxisPosition;\n\n\t\tif (this.isDualAxes()) {\n\t\t\tthis.secondaryDomainAxisPosition =\n\t\t\t\tdomainAndRangeAxesPositions.secondaryDomainAxisPosition;\n\t\t\tthis.secondaryRangeAxisPosition =\n\t\t\t\tdomainAndRangeAxesPositions.secondaryRangeAxisPosition;\n\t\t}\n\t}\n\n\tdetermineOrientation() {\n\t\tif (\n\t\t\t(this.rangeAxisPosition === AxisPositions.LEFT ||\n\t\t\t\tthis.rangeAxisPosition === AxisPositions.RIGHT) &&\n\t\t\t(this.domainAxisPosition === AxisPositions.BOTTOM ||\n\t\t\t\tthis.domainAxisPosition === AxisPositions.TOP)\n\t\t) {\n\t\t\tthis.orientation = CartesianOrientations.VERTICAL;\n\t\t} else {\n\t\t\tthis.orientation = CartesianOrientations.HORIZONTAL;\n\t\t}\n\t}\n\n\tisDualAxes() {\n\t\treturn this.dualAxes;\n\t}\n\n\t// if any of the axes objects have correspondingDatasets [] asserted we flag the chart as dual axes\n\t// it does not count as dual axes if it just has another axis turned on but is not actually using it to map a dataset\n\tdetermineAxisDuality() {\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\n\t\tif (\n\t\t\t(axesOptions[AxisPositions.LEFT]?.correspondingDatasets &&\n\t\t\t\taxesOptions[AxisPositions.RIGHT]) ||\n\t\t\t(axesOptions[AxisPositions.RIGHT]?.correspondingDatasets &&\n\t\t\t\taxesOptions[AxisPositions.LEFT]) ||\n\t\t\t(axesOptions[AxisPositions.TOP]?.correspondingDatasets &&\n\t\t\t\taxesOptions[AxisPositions.BOTTOM]) ||\n\t\t\t(axesOptions[AxisPositions.BOTTOM]?.correspondingDatasets &&\n\t\t\t\taxesOptions[AxisPositions.TOP])\n\t\t) {\n\t\t\tthis.dualAxes = true;\n\t\t}\n\t}\n\n\tgetOrientation() {\n\t\treturn this.orientation;\n\t}\n\n\tgetScaleByPosition(axisPosition: AxisPositions) {\n\t\treturn this.scales[axisPosition];\n\t}\n\n\tgetScaleTypeByPosition(axisPosition: AxisPositions) {\n\t\treturn this.scaleTypes[axisPosition];\n\t}\n\n\tgetDomainAxisScaleType() {\n\t\tconst domainAxisPosition = this.getDomainAxisPosition();\n\t\treturn this.getScaleTypeByPosition(domainAxisPosition);\n\t}\n\n\tgetRangeAxisScaleType() {\n\t\tconst rangeAxisPosition = this.getRangeAxisPosition();\n\t\treturn this.getScaleTypeByPosition(rangeAxisPosition);\n\t}\n\n\tgetDomainScale() {\n\t\treturn this.scales[this.domainAxisPosition];\n\t}\n\n\tgetRangeScale() {\n\t\treturn this.scales[this.rangeAxisPosition];\n\t}\n\n\t// Find the main x-axis out of the 2 x-axis on the chart (when 2D axis is used)\n\tgetMainXAxisPosition() {\n\t\tconst possibleXAxisPositions = [\n\t\t\tAxisPositions.BOTTOM,\n\t\t\tAxisPositions.TOP,\n\t\t];\n\n\t\treturn [this.domainAxisPosition, this.rangeAxisPosition].find(\n\t\t\t(position) => possibleXAxisPositions.indexOf(position) > -1\n\t\t);\n\t}\n\n\t// Find the main y-axis out of the 2 y-axis on the chart (when 2D axis is used)\n\tgetMainYAxisPosition() {\n\t\tconst possibleYAxisPositions = [\n\t\t\tAxisPositions.LEFT,\n\t\t\tAxisPositions.RIGHT,\n\t\t];\n\n\t\treturn [this.domainAxisPosition, this.rangeAxisPosition].find(\n\t\t\t(position) => possibleYAxisPositions.indexOf(position) > -1\n\t\t);\n\t}\n\n\tgetMainXScale() {\n\t\treturn this.scales[this.getMainXAxisPosition()];\n\t}\n\n\tgetMainYScale() {\n\t\treturn this.scales[this.getMainYAxisPosition()];\n\t}\n\n\tgetValueFromScale(\n\t\tscale: any,\n\t\tscaleType: ScaleTypes,\n\t\taxisPosition: AxisPositions,\n\t\tdatum: any,\n\t\tindex?: number\n\t) {\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\t\tconst axisOptions = axesOptions[axisPosition];\n\t\tconst { mapsTo } = axisOptions;\n\t\tconst value = datum[mapsTo] !== undefined ? datum[mapsTo] : datum;\n\t\tlet scaledValue;\n\t\tswitch (scaleType) {\n\t\t\tcase ScaleTypes.LABELS:\n\t\t\t\tscaledValue = scale(value) + scale.step() / 2;\n\t\t\t\tbreak;\n\t\t\tcase ScaleTypes.TIME:\n\t\t\t\tscaledValue = scale(new Date(value));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tscaledValue = scale(value);\n\t\t}\n\t\treturn scaledValue;\n\t}\n\n\tgetBoundedScaledValues(datum: any, index?: number) {\n\t\tconst { bounds } = this.model.getOptions();\n\t\tconst scale = this.scales[this.rangeAxisPosition];\n\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\t\tconst axisOptions = axesOptions[this.rangeAxisPosition];\n\t\tconst { mapsTo } = axisOptions;\n\t\tconst value = datum[mapsTo] !== undefined ? datum[mapsTo] : datum;\n\n\t\tconst boundedValues = [\n\t\t\tscale(\n\t\t\t\tTools.getProperty(datum, bounds.upperBoundMapsTo) !== null\n\t\t\t\t\t? datum[bounds.upperBoundMapsTo]\n\t\t\t\t\t: value\n\t\t\t),\n\t\t\tscale(\n\t\t\t\tTools.getProperty(datum, bounds.lowerBoundMapsTo) !== null\n\t\t\t\t\t? datum[bounds.lowerBoundMapsTo]\n\t\t\t\t\t: value\n\t\t\t),\n\t\t];\n\n\t\treturn boundedValues;\n\t}\n\n\tgetValueThroughAxisPosition(\n\t\taxisPosition: AxisPositions,\n\t\tdatum: any,\n\t\tindex?: number\n\t) {\n\t\tconst scaleType = this.scaleTypes[axisPosition];\n\t\tconst scale = this.scales[axisPosition];\n\n\t\treturn this.getValueFromScale(\n\t\t\tscale,\n\t\t\tscaleType,\n\t\t\taxisPosition,\n\t\t\tdatum,\n\t\t\tindex\n\t\t);\n\t}\n\n\tgetDomainValue(d, i) {\n\t\tconst axisPosition = this.getDomainAxisPosition({ datum: d });\n\t\treturn this.getValueThroughAxisPosition(axisPosition, d, i);\n\t}\n\n\tgetRangeValue(d, i) {\n\t\tconst axisPosition = this.getRangeAxisPosition({ datum: d });\n\t\treturn this.getValueThroughAxisPosition(axisPosition, d, i);\n\t}\n\n\tgetMainXScaleType() {\n\t\treturn this.getScaleTypeByPosition(this.getMainXAxisPosition());\n\t}\n\n\tgetMainYScaleType() {\n\t\treturn this.getScaleTypeByPosition(this.getMainYAxisPosition());\n\t}\n\n\tgetDomainIdentifier(datum?: any) {\n\t\tconst options = this.model.getOptions();\n\t\treturn Tools.getProperty(\n\t\t\toptions,\n\t\t\t'axes',\n\t\t\tthis.getDomainAxisPosition({ datum: datum }),\n\t\t\t'mapsTo'\n\t\t);\n\t}\n\n\tgetRangeIdentifier(datum?: any) {\n\t\tconst options = this.model.getOptions();\n\t\treturn Tools.getProperty(\n\t\t\toptions,\n\t\t\t'axes',\n\t\t\tthis.getRangeAxisPosition({ datum: datum }),\n\t\t\t'mapsTo'\n\t\t);\n\t}\n\n\textendsDomain(axisPosition: AxisPositions, domain: any) {\n\t\tconst options = this.model.getOptions();\n\t\tconst axisOptions = Tools.getProperty(options, 'axes', axisPosition);\n\t\tif (axisOptions.scaleType === ScaleTypes.TIME) {\n\t\t\tconst spaceToAddToEdges = Tools.getProperty(\n\t\t\t\toptions,\n\t\t\t\t'timeScale',\n\t\t\t\t'addSpaceOnEdges'\n\t\t\t);\n\t\t\treturn addSpacingToTimeDomain(domain, spaceToAddToEdges);\n\t\t} else {\n\t\t\treturn addSpacingToContinuousDomain(\n\t\t\t\tdomain,\n\t\t\t\tConfiguration.axis.paddingRatio\n\t\t\t);\n\t\t}\n\t}\n\n\tprotected findVerticalAxesPositions() {\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\t\tconst dualAxes = this.isDualAxes();\n\n\t\t// If right axis has been specified as `main`\n\t\tif (\n\t\t\t(Tools.getProperty(axesOptions, AxisPositions.LEFT) === null &&\n\t\t\t\tTools.getProperty(axesOptions, AxisPositions.RIGHT) !== null) ||\n\t\t\tTools.getProperty(axesOptions, AxisPositions.RIGHT, 'main') ===\n\t\t\t\ttrue ||\n\t\t\t(dualAxes &&\n\t\t\t\tTools.getProperty(\n\t\t\t\t\taxesOptions,\n\t\t\t\t\tAxisPositions.LEFT,\n\t\t\t\t\t'correspondingDatasets'\n\t\t\t\t))\n\t\t) {\n\t\t\treturn {\n\t\t\t\tprimary: AxisPositions.RIGHT,\n\t\t\t\tsecondary: AxisPositions.LEFT,\n\t\t\t};\n\t\t}\n\n\t\treturn { primary: AxisPositions.LEFT, secondary: AxisPositions.RIGHT };\n\t}\n\n\tprotected findHorizontalAxesPositions() {\n\t\tconst options = this.model.getOptions();\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\t\tconst dualAxes = this.isDualAxes();\n\n\t\t// If top axis has been specified as `main`\n\t\tif (\n\t\t\t(Tools.getProperty(axesOptions, AxisPositions.BOTTOM) === null &&\n\t\t\t\tTools.getProperty(axesOptions, AxisPositions.TOP) !== null) ||\n\t\t\tTools.getProperty(axesOptions, AxisPositions.TOP, 'main') ===\n\t\t\t\ttrue ||\n\t\t\t(dualAxes &&\n\t\t\t\tTools.getProperty(\n\t\t\t\t\taxesOptions,\n\t\t\t\t\tAxisPositions.BOTTOM,\n\t\t\t\t\t'correspondingDatasets'\n\t\t\t\t))\n\t\t) {\n\t\t\treturn {\n\t\t\t\tprimary: AxisPositions.TOP,\n\t\t\t\tsecondary: AxisPositions.BOTTOM,\n\t\t\t};\n\t\t}\n\n\t\treturn { primary: AxisPositions.BOTTOM, secondary: AxisPositions.TOP };\n\t}\n\n\tprotected findDomainAndRangeAxesPositions(\n\t\tverticalAxesPositions,\n\t\thorizontalAxesPositions\n\t) {\n\t\tconst options = this.model.getOptions();\n\n\t\tconst mainVerticalAxisOptions = Tools.getProperty(\n\t\t\toptions,\n\t\t\t'axes',\n\t\t\tverticalAxesPositions.primary\n\t\t);\n\t\tconst mainHorizontalAxisOptions = Tools.getProperty(\n\t\t\toptions,\n\t\t\t'axes',\n\t\t\thorizontalAxesPositions.primary\n\t\t);\n\n\t\tconst mainVerticalScaleType =\n\t\t\tmainVerticalAxisOptions.scaleType || ScaleTypes.LINEAR;\n\t\tconst mainHorizontalScaleType =\n\t\t\tmainHorizontalAxisOptions.scaleType || ScaleTypes.LINEAR;\n\n\t\tconst result = {\n\t\t\tprimaryDomainAxisPosition: null,\n\t\t\tsecondaryDomainAxisPosition: null,\n\t\t\tprimaryRangeAxisPosition: null,\n\t\t\tsecondaryRangeAxisPosition: null,\n\t\t};\n\n\t\t// assign to to be a vertical chart by default\n\t\tresult.primaryDomainAxisPosition = horizontalAxesPositions.primary;\n\t\tresult.primaryRangeAxisPosition = verticalAxesPositions.primary;\n\t\t// secondary axes\n\t\tresult.secondaryDomainAxisPosition = horizontalAxesPositions.secondary;\n\t\tresult.secondaryRangeAxisPosition = verticalAxesPositions.secondary;\n\n\t\t// if neither the horizontal axes are label or time\n\t\t// and atleast one of the main vertical ones are labels or time then it should be horizontal\n\t\tif (\n\t\t\t(!(\n\t\t\t\tmainHorizontalScaleType === ScaleTypes.LABELS ||\n\t\t\t\tmainHorizontalScaleType === ScaleTypes.TIME\n\t\t\t) &&\n\t\t\t\tmainVerticalScaleType === ScaleTypes.LABELS) ||\n\t\t\tmainVerticalScaleType === ScaleTypes.TIME\n\t\t) {\n\t\t\tresult.primaryDomainAxisPosition = verticalAxesPositions.primary;\n\t\t\tresult.primaryRangeAxisPosition = horizontalAxesPositions.primary;\n\t\t\t// secondary axes\n\t\t\tresult.secondaryDomainAxisPosition =\n\t\t\t\tverticalAxesPositions.secondary;\n\t\t\tresult.secondaryRangeAxisPosition =\n\t\t\t\thorizontalAxesPositions.secondary;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tprotected getScaleDomain(axisPosition: AxisPositions) {\n\t\tconst options = this.model.getOptions();\n\t\tconst axisOptions = Tools.getProperty(options, 'axes', axisPosition);\n\t\tconst bounds = Tools.getProperty(options, 'bounds');\n\t\tconst { includeZero } = axisOptions;\n\t\tconst scaleType =\n\t\t\tTools.getProperty(axisOptions, 'scaleType') || ScaleTypes.LINEAR;\n\n\t\tif (this.model.isDataEmpty()) {\n\t\t\treturn [];\n\t\t}\n\n\t\tconst displayData = this.model.getDisplayData();\n\t\tconst { mapsTo, percentage } = axisOptions;\n\n\t\t// If domain is specified return that domain\n\t\tif (axisOptions.domain) {\n\t\t\tif (scaleType === ScaleTypes.LABELS) {\n\t\t\t\treturn axisOptions.domain;\n\t\t\t} else if (scaleType === ScaleTypes.TIME) {\n\t\t\t\taxisOptions.domain = axisOptions.domain.map((d) =>\n\t\t\t\t\td.getTime === undefined ? new Date(d) : d\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn this.extendsDomain(axisPosition, axisOptions.domain);\n\t\t}\n\n\t\t// Return [0, 100] for percentage axis scale\n\t\tif (percentage) {\n\t\t\treturn [0, 100];\n\t\t}\n\n\t\t// If scale is a LABELS scale, return some labels as the domain\n\t\tif (axisOptions && scaleType === ScaleTypes.LABELS) {\n\t\t\t// Get unique values\n\t\t\treturn map(displayData, (d) => d[mapsTo]).keys();\n\t\t}\n\n\t\t// Get the extent of the domain\n\t\tlet domain;\n\t\tlet allDataValues;\n\t\tconst dataGroupNames = this.model.getDataGroupNames();\n\n\t\tif (scaleType === ScaleTypes.TIME) {\n\t\t\tallDataValues = displayData.map(\n\t\t\t\t(datum) => +new Date(datum[mapsTo])\n\t\t\t);\n\t\t} else if (bounds && options.axes) {\n\t\t\tallDataValues = [];\n\n\t\t\tdisplayData.forEach((datum) => {\n\t\t\t\tallDataValues.push(datum[mapsTo]);\n\t\t\t\tif (datum[bounds.upperBoundMapsTo]) {\n\t\t\t\t\tallDataValues.push(datum[bounds.upperBoundMapsTo]);\n\t\t\t\t}\n\t\t\t\tif (datum[bounds.lowerBoundMapsTo]) {\n\t\t\t\t\tallDataValues.push(datum[bounds.lowerBoundMapsTo]);\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (\n\t\t\taxisOptions.stacked === true &&\n\t\t\tdataGroupNames &&\n\t\t\taxisPosition === this.getRangeAxisPosition()\n\t\t) {\n\t\t\tconst { groupMapsTo } = options.data;\n\t\t\tconst dataValuesGroupedByKeys = this.model.getDataValuesGroupedByKeys(\n\t\t\t\tdataGroupNames\n\t\t\t);\n\t\t\tconst nonStackedGroupsData = displayData.filter(\n\t\t\t\t(datum) => !dataGroupNames.includes(datum[groupMapsTo])\n\t\t\t);\n\t\t\tconst stackedValues = dataValuesGroupedByKeys.map((dataValues) => {\n\t\t\t\tconst { sharedStackKey, ...numericalValues } = dataValues;\n\t\t\t\treturn sum(values(numericalValues) as number[]);\n\t\t\t});\n\n\t\t\tallDataValues = [\n\t\t\t\t...stackedValues,\n\t\t\t\t...nonStackedGroupsData.map((datum) => datum[mapsTo]),\n\t\t\t];\n\t\t} else {\n\t\t\tallDataValues = displayData.map((datum) => datum[mapsTo]);\n\t\t}\n\n\t\tif (scaleType !== ScaleTypes.TIME && includeZero) {\n\t\t\tallDataValues.push(0);\n\t\t}\n\n\t\tdomain = extent(allDataValues);\n\t\tdomain = this.extendsDomain(axisPosition, domain);\n\n\t\treturn domain;\n\t}\n\n\tprotected createScale(axisPosition: AxisPositions) {\n\t\tconst options = this.model.getOptions();\n\t\tconst axisOptions = Tools.getProperty(options, 'axes', axisPosition);\n\n\t\tif (!axisOptions) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst scaleType =\n\t\t\tTools.getProperty(axisOptions, 'scaleType') || ScaleTypes.LINEAR;\n\t\tthis.scaleTypes[axisPosition] = scaleType;\n\n\t\tlet scale;\n\t\tif (scaleType === ScaleTypes.TIME) {\n\t\t\tscale = scaleTime();\n\t\t} else if (scaleType === ScaleTypes.LOG) {\n\t\t\tscale = scaleLog().base(axisOptions.base || 10);\n\t\t} else if (scaleType === ScaleTypes.LABELS) {\n\t\t\tscale = scaleBand();\n\t\t} else {\n\t\t\tscale = scaleLinear();\n\t\t}\n\n\t\tscale.domain(this.getScaleDomain(axisPosition));\n\n\t\treturn scale;\n\t}\n\n\tprotected getHighestDomainThreshold(): null | {\n\t\tthreshold: ThresholdOptions;\n\t\tscaleValue: number;\n\t} {\n\t\tconst axesOptions = Tools.getProperty(this.model.getOptions(), 'axes');\n\t\tconst domainAxisPosition = this.getDomainAxisPosition();\n\n\t\tconst { thresholds } = axesOptions[domainAxisPosition];\n\n\t\tif (!thresholds) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst domainScale = this.getDomainScale();\n\t\t// Find the highest threshold for the domain\n\t\tconst highestThreshold = thresholds.sort(\n\t\t\t(a, b) => b.value - a.value\n\t\t)[0];\n\n\t\tconst scaleType = this.getScaleTypeByPosition(domainAxisPosition);\n\t\tif (\n\t\t\tscaleType === ScaleTypes.TIME &&\n\t\t\t(typeof highestThreshold.value === 'string' ||\n\t\t\t\thighestThreshold.value.getTime === undefined)\n\t\t) {\n\t\t\thighestThreshold.value = new Date(highestThreshold.value);\n\t\t}\n\n\t\treturn {\n\t\t\tthreshold: highestThreshold,\n\t\t\tscaleValue: domainScale(highestThreshold.value),\n\t\t};\n\t}\n\n\tprotected getHighestRangeThreshold(): null | {\n\t\tthreshold: ThresholdOptions;\n\t\tscaleValue: number;\n\t} {\n\t\tconst axesOptions = Tools.getProperty(this.model.getOptions(), 'axes');\n\t\tconst rangeAxisPosition = this.getRangeAxisPosition();\n\n\t\tconst { thresholds } = axesOptions[rangeAxisPosition];\n\n\t\tif (!thresholds) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst rangeScale = this.getRangeScale();\n\t\t// Find the highest threshold for the range\n\t\tconst highestThreshold = thresholds.sort(\n\t\t\t(a, b) => b.value - a.value\n\t\t)[0];\n\n\t\treturn {\n\t\t\tthreshold: highestThreshold,\n\t\t\tscaleValue: rangeScale(highestThreshold.value),\n\t\t};\n\t}\n}\n\nfunction addSpacingToTimeDomain(domain: any, spaceToAddToEdges: number) {\n\tconst startDate = new Date(domain[0]);\n\tconst endDate = new Date(domain[1]);\n\n\tif (differenceInYears(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubYears(startDate, spaceToAddToEdges),\n\t\t\taddYears(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInMonths(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubMonths(startDate, spaceToAddToEdges),\n\t\t\taddMonths(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInDays(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubDays(startDate, spaceToAddToEdges),\n\t\t\taddDays(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInHours(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubHours(startDate, spaceToAddToEdges),\n\t\t\taddHours(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInMinutes(endDate, startDate) > 30) {\n\t\treturn [\n\t\t\tsubMinutes(startDate, spaceToAddToEdges * 30),\n\t\t\taddMinutes(endDate, spaceToAddToEdges * 30),\n\t\t];\n\t}\n\n\tif (differenceInMinutes(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubMinutes(startDate, spaceToAddToEdges),\n\t\t\taddMinutes(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\tif (differenceInSeconds(endDate, startDate) > 15) {\n\t\treturn [\n\t\t\tsubSeconds(startDate, spaceToAddToEdges * 15),\n\t\t\taddSeconds(endDate, spaceToAddToEdges * 15),\n\t\t];\n\t}\n\n\tif (differenceInSeconds(endDate, startDate) > 1) {\n\t\treturn [\n\t\t\tsubSeconds(startDate, spaceToAddToEdges),\n\t\t\taddSeconds(endDate, spaceToAddToEdges),\n\t\t];\n\t}\n\n\treturn [startDate, endDate];\n}\n\nfunction addSpacingToContinuousDomain(\n\t[lower, upper]: number[],\n\tpaddingRatio: number\n) {\n\tconst domainLength = upper - lower;\n\tconst padding = domainLength * paddingRatio;\n\n\t// If padding crosses 0, keep 0 as new upper bound\n\tconst newUpper = upper <= 0 && upper + padding > 0 ? 0 : upper + padding;\n\t// If padding crosses 0, keep 0 as new lower bound\n\tconst newLower = lower >= 0 && lower - padding < 0 ? 0 : lower - padding;\n\n\treturn [newLower, newUpper];\n}\n"]}
|