@carbon/charts 0.59.0-beta.0 → 1.0.3
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 +244 -360
- package/LICENSE.md +201 -0
- package/README.md +5 -1
- package/{dist/axis-chart.d.ts → axis-chart.d.ts} +0 -0
- package/{dist/axis-chart.js → axis-chart.js} +0 -0
- package/{dist/axis-chart.js.map → axis-chart.js.map} +0 -0
- package/build/demo/create-codesandbox.d.ts +123 -0
- package/{dist → build}/demo/data/CHART_TYPES.d.ts +0 -0
- package/{dist → build}/demo/data/alluvial.d.ts +0 -0
- package/{dist → build}/demo/data/area.d.ts +0 -0
- package/{dist → build}/demo/data/bar.d.ts +0 -0
- package/{dist → build}/demo/data/boxplot.d.ts +0 -0
- package/{dist → build}/demo/data/bubble.d.ts +0 -0
- package/{dist → build}/demo/data/bullet.d.ts +0 -0
- package/{dist → build}/demo/data/circle-pack.d.ts +0 -0
- package/{dist → build}/demo/data/combo.d.ts +0 -0
- package/{dist → build}/demo/data/donut.d.ts +0 -0
- package/{dist → build}/demo/data/gauge.d.ts +0 -0
- package/{dist → build}/demo/data/heatmap.d.ts +0 -0
- package/{dist → build}/demo/data/high-scale.d.ts +0 -0
- package/{dist → build}/demo/data/hightlight.d.ts +0 -0
- package/{dist → build}/demo/data/histogram.d.ts +0 -0
- package/{dist → build}/demo/data/index.d.ts +0 -0
- package/{dist → build}/demo/data/line.d.ts +0 -0
- package/{dist → build}/demo/data/lollipop.d.ts +0 -0
- package/{dist → build}/demo/data/meter.d.ts +0 -0
- package/{dist → build}/demo/data/pie.d.ts +0 -0
- package/{dist → build}/demo/data/radar.d.ts +0 -0
- package/{dist → build}/demo/data/scatter.d.ts +0 -0
- package/{dist → build}/demo/data/step.d.ts +0 -0
- package/{dist → build}/demo/data/time-series-axis.d.ts +0 -0
- package/{dist → build}/demo/data/toolbar.d.ts +0 -0
- package/{dist → build}/demo/data/tree.d.ts +0 -0
- package/{dist → build}/demo/data/treemap.d.ts +0 -0
- package/{dist → build}/demo/data/wordcloud.d.ts +0 -0
- package/{dist → build}/demo/data/zoom-bar.d.ts +0 -0
- package/build/demo/utils.d.ts +40 -0
- package/build/src/axis-chart.d.ts +10 -0
- package/build/src/chart.d.ts +14 -0
- package/build/src/charts/alluvial.d.ts +8 -0
- package/build/src/charts/area-stacked.d.ts +6 -0
- package/build/src/charts/area.d.ts +6 -0
- package/build/src/charts/bar-grouped.d.ts +6 -0
- package/build/src/charts/bar-simple.d.ts +6 -0
- package/build/src/charts/bar-stacked.d.ts +6 -0
- package/build/src/charts/boxplot.d.ts +8 -0
- package/build/src/charts/bubble.d.ts +6 -0
- package/build/src/charts/bullet.d.ts +8 -0
- package/build/src/charts/circle-pack.d.ts +8 -0
- package/build/src/charts/combo.d.ts +7 -0
- package/build/src/charts/donut.d.ts +6 -0
- package/build/src/charts/gauge.d.ts +8 -0
- package/build/src/charts/heatmap.d.ts +10 -0
- package/build/src/charts/histogram.d.ts +8 -0
- package/{src/charts/index.ts → build/src/charts/index.d.ts} +0 -0
- package/build/src/charts/line.d.ts +6 -0
- package/build/src/charts/lollipop.d.ts +6 -0
- package/build/src/charts/meter.d.ts +8 -0
- package/build/src/charts/pie.d.ts +8 -0
- package/build/src/charts/radar.d.ts +8 -0
- package/build/src/charts/scatter.d.ts +6 -0
- package/build/src/charts/tree.d.ts +8 -0
- package/build/src/charts/treemap.d.ts +8 -0
- package/build/src/charts/wordcloud.d.ts +8 -0
- package/build/src/components/axes/axis.d.ts +24 -0
- package/build/src/components/axes/chart-clip.d.ts +13 -0
- package/build/src/components/axes/grid-brush.d.ts +10 -0
- package/build/src/components/axes/grid.d.ts +22 -0
- package/build/src/components/axes/hover-axis.d.ts +10 -0
- package/build/src/components/axes/ruler-binned.d.ts +7 -0
- package/build/src/components/axes/ruler-stacked.d.ts +4 -0
- package/build/src/components/axes/ruler.d.ts +27 -0
- package/build/src/components/axes/toolbar.d.ts +40 -0
- package/build/src/components/axes/two-dimensional-axes.d.ts +16 -0
- package/build/src/components/axes/zero-line.d.ts +7 -0
- package/build/src/components/axes/zoom-bar.d.ts +28 -0
- package/build/src/components/component.d.ts +28 -0
- package/build/src/components/diagrams/buildPaths.d.ts +39 -0
- package/build/src/components/diagrams/markerDefinitions.d.ts +37 -0
- package/build/src/components/essentials/canvas-chart-clip.d.ts +6 -0
- package/build/src/components/essentials/color-scale-legend.d.ts +17 -0
- package/build/src/components/essentials/highlights.d.ts +13 -0
- package/build/src/components/essentials/legend.d.ts +11 -0
- package/build/src/components/essentials/modal.d.ts +14 -0
- package/build/src/components/essentials/threshold.d.ts +20 -0
- package/build/src/components/essentials/title-meter.d.ts +30 -0
- package/build/src/components/essentials/title.d.ts +20 -0
- package/build/src/components/essentials/tooltip-axis.d.ts +4 -0
- package/build/src/components/essentials/tooltip.d.ts +22 -0
- package/build/src/components/graphs/alluvial.d.ts +14 -0
- package/build/src/components/graphs/area-stacked.d.ts +11 -0
- package/build/src/components/graphs/area.d.ts +12 -0
- package/build/src/components/graphs/bar-grouped.d.ts +20 -0
- package/build/src/components/graphs/bar-simple.d.ts +12 -0
- package/build/src/components/graphs/bar-stacked.d.ts +13 -0
- package/build/src/components/graphs/bar.d.ts +5 -0
- package/build/src/components/graphs/boxplot.d.ts +9 -0
- package/build/src/components/graphs/bubble.d.ts +13 -0
- package/build/src/components/graphs/bullet.d.ts +12 -0
- package/build/src/components/graphs/circle-pack.d.ts +19 -0
- package/build/src/components/graphs/donut.d.ts +9 -0
- package/build/src/components/graphs/gauge.d.ts +27 -0
- package/build/src/components/graphs/heatmap.d.ts +25 -0
- package/build/src/components/graphs/histogram.d.ts +12 -0
- package/build/src/components/graphs/line.d.ts +11 -0
- package/build/src/components/graphs/lollipop.d.ts +14 -0
- package/build/src/components/graphs/meter.d.ts +10 -0
- package/build/src/components/graphs/pie.d.ts +16 -0
- package/build/src/components/graphs/radar.d.ts +25 -0
- package/build/src/components/graphs/scatter-stacked.d.ts +8 -0
- package/build/src/components/graphs/scatter.d.ts +21 -0
- package/build/src/components/graphs/skeleton-lines.d.ts +11 -0
- package/build/src/components/graphs/skeleton.d.ts +22 -0
- package/build/src/components/graphs/tree.d.ts +9 -0
- package/build/src/components/graphs/treemap.d.ts +11 -0
- package/build/src/components/graphs/wordcloud.d.ts +12 -0
- package/build/src/components/index.d.ts +51 -0
- package/build/src/components/layout/layout.d.ts +17 -0
- package/build/src/components/layout/spacer.d.ts +5 -0
- package/build/src/configuration-non-customizable.d.ts +263 -0
- package/build/src/configuration.d.ts +44 -0
- package/build/src/interfaces/a11y.d.ts +12 -0
- package/build/src/interfaces/axis-scales.d.ts +190 -0
- package/build/src/interfaces/charts.d.ts +474 -0
- package/build/src/interfaces/components.d.ts +227 -0
- package/build/src/interfaces/enums.d.ts +249 -0
- package/build/src/interfaces/events.d.ts +230 -0
- package/{src/interfaces/index.ts → build/src/interfaces/index.d.ts} +0 -0
- package/build/src/interfaces/layout.d.ts +15 -0
- package/build/src/interfaces/model.d.ts +35 -0
- package/build/src/interfaces/truncation.d.ts +17 -0
- package/build/src/model/alluvial.d.ts +8 -0
- package/build/src/model/binned-charts.d.ts +7 -0
- package/build/src/model/boxplot.d.ts +14 -0
- package/build/src/model/bullet.d.ts +14 -0
- package/build/src/model/cartesian-charts.d.ts +24 -0
- package/build/src/model/circle-pack.d.ts +36 -0
- package/build/src/model/gauge.d.ts +9 -0
- package/build/src/model/heatmap.d.ts +57 -0
- package/build/src/model/meter.d.ts +19 -0
- package/build/src/model/model.d.ts +107 -0
- package/build/src/model/pie.d.ts +9 -0
- package/build/src/model/radar.d.ts +7 -0
- package/build/src/model/tree.d.ts +14 -0
- package/build/src/model/treemap.d.ts +8 -0
- package/build/src/model/wordcloud.d.ts +7 -0
- package/build/src/services/angle-utils.d.ts +205 -0
- package/build/src/services/canvas-zoom.d.ts +11 -0
- package/build/src/services/curves.d.ts +25 -0
- package/build/src/services/essentials/dom-utils.d.ts +38 -0
- package/build/src/services/essentials/events.d.ts +8 -0
- package/build/src/services/essentials/files.d.ts +6 -0
- package/build/src/services/essentials/gradient-utils.d.ts +6 -0
- package/build/src/services/essentials/transitions.d.ts +13 -0
- package/build/src/services/index.d.ts +9 -0
- package/build/src/services/scales-cartesian.d.ts +86 -0
- package/build/src/services/service.d.ts +10 -0
- package/build/src/services/time-series.d.ts +372 -0
- package/build/src/services/zoom.d.ts +21 -0
- package/build/src/tools.d.ts +158 -0
- package/build/stories/all.stories.d.ts +1 -0
- package/build/stories/tutorials/api.d.ts +4 -0
- package/build/stories/tutorials/color-palette.d.ts +4 -0
- package/build/stories/tutorials/combo-charts.d.ts +4 -0
- package/build/stories/tutorials/dual-axes.d.ts +4 -0
- package/build/stories/tutorials/event-listeners.d.ts +4 -0
- package/build/stories/tutorials/getting-started/angular.d.ts +5 -0
- package/build/stories/tutorials/getting-started/react.d.ts +5 -0
- package/build/stories/tutorials/getting-started/vanilla.d.ts +5 -0
- package/build/stories/tutorials/getting-started/vue.d.ts +5 -0
- package/build/stories/tutorials/index.d.ts +11 -0
- package/build/stories/tutorials/tabular-data-format.d.ts +4 -0
- package/build/stories/tutorials/themes.d.ts +4 -0
- package/build/stories/tutorials.stories.d.ts +1 -0
- package/{dist/bundle.js → bundle.js} +0 -0
- package/{dist/chart.d.ts → chart.d.ts} +0 -0
- package/{dist/chart.js → chart.js} +0 -0
- package/{dist/chart.js.map → chart.js.map} +0 -0
- package/{dist/charts → charts}/alluvial.d.ts +0 -0
- package/{dist/charts → charts}/alluvial.js +0 -0
- package/{dist/charts → charts}/alluvial.js.map +0 -0
- package/{dist/charts → charts}/area-stacked.d.ts +0 -0
- package/{dist/charts → charts}/area-stacked.js +0 -0
- package/{dist/charts → charts}/area-stacked.js.map +0 -0
- package/{dist/charts → charts}/area.d.ts +0 -0
- package/{dist/charts → charts}/area.js +0 -0
- package/{dist/charts → charts}/area.js.map +0 -0
- package/{dist/charts → charts}/bar-grouped.d.ts +0 -0
- package/{dist/charts → charts}/bar-grouped.js +0 -0
- package/{dist/charts → charts}/bar-grouped.js.map +0 -0
- package/{dist/charts → charts}/bar-simple.d.ts +0 -0
- package/{dist/charts → charts}/bar-simple.js +0 -0
- package/{dist/charts → charts}/bar-simple.js.map +0 -0
- package/{dist/charts → charts}/bar-stacked.d.ts +0 -0
- package/{dist/charts → charts}/bar-stacked.js +0 -0
- package/{dist/charts → charts}/bar-stacked.js.map +0 -0
- package/{dist/charts → charts}/boxplot.d.ts +0 -0
- package/{dist/charts → charts}/boxplot.js +0 -0
- package/{dist/charts → charts}/boxplot.js.map +0 -0
- package/{dist/charts → charts}/bubble.d.ts +0 -0
- package/{dist/charts → charts}/bubble.js +0 -0
- package/{dist/charts → charts}/bubble.js.map +0 -0
- package/{dist/charts → charts}/bullet.d.ts +0 -0
- package/{dist/charts → charts}/bullet.js +0 -0
- package/{dist/charts → charts}/bullet.js.map +0 -0
- package/{dist/charts → charts}/circle-pack.d.ts +0 -0
- package/{dist/charts → charts}/circle-pack.js +0 -0
- package/{dist/charts → charts}/circle-pack.js.map +0 -0
- package/{dist/charts → charts}/combo.d.ts +0 -0
- package/{dist/charts → charts}/combo.js +0 -0
- package/{dist/charts → charts}/combo.js.map +0 -0
- package/{dist/charts → charts}/donut.d.ts +0 -0
- package/{dist/charts → charts}/donut.js +0 -0
- package/{dist/charts → charts}/donut.js.map +0 -0
- package/{dist/charts → charts}/gauge.d.ts +0 -0
- package/{dist/charts → charts}/gauge.js +0 -0
- package/{dist/charts → charts}/gauge.js.map +0 -0
- package/{dist/charts → charts}/heatmap.d.ts +0 -0
- package/{dist/charts → charts}/heatmap.js +0 -0
- package/{dist/charts → charts}/heatmap.js.map +0 -0
- package/{dist/charts → charts}/histogram.d.ts +0 -0
- package/{dist/charts → charts}/histogram.js +0 -0
- package/{dist/charts → charts}/histogram.js.map +0 -0
- package/{dist/charts → charts}/index.d.ts +0 -0
- package/{dist/charts → charts}/index.js +0 -0
- package/{dist/charts → charts}/index.js.map +0 -0
- package/{dist/charts → charts}/line.d.ts +0 -0
- package/{dist/charts → charts}/line.js +0 -0
- package/{dist/charts → charts}/line.js.map +0 -0
- package/{dist/charts → charts}/lollipop.d.ts +0 -0
- package/{dist/charts → charts}/lollipop.js +0 -0
- package/{dist/charts → charts}/lollipop.js.map +0 -0
- package/{dist/charts → charts}/meter.d.ts +0 -0
- package/{dist/charts → charts}/meter.js +0 -0
- package/{dist/charts → charts}/meter.js.map +0 -0
- package/{dist/charts → charts}/pie.d.ts +0 -0
- package/{dist/charts → charts}/pie.js +0 -0
- package/{dist/charts → charts}/pie.js.map +0 -0
- package/{dist/charts → charts}/radar.d.ts +0 -0
- package/{dist/charts → charts}/radar.js +0 -0
- package/{dist/charts → charts}/radar.js.map +0 -0
- package/{dist/charts → charts}/scatter.d.ts +0 -0
- package/{dist/charts → charts}/scatter.js +0 -0
- package/{dist/charts → charts}/scatter.js.map +0 -0
- package/{dist/charts → charts}/tree.d.ts +0 -0
- package/{dist/charts → charts}/tree.js +0 -0
- package/{dist/charts → charts}/tree.js.map +0 -0
- package/{dist/charts → charts}/treemap.d.ts +0 -0
- package/{dist/charts → charts}/treemap.js +0 -0
- package/{dist/charts → charts}/treemap.js.map +0 -0
- package/{dist/charts → charts}/wordcloud.d.ts +0 -0
- package/{dist/charts → charts}/wordcloud.js +0 -0
- package/{dist/charts → charts}/wordcloud.js.map +0 -0
- package/{dist/components → components}/axes/axis.d.ts +0 -0
- package/{dist/components → components}/axes/axis.js +0 -0
- package/{dist/components → components}/axes/axis.js.map +0 -0
- package/{dist/components → components}/axes/chart-clip.d.ts +0 -0
- package/{dist/components → components}/axes/chart-clip.js +0 -0
- package/{dist/components → components}/axes/chart-clip.js.map +0 -0
- package/{dist/components → components}/axes/grid-brush.d.ts +0 -0
- package/{dist/components → components}/axes/grid-brush.js +0 -0
- package/{dist/components → components}/axes/grid-brush.js.map +0 -0
- package/{dist/components → components}/axes/grid.d.ts +0 -0
- package/{dist/components → components}/axes/grid.js +0 -0
- package/{dist/components → components}/axes/grid.js.map +0 -0
- package/{dist/components → components}/axes/hover-axis.d.ts +0 -0
- package/{dist/components → components}/axes/hover-axis.js +0 -0
- package/{dist/components → components}/axes/hover-axis.js.map +0 -0
- package/{dist/components → components}/axes/ruler-binned.d.ts +0 -0
- package/{dist/components → components}/axes/ruler-binned.js +0 -0
- package/{dist/components → components}/axes/ruler-binned.js.map +0 -0
- package/{dist/components → components}/axes/ruler-stacked.d.ts +0 -0
- package/{dist/components → components}/axes/ruler-stacked.js +0 -0
- package/{dist/components → components}/axes/ruler-stacked.js.map +0 -0
- package/{dist/components → components}/axes/ruler.d.ts +0 -0
- package/{dist/components → components}/axes/ruler.js +0 -0
- package/{dist/components → components}/axes/ruler.js.map +0 -0
- package/{dist/components → components}/axes/toolbar.d.ts +0 -0
- package/components/axes/toolbar.js +544 -0
- package/components/axes/toolbar.js.map +1 -0
- package/{dist/components → components}/axes/two-dimensional-axes.d.ts +0 -0
- package/{dist/components → components}/axes/two-dimensional-axes.js +0 -0
- package/{dist/components → components}/axes/two-dimensional-axes.js.map +0 -0
- package/{dist/components → components}/axes/zero-line.d.ts +0 -0
- package/{dist/components → components}/axes/zero-line.js +0 -0
- package/{dist/components → components}/axes/zero-line.js.map +0 -0
- package/{dist/components → components}/axes/zoom-bar.d.ts +0 -0
- package/{dist/components → components}/axes/zoom-bar.js +0 -0
- package/{dist/components → components}/axes/zoom-bar.js.map +0 -0
- package/{dist/components → components}/component.d.ts +0 -0
- package/components/component.js +102 -0
- package/components/component.js.map +1 -0
- package/{dist/components → components}/diagrams/buildPaths.d.ts +0 -0
- package/{dist/components → components}/diagrams/buildPaths.js +0 -0
- package/{dist/components → components}/diagrams/buildPaths.js.map +0 -0
- package/{dist/components → components}/diagrams/markerDefinitions.d.ts +0 -0
- package/{dist/components → components}/diagrams/markerDefinitions.js +0 -0
- package/{dist/components → components}/diagrams/markerDefinitions.js.map +0 -0
- package/{dist/components → components}/essentials/canvas-chart-clip.d.ts +0 -0
- package/{dist/components → components}/essentials/canvas-chart-clip.js +0 -0
- package/{dist/components → components}/essentials/canvas-chart-clip.js.map +0 -0
- package/{dist/components → components}/essentials/color-scale-legend.d.ts +0 -0
- package/{dist/components → components}/essentials/color-scale-legend.js +0 -0
- package/{dist/components → components}/essentials/color-scale-legend.js.map +0 -0
- package/{dist/components → components}/essentials/highlights.d.ts +0 -0
- package/{dist/components → components}/essentials/highlights.js +0 -0
- package/{dist/components → components}/essentials/highlights.js.map +0 -0
- package/{dist/components → components}/essentials/legend.d.ts +0 -0
- package/{dist/components → components}/essentials/legend.js +0 -0
- package/{dist/components → components}/essentials/legend.js.map +0 -0
- package/{dist/components → components}/essentials/modal.d.ts +0 -0
- package/components/essentials/modal.js +89 -0
- package/components/essentials/modal.js.map +1 -0
- package/{dist/components → components}/essentials/threshold.d.ts +0 -0
- package/components/essentials/threshold.js +304 -0
- package/components/essentials/threshold.js.map +1 -0
- package/{dist/components → components}/essentials/title-meter.d.ts +0 -0
- package/{dist/components → components}/essentials/title-meter.js +0 -0
- package/{dist/components → components}/essentials/title-meter.js.map +0 -0
- package/{dist/components → components}/essentials/title.d.ts +0 -0
- package/{dist/components → components}/essentials/title.js +0 -0
- package/{dist/components → components}/essentials/title.js.map +0 -0
- package/{dist/components → components}/essentials/tooltip-axis.d.ts +0 -0
- package/{dist/components → components}/essentials/tooltip-axis.js +0 -0
- package/{dist/components → components}/essentials/tooltip-axis.js.map +0 -0
- package/{dist/components → components}/essentials/tooltip.d.ts +0 -0
- package/components/essentials/tooltip.js +245 -0
- package/components/essentials/tooltip.js.map +1 -0
- package/{dist/components → components}/graphs/alluvial.d.ts +0 -0
- package/{dist/components → components}/graphs/alluvial.js +0 -0
- package/{dist/components → components}/graphs/alluvial.js.map +0 -0
- package/{dist/components → components}/graphs/area-stacked.d.ts +0 -0
- package/{dist/components → components}/graphs/area-stacked.js +0 -0
- package/{dist/components → components}/graphs/area-stacked.js.map +0 -0
- package/{dist/components → components}/graphs/area.d.ts +0 -0
- package/{dist/components → components}/graphs/area.js +0 -0
- package/{dist/components → components}/graphs/area.js.map +0 -0
- package/{dist/components → components}/graphs/bar-grouped.d.ts +0 -0
- package/{dist/components → components}/graphs/bar-grouped.js +0 -0
- package/{dist/components → components}/graphs/bar-grouped.js.map +0 -0
- package/{dist/components → components}/graphs/bar-simple.d.ts +0 -0
- package/{dist/components → components}/graphs/bar-simple.js +0 -0
- package/{dist/components → components}/graphs/bar-simple.js.map +0 -0
- package/{dist/components → components}/graphs/bar-stacked.d.ts +0 -0
- package/{dist/components → components}/graphs/bar-stacked.js +0 -0
- package/components/graphs/bar-stacked.js.map +1 -0
- package/{dist/components → components}/graphs/bar.d.ts +0 -0
- package/{dist/components → components}/graphs/bar.js +0 -0
- package/components/graphs/bar.js.map +1 -0
- package/{dist/components → components}/graphs/boxplot.d.ts +0 -0
- package/{dist/components → components}/graphs/boxplot.js +0 -0
- package/{dist/components → components}/graphs/boxplot.js.map +0 -0
- package/{dist/components → components}/graphs/bubble.d.ts +0 -0
- package/{dist/components → components}/graphs/bubble.js +0 -0
- package/{dist/components → components}/graphs/bubble.js.map +0 -0
- package/{dist/components → components}/graphs/bullet.d.ts +0 -0
- package/{dist/components → components}/graphs/bullet.js +0 -0
- package/{dist/components → components}/graphs/bullet.js.map +0 -0
- package/{dist/components → components}/graphs/circle-pack.d.ts +0 -0
- package/{dist/components → components}/graphs/circle-pack.js +0 -0
- package/{dist/components → components}/graphs/circle-pack.js.map +0 -0
- package/{dist/components → components}/graphs/donut.d.ts +0 -0
- package/{dist/components → components}/graphs/donut.js +0 -0
- package/{dist/components → components}/graphs/donut.js.map +0 -0
- package/{dist/components → components}/graphs/gauge.d.ts +0 -0
- package/{dist/components → components}/graphs/gauge.js +0 -0
- package/{dist/components → components}/graphs/gauge.js.map +0 -0
- package/{dist/components → components}/graphs/heatmap.d.ts +0 -0
- package/{dist/components → components}/graphs/heatmap.js +0 -0
- package/{dist/components → components}/graphs/heatmap.js.map +0 -0
- package/{dist/components → components}/graphs/histogram.d.ts +0 -0
- package/{dist/components → components}/graphs/histogram.js +0 -0
- package/{dist/components → components}/graphs/histogram.js.map +0 -0
- package/{dist/components → components}/graphs/line.d.ts +0 -0
- package/{dist/components → components}/graphs/line.js +0 -0
- package/{dist/components → components}/graphs/line.js.map +0 -0
- package/{dist/components → components}/graphs/lollipop.d.ts +0 -0
- package/{dist/components → components}/graphs/lollipop.js +0 -0
- package/{dist/components → components}/graphs/lollipop.js.map +0 -0
- package/{dist/components → components}/graphs/meter.d.ts +0 -0
- package/{dist/components → components}/graphs/meter.js +0 -0
- package/{dist/components → components}/graphs/meter.js.map +0 -0
- package/{dist/components → components}/graphs/pie.d.ts +0 -0
- package/{dist/components → components}/graphs/pie.js +0 -0
- package/{dist/components → components}/graphs/pie.js.map +0 -0
- package/{dist/components → components}/graphs/radar.d.ts +0 -0
- package/components/graphs/radar.js +737 -0
- package/components/graphs/radar.js.map +1 -0
- package/{dist/components → components}/graphs/scatter-stacked.d.ts +0 -0
- package/{dist/components → components}/graphs/scatter-stacked.js +0 -0
- package/{dist/components → components}/graphs/scatter-stacked.js.map +0 -0
- package/{dist/components → components}/graphs/scatter.d.ts +0 -0
- package/{dist/components → components}/graphs/scatter.js +0 -0
- package/{dist/components → components}/graphs/scatter.js.map +0 -0
- package/{dist/components → components}/graphs/skeleton-lines.d.ts +0 -0
- package/{dist/components → components}/graphs/skeleton-lines.js +0 -0
- package/{dist/components → components}/graphs/skeleton-lines.js.map +0 -0
- package/{dist/components → components}/graphs/skeleton.d.ts +0 -0
- package/{dist/components → components}/graphs/skeleton.js +0 -0
- package/{dist/components → components}/graphs/skeleton.js.map +0 -0
- package/{dist/components → components}/graphs/tree.d.ts +0 -0
- package/{dist/components → components}/graphs/tree.js +0 -0
- package/{dist/components → components}/graphs/tree.js.map +0 -0
- package/{dist/components → components}/graphs/treemap.d.ts +0 -0
- package/{dist/components → components}/graphs/treemap.js +0 -0
- package/{dist/components → components}/graphs/treemap.js.map +0 -0
- package/{dist/components → components}/graphs/wordcloud.d.ts +0 -0
- package/{dist/components → components}/graphs/wordcloud.js +0 -0
- package/{dist/components → components}/graphs/wordcloud.js.map +0 -0
- package/{dist/components → components}/index.d.ts +0 -0
- package/{dist/components → components}/index.js +0 -0
- package/{dist/components → components}/index.js.map +0 -0
- package/{dist/components → components}/layout/layout.d.ts +0 -0
- package/components/layout/layout.js +191 -0
- package/components/layout/layout.js.map +1 -0
- package/{dist/components → components}/layout/spacer.d.ts +0 -0
- package/{dist/components → components}/layout/spacer.js +0 -0
- package/{dist/components → components}/layout/spacer.js.map +0 -0
- package/{dist/configuration-non-customizable.d.ts → configuration-non-customizable.d.ts} +0 -0
- package/{dist/configuration-non-customizable.js → configuration-non-customizable.js} +0 -0
- package/configuration-non-customizable.js.map +1 -0
- package/{dist/configuration.d.ts → configuration.d.ts} +0 -0
- package/{dist/configuration.js → configuration.js} +0 -0
- package/{dist/configuration.js.map → configuration.js.map} +0 -0
- package/demo/create-codesandbox.d.ts +75 -0
- package/demo/create-codesandbox.js +171 -0
- package/demo/create-codesandbox.js.map +1 -0
- package/demo/data/CHART_TYPES.d.ts +123 -0
- package/{dist/demo → demo}/data/CHART_TYPES.js +0 -0
- package/{dist/demo → demo}/data/CHART_TYPES.js.map +0 -0
- package/demo/data/alluvial.d.ts +109 -0
- package/{dist/demo → demo}/data/alluvial.js +0 -0
- package/{dist/demo → demo}/data/alluvial.js.map +0 -0
- package/demo/data/area.d.ts +224 -0
- package/{dist/demo → demo}/data/area.js +0 -0
- package/{dist/demo → demo}/data/area.js.map +0 -0
- package/demo/data/bar.d.ts +617 -0
- package/{dist/demo → demo}/data/bar.js +0 -0
- package/{dist/demo → demo}/data/bar.js.map +0 -0
- package/demo/data/boxplot.d.ts +34 -0
- package/{dist/demo → demo}/data/boxplot.js +0 -0
- package/{dist/demo → demo}/data/boxplot.js.map +0 -0
- package/demo/data/bubble.d.ts +141 -0
- package/{dist/demo → demo}/data/bubble.js +0 -0
- package/{dist/demo → demo}/data/bubble.js.map +0 -0
- package/demo/data/bullet.d.ts +24 -0
- package/{dist/demo → demo}/data/bullet.js +0 -0
- package/{dist/demo → demo}/data/bullet.js.map +0 -0
- package/demo/data/bundle.js +1 -0
- package/demo/data/circle-pack.d.ts +91 -0
- package/{dist/demo → demo}/data/circle-pack.js +0 -0
- package/{dist/demo → demo}/data/circle-pack.js.map +0 -0
- package/demo/data/combo.d.ts +482 -0
- package/{dist/demo → demo}/data/combo.js +0 -0
- package/{dist/demo → demo}/data/combo.js.map +0 -0
- package/demo/data/donut.d.ts +64 -0
- package/{dist/demo → demo}/data/donut.js +0 -0
- package/{dist/demo → demo}/data/donut.js.map +0 -0
- package/demo/data/gauge.d.ts +40 -0
- package/{dist/demo → demo}/data/gauge.js +0 -0
- package/{dist/demo → demo}/data/gauge.js.map +0 -0
- package/demo/data/heatmap.d.ts +125 -0
- package/{dist/demo → demo}/data/heatmap.js +0 -0
- package/{dist/demo → demo}/data/heatmap.js.map +0 -0
- package/demo/data/high-scale.d.ts +1 -0
- package/{dist/demo → demo}/data/high-scale.js +0 -0
- package/{dist/demo → demo}/data/high-scale.js.map +0 -0
- package/demo/data/hightlight.d.ts +40 -0
- package/{dist/demo → demo}/data/hightlight.js +0 -0
- package/{dist/demo → demo}/data/hightlight.js.map +0 -0
- package/demo/data/histogram.d.ts +63 -0
- package/{dist/demo → demo}/data/histogram.js +0 -0
- package/{dist/demo → demo}/data/histogram.js.map +0 -0
- package/demo/data/index.d.ts +32 -0
- package/{dist/demo → demo}/data/index.js +0 -0
- package/{dist/demo → demo}/data/index.js.map +0 -0
- package/demo/data/line.d.ts +361 -0
- package/{dist/demo → demo}/data/line.js +0 -0
- package/{dist/demo → demo}/data/line.js.map +0 -0
- package/demo/data/lollipop.d.ts +39 -0
- package/{dist/demo → demo}/data/lollipop.js +0 -0
- package/{dist/demo → demo}/data/lollipop.js.map +0 -0
- package/demo/data/meter.d.ts +95 -0
- package/{dist/demo → demo}/data/meter.js +0 -0
- package/{dist/demo → demo}/data/meter.js.map +0 -0
- package/demo/data/pie.d.ts +46 -0
- package/{dist/demo → demo}/data/pie.js +0 -0
- package/{dist/demo → demo}/data/pie.js.map +0 -0
- package/demo/data/radar.d.ts +63 -0
- package/{dist/demo → demo}/data/radar.js +0 -0
- package/{dist/demo → demo}/data/radar.js.map +0 -0
- package/demo/data/scatter.d.ts +118 -0
- package/{dist/demo → demo}/data/scatter.js +0 -0
- package/{dist/demo → demo}/data/scatter.js.map +0 -0
- package/demo/data/step.d.ts +96 -0
- package/{dist/demo → demo}/data/step.js +0 -0
- package/{dist/demo → demo}/data/step.js.map +0 -0
- package/demo/data/time-series-axis.d.ts +368 -0
- package/{dist/demo → demo}/data/time-series-axis.js +0 -0
- package/{dist/demo → demo}/data/time-series-axis.js.map +0 -0
- package/demo/data/toolbar.d.ts +12 -0
- package/{dist/demo → demo}/data/toolbar.js +0 -0
- package/{dist/demo → demo}/data/toolbar.js.map +0 -0
- package/demo/data/tree.d.ts +30 -0
- package/{dist/demo → demo}/data/tree.js +0 -0
- package/{dist/demo → demo}/data/tree.js.map +0 -0
- package/demo/data/treemap.d.ts +15 -0
- package/{dist/demo → demo}/data/treemap.js +0 -0
- package/{dist/demo → demo}/data/treemap.js.map +0 -0
- package/demo/data/wordcloud.d.ts +14 -0
- package/{dist/demo → demo}/data/wordcloud.js +0 -0
- package/{dist/demo → demo}/data/wordcloud.js.map +0 -0
- package/demo/data/zoom-bar.d.ts +88 -0
- package/{dist/demo → demo}/data/zoom-bar.js +0 -0
- package/{dist/demo → demo}/data/zoom-bar.js.map +0 -0
- package/demo/styles.css +28262 -0
- package/demo/styles.css.map +1 -0
- package/demo/styles.min.css +1 -0
- package/demo/styles.min.css.map +1 -0
- package/demo/tsconfig.tsbuildinfo +2212 -0
- package/{dist/demo → demo}/utils.d.ts +0 -0
- package/{dist/demo → demo}/utils.js +0 -0
- package/demo/utils.js.map +1 -0
- package/{dist/index.d.ts → index.d.ts} +0 -0
- package/{dist/index.js → index.js} +0 -0
- package/{dist/index.js.map → index.js.map} +0 -0
- package/{dist/interfaces → interfaces}/a11y.d.ts +0 -0
- package/{dist/interfaces → interfaces}/a11y.js +0 -0
- package/{dist/interfaces → interfaces}/a11y.js.map +0 -0
- package/{dist/interfaces → interfaces}/axis-scales.d.ts +0 -0
- package/{dist/interfaces → interfaces}/axis-scales.js +0 -0
- package/{dist/interfaces → interfaces}/axis-scales.js.map +0 -0
- package/{dist/interfaces → interfaces}/charts.d.ts +0 -0
- package/{dist/interfaces → interfaces}/charts.js +0 -0
- package/{dist/interfaces → interfaces}/charts.js.map +0 -0
- package/{dist/interfaces → interfaces}/components.d.ts +0 -0
- package/{dist/interfaces → interfaces}/components.js +0 -0
- package/{dist/interfaces → interfaces}/components.js.map +0 -0
- package/{dist/interfaces → interfaces}/enums.d.ts +0 -0
- package/{dist/interfaces → interfaces}/enums.js +0 -0
- package/{dist/interfaces → interfaces}/enums.js.map +0 -0
- package/{dist/interfaces → interfaces}/events.d.ts +0 -0
- package/{dist/interfaces → interfaces}/events.js +0 -0
- package/{dist/interfaces → interfaces}/events.js.map +0 -0
- package/{dist/interfaces → interfaces}/index.d.ts +0 -0
- package/{dist/interfaces → interfaces}/index.js +0 -0
- package/{dist/interfaces → interfaces}/index.js.map +0 -0
- package/{dist/interfaces → interfaces}/layout.d.ts +0 -0
- package/{dist/interfaces → interfaces}/layout.js +0 -0
- package/{dist/interfaces → interfaces}/layout.js.map +0 -0
- package/{dist/interfaces → interfaces}/model.d.ts +0 -0
- package/{dist/interfaces → interfaces}/model.js +0 -0
- package/{dist/interfaces → interfaces}/model.js.map +0 -0
- package/{dist/interfaces → interfaces}/truncation.d.ts +0 -0
- package/{dist/interfaces → interfaces}/truncation.js +0 -0
- package/{dist/interfaces → interfaces}/truncation.js.map +0 -0
- package/{dist/model → model}/alluvial.d.ts +0 -0
- package/{dist/model → model}/alluvial.js +0 -0
- package/{dist/model → model}/alluvial.js.map +0 -0
- package/{dist/model → model}/binned-charts.d.ts +0 -0
- package/{dist/model → model}/binned-charts.js +0 -0
- package/{dist/model → model}/binned-charts.js.map +0 -0
- package/{dist/model → model}/boxplot.d.ts +0 -0
- package/{dist/model → model}/boxplot.js +0 -0
- package/{dist/model → model}/boxplot.js.map +0 -0
- package/{dist/model → model}/bullet.d.ts +0 -0
- package/{dist/model → model}/bullet.js +0 -0
- package/{dist/model → model}/bullet.js.map +0 -0
- package/{dist/model → model}/cartesian-charts.d.ts +0 -0
- package/{dist/model → model}/cartesian-charts.js +0 -0
- package/{dist/model → model}/cartesian-charts.js.map +0 -0
- package/{dist/model → model}/circle-pack.d.ts +0 -0
- package/{dist/model → model}/circle-pack.js +0 -0
- package/{dist/model → model}/circle-pack.js.map +0 -0
- package/{dist/model → model}/gauge.d.ts +0 -0
- package/{dist/model → model}/gauge.js +0 -0
- package/{dist/model → model}/gauge.js.map +0 -0
- package/{dist/model → model}/heatmap.d.ts +0 -0
- package/{dist/model → model}/heatmap.js +0 -0
- package/{dist/model → model}/heatmap.js.map +0 -0
- package/{dist/model → model}/meter.d.ts +0 -0
- package/{dist/model → model}/meter.js +0 -0
- package/{dist/model → model}/meter.js.map +0 -0
- package/{dist/model → model}/model.d.ts +0 -0
- package/{dist/model → model}/model.js +0 -0
- package/{dist/model → model}/model.js.map +0 -0
- package/{dist/model → model}/pie.d.ts +0 -0
- package/{dist/model → model}/pie.js +0 -0
- package/{dist/model → model}/pie.js.map +0 -0
- package/{dist/model → model}/radar.d.ts +0 -0
- package/{dist/model → model}/radar.js +0 -0
- package/{dist/model → model}/radar.js.map +0 -0
- package/{dist/model → model}/tree.d.ts +0 -0
- package/{dist/model → model}/tree.js +0 -0
- package/{dist/model → model}/tree.js.map +0 -0
- package/{dist/model → model}/treemap.d.ts +0 -0
- package/model/treemap.js +44 -0
- package/model/treemap.js.map +1 -0
- package/{dist/model → model}/wordcloud.d.ts +0 -0
- package/{dist/model → model}/wordcloud.js +0 -0
- package/{dist/model → model}/wordcloud.js.map +0 -0
- package/package.json +146 -146
- package/{demo/dist/src/polyfills.d.ts → polyfills.d.ts} +0 -0
- package/{dist/polyfills.js → polyfills.js} +0 -0
- package/{dist/polyfills.js.map → polyfills.js.map} +0 -0
- package/{dist/services → services}/angle-utils.d.ts +0 -0
- package/{dist/services → services}/angle-utils.js +0 -0
- package/{dist/services → services}/angle-utils.js.map +0 -0
- package/{dist/services → services}/canvas-zoom.d.ts +0 -0
- package/{dist/services → services}/canvas-zoom.js +0 -0
- package/{dist/services → services}/canvas-zoom.js.map +0 -0
- package/{dist/services → services}/curves.d.ts +0 -0
- package/{dist/services → services}/curves.js +0 -0
- package/{dist/services → services}/curves.js.map +0 -0
- package/{dist/services → services}/essentials/dom-utils.d.ts +0 -0
- package/services/essentials/dom-utils.js +405 -0
- package/services/essentials/dom-utils.js.map +1 -0
- package/{dist/services → services}/essentials/events.d.ts +0 -0
- package/{dist/services → services}/essentials/events.js +0 -0
- package/{dist/services → services}/essentials/events.js.map +0 -0
- package/{dist/services → services}/essentials/files.d.ts +0 -0
- package/{dist/services → services}/essentials/files.js +0 -0
- package/{dist/services → services}/essentials/files.js.map +0 -0
- package/{dist/services → services}/essentials/gradient-utils.d.ts +0 -0
- package/{dist/services → services}/essentials/gradient-utils.js +0 -0
- package/{dist/services → services}/essentials/gradient-utils.js.map +0 -0
- package/{dist/services → services}/essentials/transitions.d.ts +0 -0
- package/{dist/services → services}/essentials/transitions.js +0 -0
- package/{dist/services → services}/essentials/transitions.js.map +0 -0
- package/{dist/services → services}/index.d.ts +0 -0
- package/{dist/services → services}/index.js +0 -0
- package/{dist/services → services}/index.js.map +0 -0
- package/{dist/services → services}/scales-cartesian.d.ts +0 -0
- package/{dist/services → services}/scales-cartesian.js +0 -0
- package/{dist/services → services}/scales-cartesian.js.map +0 -0
- package/{dist/services → services}/service.d.ts +0 -0
- package/{dist/services → services}/service.js +0 -0
- package/{dist/services → services}/service.js.map +0 -0
- package/{dist/services → services}/time-series.d.ts +0 -0
- package/{dist/services → services}/time-series.js +0 -0
- package/{dist/services → services}/time-series.js.map +0 -0
- package/{dist/services → services}/zoom.d.ts +0 -0
- package/{dist/services → services}/zoom.js +0 -0
- package/{dist/services → services}/zoom.js.map +0 -0
- package/styles/_chart-holder.scss +50 -0
- package/{dist/styles → styles}/_type.scss +0 -0
- package/styles/color-palatte.scss +362 -0
- package/styles/colors.scss +140 -0
- package/styles/components/_axis.scss +52 -0
- package/{dist/styles → styles}/components/_callouts.scss +0 -0
- package/{dist/styles → styles}/components/_color-legend.scss +0 -0
- package/styles/components/_edge.scss +65 -0
- package/{dist/styles → styles}/components/_grid-brush.scss +0 -0
- package/{dist/styles → styles}/components/_grid.scss +0 -0
- package/{dist/styles → styles}/components/_highlights.scss +0 -0
- package/{dist/styles → styles}/components/_layout.scss +0 -0
- package/{dist/styles → styles}/components/_legend.scss +0 -0
- package/styles/components/_marker.scss +7 -0
- package/{dist/styles → styles}/components/_meter-title.scss +0 -0
- package/styles/components/_modal.scss +48 -0
- package/{dist/styles → styles}/components/_ruler.scss +0 -0
- package/styles/components/_skeleton-lines.scss +36 -0
- package/{dist/styles → styles}/components/_skeleton.scss +0 -0
- package/{dist/styles → styles}/components/_threshold.scss +0 -0
- package/{dist/styles → styles}/components/_title.scss +0 -0
- package/{dist/styles → styles}/components/_toolbar.scss +0 -0
- package/styles/components/_tooltip.scss +123 -0
- package/{dist/styles → styles}/components/_zero-line.scss +0 -0
- package/{dist/styles → styles}/components/_zoom-bar.scss +0 -0
- package/styles/components/diagrams/_card-node.scss +97 -0
- package/styles/components/diagrams/_edge.scss +66 -0
- package/{dist/styles → styles}/components/diagrams/_marker.scss +0 -0
- package/styles/components/diagrams/_shape-node.scss +89 -0
- package/styles/components/diagrams/index.scss +4 -0
- package/{dist/styles → styles}/components/index.scss +0 -0
- package/{dist/styles → styles}/graphs/_alluvial.scss +0 -0
- package/{dist/styles → styles}/graphs/_area.scss +0 -0
- package/{dist/styles → styles}/graphs/_bubble.scss +0 -0
- package/{dist/styles → styles}/graphs/_bullet.scss +0 -0
- package/{dist/styles → styles}/graphs/_circle-pack.scss +0 -0
- package/{dist/styles → styles}/graphs/_donut.scss +0 -0
- package/{dist/styles → styles}/graphs/_gauge.scss +0 -0
- package/{dist/styles → styles}/graphs/_heatmap.scss +0 -0
- package/{dist/styles → styles}/graphs/_line.scss +0 -0
- package/{dist/styles → styles}/graphs/_lollipop.scss +0 -0
- package/{dist/styles → styles}/graphs/_meter.scss +0 -0
- package/{dist/styles → styles}/graphs/_pie.scss +0 -0
- package/{dist/styles → styles}/graphs/_radar.scss +0 -0
- package/{dist/styles → styles}/graphs/_scatter-stacked.scss +0 -0
- package/{dist/styles → styles}/graphs/_scatter.scss +0 -0
- package/{dist/styles → styles}/graphs/_tree.scss +0 -0
- package/{dist/styles → styles}/graphs/_treemap.scss +0 -0
- package/{dist/styles → styles}/graphs/_wordcloud.scss +0 -0
- package/{dist/styles → styles}/graphs/index.scss +0 -0
- package/styles/styles.scss +35 -0
- package/styles/tokens.scss +416 -0
- package/styles.css +6258 -0
- package/styles.css.map +1 -0
- package/styles.min.css +1 -0
- package/styles.min.css.map +1 -0
- package/{dist/tools.d.ts → tools.d.ts} +0 -0
- package/{dist/tools.js → tools.js} +0 -0
- package/{dist/tools.js.map → tools.js.map} +0 -0
- package/tsconfig.tsbuildinfo +4699 -0
- package/.prettierignore +0 -3
- package/.storybook/addons.js +0 -2
- package/.storybook/assets/logo.svg +0 -1
- package/.storybook/assets/share.png +0 -0
- package/.storybook/assets/welcome.png +0 -0
- package/.storybook/config.js +0 -21
- package/.storybook/main.js +0 -30
- package/.storybook/manager-head.html +0 -42
- package/.storybook/preview-head.html +0 -10
- package/.storybook/theme.ARCHIVE +0 -46
- package/build.sh +0 -41
- package/carbon.yml +0 -534
- package/custom.d.ts +0 -5
- package/demo/bundle/favicon.ico +0 -0
- package/demo/bundle/index.html +0 -22
- package/demo/bundle/logo.svg +0 -1
- package/demo/bundle/main.df2f79564d91565e3cbd.bundle.js +0 -1
- package/demo/bundle/runtime~main.6b70b35614cf83eab770.bundle.js +0 -1
- package/demo/bundle/sb_dll/storybook_ui-manifest.json +0 -1
- package/demo/bundle/sb_dll/storybook_ui_dll.LICENCE +0 -113
- package/demo/bundle/sb_dll/storybook_ui_dll.js +0 -2
- package/demo/bundle/share.png +0 -0
- package/demo/bundle/vendors~main.fa56568adce9c209e146.bundle.js +0 -111
- package/demo/bundle/welcome.png +0 -0
- package/demo/create-codesandbox.ts +0 -421
- package/demo/data/CHART_TYPES.ts +0 -122
- package/demo/data/alluvial.ts +0 -334
- package/demo/data/area.ts +0 -345
- package/demo/data/bar.ts +0 -783
- package/demo/data/boxplot.ts +0 -49
- package/demo/data/bubble.ts +0 -191
- package/demo/data/bullet.ts +0 -55
- package/demo/data/circle-pack.ts +0 -232
- package/demo/data/combo.ts +0 -593
- package/demo/data/donut.ts +0 -66
- package/demo/data/gauge.ts +0 -44
- package/demo/data/heatmap.ts +0 -1151
- package/demo/data/high-scale.ts +0 -7
- package/demo/data/hightlight.ts +0 -48
- package/demo/data/histogram.ts +0 -316
- package/demo/data/index.ts +0 -1294
- package/demo/data/line.ts +0 -502
- package/demo/data/lollipop.ts +0 -39
- package/demo/data/meter.ts +0 -119
- package/demo/data/pie.ts +0 -61
- package/demo/data/radar.ts +0 -121
- package/demo/data/scatter.ts +0 -152
- package/demo/data/step.ts +0 -37
- package/demo/data/time-series-axis.ts +0 -468
- package/demo/data/toolbar.ts +0 -80
- package/demo/data/tree.ts +0 -210
- package/demo/data/treemap.ts +0 -93
- package/demo/data/wordcloud.ts +0 -105
- package/demo/data/zoom-bar.ts +0 -238
- package/demo/dist/demo/chart-types.d.ts +0 -5
- package/demo/dist/demo/demo-data/bar.d.ts +0 -106
- package/demo/dist/demo/demo-data/colors.d.ts +0 -1
- package/demo/dist/demo/demo-data/index.d.ts +0 -4
- package/demo/dist/demo/demo-data/line.d.ts +0 -105
- package/demo/dist/demo/demo-data/pie-donut.d.ts +0 -27
- package/demo/dist/demo/demo-options.d.ts +0 -2
- package/demo/dist/demo/index.d.ts +0 -1
- package/demo/dist/src/axis-chart.d.ts +0 -8
- package/demo/dist/src/chart.d.ts +0 -14
- package/demo/dist/src/charts/bar-grouped.d.ts +0 -6
- package/demo/dist/src/charts/bar-simple.d.ts +0 -8
- package/demo/dist/src/charts/bar-stacked.d.ts +0 -6
- package/demo/dist/src/charts/donut.d.ts +0 -6
- package/demo/dist/src/charts/index.d.ts +0 -7
- package/demo/dist/src/charts/line.d.ts +0 -6
- package/demo/dist/src/charts/pie.d.ts +0 -8
- package/demo/dist/src/charts/scatter.d.ts +0 -6
- package/demo/dist/src/components/axes/axis.d.ts +0 -17
- package/demo/dist/src/components/axes/grid.d.ts +0 -24
- package/demo/dist/src/components/axes/horizontal-zero-line.d.ts +0 -5
- package/demo/dist/src/components/axes/two-dimensional-axes.d.ts +0 -12
- package/demo/dist/src/components/component.d.ts +0 -17
- package/demo/dist/src/components/essentials/legend.d.ts +0 -11
- package/demo/dist/src/components/essentials/title.d.ts +0 -17
- package/demo/dist/src/components/essentials/tooltip-bar.d.ts +0 -27
- package/demo/dist/src/components/essentials/tooltip-scatter.d.ts +0 -5
- package/demo/dist/src/components/essentials/tooltip.d.ts +0 -22
- package/demo/dist/src/components/graphs/bar-grouped.d.ts +0 -16
- package/demo/dist/src/components/graphs/bar-simple.d.ts +0 -11
- package/demo/dist/src/components/graphs/bar-stacked.d.ts +0 -11
- package/demo/dist/src/components/graphs/bar.d.ts +0 -4
- package/demo/dist/src/components/graphs/donut.d.ts +0 -7
- package/demo/dist/src/components/graphs/line.d.ts +0 -7
- package/demo/dist/src/components/graphs/pie.d.ts +0 -15
- package/demo/dist/src/components/graphs/scatter.d.ts +0 -11
- package/demo/dist/src/components/index.d.ts +0 -18
- package/demo/dist/src/components/layout/layout.d.ts +0 -17
- package/demo/dist/src/configuration.d.ts +0 -61
- package/demo/dist/src/index.d.ts +0 -6
- package/demo/dist/src/interfaces/axis-scales.d.ts +0 -57
- package/demo/dist/src/interfaces/charts.d.ts +0 -143
- package/demo/dist/src/interfaces/components.d.ts +0 -127
- package/demo/dist/src/interfaces/enums.d.ts +0 -87
- package/demo/dist/src/interfaces/index.d.ts +0 -6
- package/demo/dist/src/interfaces/layout.d.ts +0 -7
- package/demo/dist/src/interfaces/model.d.ts +0 -34
- package/demo/dist/src/model-pie.d.ts +0 -12
- package/demo/dist/src/model-simple-bar.d.ts +0 -11
- package/demo/dist/src/model.d.ts +0 -51
- package/demo/dist/src/services/axes.d.ts +0 -9
- package/demo/dist/src/services/colorPalettes.d.ts +0 -6
- package/demo/dist/src/services/colors.d.ts +0 -10
- package/demo/dist/src/services/curves.d.ts +0 -25
- package/demo/dist/src/services/essentials/dom-utils.d.ts +0 -16
- package/demo/dist/src/services/essentials/events.d.ts +0 -8
- package/demo/dist/src/services/essentials/transitions.d.ts +0 -9
- package/demo/dist/src/services/index.d.ts +0 -5
- package/demo/dist/src/services/service.d.ts +0 -10
- package/demo/dist/src/tools.d.ts +0 -92
- package/demo/resource-card.scss +0 -125
- package/demo/styles.scss +0 -466
- package/demo/tsconfig.json +0 -19
- package/demo/utils.ts +0 -326
- package/dist/CHANGELOG.md +0 -2872
- package/dist/README.md +0 -52
- package/dist/components/axes/toolbar.js +0 -543
- package/dist/components/axes/toolbar.js.map +0 -1
- package/dist/components/component.js +0 -102
- package/dist/components/component.js.map +0 -1
- package/dist/components/essentials/modal.js +0 -89
- package/dist/components/essentials/modal.js.map +0 -1
- package/dist/components/essentials/threshold.js +0 -304
- package/dist/components/essentials/threshold.js.map +0 -1
- package/dist/components/essentials/tooltip.js +0 -245
- package/dist/components/essentials/tooltip.js.map +0 -1
- package/dist/components/graphs/bar-stacked.js.map +0 -1
- package/dist/components/graphs/bar.js.map +0 -1
- package/dist/components/graphs/radar.js +0 -730
- package/dist/components/graphs/radar.js.map +0 -1
- package/dist/components/layout/layout.js +0 -191
- package/dist/components/layout/layout.js.map +0 -1
- package/dist/configuration-non-customizable.js.map +0 -1
- package/dist/demo/create-codesandbox.d.ts +0 -71
- package/dist/demo/create-codesandbox.js +0 -165
- package/dist/demo/create-codesandbox.js.map +0 -1
- package/dist/demo/data/bundle.js +0 -1
- package/dist/demo/styles.css +0 -27818
- package/dist/demo/styles.css.map +0 -1
- package/dist/demo/styles.min.css +0 -1
- package/dist/demo/styles.min.css.map +0 -1
- package/dist/demo/tsconfig.tsbuildinfo +0 -3740
- package/dist/demo/utils.js.map +0 -1
- package/dist/model/treemap.js +0 -44
- package/dist/model/treemap.js.map +0 -1
- package/dist/package.json +0 -147
- package/dist/polyfills.d.ts +0 -0
- package/dist/services/essentials/dom-utils.js +0 -405
- package/dist/services/essentials/dom-utils.js.map +0 -1
- package/dist/styles/_chart-holder.scss +0 -52
- package/dist/styles/color-palatte.scss +0 -362
- package/dist/styles/colors.scss +0 -131
- package/dist/styles/components/_axis.scss +0 -52
- package/dist/styles/components/_card.scss +0 -101
- package/dist/styles/components/_circle.scss +0 -49
- package/dist/styles/components/_edge.scss +0 -67
- package/dist/styles/components/_marker.scss +0 -8
- package/dist/styles/components/_modal.scss +0 -48
- package/dist/styles/components/_skeleton-lines.scss +0 -36
- package/dist/styles/components/_tooltip.scss +0 -123
- package/dist/styles/components/diagrams/_card-node.scss +0 -97
- package/dist/styles/components/diagrams/_edge.scss +0 -66
- package/dist/styles/components/diagrams/_shape-node.scss +0 -89
- package/dist/styles/components/diagrams/index.scss +0 -4
- package/dist/styles/styles.scss +0 -35
- package/dist/styles/tokens.scss +0 -373
- package/dist/styles.css +0 -6202
- package/dist/styles.css.map +0 -1
- package/dist/styles.min.css +0 -1
- package/dist/styles.min.css.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -4699
- package/karma.conf.js +0 -99
- package/rollup.config.js +0 -55
- package/rollup.demo.js +0 -43
- package/src/axis-chart.ts +0 -237
- package/src/chart.ts +0 -292
- package/src/charts/alluvial.ts +0 -53
- package/src/charts/area-stacked.ts +0 -58
- package/src/charts/area.ts +0 -61
- package/src/charts/bar-grouped.ts +0 -55
- package/src/charts/bar-simple.ts +0 -55
- package/src/charts/bar-stacked.ts +0 -57
- package/src/charts/boxplot.ts +0 -65
- package/src/charts/bubble.ts +0 -58
- package/src/charts/bullet.ts +0 -58
- package/src/charts/circle-pack.ts +0 -49
- package/src/charts/combo.ts +0 -163
- package/src/charts/donut.ts +0 -46
- package/src/charts/gauge.ts +0 -37
- package/src/charts/heatmap.ts +0 -191
- package/src/charts/histogram.ts +0 -59
- package/src/charts/line.ts +0 -57
- package/src/charts/lollipop.ts +0 -60
- package/src/charts/meter.ts +0 -104
- package/src/charts/pie.ts +0 -60
- package/src/charts/radar.ts +0 -45
- package/src/charts/scatter.ts +0 -58
- package/src/charts/tree.ts +0 -51
- package/src/charts/treemap.ts +0 -47
- package/src/charts/wordcloud.ts +0 -53
- package/src/components/axes/axis.ts +0 -819
- package/src/components/axes/chart-clip.ts +0 -60
- package/src/components/axes/grid-brush.ts +0 -187
- package/src/components/axes/grid.ts +0 -309
- package/src/components/axes/hover-axis.ts +0 -266
- package/src/components/axes/ruler-binned.ts +0 -160
- package/src/components/axes/ruler-stacked.ts +0 -7
- package/src/components/axes/ruler.ts +0 -274
- package/src/components/axes/toolbar.ts +0 -668
- package/src/components/axes/two-dimensional-axes.ts +0 -143
- package/src/components/axes/zero-line.ts +0 -71
- package/src/components/axes/zoom-bar.ts +0 -741
- package/src/components/component.ts +0 -163
- package/src/components/diagrams/buildPaths.ts +0 -82
- package/src/components/diagrams/markerDefinitions.ts +0 -43
- package/src/components/essentials/canvas-chart-clip.ts +0 -38
- package/src/components/essentials/color-scale-legend.ts +0 -347
- package/src/components/essentials/highlights.ts +0 -215
- package/src/components/essentials/legend.spec.ts +0 -61
- package/src/components/essentials/legend.ts +0 -537
- package/src/components/essentials/modal.ts +0 -143
- package/src/components/essentials/threshold.ts +0 -386
- package/src/components/essentials/title-meter.ts +0 -395
- package/src/components/essentials/title.spec.ts +0 -48
- package/src/components/essentials/title.ts +0 -135
- package/src/components/essentials/tooltip-axis.ts +0 -136
- package/src/components/essentials/tooltip.ts +0 -373
- package/src/components/graphs/alluvial.ts +0 -724
- package/src/components/graphs/area-stacked.ts +0 -154
- package/src/components/graphs/area.ts +0 -326
- package/src/components/graphs/bar-grouped.ts +0 -369
- package/src/components/graphs/bar-simple.ts +0 -253
- package/src/components/graphs/bar-stacked.ts +0 -338
- package/src/components/graphs/bar.ts +0 -50
- package/src/components/graphs/boxplot.ts +0 -595
- package/src/components/graphs/bubble.ts +0 -128
- package/src/components/graphs/bullet.ts +0 -492
- package/src/components/graphs/circle-pack.ts +0 -489
- package/src/components/graphs/donut.ts +0 -124
- package/src/components/graphs/gauge.ts +0 -484
- package/src/components/graphs/heatmap.ts +0 -473
- package/src/components/graphs/histogram.ts +0 -263
- package/src/components/graphs/line.ts +0 -203
- package/src/components/graphs/lollipop.ts +0 -212
- package/src/components/graphs/meter.ts +0 -339
- package/src/components/graphs/pie.ts +0 -526
- package/src/components/graphs/radar.ts +0 -1027
- package/src/components/graphs/scatter-stacked.ts +0 -162
- package/src/components/graphs/scatter.ts +0 -513
- package/src/components/graphs/skeleton-lines.ts +0 -95
- package/src/components/graphs/skeleton.ts +0 -352
- package/src/components/graphs/tree.ts +0 -297
- package/src/components/graphs/treemap.ts +0 -413
- package/src/components/graphs/wordcloud.ts +0 -303
- package/src/components/index.ts +0 -61
- package/src/components/layout/layout.ts +0 -260
- package/src/components/layout/spacer.ts +0 -20
- package/src/configuration-non-customizable.ts +0 -295
- package/src/configuration.ts +0 -640
- package/src/index.ts +0 -7
- package/src/interfaces/a11y.ts +0 -12
- package/src/interfaces/axis-scales.ts +0 -198
- package/src/interfaces/charts.ts +0 -553
- package/src/interfaces/components.ts +0 -251
- package/src/interfaces/enums.ts +0 -279
- package/src/interfaces/events.ts +0 -256
- package/src/interfaces/layout.ts +0 -16
- package/src/interfaces/model.ts +0 -39
- package/src/interfaces/truncation.ts +0 -17
- package/src/model/alluvial.ts +0 -29
- package/src/model/binned-charts.ts +0 -33
- package/src/model/boxplot.ts +0 -194
- package/src/model/bullet.ts +0 -66
- package/src/model/cartesian-charts.ts +0 -236
- package/src/model/circle-pack.ts +0 -207
- package/src/model/gauge.ts +0 -33
- package/src/model/heatmap.ts +0 -337
- package/src/model/meter.ts +0 -124
- package/src/model/model.ts +0 -886
- package/src/model/pie.ts +0 -52
- package/src/model/radar.ts +0 -46
- package/src/model/tree.ts +0 -42
- package/src/model/treemap.ts +0 -33
- package/src/model/wordcloud.ts +0 -29
- package/src/polyfills.ts +0 -40
- package/src/selectedGroups.spec.ts +0 -56
- package/src/services/angle-utils.ts +0 -100
- package/src/services/canvas-zoom.ts +0 -69
- package/src/services/curves.ts +0 -92
- package/src/services/essentials/dom-utils.ts +0 -500
- package/src/services/essentials/events.ts +0 -40
- package/src/services/essentials/files.ts +0 -55
- package/src/services/essentials/gradient-utils.ts +0 -74
- package/src/services/essentials/transitions.ts +0 -44
- package/src/services/index.ts +0 -12
- package/src/services/scales-cartesian.ts +0 -904
- package/src/services/service.ts +0 -31
- package/src/services/time-series.spec.ts +0 -332
- package/src/services/time-series.ts +0 -175
- package/src/services/zoom.ts +0 -294
- package/src/styles/_chart-holder.scss +0 -50
- package/src/styles/_type.scss +0 -44
- package/src/styles/color-palatte.scss +0 -362
- package/src/styles/colors.scss +0 -131
- package/src/styles/components/_axis.scss +0 -52
- package/src/styles/components/_callouts.scss +0 -5
- package/src/styles/components/_card.scss +0 -101
- package/src/styles/components/_circle.scss +0 -49
- package/src/styles/components/_color-legend.scss +0 -11
- package/src/styles/components/_edge.scss +0 -67
- package/src/styles/components/_grid-brush.scss +0 -20
- package/src/styles/components/_grid.scss +0 -30
- package/src/styles/components/_highlights.scss +0 -7
- package/src/styles/components/_layout.scss +0 -35
- package/src/styles/components/_legend.scss +0 -97
- package/src/styles/components/_marker.scss +0 -8
- package/src/styles/components/_meter-title.scss +0 -37
- package/src/styles/components/_modal.scss +0 -48
- package/src/styles/components/_ruler.scss +0 -9
- package/src/styles/components/_skeleton-lines.scss +0 -36
- package/src/styles/components/_skeleton.scss +0 -50
- package/src/styles/components/_threshold.scss +0 -53
- package/src/styles/components/_title.scss +0 -22
- package/src/styles/components/_toolbar.scss +0 -60
- package/src/styles/components/_tooltip.scss +0 -123
- package/src/styles/components/_zero-line.scss +0 -5
- package/src/styles/components/_zoom-bar.scss +0 -53
- package/src/styles/components/diagrams/_card-node.scss +0 -97
- package/src/styles/components/diagrams/_edge.scss +0 -66
- package/src/styles/components/diagrams/_marker.scss +0 -7
- package/src/styles/components/diagrams/_shape-node.scss +0 -89
- package/src/styles/components/diagrams/index.scss +0 -4
- package/src/styles/components/index.scss +0 -20
- package/src/styles/graphs/_alluvial.scss +0 -17
- package/src/styles/graphs/_area.scss +0 -4
- package/src/styles/graphs/_bubble.scss +0 -18
- package/src/styles/graphs/_bullet.scss +0 -36
- package/src/styles/graphs/_circle-pack.scss +0 -36
- package/src/styles/graphs/_donut.scss +0 -3
- package/src/styles/graphs/_gauge.scss +0 -23
- package/src/styles/graphs/_heatmap.scss +0 -60
- package/src/styles/graphs/_line.scss +0 -28
- package/src/styles/graphs/_lollipop.scss +0 -9
- package/src/styles/graphs/_meter.scss +0 -34
- package/src/styles/graphs/_pie.scss +0 -3
- package/src/styles/graphs/_radar.scss +0 -18
- package/src/styles/graphs/_scatter-stacked.scss +0 -12
- package/src/styles/graphs/_scatter.scss +0 -23
- package/src/styles/graphs/_tree.scss +0 -47
- package/src/styles/graphs/_treemap.scss +0 -5
- package/src/styles/graphs/_wordcloud.scss +0 -9
- package/src/styles/graphs/index.scss +0 -18
- package/src/styles/styles.scss +0 -35
- package/src/styles/tokens.scss +0 -373
- package/src/tests/index.ts +0 -1
- package/src/tests/test-environment.ts +0 -43
- package/src/tests/tools.ts +0 -17
- package/src/tools.spec.ts +0 -98
- package/src/tools.ts +0 -488
- package/src/tsconfig.json +0 -8
- package/stories/all.stories.ts +0 -139
- package/stories/tutorials/api.ts +0 -72
- package/stories/tutorials/color-palette.ts +0 -80
- package/stories/tutorials/combo-charts.ts +0 -114
- package/stories/tutorials/dual-axes.ts +0 -54
- package/stories/tutorials/event-listeners.ts +0 -31
- package/stories/tutorials/getting-started/angular.ts +0 -142
- package/stories/tutorials/getting-started/react.ts +0 -10
- package/stories/tutorials/getting-started/vanilla.ts +0 -149
- package/stories/tutorials/getting-started/vue.ts +0 -121
- package/stories/tutorials/index.ts +0 -14
- package/stories/tutorials/tabular-data-format.ts +0 -134
- package/stories/tutorials/themes.ts +0 -10
- package/stories/tutorials.stories.ts +0 -42
- package/tsconfig.json +0 -28
- package/tslint.json +0 -100
- package/yarn-error.log +0 -21024
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,405 @@
|
|
|
1
|
+
var __extends = (this && this.__extends) || (function () {
|
|
2
|
+
var extendStatics = function (d, b) {
|
|
3
|
+
extendStatics = Object.setPrototypeOf ||
|
|
4
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
5
|
+
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
|
|
6
|
+
return extendStatics(d, b);
|
|
7
|
+
};
|
|
8
|
+
return function (d, b) {
|
|
9
|
+
extendStatics(d, b);
|
|
10
|
+
function __() { this.constructor = d; }
|
|
11
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
12
|
+
};
|
|
13
|
+
})();
|
|
14
|
+
// Internal Imports
|
|
15
|
+
import { Service } from '../service';
|
|
16
|
+
import { Events } from './../../interfaces';
|
|
17
|
+
// D3 Imports
|
|
18
|
+
import { select } from 'd3-selection';
|
|
19
|
+
import { Tools } from '../../tools';
|
|
20
|
+
// import the settings for the css prefix
|
|
21
|
+
import { carbonPrefix } from '../../configuration-non-customizable';
|
|
22
|
+
// MISC
|
|
23
|
+
import ResizeObserver from 'resize-observer-polyfill';
|
|
24
|
+
import domToImage from 'dom-to-image';
|
|
25
|
+
var CSS_VERIFIER_ELEMENT_CLASSNAME = 'DONT_STYLE_ME_css_styles_verifier';
|
|
26
|
+
var DOMUtils = /** @class */ (function (_super) {
|
|
27
|
+
__extends(DOMUtils, _super);
|
|
28
|
+
function DOMUtils(model, services) {
|
|
29
|
+
var _this = _super.call(this, model, services) || this;
|
|
30
|
+
_this.chartID = Math.floor((1 + Math.random()) * 0x1000000000000).toString(16);
|
|
31
|
+
return _this;
|
|
32
|
+
}
|
|
33
|
+
DOMUtils.getHTMLElementSize = function (element) {
|
|
34
|
+
return {
|
|
35
|
+
width: element.clientWidth,
|
|
36
|
+
height: element.clientHeight,
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
DOMUtils.getSVGElementSize = function (svgSelector, options) {
|
|
40
|
+
if (options === void 0) { options = {
|
|
41
|
+
useAttrs: false,
|
|
42
|
+
useClientDimensions: false,
|
|
43
|
+
useBBox: false,
|
|
44
|
+
useBoundingRect: false,
|
|
45
|
+
}; }
|
|
46
|
+
if (!svgSelector.attr) {
|
|
47
|
+
svgSelector = select(svgSelector);
|
|
48
|
+
}
|
|
49
|
+
var finalDimensions = {
|
|
50
|
+
width: 0,
|
|
51
|
+
height: 0,
|
|
52
|
+
};
|
|
53
|
+
var validateAndSetDimensions = function (dimensions) {
|
|
54
|
+
if (dimensions) {
|
|
55
|
+
Object.keys(finalDimensions).forEach(function (dimensionKey) {
|
|
56
|
+
if (dimensions[dimensionKey]) {
|
|
57
|
+
var dimension = dimensions[dimensionKey];
|
|
58
|
+
var dimensionNumber = parseFloat(dimension);
|
|
59
|
+
if (dimension &&
|
|
60
|
+
dimensionNumber > finalDimensions[dimensionKey] &&
|
|
61
|
+
('' + dimension).indexOf('%') === -1) {
|
|
62
|
+
finalDimensions[dimensionKey] = dimensionNumber;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
var attrDimensions = {
|
|
69
|
+
width: svgSelector.attr('width'),
|
|
70
|
+
height: svgSelector.attr('height'),
|
|
71
|
+
};
|
|
72
|
+
var bbox, bboxDimensions, boundingRect, boundingRectDimensions;
|
|
73
|
+
// In many versions of Firefox
|
|
74
|
+
// getBBox will cause an "NSFailure" error
|
|
75
|
+
try {
|
|
76
|
+
bbox = svgSelector.node().getBBox();
|
|
77
|
+
bboxDimensions = {
|
|
78
|
+
width: bbox.width,
|
|
79
|
+
height: bbox.height,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
catch (e) { }
|
|
83
|
+
try {
|
|
84
|
+
boundingRect = svgSelector.node().getBoundingClientRect();
|
|
85
|
+
boundingRectDimensions = {
|
|
86
|
+
width: boundingRect.width,
|
|
87
|
+
height: boundingRect.height,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
catch (e) { }
|
|
91
|
+
var clientDimensions = {
|
|
92
|
+
width: svgSelector.node().clientWidth,
|
|
93
|
+
height: svgSelector.node().clientHeight,
|
|
94
|
+
};
|
|
95
|
+
// If both attribute values are numbers
|
|
96
|
+
// And not percentages or NaN
|
|
97
|
+
if (options) {
|
|
98
|
+
if (options.useAttrs) {
|
|
99
|
+
validateAndSetDimensions(attrDimensions);
|
|
100
|
+
if (finalDimensions.width > 0 && finalDimensions.height > 0) {
|
|
101
|
+
return finalDimensions;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
if (options.useClientDimensions) {
|
|
105
|
+
validateAndSetDimensions(clientDimensions);
|
|
106
|
+
if (finalDimensions.width > 0 && finalDimensions.height > 0) {
|
|
107
|
+
return clientDimensions;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
if (options.useBBox) {
|
|
111
|
+
validateAndSetDimensions(bboxDimensions);
|
|
112
|
+
if (finalDimensions.width > 0 && finalDimensions.height > 0) {
|
|
113
|
+
return bboxDimensions;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (options.useBoundingRect) {
|
|
117
|
+
validateAndSetDimensions(boundingRectDimensions);
|
|
118
|
+
if (finalDimensions.width > 0 && finalDimensions.height > 0) {
|
|
119
|
+
return boundingRectDimensions;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
try {
|
|
124
|
+
var nativeDimensions = {
|
|
125
|
+
width: Tools.getProperty(svgSelector.node(), 'width', 'baseVal', 'value'),
|
|
126
|
+
height: Tools.getProperty(svgSelector.node(), 'height', 'baseVal', 'value'),
|
|
127
|
+
};
|
|
128
|
+
validateAndSetDimensions(nativeDimensions);
|
|
129
|
+
}
|
|
130
|
+
catch (e) {
|
|
131
|
+
validateAndSetDimensions(clientDimensions);
|
|
132
|
+
validateAndSetDimensions(bboxDimensions);
|
|
133
|
+
validateAndSetDimensions(attrDimensions);
|
|
134
|
+
}
|
|
135
|
+
return finalDimensions;
|
|
136
|
+
};
|
|
137
|
+
DOMUtils.appendOrSelect = function (parent, query) {
|
|
138
|
+
var selection = parent.select("" + query);
|
|
139
|
+
if (selection.empty()) {
|
|
140
|
+
// see if there is an id
|
|
141
|
+
var querySections = query.split('#');
|
|
142
|
+
var elementToAppend = void 0;
|
|
143
|
+
var id = void 0;
|
|
144
|
+
// if there is an id
|
|
145
|
+
if (querySections.length === 2) {
|
|
146
|
+
// take out the element to append
|
|
147
|
+
elementToAppend = querySections[0];
|
|
148
|
+
// split it by classes
|
|
149
|
+
querySections = querySections[1].split('.');
|
|
150
|
+
// the first string is the id
|
|
151
|
+
id = querySections[0];
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
querySections = query.split('.');
|
|
155
|
+
elementToAppend = querySections[0];
|
|
156
|
+
}
|
|
157
|
+
return parent
|
|
158
|
+
.append(elementToAppend)
|
|
159
|
+
.attr('id', id)
|
|
160
|
+
.attr('class', querySections.slice(1).join(' '));
|
|
161
|
+
}
|
|
162
|
+
return selection;
|
|
163
|
+
};
|
|
164
|
+
DOMUtils.prototype.init = function () {
|
|
165
|
+
// Add width & height to the chart holder if necessary, and add a classname
|
|
166
|
+
this.styleHolderElement();
|
|
167
|
+
this.addMainContainer();
|
|
168
|
+
this.verifyCSSStylesBeingApplied();
|
|
169
|
+
if (this.model.getOptions().resizable) {
|
|
170
|
+
this.addResizeListener();
|
|
171
|
+
}
|
|
172
|
+
this.addHolderListeners();
|
|
173
|
+
this.handleFullscreenChange();
|
|
174
|
+
};
|
|
175
|
+
DOMUtils.prototype.getChartID = function () {
|
|
176
|
+
return this.chartID;
|
|
177
|
+
};
|
|
178
|
+
DOMUtils.prototype.generateElementIDString = function (originalID) {
|
|
179
|
+
return "chart-" + this.chartID + "-" + originalID;
|
|
180
|
+
};
|
|
181
|
+
DOMUtils.prototype.addMainContainer = function () {
|
|
182
|
+
var options = this.model.getOptions();
|
|
183
|
+
var chartsprefix = Tools.getProperty(options, 'style', 'prefix');
|
|
184
|
+
var mainContainer = select(this.getHolder())
|
|
185
|
+
.append('div')
|
|
186
|
+
.classed(carbonPrefix + "--" + chartsprefix + "--chart-wrapper", true)
|
|
187
|
+
.style('height', '100%')
|
|
188
|
+
.style('width', '100%');
|
|
189
|
+
mainContainer.append('g').attr('class', CSS_VERIFIER_ELEMENT_CLASSNAME);
|
|
190
|
+
this.mainContainer = mainContainer.node();
|
|
191
|
+
};
|
|
192
|
+
DOMUtils.prototype.update = function () {
|
|
193
|
+
this.styleHolderElement();
|
|
194
|
+
};
|
|
195
|
+
DOMUtils.prototype.styleHolderElement = function () {
|
|
196
|
+
var holderElement = this.getHolder();
|
|
197
|
+
// Add class to chart holder
|
|
198
|
+
select(this.getHolder()).classed(carbonPrefix + "--chart-holder", true);
|
|
199
|
+
// In order for resize events to not clash with these updates
|
|
200
|
+
// We'll check if the width & height values passed in options
|
|
201
|
+
// Have changed, before setting them to the holder
|
|
202
|
+
var _a = this.model.getOptions(), width = _a.width, height = _a.height;
|
|
203
|
+
if (width !== this.width) {
|
|
204
|
+
// Apply formatted width attribute to chart
|
|
205
|
+
holderElement.style.width = width;
|
|
206
|
+
this.width = width;
|
|
207
|
+
}
|
|
208
|
+
if (height !== this.height) {
|
|
209
|
+
// Apply formatted width attribute to chart
|
|
210
|
+
holderElement.style.height = height;
|
|
211
|
+
this.height = height;
|
|
212
|
+
}
|
|
213
|
+
};
|
|
214
|
+
DOMUtils.prototype.getHolder = function () {
|
|
215
|
+
return this.model.get('holder');
|
|
216
|
+
};
|
|
217
|
+
DOMUtils.prototype.exportToJPG = function () {
|
|
218
|
+
var self = this;
|
|
219
|
+
var holder = this.getHolder();
|
|
220
|
+
var holderSelection = select(holder);
|
|
221
|
+
holderSelection.classed('filled', true);
|
|
222
|
+
domToImage
|
|
223
|
+
.toJpeg(this.getMainContainer(), {
|
|
224
|
+
bgcolor: typeof window !== 'undefined'
|
|
225
|
+
? window
|
|
226
|
+
.getComputedStyle(holder)
|
|
227
|
+
.getPropertyValue('background-color')
|
|
228
|
+
: undefined,
|
|
229
|
+
quality: 1,
|
|
230
|
+
// Remove the toolbar
|
|
231
|
+
filter: function (node) {
|
|
232
|
+
if (node.classList &&
|
|
233
|
+
node.classList.contains('cds--cc--toolbar')) {
|
|
234
|
+
return false;
|
|
235
|
+
}
|
|
236
|
+
return true;
|
|
237
|
+
},
|
|
238
|
+
})
|
|
239
|
+
.then(function (dataUrl) {
|
|
240
|
+
self.services.files.downloadImage(dataUrl, 'myChart.jpg');
|
|
241
|
+
holderSelection.classed('filled', false);
|
|
242
|
+
});
|
|
243
|
+
};
|
|
244
|
+
DOMUtils.prototype.exportToPNG = function () {
|
|
245
|
+
var self = this;
|
|
246
|
+
var holder = this.getHolder();
|
|
247
|
+
var holderSelection = select(holder);
|
|
248
|
+
holderSelection.classed('filled', true);
|
|
249
|
+
domToImage
|
|
250
|
+
.toPng(this.getMainContainer(), {
|
|
251
|
+
bgcolor: typeof window !== 'undefined'
|
|
252
|
+
? window
|
|
253
|
+
.getComputedStyle(holder)
|
|
254
|
+
.getPropertyValue('background-color')
|
|
255
|
+
: undefined,
|
|
256
|
+
quality: 1,
|
|
257
|
+
// Remove the toolbar
|
|
258
|
+
filter: function (node) {
|
|
259
|
+
if (node.classList &&
|
|
260
|
+
node.classList.contains('cds--cc--toolbar')) {
|
|
261
|
+
return false;
|
|
262
|
+
}
|
|
263
|
+
return true;
|
|
264
|
+
},
|
|
265
|
+
})
|
|
266
|
+
.then(function (dataUrl) {
|
|
267
|
+
self.services.files.downloadImage(dataUrl, 'myChart.png');
|
|
268
|
+
holderSelection.classed('filled', false);
|
|
269
|
+
})
|
|
270
|
+
.catch(function (error) {
|
|
271
|
+
console.error('oops, something went wrong!', error);
|
|
272
|
+
});
|
|
273
|
+
};
|
|
274
|
+
DOMUtils.prototype.toggleFullscreen = function () {
|
|
275
|
+
var holder = this.getHolder();
|
|
276
|
+
var holderSelection = select(holder);
|
|
277
|
+
var isFullScreen = holderSelection.classed('fullscreen');
|
|
278
|
+
if (isFullScreen &&
|
|
279
|
+
(document.fullscreenElement ||
|
|
280
|
+
document['webkitFullscreenElement'] ||
|
|
281
|
+
document['mozFullScreenElement'] ||
|
|
282
|
+
document['msFullscreenElement'])) {
|
|
283
|
+
// Call the correct function depending on the browser
|
|
284
|
+
if (document.exitFullscreen) {
|
|
285
|
+
document.exitFullscreen();
|
|
286
|
+
}
|
|
287
|
+
else if (document['webkitExitFullscreen']) {
|
|
288
|
+
document['webkitExitFullscreen']();
|
|
289
|
+
}
|
|
290
|
+
else if (document['mozCancelFullScreen']) {
|
|
291
|
+
document['mozCancelFullScreen']();
|
|
292
|
+
}
|
|
293
|
+
else if (document['msExitFullscreen']) {
|
|
294
|
+
document['msExitFullscreen']();
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
else {
|
|
298
|
+
// Call the correct function depending on the browser
|
|
299
|
+
if (holder.requestFullscreen) {
|
|
300
|
+
holder.requestFullscreen();
|
|
301
|
+
}
|
|
302
|
+
else if (holder.webkitRequestFullscreen) {
|
|
303
|
+
holder.webkitRequestFullscreen();
|
|
304
|
+
}
|
|
305
|
+
else if (holder.mozRequestFullScreen) {
|
|
306
|
+
holder.mozRequestFullScreen();
|
|
307
|
+
}
|
|
308
|
+
else if (holder.msRequestFullscreen) {
|
|
309
|
+
holder.msRequestFullscreen();
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
};
|
|
313
|
+
DOMUtils.prototype.handleFullscreenChange = function () {
|
|
314
|
+
var _this = this;
|
|
315
|
+
document.addEventListener('fullscreenchange', function () {
|
|
316
|
+
var holderSelection = select(_this.getHolder());
|
|
317
|
+
var isFullScreen = holderSelection.classed('fullscreen');
|
|
318
|
+
// Toggle the `fullscreen` classname
|
|
319
|
+
holderSelection.classed('fullscreen', !isFullScreen);
|
|
320
|
+
});
|
|
321
|
+
};
|
|
322
|
+
DOMUtils.prototype.verifyCSSStylesBeingApplied = function () {
|
|
323
|
+
var _this = this;
|
|
324
|
+
// setTimeout is needed here since in `addSVGElement()` we're appending the
|
|
325
|
+
// CSS verifier element, and need to allow some time for it to become available
|
|
326
|
+
// in the DOM
|
|
327
|
+
setTimeout(function () {
|
|
328
|
+
var cssVerifierElement = select(_this.mainContainer)
|
|
329
|
+
.select("g." + CSS_VERIFIER_ELEMENT_CLASSNAME)
|
|
330
|
+
.node();
|
|
331
|
+
var computedStyles = getComputedStyle(cssVerifierElement);
|
|
332
|
+
if (computedStyles.getPropertyValue('overflow') !== 'hidden' ||
|
|
333
|
+
computedStyles.getPropertyValue('opacity') !== '0') {
|
|
334
|
+
console.error('Missing CSS styles for Carbon Charts. Please read the Carbon Charts getting started guide.');
|
|
335
|
+
}
|
|
336
|
+
});
|
|
337
|
+
};
|
|
338
|
+
DOMUtils.prototype.setSVGMaxHeight = function () {
|
|
339
|
+
// if there is a set height on the holder, leave the chart svg height at 100%
|
|
340
|
+
if (!this.model.getOptions().height) {
|
|
341
|
+
var chartHeight = DOMUtils.getSVGElementSize(select(this.mainContainer), { useBBox: true }).height;
|
|
342
|
+
var chartSVGSelector = select(this.mainContainer).attr('class');
|
|
343
|
+
var children = select(this.mainContainer).selectAll("." + chartSVGSelector + " > svg");
|
|
344
|
+
// get the height of the children SVGs (spacers, titles, etc)
|
|
345
|
+
var childrenHeight_1 = 0;
|
|
346
|
+
children.nodes().forEach(function (childSVG) {
|
|
347
|
+
childrenHeight_1 += Number(DOMUtils.getSVGElementSize(select(childSVG), {
|
|
348
|
+
useBBox: true,
|
|
349
|
+
}).height);
|
|
350
|
+
});
|
|
351
|
+
// set the chart svg height to the children height
|
|
352
|
+
// forcing the chart not to take up any more space than it requires
|
|
353
|
+
childrenHeight_1 <= chartHeight
|
|
354
|
+
? select(this.mainContainer).attr('height', childrenHeight_1)
|
|
355
|
+
: select(this.mainContainer).attr('height', '100%');
|
|
356
|
+
}
|
|
357
|
+
};
|
|
358
|
+
DOMUtils.prototype.getMainContainer = function () {
|
|
359
|
+
return this.mainContainer;
|
|
360
|
+
};
|
|
361
|
+
DOMUtils.prototype.addHolderListeners = function () {
|
|
362
|
+
var _this = this;
|
|
363
|
+
var holder = this.getHolder();
|
|
364
|
+
if (!holder) {
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
select(holder)
|
|
368
|
+
.on('mouseover', function () {
|
|
369
|
+
// Dispatch event
|
|
370
|
+
_this.services.events.dispatchEvent(Events.Chart.MOUSEOVER);
|
|
371
|
+
})
|
|
372
|
+
.on('mouseout', function () {
|
|
373
|
+
// Dispatch event
|
|
374
|
+
_this.services.events.dispatchEvent(Events.Chart.MOUSEOUT);
|
|
375
|
+
});
|
|
376
|
+
};
|
|
377
|
+
DOMUtils.prototype.addResizeListener = function () {
|
|
378
|
+
var _this = this;
|
|
379
|
+
var holder = this.getHolder();
|
|
380
|
+
if (!holder) {
|
|
381
|
+
return;
|
|
382
|
+
}
|
|
383
|
+
// Grab current dimensions of the chart holder
|
|
384
|
+
var containerWidth = holder.clientWidth;
|
|
385
|
+
var containerHeight = holder.clientHeight;
|
|
386
|
+
// The resize callback function
|
|
387
|
+
var resizeCallback = Tools.debounce(function (entries, observer) {
|
|
388
|
+
if (!holder) {
|
|
389
|
+
return;
|
|
390
|
+
}
|
|
391
|
+
if (Math.abs(containerWidth - holder.clientWidth) > 1 ||
|
|
392
|
+
Math.abs(containerHeight - holder.clientHeight) > 1) {
|
|
393
|
+
containerWidth = holder.clientWidth;
|
|
394
|
+
containerHeight = holder.clientHeight;
|
|
395
|
+
_this.services.events.dispatchEvent(Events.Chart.RESIZE);
|
|
396
|
+
}
|
|
397
|
+
}, 12.5);
|
|
398
|
+
// Observe the behaviour of resizing on the holder
|
|
399
|
+
var resizeObserver = new ResizeObserver(resizeCallback);
|
|
400
|
+
resizeObserver.observe(holder);
|
|
401
|
+
};
|
|
402
|
+
return DOMUtils;
|
|
403
|
+
}(Service));
|
|
404
|
+
export { DOMUtils };
|
|
405
|
+
//# sourceMappingURL=../../../src/services/essentials/dom-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dom-utils.js","sourceRoot":"","sources":["dom-utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport { Service } from '../service';\nimport { Events } from './../../interfaces';\n\n// D3 Imports\nimport { select, Selection } from 'd3-selection';\nimport { Tools } from '../../tools';\n\n// import the settings for the css prefix\nimport { carbonPrefix } from '../../configuration-non-customizable';\n\n// MISC\nimport ResizeObserver from 'resize-observer-polyfill';\n\nimport domToImage from 'dom-to-image';\n\nconst CSS_VERIFIER_ELEMENT_CLASSNAME = 'DONT_STYLE_ME_css_styles_verifier';\n\ninterface getSVGElementSizeOptions {\n\tuseAttrs?: boolean;\n\tuseClientDimensions?: boolean;\n\tuseBBox?: boolean;\n\tuseBoundingRect?: boolean;\n}\n\nexport class DOMUtils extends Service {\n\tprivate chartID = Math.floor(\n\t\t(1 + Math.random()) * 0x1000000000000\n\t).toString(16);\n\n\tconstructor(model: any, services: any) {\n\t\tsuper(model, services);\n\t}\n\n\tstatic getHTMLElementSize(element: HTMLElement) {\n\t\treturn {\n\t\t\twidth: element.clientWidth,\n\t\t\theight: element.clientHeight,\n\t\t};\n\t}\n\n\tstatic getSVGElementSize(\n\t\tsvgSelector: Selection<any, any, any, any>,\n\t\toptions: getSVGElementSizeOptions = {\n\t\t\tuseAttrs: false,\n\t\t\tuseClientDimensions: false,\n\t\t\tuseBBox: false,\n\t\t\tuseBoundingRect: false,\n\t\t}\n\t) {\n\t\tif (!svgSelector.attr) {\n\t\t\tsvgSelector = select(svgSelector as any);\n\t\t}\n\n\t\tconst finalDimensions = {\n\t\t\twidth: 0,\n\t\t\theight: 0,\n\t\t};\n\n\t\tconst validateAndSetDimensions = (dimensions) => {\n\t\t\tif (dimensions) {\n\t\t\t\tObject.keys(finalDimensions).forEach((dimensionKey) => {\n\t\t\t\t\tif (dimensions[dimensionKey]) {\n\t\t\t\t\t\tconst dimension = dimensions[dimensionKey];\n\t\t\t\t\t\tconst dimensionNumber = parseFloat(dimension);\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tdimension &&\n\t\t\t\t\t\t\tdimensionNumber > finalDimensions[dimensionKey] &&\n\t\t\t\t\t\t\t('' + dimension).indexOf('%') === -1\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tfinalDimensions[dimensionKey] = dimensionNumber;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\n\t\tconst attrDimensions = {\n\t\t\twidth: svgSelector.attr('width'),\n\t\t\theight: svgSelector.attr('height'),\n\t\t};\n\n\t\tlet bbox, bboxDimensions, boundingRect, boundingRectDimensions;\n\t\t// In many versions of Firefox\n\t\t// getBBox will cause an \"NSFailure\" error\n\t\ttry {\n\t\t\tbbox = svgSelector.node().getBBox();\n\t\t\tbboxDimensions = {\n\t\t\t\twidth: bbox.width,\n\t\t\t\theight: bbox.height,\n\t\t\t};\n\t\t} catch (e) {}\n\n\t\ttry {\n\t\t\tboundingRect = svgSelector.node().getBoundingClientRect();\n\t\t\tboundingRectDimensions = {\n\t\t\t\twidth: boundingRect.width,\n\t\t\t\theight: boundingRect.height,\n\t\t\t};\n\t\t} catch (e) {}\n\n\t\tconst clientDimensions = {\n\t\t\twidth: svgSelector.node().clientWidth,\n\t\t\theight: svgSelector.node().clientHeight,\n\t\t};\n\n\t\t// If both attribute values are numbers\n\t\t// And not percentages or NaN\n\t\tif (options) {\n\t\t\tif (options.useAttrs) {\n\t\t\t\tvalidateAndSetDimensions(attrDimensions);\n\n\t\t\t\tif (finalDimensions.width > 0 && finalDimensions.height > 0) {\n\t\t\t\t\treturn finalDimensions;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (options.useClientDimensions) {\n\t\t\t\tvalidateAndSetDimensions(clientDimensions);\n\n\t\t\t\tif (finalDimensions.width > 0 && finalDimensions.height > 0) {\n\t\t\t\t\treturn clientDimensions;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (options.useBBox) {\n\t\t\t\tvalidateAndSetDimensions(bboxDimensions);\n\n\t\t\t\tif (finalDimensions.width > 0 && finalDimensions.height > 0) {\n\t\t\t\t\treturn bboxDimensions;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (options.useBoundingRect) {\n\t\t\t\tvalidateAndSetDimensions(boundingRectDimensions);\n\n\t\t\t\tif (finalDimensions.width > 0 && finalDimensions.height > 0) {\n\t\t\t\t\treturn boundingRectDimensions;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\tconst nativeDimensions = {\n\t\t\t\twidth: Tools.getProperty(\n\t\t\t\t\tsvgSelector.node(),\n\t\t\t\t\t'width',\n\t\t\t\t\t'baseVal',\n\t\t\t\t\t'value'\n\t\t\t\t),\n\t\t\t\theight: Tools.getProperty(\n\t\t\t\t\tsvgSelector.node(),\n\t\t\t\t\t'height',\n\t\t\t\t\t'baseVal',\n\t\t\t\t\t'value'\n\t\t\t\t),\n\t\t\t};\n\n\t\t\tvalidateAndSetDimensions(nativeDimensions);\n\t\t} catch (e) {\n\t\t\tvalidateAndSetDimensions(clientDimensions);\n\t\t\tvalidateAndSetDimensions(bboxDimensions);\n\t\t\tvalidateAndSetDimensions(attrDimensions);\n\t\t}\n\n\t\treturn finalDimensions;\n\t}\n\n\tstatic appendOrSelect(parent, query) {\n\t\tconst selection = parent.select(`${query}`);\n\n\t\tif (selection.empty()) {\n\t\t\t// see if there is an id\n\t\t\tlet querySections = query.split('#');\n\t\t\tlet elementToAppend;\n\t\t\tlet id;\n\t\t\t// if there is an id\n\t\t\tif (querySections.length === 2) {\n\t\t\t\t// take out the element to append\n\t\t\t\telementToAppend = querySections[0];\n\t\t\t\t// split it by classes\n\t\t\t\tquerySections = querySections[1].split('.');\n\t\t\t\t// the first string is the id\n\t\t\t\tid = querySections[0];\n\t\t\t} else {\n\t\t\t\tquerySections = query.split('.');\n\t\t\t\telementToAppend = querySections[0];\n\t\t\t}\n\n\t\t\treturn parent\n\t\t\t\t.append(elementToAppend)\n\t\t\t\t.attr('id', id)\n\t\t\t\t.attr('class', querySections.slice(1).join(' '));\n\t\t}\n\n\t\treturn selection;\n\t}\n\n\tprotected mainContainer: HTMLElement;\n\tprotected width: string;\n\tprotected height: string;\n\n\tinit() {\n\t\t// Add width & height to the chart holder if necessary, and add a classname\n\t\tthis.styleHolderElement();\n\n\t\tthis.addMainContainer();\n\t\tthis.verifyCSSStylesBeingApplied();\n\n\t\tif (this.model.getOptions().resizable) {\n\t\t\tthis.addResizeListener();\n\t\t}\n\n\t\tthis.addHolderListeners();\n\n\t\tthis.handleFullscreenChange();\n\t}\n\n\tgetChartID() {\n\t\treturn this.chartID;\n\t}\n\n\tgenerateElementIDString(originalID) {\n\t\treturn `chart-${this.chartID}-${originalID}`;\n\t}\n\n\taddMainContainer() {\n\t\tconst options = this.model.getOptions();\n\t\tconst chartsprefix = Tools.getProperty(options, 'style', 'prefix');\n\n\t\tconst mainContainer = select(this.getHolder())\n\t\t\t.append('div')\n\t\t\t.classed(`${carbonPrefix}--${chartsprefix}--chart-wrapper`, true)\n\t\t\t.style('height', '100%')\n\t\t\t.style('width', '100%');\n\n\t\tmainContainer.append('g').attr('class', CSS_VERIFIER_ELEMENT_CLASSNAME);\n\n\t\tthis.mainContainer = mainContainer.node();\n\t}\n\n\tupdate() {\n\t\tthis.styleHolderElement();\n\t}\n\n\tstyleHolderElement() {\n\t\tconst holderElement = this.getHolder() as HTMLElement;\n\n\t\t// Add class to chart holder\n\t\tselect(this.getHolder()).classed(`${carbonPrefix}--chart-holder`, true);\n\n\t\t// In order for resize events to not clash with these updates\n\t\t// We'll check if the width & height values passed in options\n\t\t// Have changed, before setting them to the holder\n\t\tconst { width, height } = this.model.getOptions();\n\t\tif (width !== this.width) {\n\t\t\t// Apply formatted width attribute to chart\n\t\t\tholderElement.style.width = width;\n\n\t\t\tthis.width = width;\n\t\t}\n\n\t\tif (height !== this.height) {\n\t\t\t// Apply formatted width attribute to chart\n\t\t\tholderElement.style.height = height;\n\n\t\t\tthis.height = height;\n\t\t}\n\t}\n\n\tgetHolder() {\n\t\treturn this.model.get('holder');\n\t}\n\n\texportToJPG() {\n\t\tconst self = this;\n\n\t\tconst holder = this.getHolder();\n\t\tconst holderSelection = select(holder);\n\t\tholderSelection.classed('filled', true);\n\n\t\tdomToImage\n\t\t\t.toJpeg(this.getMainContainer(), {\n\t\t\t\tbgcolor:\n\t\t\t\t\ttypeof window !== 'undefined'\n\t\t\t\t\t\t? window\n\t\t\t\t\t\t\t\t.getComputedStyle(holder)\n\t\t\t\t\t\t\t\t.getPropertyValue('background-color')\n\t\t\t\t\t\t: undefined,\n\t\t\t\tquality: 1,\n\t\t\t\t// Remove the toolbar\n\t\t\t\tfilter: (node) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\tnode.classList &&\n\t\t\t\t\t\tnode.classList.contains('cds--cc--toolbar')\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn true;\n\t\t\t\t},\n\t\t\t})\n\t\t\t.then(function (dataUrl) {\n\t\t\t\tself.services.files.downloadImage(dataUrl, 'myChart.jpg');\n\t\t\t\tholderSelection.classed('filled', false);\n\t\t\t});\n\t}\n\n\texportToPNG() {\n\t\tconst self = this;\n\n\t\tconst holder = this.getHolder();\n\t\tconst holderSelection = select(holder);\n\t\tholderSelection.classed('filled', true);\n\n\t\tdomToImage\n\t\t\t.toPng(this.getMainContainer(), {\n\t\t\t\tbgcolor:\n\t\t\t\t\ttypeof window !== 'undefined'\n\t\t\t\t\t\t? window\n\t\t\t\t\t\t\t\t.getComputedStyle(holder)\n\t\t\t\t\t\t\t\t.getPropertyValue('background-color')\n\t\t\t\t\t\t: undefined,\n\t\t\t\tquality: 1,\n\t\t\t\t// Remove the toolbar\n\t\t\t\tfilter: (node) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\tnode.classList &&\n\t\t\t\t\t\tnode.classList.contains('cds--cc--toolbar')\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn true;\n\t\t\t\t},\n\t\t\t})\n\t\t\t.then(function (dataUrl) {\n\t\t\t\tself.services.files.downloadImage(dataUrl, 'myChart.png');\n\t\t\t\tholderSelection.classed('filled', false);\n\t\t\t})\n\t\t\t.catch(function (error) {\n\t\t\t\tconsole.error('oops, something went wrong!', error);\n\t\t\t});\n\t}\n\n\ttoggleFullscreen() {\n\t\tconst holder = this.getHolder();\n\t\tconst holderSelection = select(holder);\n\n\t\tconst isFullScreen = holderSelection.classed('fullscreen');\n\n\t\tif (\n\t\t\tisFullScreen &&\n\t\t\t(document.fullscreenElement ||\n\t\t\t\tdocument['webkitFullscreenElement'] ||\n\t\t\t\tdocument['mozFullScreenElement'] ||\n\t\t\t\tdocument['msFullscreenElement'])\n\t\t) {\n\t\t\t// Call the correct function depending on the browser\n\t\t\tif (document.exitFullscreen) {\n\t\t\t\tdocument.exitFullscreen();\n\t\t\t} else if (document['webkitExitFullscreen']) {\n\t\t\t\tdocument['webkitExitFullscreen']();\n\t\t\t} else if (document['mozCancelFullScreen']) {\n\t\t\t\tdocument['mozCancelFullScreen']();\n\t\t\t} else if (document['msExitFullscreen']) {\n\t\t\t\tdocument['msExitFullscreen']();\n\t\t\t}\n\t\t} else {\n\t\t\t// Call the correct function depending on the browser\n\t\t\tif (holder.requestFullscreen) {\n\t\t\t\tholder.requestFullscreen();\n\t\t\t} else if (holder.webkitRequestFullscreen) {\n\t\t\t\tholder.webkitRequestFullscreen();\n\t\t\t} else if (holder.mozRequestFullScreen) {\n\t\t\t\tholder.mozRequestFullScreen();\n\t\t\t} else if (holder.msRequestFullscreen) {\n\t\t\t\tholder.msRequestFullscreen();\n\t\t\t}\n\t\t}\n\t}\n\n\thandleFullscreenChange() {\n\t\tdocument.addEventListener('fullscreenchange', () => {\n\t\t\tconst holderSelection = select(this.getHolder());\n\t\t\tconst isFullScreen = holderSelection.classed('fullscreen');\n\n\t\t\t// Toggle the `fullscreen` classname\n\t\t\tholderSelection.classed('fullscreen', !isFullScreen);\n\t\t});\n\t}\n\n\tverifyCSSStylesBeingApplied() {\n\t\t// setTimeout is needed here since in `addSVGElement()` we're appending the\n\t\t// CSS verifier element, and need to allow some time for it to become available\n\t\t// in the DOM\n\t\tsetTimeout(() => {\n\t\t\tconst cssVerifierElement = select(this.mainContainer)\n\t\t\t\t.select(`g.${CSS_VERIFIER_ELEMENT_CLASSNAME}`)\n\t\t\t\t.node();\n\t\t\tconst computedStyles = getComputedStyle(cssVerifierElement as any);\n\t\t\tif (\n\t\t\t\tcomputedStyles.getPropertyValue('overflow') !== 'hidden' ||\n\t\t\t\tcomputedStyles.getPropertyValue('opacity') !== '0'\n\t\t\t) {\n\t\t\t\tconsole.error(\n\t\t\t\t\t'Missing CSS styles for Carbon Charts. Please read the Carbon Charts getting started guide.'\n\t\t\t\t);\n\t\t\t}\n\t\t});\n\t}\n\n\tsetSVGMaxHeight() {\n\t\t// if there is a set height on the holder, leave the chart svg height at 100%\n\t\tif (!this.model.getOptions().height) {\n\t\t\tconst { height: chartHeight } = DOMUtils.getSVGElementSize(\n\t\t\t\tselect(this.mainContainer),\n\t\t\t\t{ useBBox: true }\n\t\t\t);\n\t\t\tconst chartSVGSelector = select(this.mainContainer).attr('class');\n\t\t\tconst children = select(this.mainContainer).selectAll(\n\t\t\t\t`.${chartSVGSelector} > svg`\n\t\t\t);\n\n\t\t\t// get the height of the children SVGs (spacers, titles, etc)\n\t\t\tlet childrenHeight = 0;\n\t\t\tchildren.nodes().forEach(function (childSVG) {\n\t\t\t\tchildrenHeight += Number(\n\t\t\t\t\tDOMUtils.getSVGElementSize(select(childSVG), {\n\t\t\t\t\t\tuseBBox: true,\n\t\t\t\t\t}).height\n\t\t\t\t);\n\t\t\t});\n\n\t\t\t// set the chart svg height to the children height\n\t\t\t// forcing the chart not to take up any more space than it requires\n\t\t\tchildrenHeight <= chartHeight\n\t\t\t\t? select(this.mainContainer).attr('height', childrenHeight)\n\t\t\t\t: select(this.mainContainer).attr('height', '100%');\n\t\t}\n\t}\n\n\tgetMainContainer() {\n\t\treturn this.mainContainer;\n\t}\n\n\taddHolderListeners() {\n\t\tconst holder = this.getHolder();\n\n\t\tif (!holder) {\n\t\t\treturn;\n\t\t}\n\n\t\tselect(holder)\n\t\t\t.on('mouseover', () => {\n\t\t\t\t// Dispatch event\n\t\t\t\tthis.services.events.dispatchEvent(Events.Chart.MOUSEOVER);\n\t\t\t})\n\t\t\t.on('mouseout', () => {\n\t\t\t\t// Dispatch event\n\t\t\t\tthis.services.events.dispatchEvent(Events.Chart.MOUSEOUT);\n\t\t\t});\n\t}\n\n\taddResizeListener() {\n\t\tconst holder = this.getHolder();\n\n\t\tif (!holder) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Grab current dimensions of the chart holder\n\t\tlet containerWidth = holder.clientWidth;\n\t\tlet containerHeight = holder.clientHeight;\n\n\t\t// The resize callback function\n\t\tconst resizeCallback = Tools.debounce((entries, observer) => {\n\t\t\tif (!holder) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tMath.abs(containerWidth - holder.clientWidth) > 1 ||\n\t\t\t\tMath.abs(containerHeight - holder.clientHeight) > 1\n\t\t\t) {\n\t\t\t\tcontainerWidth = holder.clientWidth;\n\t\t\t\tcontainerHeight = holder.clientHeight;\n\n\t\t\t\tthis.services.events.dispatchEvent(Events.Chart.RESIZE);\n\t\t\t}\n\t\t}, 12.5);\n\n\t\t// Observe the behaviour of resizing on the holder\n\t\tconst resizeObserver = new ResizeObserver(resizeCallback);\n\t\tresizeObserver.observe(holder);\n\t}\n}\n"]}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
@use "@carbon/styles/scss/theme" as *;
|
|
2
|
+
@use "@carbon/styles/scss/themes";
|
|
3
|
+
|
|
4
|
+
.#{$prefix}--chart-holder {
|
|
5
|
+
position: relative;
|
|
6
|
+
display: block;
|
|
7
|
+
width: 100%;
|
|
8
|
+
height: 100%;
|
|
9
|
+
|
|
10
|
+
&.filled,
|
|
11
|
+
&.fullscreen {
|
|
12
|
+
background-color: $background;
|
|
13
|
+
|
|
14
|
+
.#{$prefix}--#{$charts-prefix}--chart-wrapper {
|
|
15
|
+
background-color: $background;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.DONT_STYLE_ME_css_styles_verifier {
|
|
20
|
+
overflow: hidden;
|
|
21
|
+
opacity: 0;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.#{$prefix}--chart-holder {
|
|
26
|
+
@include theme(themes.$white);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.#{$prefix}--chart-holder[data-carbon-theme='g10'] {
|
|
30
|
+
@include theme(themes.$g10);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.#{$prefix}--chart-holder[data-carbon-theme='g90'] {
|
|
34
|
+
@include theme(themes.$g90);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.#{$prefix}--chart-holder[data-carbon-theme='g100'] {
|
|
38
|
+
@include theme(themes.$g100);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.#{$prefix}--chart-holder.fullscreen,
|
|
42
|
+
.#{$prefix}--chart-holder:-webkit-full-screen {
|
|
43
|
+
/* !important is used here to get closer to
|
|
44
|
+
a truly fullscreen experience */
|
|
45
|
+
width: 100% !important;
|
|
46
|
+
height: 100% !important;
|
|
47
|
+
max-width: unset !important;
|
|
48
|
+
max-height: unset !important;
|
|
49
|
+
padding: 2em;
|
|
50
|
+
}
|
|
File without changes
|