@carbon/charts 1.8.0 → 1.9.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +84 -155
- package/README.md +11 -13
- package/dist/_baseEach-603421de.mjs +21 -0
- package/dist/_baseEach-603421de.mjs.map +1 -0
- package/dist/_baseEach-cdac417f.js +2 -0
- package/dist/_baseEach-cdac417f.js.map +1 -0
- package/dist/a11y-7bad4f48.mjs +5 -0
- package/dist/a11y-7bad4f48.mjs.map +1 -0
- package/dist/a11y-c7c9d087.js +2 -0
- package/dist/a11y-c7c9d087.js.map +1 -0
- package/dist/angle-utils-6f166b40.js +2 -0
- package/dist/angle-utils-6f166b40.js.map +1 -0
- package/dist/angle-utils-8b6ce998.mjs +387 -0
- package/dist/angle-utils-8b6ce998.mjs.map +1 -0
- package/dist/axis-chart.d.ts +13 -0
- package/dist/chart.d.ts +18 -0
- package/dist/charts/alluvial.d.ts +10 -0
- package/dist/charts/area-stacked.d.ts +8 -0
- package/dist/charts/area.d.ts +8 -0
- package/dist/charts/bar-grouped.d.ts +8 -0
- package/dist/charts/bar-simple.d.ts +8 -0
- package/dist/charts/bar-stacked.d.ts +8 -0
- package/dist/charts/boxplot.d.ts +10 -0
- package/dist/charts/bubble.d.ts +8 -0
- package/dist/charts/bullet.d.ts +10 -0
- package/dist/charts/choropleth.d.ts +14 -0
- package/dist/charts/circle-pack.d.ts +10 -0
- package/dist/charts/combo.d.ts +9 -0
- package/dist/charts/donut.d.ts +8 -0
- package/dist/charts/gauge.d.ts +10 -0
- package/dist/charts/heatmap.d.ts +14 -0
- package/dist/charts/histogram.d.ts +10 -0
- package/dist/charts/index.d.ts +27 -0
- package/dist/charts/line.d.ts +8 -0
- package/dist/charts/lollipop.d.ts +8 -0
- package/dist/charts/meter.d.ts +10 -0
- package/dist/charts/pie.d.ts +10 -0
- package/dist/charts/radar.d.ts +10 -0
- package/dist/charts/scatter.d.ts +8 -0
- package/dist/charts/tree.d.ts +10 -0
- package/dist/charts/treemap.d.ts +10 -0
- package/dist/charts/wordcloud.d.ts +10 -0
- package/dist/choropleth-4ac6ac20.js +82 -0
- package/dist/choropleth-4ac6ac20.js.map +1 -0
- package/dist/choropleth-f473ea0d.mjs +7997 -0
- package/dist/choropleth-f473ea0d.mjs.map +1 -0
- package/dist/color-scale-utils-5eb3eeaa.mjs +3809 -0
- package/dist/color-scale-utils-5eb3eeaa.mjs.map +1 -0
- package/dist/color-scale-utils-7d463811.js +3 -0
- package/dist/color-scale-utils-7d463811.js.map +1 -0
- package/dist/components/axes/axis.d.ts +24 -0
- package/{build/src → dist}/components/axes/chart-clip.d.ts +3 -3
- package/{components → dist/components}/axes/grid-brush.d.ts +10 -10
- package/{components → dist/components}/axes/grid.d.ts +22 -22
- package/{build/src → dist}/components/axes/hover-axis.d.ts +1 -1
- package/dist/components/axes/index.d.ts +12 -0
- package/{components → dist/components}/axes/ruler-binned.d.ts +7 -7
- package/{components → dist/components}/axes/ruler.d.ts +27 -27
- package/{build/src → dist}/components/axes/toolbar.d.ts +7 -7
- package/{components → dist/components}/axes/two-dimensional-axes.d.ts +16 -16
- package/{components → dist/components}/axes/zero-line.d.ts +7 -7
- package/{components → dist/components}/axes/zoom-bar.d.ts +28 -28
- package/{build/src → dist}/components/component.d.ts +10 -8
- package/dist/components/diagrams/buildPaths.d.ts +40 -0
- package/dist/components/diagrams/index.d.ts +2 -0
- package/{components → dist/components}/essentials/canvas-chart-clip.d.ts +6 -6
- package/{build/src → dist}/components/essentials/color-scale-legend.d.ts +3 -3
- package/{build/src → dist}/components/essentials/geo-projection.d.ts +2 -2
- package/{build/src → dist}/components/essentials/highlights.d.ts +3 -3
- package/dist/components/essentials/index.d.ts +11 -0
- package/{build/src → dist}/components/essentials/legend.d.ts +3 -3
- package/{components → dist/components}/essentials/modal.d.ts +14 -14
- package/{build/src → dist}/components/essentials/threshold.d.ts +5 -5
- package/{components → dist/components}/essentials/title-meter.d.ts +30 -30
- package/{components → dist/components}/essentials/title.d.ts +20 -20
- package/{build/src → dist}/components/essentials/tooltip.d.ts +4 -4
- package/{components → dist/components}/graphs/alluvial.d.ts +14 -14
- package/{components → dist/components}/graphs/area-stacked.d.ts +11 -11
- package/dist/components/graphs/area.d.ts +12 -0
- package/{build/src → dist}/components/graphs/bar-grouped.d.ts +4 -4
- package/{build/src → dist}/components/graphs/bar-simple.d.ts +3 -3
- package/{build/src → dist}/components/graphs/bar-stacked.d.ts +4 -4
- package/{build/src → dist}/components/graphs/bar.d.ts +2 -2
- package/{components → dist/components}/graphs/boxplot.d.ts +9 -9
- package/{build/src → dist}/components/graphs/bubble.d.ts +2 -2
- package/dist/components/graphs/bullet.d.ts +12 -0
- package/{components → dist/components}/graphs/choropleth.d.ts +6 -6
- package/{build/src → dist}/components/graphs/circle-pack.d.ts +3 -3
- package/{build/src → dist}/components/graphs/donut.d.ts +1 -1
- package/{build/src → dist}/components/graphs/gauge.d.ts +2 -2
- package/{build/src → dist}/components/graphs/heatmap.d.ts +4 -4
- package/dist/components/graphs/histogram.d.ts +12 -0
- package/dist/components/graphs/index.d.ts +28 -0
- package/dist/components/graphs/line.d.ts +11 -0
- package/dist/components/graphs/lollipop.d.ts +14 -0
- package/{components → dist/components}/graphs/meter.d.ts +10 -10
- package/{build/src → dist}/components/graphs/pie.d.ts +4 -4
- package/{build/src → dist}/components/graphs/radar.d.ts +6 -6
- package/{build/src → dist}/components/graphs/scatter-stacked.d.ts +2 -2
- package/dist/components/graphs/scatter.d.ts +21 -0
- package/dist/components/graphs/skeleton-lines.d.ts +12 -0
- package/{build/src → dist}/components/graphs/skeleton.d.ts +6 -5
- package/{components → dist/components}/graphs/tree.d.ts +9 -9
- package/dist/components/graphs/treemap.d.ts +11 -0
- package/{build/src → dist}/components/graphs/wordcloud.d.ts +4 -4
- package/dist/components/index.d.ts +6 -0
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/index.mjs +76 -0
- package/dist/components/index.mjs.map +1 -0
- package/dist/components/layout/index.d.ts +2 -0
- package/{components → dist/components}/layout/layout.d.ts +18 -17
- package/dist/components/layout/spacer.d.ts +5 -0
- package/{build/src → dist}/configuration-non-customizable.d.ts +4 -4
- package/{configuration.d.ts → dist/configuration.d.ts} +48 -46
- package/dist/demo/charts/index.d.ts +62 -0
- package/{demo/data → dist/demo/charts}/time-series-axis.d.ts +60 -135
- package/{build/demo/data → dist/demo/charts}/zoom-bar.d.ts +12 -27
- package/dist/demo/index.d.ts +4 -0
- package/dist/demo/index.js +470 -0
- package/dist/demo/index.js.map +1 -0
- package/dist/demo/index.mjs +51786 -0
- package/dist/demo/index.mjs.map +1 -0
- package/{demo → dist/demo}/styles.css +286 -1142
- package/dist/demo/styles.css.map +1 -0
- package/dist/demo/utils/index.d.ts +2 -0
- package/dist/demo/utils/sandbox.d.ts +39 -0
- package/dist/demo/utils/story-widgets.d.ts +7 -0
- package/dist/enums-a96ef472.mjs +89 -0
- package/dist/enums-a96ef472.mjs.map +1 -0
- package/dist/enums-aa2efd99.js +2 -0
- package/dist/enums-aa2efd99.js.map +1 -0
- package/dist/index-822564ed.js +2 -0
- package/dist/index-822564ed.js.map +1 -0
- package/dist/index-a266373c.mjs +749 -0
- package/dist/index-a266373c.mjs.map +1 -0
- package/dist/index-becfb567.mjs +72 -0
- package/dist/index-becfb567.mjs.map +1 -0
- package/dist/index-d865d500.js +2 -0
- package/dist/index-d865d500.js.map +1 -0
- package/dist/index-ec554115.mjs +62 -0
- package/dist/index-ec554115.mjs.map +1 -0
- package/dist/index-f23685eb.js +2 -0
- package/dist/index-f23685eb.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +1121 -0
- package/dist/index.mjs.map +1 -0
- package/{build/src → dist}/interfaces/axis-scales.d.ts +11 -11
- package/{interfaces → dist/interfaces}/charts.d.ts +517 -512
- package/{build/src → dist}/interfaces/components.d.ts +11 -11
- package/dist/interfaces/index.d.ts +11 -0
- package/dist/interfaces/index.js +2 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/interfaces/index.mjs +58 -0
- package/dist/interfaces/index.mjs.map +1 -0
- package/{interfaces → dist/interfaces}/layout.d.ts +21 -15
- package/{build/src → dist}/interfaces/model.d.ts +2 -2
- package/dist/interfaces/services.d.ts +20 -0
- package/{build/src → dist}/interfaces/truncation.d.ts +2 -2
- package/{build/src → dist}/model/binned-charts.d.ts +1 -1
- package/{build/src → dist}/model/cartesian-charts.d.ts +2 -2
- package/{model → dist/model}/heatmap.d.ts +57 -52
- package/dist/model/index.d.ts +16 -0
- package/dist/model/index.js +3 -0
- package/dist/model/index.js.map +1 -0
- package/dist/model/index.mjs +1107 -0
- package/dist/model/index.mjs.map +1 -0
- package/{model → dist/model}/meter.d.ts +20 -19
- package/{model → dist/model}/model.d.ts +110 -107
- package/{services → dist/services}/angle-utils.d.ts +15 -16
- package/{services → dist/services}/color-scale-utils.d.ts +2 -2
- package/dist/services/curves.d.ts +24 -0
- package/dist/services/essentials/dom-utils.d.ts +45 -0
- package/dist/services/essentials/events.d.ts +8 -0
- package/dist/services/essentials/files.d.ts +7 -0
- package/{build/src → dist}/services/essentials/gradient-utils.d.ts +2 -2
- package/dist/services/essentials/index.d.ts +5 -0
- package/dist/services/essentials/transitions.d.ts +13 -0
- package/dist/services/index.d.ts +9 -0
- package/dist/services/index.js +2 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/index.mjs +32 -0
- package/dist/services/index.mjs.map +1 -0
- package/dist/services/scales-cartesian.d.ts +89 -0
- package/dist/services/service.d.ts +11 -0
- package/{services → dist/services}/time-series.d.ts +13 -13
- package/{build/src → dist}/services/zoom.d.ts +2 -2
- package/{styles → dist/styles}/_chart-holder.scss +5 -5
- package/{styles → dist/styles}/color-palatte.scss +66 -66
- package/{styles → dist/styles}/colors.scss +15 -39
- package/{styles → dist/styles}/components/_color-legend.scss +2 -2
- package/{styles → dist/styles}/components/_edge.scss +4 -4
- package/{styles → dist/styles}/components/_grid.scss +2 -2
- package/dist/styles/components/_marker.scss +7 -0
- package/{styles → dist/styles}/components/_meter-title.scss +2 -2
- package/{styles → dist/styles}/components/_tooltip.scss +3 -3
- package/{styles → dist/styles}/components/diagrams/_card-node.scss +3 -3
- package/{styles → dist/styles}/components/diagrams/_edge.scss +5 -5
- package/{styles → dist/styles}/components/diagrams/_shape-node.scss +3 -3
- package/dist/styles/components/diagrams/index.scss +4 -0
- package/{styles → dist/styles}/graphs/_alluvial.scss +2 -2
- package/{styles → dist/styles}/graphs/_bullet.scss +3 -3
- package/{styles → dist/styles}/graphs/_circle-pack.scss +1 -1
- package/{styles → dist/styles}/graphs/_gauge.scss +1 -1
- package/{styles → dist/styles}/graphs/_heatmap.scss +2 -2
- package/{styles → dist/styles}/graphs/_meter.scss +1 -1
- package/{styles → dist/styles}/graphs/_radar.scss +1 -1
- package/{styles → dist/styles}/graphs/_scatter-stacked.scss +1 -1
- package/{styles → dist/styles}/graphs/_tree.scss +2 -3
- package/{styles → dist/styles}/styles.scss +8 -3
- package/{styles → dist/styles}/tokens.scss +97 -106
- package/dist/styles.css +28264 -0
- package/dist/styles.css.map +1 -0
- package/dist/styles.min.css +1 -0
- package/dist/styles.min.css.map +1 -0
- package/{tools.d.ts → dist/tools.d.ts} +144 -144
- package/package.json +136 -101
- package/LICENSE.md +0 -201
- package/axis-chart.d.ts +0 -10
- package/axis-chart.js +0 -169
- package/axis-chart.js.map +0 -1
- package/build/demo/create-codesandbox.d.ts +0 -113
- package/build/demo/data/high-scale.d.ts +0 -1
- package/build/demo/data/index.d.ts +0 -33
- package/build/demo/data/time-series-axis.d.ts +0 -368
- package/build/demo/utils.d.ts +0 -40
- package/build/src/axis-chart.d.ts +0 -10
- package/build/src/chart.d.ts +0 -14
- package/build/src/charts/alluvial.d.ts +0 -8
- package/build/src/charts/area-stacked.d.ts +0 -6
- package/build/src/charts/area.d.ts +0 -6
- package/build/src/charts/bar-grouped.d.ts +0 -6
- package/build/src/charts/bar-simple.d.ts +0 -6
- package/build/src/charts/bar-stacked.d.ts +0 -6
- package/build/src/charts/boxplot.d.ts +0 -8
- package/build/src/charts/bubble.d.ts +0 -6
- package/build/src/charts/bullet.d.ts +0 -8
- package/build/src/charts/choropleth.d.ts +0 -10
- package/build/src/charts/circle-pack.d.ts +0 -8
- package/build/src/charts/combo.d.ts +0 -7
- package/build/src/charts/donut.d.ts +0 -6
- package/build/src/charts/gauge.d.ts +0 -8
- package/build/src/charts/heatmap.d.ts +0 -10
- package/build/src/charts/histogram.d.ts +0 -8
- package/build/src/charts/index.d.ts +0 -25
- package/build/src/charts/line.d.ts +0 -6
- package/build/src/charts/lollipop.d.ts +0 -6
- package/build/src/charts/meter.d.ts +0 -8
- package/build/src/charts/pie.d.ts +0 -8
- package/build/src/charts/radar.d.ts +0 -8
- package/build/src/charts/scatter.d.ts +0 -6
- package/build/src/charts/tree.d.ts +0 -8
- package/build/src/charts/treemap.d.ts +0 -8
- package/build/src/charts/wordcloud.d.ts +0 -8
- package/build/src/components/axes/axis.d.ts +0 -24
- package/build/src/components/axes/grid-brush.d.ts +0 -10
- package/build/src/components/axes/grid.d.ts +0 -22
- package/build/src/components/axes/ruler-binned.d.ts +0 -7
- package/build/src/components/axes/ruler.d.ts +0 -27
- package/build/src/components/axes/two-dimensional-axes.d.ts +0 -16
- package/build/src/components/axes/zero-line.d.ts +0 -7
- package/build/src/components/axes/zoom-bar.d.ts +0 -28
- package/build/src/components/diagrams/buildPaths.d.ts +0 -63
- package/build/src/components/essentials/canvas-chart-clip.d.ts +0 -6
- package/build/src/components/essentials/modal.d.ts +0 -14
- package/build/src/components/essentials/title-meter.d.ts +0 -30
- package/build/src/components/essentials/title.d.ts +0 -20
- package/build/src/components/graphs/alluvial.d.ts +0 -14
- package/build/src/components/graphs/area-stacked.d.ts +0 -11
- package/build/src/components/graphs/area.d.ts +0 -12
- package/build/src/components/graphs/boxplot.d.ts +0 -9
- package/build/src/components/graphs/bullet.d.ts +0 -12
- package/build/src/components/graphs/choropleth.d.ts +0 -6
- package/build/src/components/graphs/histogram.d.ts +0 -12
- package/build/src/components/graphs/line.d.ts +0 -11
- package/build/src/components/graphs/lollipop.d.ts +0 -14
- package/build/src/components/graphs/meter.d.ts +0 -10
- package/build/src/components/graphs/scatter.d.ts +0 -21
- package/build/src/components/graphs/skeleton-lines.d.ts +0 -11
- package/build/src/components/graphs/tree.d.ts +0 -9
- package/build/src/components/graphs/treemap.d.ts +0 -11
- package/build/src/components/index.d.ts +0 -53
- package/build/src/components/layout/layout.d.ts +0 -17
- package/build/src/components/layout/spacer.d.ts +0 -5
- package/build/src/configuration.d.ts +0 -46
- package/build/src/interfaces/charts.d.ts +0 -512
- package/build/src/interfaces/index.d.ts +0 -7
- package/build/src/interfaces/layout.d.ts +0 -15
- package/build/src/model/heatmap.d.ts +0 -52
- package/build/src/model/meter.d.ts +0 -19
- package/build/src/model/model.d.ts +0 -107
- package/build/src/services/angle-utils.d.ts +0 -205
- package/build/src/services/color-scale-utils.d.ts +0 -10
- package/build/src/services/curves.d.ts +0 -25
- package/build/src/services/essentials/dom-utils.d.ts +0 -39
- package/build/src/services/essentials/events.d.ts +0 -8
- package/build/src/services/essentials/files.d.ts +0 -6
- package/build/src/services/essentials/transitions.d.ts +0 -13
- package/build/src/services/index.d.ts +0 -10
- package/build/src/services/scales-cartesian.d.ts +0 -86
- package/build/src/services/service.d.ts +0 -10
- package/build/src/services/time-series.d.ts +0 -787
- package/build/src/tools.d.ts +0 -2427
- package/build/stories/all.stories.d.ts +0 -1
- package/build/stories/tutorials/api.d.ts +0 -4
- package/build/stories/tutorials/color-palette.d.ts +0 -4
- package/build/stories/tutorials/combo-charts.d.ts +0 -4
- package/build/stories/tutorials/dual-axes.d.ts +0 -4
- package/build/stories/tutorials/event-listeners.d.ts +0 -4
- package/build/stories/tutorials/getting-started/angular.d.ts +0 -5
- package/build/stories/tutorials/getting-started/react.d.ts +0 -5
- package/build/stories/tutorials/getting-started/vanilla.d.ts +0 -5
- package/build/stories/tutorials/getting-started/vue.d.ts +0 -5
- package/build/stories/tutorials/index.d.ts +0 -11
- package/build/stories/tutorials/tabular-data-format.d.ts +0 -4
- package/build/stories/tutorials/themes.d.ts +0 -4
- package/build/stories/tutorials.stories.d.ts +0 -1
- package/bundle.js +0 -17
- package/chart.d.ts +0 -14
- package/chart.js +0 -198
- package/chart.js.map +0 -1
- package/charts/alluvial.d.ts +0 -8
- package/charts/alluvial.js +0 -46
- package/charts/alluvial.js.map +0 -1
- package/charts/area-stacked.d.ts +0 -6
- package/charts/area-stacked.js +0 -55
- package/charts/area-stacked.js.map +0 -1
- package/charts/area.d.ts +0 -6
- package/charts/area.js +0 -54
- package/charts/area.js.map +0 -1
- package/charts/bar-grouped.d.ts +0 -6
- package/charts/bar-grouped.js +0 -49
- package/charts/bar-grouped.js.map +0 -1
- package/charts/bar-simple.d.ts +0 -6
- package/charts/bar-simple.js +0 -49
- package/charts/bar-simple.js.map +0 -1
- package/charts/bar-stacked.d.ts +0 -6
- package/charts/bar-stacked.js +0 -50
- package/charts/bar-stacked.js.map +0 -1
- package/charts/boxplot.d.ts +0 -8
- package/charts/boxplot.js +0 -55
- package/charts/boxplot.js.map +0 -1
- package/charts/bubble.d.ts +0 -6
- package/charts/bubble.js +0 -49
- package/charts/bubble.js.map +0 -1
- package/charts/bullet.d.ts +0 -8
- package/charts/bullet.js +0 -50
- package/charts/bullet.js.map +0 -1
- package/charts/choropleth.d.ts +0 -10
- package/charts/choropleth.js +0 -141
- package/charts/choropleth.js.map +0 -1
- package/charts/circle-pack.d.ts +0 -8
- package/charts/circle-pack.js +0 -45
- package/charts/circle-pack.js.map +0 -1
- package/charts/combo.d.ts +0 -7
- package/charts/combo.js +0 -132
- package/charts/combo.js.map +0 -1
- package/charts/donut.d.ts +0 -6
- package/charts/donut.js +0 -46
- package/charts/donut.js.map +0 -1
- package/charts/gauge.d.ts +0 -8
- package/charts/gauge.js +0 -42
- package/charts/gauge.js.map +0 -1
- package/charts/heatmap.d.ts +0 -10
- package/charts/heatmap.js +0 -142
- package/charts/heatmap.js.map +0 -1
- package/charts/histogram.d.ts +0 -8
- package/charts/histogram.js +0 -48
- package/charts/histogram.js.map +0 -1
- package/charts/index.d.ts +0 -25
- package/charts/index.js +0 -26
- package/charts/index.js.map +0 -1
- package/charts/line.d.ts +0 -6
- package/charts/line.js +0 -48
- package/charts/line.js.map +0 -1
- package/charts/lollipop.d.ts +0 -6
- package/charts/lollipop.js +0 -50
- package/charts/lollipop.js.map +0 -1
- package/charts/meter.d.ts +0 -8
- package/charts/meter.js +0 -94
- package/charts/meter.js.map +0 -1
- package/charts/pie.d.ts +0 -8
- package/charts/pie.js +0 -55
- package/charts/pie.js.map +0 -1
- package/charts/radar.d.ts +0 -8
- package/charts/radar.js +0 -44
- package/charts/radar.js.map +0 -1
- package/charts/scatter.d.ts +0 -6
- package/charts/scatter.js +0 -49
- package/charts/scatter.js.map +0 -1
- package/charts/tree.d.ts +0 -8
- package/charts/tree.js +0 -47
- package/charts/tree.js.map +0 -1
- package/charts/treemap.d.ts +0 -8
- package/charts/treemap.js +0 -43
- package/charts/treemap.js.map +0 -1
- package/charts/wordcloud.d.ts +0 -8
- package/charts/wordcloud.js +0 -49
- package/charts/wordcloud.js.map +0 -1
- package/components/axes/axis.d.ts +0 -24
- package/components/axes/axis.js +0 -587
- package/components/axes/axis.js.map +0 -1
- package/components/axes/chart-clip.d.ts +0 -13
- package/components/axes/chart-clip.js +0 -63
- package/components/axes/chart-clip.js.map +0 -1
- package/components/axes/grid-brush.js +0 -170
- package/components/axes/grid-brush.js.map +0 -1
- package/components/axes/grid.js +0 -235
- package/components/axes/grid.js.map +0 -1
- package/components/axes/hover-axis.d.ts +0 -10
- package/components/axes/hover-axis.js +0 -243
- package/components/axes/hover-axis.js.map +0 -1
- package/components/axes/ruler-binned.js +0 -136
- package/components/axes/ruler-binned.js.map +0 -1
- package/components/axes/ruler-stacked.d.ts +0 -4
- package/components/axes/ruler-stacked.js +0 -26
- package/components/axes/ruler-stacked.js.map +0 -1
- package/components/axes/ruler.js +0 -209
- package/components/axes/ruler.js.map +0 -1
- package/components/axes/toolbar.d.ts +0 -40
- package/components/axes/toolbar.js +0 -558
- package/components/axes/toolbar.js.map +0 -1
- package/components/axes/two-dimensional-axes.js +0 -134
- package/components/axes/two-dimensional-axes.js.map +0 -1
- package/components/axes/zero-line.js +0 -76
- package/components/axes/zero-line.js.map +0 -1
- package/components/axes/zoom-bar.js +0 -490
- package/components/axes/zoom-bar.js.map +0 -1
- package/components/component.d.ts +0 -28
- package/components/component.js +0 -102
- package/components/component.js.map +0 -1
- package/components/diagrams/buildPaths.d.ts +0 -39
- package/components/diagrams/buildPaths.js +0 -71
- package/components/diagrams/buildPaths.js.map +0 -1
- package/components/diagrams/markerDefinitions.d.ts +0 -37
- package/components/diagrams/markerDefinitions.js +0 -38
- package/components/diagrams/markerDefinitions.js.map +0 -1
- package/components/essentials/canvas-chart-clip.js +0 -46
- package/components/essentials/canvas-chart-clip.js.map +0 -1
- package/components/essentials/color-scale-legend.d.ts +0 -20
- package/components/essentials/color-scale-legend.js +0 -237
- package/components/essentials/color-scale-legend.js.map +0 -1
- package/components/essentials/geo-projection.d.ts +0 -16
- package/components/essentials/geo-projection.js +0 -160
- package/components/essentials/geo-projection.js.map +0 -1
- package/components/essentials/highlights.d.ts +0 -13
- package/components/essentials/highlights.js +0 -196
- package/components/essentials/highlights.js.map +0 -1
- package/components/essentials/legend.d.ts +0 -11
- package/components/essentials/legend.js +0 -428
- package/components/essentials/legend.js.map +0 -1
- package/components/essentials/modal.js +0 -89
- package/components/essentials/modal.js.map +0 -1
- package/components/essentials/threshold.d.ts +0 -20
- package/components/essentials/threshold.js +0 -306
- package/components/essentials/threshold.js.map +0 -1
- package/components/essentials/title-meter.js +0 -279
- package/components/essentials/title-meter.js.map +0 -1
- package/components/essentials/title.js +0 -138
- package/components/essentials/title.js.map +0 -1
- package/components/essentials/tooltip-axis.d.ts +0 -4
- package/components/essentials/tooltip-axis.js +0 -142
- package/components/essentials/tooltip-axis.js.map +0 -1
- package/components/essentials/tooltip.d.ts +0 -22
- package/components/essentials/tooltip.js +0 -263
- package/components/essentials/tooltip.js.map +0 -1
- package/components/graphs/alluvial.js +0 -535
- package/components/graphs/alluvial.js.map +0 -1
- package/components/graphs/area-stacked.js +0 -131
- package/components/graphs/area-stacked.js.map +0 -1
- package/components/graphs/area.d.ts +0 -12
- package/components/graphs/area.js +0 -260
- package/components/graphs/area.js.map +0 -1
- package/components/graphs/bar-grouped.d.ts +0 -22
- package/components/graphs/bar-grouped.js +0 -312
- package/components/graphs/bar-grouped.js.map +0 -1
- package/components/graphs/bar-simple.d.ts +0 -12
- package/components/graphs/bar-simple.js +0 -218
- package/components/graphs/bar-simple.js.map +0 -1
- package/components/graphs/bar-stacked.d.ts +0 -13
- package/components/graphs/bar-stacked.js +0 -281
- package/components/graphs/bar-stacked.js.map +0 -1
- package/components/graphs/bar.d.ts +0 -5
- package/components/graphs/bar.js +0 -58
- package/components/graphs/bar.js.map +0 -1
- package/components/graphs/boxplot.js +0 -485
- package/components/graphs/boxplot.js.map +0 -1
- package/components/graphs/bubble.d.ts +0 -13
- package/components/graphs/bubble.js +0 -113
- package/components/graphs/bubble.js.map +0 -1
- package/components/graphs/bullet.d.ts +0 -12
- package/components/graphs/bullet.js +0 -395
- package/components/graphs/bullet.js.map +0 -1
- package/components/graphs/choropleth.js +0 -106
- package/components/graphs/choropleth.js.map +0 -1
- package/components/graphs/circle-pack.d.ts +0 -19
- package/components/graphs/circle-pack.js +0 -388
- package/components/graphs/circle-pack.js.map +0 -1
- package/components/graphs/donut.d.ts +0 -9
- package/components/graphs/donut.js +0 -116
- package/components/graphs/donut.js.map +0 -1
- package/components/graphs/gauge.d.ts +0 -27
- package/components/graphs/gauge.js +0 -347
- package/components/graphs/gauge.js.map +0 -1
- package/components/graphs/heatmap.d.ts +0 -25
- package/components/graphs/heatmap.js +0 -388
- package/components/graphs/heatmap.js.map +0 -1
- package/components/graphs/histogram.d.ts +0 -12
- package/components/graphs/histogram.js +0 -220
- package/components/graphs/histogram.js.map +0 -1
- package/components/graphs/line.d.ts +0 -11
- package/components/graphs/line.js +0 -179
- package/components/graphs/line.js.map +0 -1
- package/components/graphs/lollipop.d.ts +0 -14
- package/components/graphs/lollipop.js +0 -164
- package/components/graphs/lollipop.js.map +0 -1
- package/components/graphs/meter.js +0 -284
- package/components/graphs/meter.js.map +0 -1
- package/components/graphs/pie.d.ts +0 -16
- package/components/graphs/pie.js +0 -438
- package/components/graphs/pie.js.map +0 -1
- package/components/graphs/radar.d.ts +0 -25
- package/components/graphs/radar.js +0 -737
- package/components/graphs/radar.js.map +0 -1
- package/components/graphs/scatter-stacked.d.ts +0 -8
- package/components/graphs/scatter-stacked.js +0 -140
- package/components/graphs/scatter-stacked.js.map +0 -1
- package/components/graphs/scatter.d.ts +0 -21
- package/components/graphs/scatter.js +0 -360
- package/components/graphs/scatter.js.map +0 -1
- package/components/graphs/skeleton-lines.d.ts +0 -11
- package/components/graphs/skeleton-lines.js +0 -84
- package/components/graphs/skeleton-lines.js.map +0 -1
- package/components/graphs/skeleton.d.ts +0 -22
- package/components/graphs/skeleton.js +0 -272
- package/components/graphs/skeleton.js.map +0 -1
- package/components/graphs/tree.js +0 -262
- package/components/graphs/tree.js.map +0 -1
- package/components/graphs/treemap.d.ts +0 -11
- package/components/graphs/treemap.js +0 -344
- package/components/graphs/treemap.js.map +0 -1
- package/components/graphs/wordcloud.d.ts +0 -12
- package/components/graphs/wordcloud.js +0 -268
- package/components/graphs/wordcloud.js.map +0 -1
- package/components/index.d.ts +0 -53
- package/components/index.js +0 -59
- package/components/index.js.map +0 -1
- package/components/layout/layout.js +0 -191
- package/components/layout/layout.js.map +0 -1
- package/components/layout/spacer.d.ts +0 -5
- package/components/layout/spacer.js +0 -33
- package/components/layout/spacer.js.map +0 -1
- package/configuration-non-customizable.d.ts +0 -263
- package/configuration-non-customizable.js +0 -276
- package/configuration-non-customizable.js.map +0 -1
- package/configuration.js +0 -552
- package/configuration.js.map +0 -1
- package/demo/create-codesandbox.d.ts +0 -65
- package/demo/create-codesandbox.js +0 -173
- package/demo/create-codesandbox.js.map +0 -1
- package/demo/data/CHART_TYPES.d.ts +0 -128
- package/demo/data/CHART_TYPES.js +0 -128
- package/demo/data/CHART_TYPES.js.map +0 -1
- package/demo/data/alluvial.d.ts +0 -109
- package/demo/data/alluvial.js +0 -328
- package/demo/data/alluvial.js.map +0 -1
- package/demo/data/area.d.ts +0 -224
- package/demo/data/area.js +0 -330
- package/demo/data/area.js.map +0 -1
- package/demo/data/bar.d.ts +0 -681
- package/demo/data/bar.js +0 -915
- package/demo/data/bar.js.map +0 -1
- package/demo/data/boxplot.d.ts +0 -34
- package/demo/data/boxplot.js +0 -48
- package/demo/data/boxplot.js.map +0 -1
- package/demo/data/bubble.d.ts +0 -141
- package/demo/data/bubble.js +0 -182
- package/demo/data/bubble.js.map +0 -1
- package/demo/data/bullet.d.ts +0 -24
- package/demo/data/bullet.js +0 -55
- package/demo/data/bullet.js.map +0 -1
- package/demo/data/bundle.js +0 -1
- package/demo/data/choropleth.d.ts +0 -738
- package/demo/data/choropleth.js +0 -1684
- package/demo/data/choropleth.js.map +0 -1
- package/demo/data/circle-pack.d.ts +0 -91
- package/demo/data/circle-pack.js +0 -224
- package/demo/data/circle-pack.js.map +0 -1
- package/demo/data/combo.d.ts +0 -482
- package/demo/data/combo.js +0 -571
- package/demo/data/combo.js.map +0 -1
- package/demo/data/donut.d.ts +0 -64
- package/demo/data/donut.js +0 -60
- package/demo/data/donut.js.map +0 -1
- package/demo/data/gauge.d.ts +0 -40
- package/demo/data/gauge.js +0 -41
- package/demo/data/gauge.js.map +0 -1
- package/demo/data/heatmap.d.ts +0 -125
- package/demo/data/heatmap.js +0 -1149
- package/demo/data/heatmap.js.map +0 -1
- package/demo/data/high-scale.d.ts +0 -1
- package/demo/data/high-scale.js +0 -5
- package/demo/data/high-scale.js.map +0 -1
- package/demo/data/hightlight.d.ts +0 -40
- package/demo/data/hightlight.js +0 -44
- package/demo/data/hightlight.js.map +0 -1
- package/demo/data/histogram.d.ts +0 -63
- package/demo/data/histogram.js +0 -312
- package/demo/data/histogram.js.map +0 -1
- package/demo/data/index.d.ts +0 -33
- package/demo/data/index.js +0 -1305
- package/demo/data/index.js.map +0 -1
- package/demo/data/line.d.ts +0 -361
- package/demo/data/line.js +0 -480
- package/demo/data/line.js.map +0 -1
- package/demo/data/lollipop.d.ts +0 -39
- package/demo/data/lollipop.js +0 -37
- package/demo/data/lollipop.js.map +0 -1
- package/demo/data/meter.d.ts +0 -95
- package/demo/data/meter.js +0 -114
- package/demo/data/meter.js.map +0 -1
- package/demo/data/pie.d.ts +0 -46
- package/demo/data/pie.js +0 -55
- package/demo/data/pie.js.map +0 -1
- package/demo/data/radar.d.ts +0 -63
- package/demo/data/radar.js +0 -118
- package/demo/data/radar.js.map +0 -1
- package/demo/data/scatter.d.ts +0 -118
- package/demo/data/scatter.js +0 -143
- package/demo/data/scatter.js.map +0 -1
- package/demo/data/step.d.ts +0 -96
- package/demo/data/step.js +0 -27
- package/demo/data/step.js.map +0 -1
- package/demo/data/time-series-axis.js +0 -436
- package/demo/data/time-series-axis.js.map +0 -1
- package/demo/data/toolbar.d.ts +0 -12
- package/demo/data/toolbar.js +0 -67
- package/demo/data/toolbar.js.map +0 -1
- package/demo/data/topojson-110.d.ts +0 -360
- package/demo/data/topojson-110.js +0 -40724
- package/demo/data/topojson-110.js.map +0 -1
- package/demo/data/tree.d.ts +0 -30
- package/demo/data/tree.js +0 -209
- package/demo/data/tree.js.map +0 -1
- package/demo/data/treemap.d.ts +0 -15
- package/demo/data/treemap.js +0 -93
- package/demo/data/treemap.js.map +0 -1
- package/demo/data/wordcloud.d.ts +0 -14
- package/demo/data/wordcloud.js +0 -105
- package/demo/data/wordcloud.js.map +0 -1
- package/demo/data/zoom-bar.d.ts +0 -94
- package/demo/data/zoom-bar.js +0 -187
- package/demo/data/zoom-bar.js.map +0 -1
- package/demo/styles.css.map +0 -1
- package/demo/styles.min.css +0 -1
- package/demo/styles.min.css.map +0 -1
- package/demo/tsconfig.tsbuildinfo +0 -1451
- package/demo/utils.d.ts +0 -24
- package/demo/utils.js +0 -222
- package/demo/utils.js.map +0 -1
- package/index.d.ts +0 -4
- package/index.js +0 -6
- package/index.js.map +0 -1
- package/interfaces/a11y.d.ts +0 -12
- package/interfaces/a11y.js +0 -14
- package/interfaces/a11y.js.map +0 -1
- package/interfaces/axis-scales.d.ts +0 -201
- package/interfaces/axis-scales.js +0 -1
- package/interfaces/axis-scales.js.map +0 -1
- package/interfaces/charts.js +0 -1
- package/interfaces/charts.js.map +0 -1
- package/interfaces/components.d.ts +0 -231
- package/interfaces/components.js +0 -1
- package/interfaces/components.js.map +0 -1
- package/interfaces/enums.d.ts +0 -261
- package/interfaces/enums.js +0 -296
- package/interfaces/enums.js.map +0 -1
- package/interfaces/events.d.ts +0 -239
- package/interfaces/events.js +0 -269
- package/interfaces/events.js.map +0 -1
- package/interfaces/index.d.ts +0 -7
- package/interfaces/index.js +0 -3
- package/interfaces/index.js.map +0 -1
- package/interfaces/layout.js +0 -1
- package/interfaces/layout.js.map +0 -1
- package/interfaces/model.d.ts +0 -35
- package/interfaces/model.js +0 -1
- package/interfaces/model.js.map +0 -1
- package/interfaces/truncation.d.ts +0 -17
- package/interfaces/truncation.js +0 -1
- package/interfaces/truncation.js.map +0 -1
- package/model/alluvial.d.ts +0 -8
- package/model/alluvial.js +0 -47
- package/model/alluvial.js.map +0 -1
- package/model/binned-charts.d.ts +0 -7
- package/model/binned-charts.js +0 -52
- package/model/binned-charts.js.map +0 -1
- package/model/boxplot.d.ts +0 -14
- package/model/boxplot.js +0 -174
- package/model/boxplot.js.map +0 -1
- package/model/bullet.d.ts +0 -14
- package/model/bullet.js +0 -74
- package/model/bullet.js.map +0 -1
- package/model/cartesian-charts.d.ts +0 -24
- package/model/cartesian-charts.js +0 -202
- package/model/cartesian-charts.js.map +0 -1
- package/model/choropleth.d.ts +0 -29
- package/model/choropleth.js +0 -105
- package/model/choropleth.js.map +0 -1
- package/model/circle-pack.d.ts +0 -36
- package/model/circle-pack.js +0 -189
- package/model/circle-pack.js.map +0 -1
- package/model/gauge.d.ts +0 -9
- package/model/gauge.js +0 -51
- package/model/gauge.js.map +0 -1
- package/model/heatmap.js +0 -220
- package/model/heatmap.js.map +0 -1
- package/model/meter.js +0 -118
- package/model/meter.js.map +0 -1
- package/model/model.js +0 -712
- package/model/model.js.map +0 -1
- package/model/pie.d.ts +0 -9
- package/model/pie.js +0 -66
- package/model/pie.js.map +0 -1
- package/model/radar.d.ts +0 -7
- package/model/radar.js +0 -52
- package/model/radar.js.map +0 -1
- package/model/tree.d.ts +0 -14
- package/model/tree.js +0 -56
- package/model/tree.js.map +0 -1
- package/model/treemap.d.ts +0 -8
- package/model/treemap.js +0 -44
- package/model/treemap.js.map +0 -1
- package/model/wordcloud.d.ts +0 -7
- package/model/wordcloud.js +0 -47
- package/model/wordcloud.js.map +0 -1
- package/polyfills.d.ts +0 -0
- package/polyfills.js +0 -29
- package/polyfills.js.map +0 -1
- package/services/angle-utils.js +0 -82
- package/services/angle-utils.js.map +0 -1
- package/services/canvas-zoom.d.ts +0 -11
- package/services/canvas-zoom.js +0 -72
- package/services/canvas-zoom.js.map +0 -1
- package/services/color-scale-utils.js +0 -64
- package/services/color-scale-utils.js.map +0 -1
- package/services/curves.d.ts +0 -25
- package/services/curves.js +0 -77
- package/services/curves.js.map +0 -1
- package/services/essentials/dom-utils.d.ts +0 -39
- package/services/essentials/dom-utils.js +0 -423
- package/services/essentials/dom-utils.js.map +0 -1
- package/services/essentials/events.d.ts +0 -8
- package/services/essentials/events.js +0 -53
- package/services/essentials/events.js.map +0 -1
- package/services/essentials/files.d.ts +0 -6
- package/services/essentials/files.js +0 -60
- package/services/essentials/files.js.map +0 -1
- package/services/essentials/gradient-utils.d.ts +0 -6
- package/services/essentials/gradient-utils.js +0 -85
- package/services/essentials/gradient-utils.js.map +0 -1
- package/services/essentials/transitions.d.ts +0 -13
- package/services/essentials/transitions.js +0 -51
- package/services/essentials/transitions.js.map +0 -1
- package/services/index.d.ts +0 -10
- package/services/index.js +0 -13
- package/services/index.js.map +0 -1
- package/services/scales-cartesian.d.ts +0 -86
- package/services/scales-cartesian.js +0 -656
- package/services/scales-cartesian.js.map +0 -1
- package/services/service.d.ts +0 -10
- package/services/service.js +0 -24
- package/services/service.js.map +0 -1
- package/services/time-series.js +0 -147
- package/services/time-series.js.map +0 -1
- package/services/zoom.d.ts +0 -21
- package/services/zoom.js +0 -217
- package/services/zoom.js.map +0 -1
- package/styles/components/_marker.scss +0 -7
- package/styles/components/diagrams/index.scss +0 -4
- package/styles.css +0 -6325
- package/styles.css.map +0 -1
- package/styles.min.css +0 -1
- package/styles.min.css.map +0 -1
- package/tools.js +0 -348
- package/tools.js.map +0 -1
- package/tsconfig.tsbuildinfo +0 -3816
- /package/{build/src → dist}/components/axes/ruler-stacked.d.ts +0 -0
- /package/{build/src → dist}/components/diagrams/markerDefinitions.d.ts +0 -0
- /package/{build/src → dist}/components/essentials/tooltip-axis.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/alluvial.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/area.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/bar.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/boxplot.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/bubble.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/bullet.d.ts +0 -0
- /package/{build/demo/data/CHART_TYPES.d.ts → dist/demo/charts/chart-types.d.ts} +0 -0
- /package/{build/demo/data → dist/demo/charts}/choropleth.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/circle-pack.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/combo.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/donut.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/gauge.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/heatmap.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/hightlight.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/histogram.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/line.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/lollipop.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/meter.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/pie.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/radar.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/scatter.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/step.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/toolbar.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/topojson-110.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/tree.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/treemap.d.ts +0 -0
- /package/{build/demo/data → dist/demo/charts}/wordcloud.d.ts +0 -0
- /package/{build/src → dist}/interfaces/a11y.d.ts +0 -0
- /package/{build/src → dist}/interfaces/enums.d.ts +0 -0
- /package/{build/src → dist}/interfaces/events.d.ts +0 -0
- /package/{build/src → dist}/model/alluvial.d.ts +0 -0
- /package/{build/src → dist}/model/boxplot.d.ts +0 -0
- /package/{build/src → dist}/model/bullet.d.ts +0 -0
- /package/{build/src → dist}/model/choropleth.d.ts +0 -0
- /package/{build/src → dist}/model/circle-pack.d.ts +0 -0
- /package/{build/src → dist}/model/gauge.d.ts +0 -0
- /package/{build/src → dist}/model/pie.d.ts +0 -0
- /package/{build/src → dist}/model/radar.d.ts +0 -0
- /package/{build/src → dist}/model/tree.d.ts +0 -0
- /package/{build/src → dist}/model/treemap.d.ts +0 -0
- /package/{build/src → dist}/model/wordcloud.d.ts +0 -0
- /package/{build/src → dist}/services/canvas-zoom.d.ts +0 -0
- /package/{styles → dist/styles}/_type.scss +0 -0
- /package/{styles → dist/styles}/components/_axis.scss +0 -0
- /package/{styles → dist/styles}/components/_callouts.scss +0 -0
- /package/{styles → dist/styles}/components/_grid-brush.scss +0 -0
- /package/{styles → dist/styles}/components/_highlights.scss +0 -0
- /package/{styles → dist/styles}/components/_layout.scss +0 -0
- /package/{styles → dist/styles}/components/_legend.scss +0 -0
- /package/{styles → dist/styles}/components/_modal.scss +0 -0
- /package/{styles → dist/styles}/components/_ruler.scss +0 -0
- /package/{styles → dist/styles}/components/_skeleton-lines.scss +0 -0
- /package/{styles → dist/styles}/components/_skeleton.scss +0 -0
- /package/{styles → dist/styles}/components/_threshold.scss +0 -0
- /package/{styles → dist/styles}/components/_title.scss +0 -0
- /package/{styles → dist/styles}/components/_toolbar.scss +0 -0
- /package/{styles → dist/styles}/components/_zero-line.scss +0 -0
- /package/{styles → dist/styles}/components/_zoom-bar.scss +0 -0
- /package/{styles → dist/styles}/components/diagrams/_marker.scss +0 -0
- /package/{styles → dist/styles}/components/index.scss +0 -0
- /package/{styles → dist/styles}/graphs/_area.scss +0 -0
- /package/{styles → dist/styles}/graphs/_bubble.scss +0 -0
- /package/{styles → dist/styles}/graphs/_choropleth.scss +0 -0
- /package/{styles → dist/styles}/graphs/_donut.scss +0 -0
- /package/{styles → dist/styles}/graphs/_line.scss +0 -0
- /package/{styles → dist/styles}/graphs/_lollipop.scss +0 -0
- /package/{styles → dist/styles}/graphs/_pie.scss +0 -0
- /package/{styles → dist/styles}/graphs/_scatter.scss +0 -0
- /package/{styles → dist/styles}/graphs/_treemap.scss +0 -0
- /package/{styles → dist/styles}/graphs/_wordcloud.scss +0 -0
- /package/{styles → dist/styles}/graphs/index.scss +0 -0
|
@@ -1,272 +0,0 @@
|
|
|
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 { Component } from '../component';
|
|
16
|
-
import { DOMUtils } from '../../services';
|
|
17
|
-
import * as Tools from '../../tools';
|
|
18
|
-
import { Skeletons, CartesianOrientations, Alignments, } from '../../interfaces/enums';
|
|
19
|
-
import * as Configuration from '../../configuration';
|
|
20
|
-
// D3 Imports
|
|
21
|
-
import { scaleLinear } from 'd3-scale';
|
|
22
|
-
import { easeLinear } from 'd3-ease';
|
|
23
|
-
import { arc } from 'd3-shape';
|
|
24
|
-
var Skeleton = /** @class */ (function (_super) {
|
|
25
|
-
__extends(Skeleton, _super);
|
|
26
|
-
function Skeleton() {
|
|
27
|
-
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
28
|
-
_this.type = 'skeleton';
|
|
29
|
-
return _this;
|
|
30
|
-
}
|
|
31
|
-
Skeleton.prototype.render = function () {
|
|
32
|
-
var isDataLoading = Tools.getProperty(this.getOptions(), 'data', 'loading');
|
|
33
|
-
// display a skeleton if there is no chart data or the loading flag is set to true
|
|
34
|
-
if (isDataLoading) {
|
|
35
|
-
this.renderSkeleton(isDataLoading);
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
this.removeSkeleton();
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
Skeleton.prototype.renderSkeleton = function (showShimmerEffect) {
|
|
42
|
-
if (this.configs.skeleton === Skeletons.GRID) {
|
|
43
|
-
this.renderGridSkeleton(showShimmerEffect);
|
|
44
|
-
}
|
|
45
|
-
else if (this.configs.skeleton === Skeletons.VERT_OR_HORIZ) {
|
|
46
|
-
this.renderVertOrHorizSkeleton(showShimmerEffect);
|
|
47
|
-
}
|
|
48
|
-
else if (this.configs.skeleton === Skeletons.PIE) {
|
|
49
|
-
this.renderPieSkeleton(showShimmerEffect);
|
|
50
|
-
}
|
|
51
|
-
else if (this.configs.skeleton === Skeletons.DONUT) {
|
|
52
|
-
this.renderDonutSkeleton(showShimmerEffect);
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
throw new Error("\"" + this.configs.skeleton + "\" is not a valid Skeleton type.");
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
Skeleton.prototype.renderGridSkeleton = function (showShimmerEffect) {
|
|
59
|
-
this.setScales();
|
|
60
|
-
this.drawBackdrop(showShimmerEffect);
|
|
61
|
-
this.drawXGrid(showShimmerEffect);
|
|
62
|
-
this.drawYGrid(showShimmerEffect);
|
|
63
|
-
if (showShimmerEffect) {
|
|
64
|
-
this.setShimmerEffect('shimmer-lines');
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
Skeleton.prototype.renderVertOrHorizSkeleton = function (showShimmerEffect) {
|
|
68
|
-
var orientation = this.services.cartesianScales.getOrientation();
|
|
69
|
-
this.setScales();
|
|
70
|
-
this.drawBackdrop(showShimmerEffect);
|
|
71
|
-
if (orientation === CartesianOrientations.VERTICAL) {
|
|
72
|
-
this.drawYGrid(showShimmerEffect);
|
|
73
|
-
}
|
|
74
|
-
if (orientation === CartesianOrientations.HORIZONTAL) {
|
|
75
|
-
this.drawXGrid(showShimmerEffect);
|
|
76
|
-
}
|
|
77
|
-
this.setShimmerEffect('shimmer-lines');
|
|
78
|
-
};
|
|
79
|
-
Skeleton.prototype.renderPieSkeleton = function (showShimmerEffect) {
|
|
80
|
-
var outerRadius = this.computeOuterRadius();
|
|
81
|
-
var innerRadius = 0;
|
|
82
|
-
this.drawRing(outerRadius, innerRadius, showShimmerEffect);
|
|
83
|
-
if (showShimmerEffect) {
|
|
84
|
-
this.setShimmerEffect('shimmer-areas');
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
Skeleton.prototype.renderDonutSkeleton = function (showShimmerEffect) {
|
|
88
|
-
var outerRadius = this.computeOuterRadius();
|
|
89
|
-
var innerRadius = this.computeInnerRadius();
|
|
90
|
-
this.drawRing(outerRadius, innerRadius, showShimmerEffect);
|
|
91
|
-
if (showShimmerEffect) {
|
|
92
|
-
this.setShimmerEffect('shimmer-areas');
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
Skeleton.prototype.setScales = function () {
|
|
96
|
-
var xRange = this.services.cartesianScales.getMainXScale().range();
|
|
97
|
-
var yRange = this.services.cartesianScales.getMainYScale().range();
|
|
98
|
-
this.xScale = scaleLinear().domain([0, 1]).range(xRange);
|
|
99
|
-
this.yScale = scaleLinear().domain([0, 1]).range(yRange);
|
|
100
|
-
};
|
|
101
|
-
Skeleton.prototype.drawBackdrop = function (showShimmerEffect) {
|
|
102
|
-
var svg = this.parent;
|
|
103
|
-
var _a = DOMUtils.getSVGElementSize(svg, {
|
|
104
|
-
useAttrs: true,
|
|
105
|
-
}), width = _a.width, height = _a.height;
|
|
106
|
-
this.backdrop = DOMUtils.appendOrSelect(svg, 'svg.chart-skeleton.DAII')
|
|
107
|
-
.attr('width', width)
|
|
108
|
-
.attr('height', height);
|
|
109
|
-
var backdropRect = DOMUtils.appendOrSelect(this.backdrop, 'rect.chart-skeleton-backdrop');
|
|
110
|
-
backdropRect.attr('width', '100%').attr('height', '100%');
|
|
111
|
-
var _b = this.xScale.range(), xScaleStart = _b[0], xScaleEnd = _b[1];
|
|
112
|
-
var _c = this.yScale.range(), yScaleEnd = _c[0], yScaleStart = _c[1];
|
|
113
|
-
this.backdrop
|
|
114
|
-
.merge(backdropRect)
|
|
115
|
-
.attr('x', xScaleStart)
|
|
116
|
-
.attr('y', yScaleStart);
|
|
117
|
-
backdropRect
|
|
118
|
-
.classed('shimmer-effect-lines', showShimmerEffect)
|
|
119
|
-
.classed('empty-state-lines', !showShimmerEffect)
|
|
120
|
-
.style('stroke', showShimmerEffect
|
|
121
|
-
? "url(#" + this.services.domUtils.generateElementIDString("shimmer-lines") + ")"
|
|
122
|
-
: null);
|
|
123
|
-
};
|
|
124
|
-
Skeleton.prototype.drawXGrid = function (showShimmerEffect) {
|
|
125
|
-
var width = this.backdrop.attr('width');
|
|
126
|
-
var ticksNumber = Tools.getProperty(this.getOptions(), 'grid', 'x', 'numberOfTicks');
|
|
127
|
-
var ticksValues = this.xScale
|
|
128
|
-
.ticks(ticksNumber)
|
|
129
|
-
.map(function (d) { return d * width; });
|
|
130
|
-
var xGridG = DOMUtils.appendOrSelect(this.backdrop, 'g.x.skeleton');
|
|
131
|
-
var update = xGridG.selectAll('line').data(ticksValues);
|
|
132
|
-
update
|
|
133
|
-
.enter()
|
|
134
|
-
.append('line')
|
|
135
|
-
.merge(update)
|
|
136
|
-
.attr('x1', function (d) { return d; })
|
|
137
|
-
.attr('x2', function (d) { return d; })
|
|
138
|
-
.attr('y1', 0)
|
|
139
|
-
.attr('y2', '100%');
|
|
140
|
-
xGridG
|
|
141
|
-
.selectAll('line')
|
|
142
|
-
.classed('shimmer-effect-lines', showShimmerEffect)
|
|
143
|
-
.classed('empty-state-lines', !showShimmerEffect)
|
|
144
|
-
.style('stroke', showShimmerEffect
|
|
145
|
-
? "url(#" + this.services.domUtils.generateElementIDString("shimmer-lines") + ")"
|
|
146
|
-
: null);
|
|
147
|
-
};
|
|
148
|
-
Skeleton.prototype.drawYGrid = function (showShimmerEffect) {
|
|
149
|
-
var height = this.backdrop.attr('height');
|
|
150
|
-
var width = this.backdrop.attr('width');
|
|
151
|
-
var ticksNumber = Tools.getProperty(this.getOptions(), 'grid', 'y', 'numberOfTicks');
|
|
152
|
-
var ticksValues = this.xScale
|
|
153
|
-
.ticks(ticksNumber)
|
|
154
|
-
.map(function (d) { return d * height; });
|
|
155
|
-
var yGridG = DOMUtils.appendOrSelect(this.backdrop, 'g.y.skeleton');
|
|
156
|
-
var update = yGridG.selectAll('line').data(ticksValues);
|
|
157
|
-
update
|
|
158
|
-
.enter()
|
|
159
|
-
.append('line')
|
|
160
|
-
.merge(update)
|
|
161
|
-
.attr('x1', 0)
|
|
162
|
-
.attr('x2', width)
|
|
163
|
-
.attr('y1', function (d) { return d; })
|
|
164
|
-
.attr('y2', function (d) { return d; });
|
|
165
|
-
yGridG
|
|
166
|
-
.selectAll('line')
|
|
167
|
-
.classed('shimmer-effect-lines', showShimmerEffect)
|
|
168
|
-
.classed('empty-state-lines', !showShimmerEffect)
|
|
169
|
-
.style('stroke', showShimmerEffect
|
|
170
|
-
? "url(#" + this.services.domUtils.generateElementIDString("shimmer-lines") + ")"
|
|
171
|
-
: null);
|
|
172
|
-
};
|
|
173
|
-
Skeleton.prototype.drawRing = function (outerRadius, innerRadius, shimmer) {
|
|
174
|
-
if (shimmer === void 0) { shimmer = true; }
|
|
175
|
-
var svg = this.parent;
|
|
176
|
-
var _a = DOMUtils.getSVGElementSize(svg, {
|
|
177
|
-
useAttrs: true,
|
|
178
|
-
}), width = _a.width, height = _a.height;
|
|
179
|
-
var container = DOMUtils.appendOrSelect(svg, 'svg.chart-skeleton')
|
|
180
|
-
.attr('width', width)
|
|
181
|
-
.attr('height', height);
|
|
182
|
-
var optionName = innerRadius === 0 ? 'pie' : 'donut';
|
|
183
|
-
var alignment = Tools.getProperty(this.getOptions(), optionName, 'alignment');
|
|
184
|
-
DOMUtils.appendOrSelect(container, 'rect.chart-skeleton-area-container')
|
|
185
|
-
.attr('width', width)
|
|
186
|
-
.attr('height', height)
|
|
187
|
-
.attr('fill', 'none');
|
|
188
|
-
var arcPathGenerator = arc()
|
|
189
|
-
.innerRadius(innerRadius)
|
|
190
|
-
.outerRadius(outerRadius)
|
|
191
|
-
.startAngle(0)
|
|
192
|
-
.endAngle(Math.PI * 2);
|
|
193
|
-
// centering circle inside the container
|
|
194
|
-
var tcx = outerRadius + Math.abs(Configuration.pie.radiusOffset);
|
|
195
|
-
var tcy = outerRadius + (Math.min(width, height) - outerRadius * 2) / 2;
|
|
196
|
-
var skeletonAreaShape = DOMUtils.appendOrSelect(container, 'path')
|
|
197
|
-
.attr('class', 'skeleton-area-shape')
|
|
198
|
-
.attr('transform', "translate(" + tcx + ", " + tcy + ")")
|
|
199
|
-
.attr('d', arcPathGenerator)
|
|
200
|
-
.classed('shimmer-effect-areas', shimmer)
|
|
201
|
-
.classed('empty-state-areas', !shimmer)
|
|
202
|
-
.style('fill', shimmer
|
|
203
|
-
? "url(#" + this.services.domUtils.generateElementIDString("shimmer-areas") + ")"
|
|
204
|
-
: null);
|
|
205
|
-
// Position skeleton
|
|
206
|
-
var translateX = outerRadius + Configuration.pie.xOffset;
|
|
207
|
-
if (alignment === Alignments.CENTER) {
|
|
208
|
-
translateX = width / 2;
|
|
209
|
-
}
|
|
210
|
-
else if (alignment === Alignments.RIGHT) {
|
|
211
|
-
translateX = width - outerRadius - Configuration.pie.xOffset;
|
|
212
|
-
}
|
|
213
|
-
var translateY = outerRadius + Configuration.pie.yOffset;
|
|
214
|
-
skeletonAreaShape.attr('transform', "translate(" + translateX + ", " + translateY + ")");
|
|
215
|
-
};
|
|
216
|
-
// same logic in pie
|
|
217
|
-
Skeleton.prototype.computeOuterRadius = function () {
|
|
218
|
-
var _a = DOMUtils.getSVGElementSize(this.parent, {
|
|
219
|
-
useAttrs: true,
|
|
220
|
-
}), width = _a.width, height = _a.height;
|
|
221
|
-
var radius = Math.min(width, height) / 2;
|
|
222
|
-
return radius + Configuration.pie.radiusOffset;
|
|
223
|
-
};
|
|
224
|
-
// same logic in donut
|
|
225
|
-
Skeleton.prototype.computeInnerRadius = function () {
|
|
226
|
-
return this.computeOuterRadius() * (3 / 4);
|
|
227
|
-
};
|
|
228
|
-
Skeleton.prototype.setShimmerEffect = function (gradientId) {
|
|
229
|
-
var animationDuration = 2000; // ms
|
|
230
|
-
var delay = 1000; // ms
|
|
231
|
-
var shimmerWidth = 0.2;
|
|
232
|
-
var stopBgShimmerClass = 'stop-bg-shimmer';
|
|
233
|
-
var stopShimmerClass = 'stop-shimmer';
|
|
234
|
-
var container = this.parent.select('.chart-skeleton');
|
|
235
|
-
var width = DOMUtils.getSVGElementSize(this.parent, {
|
|
236
|
-
useAttrs: true,
|
|
237
|
-
}).width;
|
|
238
|
-
var startPoint = 0;
|
|
239
|
-
var endPoint = width;
|
|
240
|
-
// append the defs as first child of container
|
|
241
|
-
var defs = DOMUtils.appendOrSelect(container, 'defs').lower();
|
|
242
|
-
var linearGradient = DOMUtils.appendOrSelect(defs, 'linearGradient')
|
|
243
|
-
.attr('id', this.services.domUtils.generateElementIDString(gradientId))
|
|
244
|
-
.attr('class', gradientId)
|
|
245
|
-
.attr('x1', startPoint - 3 * shimmerWidth * width)
|
|
246
|
-
.attr('x2', endPoint)
|
|
247
|
-
.attr('y1', 0)
|
|
248
|
-
.attr('y2', 0)
|
|
249
|
-
.attr('gradientUnits', 'userSpaceOnUse')
|
|
250
|
-
.attr('gradientTransform', "translate(0, 0)");
|
|
251
|
-
var stops = "\n\t\t\t<stop class=\"" + stopBgShimmerClass + "\" offset=\"" + startPoint + "\"></stop>\n\t\t\t<stop class=\"" + stopShimmerClass + "\" offset=\"" + (startPoint + shimmerWidth) + "\"></stop>\n\t\t\t<stop class=\"" + stopBgShimmerClass + "\" offset=\"" + (startPoint + 2 * shimmerWidth) + "\"></stop>\n\t\t";
|
|
252
|
-
linearGradient.html(stops);
|
|
253
|
-
repeat();
|
|
254
|
-
function repeat() {
|
|
255
|
-
linearGradient
|
|
256
|
-
.attr('gradientTransform', "translate(" + (startPoint - 3 * shimmerWidth * width) + ", 0)")
|
|
257
|
-
.transition()
|
|
258
|
-
.duration(animationDuration)
|
|
259
|
-
.delay(delay)
|
|
260
|
-
.ease(easeLinear)
|
|
261
|
-
.attr('gradientTransform', "translate(" + (endPoint + 3 * shimmerWidth * width) + ", 0)")
|
|
262
|
-
.on('end', repeat);
|
|
263
|
-
}
|
|
264
|
-
};
|
|
265
|
-
Skeleton.prototype.removeSkeleton = function () {
|
|
266
|
-
var container = this.parent.select('.chart-skeleton');
|
|
267
|
-
container.remove();
|
|
268
|
-
};
|
|
269
|
-
return Skeleton;
|
|
270
|
-
}(Component));
|
|
271
|
-
export { Skeleton };
|
|
272
|
-
//# sourceMappingURL=../../../src/components/graphs/skeleton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"skeleton.js","sourceRoot":"","sources":["skeleton.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport { Component } from '../component';\nimport { DOMUtils } from '../../services';\nimport * as Tools from '../../tools';\nimport {\n\tSkeletons,\n\tCartesianOrientations,\n\tAlignments,\n} from '../../interfaces/enums';\nimport * as Configuration from '../../configuration';\n\n// D3 Imports\nimport { scaleLinear } from 'd3-scale';\nimport { easeLinear } from 'd3-ease';\nimport { arc } from 'd3-shape';\n\nexport class Skeleton extends Component {\n\ttype = 'skeleton';\n\txScale: any;\n\tyScale: any;\n\tbackdrop: any;\n\n\trender() {\n\t\tconst isDataLoading = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'data',\n\t\t\t'loading'\n\t\t);\n\n\t\t// display a skeleton if there is no chart data or the loading flag is set to true\n\t\tif (isDataLoading) {\n\t\t\tthis.renderSkeleton(isDataLoading);\n\t\t} else {\n\t\t\tthis.removeSkeleton();\n\t\t}\n\t}\n\n\trenderSkeleton(showShimmerEffect: boolean) {\n\t\tif (this.configs.skeleton === Skeletons.GRID) {\n\t\t\tthis.renderGridSkeleton(showShimmerEffect);\n\t\t} else if (this.configs.skeleton === Skeletons.VERT_OR_HORIZ) {\n\t\t\tthis.renderVertOrHorizSkeleton(showShimmerEffect);\n\t\t} else if (this.configs.skeleton === Skeletons.PIE) {\n\t\t\tthis.renderPieSkeleton(showShimmerEffect);\n\t\t} else if (this.configs.skeleton === Skeletons.DONUT) {\n\t\t\tthis.renderDonutSkeleton(showShimmerEffect);\n\t\t} else {\n\t\t\tthrow new Error(\n\t\t\t\t`\"${this.configs.skeleton}\" is not a valid Skeleton type.`\n\t\t\t);\n\t\t}\n\t}\n\n\trenderGridSkeleton(showShimmerEffect: boolean) {\n\t\tthis.setScales();\n\t\tthis.drawBackdrop(showShimmerEffect);\n\t\tthis.drawXGrid(showShimmerEffect);\n\t\tthis.drawYGrid(showShimmerEffect);\n\t\tif (showShimmerEffect) {\n\t\t\tthis.setShimmerEffect('shimmer-lines');\n\t\t}\n\t}\n\n\trenderVertOrHorizSkeleton(showShimmerEffect: boolean) {\n\t\tconst orientation = this.services.cartesianScales.getOrientation();\n\t\tthis.setScales();\n\t\tthis.drawBackdrop(showShimmerEffect);\n\t\tif (orientation === CartesianOrientations.VERTICAL) {\n\t\t\tthis.drawYGrid(showShimmerEffect);\n\t\t}\n\t\tif (orientation === CartesianOrientations.HORIZONTAL) {\n\t\t\tthis.drawXGrid(showShimmerEffect);\n\t\t}\n\n\t\tthis.setShimmerEffect('shimmer-lines');\n\t}\n\n\trenderPieSkeleton(showShimmerEffect: boolean) {\n\t\tconst outerRadius = this.computeOuterRadius();\n\t\tconst innerRadius = 0;\n\t\tthis.drawRing(outerRadius, innerRadius, showShimmerEffect);\n\t\tif (showShimmerEffect) {\n\t\t\tthis.setShimmerEffect('shimmer-areas');\n\t\t}\n\t}\n\n\trenderDonutSkeleton(showShimmerEffect: boolean) {\n\t\tconst outerRadius = this.computeOuterRadius();\n\t\tconst innerRadius = this.computeInnerRadius();\n\t\tthis.drawRing(outerRadius, innerRadius, showShimmerEffect);\n\t\tif (showShimmerEffect) {\n\t\t\tthis.setShimmerEffect('shimmer-areas');\n\t\t}\n\t}\n\n\tsetScales() {\n\t\tconst xRange = this.services.cartesianScales.getMainXScale().range();\n\t\tconst yRange = this.services.cartesianScales.getMainYScale().range();\n\t\tthis.xScale = scaleLinear().domain([0, 1]).range(xRange);\n\t\tthis.yScale = scaleLinear().domain([0, 1]).range(yRange);\n\t}\n\n\tdrawBackdrop(showShimmerEffect: boolean) {\n\t\tconst svg = this.parent;\n\t\tconst { width, height } = DOMUtils.getSVGElementSize(svg, {\n\t\t\tuseAttrs: true,\n\t\t});\n\n\t\tthis.backdrop = DOMUtils.appendOrSelect(svg, 'svg.chart-skeleton.DAII')\n\t\t\t.attr('width', width)\n\t\t\t.attr('height', height);\n\n\t\tconst backdropRect = DOMUtils.appendOrSelect(\n\t\t\tthis.backdrop,\n\t\t\t'rect.chart-skeleton-backdrop'\n\t\t);\n\t\tbackdropRect.attr('width', '100%').attr('height', '100%');\n\n\t\tconst [xScaleStart, xScaleEnd] = this.xScale.range();\n\t\tconst [yScaleEnd, yScaleStart] = this.yScale.range();\n\n\t\tthis.backdrop\n\t\t\t.merge(backdropRect)\n\t\t\t.attr('x', xScaleStart)\n\t\t\t.attr('y', yScaleStart);\n\n\t\tbackdropRect\n\t\t\t.classed('shimmer-effect-lines', showShimmerEffect)\n\t\t\t.classed('empty-state-lines', !showShimmerEffect)\n\t\t\t.style(\n\t\t\t\t'stroke',\n\t\t\t\tshowShimmerEffect\n\t\t\t\t\t? `url(#${this.services.domUtils.generateElementIDString(\n\t\t\t\t\t\t\t`shimmer-lines`\n\t\t\t\t\t )})`\n\t\t\t\t\t: null\n\t\t\t);\n\t}\n\n\tdrawXGrid(showShimmerEffect: boolean) {\n\t\tconst width = this.backdrop.attr('width');\n\t\tconst ticksNumber = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'grid',\n\t\t\t'x',\n\t\t\t'numberOfTicks'\n\t\t);\n\t\tconst ticksValues = this.xScale\n\t\t\t.ticks(ticksNumber)\n\t\t\t.map((d) => d * width);\n\n\t\tconst xGridG = DOMUtils.appendOrSelect(this.backdrop, 'g.x.skeleton');\n\t\tconst update = xGridG.selectAll('line').data(ticksValues);\n\t\tupdate\n\t\t\t.enter()\n\t\t\t.append('line')\n\t\t\t.merge(update)\n\t\t\t.attr('x1', (d) => d)\n\t\t\t.attr('x2', (d) => d)\n\t\t\t.attr('y1', 0)\n\t\t\t.attr('y2', '100%');\n\n\t\txGridG\n\t\t\t.selectAll('line')\n\t\t\t.classed('shimmer-effect-lines', showShimmerEffect)\n\t\t\t.classed('empty-state-lines', !showShimmerEffect)\n\t\t\t.style(\n\t\t\t\t'stroke',\n\t\t\t\tshowShimmerEffect\n\t\t\t\t\t? `url(#${this.services.domUtils.generateElementIDString(\n\t\t\t\t\t\t\t`shimmer-lines`\n\t\t\t\t\t )})`\n\t\t\t\t\t: null\n\t\t\t);\n\t}\n\n\tdrawYGrid(showShimmerEffect: boolean) {\n\t\tconst height = this.backdrop.attr('height');\n\t\tconst width = this.backdrop.attr('width');\n\t\tconst ticksNumber = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'grid',\n\t\t\t'y',\n\t\t\t'numberOfTicks'\n\t\t);\n\t\tconst ticksValues = this.xScale\n\t\t\t.ticks(ticksNumber)\n\t\t\t.map((d) => d * height);\n\n\t\tconst yGridG = DOMUtils.appendOrSelect(this.backdrop, 'g.y.skeleton');\n\t\tconst update = yGridG.selectAll('line').data(ticksValues);\n\t\tupdate\n\t\t\t.enter()\n\t\t\t.append('line')\n\t\t\t.merge(update)\n\t\t\t.attr('x1', 0)\n\t\t\t.attr('x2', width)\n\t\t\t.attr('y1', (d) => d)\n\t\t\t.attr('y2', (d) => d);\n\n\t\tyGridG\n\t\t\t.selectAll('line')\n\t\t\t.classed('shimmer-effect-lines', showShimmerEffect)\n\t\t\t.classed('empty-state-lines', !showShimmerEffect)\n\t\t\t.style(\n\t\t\t\t'stroke',\n\t\t\t\tshowShimmerEffect\n\t\t\t\t\t? `url(#${this.services.domUtils.generateElementIDString(\n\t\t\t\t\t\t\t`shimmer-lines`\n\t\t\t\t\t )})`\n\t\t\t\t\t: null\n\t\t\t);\n\t}\n\n\tdrawRing(outerRadius: number, innerRadius: number, shimmer = true) {\n\t\tconst svg = this.parent;\n\t\tconst { width, height } = DOMUtils.getSVGElementSize(svg, {\n\t\t\tuseAttrs: true,\n\t\t});\n\n\t\tconst container = DOMUtils.appendOrSelect(svg, 'svg.chart-skeleton')\n\t\t\t.attr('width', width)\n\t\t\t.attr('height', height);\n\n\t\tconst optionName = innerRadius === 0 ? 'pie' : 'donut';\n\n\t\tconst alignment = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\toptionName,\n\t\t\t'alignment'\n\t\t);\n\n\t\tDOMUtils.appendOrSelect(container, 'rect.chart-skeleton-area-container')\n\t\t\t.attr('width', width)\n\t\t\t.attr('height', height)\n\t\t\t.attr('fill', 'none');\n\n\t\tconst arcPathGenerator = arc()\n\t\t\t.innerRadius(innerRadius)\n\t\t\t.outerRadius(outerRadius)\n\t\t\t.startAngle(0)\n\t\t\t.endAngle(Math.PI * 2);\n\n\t\t// centering circle inside the container\n\t\tconst tcx = outerRadius + Math.abs(Configuration.pie.radiusOffset);\n\t\tconst tcy =\n\t\t\touterRadius + (Math.min(width, height) - outerRadius * 2) / 2;\n\n\t\tconst skeletonAreaShape = DOMUtils.appendOrSelect(container, 'path')\n\t\t\t.attr('class', 'skeleton-area-shape')\n\t\t\t.attr('transform', `translate(${tcx}, ${tcy})`)\n\t\t\t.attr('d', arcPathGenerator)\n\t\t\t.classed('shimmer-effect-areas', shimmer)\n\t\t\t.classed('empty-state-areas', !shimmer)\n\t\t\t.style(\n\t\t\t\t'fill',\n\t\t\t\tshimmer\n\t\t\t\t\t? `url(#${this.services.domUtils.generateElementIDString(\n\t\t\t\t\t\t\t`shimmer-areas`\n\t\t\t\t\t )})`\n\t\t\t\t\t: null\n\t\t\t);\n\n\t\t// Position skeleton\n\t\tlet translateX = outerRadius + Configuration.pie.xOffset;\n\t\tif (alignment === Alignments.CENTER) {\n\t\t\ttranslateX = width / 2;\n\t\t} else if (alignment === Alignments.RIGHT) {\n\t\t\ttranslateX = width - outerRadius - Configuration.pie.xOffset;\n\t\t}\n\n\t\tconst translateY = outerRadius + Configuration.pie.yOffset;\n\t\tskeletonAreaShape.attr(\n\t\t\t'transform',\n\t\t\t`translate(${translateX}, ${translateY})`\n\t\t);\n\t}\n\n\t// same logic in pie\n\tcomputeOuterRadius() {\n\t\tconst { width, height } = DOMUtils.getSVGElementSize(this.parent, {\n\t\t\tuseAttrs: true,\n\t\t});\n\t\tconst radius = Math.min(width, height) / 2;\n\t\treturn radius + Configuration.pie.radiusOffset;\n\t}\n\n\t// same logic in donut\n\tcomputeInnerRadius() {\n\t\treturn this.computeOuterRadius() * (3 / 4);\n\t}\n\n\tsetShimmerEffect(gradientId: string) {\n\t\tconst animationDuration = 2000; // ms\n\t\tconst delay = 1000; // ms\n\t\tconst shimmerWidth = 0.2;\n\t\tconst stopBgShimmerClass = 'stop-bg-shimmer';\n\t\tconst stopShimmerClass = 'stop-shimmer';\n\t\tconst container = this.parent.select('.chart-skeleton');\n\t\tconst { width } = DOMUtils.getSVGElementSize(this.parent, {\n\t\t\tuseAttrs: true,\n\t\t});\n\t\tconst startPoint = 0;\n\t\tconst endPoint = width;\n\n\t\t// append the defs as first child of container\n\t\tconst defs = DOMUtils.appendOrSelect(container, 'defs').lower();\n\t\tconst linearGradient = DOMUtils.appendOrSelect(defs, 'linearGradient')\n\t\t\t.attr(\n\t\t\t\t'id',\n\t\t\t\tthis.services.domUtils.generateElementIDString(gradientId)\n\t\t\t)\n\t\t\t.attr('class', gradientId)\n\t\t\t.attr('x1', startPoint - 3 * shimmerWidth * width)\n\t\t\t.attr('x2', endPoint)\n\t\t\t.attr('y1', 0)\n\t\t\t.attr('y2', 0)\n\t\t\t.attr('gradientUnits', 'userSpaceOnUse')\n\t\t\t.attr('gradientTransform', `translate(0, 0)`);\n\t\tconst stops = `\n\t\t\t<stop class=\"${stopBgShimmerClass}\" offset=\"${startPoint}\"></stop>\n\t\t\t<stop class=\"${stopShimmerClass}\" offset=\"${startPoint + shimmerWidth}\"></stop>\n\t\t\t<stop class=\"${stopBgShimmerClass}\" offset=\"${\n\t\t\tstartPoint + 2 * shimmerWidth\n\t\t}\"></stop>\n\t\t`;\n\t\tlinearGradient.html(stops);\n\n\t\trepeat();\n\t\tfunction repeat() {\n\t\t\tlinearGradient\n\t\t\t\t.attr(\n\t\t\t\t\t'gradientTransform',\n\t\t\t\t\t`translate(${startPoint - 3 * shimmerWidth * width}, 0)`\n\t\t\t\t)\n\t\t\t\t.transition()\n\t\t\t\t.duration(animationDuration)\n\t\t\t\t.delay(delay)\n\t\t\t\t.ease(easeLinear)\n\t\t\t\t.attr(\n\t\t\t\t\t'gradientTransform',\n\t\t\t\t\t`translate(${endPoint + 3 * shimmerWidth * width}, 0)`\n\t\t\t\t)\n\t\t\t\t.on('end', repeat);\n\t\t}\n\t}\n\n\tremoveSkeleton() {\n\t\tconst container = this.parent.select('.chart-skeleton');\n\t\tcontainer.remove();\n\t}\n}\n"]}
|
|
@@ -1,262 +0,0 @@
|
|
|
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 { Component } from '../component';
|
|
16
|
-
import { DOMUtils } from '../../services';
|
|
17
|
-
import { Events, RenderTypes, TreeTypes } from '../../interfaces';
|
|
18
|
-
import * as Tools from '../../tools';
|
|
19
|
-
// D3 Imports
|
|
20
|
-
import { cluster as d3Cluster, tree as d3Tree, hierarchy } from 'd3-hierarchy';
|
|
21
|
-
import { linkHorizontal } from 'd3-shape';
|
|
22
|
-
import { select } from 'd3-selection';
|
|
23
|
-
var NODE_OFFSET = 6;
|
|
24
|
-
var Tree = /** @class */ (function (_super) {
|
|
25
|
-
__extends(Tree, _super);
|
|
26
|
-
function Tree() {
|
|
27
|
-
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
28
|
-
_this.type = 'tree';
|
|
29
|
-
_this.renderType = RenderTypes.SVG;
|
|
30
|
-
return _this;
|
|
31
|
-
}
|
|
32
|
-
Tree.prototype.getLongestLabel = function (data) {
|
|
33
|
-
var _this = this;
|
|
34
|
-
var longestLabel = '';
|
|
35
|
-
data.forEach(function (d) {
|
|
36
|
-
var longestLabelInChildren = d.children
|
|
37
|
-
? _this.getLongestLabel(d.children)
|
|
38
|
-
: '';
|
|
39
|
-
if (longestLabelInChildren.length > longestLabel.length ||
|
|
40
|
-
d.name.length > longestLabel.length) {
|
|
41
|
-
longestLabel =
|
|
42
|
-
longestLabelInChildren.length > d.name.length
|
|
43
|
-
? longestLabelInChildren
|
|
44
|
-
: d.name;
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
return longestLabel;
|
|
48
|
-
};
|
|
49
|
-
Tree.prototype.getMockLabelWidth = function (svg, label) {
|
|
50
|
-
// Add mock label to get dimensions
|
|
51
|
-
var mockLabel = svg
|
|
52
|
-
.append('text')
|
|
53
|
-
.attr('dy', '0.31em')
|
|
54
|
-
.attr('x', 0)
|
|
55
|
-
.attr('text-anchor', 'end')
|
|
56
|
-
.text(label);
|
|
57
|
-
// Get the mock label width
|
|
58
|
-
var mockLabelWidth = DOMUtils.getSVGElementSize(mockLabel.node(), {
|
|
59
|
-
useBBox: true,
|
|
60
|
-
}).width;
|
|
61
|
-
// Remove the mock title label
|
|
62
|
-
mockLabel.remove();
|
|
63
|
-
return mockLabelWidth;
|
|
64
|
-
};
|
|
65
|
-
Tree.prototype.render = function (animate) {
|
|
66
|
-
var _this = this;
|
|
67
|
-
if (animate === void 0) { animate = true; }
|
|
68
|
-
var svg = this.getComponentContainer();
|
|
69
|
-
// Empty out the svg before rendering the tree
|
|
70
|
-
svg.html('');
|
|
71
|
-
var _a = DOMUtils.getSVGElementSize(this.parent, {
|
|
72
|
-
useAttrs: true,
|
|
73
|
-
}), width = _a.width, height = _a.height;
|
|
74
|
-
if (width < 1 || height < 1) {
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
var options = this.model.getOptions();
|
|
78
|
-
var displayData = this.model.getDisplayData();
|
|
79
|
-
var rootTitle = Tools.getProperty(options, 'tree', 'rootTitle') || 'Tree';
|
|
80
|
-
var mockRootTitleWidth = this.getMockLabelWidth(svg, rootTitle);
|
|
81
|
-
var longestLabel = this.getLongestLabel(displayData);
|
|
82
|
-
var mockLongestLabelWidth = this.getMockLabelWidth(svg, longestLabel);
|
|
83
|
-
var margin = {
|
|
84
|
-
top: 0,
|
|
85
|
-
right: 0,
|
|
86
|
-
bottom: 0,
|
|
87
|
-
left: mockRootTitleWidth > 0
|
|
88
|
-
? mockRootTitleWidth + NODE_OFFSET
|
|
89
|
-
: 30 - NODE_OFFSET,
|
|
90
|
-
};
|
|
91
|
-
var root = hierarchy({
|
|
92
|
-
name: rootTitle,
|
|
93
|
-
children: displayData,
|
|
94
|
-
});
|
|
95
|
-
var dx = 10;
|
|
96
|
-
var dy = width / 6;
|
|
97
|
-
var update = function (source) {
|
|
98
|
-
var nodes = root.descendants().reverse();
|
|
99
|
-
var links = root.links();
|
|
100
|
-
var left = root;
|
|
101
|
-
var right = root;
|
|
102
|
-
root.eachBefore(function (node) {
|
|
103
|
-
if (node.x < left.x)
|
|
104
|
-
left = node;
|
|
105
|
-
if (node.x > right.x)
|
|
106
|
-
right = node;
|
|
107
|
-
});
|
|
108
|
-
var height = right.x - left.x;
|
|
109
|
-
var transition = svg
|
|
110
|
-
.transition()
|
|
111
|
-
.call(function (t) {
|
|
112
|
-
return _this.services.transitions.setupTransition({
|
|
113
|
-
transition: t,
|
|
114
|
-
name: 'tree-update-viewbox',
|
|
115
|
-
animate: true,
|
|
116
|
-
});
|
|
117
|
-
})
|
|
118
|
-
.attr('viewBox', [-margin.left, left.x, width, height]);
|
|
119
|
-
// Update data on nodes
|
|
120
|
-
var nodeGroups = nodeGroup
|
|
121
|
-
.selectAll('g')
|
|
122
|
-
.data(nodes, function (d) { return d.id; });
|
|
123
|
-
var self = _this;
|
|
124
|
-
// Add any entering nodes
|
|
125
|
-
var nodeGroupsEnter = nodeGroups
|
|
126
|
-
.enter()
|
|
127
|
-
.append('g')
|
|
128
|
-
.attr('transform', function () { return "translate(" + source.y0 + "," + source.x0 + ")"; })
|
|
129
|
-
.attr('class', function (d) {
|
|
130
|
-
return d.depth !== 0 && d.children && d.children.length > 0
|
|
131
|
-
? 'clickable'
|
|
132
|
-
: null;
|
|
133
|
-
})
|
|
134
|
-
.on('mouseover', function (event, d) {
|
|
135
|
-
// Dispatch mouse event
|
|
136
|
-
self.services.events.dispatchEvent(Events.Tree.NODE_MOUSEOVER, {
|
|
137
|
-
event: event,
|
|
138
|
-
element: select(this),
|
|
139
|
-
datum: d,
|
|
140
|
-
});
|
|
141
|
-
})
|
|
142
|
-
.on('click', function (event, d) {
|
|
143
|
-
if (d.depth !== 0) {
|
|
144
|
-
d.children = d.children ? null : d._children;
|
|
145
|
-
update(d);
|
|
146
|
-
}
|
|
147
|
-
// Dispatch mouse event
|
|
148
|
-
self.services.events.dispatchEvent(Events.Tree.NODE_CLICK, {
|
|
149
|
-
event: event,
|
|
150
|
-
element: select(this),
|
|
151
|
-
datum: d,
|
|
152
|
-
});
|
|
153
|
-
})
|
|
154
|
-
.on('mouseout', function (event, d) {
|
|
155
|
-
// Dispatch mouse event
|
|
156
|
-
self.services.events.dispatchEvent(Events.Tree.NODE_MOUSEOUT, {
|
|
157
|
-
event: event,
|
|
158
|
-
element: select(this),
|
|
159
|
-
datum: d,
|
|
160
|
-
});
|
|
161
|
-
});
|
|
162
|
-
// Add node circles to entering nodes
|
|
163
|
-
nodeGroupsEnter
|
|
164
|
-
.append('circle')
|
|
165
|
-
.attr('r', 2.5)
|
|
166
|
-
.attr('class', function (d) { return (d._children ? 'parent' : 'child'); })
|
|
167
|
-
.attr('stroke-width', 10);
|
|
168
|
-
// Add node labels
|
|
169
|
-
nodeGroupsEnter
|
|
170
|
-
.append('text')
|
|
171
|
-
.attr('dy', '0.31em')
|
|
172
|
-
.attr('x', function (d) { return (d._children ? -NODE_OFFSET : NODE_OFFSET); })
|
|
173
|
-
.attr('text-anchor', function (d) { return (d._children ? 'end' : 'start'); })
|
|
174
|
-
.text(function (d) { return d.data.name; })
|
|
175
|
-
.clone(true)
|
|
176
|
-
.attr('class', 'text-stroke')
|
|
177
|
-
.lower();
|
|
178
|
-
// Reposition nodes
|
|
179
|
-
nodeGroups
|
|
180
|
-
.merge(nodeGroupsEnter)
|
|
181
|
-
.transition(transition)
|
|
182
|
-
.attr('transform', function (d) { return "translate(" + d.y + "," + d.x + ")"; })
|
|
183
|
-
.attr('fill-opacity', 1)
|
|
184
|
-
.attr('stroke-opacity', 1);
|
|
185
|
-
// Remove exiting nodes
|
|
186
|
-
nodeGroups
|
|
187
|
-
.exit()
|
|
188
|
-
.transition(transition)
|
|
189
|
-
.remove()
|
|
190
|
-
.attr('transform', function () { return "translate(" + source.y + "," + source.x + ")"; })
|
|
191
|
-
.attr('fill-opacity', 0)
|
|
192
|
-
.attr('stroke-opacity', 0);
|
|
193
|
-
// Update data on links
|
|
194
|
-
var linkPaths = linkGroup
|
|
195
|
-
.selectAll('path')
|
|
196
|
-
.data(links, function (d) { return d.target.id; });
|
|
197
|
-
// Add any entering link paths
|
|
198
|
-
var linkPathsEnter = linkPaths
|
|
199
|
-
.enter()
|
|
200
|
-
.append('path')
|
|
201
|
-
.attr('d', function (d) {
|
|
202
|
-
var o = { x: source.x0, y: source.y0 };
|
|
203
|
-
return diagonal({ source: o, target: o });
|
|
204
|
-
});
|
|
205
|
-
// Reposition updating link paths
|
|
206
|
-
linkPaths
|
|
207
|
-
.merge(linkPathsEnter)
|
|
208
|
-
.transition(transition)
|
|
209
|
-
.attr('d', diagonal);
|
|
210
|
-
// Remove any exiting link paths
|
|
211
|
-
linkPaths
|
|
212
|
-
.exit()
|
|
213
|
-
.transition(transition)
|
|
214
|
-
.remove()
|
|
215
|
-
.attr('d', function () {
|
|
216
|
-
var o = { x: source.x, y: source.y };
|
|
217
|
-
return diagonal({ source: o, target: o });
|
|
218
|
-
});
|
|
219
|
-
// Update position data for nodes
|
|
220
|
-
root.eachBefore(function (d) {
|
|
221
|
-
d.x0 = d.x;
|
|
222
|
-
d.y0 = d.y;
|
|
223
|
-
});
|
|
224
|
-
};
|
|
225
|
-
var descendants = root.descendants();
|
|
226
|
-
var maxDepth = descendants[descendants.length - 1].depth;
|
|
227
|
-
var tree = Tools.getProperty(options, 'tree', 'type') === TreeTypes.DENDROGRAM
|
|
228
|
-
? d3Cluster().size([
|
|
229
|
-
height,
|
|
230
|
-
width -
|
|
231
|
-
mockLongestLabelWidth -
|
|
232
|
-
maxDepth * NODE_OFFSET -
|
|
233
|
-
mockRootTitleWidth,
|
|
234
|
-
])
|
|
235
|
-
: d3Tree()
|
|
236
|
-
.nodeSize([dx, dy])
|
|
237
|
-
.size([
|
|
238
|
-
height,
|
|
239
|
-
width -
|
|
240
|
-
mockLongestLabelWidth -
|
|
241
|
-
maxDepth * NODE_OFFSET -
|
|
242
|
-
mockRootTitleWidth,
|
|
243
|
-
]);
|
|
244
|
-
var diagonal = linkHorizontal()
|
|
245
|
-
.x(function (d) { return d.y; })
|
|
246
|
-
.y(function (d) { return d.x; });
|
|
247
|
-
root.x0 = dy / 2;
|
|
248
|
-
root.y0 = 0;
|
|
249
|
-
root.descendants().forEach(function (d, i) {
|
|
250
|
-
d.id = i;
|
|
251
|
-
d._children = d.children;
|
|
252
|
-
});
|
|
253
|
-
tree(root);
|
|
254
|
-
svg.attr('viewBox', [-margin.left, -margin.top, width, dx]).style('user-select', 'none');
|
|
255
|
-
var linkGroup = svg.append('g').attr('class', 'links');
|
|
256
|
-
var nodeGroup = svg.append('g').attr('class', 'nodes');
|
|
257
|
-
update(root);
|
|
258
|
-
};
|
|
259
|
-
return Tree;
|
|
260
|
-
}(Component));
|
|
261
|
-
export { Tree };
|
|
262
|
-
//# sourceMappingURL=../../../src/components/graphs/tree.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tree.js","sourceRoot":"","sources":["tree.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport { Component } from '../component';\nimport { DOMUtils } from '../../services';\nimport { Events, RenderTypes, TreeTypes } from '../../interfaces';\nimport * as Tools from '../../tools';\n\n// D3 Imports\nimport { cluster as d3Cluster, tree as d3Tree, hierarchy } from 'd3-hierarchy';\nimport { linkHorizontal } from 'd3-shape';\nimport { select } from 'd3-selection';\n\nconst NODE_OFFSET = 6;\n\nexport class Tree extends Component {\n\ttype = 'tree';\n\trenderType = RenderTypes.SVG;\n\n\tgetLongestLabel(data) {\n\t\tlet longestLabel = '';\n\t\tdata.forEach((d) => {\n\t\t\tlet longestLabelInChildren = d.children\n\t\t\t\t? this.getLongestLabel(d.children)\n\t\t\t\t: '';\n\t\t\tif (\n\t\t\t\tlongestLabelInChildren.length > longestLabel.length ||\n\t\t\t\td.name.length > longestLabel.length\n\t\t\t) {\n\t\t\t\tlongestLabel =\n\t\t\t\t\tlongestLabelInChildren.length > d.name.length\n\t\t\t\t\t\t? longestLabelInChildren\n\t\t\t\t\t\t: d.name;\n\t\t\t}\n\t\t});\n\n\t\treturn longestLabel;\n\t}\n\n\tgetMockLabelWidth(svg, label) {\n\t\t// Add mock label to get dimensions\n\t\tconst mockLabel = svg\n\t\t\t.append('text')\n\t\t\t.attr('dy', '0.31em')\n\t\t\t.attr('x', 0)\n\t\t\t.attr('text-anchor', 'end')\n\t\t\t.text(label);\n\n\t\t// Get the mock label width\n\t\tconst { width: mockLabelWidth } = DOMUtils.getSVGElementSize(\n\t\t\tmockLabel.node(),\n\t\t\t{\n\t\t\t\tuseBBox: true,\n\t\t\t}\n\t\t);\n\n\t\t// Remove the mock title label\n\t\tmockLabel.remove();\n\n\t\treturn mockLabelWidth;\n\t}\n\n\trender(animate = true) {\n\t\tconst svg = this.getComponentContainer();\n\n\t\t// Empty out the svg before rendering the tree\n\t\tsvg.html('');\n\n\t\tconst { width, height } = DOMUtils.getSVGElementSize(this.parent, {\n\t\t\tuseAttrs: true,\n\t\t});\n\n\t\tif (width < 1 || height < 1) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst options = this.model.getOptions();\n\t\tconst displayData = this.model.getDisplayData();\n\n\t\tconst rootTitle =\n\t\t\tTools.getProperty(options, 'tree', 'rootTitle') || 'Tree';\n\n\t\tconst mockRootTitleWidth = this.getMockLabelWidth(svg, rootTitle);\n\n\t\tlet longestLabel = this.getLongestLabel(displayData);\n\t\tconst mockLongestLabelWidth = this.getMockLabelWidth(svg, longestLabel);\n\n\t\tconst margin = {\n\t\t\ttop: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\tleft:\n\t\t\t\tmockRootTitleWidth > 0\n\t\t\t\t\t? mockRootTitleWidth + NODE_OFFSET\n\t\t\t\t\t: 30 - NODE_OFFSET,\n\t\t};\n\t\tconst root = hierarchy({\n\t\t\tname: rootTitle,\n\t\t\tchildren: displayData,\n\t\t}) as any;\n\n\t\tconst dx = 10;\n\t\tconst dy = width / 6;\n\n\t\tconst update = (source) => {\n\t\t\tconst nodes = root.descendants().reverse();\n\t\t\tconst links = root.links();\n\n\t\t\tlet left = root;\n\t\t\tlet right = root;\n\t\t\troot.eachBefore((node) => {\n\t\t\t\tif (node.x < left.x) left = node;\n\t\t\t\tif (node.x > right.x) right = node;\n\t\t\t});\n\n\t\t\tconst height = right.x - left.x;\n\n\t\t\tconst transition = svg\n\t\t\t\t.transition()\n\t\t\t\t.call((t) =>\n\t\t\t\t\tthis.services.transitions.setupTransition({\n\t\t\t\t\t\ttransition: t,\n\t\t\t\t\t\tname: 'tree-update-viewbox',\n\t\t\t\t\t\tanimate: true,\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t\t.attr('viewBox', [-margin.left, left.x, width, height]);\n\n\t\t\t// Update data on nodes\n\t\t\tconst nodeGroups = nodeGroup\n\t\t\t\t.selectAll('g')\n\t\t\t\t.data(nodes, (d) => d.id);\n\n\t\t\tconst self = this;\n\t\t\t// Add any entering nodes\n\t\t\tconst nodeGroupsEnter = nodeGroups\n\t\t\t\t.enter()\n\t\t\t\t.append('g')\n\t\t\t\t.attr('transform', () => `translate(${source.y0},${source.x0})`)\n\t\t\t\t.attr('class', (d) =>\n\t\t\t\t\td.depth !== 0 && d.children && d.children.length > 0\n\t\t\t\t\t\t? 'clickable'\n\t\t\t\t\t\t: null\n\t\t\t\t)\n\t\t\t\t.on('mouseover', function (event, d) {\n\t\t\t\t\t// Dispatch mouse event\n\t\t\t\t\tself.services.events.dispatchEvent(\n\t\t\t\t\t\tEvents.Tree.NODE_MOUSEOVER,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tevent,\n\t\t\t\t\t\t\telement: select(this),\n\t\t\t\t\t\t\tdatum: d,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t\t.on('click', function (event, d) {\n\t\t\t\t\tif (d.depth !== 0) {\n\t\t\t\t\t\td.children = d.children ? null : d._children;\n\n\t\t\t\t\t\tupdate(d);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Dispatch mouse event\n\t\t\t\t\tself.services.events.dispatchEvent(Events.Tree.NODE_CLICK, {\n\t\t\t\t\t\tevent,\n\t\t\t\t\t\telement: select(this),\n\t\t\t\t\t\tdatum: d,\n\t\t\t\t\t});\n\t\t\t\t})\n\t\t\t\t.on('mouseout', function (event, d) {\n\t\t\t\t\t// Dispatch mouse event\n\t\t\t\t\tself.services.events.dispatchEvent(\n\t\t\t\t\t\tEvents.Tree.NODE_MOUSEOUT,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tevent,\n\t\t\t\t\t\t\telement: select(this),\n\t\t\t\t\t\t\tdatum: d,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t});\n\n\t\t\t// Add node circles to entering nodes\n\t\t\tnodeGroupsEnter\n\t\t\t\t.append('circle')\n\t\t\t\t.attr('r', 2.5)\n\t\t\t\t.attr('class', (d) => (d._children ? 'parent' : 'child'))\n\t\t\t\t.attr('stroke-width', 10);\n\n\t\t\t// Add node labels\n\t\t\tnodeGroupsEnter\n\t\t\t\t.append('text')\n\t\t\t\t.attr('dy', '0.31em')\n\t\t\t\t.attr('x', (d) => (d._children ? -NODE_OFFSET : NODE_OFFSET))\n\t\t\t\t.attr('text-anchor', (d) => (d._children ? 'end' : 'start'))\n\t\t\t\t.text((d) => d.data.name)\n\t\t\t\t.clone(true)\n\t\t\t\t.attr('class', 'text-stroke')\n\t\t\t\t.lower();\n\n\t\t\t// Reposition nodes\n\t\t\tnodeGroups\n\t\t\t\t.merge(nodeGroupsEnter)\n\t\t\t\t.transition(transition)\n\t\t\t\t.attr('transform', (d) => `translate(${d.y},${d.x})`)\n\t\t\t\t.attr('fill-opacity', 1)\n\t\t\t\t.attr('stroke-opacity', 1);\n\n\t\t\t// Remove exiting nodes\n\t\t\tnodeGroups\n\t\t\t\t.exit()\n\t\t\t\t.transition(transition)\n\t\t\t\t.remove()\n\t\t\t\t.attr('transform', () => `translate(${source.y},${source.x})`)\n\t\t\t\t.attr('fill-opacity', 0)\n\t\t\t\t.attr('stroke-opacity', 0);\n\n\t\t\t// Update data on links\n\t\t\tconst linkPaths = linkGroup\n\t\t\t\t.selectAll('path')\n\t\t\t\t.data(links, (d) => d.target.id);\n\n\t\t\t// Add any entering link paths\n\t\t\tconst linkPathsEnter = linkPaths\n\t\t\t\t.enter()\n\t\t\t\t.append('path')\n\t\t\t\t.attr('d', (d) => {\n\t\t\t\t\tconst o = { x: source.x0, y: source.y0 };\n\t\t\t\t\treturn diagonal({ source: o, target: o });\n\t\t\t\t});\n\n\t\t\t// Reposition updating link paths\n\t\t\tlinkPaths\n\t\t\t\t.merge(linkPathsEnter)\n\t\t\t\t.transition(transition)\n\t\t\t\t.attr('d', diagonal);\n\n\t\t\t// Remove any exiting link paths\n\t\t\tlinkPaths\n\t\t\t\t.exit()\n\t\t\t\t.transition(transition)\n\t\t\t\t.remove()\n\t\t\t\t.attr('d', () => {\n\t\t\t\t\tconst o = { x: source.x, y: source.y };\n\t\t\t\t\treturn diagonal({ source: o, target: o });\n\t\t\t\t});\n\n\t\t\t// Update position data for nodes\n\t\t\troot.eachBefore((d) => {\n\t\t\t\td.x0 = d.x;\n\t\t\t\td.y0 = d.y;\n\t\t\t});\n\t\t};\n\n\t\tconst descendants = root.descendants();\n\t\tconst maxDepth = descendants[descendants.length - 1].depth;\n\n\t\tconst tree =\n\t\t\tTools.getProperty(options, 'tree', 'type') === TreeTypes.DENDROGRAM\n\t\t\t\t? d3Cluster().size([\n\t\t\t\t\t\theight,\n\t\t\t\t\t\twidth -\n\t\t\t\t\t\t\tmockLongestLabelWidth -\n\t\t\t\t\t\t\tmaxDepth * NODE_OFFSET -\n\t\t\t\t\t\t\tmockRootTitleWidth,\n\t\t\t\t ])\n\t\t\t\t: d3Tree()\n\t\t\t\t\t\t.nodeSize([dx, dy])\n\t\t\t\t\t\t.size([\n\t\t\t\t\t\t\theight,\n\t\t\t\t\t\t\twidth -\n\t\t\t\t\t\t\t\tmockLongestLabelWidth -\n\t\t\t\t\t\t\t\tmaxDepth * NODE_OFFSET -\n\t\t\t\t\t\t\t\tmockRootTitleWidth,\n\t\t\t\t\t\t]);\n\n\t\tconst diagonal = linkHorizontal()\n\t\t\t.x((d: any) => d.y)\n\t\t\t.y((d: any) => d.x) as any;\n\n\t\troot.x0 = dy / 2;\n\t\troot.y0 = 0;\n\t\troot.descendants().forEach((d, i) => {\n\t\t\td.id = i;\n\t\t\td._children = d.children;\n\t\t});\n\n\t\ttree(root);\n\n\t\tsvg.attr('viewBox', [-margin.left, -margin.top, width, dx]).style(\n\t\t\t'user-select',\n\t\t\t'none'\n\t\t);\n\n\t\tconst linkGroup = svg.append('g').attr('class', 'links');\n\t\tconst nodeGroup = svg.append('g').attr('class', 'nodes');\n\n\t\tupdate(root);\n\t}\n}\n"]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Component } from '../component';
|
|
2
|
-
import { RenderTypes } from '../../interfaces';
|
|
3
|
-
export declare class Treemap extends Component {
|
|
4
|
-
type: string;
|
|
5
|
-
renderType: RenderTypes;
|
|
6
|
-
init(): void;
|
|
7
|
-
render(animate?: boolean): void;
|
|
8
|
-
addEventListeners(): void;
|
|
9
|
-
handleLegendOnHover: (event: CustomEvent<any>) => void;
|
|
10
|
-
handleLegendMouseOut: (event: CustomEvent<any>) => void;
|
|
11
|
-
}
|